From 05683f2b2bdbdbe21cf17ad523c21ab338bd1c54 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期二, 19 七月 2022 21:49:55 +0800
Subject: [PATCH] 优化添加设备 功能
---
service-fee/src/main/java/com/java110/fee/cmd/fee/UpdateFeeCmd.java | 70 ++++++++++++++++++++++++++++++-----
1 files changed, 60 insertions(+), 10 deletions(-)
diff --git a/service-fee/src/main/java/com/java110/fee/cmd/fee/UpdateFeeCmd.java b/service-fee/src/main/java/com/java110/fee/cmd/fee/UpdateFeeCmd.java
index a1f7013..bb0d61e 100644
--- a/service-fee/src/main/java/com/java110/fee/cmd/fee/UpdateFeeCmd.java
+++ b/service-fee/src/main/java/com/java110/fee/cmd/fee/UpdateFeeCmd.java
@@ -5,6 +5,7 @@
import com.java110.core.context.ICmdDataFlowContext;
import com.java110.core.event.cmd.Cmd;
import com.java110.core.event.cmd.CmdEvent;
+import com.java110.core.factory.GenerateCodeFactory;
import com.java110.dto.fee.FeeAttrDto;
import com.java110.dto.fee.FeeConfigDto;
import com.java110.dto.fee.FeeDto;
@@ -17,6 +18,7 @@
import com.java110.utils.exception.CmdException;
import com.java110.utils.util.Assert;
import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.StringUtil;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.List;
@@ -63,37 +65,85 @@
PayFeePo payFeePo = BeanConvertUtil.covertBean(reqJson, PayFeePo.class);
int flag = payFeeV1InnerServiceSMOImpl.updatePayFee(payFeePo);
- if(flag < 1){
+ if (flag < 1) {
throw new CmdException("淇敼璐圭敤");
}
- if(!reqJson.containsKey("computingFormula")
- || !FeeConfigDto.COMPUTING_FORMULA_RANT_RATE.equals(reqJson.getString("computingFormula"))){
- return ;
+ if (reqJson.containsKey("maxEndTime") && !StringUtil.isEmpty(reqJson.getString("maxEndTime"))) {
+ FeeAttrDto feeAttrDto = new FeeAttrDto();
+ feeAttrDto.setFeeId(payFeePo.getFeeId());
+ feeAttrDto.setSpecCd(FeeAttrDto.SPEC_CD_ONCE_FEE_DEADLINE_TIME);
+ List<FeeAttrDto> feeAttrDtos = feeAttrInnerServiceSMOImpl.queryFeeAttrs(feeAttrDto);
+ FeeAttrPo feeAttrPo = new FeeAttrPo();
+ feeAttrPo.setFeeId(payFeePo.getFeeId());
+ feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_ONCE_FEE_DEADLINE_TIME);
+ feeAttrPo.setValue(reqJson.getString("maxEndTime"));
+ feeAttrPo.setCommunityId(reqJson.getString("communityId"));
+ if (feeAttrDtos == null || feeAttrDtos.size() < 1) {
+ feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId));
+ feeAttrInnerServiceSMOImpl.saveFeeAttr(feeAttrPo);
+ } else {
+ feeAttrInnerServiceSMOImpl.updateFeeAttr(feeAttrPo);
+ }
}
- if(reqJson.containsKey("rate")) {
+ if (!reqJson.containsKey("computingFormula")
+ || !FeeConfigDto.COMPUTING_FORMULA_RANT_RATE.equals(reqJson.getString("computingFormula"))) {
+ return;
+ }
+
+ if (reqJson.containsKey("rate")) {
+ FeeAttrDto feeAttrDto = new FeeAttrDto();
+ feeAttrDto.setFeeId(payFeePo.getFeeId());
+ feeAttrDto.setSpecCd(FeeAttrDto.SPEC_CD_RATE);
+ List<FeeAttrDto> feeAttrDtos = feeAttrInnerServiceSMOImpl.queryFeeAttrs(feeAttrDto);
FeeAttrPo feeAttrPo = new FeeAttrPo();
feeAttrPo.setFeeId(payFeePo.getFeeId());
feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_RATE);
feeAttrPo.setValue(reqJson.getString("rate"));
- feeAttrInnerServiceSMOImpl.updateFeeAttr(feeAttrPo);
+ feeAttrPo.setCommunityId(reqJson.getString("communityId"));
+ if (feeAttrDtos == null || feeAttrDtos.size() < 1) {
+ feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId));
+ feeAttrInnerServiceSMOImpl.saveFeeAttr(feeAttrPo);
+ } else {
+ feeAttrInnerServiceSMOImpl.updateFeeAttr(feeAttrPo);
+ }
}
- if(reqJson.containsKey("rateCycle")) {
+ if (reqJson.containsKey("rateCycle")) {
+ FeeAttrDto feeAttrDto = new FeeAttrDto();
+ feeAttrDto.setFeeId(payFeePo.getFeeId());
+ feeAttrDto.setSpecCd(FeeAttrDto.SPEC_CD_RATE_CYCLE);
+ List<FeeAttrDto> feeAttrDtos = feeAttrInnerServiceSMOImpl.queryFeeAttrs(feeAttrDto);
FeeAttrPo feeAttrPo = new FeeAttrPo();
feeAttrPo.setFeeId(payFeePo.getFeeId());
feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_RATE_CYCLE);
feeAttrPo.setValue(reqJson.getString("rateCycle"));
- feeAttrInnerServiceSMOImpl.updateFeeAttr(feeAttrPo);
+ feeAttrPo.setCommunityId(reqJson.getString("communityId"));
+ if (feeAttrDtos == null || feeAttrDtos.size() < 1) {
+ feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId));
+ feeAttrInnerServiceSMOImpl.saveFeeAttr(feeAttrPo);
+ } else {
+ feeAttrInnerServiceSMOImpl.updateFeeAttr(feeAttrPo);
+ }
}
- if(reqJson.containsKey("rateStartTime")) {
+ if (reqJson.containsKey("rateStartTime")) {
+ FeeAttrDto feeAttrDto = new FeeAttrDto();
+ feeAttrDto.setFeeId(payFeePo.getFeeId());
+ feeAttrDto.setSpecCd(FeeAttrDto.SPEC_CD_RATE_START_TIME);
+ List<FeeAttrDto> feeAttrDtos = feeAttrInnerServiceSMOImpl.queryFeeAttrs(feeAttrDto);
FeeAttrPo feeAttrPo = new FeeAttrPo();
feeAttrPo.setFeeId(payFeePo.getFeeId());
feeAttrPo.setSpecCd(FeeAttrDto.SPEC_CD_RATE_START_TIME);
feeAttrPo.setValue(reqJson.getString("rateStartTime"));
- feeAttrInnerServiceSMOImpl.updateFeeAttr(feeAttrPo);
+ feeAttrPo.setCommunityId(reqJson.getString("communityId"));
+ if (feeAttrDtos == null || feeAttrDtos.size() < 1) {
+ feeAttrPo.setAttrId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId));
+ feeAttrInnerServiceSMOImpl.saveFeeAttr(feeAttrPo);
+ } else {
+ feeAttrInnerServiceSMOImpl.updateFeeAttr(feeAttrPo);
+ }
}
}
}
--
Gitblit v1.8.0