From e57e32fc43da31917912eebb4e47d4e50df1a9e9 Mon Sep 17 00:00:00 2001
From: shiyj1101 <1098226878@qq.com>
Date: 星期四, 05 八月 2021 22:56:15 +0800
Subject: [PATCH] 完善格式化功能
---
service-community/src/main/java/com/java110/community/bmo/repair/impl/AppraiseRepairBMOImpl.java | 50 +++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 49 insertions(+), 1 deletions(-)
diff --git a/service-community/src/main/java/com/java110/community/bmo/repair/impl/AppraiseRepairBMOImpl.java b/service-community/src/main/java/com/java110/community/bmo/repair/impl/AppraiseRepairBMOImpl.java
old mode 100644
new mode 100755
index 086a2c1..7b445f6
--- a/service-community/src/main/java/com/java110/community/bmo/repair/impl/AppraiseRepairBMOImpl.java
+++ b/service-community/src/main/java/com/java110/community/bmo/repair/impl/AppraiseRepairBMOImpl.java
@@ -11,15 +11,18 @@
import com.java110.intf.common.IAppraiseInnerServiceSMO;
import com.java110.intf.user.IUserInnerServiceSMO;
import com.java110.po.appraise.AppraisePo;
+import com.java110.po.user.UserPo;
import com.java110.utils.util.Assert;
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.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import org.springframework.web.bind.annotation.RequestBody;
+import java.math.BigDecimal;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -77,7 +80,52 @@
appraisePo.setObjType(AppraiseDto.OBJ_TYPE_REPAIR);
appraisePo.setAppraiseType(AppraiseDto.APPRAISE_TYPE_PUBLIC);
appraiseInnerServiceSMOImpl.saveAppraise(appraisePo);
+ //鑾峰彇褰撳墠缁撳崟鐨勭敤鎴�
+ Map mapInfo = new HashMap();
+ mapInfo.put("repairId", repairId);
+ mapInfo.put("state", RepairUserDto.STATE_CLOSE);
+ List<Map> repairUsers = repairUserServiceDaoImpl.getRepairUserInfo(mapInfo);
+ Assert.listOnlyOne(repairUsers, "鏌ヨ缁撳崟鐢ㄦ埛閿欒锛�");
+ //鑾峰彇缁撳崟鍛樺伐鐨刬d
+ Object staffId = repairUsers.get(0).get("staffId");
+ //鑾峰彇缁撳崟鍛樺伐淇℃伅
+ UserDto user = new UserDto();
+ user.setUserId(staffId.toString());
+ List<UserDto> userList = userInnerServiceSMO.getUsers(user);
+ Assert.listOnlyOne(userList, "鏌ヨ鐢ㄦ埛淇℃伅閿欒锛�");
+ //鑾峰彇缁煎悎璇勪环寰楀垎
+ Double appraiseScore = 0.0;
+ if (!StringUtil.isEmpty(appraisePo.getAppraiseScore())) {
+ appraiseScore = Double.parseDouble(appraisePo.getAppraiseScore());
+ }
+ //鑾峰彇涓婇棬閫熷害璇勫垎
+ Double doorSpeedScore = 0.0;
+ if (!StringUtil.isEmpty(appraisePo.getDoorSpeedScore())) {
+ doorSpeedScore = Double.parseDouble(appraisePo.getDoorSpeedScore());
+ }
+ //鑾峰彇缁翠慨鍛樻湇鍔¤瘎鍒�
+ Double repairmanServiceScore = 0.0;
+ if (!StringUtil.isEmpty(appraisePo.getRepairmanServiceScore())) {
+ repairmanServiceScore = Double.parseDouble(appraisePo.getRepairmanServiceScore());
+ }
+ //璁$畻骞冲潎鍒�
+ double average = 0.0;
+ double averageNumber = (appraiseScore + doorSpeedScore + repairmanServiceScore) / 3.0;
+ if (StringUtil.isEmpty(userList.get(0).getScore())) {
+ BigDecimal averageNum = new BigDecimal(averageNumber);
+ average = averageNum.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
+ } else {
+ //鑾峰彇鐢ㄦ埛鍘熸湁璇勫垎
+ Double scoreNumber = Double.parseDouble(userList.get(0).getScore());
+ double score = (averageNumber + scoreNumber) / 2.0;
+ BigDecimal averageNum = new BigDecimal(score);
+ average = averageNum.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
+ }
+ //鏇存柊鐢ㄦ埛璇勫垎
+ UserPo userPo = new UserPo();
+ userPo.setUserId(staffId.toString());
+ userPo.setScore(String.valueOf(average));
+ userInnerServiceSMO.updateUser(userPo);
return ResultVo.createResponseEntity(ResultVo.CODE_OK, ResultVo.MSG_OK);
-
}
}
--
Gitblit v1.8.0