|
@@ -0,0 +1,126 @@
|
|
|
+package com.dragonsoft.dcuc.approve.service.impl;
|
|
|
+
|
|
|
+import cn.hutool.core.bean.BeanUtil;
|
|
|
+import cn.hutool.core.util.ObjectUtil;
|
|
|
+import cn.hutool.core.util.StrUtil;
|
|
|
+import com.dragoninfo.dcuc.common.utils.ResponseUtil;
|
|
|
+import com.dragonsoft.dcuc.approve.mapper.ApproveTaskClassMapper;
|
|
|
+import com.dragonsoft.dcuc.approve.model.ApproveTaskClass;
|
|
|
+import com.dragonsoft.dcuc.approve.model.req.ApproveTaskClassAddReqVO;
|
|
|
+import com.dragonsoft.dcuc.approve.model.req.ApproveTaskClassUpdateReqVO;
|
|
|
+import com.dragonsoft.dcuc.approve.model.resp.ApproveTaskClassDetailRespVO;
|
|
|
+import com.dragonsoft.dcuc.approve.service.IApproveTaskClassService;
|
|
|
+import com.dragonsoft.duceap.base.entity.http.ResponseDTO;
|
|
|
+import com.dragonsoft.duceap.base.entity.http.ResponseStatus;
|
|
|
+import com.dragonsoft.duceap.base.enums.BooleanEnum;
|
|
|
+import com.dragonsoft.duceap.core.entity.page.PageImpl;
|
|
|
+import com.dragonsoft.duceap.core.search.Searchable;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.data.domain.Page;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+/**
|
|
|
+ * <p>
|
|
|
+ *
|
|
|
+ * </p>
|
|
|
+ *
|
|
|
+ * @author huangzqa
|
|
|
+ * @date 2023/6/9
|
|
|
+ */
|
|
|
+@Service
|
|
|
+public class ApproveTaskClassServiceImpl implements IApproveTaskClassService {
|
|
|
+
|
|
|
+ private ApproveTaskClassMapper approveTaskClassMapper;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ public void setApproveTaskClassMapper(ApproveTaskClassMapper approveTaskClassMapper) {
|
|
|
+ this.approveTaskClassMapper = approveTaskClassMapper;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseDTO<ApproveTaskClass> save(ApproveTaskClassAddReqVO approveTaskClassAddReqVO) {
|
|
|
+ String parentId = approveTaskClassAddReqVO.getParentId();
|
|
|
+ if (StrUtil.isNotBlank(parentId)) {
|
|
|
+ ApproveTaskClass parentApproveTaskClass = approveTaskClassMapper.selectById(parentId);
|
|
|
+ if (ObjectUtil.isNull(parentApproveTaskClass)) {
|
|
|
+ return ResponseUtil.dtoFail("父任务类型不存在");
|
|
|
+ }
|
|
|
+ approveTaskClassAddReqVO.setTaskClassCode(parentApproveTaskClass.getTaskClassCode());
|
|
|
+ approveTaskClassAddReqVO.setTaskClassName(parentApproveTaskClass.getTaskClassName());
|
|
|
+ }
|
|
|
+
|
|
|
+ ApproveTaskClass approveTaskClass = new ApproveTaskClass();
|
|
|
+ BeanUtil.copyProperties(approveTaskClassAddReqVO, approveTaskClass);
|
|
|
+
|
|
|
+ approveTaskClass.setDeleted(BooleanEnum.FALSE.value);
|
|
|
+ approveTaskClassMapper.insert(approveTaskClass);
|
|
|
+ return ResponseUtil.newInstance(approveTaskClass);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseDTO<ApproveTaskClass> update(ApproveTaskClassUpdateReqVO approveTaskClassUpdateReqVO) {
|
|
|
+ String id = approveTaskClassUpdateReqVO.getId();
|
|
|
+ ApproveTaskClass approveTaskClass = approveTaskClassMapper.selectById(id);
|
|
|
+ if (ObjectUtil.isNull(approveTaskClass)) {
|
|
|
+ return ResponseUtil.dtoFail("任务类型不存在");
|
|
|
+ }
|
|
|
+ String dbParentId = approveTaskClass.getParentId();
|
|
|
+ String parentId = approveTaskClassUpdateReqVO.getParentId();
|
|
|
+ BeanUtil.copyProperties(approveTaskClassUpdateReqVO, approveTaskClass);
|
|
|
+
|
|
|
+ if (!dbParentId.equalsIgnoreCase(parentId)) {
|
|
|
+ ApproveTaskClass parentApproveTaskClass = approveTaskClassMapper.selectById(parentId);
|
|
|
+ if (ObjectUtil.isNull(parentApproveTaskClass)) {
|
|
|
+ return ResponseUtil.dtoFail("父任务类型不存在");
|
|
|
+ }
|
|
|
+ approveTaskClass.setTaskClassCode(parentApproveTaskClass.getTaskClassCode());
|
|
|
+ approveTaskClass.setTaskClassName(parentApproveTaskClass.getTaskClassName());
|
|
|
+ }
|
|
|
+
|
|
|
+ approveTaskClassMapper.updateById(approveTaskClass);
|
|
|
+ return ResponseUtil.newInstance(approveTaskClass);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseDTO<ApproveTaskClassDetailRespVO> detail(String id) {
|
|
|
+ ApproveTaskClass approveTaskClass = approveTaskClassMapper.selectById(id);
|
|
|
+ if (ObjectUtil.isNull(approveTaskClass)) {
|
|
|
+ return ResponseUtil.dtoFail("任务类型不存在");
|
|
|
+ }
|
|
|
+
|
|
|
+ ApproveTaskClassDetailRespVO approveTaskClassDetailRespVO = new ApproveTaskClassDetailRespVO();
|
|
|
+ BeanUtil.copyProperties(approveTaskClass, approveTaskClassDetailRespVO);
|
|
|
+ return ResponseUtil.newInstance(approveTaskClassDetailRespVO);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Page<ApproveTaskClassDetailRespVO> page(Searchable searchable) {
|
|
|
+ Page<ApproveTaskClass> page = approveTaskClassMapper.pagingBySearchable(searchable);
|
|
|
+ List<ApproveTaskClass> content = page.getContent();
|
|
|
+
|
|
|
+ List<ApproveTaskClassDetailRespVO> voList = new ArrayList<>(content.size());
|
|
|
+ for (ApproveTaskClass approveTaskClass : content) {
|
|
|
+ ApproveTaskClassDetailRespVO approveTaskClassDetailRespVO = new ApproveTaskClassDetailRespVO();
|
|
|
+ BeanUtil.copyProperties(approveTaskClass, approveTaskClassDetailRespVO);
|
|
|
+ voList.add(approveTaskClassDetailRespVO);
|
|
|
+ }
|
|
|
+
|
|
|
+ return new PageImpl<>(voList, page.getPageable(), page.getTotalElements());
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ResponseStatus delete(String id) {
|
|
|
+ ApproveTaskClass approveTaskClass = approveTaskClassMapper.selectById(id);
|
|
|
+ if (ObjectUtil.isNull(approveTaskClass)) {
|
|
|
+ return ResponseStatus.fail("任务类型不存在");
|
|
|
+ }
|
|
|
+ approveTaskClass.setDeleted(BooleanEnum.TRUE.value);
|
|
|
+ approveTaskClassMapper.updateById(approveTaskClass);
|
|
|
+ approveTaskClassMapper.deleteById(id);
|
|
|
+ return ResponseStatus.success();
|
|
|
+ }
|
|
|
+}
|