/** * 添加通讯费支付信息 * * @return String */ public String comsPayCommunicationAdd() { Authuser user = (Authuser) request.getSession().getAttribute("currentUser"); /** 得到支付期间 */ Date startDate = DateConvert.Convert(startCostDate + "-01"); Date endDate = DateConvert.Convert(endCostDate + "-01"); int months = AppCommonVarRegiter.countMonthSpace(startDate, endDate); double realPayCost = 0; // 如果有多个月份需要平分支付金额 if (payTotalMoney != 0 && months != 0 && (sTermNo != null && sTermNo.length > 0)) { realPayCost = payTotalMoney / (months * sTermNo.length); } String batchNum = UUID.randomUUID().toString(); List<ComsPayCommunication> addList = new ArrayList<ComsPayCommunication>(); if (sTermNo != null && sTermNo.length > 0) { for (int j = 0; j < sTermNo.length; j++) { String termBatchNum = UUID.randomUUID().toString(); for (int i = 0; i < months; i++) { String date = DateConvert.getNextMonth(startDate, i, "yyyyMM"); ComsPayCommunication ComsPayCommunication = new ComsPayCommunication(); ComsPayCommunication.setReimbursedNum(reimbursedNum); ComsPayCommunication.setReimbursedMoney(reimbursedMoney); ComsPayCommunication.setReimbursedType(reimbursedType); ComsPayCommunication.setInvoiceCode(invoiceCode); ComsPayCommunication.setTermid(Integer.parseInt(sTermInfoId[j].trim())); ComsPayCommunication.setTermno(sTermNo[j].trim()); ComsPayCommunication.setTermseq(sTermSeq[j].trim()); ComsPayCommunication.setAddress(sAddress[j].trim()); ComsPayCommunication.setItemUid(sItemUid[j].trim()); // 从终端表取得项目编号 ComsPayCommunication.setOrgInnerCode01(sOrgInnerCode01[j]); ComsPayCommunication.setOrgInnerCode02(sOrgInnerCode02[j]); ComsPayCommunication.setOrgInnerCode03(sOrgInnerCode03[j]); ComsPayCommunication.setRemark(remark); ComsPayCommunication.setCostTypeCode("100016"); ComsPayCommunication.setPayState("1"); ComsPayCommunication.setTransactionPerson(tsPerson); ComsPayCommunication.setUserid(user.getUserid()); ComsPayCommunication.setSubmitDate(DateConvert.Date2String(new java.util.Date())); ComsPayCommunication.setCostDate(date); ComsPayCommunication.setRealCost(realPayCost); ComsPayCommunication.setPayTotalMoney(payTotalMoney); ComsPayCommunication.setBatchNum(batchNum); ComsPayCommunication.setTermBatchNum(termBatchNum); addList.add(ComsPayCommunication); } } } // 添加通讯费支付 String errMessage = comsPayCommunicationService.batchSave(addList); // 加上审计日志 if (errMessage != null) { this.setErrMessage(errMessage); return INPUT; } else { String msg = "添加通讯费支付终端号为[" + termnos + "],终端序列号为[" + termSeqs + "]," + "支付成本期从[" + startCostDate + "]到[" + endCostDate + "] 成功"; new LogAssistant( user.getUsername().trim(), request.getRemoteAddr() + ":" + TrackOpterationEnum.ADD.getOperation(), msg) .logUserOpt(); this.message = "添加通讯费支付登记成功!"; } return SUCCESS; }