소스 검색

feat:拒绝后的 可以新增相同阶段了

shc 4 달 전
부모
커밋
2bbe18ef4a

+ 87 - 71
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/service/impl/WmPackageRedemptionNoticeServiceImpl.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.qunzhixinxi.hnqz.admin.api.dto.WmPkgDTO;
 import com.qunzhixinxi.hnqz.admin.api.entity.WmPackageRedemptionNotice;
+import com.qunzhixinxi.hnqz.admin.api.entity.WmPackageRedemptionNotice.CheckState;
 import com.qunzhixinxi.hnqz.admin.api.model.WmPkgRedemptionNoticeItemModel;
 import com.qunzhixinxi.hnqz.admin.mapper.WmPackageRedemptionNoticeMapper;
 import com.qunzhixinxi.hnqz.admin.service.WmPackageRedemptionNoticeService;
@@ -24,75 +25,90 @@ import java.time.LocalDateTime;
 @Slf4j
 @Service
 @AllArgsConstructor
-public class WmPackageRedemptionNoticeServiceImpl extends ServiceImpl<WmPackageRedemptionNoticeMapper, WmPackageRedemptionNotice> implements WmPackageRedemptionNoticeService {
-
-
-    @Override
-    public Boolean createPackageRedemptionNotice(WmPkgDTO.OnRedemptionNoticeCreate resource, HnqzUser user) {
-
-        LocalDateTime now = LocalDateTime.now();
-        String username = user.getUsername();
-
-        WmPackageRedemptionNotice notice = new WmPackageRedemptionNotice();
-        notice.setPackageId(resource.getPackageId());
-        notice.setStep(resource.getStep());
-        notice.setRedemptionResult(resource.getItems().toArray(new WmPkgRedemptionNoticeItemModel[0]));
-        notice.setFromEntId(resource.getFromEntId());
-        notice.setToEntId(resource.getToEntId());
-        notice.setCurrentRedemptionScore(resource.getCurrentRedemptionScore());
-        notice.setCurrentRedemptionRate(resource.getCurrentRedemptionRate());
-        notice.setCurrentRedemptionTotalAmount(resource.getTotalAmount());
-        notice.setCurrentRedemptionTotal(resource.getCurrentRedemptionTotal());
-        notice.setNoticeState(WmPackageRedemptionNotice.NoticeState.PENDING.getState());
-        notice.setCheckState(WmPackageRedemptionNotice.CheckState.CKT2.getState());
-        notice.setCreateBy(username);
-        notice.setCreateTime(now);
-        notice.setUpdateBy(username);
-        notice.setUpdateTime(now);
-
-        return this.save(notice);
-    }
-
-    @Override
-    public boolean hasNotice(Integer packageId, Integer step) {
-        return this.count(Wrappers.<WmPackageRedemptionNotice>lambdaQuery()
-                .eq(WmPackageRedemptionNotice::getPackageId, packageId).eq(WmPackageRedemptionNotice::getStep, step)) > 0;
-    }
-
-    @Override
-    public boolean hasRead(Integer packageId) {
-        return this.count(Wrappers.<WmPackageRedemptionNotice>lambdaQuery()
-                .eq(WmPackageRedemptionNotice::getPackageId, packageId).ne(WmPackageRedemptionNotice::getNoticeState, WmPackageRedemptionNotice.NoticeState.SEND.getState())) > 0;
-    }
-
-    @Override
-    @Transactional(rollbackFor = Exception.class)
-    public Boolean readRedemptionNotice(WmPkgDTO.OnNoticeRead resource, HnqzUser user) {
-
-
-        WmPackageRedemptionNotice notice = new WmPackageRedemptionNotice();
-        notice.setNoticeId(resource.getNoticeId());
-        notice.setNoticeState(WmPackageRedemptionNotice.NoticeState.READ.getState());
-        notice.setUpdateBy(user.getUsername());
-        notice.setUpdateTime(LocalDateTime.now());
-
-        return this.updateById(notice);
-    }
-
-    @Override
-    public Boolean doAcceptNotice(WmPkgDTO.OnAcceptNotice resource, HnqzUser user) {
-
-        boolean accept = WmPackageRedemptionNotice.NoticeState.CONFIRM.getState().equals(resource.getState());
-
-        WmPackageRedemptionNotice notice = new WmPackageRedemptionNotice();
-        notice.setNoticeId(resource.getNoticeId());
-        notice.setAccept(accept);
-        notice.setNoticeState(accept ? WmPackageRedemptionNotice.NoticeState.CONFIRM.getState() : WmPackageRedemptionNotice.NoticeState.ARGUE.getState());
-        notice.setAcceptRemarks(resource.getRemarks());
-        notice.setAcceptTime(LocalDateTime.now());
-        notice.setUpdateBy(user.getUsername());
-        notice.setUpdateTime(LocalDateTime.now());
-
-        return this.updateById(notice);
-    }
+public class WmPackageRedemptionNoticeServiceImpl
+    extends ServiceImpl<WmPackageRedemptionNoticeMapper, WmPackageRedemptionNotice>
+    implements WmPackageRedemptionNoticeService {
+
+  @Override
+  public Boolean createPackageRedemptionNotice(
+      WmPkgDTO.OnRedemptionNoticeCreate resource, HnqzUser user) {
+
+    LocalDateTime now = LocalDateTime.now();
+    String username = user.getUsername();
+
+    WmPackageRedemptionNotice notice = new WmPackageRedemptionNotice();
+    notice.setPackageId(resource.getPackageId());
+    notice.setStep(resource.getStep());
+    notice.setRedemptionResult(resource.getItems().toArray(new WmPkgRedemptionNoticeItemModel[0]));
+    notice.setFromEntId(resource.getFromEntId());
+    notice.setToEntId(resource.getToEntId());
+    notice.setCurrentRedemptionScore(resource.getCurrentRedemptionScore());
+    notice.setCurrentRedemptionRate(resource.getCurrentRedemptionRate());
+    notice.setCurrentRedemptionTotalAmount(resource.getTotalAmount());
+    notice.setCurrentRedemptionTotal(resource.getCurrentRedemptionTotal());
+    notice.setNoticeState(WmPackageRedemptionNotice.NoticeState.PENDING.getState());
+    notice.setCheckState(WmPackageRedemptionNotice.CheckState.CKT2.getState());
+    notice.setCreateBy(username);
+    notice.setCreateTime(now);
+    notice.setUpdateBy(username);
+    notice.setUpdateTime(now);
+
+    return this.save(notice);
+  }
+
+  @Override
+  public boolean hasNotice(Integer packageId, Integer step) {
+    return this.count(
+            Wrappers.<WmPackageRedemptionNotice>lambdaQuery()
+                .eq(WmPackageRedemptionNotice::getPackageId, packageId)
+                .eq(WmPackageRedemptionNotice::getStep, step)
+                .notIn(WmPackageRedemptionNotice::getCheckState, CheckState.REJECTED.getState())
+    )
+        > 0;
+  }
+
+  @Override
+  public boolean hasRead(Integer packageId) {
+    return this.count(
+            Wrappers.<WmPackageRedemptionNotice>lambdaQuery()
+                .eq(WmPackageRedemptionNotice::getPackageId, packageId)
+                .ne(
+                    WmPackageRedemptionNotice::getNoticeState,
+                    WmPackageRedemptionNotice.NoticeState.SEND.getState()))
+        > 0;
+  }
+
+  @Override
+  @Transactional(rollbackFor = Exception.class)
+  public Boolean readRedemptionNotice(WmPkgDTO.OnNoticeRead resource, HnqzUser user) {
+
+    WmPackageRedemptionNotice notice = new WmPackageRedemptionNotice();
+    notice.setNoticeId(resource.getNoticeId());
+    notice.setNoticeState(WmPackageRedemptionNotice.NoticeState.READ.getState());
+    notice.setUpdateBy(user.getUsername());
+    notice.setUpdateTime(LocalDateTime.now());
+
+    return this.updateById(notice);
+  }
+
+  @Override
+  public Boolean doAcceptNotice(WmPkgDTO.OnAcceptNotice resource, HnqzUser user) {
+
+    boolean accept =
+        WmPackageRedemptionNotice.NoticeState.CONFIRM.getState().equals(resource.getState());
+
+    WmPackageRedemptionNotice notice = new WmPackageRedemptionNotice();
+    notice.setNoticeId(resource.getNoticeId());
+    notice.setAccept(accept);
+    notice.setNoticeState(
+        accept
+            ? WmPackageRedemptionNotice.NoticeState.CONFIRM.getState()
+            : WmPackageRedemptionNotice.NoticeState.ARGUE.getState());
+    notice.setAcceptRemarks(resource.getRemarks());
+    notice.setAcceptTime(LocalDateTime.now());
+    notice.setUpdateBy(user.getUsername());
+    notice.setUpdateTime(LocalDateTime.now());
+
+    return this.updateById(notice);
+  }
 }