Bladeren bron

跟单记录

24282 2 jaren geleden
bovenliggende
commit
f3e961fe95

+ 27 - 0
hx-common/src/main/java/com/fjhx/common/controller/documentary/DocumentaryRecordController.java

@@ -1,9 +1,12 @@
 package com.fjhx.common.controller.documentary;
 
+import com.fjhx.common.entity.documentary.dto.DocumentaryRecordDto;
 import com.fjhx.common.entity.documentary.dto.DocumentaryRecordSelectDto;
 import com.fjhx.common.entity.documentary.vo.DocumentaryRecordInfoVo;
 import com.fjhx.common.service.documentary.DocumentaryRecordService;
+import com.ruoyi.common.core.domain.BaseSelectDto;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -33,4 +36,28 @@ public class DocumentaryRecordController {
         return documentaryRecordService.getInfo(dto);
     }
 
+    /**
+     * 添加跟单记录
+     */
+    @PostMapping("/add")
+    public void add(@Validated @RequestBody DocumentaryRecordDto dto) {
+        documentaryRecordService.add(dto);
+    }
+
+    /**
+     * 编辑跟单记录
+     */
+    @PostMapping("/edit")
+    public void edit(@RequestBody DocumentaryRecordDto dto) {
+        documentaryRecordService.edit(dto);
+    }
+
+    /**
+     * 删除跟单记录
+     */
+    @PostMapping("/delete")
+    public void delete(@RequestBody BaseSelectDto dto) {
+        documentaryRecordService.delete(dto.getId());
+    }
+
 }

+ 25 - 0
hx-common/src/main/java/com/fjhx/common/entity/documentary/dto/DocumentaryRecordDto.java

@@ -0,0 +1,25 @@
+package com.fjhx.common.entity.documentary.dto;
+
+import com.fjhx.common.entity.documentary.po.DocumentaryRecord;
+import com.fjhx.file.entity.ObsFile;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * 跟单记录新增编辑入参实体
+ *
+ * @author
+ * @since 2023-04-21
+ */
+@Getter
+@Setter
+public class DocumentaryRecordDto extends DocumentaryRecord {
+
+    /**
+     * 文件列表
+     */
+    private List<ObsFile> fileList;
+
+}

+ 3 - 0
hx-common/src/main/java/com/fjhx/common/entity/documentary/po/DocumentaryRecord.java

@@ -5,6 +5,7 @@ import com.ruoyi.common.core.domain.BasePo;
 import lombok.Getter;
 import lombok.Setter;
 
+import javax.validation.constraints.NotNull;
 import java.util.Date;
 
 /**
@@ -23,11 +24,13 @@ public class DocumentaryRecord extends BasePo {
     /**
      * 跟单id
      */
+    @NotNull(message = "跟单id不能为空")
     private Long documentaryId;
 
     /**
      * 业务id
      */
+    @NotNull(message = "业务id不能为空")
     private Long businessId;
 
     /**

+ 16 - 0
hx-common/src/main/java/com/fjhx/common/service/documentary/DocumentaryRecordService.java

@@ -1,5 +1,6 @@
 package com.fjhx.common.service.documentary;
 
+import com.fjhx.common.entity.documentary.dto.DocumentaryRecordDto;
 import com.fjhx.common.entity.documentary.dto.DocumentaryRecordSelectDto;
 import com.fjhx.common.entity.documentary.po.DocumentaryRecord;
 import com.fjhx.common.entity.documentary.vo.DocumentaryRecordInfoVo;
@@ -21,4 +22,19 @@ public interface DocumentaryRecordService extends BaseService<DocumentaryRecord>
      */
     DocumentaryRecordInfoVo getInfo(DocumentaryRecordSelectDto dto);
 
+    /**
+     * 添加跟单记录
+     */
+    void add(DocumentaryRecordDto dto);
+
+    /**
+     * 编辑跟单记录
+     */
+    void edit(DocumentaryRecordDto dto);
+
+    /**
+     * 删除跟单记录
+     */
+    void delete(Long id);
+
 }

+ 29 - 2
hx-common/src/main/java/com/fjhx/common/service/documentary/impl/DocumentaryRecordServiceImpl.java

@@ -1,12 +1,14 @@
 package com.fjhx.common.service.documentary.impl;
 
 import cn.hutool.core.bean.BeanUtil;
+import com.baomidou.dynamic.datasource.annotation.DSTransactional;
 import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fjhx.common.constant.SourceConstant;
 import com.fjhx.common.entity.documentary.bo.DocumentaryData;
+import com.fjhx.common.entity.documentary.dto.DocumentaryRecordDto;
 import com.fjhx.common.entity.documentary.dto.DocumentaryRecordSelectDto;
 import com.fjhx.common.entity.documentary.eums.DocumentaryTypeEnum;
 import com.fjhx.common.entity.documentary.po.Documentary;
@@ -129,6 +131,31 @@ public class DocumentaryRecordServiceImpl extends ServiceImpl<DocumentaryRecordM
         return vo;
     }
 
+    @DSTransactional
+    @Override
+    public void add(DocumentaryRecordDto dto) {
+        save(dto);
+        ObsFileUtil.saveFile(dto.getFileList(), dto.getId());
+    }
+
+    @DSTransactional
+    @Override
+    public void edit(DocumentaryRecordDto dto) {
+        if (dto.getId() == null) {
+            throw new ServiceException("跟单记录id不能为空");
+        }
+
+        updateById(dto);
+        ObsFileUtil.editFile(dto.getFileList(), dto.getId());
+    }
+
+    @DSTransactional
+    @Override
+    public void delete(Long id) {
+        removeById(id);
+        ObsFileUtil.removeFile(id);
+    }
+
     /**
      * 获取跟单配置
      *
@@ -177,10 +204,10 @@ public class DocumentaryRecordServiceImpl extends ServiceImpl<DocumentaryRecordM
         }
 
         // 业务id
-        List<Long> businessId = records.stream().map(DocumentaryData::getId).collect(Collectors.toList());
+        List<Long> businessIdList = records.stream().map(DocumentaryData::getId).collect(Collectors.toList());
 
         // 根据业务id查询跟单记录
-        List<DocumentaryRecord> list = list(q -> q.eq(DocumentaryRecord::getBusinessId, businessId));
+        List<DocumentaryRecord> list = list(q -> q.in(DocumentaryRecord::getBusinessId, businessIdList));
 
         // 查询跟单记录文件
         List<Long> documentaryRecordList = list.stream().map(BaseIdPo::getId).collect(Collectors.toList());