Răsfoiți Sursa

采购审批下达

lichaoliu 4 ani în urmă
părinte
comite
ab07ef3a75

+ 23 - 4
src/main/java/com/migao/controller/PurchasingApprovalController.java

@@ -50,19 +50,38 @@ public class PurchasingApprovalController {
     @ApiOperation("审批通过")
     @PostMapping(value = "/approve")
     public ResponseBean<?> approve(
-            @RequestParam Integer id
+            @ApiParam("项目id") @RequestParam Integer projectId
     ) {
-        return purchasingApprovalService.approve(id);
+        return purchasingApprovalService.approve(projectId);
     }
 
     @ApiOperationSupport(order = 4)
     @ApiOperation("审批拒绝")
     @PostMapping(value = "/reject")
     public ResponseBean<?> reject(
-            @RequestParam Integer id
+            @ApiParam("项目id") @RequestParam Integer projectId
     ) {
-        return purchasingApprovalService.reject(id);
+        return purchasingApprovalService.reject(projectId);
+    }
+    @ApiOperationSupport(order = 5)
+    @ApiOperation("结果下达")
+    @PostMapping(value = "/transmit")
+    public ResponseBean<?> transmit(
+            @ApiParam("项目id") @RequestParam Integer projectId,
+            @ApiParam("邮箱") @RequestParam String email,
+            @ApiParam("公司") @RequestParam String company
+    ) {
+        return purchasingApprovalService.transmit(projectId,email,company);
     }
 
+    @ApiOperationSupport(order = 6)
+    @ApiOperation("合同录入")
+    @PostMapping(value = "/contractEntry")
+    public ResponseBean<?> contractEntry(
+            @ApiParam("项目id") @RequestParam Integer projectId,
+            @ApiParam("文件id") @RequestParam Integer fileId
+    ) {
+        return purchasingApprovalService.contractEntry(projectId,fileId);
+    }
 
 }

+ 34 - 0
src/main/java/com/migao/entity/po/ProjectFile.java

@@ -0,0 +1,34 @@
+package com.migao.entity.po;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.persistence.*;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@Builder
+@Entity
+@Table(name = "t_project_file")
+@org.hibernate.annotations.Table(appliesTo = "t_project_file", comment = "项目合同文件表")
+@TableName("t_project_file")
+public class ProjectFile {
+
+    @Id
+    @TableId(type = IdType.AUTO)
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
+    @Column(name = "id", columnDefinition = "int COMMENT '主键'")
+    private Integer id;
+
+    @Column(name = "file_id", columnDefinition = "int COMMENT '文件id'")
+    private Integer fileId;
+
+    @Column(name = "project_id", columnDefinition = "int COMMENT '项目id'")
+    private Integer projectId;
+}

+ 10 - 0
src/main/java/com/migao/entity/po/PurchasingApproval.java

@@ -29,12 +29,22 @@ public class PurchasingApproval implements Serializable {
     @Column(name = "parent_id", columnDefinition = "bigint(20) comment '父id'")
     private Integer parentId;
 
+
+    @Column(name = "project_id", columnDefinition = "bigint(20) comment '项目id'")
+    private Integer projectId;
+
     @Column(name = "stage", columnDefinition = "varchar(255) comment '采购阶段'")
     private String stage;
 
     @Column(name = "status", columnDefinition = "varchar(255) comment '完成状态'")
     private ProjectStatus status;
 
+    @Column(name = "company", columnDefinition = "varchar(255) comment '采购公司'")
+    private String company;
+
+    @Column(name = "email", columnDefinition = "varchar(255) comment '内网邮箱'")
+    private String email;
+
     @TableField(fill = FieldFill.INSERT_UPDATE)
     @Column(name = "deleted", columnDefinition = "tinyint(4) comment '逻辑删除 0未删除 1已删除'")
     private Integer deleted;

+ 7 - 0
src/main/java/com/migao/mapper/ProjectFileMapper.java

@@ -0,0 +1,7 @@
+package com.migao.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.migao.entity.po.ProjectFile;
+
+public interface ProjectFileMapper extends BaseMapper<ProjectFile> {
+}

+ 4 - 0
src/main/java/com/migao/service/PurchasingApprovalService.java

@@ -18,4 +18,8 @@ public interface PurchasingApprovalService{
     ResponseBean<?> approve(Integer id);
 
     ResponseBean<?> reject(Integer id);
+
+    ResponseBean<?> transmit(Integer projectId, String email, String company);
+
+    ResponseBean<?> contractEntry(Integer projectId, Integer fileId);
 }

+ 36 - 2
src/main/java/com/migao/service/impl/PurchasingApprovalServiceImpl.java

@@ -9,11 +9,13 @@ import com.migao.config.response.ResponseBean;
 import com.migao.config.response.ResponseBuilder;
 import com.migao.entity.po.Project;
 import com.migao.entity.po.ProjectDemand;
+import com.migao.entity.po.ProjectFile;
 import com.migao.entity.po.PurchasingApproval;
 import com.migao.entity.vo.req.ProjectPageQueryReq;
 import com.migao.entity.vo.req.PurchasingApprovalPageQueryReq;
 import com.migao.entity.vo.res.ProjectQueryRes;
 import com.migao.mapper.ProjectDemandMapper;
+import com.migao.mapper.ProjectFileMapper;
 import com.migao.mapper.ProjectMapper;
 import com.migao.mapper.PurchasingApprovalMapper;
 import com.migao.service.ProjectService;
@@ -39,6 +41,8 @@ public class PurchasingApprovalServiceImpl extends ServiceImpl<PurchasingApprova
     private PurchasingApprovalMapper purchasingApprovalMapper;
     @Resource
     private ProjectDemandMapper projectDemandMapper;
+    @Resource
+    private ProjectFileMapper projectFileMapper;
 
     @Override
     public ResponseBean<PageBean<ProjectQueryRes>> pageQuery(PurchasingApprovalPageQueryReq purchasingApprovalPageQueryReq) {
@@ -90,12 +94,12 @@ public class PurchasingApprovalServiceImpl extends ServiceImpl<PurchasingApprova
     @Override
     public ResponseBean<?> submit(Integer projectId, List<Integer> demandIdList) {
         Project project = projectMapper.selectById(projectId);
-        if (project==null){
+        if (project == null) {
             return ResponseBuilder.fail("项目不存在");
         }
         //绑定项目和需求
         for (Integer id : demandIdList) {
-            ProjectDemand projectDemand=new ProjectDemand();
+            ProjectDemand projectDemand = new ProjectDemand();
             projectDemand.setProjectrId(projectId);
             projectDemand.setDemandId(id);
             projectDemandMapper.insert(projectDemand);
@@ -127,4 +131,34 @@ public class PurchasingApprovalServiceImpl extends ServiceImpl<PurchasingApprova
         projectMapper.updateById(project);
         return ResponseBuilder.ok();
     }
+
+    @Override
+    public ResponseBean<?> transmit(Integer projectId, String email, String company) {
+        Project project = projectMapper.selectById(projectId);
+        if (project == null) {
+            ResponseBuilder.fail("项目不存在");
+        }
+        project.setOrderStatus(ProjectStatus.HAS_ORDERED.getName());
+        projectMapper.updateById(project);
+        PurchasingApproval purchasingApproval = PurchasingApproval.builder()
+                .deleted(0)
+                .projectId(projectId)
+                .email(email)
+                .company(company)
+                .status(ProjectStatus.HAS_ORDERED)
+                .build();
+        purchasingApprovalMapper.insert(purchasingApproval);
+
+        return ResponseBuilder.ok();
+    }
+
+    @Override
+    public ResponseBean<?> contractEntry(Integer projectId, Integer fileId) {
+        ProjectFile projectFile= ProjectFile.builder()
+                .projectId(projectId)
+                .fileId(fileId)
+                .build();
+        projectFileMapper.insert(projectFile);
+        return ResponseBuilder.ok();
+    }
 }