/*************************************************************** *

ProName:EdorSAInput.js

*

Title:建工险保单延期

*

Description:建工险保单延期

*

Copyright:Copyright (c) 2012

*

Company:Sinosoft

* @author : 蔡云聪 * @version : 8.0 * @date : 2014-06-25 ****************************************************************/ var showInfo; var turnPage = new turnPageClass(); var turnPage1 = new turnPageClass(); var turnPage2 = new turnPageClass(); var mOperate = "";//操作状态 var tSQLInfo = new SqlClass(); //初始化保单信息 function initPolicyInfo(){ tSQLInfo = new SqlClass(); tSQLInfo.setModule("grp_pa"); tSQLInfo.setResourceName("g_pos.EdorSASql"); tSQLInfo.setSqlId("EdorSASql1"); tSQLInfo.addSubPara(tGrpContNo); var tResult = easyExecSql(tSQLInfo.getString(), 1, 0, 1); if (tResult==null) { return false; } else { fm.PremCalMode.value=tResult[0][0]; fm.PremCalName.value=tResult[0][1]; fm.EnginArea.value=tResult[0][2]; fm.EnginCost.value=tResult[0][3]; if(fm.PremCalMode.value=="1"){ divEnginCost.style.display=""; } if(fm.PremCalMode.value=="2"){ divEnginArea.style.display=""; } } } //保存操作 function saveClick(){ if(!verifyForm("fm")){ return false; } if (fm.GetMoney.value!="" ||fm.GetMoney.value != null) { var tGetMoney = fm.GetMoney.value; if (!checkDecimalFormat(tGetMoney, 10, 2)) { i18nAlert("【实际应缴保费】整数位不应超过10位,小数位不应超过2位!", ""); return false; } } var startDate = fm.EndDate.value; var stopDate = fm.StopDate.value; if(compareDate(stopDate,startDate)!=1){ i18nAlert("请录入大于保单满期的延期日期!", "LIS-03853"); return false; } /** * 安泰建工产品新增校验 * 适用险种:221014-永和建筑工程团体意外伤害保险 * 231002-附加建筑工程意外伤害团体医疗保险 * 221006-特高压团体意外伤害保险 * 231007-附加特高压意外伤害团体医疗保险 * 221019-安泰建设工程团体意外伤害保险 * 校验规则:投保时保险期间不足一年、保险期间届满工程仍未竣工的,投保人可办理延长保险期间 * 申请延长的保险期间≤原有保险期间--非阻断提示。 * 延长后整张保单的有效保险期间≤一年--阻断提示 */ tSQLInfo = new SqlClass(); tSQLInfo.setModule("grp_pa"); tSQLInfo.setResourceName("g_pos.EdorSASql"); tSQLInfo.setSqlId("EdorSASql11"); tSQLInfo.addSubPara(tGrpContNo); var tResult = easyExecSql(tSQLInfo.getString(), 1, 0, 1); if (tResult==null) { return false; } else { var tInsuYear =tResult[0][0]; var tStopDay =tResult[0][1]; var tCvalidate=tResult[0][2]; var OneYear =tResult[0][3]; var tNewInsuYear = Number(tInsuYear) + Number(fm.DeferDays.value); if(tInsuYear==OneYear){ alert("保险期间已满一年,不允许延长保险期间!"); return false; } //延长后整张保单的有效保险期间≤一年 if(Number(tNewInsuYear)>Number(OneYear)){ alert("延长后保单的有效保险期间已超过一年,请核实!"); return false; } //判断延长保险期间是否<=原有保险期间 //阻断提示 if(Number(fm.DeferDays.value)>Number(tInsuYear)){ // alert("延长的保险期间大于原有保险期间!"); // return false; if(i18nConfirm("延长的保险期间大于原有保险期间,请核实", "")) { mOperate="SAVE"; } else { return; } } } mOperate="SAVE"; fm.action = "../API/grp_pa/g_pos/EdorSASave/ADD?Operate="+ mOperate+"&EdorNo="+tEdorNo+"&EdorType="+tEdorType+"&EdorAppNo="+tEdorAppNo+"&GrpContNo="+tGrpContNo+"&MissionID="+tMissionID+"&SubMissionID="+tSubMissionID+"&ActivityID="+tActivityID; submitFunc(); } function submitFunc(){ var showStr=i18nMessage("正在保存数据,请您稍候并且不要修改屏幕上的值或链接其他页面", "LIS-04525"); var urlStr="../common/jsp/MessagePage.jsp?picture=C&content=" + encodeURIComponent(showStr); //showInfo=window.showModelessDialog(urlStr,window,"status:no;help:0;close:0;dialogWidth:550px;dialogHeight:250px"); var name='提示'; //网页名称,可为空; var iWidth=550; //弹出窗口的宽度; var iHeight=250; //弹出窗口的高度; var iTop = (window.screen.availHeight - iHeight) / 2; //获得窗口的垂直位置 var iLeft = (window.screen.availWidth - iWidth) / 2; //获得窗口的水平位置 showInfo = window.open (urlStr,name, "status=no,toolbar=no,menubar=no,location=no,resizable=no,scrollbars=0,titlebar=no,height="+ iHeight+",width="+iWidth+",innerHeight="+iHeight+",innerWidth=" +iWidth+",left="+iLeft+",top="+iTop,false); showInfo.focus(); //fm.submit(); ajaxSubmit2(document.getElementById("fm")); } function returnbak() { top.opener.initForm(); top.close(); } /** * 提交数据后返回操作 */ function afterSubmit(FlagStr, content) { if (typeof(showInfo)=="object" && typeof(showInfo)!="unknown") { showInfo.close(); } if (FlagStr=="Fail") { var urlStr = "../common/jsp/MessagePage.jsp?picture=C&content="+ encodeURIComponent(content); //showModalDialog(urlStr,window,"status:no;help:0;close:0;dialogWidth:550px;dialogHeight:250px"); var name='提示'; //网页名称,可为空; var iWidth=550; //弹出窗口的宽度; var iHeight=250; //弹出窗口的高度; var iTop = (window.screen.availHeight - iHeight) / 2; //获得窗口的垂直位置 var iLeft = (window.screen.availWidth - iWidth) / 2; //获得窗口的水平位置 showInfo = window.open (urlStr,name, "status=no,toolbar=no,menubar=no,location=no,resizable=no,scrollbars=0,titlebar=no,height="+ iHeight+",width="+iWidth+",innerHeight="+iHeight+",innerWidth=" +iWidth+",left="+iLeft+",top="+iTop,false); showInfo.focus(); } else { var urlStr = "../common/jsp/MessagePage.jsp?picture=S&content="+ encodeURIComponent(content); //showModalDialog(urlStr,window,"status:no;help:0;close:0;dialogWidth:550px;dialogHeight:250px"); var name='提示'; //网页名称,可为空; var iWidth=550; //弹出窗口的宽度; var iHeight=250; //弹出窗口的高度; var iTop = (window.screen.availHeight - iHeight) / 2; //获得窗口的垂直位置 var iLeft = (window.screen.availWidth - iWidth) / 2; //获得窗口的水平位置 showInfo = window.open (urlStr,name, "status=no,toolbar=no,menubar=no,location=no,resizable=no,scrollbars=0,titlebar=no,height="+ iHeight+",width="+iWidth+",innerHeight="+iHeight+",innerWidth=" +iWidth+",left="+iLeft+",top="+iTop,false); showInfo.focus(); initReason(); } } //初始化保存信息查询 function initSACount(){ tSQLInfo = new SqlClass(); tSQLInfo.setModule("grp_pa"); tSQLInfo.setResourceName("g_pos.EdorSASql"); tSQLInfo.setSqlId("EdorSASql3"); tSQLInfo.addSubPara(tEdorAppNo); tSQLInfo.addSubPara(tEdorAppNo); tSQLInfo.addSubPara(tGrpContNo); var tSAResult = easyExecSql(tSQLInfo.getString(), 1, 0, 1); if (tSAResult==null) { return false; } else { fm.Mtime.value=tSAResult[0][0]; } } //初始化保存信息查询 function initPrem(){ tSQLInfo = new SqlClass(); tSQLInfo.setModule("grp_pa"); tSQLInfo.setResourceName("g_pos.EdorSASql"); tSQLInfo.setSqlId("EdorSASql4"); tSQLInfo.addSubPara(tGrpContNo); var tPremResult = easyExecSql(tSQLInfo.getString(), 1, 0, 1); if (tPremResult==null) { return false; } else { fm.FirstPrem.value=tPremResult[0][0]; //fm.EndDate.value=tPremResult[0][1]; } } //计算终止日期 function getStopDate(){ var startDate = fm.EndDate.value; var sDeferDays = fm.DeferDays.value; if(NullToEmpty(startDate)==""){ i18nAlert("获取保单满期日期错误", "LIS-03849"); return false; } if (sDeferDays!="" && !isInteger(sDeferDays)) { i18nAlert("延期天数不是有效的整数!", "LIS-03850"); return false; } if(parseFloat(sDeferDays)<1){ i18nAlert("延期天数请录入大于0的整数", "LIS-03851"); return false; } fm.StopDate.value= addDate(4,sDeferDays,startDate); if(sDeferDays== ""){ fm.StopDate.value =""; }else{ getDeferDays(); } } //计算间隔 function getDeferDays(){ var startDate = fm.EndDate.value; if(NullToEmpty(startDate)==""){ i18nAlert("查询最近一次满期日期失败!", ""); return false; } var stopDate = fm.StopDate.value; if(NullToEmpty(stopDate)==""){ i18nAlert("请录入延期后保单终止日期!", "LIS-03852"); return false; } //判断日期格式 var t = new Date(stopDate.replace(/\-/g,"/")); if(!(stopDate == ""||stopDate == null)) { if(isNaN(t)) { i18nAlert("延期后保单终止日期格式错误!", ""); return false; } } if(compareDate(stopDate,startDate)!=1){ i18nAlert("请录入大于保单满期的延期日期!", "LIS-03853"); return false; } fm.DeferDays.value = dateDiff(startDate,stopDate,"D"); calInitPrem(); } //初始化保全信息 function initReason(){ tSQLInfo = new SqlClass(); tSQLInfo.setModule("grp_pa"); tSQLInfo.setResourceName("g_pos.EdorSASql"); tSQLInfo.setSqlId("EdorSASql5"); tSQLInfo.addSubPara(tGrpContNo); tSQLInfo.addSubPara(tEdorAppNo); tSQLInfo.addSubPara(tEdorNo); tSQLInfo.addSubPara(tEdorType); var tSAResult = easyExecSql(tSQLInfo.getString(), 1, 0, 1); if (tSAResult==null) { return false; } else { fm.GetMoney.value=tSAResult[0][0]; fm.Reason.value=tSAResult[0][1]; fm.ReasonName.value=tSAResult[0][2]; fm.ReasonDesc.value=tSAResult[0][3]; } } //计算保费 function calInitPrem(){ tSQLInfo = new SqlClass(); tSQLInfo.setModule("grp_pa"); tSQLInfo.setResourceName("g_pos.EdorSASql"); tSQLInfo.setSqlId("EdorSASql6"); tSQLInfo.addSubPara(fm.DeferDays.value); tSQLInfo.addSubPara(tGrpContNo); var tPremResult = easyExecSql(tSQLInfo.getString(), 1, 0, 1); if (tPremResult==null) { i18nAlert("计算保费错误!", "LIS-03854"); return false; } else { fm.InitPrem.value=tPremResult[0][0]; } } //计算保费 function calInitPremQuery(){ tSQLInfo = new SqlClass(); tSQLInfo.setModule("grp_pa"); tSQLInfo.setResourceName("g_pos.EdorSASql"); tSQLInfo.setSqlId("EdorSASql10"); tSQLInfo.addSubPara(fm.DeferDays.value); tSQLInfo.addSubPara(tGrpContNo); tSQLInfo.addSubPara(tEdorNo); var tPremResult = easyExecSql(tSQLInfo.getString(), 1, 0, 1); if (tPremResult==null) { // i18nAlert("计算保费错误!", "LIS-03854"); return false; } else { fm.InitPrem.value=tPremResult[0][0]; } } //保全延期日期 function queryStopDate(){ tSQLInfo = new SqlClass(); tSQLInfo.setModule("grp_pa"); tSQLInfo.setResourceName("g_pos.EdorSASql"); tSQLInfo.setSqlId("EdorSASql7"); tSQLInfo.addSubPara(tGrpContNo); tSQLInfo.addSubPara(tEdorNo); tSQLInfo.addSubPara(tEdorType); tSQLInfo.addSubPara(tEdorAppNo); var tPremResult = easyExecSql(tSQLInfo.getString(), 1, 0, 1); if (tPremResult==null) { } else { fm.StopDate.value=tPremResult[0][0]; // fm.DeferDays.value = dateDiff(fm.EndDate.value,fm.StopDate.value,"D"); fm.DeferDays.value=tPremResult[0][1]; calInitPrem(); } } //保全延期日期 function queryEndDate(){ tSQLInfo = new SqlClass(); tSQLInfo.setModule("grp_pa"); tSQLInfo.setResourceName("g_pos.EdorSASql"); tSQLInfo.setSqlId("EdorSASql8"); tSQLInfo.addSubPara(tGrpContNo); var tEndResult = easyExecSql(tSQLInfo.getString(), 1, 0, 1); if (tEndResult==null) { } else { fm.EndDate.value=tEndResult[0][0]; } } //综合查询 function queryEdorStateMessage(){ tSQLInfo = new SqlClass(); tSQLInfo.setModule("grp_pa"); tSQLInfo.setResourceName("g_pos.EdorSASql"); tSQLInfo.setSqlId("EdorSASql9"); tSQLInfo.addSubPara(tGrpContNo); tSQLInfo.addSubPara(tEdorNo); tSQLInfo.addSubPara(tEdorType); tSQLInfo.addSubPara(tEdorAppNo); var tEndResult = easyExecSql(tSQLInfo.getString(), 1, 0, 1); if (tEndResult==null) { } else { fm.StopDate.value=tEndResult[0][0]; fm.DeferDays.value=tEndResult[0][1]; } } /** * 校验数据整数位于小数位长度 */ function checkDecimalFormat(cValue, cLen1, cLen2) { if (cValue=='' || cValue==null) {//为空, return true; } var tLen = (""+cValue+"").length; var tLen1 = (""+cValue+"").indexOf("."); var tLen2 = 0; if (tLen1==-1) { tLen1 = tLen; } else { tLen2 = tLen - tLen1 - 1; } if (Number(tLen1)>Number(cLen1)) { return false; } if (Number(tLen2)>Number(cLen2)) { return false; } return true; }