diff --git a/src/main/java/com/qs/serve/modules/bms/controller/BmsChannelController.java b/src/main/java/com/qs/serve/modules/bms/controller/BmsChannelController.java index 7c9039ea..93fbf794 100644 --- a/src/main/java/com/qs/serve/modules/bms/controller/BmsChannelController.java +++ b/src/main/java/com/qs/serve/modules/bms/controller/BmsChannelController.java @@ -7,10 +7,7 @@ import com.qs.serve.common.model.dto.PageVo; import com.qs.serve.common.model.dto.R; import com.qs.serve.common.model.enums.BizType; import com.qs.serve.common.model.enums.SystemModule; -import com.qs.serve.common.util.CollectionUtil; -import com.qs.serve.common.util.CopierUtil; -import com.qs.serve.common.util.PageUtil; -import com.qs.serve.common.util.StringUtils; +import com.qs.serve.common.util.*; import com.qs.serve.modules.bms.common.MasterUserType; import com.qs.serve.modules.bms.controller.my.BmsChannelMyController; import com.qs.serve.modules.bms.entity.*; @@ -77,9 +74,20 @@ public class BmsChannelController { channelWrapper.le(BmsChannel::getCreateTime, param.getSelectEndTime()); channelWrapper.isNotNull(BmsChannel::getCreateBy); } + if(param.getExportNum()==null || param.getExportNum()==0){ + Assert.throwEx("请输入导出条数"); + } + if(CollectionUtil.isNotEmpty(param.getSelectIds())){ channelWrapper.in(BmsChannel::getId, param.getSelectIds()); } + + if(param.getExportNum()==null || param.getExportNum()==0){ + Assert.throwEx("请输入导出条数"); + }else{ + channelWrapper.last(" limit "+param.getExportNum()); + } + List list = bmsChannelService.list(channelWrapper); List channelIds = list.stream().map(a->a.getId()).collect(Collectors.toList()); diff --git a/src/main/java/com/qs/serve/modules/bms/controller/BmsChannelPointController.java b/src/main/java/com/qs/serve/modules/bms/controller/BmsChannelPointController.java index 989caaf2..962795f0 100644 --- a/src/main/java/com/qs/serve/modules/bms/controller/BmsChannelPointController.java +++ b/src/main/java/com/qs/serve/modules/bms/controller/BmsChannelPointController.java @@ -87,6 +87,13 @@ public class BmsChannelPointController { if(CollectionUtil.isNotEmpty(param.getSelectIds())){ lqw.in(BmsChannelPoint::getId, param.getSelectIds()); } + + if(param.getExportNum()==null || param.getExportNum()==0){ + Assert.throwEx("请输入导出条数"); + }else{ + channelWrapper.last(" limit "+param.getExportNum()); + } + List list = bmsChannelPointService.list(lqw); List bizRegionIds = new ArrayList<>(); bizRegionIds.addAll(list.stream().filter(a->a.getBizRegionId()!=null).map(a->a.getBizRegionId()).collect(Collectors.toList())); diff --git a/src/main/java/com/qs/serve/modules/bms/entity/BmsChannel.java b/src/main/java/com/qs/serve/modules/bms/entity/BmsChannel.java index 2893a66e..7676a937 100644 --- a/src/main/java/com/qs/serve/modules/bms/entity/BmsChannel.java +++ b/src/main/java/com/qs/serve/modules/bms/entity/BmsChannel.java @@ -125,5 +125,8 @@ public class BmsChannel implements Serializable { @TableField(exist = false) private String seachSupplierName; + + @TableField(exist = false) + private Integer exportNum; } diff --git a/src/main/java/com/qs/serve/modules/bms/entity/BmsChannelPoint.java b/src/main/java/com/qs/serve/modules/bms/entity/BmsChannelPoint.java index 7f19a0fd..c68c7ce1 100644 --- a/src/main/java/com/qs/serve/modules/bms/entity/BmsChannelPoint.java +++ b/src/main/java/com/qs/serve/modules/bms/entity/BmsChannelPoint.java @@ -217,5 +217,8 @@ public class BmsChannelPoint implements Serializable { @TableField(exist = false) private List supplierNames; + + @TableField(exist = false) + private Integer exportNum; } diff --git a/src/main/java/com/qs/serve/modules/third/entity/ProcessCreateCostApplyBo.java b/src/main/java/com/qs/serve/modules/third/entity/ProcessCreateCostApplyBo.java index 74208936..cffac9cb 100644 --- a/src/main/java/com/qs/serve/modules/third/entity/ProcessCreateCostApplyBo.java +++ b/src/main/java/com/qs/serve/modules/third/entity/ProcessCreateCostApplyBo.java @@ -1,9 +1,12 @@ package com.qs.serve.modules.third.entity; +import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; import javax.validation.constraints.NotNull; import java.math.BigDecimal; +import java.time.LocalDate; import java.util.List; /** @@ -54,4 +57,13 @@ public class ProcessCreateCostApplyBo { @NotNull(message = "存货编码 不能为空") private List goodsList; + @NotNull(message = "开始时间 不能为空") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") + private LocalDate startDate; + + @NotNull(message = "结束时间 不能为空") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") + private LocalDate endDate; } diff --git a/src/main/java/com/qs/serve/modules/third/service/PortalOfCostApplication.java b/src/main/java/com/qs/serve/modules/third/service/PortalOfCostApplication.java index 6b03e215..7c4bda50 100644 --- a/src/main/java/com/qs/serve/modules/third/service/PortalOfCostApplication.java +++ b/src/main/java/com/qs/serve/modules/third/service/PortalOfCostApplication.java @@ -587,6 +587,8 @@ public class PortalOfCostApplication { final BigDecimal OneHundred = new BigDecimal("100"); LocalDateTime nowTime = LocalDateTime.now(); LocalDate nowDate = LocalDate.now(); + LocalDate startDate = createBo.getStartDate(); + LocalDate endDate = createBo.getEndDate(); String erpCode = createBo.getErpCode(); Long supplierId = Long.parseLong(supplier.getId()); BigDecimal totalAmount = createBo.getTotalAmount(); @@ -628,10 +630,10 @@ public class PortalOfCostApplication { activity.setSupplierId(supplierId); activity.setSupplierName(supplier.getName()); activity.setSupplierCode(supplier.getCode()); - activity.setActStartDate(nowDate); - activity.setActEndDate(nowDate); - activity.setPreStartDate(nowDate); - activity.setPreEndDate(nowDate); + activity.setActStartDate(startDate); + activity.setActEndDate(endDate); + activity.setPreStartDate(startDate); + activity.setPreEndDate(endDate); activity.setPreCheckDate(nowDate); activity.setTotalAmount(totalAmount); activity.setUsedAmount(totalAmount); @@ -696,10 +698,10 @@ public class PortalOfCostApplication { centerGoods.setSubjectCode(subject.getSubjectCode()); centerGoods.setSubjectName(subject.getSubjectName()); //设置活动时间 - centerGoods.setActEndDate(nowDate); - centerGoods.setActStartDate(nowDate); - centerGoods.setPreEndDate(nowDate); - centerGoods.setPreStartDate(nowDate); + centerGoods.setActEndDate(endDate); + centerGoods.setActStartDate(startDate); + centerGoods.setPreEndDate(endDate); + centerGoods.setPreStartDate(startDate); centerGoods.setPreCheckDate(nowDate); //设置目标 centerGoods.setTargetId(activityGoods.getTargetId()); @@ -784,7 +786,8 @@ public class PortalOfCostApplication { //保存核销申请 VtbVerification verification = new VtbVerification(); - verification.setVerificationCode("MHX"+ CodeGenUtil.generate(CodeGenUtil.SourceKey.Verification)); +// verification.setVerificationCode("MHX"+ CodeGenUtil.generate(CodeGenUtil.SourceKey.Verification)); + verification.setVerificationCode(costCode); verification.setVerificationMainCode(verification.getVerificationCode()); verification.setCostApplyId(costApply.getId()); verification.setFinishedTime(nowTime); @@ -821,64 +824,72 @@ public class PortalOfCostApplication { verificationSubjectService.save(verificationSubject); //保存支付信息 - String json = ThirtyVerificationUtil.buildJson(supplier, subject, totalAmount, activityTitle, verification); - String COST_TO_PAY_API = projectApisProperties.getCostToPay(); - log.info("COST_TO_PAY_API 支付单信息:{} 数据:{}",verification.getVerificationCode(),json); - String rs = HttpUtil.doPost(COST_TO_PAY_API,json,null); - if(rs==null||!rs.contains("200")){ - log.error("COST_TO_PAY_API \n 请求参数:{},\n 支付单信息:{},\n 结果:{}",json,verification.getVerificationCode(),rs); - //核销调度接口事务补偿 - costApplyService.removeById(costApply.getId()); - activityService.removeById(activity.getId()); - activitySubjectService.removeById(activitySubject.getId()); - activityCenterService.removeById(activityCenter.getId()); - List goodIds = activityGoodsList.stream().map(TbsActivityGoods::getId).collect(Collectors.toList()); - if(goodIds.size()>0){ - activityGoodsService.removeBatchByIds(goodIds); - } - List good2Ids = activityCenterGoodsList.stream().map(TbsActivityCenterGoods::getId).collect(Collectors.toList()); - if(good2Ids.size()>0){ - activityCenterGoodsService.removeBatchByIds(good2Ids); - } - List logIds = budgetLogList.stream().map(TbsBudgetLog::getId).collect(Collectors.toList()); - if(logIds.size()>0){ - budgetLogService.removeBatchByIds(logIds); + if(costCode.indexOf("DHX")==0) { + //发货单的 + String json = ThirtyVerificationUtil.buildJson(supplier, subject, totalAmount, activityTitle, verification); + String COST_TO_PAY_API = projectApisProperties.getCostToPay(); + log.info("COST_TO_PAY_API 支付单信息:{} 数据:{}", verification.getVerificationCode(), json); + String rs = HttpUtil.doPost(COST_TO_PAY_API, json, null); + if (rs == null || !rs.contains("200")) { + log.error("COST_TO_PAY_API \n 请求参数:{},\n 支付单信息:{},\n 结果:{}", json, verification.getVerificationCode(), rs); + //核销调度接口事务补偿 + costApplyService.removeById(costApply.getId()); + activityService.removeById(activity.getId()); + activitySubjectService.removeById(activitySubject.getId()); + activityCenterService.removeById(activityCenter.getId()); + List goodIds = activityGoodsList.stream().map(TbsActivityGoods::getId).collect(Collectors.toList()); + if (goodIds.size() > 0) { + activityGoodsService.removeBatchByIds(goodIds); + } + List good2Ids = activityCenterGoodsList.stream().map(TbsActivityCenterGoods::getId).collect(Collectors.toList()); + if (good2Ids.size() > 0) { + activityCenterGoodsService.removeBatchByIds(good2Ids); + } + List logIds = budgetLogList.stream().map(TbsBudgetLog::getId).collect(Collectors.toList()); + if (logIds.size() > 0) { + budgetLogService.removeBatchByIds(logIds); + } + verificationService.removeById(verification.getId()); + verificationSubjectService.removeById(verificationSubject.getId()); + Assert.throwEx("连接支付接口异常"); } - verificationService.removeById(verification.getId()); - verificationSubjectService.removeById(verificationSubject.getId()); - Assert.throwEx("连接支付接口异常"); + log.info("COST_TO_PAY_API 支付单信息:{},结果:{}", verification.getVerificationCode(), rs); } - log.info("COST_TO_PAY_API 支付单信息:{},结果:{}",verification.getVerificationCode(),rs); //保存支付 -// PayPayment payPayment = new PayPayment(); -// payPayment.setPayType(PaymentType.PAYMENT); -// payPayment.setPayCode("PM"+ StringUtils.genShortId()); -// payPayment.setSupplierId(supplierId); -// payPayment.setSupplierCode(supplier.getCode()); -// payPayment.setSupplierName(supplier.getName()); -// payPayment.setPayAmount(totalAmount); -// payPayment.setUserId(user.getId()); -// payPayment.setUserCode(user.getCode()); -// payPayment.setUserName(user.getName()); -// payPayment.setPayTime(nowTime); -// payPayment.setErpCode(erpCode); -// payPayment.setBillNumber(billNumber); -// paymentService.save(payPayment); -// -// PayPaymentItem paymentItem = new PayPaymentItem(); -// paymentItem.setPaymentId(payPayment.getId()); -// paymentItem.setPayType(PaymentType.PAYMENT); -// paymentItem.setSupplierId(supplierId); -// paymentItem.setItemPayAmount(totalAmount); -// paymentItem.setVerificationId(verification.getId()); -// paymentItem.setVerificationSubjectId(verificationSubject.getId()); -// paymentItem.setCostApplyId(costApply.getId()); -// paymentItem.setActivityId(activity.getId()); -// paymentItem.setActivityCode(activity.getActivityCode()); -// paymentItem.setSubjectId(subject.getId()); -// paymentItem.setSubjectCode(subject.getSubjectCode()); -// paymentItem.setSubjectName(subject.getSubjectName()); -// paymentItemService.save(paymentItem); + if(costCode.indexOf("SHX")==0) { + //发票的要直接支付 + PayPayment payPayment = new PayPayment(); + payPayment.setPayType(PaymentType.PAYMENT); + payPayment.setPayCode("PM" + StringUtils.genShortId()); + payPayment.setSupplierId(supplierId); + payPayment.setSupplierCode(supplier.getCode()); + payPayment.setSupplierName(supplier.getName()); + payPayment.setPayAmount(totalAmount); + payPayment.setUserId(user.getId()); + payPayment.setUserCode(user.getCode()); + payPayment.setUserName(user.getName()); + payPayment.setPayTime(nowTime); + payPayment.setErpCode(erpCode); + payPayment.setBillNumber(billNumber); + paymentService.save(payPayment); + + PayPaymentItem paymentItem = new PayPaymentItem(); + paymentItem.setPaymentId(payPayment.getId()); + paymentItem.setPayType(PaymentType.PAYMENT); + paymentItem.setSupplierId(supplierId); + paymentItem.setItemPayAmount(totalAmount); + paymentItem.setVerificationId(verification.getId()); + paymentItem.setVerificationCode(verification.getVerificationCode()); + paymentItem.setVerificationMainCode(verification.getVerificationCode()); + paymentItem.setVerificationSubjectId(verificationSubject.getId()); + paymentItem.setCostApplyId(costApply.getId()); + paymentItem.setActivityId(activity.getId()); + paymentItem.setActivityCode(activity.getActivityCode()); + paymentItem.setSubjectId(subject.getId()); + paymentItem.setSubjectCode(subject.getSubjectCode()); + paymentItem.setSubjectName(subject.getSubjectName()); + paymentItemService.save(paymentItem); + } }