`

 
阅读更多

背景目的:

为了配合定价模型的实施,需要建立一套非定价政策的自动核保规则引擎,现有的自动核保规则系统已不能满足新理念的需求,故需重新建造。

<!--EndFragment-->

主要功能:

提供天平车险业务在承保系统、电销系统、网销系统关于非定价政策的规则设置和执行功能,包含规则匹配、非定价政策、集合维护、车辆黑名单四个模块。其中规则匹配用于指定各业务类型适用的非定价政策包(作用等同于现在自动核保引擎的口径一);非定价政策包含前置规则、新保规则(禁保、必保、限保)、续保规则、批改规则、资料审验规则、特约管理规则六大部分;集合维护提供非定价政策中决策表字段值的打包功能,包括车型包、分销商包。 

一、 业务流程

1、

2、 业务流程说明

机构核保人将所有的非定价政策以决策表的形式整理好后,导入系统,规则引擎经过一系列的定位、解析后将规则结果(保或不保,以什么条件承保)反馈给核心业务系统。

 

二、 规则流

1)系统在对每单业务进行规则判断时,始终遵循以下规则流顺序,其中某项不通过时后面的规则将不再执行。

 

 项目架构:SpringMVC,ibatis,jboss,oracle10g,poi,jbpm,json-lib,jfreechart,junit

spring相关jar(spring.jar,spring-aop-2.5.6.jar,spring-beans-2.5.6.jar,spring-context-2.5.6.jar,spring-core-2.5.6.jar,spring-jms-2.5.6.jar,spring-mock.jar,spring-modules-jbpm31.jar,spring-oxm-tiger-1.5.8.jar,spring-tx-2.5.6.jar)

项目工具:PowerDesigner,SecureCRT5.0,jboss,PLSQLDeveloper,Oracle10g,eclipse

项目中可以复用的地方:

1.动态导入jsp文件:<%@include file="../common/tag_include.jsp"%>

2.用iframe动态导入页面

<iframe id="tabIframe" name="tabIframe" src="<%=request.getContextPath()%>/decisionRuleUpdateInput2.do?ruleId=<c:out value="${calib0.forbiddenRule.ruleId}" />"  space="0" vspace="0" marginheight="0" marginwidth="0" frameborder="0" height="100%" width="100%"></iframe>

3.iframe动态导入的窗口高度随内容相应变化

3.1 calib0_view.jsp

<iframe id="tabIframe" name="tabIframe" src="<%=request.getContextPath()%>/decisionRuleUpdateInput2.do?ruleId=<c:out value="${calib0.forbiddenRule.ruleId}" />"  space="0" vspace="0" marginheight="0" marginwidth="0" frameborder="0" height="100%" width="100%"></iframe>

3.2 decisionRuleRelationCode_update2.jsp

<tr>
    <td colspan="4" align="left">
    选择版本号: <select id="versionNo1" onchange="javascript:changeVersion(this);">
             <option value="">请选择</option>
               <c:forEach var="tab" items="${decisionRule.tables}" varStatus="status">
      <option value="<c:out value="${tab.tableId}"/>" <c:if test="${tab.versionNo==decisionRule.versionNo}">selected="selected"</c:if>><c:out value="${tab.versionNo}"/></option>
     </c:forEach>
     </select>
     <input type="button" class="tpbutton"  name="btnEdit" value=" 导入实例数据 " onClick="importObject();" />
    </td>
   </tr> 

#######################################

js代码:

<script languge="javascript">

function init(){
 var changeValue = document.getElementById("versionNo1").value;
 if(tempVar != ''){
  document.getElementById(tempVar).style.display = "none";
 }
 if(changeValue != ''){
  document.getElementById(changeValue).style.display = "block";
 }
 tempVar = changeValue;

#################
changeVersion(form1.versionNo1);

###################

function SetWinHeight(obj){
   var win=obj;
   if (document.getElementById){
         if (win && !window.opera){
                   if (win.contentDocument && win.contentDocument.body.offsetHeight){
                       win.height = win.contentDocument.body.offsetHeight;    
                   }else if(win.Document && win.Document.body.scrollHeight){
                       win.height = win.Document.body.scrollHeight;
                   }
         }
     }
}

################

var tempVar = '';
function changeVersion(obj){
 var changeValue = obj.value;
 //var index  = obj.selectedIndex;
 //var changeText = obj.options[index].text;
 //document.getElementById("versionNo").value = changeText;
 if(tempVar != ''){
  document.getElementById(tempVar).style.display = "none";
 }
 if(changeValue != ''){
  document.getElementById(changeValue).style.display = "block";
 }
 tempVar = changeValue;
 SetWinHeight(parent);
}

 

</script>

#############################

项目中模板化的js文件:

###################

/**
     * 功能:select对象动态添加Options项
     * @param {} objSelectNow select对象
     * @param {} txt    显示值text
     * @param {} val    值value
     */ 
 function addOption(objSelectNow, txt, val) { 
        // / 使用W3C标准语法为SELECT添加Option 
        var objOption = document.createElement("option"); 
        objOption.text = txt; 
        objOption.value = val; 
        objSelectNow.options.add(objOption); 
    }

###################

1)动态添加table-row.

function addTableRow() {  
   var listTable = document.getElementById('mytable');
   var row = listTable.insertRow(listTable.rows.length);
   var cells = new Array(1);
   for(var i = 0,len =cells.length;i < len;i++){
     cells[i] = row.insertCell();
   }
   infoNum = infoNum + 1;
   //动态添加值开始
   var objSel = document.getElementById("cfo");
     var ops = objSel.options;
     
   //条件列
   var limitFlag0 = document.createElement("<select name='conditionInfo'>");
   var delBtn = document.createElement("<input id='"+infoNum+"' name='btnSave' value='删除 ' type='button' class='tpbutton' onclick='javasript:delTableRow(this);'>");
   addOption(limitFlag0,"请选择","");
   limitFlag0.style.width="300";
   for(var i=0; i<ops.length; i++){
     addOption(limitFlag0,ops[i].text,ops[i].value);
   cells[0].appendChild(limitFlag0);
    }
    cells[0].appendChild(delBtn);
     
 }

2)动态删除table-row.

//删除行 
function delTableRow(obj){
  var tableObj = document.getElementById("mytable");
      tableObj.deleteRow(obj.parentElement.parentElement.rowIndex);

}

3)checkbox全部选中/取消

<TR>
                    <TD colspan="15">
                        <input type="checkbox" name="cbSelectAll" id="cbSelectAll" class="checkall" onClick="selectAll_TP(form1,this);">
                        <label for="cbSelectAll">
                            全选/取消&nbsp;
                        </label>
                    </TD>
                </TR>

#######################

function selectAll_TP(formObj,obj){
 var inputArray = formObj.elements;
 for(var i = 0; i < inputArray.length; i++){
  try{   
   if(inputArray[i].type == "checkbox"){    
    inputArray[i].checked = obj.checked;    
   } 
  }catch(e){   
  } 
 }
}

4)批量删除选中的checkbox选项

function deleteObject(){ 
    var raAll = document.getElementsByName('objectId');
 if (raAll.length<1){
  alert("请先选中!");
  return;
 }
 var objectId = "";
 var k=-1;
 for (var i=0; i<raAll.length; i++) {
  if(raAll[i].checked == true ){
   k++;
   objectId = raAll[i].value;
  }
 }
 if(k<0){
  alert("请先选中!");
  return;
 }
var gnl=confirm("你真的确定要删除吗?");
if (gnl==true){
 form1.target="hiddenFrame";
 form1.action="calib0Delete.do";
    form1.submit();
    form1.btnDelete.disabled=true;
}else{
return false;
}
}

5)其他js方法:

function searchForm(){
 form1.target="_self";
 form1.action="calib0Search.do";
 form1.submit();
}

function viewDetail(objectId){
 var url = "calib0View.do?calibId="+objectId;
 window.open(url,'viewObject',"scrollbars=yes,resizable=yes,status=no,width=800,height=600");
}

function addObject(){
 var url = "calib0AddInput.do";
    window.open(url,'createObject',"scrollbars=yes,resizable=yes,status=no,width=800,height=600");
}

 function addObject(){
 var departmentCode = form1.departmentCode.value;
 var channelSourceCode = form1.channelSourceCode.value;
 var businessType = form1.businessType.value;
 var applyType = form1.applyType.value;
 var forbiddenRuleId = form1.forbiddenRuleId.value;
 var mustRuleId = form1.mustRuleId.value;
 var limitRuleId = form1.limitRuleId.value;
 if(departmentCode.trim()==""){
  alert("机构不能为空");
  form1.departmentCode.focus();
  return;
 }
 if(channelSourceCode.trim()==""){
  alert("渠道不能为空");
  form1.channelSourceCode.focus();
  return;
 }
 if(businessType.trim()==""){
  alert("业务类型不能为空");
  form1.businessType.focus();
  return;
 }
 if(applyType.trim()==""){
  alert("投保方式不能为空");
  form1.applyType.focus();
  return;
 }
 if(forbiddenRuleId.trim()==""){
  alert("禁保规则不能为空");
  form1.forbiddenRuleId.focus();
  return;
 }
 if(mustRuleId.trim()==""){
  alert("必保规则不能为空");
  form1.mustRuleId.focus();
  return;
 }
 if(limitRuleId.trim()==""){
  alert("限保规则不能为空");
  form1.limitRuleId.focus();
  return;
 }
    form1.submit();
    form1.btnSave.disabled=true;
}
6)机构二级联动

<script language="javascript" src="<%=request.getContextPath()%>/js/xmlcommon.js"></script>(导入)

function departmentCodeChange(departmentCode){
 url = "calib0GetDecisionRule.do?departmentCode="+departmentCode;
 handlerRequestURLXML( url, setFields );
}
function setFields(request) {
 setElementList(request);
}

 

 

 

 

分享到:
评论

相关推荐

    DAC杂散问题定位流程.docx

    DAC 杂散问题定位流程 高速 DAC 杂散问题是指在高速数据转换过程中出现的杂散信号问题,该问题可能来自于多种来源,包括 DDS 输出频谱中的杂散噪声、DAC 采样输出产生的基波和相关谐波的镜像频率、DAC 非理想的开关...

    DAC杂散排查与优化.docx

    在本项目的实施过程中,遇到了DAC输出的杂散问题,特别是DAC2和DAC3的杂散幅度相对较高,可能对系统的整体性能,如EVM(误差矢量幅度)产生负面影响。下面我们将详细探讨这一问题的产生原因、排查方法以及可能的解决...

    ASAP杂散光分析.pdf

    杂散光是指光学系统中,除了主光线以外的其他非有效光线。这些光线可能来自透镜表面的残留反射、镜筒内壁等非光学表面的反射,也有可能是因为光学材料表面不平整而产生的散射光,以及红外光学系统由于自身热辐射而...

    伤寒杂病论全集《张仲景》

    《伤寒杂病论》是中医历史上的一部经典著作,由东汉时期的医学家张仲景所著。这本书集合了他对临床疾病的观察和治疗经验,是中医辨证论治体系的重要源头,对后世产生了深远影响。《伤寒杂病论》分为《伤寒论》和...

    如何利用trace pro 分析镜头杂散光

    在光学设计领域,准确分析和控制杂散光是至关重要的步骤,这直接影响到光学系统的性能和成像质量。本文将详细介绍如何使用Trace Pro软件进行镜头的杂散光分析。Trace Pro是一款强大的光学仿真软件,广泛应用于光学...

    DDS输出杂散计算程序matlab.zip

    在本压缩包“DDS输出杂散计算程序matlab.zip”中,包含的是一个MATLAB实现的DDS输出杂散计算程序,用于分析和评估DDS芯片或系统在实际应用中的性能。 DDS的核心思想是利用查表(Look-Up Table,LUT)和累加器来生成...

    分析、优化和消除带 VCO 的锁相环在高达 13.6 GHz 处的整数边界杂散

    理想的PLL/VCO输出信号中应只包含所需的RF信号,但实际中不可避免地会产生干扰信号和相位噪声,其中整数边界杂散是一种典型的杂散信号,它对系统的性能有显著的不良影响。 整数边界杂散问题主要发生在锁相环的鉴频...

    基于tracepro的光学系统杂散光分析

    光学系统杂散光是指在光学系统中,除了设计时考虑的主光线之外的其它所有光线。这些光线可能会对系统的性能产生不利影响,包括降低对比度、产生眩光、降低信噪比等。因此,准确地分析和控制杂散光是设计光学系统时不...

    频谱仪测量发射机带外杂散信号的分析

    ### 频谱仪测量发射机带外杂散信号的分析 #### 一、引言 随着现代通信技术的发展,电磁兼容(EMC)成为衡量电子产品性能的重要指标之一。发射机产生的带外杂散信号若超出规定限值,可能会对周边其他电子设备造成...

    学习笔记之ADC DAC时钟域杂散串扰.docx

    当DAC输出1.2GHz点频信号时,观察到了在主频1.2GHz附近存在25KHz的杂散,且该杂散在改变输出频点时依然保持在主频两侧28KHz左右,这表明杂散并非由DAC自身产生,而是源自时钟链路。 问题定位首先排除了电源作为杂散...

    TracePro典型例子-杂散光分析

    TracePro典型例子-杂散光分析,学习TracePro软件,Tracepro是一套可以做照明系统分析,传统光学分析,辐射度以及光度分析的软件,它也是第一套由符合工业标准的ACIS立体模型绘图软件所发展出来的光机软件。...

    桂林古本伤寒杂病论方剂索引[归类].pdf

    桂林古本伤寒杂病论方剂索引 桂林古本伤寒杂病论方剂索引是一本古代中医典籍,收录了大量的中医方剂信息。本资源摘要将对桂林古本伤寒杂病论方剂索引中的方剂进行分类和解释,帮助读者更好地理解和应用这些古代中医...

    IGBT模块的杂散参数计算与封装设计研究

    绝缘栅型双极性晶体管(insulated gate bipolar transistor,IGBT)模块由于线路杂散电感的存在使得在开通和关断的瞬态 过程中产生过大的电压尖峰,过压会使 IGBT 芯片的集电极电流增大从而导致结温上升,且其是导致 ...

    无线电设备的杂散测试方法

    无线电设备的杂散测试方法是通信领域中重要的技术内容,它主要涉及在无线电设备发射或接收信号过程中,检查和评估设备产生的不需要的频率分量,即杂散信号,对其他设备的影响程度,以确保无线电频谱的合理使用和无线...

    GSM 带内杂散(Tx Noise in Rx Band) 测试流程

    GSM(Global System for Mobile Communications)是全球广泛应用的第二代移动通信标准,其带内杂散(Tx Noise in Rx Band)测试是确保设备性能的重要环节。带内杂散指的是发射机在工作频段内产生的非期望信号,这些...

    手机射频GSM传导杂散(谐波)的解决之道

    射频信号的传导杂散和谐波是射频设计中常见的问题,对设备的性能和遵守电磁兼容性规范产生重大影响。杂散和谐波是由于射频功率放大器(PA)和其它射频组件的非线性特性引起的。本文将详细介绍GSM射频传导杂散和谐波...

    煤矿井下杂散电流的产生及防治措施分析

    煤矿井下杂散电流的产生及防治措施分析 煤矿开采是国家能源产业中极其重要的一环,而井下安全生产是煤矿开采中的重中之重。在井下作业环境中,杂散电流的存在严重影响到安全生产,因此,分析杂散电流的产生机理并...

    亚共振式除杂器在选煤厂的应用

    本文介绍了原煤中杂物对洗选过程的影响,阐述了亚共振式除杂器的结构和除杂原理,并分析了其在梁北选煤厂的应用效果与生产效益。 首先,原煤中的杂物包括石块、矿石碎片、木块等,这些物质的加入会降低煤的燃烧性能...

Global site tag (gtag.js) - Google Analytics