Kaynağa Gözat

feat: 查询签到详情修改

lixuesong 3 yıl önce
ebeveyn
işleme
68c4da027f

+ 27 - 4
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/controller/ApiController.java

@@ -2466,10 +2466,33 @@ public class ApiController {
 									.eq(WmUserSignDetail::getSignId, userSign.getId()));
 							if (userSignDetail != null) {
 								if (ArrayUtil.isNotEmpty(userSignDetail.getPurpose())) {
-									String[] purposeNameArr = Stream.of(userSignDetail.getPurpose())
-											.map(s -> UserSignPurposeEnum.resolve(s).getName())
-											.toArray(String[]::new);
-									userSignDetail.setPurposeName(purposeNameArr);
+									List<Integer> purposeList = Stream.of(userSignDetail.getPurpose())
+											.map(Integer::parseInt)
+											.collect(Collectors.toList());
+									String dictType = null;
+									switch (userSign.getSignEntType()) {
+										case "1":
+											dictType = "user_sign_detail_purpose";
+											break;
+										case "2":
+											dictType = "user_sign_detail_distribution_purpose";
+											break;
+										case "3":
+											dictType = "user_sign_detail_pharmacy_purpose";
+											break;
+										default:
+											dictType = "";
+									}
+									List<SysDictItem> itemList = sysDictItemService.list(Wrappers.<SysDictItem>lambdaQuery()
+											.in(SysDictItem::getValue, purposeList)
+											.eq(SysDictItem::getType, dictType)
+											.eq(SysDictItem::getDelFlag, DelEnum.NOT_DEL.val()));
+									if (CollUtil.isNotEmpty(itemList)) {
+										String[] purposeNameArr = itemList.stream()
+												.map(SysDictItem::getLabel)
+												.toArray(String[]::new);
+										userSignDetail.setPurposeName(purposeNameArr);
+									}
 								}
 								if (StrUtil.isNotBlank(userSignDetail.getResult())) {
 									userSignDetail.setResultName(UserSignResultEnum.resolve(userSignDetail.getResult()).getName());