From 7ca66b60c524598ca87e03eb79f2bedce12639e2 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期五, 23 八月 2024 17:42:33 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ycl-server/src/main/java/com/ycl/task/ContractTask.java | 335 +++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 222 insertions(+), 113 deletions(-) diff --git a/ycl-server/src/main/java/com/ycl/task/ContractTask.java b/ycl-server/src/main/java/com/ycl/task/ContractTask.java index ac7cb70..aa9b899 100644 --- a/ycl-server/src/main/java/com/ycl/task/ContractTask.java +++ b/ycl-server/src/main/java/com/ycl/task/ContractTask.java @@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.mongodb.client.result.DeleteResult; import com.ycl.platform.domain.entity.*; import com.ycl.platform.domain.result.HK.PicAccessResult; @@ -11,14 +12,18 @@ import com.ycl.platform.domain.vo.CalculateRuleVO; import com.ycl.platform.domain.vo.ContractVO; import com.ycl.platform.domain.vo.ReportVO; +import com.ycl.platform.domain.vo.WorkOrderVO; import com.ycl.platform.mapper.*; import com.ycl.platform.service.IContractScoreService; import com.ycl.utils.DateUtils; import constant.ApiConstants; import constant.RedisConstant; import enumeration.ContractRule; +import enumeration.ErrorType; import enumeration.general.AuditingStatus; +import enumeration.general.ErrorTypeEnum; import enumeration.general.RuleDeductCategoryEnum; +import enumeration.general.WorkOrderStatusEnum; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.mongodb.core.MongoTemplate; @@ -31,6 +36,8 @@ import javax.management.monitor.Monitor; import java.math.BigDecimal; import java.math.RoundingMode; +import java.time.LocalDate; +import java.time.LocalDateTime; import java.util.*; import java.util.stream.Collectors; @@ -44,10 +51,6 @@ @Autowired private MongoTemplate mongoTemplate; @Autowired - private RedisTemplate redisTemplate; - @Autowired - private TMonitorMapper monitorMapper; - @Autowired private TContractMapper contractMapper; @Autowired private YwPointMapper ywPointMapper; @@ -57,6 +60,8 @@ private ContractRuleRecordMapper recordMapper; @Autowired private IContractScoreService contractScoreService; + @Autowired + private WorkOrderMapper workOrderMapper; private static final Integer Online = 1; private static final Integer Offline = -1; @@ -172,21 +177,7 @@ if (checkRange(min, max, siteOnline.multiply(new BigDecimal(100)))) { //闇�瑕佹墸闄ょ殑鍒嗘暟 Double deductScore = ruleVO.getCalcFraction(); - ContractScore contractScore = new ContractScore(); - contractScore.setContractId(Long.parseLong(contractId + "")); - contractScore.setAuditingStatus(AuditingStatus.PASS); - contractScore.setAuditingTime(new Date()); - contractScore.setAuditingUser(Remark); - contractScore.setUnitId(Long.parseLong(unitId + "")); - contractScore.setRuleId(Long.parseLong(ruleVO.getId() + "")); - contractScore.setRuleIds("0," + ruleVO.getId()); - contractScore.setNum(siteOnline + ""); - contractScore.setDeductCategory(ruleVO.getDeductCategory().getDesc()); - contractScore.setScore(new BigDecimal(deductScore)); - contractScore.setRuleName(ruleVO.getRuleName() + "/" + ruleVO.getRuleCondition()); - contractScore.setCreateTime(new Date()); - contractScore.setUpdateTime(new Date()); - contractScore.setRemark(Remark); + ContractScore contractScore = getContractScore(ruleVO, deductScore, siteOnline + "", Remark); contractScoreList.add(contractScore); } } @@ -197,19 +188,6 @@ log.info("缁撴潫璁$畻鍚堝悓鐐逛綅鍦ㄧ嚎鐜囧垎鏁�"); } - private boolean checkRange(Double min, Double max, BigDecimal siteOnline) { - if (siteOnline == null) { - return false; - } - if (max != null && siteOnline.compareTo(new BigDecimal(max)) > 0) { - return false; - } - if (min != null && siteOnline.compareTo(new BigDecimal(min)) < 0) { - return false; - } - return true; - } - /** * 妫�娴嬪伐鍗曡〃 杩涜鍚堝悓绉垎鎵i櫎 * 鏌ュ嚭宸ュ崟闇�瑕佹墸鍒嗙殑鎵�鏈夎鍒� @@ -218,6 +196,10 @@ * 鎻掑叆鍚堝悓绉垎琛紝淇敼宸ュ崟鐘舵�佷负宸叉墸鍒� */ public void workOrderDeduct() { + log.info("寮�濮嬫壂鎻忓伐鍗曟墸鍒�"); + //鍑嗗鎵归噺鎵撳垎鐨勯泦鍚� + List<ContractScore> contractScoreList = new ArrayList<>(); + List<String> workOrderList = new ArrayList<>(); //鏌ヨ鐢熸晥鍚堝悓瀵瑰簲鎵�鏈夌殑瑙勫垯 List<CalculateRuleVO> calculateRules = contractMapper.getCalculateRule(new Date()); Map<String, Map<Integer, List<CalculateRuleVO>>> ruleMap = calculateRules.stream() @@ -233,8 +215,112 @@ Map<Integer, List<CalculateRuleVO>> storeRuleMap = ruleMap.get(ContractRule.CONTRACT_RULE_Store.getName()); //鐐逛綅寮傚父鎯呭喌澶勭悊 鑾峰彇key涓哄悎鍚宨d锛寁alue涓鸿鍒欑殑map Map<Integer, List<CalculateRuleVO>> siteRuleMap = ruleMap.get(ContractRule.CONTRACT_RULE_Site.getName()); + //鏌ヨ鎶ュ鍒楄〃 + List<String> reportNumbers = reportMapper.selectNumberList(AuditStatus_Pass, DateUtils.getDate()); + //鏌ヨ30澶╁唴鎵�鏈夋湭鎵e垎銆佸鏍搁�氳繃鐨勫伐鍗� + // 鑾峰彇褰撳墠鏃ユ湡 + LocalDateTime endTime = LocalDateTime.now(); + // 璁$畻30澶╁墠鐨勬棩鏈� + LocalDateTime startTime = endTime.minusDays(30); + List<WorkOrderVO> workOrders = workOrderMapper.selectPassOrder(startTime, endTime, WorkOrderStatusEnum.AUDITING_SUCCESS.getValue(), "瀹℃牳閫氳繃"); + for (WorkOrderVO workOrder : workOrders) { + //妫�娴嬫槸鍚︽姤澶囪繃 + if (!CollectionUtils.isEmpty(reportNumbers)) { + if(reportNumbers.contains(workOrder.getSerialNumber())) continue; + } + String errorType = workOrder.getErrorType(); + //瀛樺偍鏁呴殰 褰曞儚鎴栧浘鐗囪闂紓甯� + if (ErrorType.VIDEO_NONE.getValue().equals(errorType) || ErrorType.PIC_URLABNORMAL.getValue().equals(errorType)) { + if (!CollectionUtils.isEmpty(storeRuleMap)) { + storeRuleMap.forEach((contractId, rules) -> { + Integer unitId = rules.get(0).getUnitId(); + //鎵惧埌瀵瑰簲鐨勮鍒� + if (workOrder.getUnitId().equals(unitId)) { + //宸ュ崟涓嬪彂鏃堕棿 + Date createTime = workOrder.getDistributeTime(); + Date auditTime = workOrder.getAuditTime(); + double diffTime = (double) (auditTime.getTime() - createTime.getTime()) / (1000 * 60 * 60); + //閫夋嫨鏃堕棿鑼冨洿鍐呯殑瑙勫垯 + for (CalculateRuleVO rule : rules) { + if (checkRange(rule.getMin(), rule.getMax(), new BigDecimal(diffTime))) { + double deductScore = rule.getCalcFraction() * Math.ceil(diffTime); + ContractScore contractScore = getContractScore(rule, deductScore, Math.round(diffTime * 100) / 100 + "", Remark + "宸ュ崟缂栧彿涓�:" + workOrder.getWorkOrderNo() + "澶勭悊瓒呮椂锛屾墸闄�" + deductScore + "鍒�"); + contractScoreList.add(contractScore); + workOrderList.add(workOrder.getWorkOrderNo()); + } + } + } + }); + } + } + //鍓嶇鎰熺煡婧愭不鐞嗗伐浣滐紙鏃堕挓鍚屾瑙勫垯銆丱SD瑙勫垯銆佷竴鏈轰竴妗h鍒欙級 + if (ErrorType.MONITOR_UNQUALIFY.getValue().equals(errorType) || ErrorType.OSD_ERROR.getValue().equals(errorType) || ErrorType.CLOCK_SKEW.getValue().equals(errorType)) { + if (!CollectionUtils.isEmpty(monitorRuleMap)) { + monitorRuleMap.forEach((contractId, rules) -> { + Integer unitId = rules.get(0).getUnitId(); + //鎵惧埌瀵瑰簲鐨勮鍒� + if (workOrder.getUnitId().equals(unitId)) { + //宸ュ崟涓嬪彂鏃堕棿 + Date createTime = workOrder.getDistributeTime(); + Date auditTime = workOrder.getAuditTime(); + double diffTime = (double) (auditTime.getTime() - createTime.getTime()) / (1000 * 60 * 60); + //閫夋嫨鏃堕棿鑼冨洿鍐呯殑瑙勫垯 + for (CalculateRuleVO rule : rules) { + if (checkRange(rule.getMin(), rule.getMax(), new BigDecimal(diffTime))) { + double deductScore = rule.getCalcFraction(); + ContractScore contractScore = getContractScore(rule, deductScore, Math.round(diffTime * 100) / 100 + "", Remark + "宸ュ崟缂栧彿涓�:" + workOrder.getWorkOrderNo() + "澶勭悊瓒呮椂锛屾墸闄�" + deductScore + "鍒�"); + contractScoreList.add(contractScore); + workOrderList.add(workOrder.getWorkOrderNo()); + } + } + } + }); + } + } + //鐐逛綅寮傚父鎯呭喌澶勭悊锛堥暅澶村紓甯搞�佹憚鍍忓ご閬尅绛夛級 + if (ErrorType.SCREEN_COLOR_DEVIATION.getValue().equals(errorType) || ErrorType.SNOW_STORM.getValue().equals(errorType) || ErrorType.STRIPE_INTERFERENCE.getValue().equals(errorType) || ErrorType.SCREEN_OCCLUSION.getValue().equals(errorType) || ErrorType.ABNORMAL_CLARITY.getValue().equals(errorType) || ErrorType.ABNORMAL_BRIGHTNESS.getValue().equals(errorType)) { + if (!CollectionUtils.isEmpty(monitorRuleMap)) { + siteRuleMap.forEach((contractId, rules) -> { + Integer unitId = rules.get(0).getUnitId(); + //璁惧鏄惁鏄鍏徃杩愮淮 + if (workOrder.getUnitId().equals(unitId)) { + //宸ュ崟涓嬪彂鏃堕棿 + Date createTime = workOrder.getDistributeTime(); + Date auditTime = workOrder.getAuditTime(); + double diffTime = (double) (auditTime.getTime() - createTime.getTime()) / (1000 * 60 * 60); + //閫夋嫨鏃堕棿鑼冨洿鍐呯殑瑙勫垯 + for (CalculateRuleVO rule : rules) { + if (checkRange(rule.getMin(), rule.getMax(), new BigDecimal(diffTime))) { + double deductScore = 0d; + if (ContractRule.CONTRACT_RULE_Store_48H.getName().equals(rule.getRuleCondition())) { + //璁$畻瓒呮椂澶╂暟 + int day = (int) ((diffTime - 48) / 24 + 1); + deductScore = rule.getCalcFraction() * (day); + } else { + deductScore = rule.getCalcFraction(); + } + ContractScore contractScore = getContractScore(rule, deductScore, Math.round(diffTime * 100) / 100 + "", Remark + "宸ュ崟缂栧彿涓�:" + workOrder.getWorkOrderNo() + "澶勭悊瓒呮椂锛屾墸闄�" + deductScore + "鍒�"); + contractScoreList.add(contractScore); + workOrderList.add(workOrder.getWorkOrderNo()); + } + } + } + }); + } + } + } + contractScoreService.saveBatch(contractScoreList); + if (!CollectionUtils.isEmpty(workOrderList)) { + //淇敼宸ュ崟鎵e垎鐘舵�佷负宸叉墸鍒� + UpdateWrapper<WorkOrder> updateWrapper = new UpdateWrapper<>(); + updateWrapper.in("work_order_no", workOrderList); + updateWrapper.set("deduct", 1); + workOrderMapper.update(null, updateWrapper); + } + log.info("缁撴潫鎵ц宸ュ崟鎵e垎"); } + /** * 涓嶅畾鏈熸鏌ユ暟鎹� 鎵i櫎绉垎 @@ -249,7 +335,8 @@ log.info("寮�濮嬫娊鏌ュ浘鐗囧畬鏁寸姸鎬�"); //鍑嗗鎵归噺鎵撳垎鐨勯泦鍚� List<ContractScore> contractScoreList = new ArrayList<>(); - + //鏌ヨ鎶ュ鍒楄〃 + List<String> reportNumbers = reportMapper.selectNumberList(AuditStatus_Pass, DateUtils.getDate()); Date date = DateUtils.getDay(2024, 7, 13); //鏌ュ浘鐗囧畬鏁存�ц鍒� 鑾峰彇key涓哄悎鍚宨d锛寁alue涓鸿鍒欑殑map Map<Integer, List<CalculateRuleVO>> contractMap = contractMapper.getCalculateRule(new Date()).stream() @@ -269,45 +356,37 @@ Collectors.mapping( YwPoint::getSerialNumber, Collectors.toList()))); - contractMap.forEach((contractId, ruleList) -> { - boolean deduct = false; - String serialNumber = null; - //姝よ鍒欏搴旂殑unitId鍧囩浉绛� - CalculateRuleVO ruleVO = ruleList.get(0); - Integer unitId = ruleVO.getUnitId(); - List<String> monitorList = unitMonitorMap.get(Long.parseLong(unitId + "")); - for (PicAccessResult picAccessResult : picAccessResults) { - //鍒ゆ柇鏄惁鏄鍏徃杩愮淮 - if (monitorList.contains(picAccessResult.getExternalIndexCode())) { - //瀛樺湪澶у浘涓嶅彲鐢ㄦ暟鎹噺锛岄渶瑕佹墸鍑� - if (picAccessResult.getBigDisableCount() > 0) { - deduct = true; - serialNumber = picAccessResult.getExternalIndexCode(); - break; + if (!CollectionUtils.isEmpty(contractMap)) { + contractMap.forEach((contractId, ruleList) -> { + boolean deduct = false; + String serialNumber = null; + //姝よ鍒欏搴旂殑unitId鍧囩浉绛� + CalculateRuleVO ruleVO = ruleList.get(0); + Integer unitId = ruleVO.getUnitId(); + List<String> monitorList = unitMonitorMap.get(Long.parseLong(unitId + "")); + for (PicAccessResult picAccessResult : picAccessResults) { + //鍒ゆ柇鏄惁鎶ュ杩� + if (!CollectionUtils.isEmpty(reportNumbers)) { + if(reportNumbers.contains(picAccessResult.getExternalIndexCode())) continue; + } + //鍒ゆ柇鏄惁鏄鍏徃杩愮淮 + if (monitorList.contains(picAccessResult.getExternalIndexCode())) { + //瀛樺湪澶у浘涓嶅彲鐢ㄦ暟鎹噺锛岄渶瑕佹墸鍑� + if (picAccessResult.getBigDisableCount() > 0) { + deduct = true; + serialNumber = picAccessResult.getExternalIndexCode(); + break; + } } } - } - if (deduct) { - //闇�瑕佹墸闄ょ殑鍒嗘暟锛屾瑙勫垯鍙湁涓�鏉′笉闇�瑕佸垽鏂寖鍥� - Double deductScore = ruleVO.getCalcFraction(); - ContractScore contractScore = new ContractScore(); - contractScore.setContractId(Long.parseLong(contractId + "")); - contractScore.setAuditingStatus(AuditingStatus.PASS); - contractScore.setAuditingTime(new Date()); - contractScore.setAuditingUser(Remark); - contractScore.setUnitId(Long.parseLong(ruleVO.getUnitId() + "")); - contractScore.setRuleId(Long.parseLong(ruleVO.getId() + "")); - contractScore.setRuleIds("0," + ruleVO.getId()); - contractScore.setNum(1 + ""); - contractScore.setDeductCategory(ruleVO.getDeductCategory().getDesc()); - contractScore.setScore(new BigDecimal(deductScore)); - contractScore.setRuleName(ruleVO.getRuleName() + "/" + ruleVO.getRuleCondition()); - contractScore.setCreateTime(new Date()); - contractScore.setUpdateTime(new Date()); - contractScore.setRemark(Remark + "鍥芥爣鐮佷负:" + serialNumber + "鏃堕棿锛�" + new Date() + "瀛樺湪澶у浘涓嶅彲鐢ㄦ暟鎹�"); - contractScoreList.add(contractScore); - } - }); + if (deduct) { + //闇�瑕佹墸闄ょ殑鍒嗘暟锛屾瑙勫垯鍙湁涓�鏉′笉闇�瑕佸垽鏂寖鍥� + Double deductScore = ruleVO.getCalcFraction(); + ContractScore contractScore = getContractScore(ruleVO, deductScore, "1", Remark + "鍥芥爣鐮佷负:" + serialNumber + "鏃堕棿锛�" + new Date() + "瀛樺湪澶у浘涓嶅彲鐢ㄦ暟鎹�"); + contractScoreList.add(contractScore); + } + }); + } contractScoreService.saveBatch(contractScoreList); log.info("缁撴潫鎶芥煡鍥剧墖瀹屾暣鐘舵��"); } @@ -327,7 +406,8 @@ log.info("寮�濮嬫娊鏌ュ綍鍍忓畬鏁寸姸鎬�"); //鍑嗗鎵归噺鎵撳垎鐨勯泦鍚� List<ContractScore> contractScoreList = new ArrayList<>(); - + //鏌ヨ鎶ュ鍒楄〃 + List<String> reportNumbers = reportMapper.selectNumberList(AuditStatus_Pass, DateUtils.getDate()); Date date = DateUtils.getDay(2024, 7, 13); //鏌ュ浘鐗囧畬鏁存�ц鍒� 鑾峰彇key涓哄悎鍚宨d锛寁alue涓鸿鍒欑殑map Map<Integer, List<CalculateRuleVO>> contractMap = contractMapper.getCalculateRule(new Date()).stream() @@ -347,54 +427,83 @@ Collectors.mapping( YwPoint::getSerialNumber, Collectors.toList()))); - contractMap.forEach((contractId, ruleList) -> { - //姝よ鍒欏搴旂殑unitId鍧囩浉绛� - CalculateRuleVO ruleVO = ruleList.get(0); - Integer unitId = ruleVO.getUnitId(); - List<String> monitorList = unitMonitorMap.get(Long.parseLong(unitId + "")); - for (RecordMetaDSumResult result : recordMetaDSumResults) { - //鍒ゆ柇鏄惁鏄鍏徃杩愮淮 - if (monitorList.contains(result.getDeviceId())) { - //褰曞儚鐘舵�佷笉瀹屾暣 - if (!Objects.equals(result.getRecordStatus(), ApiConstants.UY_RecordStatus_Integrity)) { - for (CalculateRuleVO calculateRuleVO : ruleList) { - Double max = calculateRuleVO.getMax(); - Double min = calculateRuleVO.getMin(); - //鍒ゆ柇鑼冨洿鍦ㄥ摢涓尯闂� - if (checkRange(min, max, BigDecimal.valueOf(result.getMissDuration()))) { - if(calculateRuleVO.getNum() == null){ - calculateRuleVO.setNum(1); - }else { - calculateRuleVO.setNum(calculateRuleVO.getNum()+1); + if (!CollectionUtils.isEmpty(contractMap)) { + contractMap.forEach((contractId, ruleList) -> { + //姝よ鍒欏搴旂殑unitId鍧囩浉绛� + CalculateRuleVO ruleVO = ruleList.get(0); + Integer unitId = ruleVO.getUnitId(); + List<String> monitorList = unitMonitorMap.get(Long.parseLong(unitId + "")); + for (RecordMetaDSumResult result : recordMetaDSumResults) { + //鍒ゆ柇鏄惁鎶ュ杩� + if (!CollectionUtils.isEmpty(reportNumbers)) { + if(reportNumbers.contains(result.getDeviceId())) continue; + } + //鍒ゆ柇鏄惁鏄鍏徃杩愮淮 + if (monitorList.contains(result.getDeviceId())) { + //褰曞儚鐘舵�佷笉瀹屾暣 + if (!Objects.equals(result.getRecordStatus(), ApiConstants.UY_RecordStatus_Integrity)) { + for (CalculateRuleVO calculateRuleVO : ruleList) { + Double max = calculateRuleVO.getMax(); + Double min = calculateRuleVO.getMin(); + //鍒ゆ柇鑼冨洿鍦ㄥ摢涓尯闂� + if (checkRange(min, max, BigDecimal.valueOf(result.getMissDuration()))) { + if (calculateRuleVO.getNum() == null) { + calculateRuleVO.setNum(1); + } else { + calculateRuleVO.setNum(calculateRuleVO.getNum() + 1); + } } } } } } - } - for (CalculateRuleVO calculateRuleVO : ruleList) { - //闇�瑕佹墸闄ょ殑鍒嗘暟锛屾瑙勫垯鍙湁涓�鏉′笉闇�瑕佸垽鏂寖鍥� - double deductScore = calculateRuleVO.getCalcFraction()*calculateRuleVO.getNum(); - ContractScore contractScore = new ContractScore(); - contractScore.setContractId(Long.parseLong(contractId + "")); - contractScore.setAuditingStatus(AuditingStatus.PASS); - contractScore.setAuditingTime(new Date()); - contractScore.setAuditingUser(Remark); - contractScore.setUnitId(Long.parseLong(calculateRuleVO.getUnitId() + "")); - contractScore.setRuleId(Long.parseLong(calculateRuleVO.getId() + "")); - contractScore.setRuleIds("0," + calculateRuleVO.getId()); - contractScore.setNum(calculateRuleVO.getNum() + ""); - contractScore.setDeductCategory(calculateRuleVO.getDeductCategory().getDesc()); - contractScore.setScore(new BigDecimal(deductScore)); - contractScore.setRuleName(calculateRuleVO.getRuleName() + "/" + calculateRuleVO.getRuleCondition()); - contractScore.setCreateTime(new Date()); - contractScore.setUpdateTime(new Date()); - contractScore.setRemark(Remark+calculateRuleVO.getNum()+"璺澶囪繚鍙嶈鍒�"); - contractScoreList.add(contractScore); - } - }); + for (CalculateRuleVO calculateRuleVO : ruleList) { + if (calculateRuleVO.getNum() > 0) { + //闇�瑕佹墸闄ょ殑鍒嗘暟锛屾瑙勫垯鍙湁涓�鏉′笉闇�瑕佸垽鏂寖鍥� + double deductScore = calculateRuleVO.getCalcFraction() * calculateRuleVO.getNum(); + ContractScore contractScore = getContractScore(calculateRuleVO, deductScore, calculateRuleVO.getNum() + "", Remark + calculateRuleVO.getNum() + "璺澶囪繚鍙嶈鍒�"); + contractScoreList.add(contractScore); + } + } + }); + } contractScoreService.saveBatch(contractScoreList); - log.info("缁撴潫鎶芥煡鍥剧墖瀹屾暣鐘舵��"); + log.info("缁撴潫鎶芥煡褰曞儚瀹屾暣鐘舵��"); } } + + private boolean checkRange(Double min, Double max, BigDecimal index) { + if (index == null) { + return false; + } + if (max == null && min == null) { + return false; + } + if (max != null && index.setScale(0, RoundingMode.DOWN).compareTo(new BigDecimal(max)) > 0) { + return false; + } + if (min != null && index.setScale(0, RoundingMode.UP).compareTo(new BigDecimal(min)) < 0) { + return false; + } + return true; + } + + private ContractScore getContractScore(CalculateRuleVO rule, double deductScore, String num, String remark) { + ContractScore contractScore = new ContractScore(); + contractScore.setContractId(Long.parseLong(rule.getContractId() + "")); + contractScore.setAuditingStatus(AuditingStatus.PASS); + contractScore.setAuditingTime(new Date()); + contractScore.setAuditingUser(Remark); + contractScore.setUnitId(Long.parseLong(rule.getUnitId() + "")); + contractScore.setRuleId(Long.parseLong(rule.getId() + "")); + contractScore.setRuleIds("0," + rule.getId()); + contractScore.setNum(num); + contractScore.setDeductCategory(rule.getDeductCategory().getDesc()); + contractScore.setScore(new BigDecimal(deductScore)); + contractScore.setRuleName(rule.getRuleName() + "/" + rule.getRuleCondition()); + contractScore.setCreateTime(new Date()); + contractScore.setUpdateTime(new Date()); + contractScore.setRemark(remark); + return contractScore; + } } -- Gitblit v1.8.0