diff --git a/lis-model-policy-schema/src/main/java/com/sinosoft/lis/sql/repository/LCCustomerImpartSQL.java b/lis-model-policy-schema/src/main/java/com/sinosoft/lis/sql/repository/LCCustomerImpartSQL.java index 4ba406e1..4b42f4d8 100644 --- a/lis-model-policy-schema/src/main/java/com/sinosoft/lis/sql/repository/LCCustomerImpartSQL.java +++ b/lis-model-policy-schema/src/main/java/com/sinosoft/lis/sql/repository/LCCustomerImpartSQL.java @@ -139,4 +139,7 @@ public interface LCCustomerImpartSQL { SQLwithBindVariables deleteByGrpContNo( @Param("mGrpContNo") String mGrpContNo ); + + @SQL("select impartcode,impartver,impartcontent,impartparammodle,descval from LCCustomerImpart where grpcontno = '?grpContNo?' order by impartcontent") + SSRS selectCustomerImpartByGrpContNo(@Param("grpContNo") String grpContNo); } \ No newline at end of file diff --git a/lis-model-policy-schema/src/main/java/com/sinosoft/lis/sql/repository/LCGrpContSQL.java b/lis-model-policy-schema/src/main/java/com/sinosoft/lis/sql/repository/LCGrpContSQL.java index 7c6390fe..69c28d5f 100644 --- a/lis-model-policy-schema/src/main/java/com/sinosoft/lis/sql/repository/LCGrpContSQL.java +++ b/lis-model-policy-schema/src/main/java/com/sinosoft/lis/sql/repository/LCGrpContSQL.java @@ -540,4 +540,8 @@ WHERE a.GrpContNo = '?GrpContNo?' @SQL("select 1 from lcgrpcont l where l.GrpContNo = '?GrpContNo?'") String selectLcGrpContByGRPCONTNO(@Param("GrpContNo") String GrpContNo); + + + @SQL( value = "select grpType,grpNature from LCGrpCont where grpcontno = '?GrpContNo?' ") + SSRS selectGrpContByGRPCONTNO(@Param("GrpContNo") String GrpContNo); } diff --git a/lis-module-common-bl/src/main/java/com/sinosoft/lis/bl/LCCustomerImpartBL.java b/lis-module-common-bl/src/main/java/com/sinosoft/lis/bl/LCCustomerImpartBL.java index 767c2bb3..b2548efe 100644 --- a/lis-module-common-bl/src/main/java/com/sinosoft/lis/bl/LCCustomerImpartBL.java +++ b/lis-module-common-bl/src/main/java/com/sinosoft/lis/bl/LCCustomerImpartBL.java @@ -23,11 +23,13 @@ import com.sinosoft.lis.vschema.LBCustomerImpartSet; import com.sinosoft.lis.vschema.LCCustomerImpartSet; import com.sinosoft.persistence.SQLProxy; import com.sinosoft.utility.*; +import org.apache.commons.lang.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.util.List; import java.util.Objects; +import java.util.regex.Pattern; public class LCCustomerImpartBL { private static final Logger logger = LoggerFactory.getLogger(LCCustomerImpartBL.class); @@ -176,7 +178,7 @@ public class LCCustomerImpartBL { return false; } - if (!checkData()) { + if (!checkData(list)) { return false; } @@ -217,7 +219,46 @@ public class LCCustomerImpartBL { return true; } - private boolean checkData() { + private boolean checkData(List list) { + + for (LCCustomerImpartSchema tLCCustomerImpartSchema : list) { + String impartCode = tLCCustomerImpartSchema.getImpartCode(); + + String impartParamModle = tLCCustomerImpartSchema.getImpartParamModle(); + + if (StringUtils.isNotBlank(impartParamModle) && Objects.equals(impartCode, "A0101")){ + + String regex = "^\\d+(/\\d+){4}$"; + Pattern pattern = Pattern.compile(regex); + + if (!pattern.matcher(impartParamModle).matches()){ + buildError("checkData",new I18nMessage(impartCode+"参数错误,格式为:参数1/参数2/参数3/参数4/参数5", "LIS-72097")); + return false; + } + } + + if (StringUtils.isNotBlank(impartParamModle) && Objects.equals(impartCode, "A01010")){ + + String regex = "^\\d+(/\\d+)$"; + Pattern pattern = Pattern.compile(regex); + + if (!pattern.matcher(impartParamModle).matches()){ + buildError("checkData",new I18nMessage(impartCode+"参数错误,格式为:参数1/参数2", "LIS-72098")); + return false; + } + } + + + if (StringUtils.isNotBlank(impartParamModle) && !Objects.equals(impartCode, "A01010") && !Objects.equals(impartCode, "A0101")) { + if (!Objects.equals(impartParamModle, "是") && !Objects.equals(impartParamModle, "否") ){ + buildError("checkData",new I18nMessage(impartCode+"参数错误,请填是或否", "LIS-72099")); + return false; + } + } + } + + + return true; } diff --git a/lis-module-grp-nb-schema/src/main/java/com/sinosoft/lis/sql/repository/LCCustomerIDSQL.java b/lis-module-grp-nb-schema/src/main/java/com/sinosoft/lis/sql/repository/LCCustomerIDSQL.java index 564c9fe7..7b1db8ed 100644 --- a/lis-module-grp-nb-schema/src/main/java/com/sinosoft/lis/sql/repository/LCCustomerIDSQL.java +++ b/lis-module-grp-nb-schema/src/main/java/com/sinosoft/lis/sql/repository/LCCustomerIDSQL.java @@ -26,4 +26,8 @@ public interface LCCustomerIDSQL { @SQL("select * from LcCustomerID where PolicyNo ='?tGrpContNo?' and IDFlag ='00' and IDTYPE ='6' and CustomerNo ='?tCustomerNo?'") LCCustomerIDSet getLCCustomerIDSetByGrpContNoAndCustomerNo(@Param("tGrpContNo") String tGrpContNo, @Param("tCustomerNo") String tCustomerNo); + + @SQL(value = "select IDType,EndDate from LCCustomerID where PolicyNo = '?grpContNo?' ") + SSRS getSSRSByGrpContNo(@Param("grpContNo") String grpContNo); + } \ No newline at end of file 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 index 37270fe0..f4fae545 100644 --- 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 @@ -79,7 +79,7 @@ public class LCCustomerImpartController { response.setContent("操作成功"); response.succ(); }else { - response.setContent(lcCustomerImpartBL.getErrors().getFirstError()); + response.setContent(lcCustomerImpartBL.getErrors().getLastError()); response.fail(); } return response; diff --git a/lis-module-grp-nb-service/src/main/java/com/sinosoft/lis/g_app/LCContPrtPrintBL.java b/lis-module-grp-nb-service/src/main/java/com/sinosoft/lis/g_app/LCContPrtPrintBL.java index 4050f1a9..a13b63f8 100644 --- a/lis-module-grp-nb-service/src/main/java/com/sinosoft/lis/g_app/LCContPrtPrintBL.java +++ b/lis-module-grp-nb-service/src/main/java/com/sinosoft/lis/g_app/LCContPrtPrintBL.java @@ -10,6 +10,8 @@ import com.sinosoft.lis.sql.easyquery.g_print.TBNoticePrintSql; import com.sinosoft.lis.sql.g_app.LCContPrtPrintBLSQL; import com.sinosoft.lis.sql.g_app.LCInsuredDealBLSQL; import com.sinosoft.lis.sql.g_app.LCPolicySignBLSQL; +import com.sinosoft.lis.sql.repository.LCCustomerIDSQL; +import com.sinosoft.lis.sql.repository.LCCustomerImpartSQL; import com.sinosoft.lis.sql.repository.LCGrpContSQL; import com.sinosoft.lis.sql.repository.LCInsuredSQL; import com.sinosoft.persistence.SQLProxy; @@ -56,6 +58,8 @@ public class LCContPrtPrintBL implements BusinessService { private LCPolicySignBLSQL lcPolicySignBLSQL = SQLProxy.getInstance(LCPolicySignBLSQL.class); private ExeSQL mExeSQL = new ExeSQL(); private LCContPrtPrintBLSQL lcContPrtPrintBLSQL = SQLProxy.getInstance(LCContPrtPrintBLSQL.class); + private LCCustomerIDSQL lcCustomerIDSQL = SQLProxy.getInstance(LCCustomerIDSQL.class); + private LCCustomerImpartSQL lcCustomerImpartSQL = SQLProxy.getInstance(LCCustomerImpartSQL.class); private TBNoticePrintSql tbNoticePrintSql = SQLProxy.getInstance(TBNoticePrintSql.class); private LCGrpContSQL lcGrpContSQL = SQLProxy.getInstance(LCGrpContSQL.class); @@ -334,27 +338,29 @@ public class LCContPrtPrintBL implements BusinessService { buildError("dealData", new I18nMessage("查询投保单模板信息失败!", "")); return false; } - - jsonXmlExport.put("fromSystem","GRP"); + /******************************************************** + * 投保单模板信息 + *******************************************************/ + jsonXmlExport.put("fromSystem","GRP");//系统 jsonXmlExport.put("fromModule","NB"); - jsonXmlExport.put("businessNumber",mGrpPropNo); - jsonXmlExport.put("businessType",Code); - jsonXmlExport.put("requestId",PubFun1.CreateMaxNo("requestId", 10)); - jsonXmlExport.put("templateCode",nbPrintModelInfoByCode.GetText(1, 2)); - jsonXmlExport.put("versionNumber",nbPrintModelInfoByCode.GetText(1, 3)); - jsonXmlExport.put("isSealAllowed",nbPrintModelInfoByCode.GetText(1, 4)); + jsonXmlExport.put("businessNumber",mGrpPropNo);//投保单号 + jsonXmlExport.put("businessType",Code);//行业类别 + jsonXmlExport.put("requestId",PubFun1.CreateMaxNo("requestId", 10));//请求ID + jsonXmlExport.put("templateCode",nbPrintModelInfoByCode.GetText(1, 2));//模板编码 + jsonXmlExport.put("versionNumber",nbPrintModelInfoByCode.GetText(1, 3));//版本号 + jsonXmlExport.put("isSealAllowed",nbPrintModelInfoByCode.GetText(1, 4));//其他标识 JSONArray jsonArray = new JSONArray(); jsonXmlExport.put("params",jsonArray); JSONObject objectOne = new JSONObject(); - objectOne.put("filesOrder","1"); - objectOne.put("filesType","docx"); + objectOne.put("filesOrder","1");//文件顺序 + objectOne.put("filesType","docx");//文件类型 JSONObject objectOneData = new JSONObject(); objectOne.put("data",objectOneData); jsonArray.add(objectOne); objectOneData.put("SubType", "21001"); - objectOneData.put("AskPrtNo", mGrpPropNo); + objectOneData.put("AskPrtNo", mGrpPropNo);//投保单号 // jsonDATASET.put("Fax1", ""); // jsonDATASET.put("LinkMan2", ""); // jsonDATASET.put("Department2", ""); @@ -383,56 +389,81 @@ public class LCContPrtPrintBL implements BusinessService { // jsonDATASET.put("GrpNature1", ""); // objectOneData.put("PartnerName", "主要控股股东名称"); - SSRS lcGrpInfoSSRS = lcContPrtPrintBLSQL.getLCGrpInfoByGrpPropNo(mGrpPropNo); + + /******************************************************** + * 投保信息 + *******************************************************/ + SSRS rowData = lcGrpContSQL.selectGrpContByGRPCONTNO(mGrpPropNo); + String grpType = rowData.GetText(1, 1); //组织类型 + String grpNature = rowData.GetText(1, 2);//单位性质 + this.getGrpType(grpType,objectOneData); + this.getGrpNature(grpNature,objectOneData); + + + SSRS ssrsByGrpContNo = lcCustomerIDSQL.getSSRSByGrpContNo(mGrpPropNo);// + String IDType = ssrsByGrpContNo.GetText(1, 1);//证件类型 + this.getIDType(IDType,objectOneData); + + String endDate = ssrsByGrpContNo.GetText(1, 1);//证件有效期 + objectOneData.put("IDEndDate", endDate); + + + SSRS lcGrpInfoSSRS = lcContPrtPrintBLSQL.getLCGrpInfoByGrpPropNo(mGrpPropNo); if (lcGrpInfoSSRS.getMaxRow()==0 ) { buildError("dealData", new I18nMessage("查询保单信息失败!", "LIS-99999")); return false; } + + + /******************************************************** * 投保单位信息 *******************************************************/ // jsonDATASET.put("AskNo", lcGrpInfoSSRS.GetText(1,1)); - objectOneData.put("GrpName", lcGrpInfoSSRS.GetText(1,2)); - objectOneData.put("GrpAddress",lcGrpInfoSSRS.GetText(1,3)); - objectOneData.put("CorporationNo", lcGrpInfoSSRS.GetText(1,4)); - objectOneData.put("SocialNo",lcGrpInfoSSRS.GetText(1,5)); - objectOneData.put("GrpZipCode",lcGrpInfoSSRS.GetText(1,6)); - objectOneData.put("GrpNature", lcGrpInfoSSRS.GetText(1,7)); - objectOneData.put("BusinessType", lcGrpInfoSSRS.GetText(1,8)); - objectOneData.put("Peoples", lcGrpInfoSSRS.GetText(1,9)); - objectOneData.put("AllOnWorkPeoples", lcGrpInfoSSRS.GetText(1,10)); - objectOneData.put("AllOffWorkPeoples", lcGrpInfoSSRS.GetText(1,11)); - objectOneData.put("MainPeoples", lcGrpInfoSSRS.GetText(1,12)); - objectOneData.put("RelaPeoples", lcGrpInfoSSRS.GetText(1,13)); - objectOneData.put("TotalPeoples", lcGrpInfoSSRS.GetText(1,14)); - objectOneData.put("LinkMan1", lcGrpInfoSSRS.GetText(1,15)); - objectOneData.put("Department1", lcGrpInfoSSRS.GetText(1,16)); - objectOneData.put("MobilePhone1", lcGrpInfoSSRS.GetText(1,17)); + objectOneData.put("GrpName", lcGrpInfoSSRS.GetText(1,2));//投保单位名称 + objectOneData.put("GrpAddress",lcGrpInfoSSRS.GetText(1,3));//投保单位地址 + objectOneData.put("CorporationNo", lcGrpInfoSSRS.GetText(1,4));//投保单位证件号(idtype='2') + objectOneData.put("SocialNo",lcGrpInfoSSRS.GetText(1,5));//投保单位证号(idtype='4') + objectOneData.put("GrpZipCode",lcGrpInfoSSRS.GetText(1,6));//单位邮政编码 + objectOneData.put("GrpNature", lcGrpInfoSSRS.GetText(1,7));//单位性质 + objectOneData.put("BusinessType", lcGrpInfoSSRS.GetText(1,8));//行业类别 + objectOneData.put("Peoples", lcGrpInfoSSRS.GetText(1,9));//单位总人数 + objectOneData.put("AllOnWorkPeoples", lcGrpInfoSSRS.GetText(1,10));//单位在职人数 + objectOneData.put("AllOffWorkPeoples", lcGrpInfoSSRS.GetText(1,11));//单位退休人数 + objectOneData.put("MainPeoples", lcGrpInfoSSRS.GetText(1,12));//单位主被保险人数 + objectOneData.put("RelaPeoples", lcGrpInfoSSRS.GetText(1,13));//单位附属被保险人数 + objectOneData.put("TotalPeoples", lcGrpInfoSSRS.GetText(1,14));//单位合计 + objectOneData.put("LinkMan1", lcGrpInfoSSRS.GetText(1,15));//经办人姓名 + objectOneData.put("Department1", lcGrpInfoSSRS.GetText(1,16));//经办人所属部门 + objectOneData.put("MobilePhone1", lcGrpInfoSSRS.GetText(1,17));//经办人联系电话 // jsonDATASET.put("Phone1", lcGrpInfoSSRS.GetText(1,18)); - objectOneData.put("E_Mail1", lcGrpInfoSSRS.GetText(1,19)); - objectOneData.put("PayMode", lcGrpInfoSSRS.GetText(1,20)); - objectOneData.put("BankCode", lcGrpInfoSSRS.GetText(1,21)); - objectOneData.put("BankAccNo", lcGrpInfoSSRS.GetText(1,22)); - objectOneData.put("DisputedFlag", lcGrpInfoSSRS.GetText(1,23)); + objectOneData.put("E_Mail1", lcGrpInfoSSRS.GetText(1,19));//经办人所属邮箱 + objectOneData.put("PayMode", lcGrpInfoSSRS.GetText(1,20));//付款方式 + objectOneData.put("BankCode", lcGrpInfoSSRS.GetText(1,21));//开户银行 + objectOneData.put("BankAccNo", lcGrpInfoSSRS.GetText(1,22));//银行账号 + objectOneData.put("DisputedFlag", lcGrpInfoSSRS.GetText(1,23));//合同争议处理方式 objectOneData.put("CorpLicence", lcGrpInfoSSRS.GetText(1,24)); //企业法人营业执照 objectOneData.put("TaxRegNo",lcGrpInfoSSRS.GetText(1,25)); //税务登记证 objectOneData.put("SchoolLicence", lcGrpInfoSSRS.GetText(1,26)); //办学许可证 - objectOneData.put("PersonPrintFlag", lcGrpInfoSSRS.GetText(1,27)); + objectOneData.put("PersonPrintFlag", lcGrpInfoSSRS.GetText(1,27));//打印个人保险凭证 String tValDateType =lcGrpInfoSSRS.GetText(1,46); + //保险生效日期 if ("0".equals(tValDateType)) { objectOneData.put("CValiDate", "保费到帐日次日零时"); } else { objectOneData.put("CValiDate", lcGrpInfoSSRS.GetText(1,28)); } - objectOneData.put("PremApporFund", lcGrpInfoSSRS.GetText(1,29)); - objectOneData.put("PayIntv", lcGrpInfoSSRS.GetText(1,30)); - objectOneData.put("PrintType", lcGrpInfoSSRS.GetText(1,31)); - objectOneData.put("InsuYear",lcGrpInfoSSRS.GetText(1,32)); + objectOneData.put("PremApporFund", lcGrpInfoSSRS.GetText(1,29));//保险负担原则 + objectOneData.put("PayIntv", lcGrpInfoSSRS.GetText(1,30));//缴费方式 + objectOneData.put("PrintType", lcGrpInfoSSRS.GetText(1,31));//打印保单类型 + objectOneData.put("InsuYear",lcGrpInfoSSRS.GetText(1,32));//保险期限 double sumPrem=Double.parseDouble(lcGrpInfoSSRS.GetText(1,33)); + + //投保保险费合计大写(小写) if("3".equals(lcGrpInfoSSRS.GetText(1,59))){ double sumEnterPriseBurden = Double.parseDouble(lcGrpInfoSSRS.GetText(1,57)); double sumPersonBurden = Double.parseDouble(lcGrpInfoSSRS.GetText(1,58)); @@ -440,11 +471,12 @@ public class LCContPrtPrintBL implements BusinessService { }else { objectOneData.put("AskSumPrem", PubFun.getChnMoney(sumPrem)+"("+new DecimalFormat("0.00").format(sumPrem)+")"); } - objectOneData.put("GrpSpec",lcGrpInfoSSRS.GetText(1,34)); - objectOneData.put("Satrap",lcGrpInfoSSRS.GetText(1,35)); - objectOneData.put("Corporation", lcGrpInfoSSRS.GetText(1,36)); + objectOneData.put("GrpSpec",lcGrpInfoSSRS.GetText(1,34));//备注及特别约定 + objectOneData.put("Satrap",lcGrpInfoSSRS.GetText(1,35));//法人 + objectOneData.put("Corporation", lcGrpInfoSSRS.GetText(1,36));//负责人 + - objectOneData.put("ComArea", lcGrpInfoSSRS.GetText(1,47)); + objectOneData.put("ComArea", lcGrpInfoSSRS.GetText(1,47));// // String tDescriptionSolvency = getSolvency(lcGrpInfoSSRS.GetText(1, 50)); @@ -466,6 +498,29 @@ public class LCContPrtPrintBL implements BusinessService { objectOneData.put("ControlTRType", lcGrpInfoSSRS.GetText(1,63));//税收类型 objectOneData.put("InstitutionsCategory", lcGrpInfoSSRS.GetText(1,64));//机构类别 objectOneData.put("Satrap", lcGrpInfoSSRS.GetText(1,65));//负责人 + String areaCode = lcGrpInfoSSRS.GetText(1, 66); + this.getBussArea(objectOneData,areaCode);//运营区域 + objectOneData.put("MainBusiness",lcGrpInfoSSRS.GetText(1,67));//经营范围 + objectOneData.put("CorID", lcGrpInfoSSRS.GetText(1,68));//负责人证件号 + objectOneData.put("CorIDExpiryDate", lcGrpInfoSSRS.GetText(1,69));//负责人证件有效期 + objectOneData.put("Corporation1", lcGrpInfoSSRS.GetText(1,70));//法人 + objectOneData.put("CorID1", lcGrpInfoSSRS.GetText(1,71));//法人证件号 + objectOneData.put("CorIDExpiryDate1", lcGrpInfoSSRS.GetText(1,72));//法人证件有效期 + objectOneData.put("LinkIdNo", lcGrpInfoSSRS.GetText(1,73));//经办人证件号码 + objectOneData.put("TaxpayerNo", lcGrpInfoSSRS.GetText(1,74));//纳税人识别号 + objectOneData.put("TaxAddress", lcGrpInfoSSRS.GetText(1,75));//税务登记地址 + objectOneData.put("TaxPhone", lcGrpInfoSSRS.GetText(1,76));//税务登记电话 + objectOneData.put("TaxBankName", lcGrpInfoSSRS.GetText(1,77));//税务等户开户行 + + + + /******************************************************** + * 健康告知 + *******************************************************/ + this.getCustomerImpart(objectOneData); + + + /******************************************************** * 投保险种信息 @@ -1387,4 +1442,194 @@ public class LCContPrtPrintBL implements BusinessService { return mErrors; } + + public void getGrpType (String grpType,JSONObject objectOneData) { + objectOneData.put("Z1", "£"); + objectOneData.put("Z2", "£"); + objectOneData.put("Z3", "£"); + objectOneData.put("Z4", "£"); + objectOneData.put("Z5", "£"); + objectOneData.put("Z6", "£"); + objectOneData.put("Z7", "£"); + objectOneData.put("Z8", "£"); + objectOneData.put("Z9", "£"); + switch (grpType) { + case "01":objectOneData.put("Z1", "R"); + case "02":objectOneData.put("Z2", "R"); + case "03":objectOneData.put("Z3", "R"); + case "04":objectOneData.put("Z4", "R"); + case "05":objectOneData.put("Z5", "R"); + case "06":objectOneData.put("Z6", "R"); + case "07":objectOneData.put("Z7", "R"); + case "08":objectOneData.put("Z8", "R"); + case "09":objectOneData.put("Z9", "R"); + break; + } + } + + + + public void getGrpNature (String grpNature,JSONObject objectOneData) { + objectOneData.put("D1", "£"); + objectOneData.put("D2", "£"); + objectOneData.put("D3", "£"); + objectOneData.put("D4", "£"); + objectOneData.put("D5", "£"); + objectOneData.put("D6", "£"); + objectOneData.put("D7", "£"); + objectOneData.put("D8", "£"); + objectOneData.put("D9", "£"); + switch (grpNature) { + case "02":objectOneData.put("D2", "R"); + case "03":objectOneData.put("D1", "R"); + case "04":objectOneData.put("D7", "R"); + case "05":objectOneData.put("D4", "R"); + case "06":objectOneData.put("D6", "R"); + case "07":objectOneData.put("D5", "R"); + case "08":objectOneData.put("D3", "R"); + case "09":objectOneData.put("D8", "R"); + case "10":objectOneData.put("D9", "R"); + objectOneData.put("grpNature", grpNature); + break; + } + } + + public void getIDType (String IdType,JSONObject objectOneData) { + objectOneData.put("A1", "£"); + objectOneData.put("A2", "£"); + objectOneData.put("A3", "£"); + objectOneData.put("A4", "£"); + objectOneData.put("A5", "£"); + switch (IdType) { + case "1":objectOneData.put("A2", "R"); + case "6":objectOneData.put("A1", "R"); + case "9":objectOneData.put("A5", "R"); + objectOneData.put("IdType", IdType); + break; + } + } + + public void getCustomerImpart (JSONObject objectOneData) { + SSRS lcCustomerList = lcCustomerImpartSQL.selectCustomerImpartByGrpContNo(mGrpPropNo); + objectOneData.put("H1","£"); + objectOneData.put("H2","£"); + objectOneData.put("H3","£"); + objectOneData.put("H4","£"); + objectOneData.put("H5","£"); + objectOneData.put("H6","£"); + objectOneData.put("H7","£"); + objectOneData.put("H8","£"); + objectOneData.put("H9","£"); + objectOneData.put("H10","£"); + objectOneData.put("H11","£"); + objectOneData.put("H12","£"); + objectOneData.put("H13","£"); + objectOneData.put("H14","£"); + objectOneData.put("H15","£"); + objectOneData.put("H16","£"); + objectOneData.put("H17","£"); + objectOneData.put("H18","£"); + objectOneData.put("H19","£"); + objectOneData.put("H20","£"); + + if (lcCustomerList.getMaxRow() > 0) { + String impartParamModle = lcCustomerList.GetText(1, 4); + if (StringUtils.isNotBlank(impartParamModle)) { + String[] split = impartParamModle.split("/"); + + if (StringUtils.isNotEmpty(split[0])){ + objectOneData.put("HM1", split[0]); + } + if (StringUtils.isNotEmpty(split[1])){ + objectOneData.put("HM2", split[1]); + } + + objectOneData.put("H19", "R"); + } + + + String impartParamModl1 = lcCustomerList.GetText(2, 4); + + if (StringUtils.isNotBlank(impartParamModl1)) { + + String[] split = impartParamModl1.split("/"); + + if (StringUtils.isNotEmpty(split[0])){ + objectOneData.put("HY", split[0]); + } + if (StringUtils.isNotEmpty(split[1])){ + objectOneData.put("HP1", split[1]); + } + + if (StringUtils.isNotEmpty(split[2])){ + objectOneData.put("HP2", split[2]); + } + + if (StringUtils.isNotEmpty(split[3])){ + objectOneData.put("HP3", split[3]); + } + + if (StringUtils.isNotEmpty(split[4])){ + objectOneData.put("HP4", split[4]); + } + objectOneData.put("H1", "R"); + } + + + String impartParamModl2 = lcCustomerList.GetText(3, 4); + if (StringUtils.isNotBlank(impartParamModl2) && impartParamModl2.equals("是")) { + objectOneData.put("H3", "R"); + } + + String impartParamModl3 = lcCustomerList.GetText(4, 4); + if (StringUtils.isNotBlank(impartParamModl3) && impartParamModl3.equals("是")) { + objectOneData.put("H5", "R"); + } + String impartParamModl4 = lcCustomerList.GetText(5, 4); + if (StringUtils.isNotBlank(impartParamModl4) && impartParamModl4.equals("是")) { + objectOneData.put("H7", "R"); + } + String impartParamModl5 = lcCustomerList.GetText(6, 4); + if (StringUtils.isNotBlank(impartParamModl5) && impartParamModl5.equals("是")) { + objectOneData.put("H9", "R"); + } + String impartParamModl6 = lcCustomerList.GetText(7, 4); + if (StringUtils.isNotBlank(impartParamModl6) && impartParamModl6.equals("是")) { + objectOneData.put("H11", "R"); + } + String impartParamModl7 = lcCustomerList.GetText(8, 4); + if (StringUtils.isNotBlank(impartParamModl7) && impartParamModl7.equals("是")) { + objectOneData.put("H13", "R"); + } + String impartParamModl8 = lcCustomerList.GetText(9, 4); + if (StringUtils.isNotBlank(impartParamModl8) && impartParamModl8.equals("是")) { + objectOneData.put("H15", "R"); + } + String impartParamModl9 = lcCustomerList.GetText(10, 4); + if (StringUtils.isNotBlank(impartParamModl9) && impartParamModl9.equals("是")) { + objectOneData.put("H17", "R"); + } + } + } + public void getBussArea(JSONObject objectOneData,String areaCode){ + + objectOneData.put("B1", "£"); + objectOneData.put("B2", "£"); + objectOneData.put("B3", "£"); + + if (StringUtils.isNotBlank(areaCode)) { + switch (areaCode) { + case "01": objectOneData.put("B1","R"); + case "02": objectOneData.put("B2","R"); + case "03": objectOneData.put("B3","R"); + break; + } + + } + + + } + + + } diff --git a/lis-module-grp-nb-service/src/main/java/com/sinosoft/lis/sql/g_app/LCContPrtPrintBLSQL.java b/lis-module-grp-nb-service/src/main/java/com/sinosoft/lis/sql/g_app/LCContPrtPrintBLSQL.java index 756fa309..8f36d278 100644 --- a/lis-module-grp-nb-service/src/main/java/com/sinosoft/lis/sql/g_app/LCContPrtPrintBLSQL.java +++ b/lis-module-grp-nb-service/src/main/java/com/sinosoft/lis/sql/g_app/LCContPrtPrintBLSQL.java @@ -70,8 +70,8 @@ public interface LCContPrtPrintBLSQL { ), a.prem, a.GrpSpec, - a.Corporation, - a.Corporation, + b.Corporation, + b.Corporation, (select Name from ldcom where comcode=a.ManageCom), (select codename from ldcode ld where codetype='opersource' and code=e.opersource), (select codename from ldcode ld where codetype='opersourcetype' and code=e.OperSourceType), @@ -110,13 +110,25 @@ public interface LCContPrtPrintBLSQL { b.ControlTRType, b.InstitutionsCategory, b.Satrap, - a.OutPayFlag + a.bussarea, + a.MainBussiness, + b.corID, + TO_CHAR(b.CorIDExpiryDate, 'YYYY"年"FMmm"月"FMDD"日"')AS CorIDExpiryDate, + a.Corporation1, + a.CorID1, + TO_CHAR(a.CorIDExpiryDate1, 'YYYY"年"FMmm"月"FMDD"日"')AS CorIDExpiryDate1, + d.IDNo, + f.TaxpayerNo, + f.Address, + f.Phone, + f.BankName from lcgrpcont a JOIN LCGrpAppnt b ON a.GrpContNo = b.GrpContNo JOIN LCGrpContactInfo c ON a.GrpContNo = c.GrpContNo JOIN LCGrpLink d ON a.GrpContNo = d.GrpContNo JOIN LCCustomerAccount lcc ON lcc.PolicyNo = a.GrpContNo JOIN lcgrpcontexpand e ON a.GrpContNo = e.GrpContNo + JOIN LCGrpInvoiceDetail f ON a.GrpContNo = f.GrpContNo WHERE d.LinkManFlag='00' and a.GrpContNo ='?mGrpPropNo?' """) SSRS getLCGrpInfoByGrpPropNo(@Param("mGrpPropNo") String mGrpPropNo);