From 54e7f06671f70cee10f82576dbe412a14a957084 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期四, 12 五月 2022 17:25:08 +0800
Subject: [PATCH] 完成巡检 通知员工功能

---
 service-fee/src/main/java/com/java110/fee/cmd/fee/PayBatchFeeCmd.java |   34 ++++++++++++++--------------------
 1 files changed, 14 insertions(+), 20 deletions(-)

diff --git a/service-fee/src/main/java/com/java110/fee/cmd/fee/PayBatchFeeCmd.java b/service-fee/src/main/java/com/java110/fee/cmd/fee/PayBatchFeeCmd.java
index 9f4ccc3..9f59754 100644
--- a/service-fee/src/main/java/com/java110/fee/cmd/fee/PayBatchFeeCmd.java
+++ b/service-fee/src/main/java/com/java110/fee/cmd/fee/PayBatchFeeCmd.java
@@ -12,6 +12,7 @@
 import com.java110.core.smo.IComputeFeeSMO;
 import com.java110.dto.fee.FeeAttrDto;
 import com.java110.dto.fee.FeeConfigDto;
+import com.java110.dto.fee.FeeDetailDto;
 import com.java110.dto.fee.FeeDto;
 import com.java110.dto.owner.OwnerCarDto;
 import com.java110.dto.parking.ParkingSpaceDto;
@@ -38,6 +39,7 @@
 import com.java110.utils.util.BeanConvertUtil;
 import com.java110.utils.util.DateUtil;
 import com.java110.utils.util.StringUtil;
+import com.java110.vo.ResultVo;
 import org.slf4j.Logger;
 import org.springframework.beans.factory.annotation.Autowired;
 
@@ -149,6 +151,7 @@
     public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
         JSONArray fees = reqJson.getJSONArray("fees");
         JSONObject paramInObj = null;
+        JSONArray datas = new JSONArray();
         for (int feeIndex = 0; feeIndex < fees.size(); feeIndex++) {
             try {
                 paramInObj = fees.getJSONObject(feeIndex);
@@ -157,7 +160,10 @@
                 logger.error("澶勭悊寮傚父", e);
                 throw new CmdException(e.getMessage());
             }
+            datas.add(paramInObj.getString("detailId"));
         }
+
+        cmdDataFlowContext.setResponseEntity(ResultVo.createResponseEntity(datas));
     }
 
     private void doDeal(JSONObject paramObj, String communityId, ICmdDataFlowContext cmdDataFlowContext) throws Exception {
@@ -344,9 +350,8 @@
         if (feeDtos == null || feeDtos.size() != 1) {
             throw new ListenerExecuteException(ResponseConstant.RESULT_CODE_ERROR, "鏌ヨ璐圭敤淇℃伅澶辫触锛屾湭鏌ュ埌鏁版嵁鎴栨煡鍒板鏉℃暟鎹�");
         }
-        if (!businessFeeDetail.containsKey("state") || StringUtil.isEmpty(businessFeeDetail.getString("state"))) {
-            businessFeeDetail.put("state", "1400");
-        }
+        businessFeeDetail.put("state", FeeDetailDto.STATE_NORMAL);
+
         feeDto = feeDtos.get(0);
         businessFeeDetail.put("startTime", DateUtil.getFormatTimeString(feeDto.getEndTime(), DateUtil.DATE_FORMATE_STRING_A));
         int hours = 0;
@@ -354,23 +359,12 @@
         BigDecimal cycles = null;
         Map feePriceAll = computeFeeSMOImpl.getFeePrice(feeDto);
         BigDecimal feePrice = new BigDecimal(feePriceAll.get("feePrice").toString());
-        if ("-101".equals(paramInJson.getString("cycles"))) {
-            Date endTime = feeDto.getEndTime();
-            Calendar endCalender = Calendar.getInstance();
-            endCalender.setTime(endTime);
-            BigDecimal receivedAmount = new BigDecimal(Double.parseDouble(paramInJson.getString("receivedAmount")));
-            cycles = receivedAmount.divide(feePrice, 4, BigDecimal.ROUND_HALF_EVEN);
-            endCalender = getTargetEndTime(endCalender, cycles.doubleValue());
-            targetEndTime = endCalender.getTime();
-            paramInJson.put("tmpCycles", cycles.doubleValue());
-            businessFeeDetail.put("cycles", cycles.doubleValue());
-            businessFeeDetail.put("receivableAmount", receivedAmount.doubleValue());
-        } else {
-            targetEndTime = computeFeeSMOImpl.getFeeEndTimeByCycles(feeDto, paramInJson.getString("cycles"));
-            cycles = new BigDecimal(Double.parseDouble(paramInJson.getString("cycles")));
-            double tmpReceivableAmount = cycles.multiply(feePrice).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue();
-            businessFeeDetail.put("receivableAmount", tmpReceivableAmount);
-        }
+
+        targetEndTime = computeFeeSMOImpl.getFeeEndTimeByCycles(feeDto, paramInJson.getString("cycles"));
+        cycles = new BigDecimal(Double.parseDouble(paramInJson.getString("cycles")));
+        double tmpReceivableAmount = cycles.multiply(feePrice).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue();
+        businessFeeDetail.put("receivableAmount", tmpReceivableAmount);
+
         businessFeeDetail.put("endTime", DateUtil.getFormatTimeString(targetEndTime, DateUtil.DATE_FORMATE_STRING_A));
         paramInJson.put("feeInfo", feeDto);
         paramInJson.put("detailId", businessFeeDetail.getString("detailId"));

--
Gitblit v1.8.0