From f640ff0a30e3a052dd033fd6b9ec83b409c93519 Mon Sep 17 00:00:00 2001 From: wanghui <2788755484@qq.com> Date: Sun, 14 Jun 2026 11:29:18 +0800 Subject: [PATCH] =?UTF-8?q?=E5=81=A5=E5=BA=B7=E5=91=8A=E7=9F=A5=E4=BF=9D?= =?UTF-8?q?=E5=AD=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lis/schema/LCCustomerImpartSchema.java | 11 +- .../sinosoft/lis/bl/LCCustomerImpartBL.java | 116 ++++++- .../g_busicommon/LDHealthAttachmentInput.jsp | 322 ++++++++++++++++++ .../g_busicommon/LDHealthAttachmentMain.jsp | 62 ++++ .../g_app/LCCustomerImpartController.java | 95 ++++++ .../lis/vo/g_app/LCCustomerImpartAddVO.java | 54 +++ .../main/webapp/g_app/LCContCommonInput.js | 15 + .../main/webapp/g_app/LCInsuredInfoInput.jsp | 2 +- 8 files changed, 671 insertions(+), 6 deletions(-) create mode 100644 lis-module-grp-common-web/src/main/webapp/g_busicommon/LDHealthAttachmentInput.jsp create mode 100644 lis-module-grp-common-web/src/main/webapp/g_busicommon/LDHealthAttachmentMain.jsp create mode 100644 lis-module-grp-nb-service/src/main/java/com/sinosoft/lis/controller/g_app/LCCustomerImpartController.java create mode 100644 lis-module-grp-nb-service/src/main/java/com/sinosoft/lis/vo/g_app/LCCustomerImpartAddVO.java diff --git a/lis-model-policy-schema/src/main/java/com/sinosoft/lis/schema/LCCustomerImpartSchema.java b/lis-model-policy-schema/src/main/java/com/sinosoft/lis/schema/LCCustomerImpartSchema.java index 79f069a9..3f795d55 100644 --- a/lis-model-policy-schema/src/main/java/com/sinosoft/lis/schema/LCCustomerImpartSchema.java +++ b/lis-model-policy-schema/src/main/java/com/sinosoft/lis/schema/LCCustomerImpartSchema.java @@ -187,8 +187,16 @@ public class LCCustomerImpartSchema extends Entity implements Schema list,String operator) { + + if (!getInputData(operator)) { + return false; + } + + if (!checkData()) { + return false; + } + + if (!dealData(list)) { + return false; + } + + return saveData(); + } + + private boolean saveData() { + PubSubmit tPubSubmit = new PubSubmit(); + + mInputData.add(mMMap); + if (!tPubSubmit.submitData(mInputData, Action.INSERT_ACTION)) { + buildError("saveData", new I18nMessage("提交数据失败!", "LIS-08006")); + return false; + } + return true; + } + + private boolean dealData(List list) { + LCCustomerImpartSchema lcCustomerImpartSchema = list.get(0); + grpContNo = lcCustomerImpartSchema.getGrpContNo(); + + if (Action.INSERT_ACTION.equals(mOperate)) { + SQLwithBindVariables sqLwithBindVariables = lCCustomerImpartSQL.deleteByGrpContNo(grpContNo); + mMMap.put(sqLwithBindVariables, MMap.Action.DELETE); + + for (LCCustomerImpartSchema tLCCustomerImpartSchema : list) { + tLCCustomerImpartSchema.setModifyDate(mCurrentDate); + tLCCustomerImpartSchema.setMakeTime(mCurrentTime); + tLCCustomerImpartSchema.setModifyDate(mCurrentDate); + tLCCustomerImpartSchema.setMakeTime(mCurrentTime); + mMMap.put(tLCCustomerImpartSchema, MMap.Action.INSERT); + } + } + return true; + } + + private boolean checkData() { + return true; + } + + private boolean getInputData(String operator) { + this.mOperate = operator; + return true; + } + + public CErrors getErrors() { + return mErrors; + } + + /** + * 错误构造方法 + * @param tFunctionName + * @param tErrorMessage + */ + private void buildError(String tFunctionName, I18nMessage tErrorMessage) { + + CError tCError = new CError(); + tCError.moduleName = this.getClass().getSimpleName(); + tCError.functionName = tFunctionName; + tCError.errorMessage(tErrorMessage); + mErrors.addOneError(tCError); + } + } diff --git a/lis-module-grp-common-web/src/main/webapp/g_busicommon/LDHealthAttachmentInput.jsp b/lis-module-grp-common-web/src/main/webapp/g_busicommon/LDHealthAttachmentInput.jsp new file mode 100644 index 00000000..32f3d435 --- /dev/null +++ b/lis-module-grp-common-web/src/main/webapp/g_busicommon/LDHealthAttachmentInput.jsp @@ -0,0 +1,322 @@ +<% + /*************************************************************** + *

ProName:LDHealthAttachmentInput.jsp

+ *

Title:附件管理

+ *

Description:附件管理

+ *

Copyright:Copyright (c) 2012

+ *

Company:Sinosoft

+ * @author : zhoufz + * @version : 8.0 + * @date : 2014-03-20 + ****************************************************************/ +%> +<%@page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %> +<%@include file="../common/jsp/UsrCheck.jsp" %> +<%@page import="com.sinosoft.utility.XssUtil" %> +<% + String tOtherNoType = XssUtil.escapeJavaScript(request.getParameter("OtherNoType")); + String tOtherNo = XssUtil.escapeJavaScript(request.getParameter("OtherNo")); + String tSubOtherNo = XssUtil.escapeJavaScript(request.getParameter("SubOtherNo")); + String tUploadNode = XssUtil.escapeJavaScript(request.getParameter("UploadNode")); + + String[] t告知内容 = { + "1、投保单位过去三年有发生过死亡或伤残情况?是否向保险公司索赔过医疗保险金?若“是”请告知。_年 疾病身故人数_ 意外身故人数_ 残疾人数_ 医疗发生金额_元", + "2、投保单位未在工作现场为参保人员提供《中华人民共和国劳动法》、《中华人民共和国安全生产法》、《中华人民共和国建筑法》等法律法规要求的安全技术、安全防护措施和其他维护安全、防范危险、预防火灾等措施?", + "3、参加投保的被保险人,近一年是否存在因患病或其他健康原因而不能工作连续达10个工作日或减轻劳动量的情况?", + "4、参加投保的被保险人,现在或过去是否存在患重大疾病或住院连续超过10天、或病假连续超过10天的情况?重大疾病内容如下:\n" + + "a、心脏病(心功能不全Ⅱ级及Ⅱ级以上)。\n" + + "b、高血压(Ⅱ级及Ⅱ级以上)、冠心病、心肌梗塞、心脏瓣膜病。\n" + + "c、脑血管疾病(脑出血、脑梗塞)、脑部的良性肿瘤、癫痫病、瘫痪、帕金森氏症。\n" + + "d、慢性肾脏疾病(肾小球肾炎、肾盂肾炎、肾病综合征、肾功能不全)。\n" + + "e、慢性阻塞性肺病(慢性支气管炎、肺气肿、肺心病)。\n" + + "f、慢性活动性肝炎、慢性病毒性肝炎、肝硬化。\n" + + "g、白血病、再生障碍性贫血、淋巴瘤、系统性红斑狼疮、糖尿病。\n" + + "h、任何恶性肿瘤、任何性质不明的肿块/阴影/结节。\n" + + "i、任何精神疾病、任何先天性或遗传性疾病、传染性疾病、性病或艾滋病。", + "5、参加投保的被保险人,是否需要参加飞行、潜水、登山、攀岩、赛车、赛马、举重、武术比赛、滑雪、滑浪、漂流、蹦极等危险活动?", + "6、参加投保的被保险人的职业是否涉及或接触任何危险物(化学物质、爆炸物、有毒物质、放射性物品或其他危险物)、高处作业(指在距坠落高度基准面 2 米或 2 米以上有可能坠落的高处进行的作业)、高压作业、潜水或水下作业、隧道坑道或井下作业等危险工作?", + "7、参加投保的被保险人,是否因工作原因需要前往正在或经常发生自然灾害、病疫、战乱、动乱、种族冲突、政局动荡的危险地区或国家?", + "8、参加投保的被保险人,是否存在以下一项或多项:\n" + "(1)非投保单位员工或非团体成员的人员(连带被保险人除外)?(2)计划长期居住或逗留在中国大陆以外的国家或地区累计超过6个月的人员? (3)残障、职业病人员?", + "9、投保时是否有正在怀孕的员工?", + "10、投保身故责任的未成年人是否有其他生效中的身故责任保险?若“是”请告知。\n" + + "富泽人寿_万元;其他保险公司_万元。" + }; +%> + + + + <%--附件管理--%>LIS + + + + + + + + + + + + + <%@include file="./LDAttachmentInit.jsp" %> + + + + + + + +
+
+ <%-- --%> + <%-- --%> + <%-- --%> + <%-- --%> + <%--
--%> + + <%--
--%> +
+
+
+
+ + <%-- --%> + <%-- --%> + <%-- --%> + <%-- --%> + + + <%-- --%> + + + + + + + + + + +
附件类型 + <%-- ondblclick="return showCodeList('attachtype',[this, AttachTypeName],[0, 1],null,null,null,'1',180);" --%> + <%-- onkeyup="return showCodeListKey('attachtype',[this, AttachTypeName],[0, 1],null,null,null,'1',180);">--%> + <%--
附件路径仅支持txt,doc,docx,xls,xlsx,pdf,zip,eml 格式的文件上载,文件大小不超过5M仅支持txt,doc,docx,xls,xlsx,pdf,zip,eml 格式的文件上载,询价要求文件大小不超过10M +
+ + + + + + +
+



+
+ + + + +
+ + + + + + +
+ 健康告知录入 (说明:1、建工险仅需填写第1-2项;2、第3-10项若为“是”,请在“详细描述”栏写明。) +
+ +
+ + +
+ +
+
+ + + + + + + + + + + + + +
序号
告知版别
告知编码
告知内容
填写内容
详细说明
+
+
+ + +
+ + + + + <% for(int i=1; i<=10; i++) { %> + + + + + + + + + + + + + + + + + + + + <% } %> + +
+
+ +
+
+
+ +
+
+
+ +
+
+
+ +
+
+
+ +
+
+
+ +
+
+
+
+
+
+
+ + +
+ +
+ + + + + + + + + + diff --git a/lis-module-grp-common-web/src/main/webapp/g_busicommon/LDHealthAttachmentMain.jsp b/lis-module-grp-common-web/src/main/webapp/g_busicommon/LDHealthAttachmentMain.jsp new file mode 100644 index 00000000..56a965f6 --- /dev/null +++ b/lis-module-grp-common-web/src/main/webapp/g_busicommon/LDHealthAttachmentMain.jsp @@ -0,0 +1,62 @@ +<% + /*************************************************************** + *

ProName:LDHealthAttachmentMain.jsp

+ *

Title:附件管理

+ *

Description:附件管理

+ *

Copyright:Copyright (c) 2012

+ *

Company:Sinosoft

+ * @author : zhoufz + * @version : 8.0 + * @date : 2014-03-20 + ****************************************************************/ +%> +<%@page pageEncoding="UTF-8" contentType="text/html;charset=UTF-8" %> +<%@include file="../common/jsp/UsrCheck.jsp"%> +<%@page import="com.sinosoft.utility.XssUtil"%> + + + <%--附件管理--%>LIS + + + + + + + + <%--标题与状态区域--%> + <%--保存客户端变量的区域,该区域必须有--%> + + + <%--保存客户端变量和WebServer实现交户的区域,该区域必须有--%> + + + + + + <%--菜单区域--%> + + <% + String tUploadNode = XssUtil.escapeJavaScript(request.getParameter("UploadNode")); + String tOtherNoType = XssUtil.escapeJavaScript(request.getParameter("OtherNoType")); + String tOtherNo = XssUtil.escapeJavaScript(request.getParameter("OtherNo")); + String tSubOtherNo = XssUtil.escapeJavaScript(request.getParameter("SubOtherNo")); + %> + <%--交互区域--%> + &OtherNo=<%=XssUtil.escapeJavaScript(request.getParameter("OtherNo"))%>&SubOtherNo=<%=XssUtil.escapeJavaScript(request.getParameter("SubOtherNo"))%>&UploadNode=<%=XssUtil.escapeJavaScript(request.getParameter("UploadNode"))%>" /> + <%--./LDAttachmentInput.jsp?OtherNoType=<%=XssUtil.escapeJavaScript(request.getParameter("OtherNoType"))%>&OtherNo=<%=XssUtil.escapeJavaScript(request.getParameter("OtherNo"))%>&SubOtherNo=<%=XssUtil.escapeJavaScript(request.getParameter("SubOtherNo"))%>&UploadNode=<%=XssUtil.escapeJavaScript(request.getParameter("UploadNode"))%>--%> + <%--下一步页面区域--%> + + + + + <body bgcolor="#ffffff"> + </body> + + + diff --git a/lis-module-grp-nb-service/src/main/java/com/sinosoft/lis/controller/g_app/LCCustomerImpartController.java b/lis-module-grp-nb-service/src/main/java/com/sinosoft/lis/controller/g_app/LCCustomerImpartController.java new file mode 100644 index 00000000..37270fe0 --- /dev/null +++ b/lis-module-grp-nb-service/src/main/java/com/sinosoft/lis/controller/g_app/LCCustomerImpartController.java @@ -0,0 +1,95 @@ +package com.sinosoft.lis.controller.g_app; + + +import cn.hutool.core.collection.CollectionUtil; +import com.sinosoft.lis.bl.LCCustomerImpartBL; +import com.sinosoft.lis.controller.Action; +import com.sinosoft.lis.controller.ResponseInfo; +import com.sinosoft.lis.controller.Service; + +import com.sinosoft.lis.i18n.I18nMessage; +import com.sinosoft.lis.pubfun.GlobalInput; +import com.sinosoft.lis.schema.LCCustomerImpartSchema; +import com.sinosoft.lis.vo.g_app.LCCustomerImpartAddVO; +import io.swagger.annotations.ApiOperation; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; + +import java.util.ArrayList; +import java.util.List; + +@Controller +@RequestMapping(value = Service.GRP_NB) +public class LCCustomerImpartController { + + private static final Logger logger = LoggerFactory.getLogger(LCCustomerImpartController.class); + + @ResponseBody + @ApiOperation("新单管理-->生成投保单-->投保书信息-->被保险人清单维护-->健康告知书附件上载-->健康保存") + @PostMapping(value = "/g_app/LCCustomerImpartSave/" + Action.ADD_ACTION) + public ResponseInfo add(@RequestBody LCCustomerImpartAddVO request) { + request.setAction(Action.ADD_ACTION); + return dealMethod(request); + } + + private ResponseInfo dealMethod(@RequestBody LCCustomerImpartAddVO lcCustomerImpartAddVO){ + String operator = Action.INSERT_ACTION; + ResponseInfo response = new ResponseInfo(); + GlobalInput tGI = GlobalInput.get(); + if (tGI == null) { + response.setContent(new I18nMessage("页面失效,请重新登陆", "LIS-18239").getMessage()); + response.fail(); + return response; + } + + List body = lcCustomerImpartAddVO.getBody(); + + if (CollectionUtil.isEmpty(lcCustomerImpartAddVO.getBody())){ + response.succ(); + return response; + } + + List schemaList = new ArrayList<>(); + + for (LCCustomerImpartAddVO.LCCustomerImpartAddParam param : body){ + String grpContNo = lcCustomerImpartAddVO.getGrpContNo(); + LCCustomerImpartSchema schema = new LCCustomerImpartSchema(); + schema.setGrpContNo(grpContNo); + schema.setContNo(grpContNo); + schema.setProposalContNo(grpContNo); + schema.setImpartCode(param.getImpartCode()); + schema.setImpartVer(param.getImpartVer()); + schema.setImpartContent(param.getImpartContent()); + schema.setImpartParamModle(param.getImpartParam()); + schema.setDescVal(param.getDescVal()); + schema.setPatchNo(1); + schema.setOperator(tGI.Operator); + schema.setCustomerNo(""); + schema.setCustomerNoType(""); + schemaList.add(schema); + } + + LCCustomerImpartBL lcCustomerImpartBL = new LCCustomerImpartBL(); + if (lcCustomerImpartBL.submitData(schemaList,operator)){ + response.setContent("操作成功"); + response.succ(); + }else { + response.setContent(lcCustomerImpartBL.getErrors().getFirstError()); + response.fail(); + } + return response; + } + + + + + + + + +} diff --git a/lis-module-grp-nb-service/src/main/java/com/sinosoft/lis/vo/g_app/LCCustomerImpartAddVO.java b/lis-module-grp-nb-service/src/main/java/com/sinosoft/lis/vo/g_app/LCCustomerImpartAddVO.java new file mode 100644 index 00000000..a91cff46 --- /dev/null +++ b/lis-module-grp-nb-service/src/main/java/com/sinosoft/lis/vo/g_app/LCCustomerImpartAddVO.java @@ -0,0 +1,54 @@ +package com.sinosoft.lis.vo.g_app; + + +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +public class LCCustomerImpartAddVO { + + @ApiModelProperty("投保单号") + private String grpContNo; + + @ApiModelProperty("操作") + private String action; + + @ApiModelProperty("详细数据") + private List body; + + + @Data + public static class LCCustomerImpartAddParam{ + + + @ApiModelProperty("投保单号") + private String grpContNo; + + @ApiModelProperty("告知版别") + private String impartVer; + + @ApiModelProperty("告知编码") + private String impartCode; + + @ApiModelProperty("告知内容") + private String impartContent; + + @ApiModelProperty("填写内容") + private String impartParam; + + @ApiModelProperty("详细说明") + private String descVal; + } + + + + +} diff --git a/lis-module-grp-nb-web/src/main/webapp/g_app/LCContCommonInput.js b/lis-module-grp-nb-web/src/main/webapp/g_app/LCContCommonInput.js index 2820287c..a42092d7 100644 --- a/lis-module-grp-nb-web/src/main/webapp/g_app/LCContCommonInput.js +++ b/lis-module-grp-nb-web/src/main/webapp/g_app/LCContCommonInput.js @@ -545,6 +545,21 @@ function showAttachment() { } } +/** + * 附件管理(健康告知书) + */ +function showHealthAttachment() { + if(tFlag == '4'|| tFlag == '5'){ + mainRequest(); + window.open("../g_busicommon/LDHealthAttachmentMain.jsp?OtherNoType=NB&OtherNo="+tGrpContNo+"&UploadNode="+tActivityID,"附件管理",'width=950,height=520,top=0,left=0,toolbar=0,location=0,directories=0,menubar=0,scrollbars=1,resizable=1,status=0'); + + }else{ + mainRequest(); + window.open("../g_busicommon/LDHealthAttachmentMain.jsp?OtherNoType=NB&OtherNo="+tGrpPropNo+"&UploadNode="+tActivityID,"附件管理",'width=950,height=520,top=0,left=0,toolbar=0,location=0,directories=0,menubar=0,scrollbars=1,resizable=1,status=0'); + + } +} + /** * 保单保全查询窗口 */ diff --git a/lis-module-grp-nb-web/src/main/webapp/g_app/LCInsuredInfoInput.jsp b/lis-module-grp-nb-web/src/main/webapp/g_app/LCInsuredInfoInput.jsp index b9818b7b..57b28f47 100644 --- a/lis-module-grp-nb-web/src/main/webapp/g_app/LCInsuredInfoInput.jsp +++ b/lis-module-grp-nb-web/src/main/webapp/g_app/LCInsuredInfoInput.jsp @@ -118,7 +118,7 @@ <%-- --%>