You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
413 lines
12 KiB
413 lines
12 KiB
/***************************************************************
|
|
* <p>ProName:EdorSAInput.js</p>
|
|
* <p>Title:建工险保单延期</p>
|
|
* <p>Description:建工险保单延期</p>
|
|
* <p>Copyright:Copyright (c) 2012</p>
|
|
* <p>Company:Sinosoft</p>
|
|
* @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;
|
|
} |