소스 검색

feat: 多人积分包-联调结算2

李学松 2 년 전
부모
커밋
0749a58486

+ 2 - 0
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/controller/WmScorePackageSettleNoteController.java

@@ -159,6 +159,7 @@ public class WmScorePackageSettleNoteController {
 	 * @param note
 	 * @return R
 	 */
+	@SysLog("settleNote保存结算")
 	@ApiOperation(value = "保存", notes = "保存")
 	@PostMapping("/saveSettleInfo")
 	public R saveSettleInfo(@RequestBody WmScorePackageSettleNote note) {
@@ -186,6 +187,7 @@ public class WmScorePackageSettleNoteController {
 	 * @param note
 	 * @return R
 	 */
+	@SysLog("提交结算申请")
 	@ApiOperation(value = "提交结算申请", notes = "提交结算申请")
 	@PostMapping("/subSettleInfo")
 	public R subSettleInfo(@RequestBody WmScorePackageSettleNote note) {

+ 13 - 13
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/controller/WmTaskController.java

@@ -55,6 +55,7 @@ import com.qunzhixinxi.hnqz.admin.entity.XlsTask;
 import com.qunzhixinxi.hnqz.admin.entity.dto.CommonEvidenceDTO;
 import com.qunzhixinxi.hnqz.admin.entity.model.excel.CommonTaskExcelModel;
 import com.qunzhixinxi.hnqz.admin.enums.DelEnum;
+import com.qunzhixinxi.hnqz.admin.enums.SettleStatusEnum;
 import com.qunzhixinxi.hnqz.admin.enums.TaskStatusEnum;
 import com.qunzhixinxi.hnqz.admin.mapper.WmTaskMapper;
 import com.qunzhixinxi.hnqz.admin.service.SysDeptService;
@@ -1178,20 +1179,19 @@ public class WmTaskController {
 		// 结算列表加个结算状态
 		if (TaskStatusEnum.APPROVED.equals(taskStatus)) {
 			if (CollUtil.isNotEmpty(taskIPage.getRecords())) {
-				Set<String> packageIds = taskIPage.getRecords().stream().map(WmTask::getScorePackageId).collect(Collectors.toSet());
 				List<WmScorePackageSettleNote> settleNoteList = wmScorePackageSettleNoteService.list(Wrappers.<WmScorePackageSettleNote>lambdaQuery()
-						.in(WmScorePackageSettleNote::getPackageId, packageIds));
-				if (CollUtil.isNotEmpty(settleNoteList)) {
-					Map<String, WmScorePackageSettleNote> settleNoteMap = settleNoteList.stream()
-							.filter(note -> StrUtil.isNotBlank(note.getTaskId()))
-							.collect(Collectors.toMap(WmScorePackageSettleNote::getTaskId, Function.identity()));
-					taskIPage.getRecords().forEach(wmTask -> {
-						WmScorePackageSettleNote settleNote = settleNoteMap.get(wmTask.getId());
-						if (settleNote != null) {
-							wmTask.setSettleStatus(settleNote.getSettleNoteStatus());
-						}
-					});
-				}
+						.eq(WmScorePackageSettleNote::getPackageId, packageId));
+				Map<String, WmScorePackageSettleNote> settleNoteMap = settleNoteList.stream()
+						.filter(note -> StrUtil.isNotBlank(note.getTaskId()))
+						.collect(Collectors.toMap(WmScorePackageSettleNote::getTaskId, Function.identity()));
+				taskIPage.getRecords().forEach(wmTask -> {
+					WmScorePackageSettleNote settleNote = settleNoteMap.get(wmTask.getId());
+					if (settleNote != null) {
+						wmTask.setSettleStatus(settleNote.getSettleNoteStatus());
+					} else {
+						wmTask.setSettleStatus(Integer.valueOf(SettleStatusEnum.SETTLE_STATUS_NOTSETTLE.getVal()));
+					}
+				});
 			}
 		}
 

+ 2 - 1
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/impl/WmPayOffServiceImpl.java

@@ -323,7 +323,7 @@ public class WmPayOffServiceImpl extends ServiceImpl<WmPayOffMapper, WmPayOff> i
 			// note存在则直接获取
 			WmScorePackageSettleNote settleNote = taskSettleNoteMap.get(taskId);
 			if (settleNote != null) {
-				toSettleNotes.add(note);
+				toSettleNotes.add(settleNote);
 				continue;
 			}
 
@@ -332,6 +332,7 @@ public class WmPayOffServiceImpl extends ServiceImpl<WmPayOffMapper, WmPayOff> i
 			note.setSettleAmount(BigDecimal.valueOf(task.getScore()));
 			note.setSettleNo(IdUtil.fastSimpleUUID());
 			note.setPackageId(scorePackageId);
+			note.setTaskId(taskId);
 			note.setDiscount(BigDecimal.ONE);
 			note.setUserId(task.getTaskUserId());
 			note.setSettleNoteStatus(Integer.valueOf(SettleStatusEnum.SETTLE_STATUS_NOTSETTLE.getVal()));

+ 14 - 3
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/impl/WmScorePackageSettleNoteServiceImpl.java

@@ -322,7 +322,12 @@ public class WmScorePackageSettleNoteServiceImpl extends ServiceImpl<WmScorePack
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	public R<?> batchSaveSettleInfo(List<WmScorePackageSettleNote> noteList) {
-		noteList.forEach(this::saveSettleInfo);
+		for (WmScorePackageSettleNote note : noteList) {
+			R settleResult = this.saveSettleInfo(note);
+			if (settleResult.getCode() != 0) {
+				throw new RuntimeException(settleResult.getMsg());
+			}
+		}
 		return R.ok();
 	}
 
@@ -428,7 +433,6 @@ public class WmScorePackageSettleNoteServiceImpl extends ServiceImpl<WmScorePack
 		if (null != note.getId()) {
 			WmScorePackageSettleNote oldData = this.baseMapper.selectById(note.getId());
 			if (0 != oldData.getSettleNoteStatus()) {
-
 				return R.failed("状态异常,不能提交");
 			}
 			updateEntity = new WmScorePackageSettleNote();
@@ -438,6 +442,7 @@ public class WmScorePackageSettleNoteServiceImpl extends ServiceImpl<WmScorePack
 			updateEntity.setInvoiceType(note.getInvoiceType());
 			updateEntity.setCategoryName(note.toCategoryName());
 			updateEntity.setSettleAmount(note.getSettleAmount());
+			updateEntity.setActualAmount(note.getActualAmount());
 			updateEntity.setSettleNoteStatus(9);
 			updateEntity.setSubTime(localDateTime);
 			updateEntity.setUpdateTime(localDateTime);
@@ -456,6 +461,7 @@ public class WmScorePackageSettleNoteServiceImpl extends ServiceImpl<WmScorePack
 			entity.setInvoiceType(note.getInvoiceType());
 			entity.setCategoryName(note.toCategoryName());
 			entity.setSettleAmount(note.getSettleAmount());
+			entity.setActualAmount(note.getActualAmount());
 			entity.setDiscount(new BigDecimal(1));
 			entity.setPackageId(note.getPackageId());
 			entity.setTaskId(note.getTaskId());
@@ -484,7 +490,12 @@ public class WmScorePackageSettleNoteServiceImpl extends ServiceImpl<WmScorePack
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	public R<?> batchSubSettleInfo(List<WmScorePackageSettleNote> noteList) {
-		noteList.forEach(this::subSettleInfo);
+		for (WmScorePackageSettleNote note : noteList) {
+			R settleResult = this.subSettleInfo(note);
+			if (settleResult.getCode() != 0) {
+				throw new RuntimeException(settleResult.getMsg());
+			}
+		}
 		return R.ok();
 	}
 

+ 3 - 0
hnqz-upms/hnqz-upms-biz/src/main/resources/mapper/WmScorePackageSettleNoteMapper.xml

@@ -125,6 +125,9 @@
 		<if test="query.settleNoteStatus != null">
 			AND e.settle_note_status = #{query.settleNoteStatus}
 		</if>
+		<if test="query.realName != null">
+			AND u.realname like concat('%',#{query.realName},'%')
+		</if>
 		ORDER BY e.sub_time DESC, t.id
 	</select>