📄 blinvest.java
字号:
prpDcustomerIdvSchema2.setValidStatus("1");
prpDcustomerIdvSchema2.setLowerViewFlag("0");
prpDcustomerIdvSchema2.setOperatorCode(bankInterFace_DetailDto.getHandlerCode());
//Add by hezhuan 20080122 begin reason:投联生成保单main表inputdate字段取bankInterFace_Detail表uploaddate字段的值
prpDcustomerIdvSchema2.setInputDate(strUploadDate);
//Add by hezhuan 20080122 end
prpDcustomerIdvSchema2.setUpdaterCode(bankInterFace_DetailDto.getHandlerCode());
prpDcustomerIdvSchema2.setUpdateDate(strCurrentDate);
prpDcustomerIdvSchema2.setComcode(bankInterFace_DetailDto.getComCode());
blPrpDcustomerIdv.setArr(prpDcustomerIdvSchema2);
}
return blPrpDcustomerIdv;
}
/**
* @desc 投联险由接口表数据生成保单数据:生成投保单对象BLProposal
* @param dbPool
* @param arrCustomerCode
* @param bankInterFace_DetailDto
* @return blProposal
* @throws Exception
*/
public BLProposal generateObjectOfProposal(DbPool dbPool,String[] arrCustomerCode, BankInterFace_DetailDto bankInterFace_DetailDto, String vscode) throws Exception {
DBManager dbManager = dbPool.getDBManager(SysConfig.CONST_DDCCDATASOURCE);
BLProposal blProposal = new BLProposal();
BLPrpTmain blPrpTmain = null;
BLPrpTinsured blPrpTinsured = null;
BLPrpTaddress blPrpTaddress = null;
BLPrpTmainInvest blPrpTmainInvest = null;
BLPrpTitemKind blPrpTitemKind = null;
BLPrpTfee blPrpTfee = null;
BLPrpTplan blPrpTplan = null;
DateTime currentDate = new DateTime().current();
String strCurrentDate = "";
String strCondition = "";
strCurrentDate = new Integer(currentDate.getYear()).toString() + "-"
+ new Integer(currentDate.getMonth()).toString() + "-"
+ new Integer(currentDate.getDay()).toString();
//获取投连险相关配置
BLPrpDbankInvestAction blPrpDbankInvestAction = new BLPrpDbankInvestAction();
PrpDbankInvestDto prpDbankInvestDto = new PrpDbankInvestDto();
strCondition = " RiskCode='" + bankInterFace_DetailDto.getRiskCode() + "'"
//begin add by zhouming 20070830 comCode=bankInterFace_DetailDto.getComCode()
+ " AND ComCode='" + bankInterFace_DetailDto.getHandler1Code() + "'"
//end add by zhouming 20070830
+ " AND StartDate<='" + strCurrentDate + "'"
+ " AND EndDate>='" + strCurrentDate + "'"
+ " AND InureFlag='1'"
+ " ORDER BY StartDate DESC";
ArrayList bankInvestDtoList = (ArrayList)blPrpDbankInvestAction.findByConditions(dbManager, strCondition);
if(bankInvestDtoList.size() > 0) {
prpDbankInvestDto = (PrpDbankInvestDto)bankInvestDtoList.get(0);
}
//获取银行利率及浮动收益率
BLPrpDbankRateAction blPrpDbankRateAction = new BLPrpDbankRateAction();
BLPrpDfloatYieldAction blPrpDfloatYieldAction = new BLPrpDfloatYieldAction();
PrpDbankRateDto prpDbankRateDto = new PrpDbankRateDto();
PrpDfloatYieldDto prpDfloatYieldDto = new PrpDfloatYieldDto();
double dblInterestRate = 0; //收益率=银行利率(税后)+浮动收益率
strCondition = " Currency='" + bankInterFace_DetailDto.getCurrency() + "'"
+ " AND SavePeriod='" + prpDbankInvestDto.getPeriod()+"'"
+ " AND ValidDate<='" + strCurrentDate + "'"
+ " AND ValidStatus='1'"
+ " ORDER BY ValidDate DESC";
ArrayList bankRateDtoList = (ArrayList)blPrpDbankRateAction.findByConditions(dbManager,strCondition);
if(bankRateDtoList.size() > 0) {
prpDbankRateDto = (PrpDbankRateDto)bankRateDtoList.get(0);
}
strCondition = " RiskCode='" + bankInterFace_DetailDto.getRiskCode() + "'"
+ " AND Currency='" + bankInterFace_DetailDto.getCurrency() + "'"
+ " AND ValidDate<='" + strCurrentDate + "'"
+ " AND ValidStatus='1'"
+ " ORDER BY ValidDate DESC";
ArrayList floatYieldDtoList = (ArrayList)blPrpDfloatYieldAction.findByConditions(dbManager,strCondition);
if(floatYieldDtoList.size() > 0) {
prpDfloatYieldDto = (PrpDfloatYieldDto)floatYieldDtoList.get(0);
}
dblInterestRate = prpDbankRateDto.getBankRate() + prpDfloatYieldDto.getFloatRate();
//获取险别信息
BLPrpDkindAction blPrpDkindAction = new BLPrpDkindAction();
PrpDkindDto prpDkindDto = new PrpDkindDto();
strCondition = " RiskCode='"+ bankInterFace_DetailDto.getRiskCode() + "'"
+ " AND KindCode='001'";
prpDkindDto = blPrpDkindAction.findByPrimaryKey(dbManager, bankInterFace_DetailDto.getRiskCode(), "001");
blPrpTmain = generateObjectOfTmain(arrCustomerCode, bankInterFace_DetailDto, prpDbankInvestDto,vscode); //传入配置表的信息
blPrpTinsured = generateObjectOfTinsured(arrCustomerCode, bankInterFace_DetailDto);
blPrpTaddress = generateObjectOfTaddress(bankInterFace_DetailDto);
blPrpTmainInvest = generateObjectOfTmainInvest(bankInterFace_DetailDto, prpDbankInvestDto, dblInterestRate); //传入配置表的信息
blPrpTitemKind = generateObjectOfTitemKind(bankInterFace_DetailDto, prpDbankInvestDto, prpDkindDto);
blPrpTfee = generateObjectOfTfee(bankInterFace_DetailDto, prpDbankInvestDto); //传入配置表的信息
//modify begin by hezhuan at 20071204 reason:Tplan单份保费应该和Tfee一样从配置表prpDbankInvest中取而不是写死6块钱
blPrpTplan = generateObjectOfTplanNew(bankInterFace_DetailDto,prpDbankInvestDto);
//modify end by hezhuan at 20071204
blProposal.setBLPrpTmain(blPrpTmain);
blProposal.setBLPrpTinsured(blPrpTinsured);
blProposal.setBLPrpTaddress(blPrpTaddress);
blProposal.setBLPrpTmainInvest(blPrpTmainInvest);
blProposal.setBLPrpTitemKind(blPrpTitemKind);
blProposal.setBLPrpTfee(blPrpTfee);
blProposal.setBLPrpTplan(blPrpTplan);
return blProposal;
}
/**
* @desc 投联险由接口表数据生成保单数据:生成投保单主信息对象BLPrpTmain
* @param arrCustomerCode
* @param bankInterFace_DetailDto
* @param prpDbankInvestDto
* @return blPrpTmain
* @throws Exception
*/
public BLPrpTmain generateObjectOfTmain(String[] arrCustomerCode, BankInterFace_DetailDto bankInterFace_DetailDto, PrpDbankInvestDto prpDbankInvestDto, String visacode) throws Exception {
BLPrpDagreementFacade blPrpDagreementFacade = new BLPrpDagreementFacade();
PrpDagreementDto prpDagreementDto = null;
BLPrpTmain blPrpTmain = new BLPrpTmain();
PrpTmainSchema prpTmainSchema = new PrpTmainSchema();
Collection prpDagreementDtoList = null;
DateTime currentDate = new DateTime().current();
//modify begin by hezhuan at 20071203 生成保单时,获取代理人代码agentcode不再从bankinterface_detail表中的bfbankcode取,而是取bankcode;
String strBankCode = "";
//modify end by hezhuan at 20071203
String strAgreementNo = "";
String strStartDatePrpT = "";
String strEndDatePrpT = "";
//modify begin by hezhuan at 20080122 reason:投联生成保单main表inputdate字段取bankInterFace_Detail表uploaddate字段的值
String strUploadDate = "";
//modify end by hezhuan at 20080122
String strCurrentDate = "";
String strUnderWriteEndDate = "";
//modify begin by hezhuan at 20080428 reason:根据bankInterFace_Detail表ISEIESFLAG字段区分富安居和银保数据来生成Main表数据
String strIsEiesFlag = "";
//modify end by hezhuan at 20080428
int intYear = 0;
int intMonth = 0;
int intDay = 0;
// 1、准备数据
//modify begin by hezhuan at 20071203 生成保单时,获取代理人代码agentcode不再从bankinterface_detail表中的bfbankcode取,而是取bankcode;
strBankCode = bankInterFace_DetailDto.getBankcode();
prpDagreementDtoList = blPrpDagreementFacade.findByConditions("AgentCode='" + strBankCode + "'");
//modify end by hezhuan at 20071203
//modify begin by hezhuan at 20080428 reason:根据bankInterFace_Detail表ISEIESFLAG字段区分富安居和银保数据来生成Main表数据
strIsEiesFlag = bankInterFace_DetailDto.getIseiesFlag();
//modify end by hezhuan at 20080428
for(Iterator prpDagreementDtoListTmp = prpDagreementDtoList.iterator(); prpDagreementDtoListTmp.hasNext();) {
prpDagreementDto = (PrpDagreementDto)prpDagreementDtoListTmp.next();
strAgreementNo = prpDagreementDto.getAgreementNo();
break;
}
intYear = bankInterFace_DetailDto.getStartDate().getYear();
intMonth = bankInterFace_DetailDto.getStartDate().getMonth();
intDay = bankInterFace_DetailDto.getStartDate().getDay();
strStartDatePrpT = new Integer(intYear).toString() + "-"
+ new Integer(intMonth).toString() + "-"
+ new Integer(intDay).toString();
intYear = bankInterFace_DetailDto.getEndDate().getYear();
intMonth = bankInterFace_DetailDto.getEndDate().getMonth();
intDay = bankInterFace_DetailDto.getEndDate().getDay();
strEndDatePrpT = new Integer(intYear).toString() + "-"
+ new Integer(intMonth).toString() + "-"
+ new Integer(intDay).toString();
//Add by hezhuan 20080122 begin reason:投联生成保单main表inputdate字段取bankInterFace_Detail表uploaddate字段的值
intYear = bankInterFace_DetailDto.getUploadDate().getYear();
intMonth = bankInterFace_DetailDto.getUploadDate().getMonth();
intDay = bankInterFace_DetailDto.getUploadDate().getDay();
strUploadDate = new Integer(intYear).toString() + "-"
+ new Integer(intMonth).toString() + "-"
+ new Integer(intDay).toString();
//Add by hezhuan 20080122 end
intYear = currentDate.getYear();
intMonth = currentDate.getMonth();
intDay = currentDate.getDay();
strCurrentDate = new Integer(intYear).toString() + "-"
+ new Integer(intMonth).toString() + "-"
+ new Integer(intDay).toString();
intYear = bankInterFace_DetailDto.getInvestDate().getYear();
intMonth = bankInterFace_DetailDto.getInvestDate().getMonth();
intDay = bankInterFace_DetailDto.getInvestDate().getDay();
strUnderWriteEndDate = new Integer(intYear).toString() + "-"
+ new Integer(intMonth).toString() + "-"
+ new Integer(intDay).toString();
// 2、给PrpTmainSchema赋值
prpTmainSchema.setProposalNo(bankInterFace_DetailDto.getProposalNo());
prpTmainSchema.setClassCode(bankInterFace_DetailDto.getClassCode());
prpTmainSchema.setRiskCode(bankInterFace_DetailDto.getRiskCode());
prpTmainSchema.setPolicySort("2"); // 暂时->普通
// TODO
prpTmainSchema.setBusinessNature("9"); // 原存储过程中:专业代理->兼业代理,现在修改为:专业代理->银行代理
prpTmainSchema.setLanguage("C");
prpTmainSchema.setPolicyType("01"); // 个人
prpTmainSchema.setAppliCode(arrCustomerCode[0]);
prpTmainSchema.setAppliName(bankInterFace_DetailDto.getAppliName());
prpTmainSchema.setAppliAddress(bankInterFace_DetailDto.getAddress());
prpTmainSchema.setInsuredCode(arrCustomerCode[1]);
prpTmainSchema.setInsuredName(bankInterFace_DetailDto.getInsuredName());
prpTmainSchema.setInsuredAddress(bankInterFace_DetailDto.getInsuredAdress());
prpTmainSchema.setOperateDate(bankInterFace_DetailDto.getInvestDate().toString());
prpTmainSchema.setStartDate(strStartDatePrpT); //原存储过程中:起保日期为BankInterFace_Detail中的起保日期+1,现在修改为不用+1
prpTmainSchema.setStartHour("0");
prpTmainSchema.setEndDate(strEndDatePrpT);
prpTmainSchema.setEndHour("24");
prpTmainSchema.setSignDate(bankInterFace_DetailDto.getStartDate().addDay(-1).toString()); //根据20070404曾昭鸿邮件意见,签单日期改为起保日期-1天
prpTmainSchema.setDisRate(new Double(bankInterFace_DetailDto.getPoundageRate()).toString());
prpTmainSchema.setDiscount("100");
prpTmainSchema.setCurrency(bankInterFace_DetailDto.getCurrency());
prpTmainSchema.setSumValue("0");
prpTmainSchema.setSumAmount(String.valueOf(bankInterFace_DetailDto.getInvestCount() * prpDbankInvestDto.getUnitAmount()));
prpTmainSchema.setSumDiscount("0");
prpTmainSchema.setSumPremium(String.valueOf(bankInterFace_DetailDto.getInvestCount() * prpDbankInvestDto.getUnitPremium()));
prpTmainSchema.setSumSubPrem("0");
prpTmainSchema.setAutoTransRenewFlag("2");
prpTmainSchema.setPayTimes("1");
prpTmainSchema.setEndorseTimes("0");
prpTmainSchema.setClaimTimes("0");
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -