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

/***************************************************************
* <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;
}