背景目的:
为了配合定价模型的实施,需要建立一套非定价政策的自动核保规则引擎,现有的自动核保规则系统已不能满足新理念的需求,故需重新建造。
<!--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">
全选/取消
</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);
}
相关推荐
伤寒杂病论全集
利用光学分析软件ASAP对库克三片式进行杂散光的分析,计算了杂散光线的能量占所有到达传感 器的光线的比例,并显示了占比较大的杂散光的光路,最后通过在镜片表面上镀增透膜的方法抑制 杂散光
在调试过程中,对DAC输出单音进行测试,发现在信号530k左右有较大的杂散,其中DAC0和DAC1的杂散幅度约-55dB左右,基本满足要求,DAC2和DAC3的杂散达到了-45dB左右,可能会影响到EVM等系统指标,需要进行排查。
用tracepro进行光学系统杂散光分析,用tracepro进行光学系统杂散光分析,用tracepro进行光学系统杂散光分析,用tracepro进行光学系统杂散光分析,
TracePro典型例子-杂散光分析,学习TracePro软件,Tracepro是一套可以做照明系统分析,传统光学分析,辐射度以及光度分析的软件,它也是第一套由符合工业标准的ACIS立体模型绘图软件所发展出来的光机软件。...
详细介绍了如何利用tracepro软件进行光学镜头设计的杂散光分析,里面有实例教程,易学且深刻,是一个很不错的教程
跨语言、跨文化是翻译文学与生俱有的特性,由于巴赫金文化诗学特别凸显了文学的民族文化性,所以借助于巴赫金的文化诗学论述了翻译文学最具本质性的一种特性———文化杂合性。文化杂合性使翻译文学既不属于外国文学也...
多谐波激励下变压器结构件杂散损耗建模与验证方法。考虑 线圈涡流损耗的影响,提出一种基于实验更准确地确定结构 件杂散损耗的改进方法。搭建硅钢叠片磁、损耗特性测量系 统,基于测量数据建立多谐波激励下的损耗...
绝缘栅型双极性晶体管(insulated gate bipolar transistor,IGBT)模块由于线路杂散电感的存在使得在开通和关断的瞬态 过程中产生过大的电压尖峰,过压会使 IGBT 芯片的集电极电流增大从而导致结温上升,且其是导致 ...
管道输送是低热值电厂煤泥燃料的最佳输送方式,其工艺过程包括预处理、管道输送和锅炉给料,其中预处理是影响煤泥输送系统的关键因素,煤泥膏体搅拌除杂仓通过强力搅拌和溢流筛分联合作用的方式对煤泥进行预处理,文章对...
幼学杂字,幼学杂字课件,幼学杂字PPT
已亥杂诗中考试题及答案.pdf
在中煤装备产业园区地基处理过程中,面对大面积超深杂填土的地质环境,为了节省工期而决定采用较大冲击能的强夯处理地基。论文描述了8000kN.m强夯正式施工前的试验过程,通过试验确定各项施工参数,指导大面积施工,保证...
【四时田园杂兴(其二十五)】名师教学教案.doc
1《古诗三首——四时田园杂兴(其三十一)》说课稿.pdf
四时田园杂兴(带拼音)[文].pdf
手机射频GSM传导杂散(谐波)的解决之道 射频参考资料,GSM
在50-90℃的自由溶剂条件下,研究了1,8-二氮杂双环[5.4.0]十一碳-7-烯(DBU)催化糠醛与丙酮的醛醇缩合反应动力学。 在最佳条件下,DBU催化的1,4-戊二烯-3-对-1,5-二呋喃基的最高收率达到98.0%。 根据动力学分析,...
我们提供了多种多样的证据,表明在异质弦理论中胶子和引子的树级S矩阵可以减少为规范多重峰的色序单迹线幅度。 在每种情况下,分别针对最多三个引力子,... 研究了Cachazo-He-Yuan公式的整数与杂散字符串之间的异同。