diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/payment/controller/PayPaymentRecordController.java b/jero-boot-incoming-payment/src/main/java/com/jero/payment/controller/PayPaymentRecordController.java index 7968b723..a5f8f501 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/payment/controller/PayPaymentRecordController.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/payment/controller/PayPaymentRecordController.java @@ -4,6 +4,7 @@ import java.math.BigDecimal; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Arrays; +import java.util.Date; import java.util.List; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; @@ -99,44 +100,33 @@ public class PayPaymentRecordController extends JeroController standardsAddAR(@RequestParam(name="amountReceived")String amountReceived, - @RequestParam(name="paymentDate")String paymentDate, @RequestParam(name="tbPaymentId")String tbPaymentId, @RequestBody MemberInfo memberInfo, + @RequestParam(name="checkResult")Boolean checkResult, @RequestParam(name="remark",required = false)String remark) { - PayPaymentRecord payPaymentRecord=new PayPaymentRecord(); + PayPaymentRecord payPaymentRecord = new PayPaymentRecord(); payPaymentRecord.setAmountReceived(new BigDecimal(amountReceived)); - SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); - try { - payPaymentRecord.setPaymentDate(simpleDateFormat.parse(paymentDate)); - } catch (ParseException e) { - e.printStackTrace(); - } + payPaymentRecord.setPaymentDate(new Date()); payPaymentRecord.setRemark(remark); - return payPaymentRecordService.standardsAddAR(tbPaymentId,payPaymentRecord,memberInfo); + + return payPaymentRecordService.standardsAddAR(tbPaymentId, payPaymentRecord, memberInfo, checkResult); } /** - * 标协会议添加来款 + * 标协证书添加来款 * @return */ - @ApiOperation(value="标协会议添加来款") - @PostMapping(value = "/standardsMeetingAddAR") - public Result standardsMeetingAddAR(@RequestParam(name="amountReceived")String amountReceived, - @RequestParam(name="paymentDate")String paymentDate, + @ApiOperation(value="标协证书添加来款") + @PostMapping(value = "/standardsCertificateAddAR") + public Result standardsCertificateAddAR(@RequestParam(name="amountReceived")String amountReceived, @RequestParam(name="tbPaymentId")String tbPaymentId, - @RequestBody MemberInfo memberInfo, + @RequestParam(name="checkResult")Boolean checkResult, @RequestParam(name="remark",required = false)String remark) { - //TODO - PayPaymentRecord payPaymentRecord=new PayPaymentRecord(); + PayPaymentRecord payPaymentRecord = new PayPaymentRecord(); payPaymentRecord.setAmountReceived(new BigDecimal(amountReceived)); - SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); - try { - payPaymentRecord.setPaymentDate(simpleDateFormat.parse(paymentDate)); - } catch (ParseException e) { - e.printStackTrace(); - } - payPaymentRecord.setRemark(remark); - return payPaymentRecordService.standardsAddAR(tbPaymentId,payPaymentRecord,memberInfo); + payPaymentRecord.setPaymentDate(new Date()); + payPaymentRecord.setReviewInstructions(remark); + return payPaymentRecordService.standardsCertificateAddAR(tbPaymentId, payPaymentRecord, checkResult); } /** diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/IPayPaymentRecordService.java b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/IPayPaymentRecordService.java index c86d4272..cc5ed3e0 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/IPayPaymentRecordService.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/IPayPaymentRecordService.java @@ -53,8 +53,15 @@ public interface IPayPaymentRecordService extends IService { * 标协会员添加来款 * @param payPaymentRecord * @param memberInfo + * @param checkResult */ - Result standardsAddAR(String tbPaymentId, PayPaymentRecord payPaymentRecord, MemberInfo memberInfo); + Result standardsAddAR(String tbPaymentId, PayPaymentRecord payPaymentRecord, MemberInfo memberInfo, Boolean checkResult); + /** + * 标协证书添加来款 + * @param payPaymentRecord + * @param checkResult + */ + Result standardsCertificateAddAR(String tbPaymentId, PayPaymentRecord payPaymentRecord, Boolean checkResult); void updateStandards(String tbPaymentId, MemberInfo memberInfo); @@ -112,4 +119,5 @@ public interface IPayPaymentRecordService extends IService { Integer getMonthProjectCount(String time); + } diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentRecordServiceImpl.java b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentRecordServiceImpl.java index cecfb3c5..1b4cf433 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentRecordServiceImpl.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/payment/service/impl/PayPaymentRecordServiceImpl.java @@ -17,9 +17,7 @@ import com.jero.common.system.api.ISysBaseAPI; import com.jero.common.system.vo.LoginUser; import com.jero.common.util.PasswordUtil; import com.jero.common.util.oConvertUtils; -import com.jero.company.entity.PayCompanyManagement; import com.jero.company.entity.PayContactsManagement; -import com.jero.company.service.IPayCompanyManagementService; import com.jero.company.service.IPayContactsManagementService; import com.jero.contract.common.PayIncomeContractCommon; import com.jero.meeting.common.MeetingSubitemCommon; @@ -39,6 +37,7 @@ import com.jero.payment.entity.PayPaymentRecord; import com.jero.payment.mapper.PayPaymentRecordMapper; import com.jero.payment.service.IPayPaymentRecordService; import com.jero.payment.vo.TbCheckVo; +import com.jero.project.common.PayProjectCommon; import com.jero.project.entity.PayCommonProject; import com.jero.project.entity.PayWorkingGroup; import com.jero.project.entity.PayWorkingGroupSubItem; @@ -48,9 +47,7 @@ import com.jero.common.util.AuthenticationUtils; import com.jero.project.service.IPayWorkingGroupService; import com.jero.project.vo.PayCommonProjectOutput; import com.jero.standards.memberinfo.entity.MemberInfo; -import com.jero.temporary.entity.PayCompanyManagementTemporary; import com.jero.temporary.entity.PayContactsManagementTemporary; -import com.jero.temporary.service.IPayCompanyManagementTemporaryService; import com.jero.temporary.service.IPayContactsManagementTemporaryService; import org.apache.commons.beanutils.PropertyUtils; import org.apache.commons.lang3.StringUtils; @@ -59,10 +56,8 @@ import org.jeecgframework.poi.excel.def.NormalExcelConstants; import org.jeecgframework.poi.excel.entity.ExportParams; import org.jeecgframework.poi.excel.entity.enmus.ExcelType; import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; -import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import org.springframework.web.servlet.ModelAndView; @@ -151,7 +146,7 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl0){ - JSONObject jsonObject = AuthenticationUtils.postResult("/paymentInfo/incomingPaymentCheck", null, typr5List); + JSONObject jsonObject = AuthenticationUtils.postResult("/paymentInfo/incomingPaymentCheckMember", null, typr5List); String memberNo = jsonObject.getString("memberNo"); Integer memberType = jsonObject.getInteger("memberType"); Integer memberStatus = jsonObject.getInteger("memberStatus"); @@ -166,7 +161,7 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl0){ - JSONObject jsonObject = AuthenticationUtils.postResult("/certificatePaymentInfo/incomingPaymentCheck", null, typr5List); + JSONObject jsonObject = AuthenticationUtils.postResult("/certificatePaymentInfo/incomingPaymentCheckCertificate", null, typr5List); } } /** @@ -439,6 +434,7 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl standardsAddAR(String tbPaymentId, PayPaymentRecord payPaymentRecord, MemberInfo memberInfo){ + public Result standardsAddAR(String tbPaymentId, PayPaymentRecord payPaymentRecord, MemberInfo memberInfo, Boolean checkResult){ BigDecimal receivableAmount; Boolean isAdd; @@ -470,29 +467,72 @@ public class PayPaymentRecordServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); wrapper.eq(TbMemberProjectSubitem::getTbPaymentId,tbPaymentId); TbMemberProjectSubitem tbMember = tbMemberProjectSubitemMapper.selectOne(wrapper); + if (checkResult){ + receivableAmount = tbMember.getAmountReceivable();//应收 + paidAmount=tbMember.getPaidAmount();//实收 - receivableAmount = tbMember.getAmountReceivable();//应收 - paidAmount=tbMember.getPaidAmount();//实收 - - newPaidAmount =addPaidAmount(paidAmount,payPaymentRecord.getAmountReceived());//累加实收 - inAccount = getInAccount(receivableAmount, newPaidAmount);//到账状态 - - //更新主列表 - tbMember.setPaidAmount(newPaidAmount); - tbMember.setInAccount(inAccount); - tbMember.setMemberNo(memberInfo.getMemberNo()); - tbMember.setMemberType(memberInfo.getMemberType()); - tbMember.setMemberStatus(memberInfo.getMemberStatus()); - tbMember.setPaymentStatus(PaymentStatusEnum.COMPLETED.getCode()); - tbMemberProjectSubitemMapper.updateById(tbMember); + newPaidAmount =addPaidAmount(paidAmount,payPaymentRecord.getAmountReceived());//累加实收 + inAccount = getInAccount(receivableAmount, newPaidAmount);//到账状态 + //更新主列表 + tbMember.setPaidAmount(newPaidAmount); + tbMember.setInAccount(inAccount); + tbMember.setMemberNo(memberInfo.getMemberNo()); + tbMember.setMemberType(memberInfo.getMemberType()); + tbMember.setMemberStatus(memberInfo.getMemberStatus()); + tbMemberProjectSubitemMapper.updateById(tbMember); + payPaymentRecord.setPaymentStatus(PaymentStatusEnum.COMPLETED.getCode()); + }else { + payPaymentRecord.setPaymentStatus(PaymentStatusEnum.REJECTED.getCode()); + } //插入来款记录表 + LoginUser sysUser = (LoginUser)SecurityUtils.getSubject().getPrincipal(); + payPaymentRecord.setReviewerId(sysUser.getId()); + payPaymentRecord.setReviewerName(sysUser.getRealname()); + payPaymentRecord.setReviewTime(new Date()); payPaymentRecord.setProjectId(tbMember.getId()); payPaymentRecord.setProjectType(Integer.valueOf(PayIncomeContractCommon.PROJECT_TYPE5)); payPaymentRecordMapper.insert(payPaymentRecord); return Result.OK("添加成功!"); } + @Override + public Result standardsCertificateAddAR(String tbPaymentId, PayPaymentRecord payPaymentRecord, Boolean checkResult) { + + BigDecimal receivableAmount; + Boolean isAdd; + BigDecimal newPaidAmount; + BigDecimal paidAmount; + Integer inAccount; + + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(TbCertificatePayment::getTbPaymentId,tbPaymentId); + TbCertificatePayment certificatePayment = certificatePaymentMapper.selectOne(wrapper); + if (checkResult){ + receivableAmount = certificatePayment.getAmountReceivable();//应收 + paidAmount=certificatePayment.getPaidAmount();//实收 + + newPaidAmount =addPaidAmount(paidAmount,payPaymentRecord.getAmountReceived());//累加实收 + inAccount = getInAccount(receivableAmount, newPaidAmount);//到账状态 + + //更新主列表 + certificatePayment.setPaidAmount(newPaidAmount); + certificatePayment.setInAccount(inAccount); + certificatePaymentMapper.updateById(certificatePayment); + }else { + payPaymentRecord.setPaymentStatus(PaymentStatusEnum.REJECTED.getCode()); + } + //插入来款记录表 + LoginUser sysUser = (LoginUser)SecurityUtils.getSubject().getPrincipal(); + payPaymentRecord.setReviewerId(sysUser.getId()); + payPaymentRecord.setReviewerName(sysUser.getRealname()); + payPaymentRecord.setReviewTime(new Date()); + payPaymentRecord.setProjectId(certificatePayment.getId()); + payPaymentRecord.setProjectType(Integer.valueOf(PayIncomeContractCommon.PROJECT_TYPE6)); + payPaymentRecordMapper.insert(payPaymentRecord); + return Result.OK("添加成功!"); + } + @Override public void updateStandards(String tbPaymentId, MemberInfo memberInfo) { LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); diff --git a/jero-boot-incoming-payment/src/main/java/com/jero/payment/vo/TbCheckVo.java b/jero-boot-incoming-payment/src/main/java/com/jero/payment/vo/TbCheckVo.java index 552ed759..d3067e3a 100644 --- a/jero-boot-incoming-payment/src/main/java/com/jero/payment/vo/TbCheckVo.java +++ b/jero-boot-incoming-payment/src/main/java/com/jero/payment/vo/TbCheckVo.java @@ -15,7 +15,7 @@ public class TbCheckVo { /** *审核结果(0 驳回,1 通过) */ - private Integer checkResult = 1; + private Integer checkResult; /** * 备注 */