Browse Source

工时管理-测试

buzhanyi 11 months ago
parent
commit
7e4c4b7e3d
23 changed files with 645 additions and 301 deletions
  1. 2 0
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/api/ManHourInfoApi.java
  2. 9 5
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/api/ManHourServiceApi.java
  3. 2 0
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/api/TaskInfoApi.java
  4. 5 0
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/api/TaskInfoServiceApi.java
  5. 21 2
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/controller/ManHourController.java
  6. 16 13
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/controller/SubmitUserTaskController.java
  7. 12 0
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/controller/TaskInfoController.java
  8. 93 38
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/entity/ManHourInfoEntity.java
  9. 0 116
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/entity/ManHourJobInfo.java
  10. 10 9
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/entity/TaskInfoEntity.java
  11. 57 0
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/enums/ManHourStatus.java
  12. 58 0
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/enums/ProTaskStatus.java
  13. 8 4
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/enums/TaskStatus.java
  14. 0 34
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/mapper/ManHourJobMapper.java
  15. 5 4
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/mapper/ManHourMapper.java
  16. 8 0
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/mapper/TaskInfoMapper.java
  17. 4 2
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/service/ManHourService.java
  18. 8 0
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/service/TaskInfoService.java
  19. 76 53
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/service/impl/ManHourServiceImpl.java
  20. 9 6
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/service/impl/TaskInfoServiceImpl.java
  21. 176 11
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/vo/ManHourInfoVo.java
  22. 62 0
      application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/vo/ManHourJobVo.java
  23. 4 4
      application-webadmin/src/main/resources/application-dev.yml

+ 2 - 0
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/api/ManHourInfoApi.java

@@ -20,6 +20,8 @@ public interface ManHourInfoApi extends ApiMixin<ManHourInfoVo, Integer> {
 
     ResMsg addManHour(ManHourInfoVo manHourInfoVo);
 
+    ResMsg submitManHour(List<ManHourInfoVo> manHourInfoVos);
+
     ResMsg deleteManHour(List<ManHourInfoVo> manHourInfoVos);
 
     ResMsg findManHourByID(ManHourInfoVo manHourInfoVo);

+ 9 - 5
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/api/ManHourServiceApi.java

@@ -1,11 +1,10 @@
 package com.ankaibei.workFlow.webadmin.ankaibei.api;
 
 import com.ankaibei.workFlow.webadmin.ankaibei.entity.ManHourInfoEntity;
-import com.ankaibei.workFlow.webadmin.ankaibei.entity.ManHourJobInfo;
 import com.ankaibei.workFlow.webadmin.ankaibei.service.ManHourService;
 import com.ankaibei.workFlow.webadmin.ankaibei.vo.ManHourInfoVo;
+import com.ankaibei.workFlow.webadmin.ankaibei.vo.ManHourJobVo;
 import com.ankaibei.workFlow.webadmin.ankaibei.vo.ResMsg;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
@@ -20,7 +19,7 @@ import java.util.List;
 @Service
 public class ManHourServiceApi implements ManHourInfoApi {
 
-    @Autowired
+    @Resource
     private ManHourService manHourService;
 
     @Override
@@ -32,8 +31,13 @@ public class ManHourServiceApi implements ManHourInfoApi {
     @Override
     public ResMsg addManHour(ManHourInfoVo manHourInfoVo) {
         ManHourInfoEntity manHourInfoEntity = this.copyProperties(manHourInfoVo, ManHourInfoEntity.class);
-        List<ManHourJobInfo> manHours = manHourInfoVo.getManHours();
-        return manHourService.addManHour(manHourInfoVo.getProjectId(), manHourInfoEntity, manHours);
+        List<ManHourJobVo> jobs = manHourInfoVo.getJobs();
+        return manHourService.addManHour(manHourInfoEntity, jobs);
+    }
+
+    @Override
+    public ResMsg submitManHour(List<ManHourInfoVo> manHourInfoVos) {
+        return manHourService.submitManHour(manHourInfoVos);
     }
 
     @Override

+ 2 - 0
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/api/TaskInfoApi.java

@@ -23,4 +23,6 @@ public interface TaskInfoApi extends ApiMixin<TaskInfoVo, Integer> {
     ResMsg performTask(TaskInfoVo taskInfoVo);
 
     ResMsg deleteTask(List<TaskInfoVo> taskInfoVos);
+
+    ResMsg findTaskIsFinish(String userId, String flowTaskStatus);
 }

+ 5 - 0
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/api/TaskInfoServiceApi.java

@@ -49,4 +49,9 @@ public class TaskInfoServiceApi implements TaskInfoApi {
         return taskInfoService.deleteTask(taskInfoVos);
     }
 
+    @Override
+    public ResMsg findTaskIsFinish(String userId, String flowTaskStatus) {
+        return taskInfoService.findTaskIsFinish(userId, flowTaskStatus);
+    }
+
 }

+ 21 - 2
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/controller/ManHourController.java

@@ -6,10 +6,12 @@ import com.ankaibei.workFlow.webadmin.ankaibei.enums.CodeEnum;
 import com.ankaibei.workFlow.webadmin.ankaibei.vo.ManHourInfoVo;
 import com.ankaibei.workFlow.webadmin.ankaibei.vo.ResMsg;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import java.util.List;
 
@@ -23,7 +25,7 @@ import java.util.List;
 @RequestMapping("/manHour")
 public class ManHourController {
 
-    @Autowired
+    @Resource
     private ManHourInfoApi manHourInfoApi;
 
     /**
@@ -46,7 +48,24 @@ public class ManHourController {
      * 新建工时
      */
     @RequestMapping("/addManHour")
-    public ResMsg addManHour(@RequestBody ManHourInfoVo manHourInfoVo, HttpServletRequest request) {
+    public ResMsg addManHour(@RequestBody ManHourInfoVo manHourInfoVo) {
+        manHourInfoVo.setCreateUser(TokenData.takeFromRequest().getUserId());
+        return manHourInfoApi.addManHour(manHourInfoVo);
+    }
+
+    /**
+     * 提交工时
+     */
+    @RequestMapping("/submitManHour")
+    public ResMsg submitManHour(@RequestBody List<ManHourInfoVo> manHourInfoVos) {
+        return manHourInfoApi.submitManHour(manHourInfoVos);
+    }
+
+    /**
+     * 新建工时
+     */
+    @RequestMapping("/editManHour")
+    public ResMsg editManHour(@RequestBody ManHourInfoVo manHourInfoVo) {
         manHourInfoVo.setCreateUser(TokenData.takeFromRequest().getUserId());
         return manHourInfoApi.addManHour(manHourInfoVo);
     }

+ 16 - 13
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/controller/SubmitUserTaskController.java

@@ -33,6 +33,7 @@ import com.ankaibei.workFlow.common.online.util.OnlineOperationHelper;
 import com.ankaibei.workFlow.webadmin.ankaibei.entity.ManHourInfoEntity;
 import com.ankaibei.workFlow.webadmin.ankaibei.enums.CodeEnum;
 import com.ankaibei.workFlow.webadmin.ankaibei.enums.CostEnum;
+import com.ankaibei.workFlow.webadmin.ankaibei.enums.ManHourStatus;
 import com.ankaibei.workFlow.webadmin.ankaibei.mapper.CommunicationMapper;
 import com.ankaibei.workFlow.webadmin.ankaibei.mapper.CostInfoMapper;
 import com.ankaibei.workFlow.webadmin.ankaibei.mapper.ManHourMapper;
@@ -48,8 +49,6 @@ import com.ankaibei.workFlow.webadmin.ankaibei.vo.ResMsg;
 import lombok.extern.slf4j.Slf4j;
 import org.flowable.engine.runtime.ProcessInstance;
 import org.flowable.task.api.Task;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -65,23 +64,23 @@ import java.util.Map;
 @RequestMapping("/submitUserTask")
 public class SubmitUserTaskController {
 
-    @Autowired
+    @Resource
     private FlowTaskStart flowTaskStart;
-    @Autowired
+    @Resource
     private CostInfoMapper costInfoMapper;
-    @Autowired
+    @Resource
     private FlowApiService flowApiService;
-    @Autowired
+    @Resource
     private FlowOperationHelper flowOperationHelper;
-    @Autowired
+    @Resource
     private FlowWorkOrderService flowWorkOrderService;
-    @Autowired
+    @Resource
     private OnlineOperationHelper onlineOperationHelper;
-    @Autowired
+    @Resource
     private OnlineOperationService onlineOperationService;
-    @Autowired
+    @Resource
     private FlowOnlineOperationService flowOnlineOperationService;
-    @Autowired
+    @Resource
     private FlowOnlineOperationServiceImpl flowOnlineOperationServiceImpl;
     @Resource
     private ManHourMapper manHourMapper;
@@ -309,8 +308,12 @@ public class SubmitUserTaskController {
                 projectInfoMapper.updateProjectFlowStatus(flowStatus + "", subVo.getApplyDataId());
             case MANHOUR:
                 ManHourInfoEntity byId = manHourMapper.getById(subVo.getApplyDataId());
-                String ratifyUser = byId.getRatifyUser() + userId + ",";
-                manHourMapper.updateManHourFlowStatus(flowStatus + "", ratifyUser, subVo.getApplyDataId());
+                String ratifyUser = byId.getRatifyUser() + "," + userId + ",";
+                if (flowStatus == FlowTaskStatus.REFUSED) {
+                    manHourMapper.updateManHourFlowStatus(ManHourStatus.REFUSE_ED.getCode(), flowStatus + "", ratifyUser, subVo.getApplyDataId());
+                } else if (flowStatus == FlowTaskStatus.FINISHED) {
+                    manHourMapper.updateManHourFlowStatus(ManHourStatus.FINISH_ED.getCode(), flowStatus + "", ratifyUser, subVo.getApplyDataId());
+                }
             case PROJECTTASKADD:
                 taskInfoMapper.updateTaskFlowStatus(flowStatus + "", subVo.getApplyDataId());
             case COMMUNICATION:

+ 12 - 0
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/controller/TaskInfoController.java

@@ -1,6 +1,7 @@
 package com.ankaibei.workFlow.webadmin.ankaibei.controller;
 
 import com.ankaibei.workFlow.common.core.object.TokenData;
+import com.ankaibei.workFlow.common.flow.constant.FlowTaskStatus;
 import com.ankaibei.workFlow.webadmin.ankaibei.api.TaskInfoApi;
 import com.ankaibei.workFlow.webadmin.ankaibei.enums.CodeEnum;
 import com.ankaibei.workFlow.webadmin.ankaibei.utils.JwtUtil;
@@ -87,5 +88,16 @@ public class TaskInfoController {
         return taskInfoApi.deleteTask(taskInfoVos);
     }
 
+    /**
+     * 查找登录用户参与的审批已完成的任务
+     *
+     * @return ResMsg
+     */
+    @RequestMapping("/findTaskIsFinish")
+    public ResMsg findTaskIsFinish() {
+        String userId = TokenData.takeFromRequest().getUserId();
+        return taskInfoApi.findTaskIsFinish(userId, FlowTaskStatus.FINISHED + "");
+    }
+
 
 }

File diff suppressed because it is too large
+ 93 - 38
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/entity/ManHourInfoEntity.java


+ 0 - 116
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/entity/ManHourJobInfo.java

@@ -1,116 +0,0 @@
-package com.ankaibei.workFlow.webadmin.ankaibei.entity;
-
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.Table;
-import java.math.BigDecimal;
-import java.util.Date;
-
-/**
- * @author
- * @version 1.0
- * @description:工时详细记录表
- * @date 2022/9/21 14:28
- */
-@Entity
-@Table(name = "man_hour_job_info", schema = "ankaibei", catalog = "")
-public class ManHourJobInfo {
-
-    /**
-     * 工时记录主键
-     */
-
-    @Id
-    @Column(name = "hour_id")
-    @GeneratedValue(strategy = GenerationType.IDENTITY)
-    private Integer hourId;
-    /**
-     * 主表主键
-     */
-    @Column(name = "man_id")
-    private Integer manId;
-    /**
-     * 工作日期
-     */
-    @Column(name = "manufacture_date")
-    private Date manufactureDate;
-
-    /**
-     * 工作时长(默认一天,小数点后只留1位)
-     */
-    @Column(name = "day")
-    private BigDecimal day;
-    /**
-     * 工作内容
-     */
-    @Column(name = "job_content")
-    private String jobContent;
-
-    public ManHourJobInfo() {
-    }
-
-
-    public Integer getHourId() {
-        return hourId;
-    }
-
-    public void setHourId(Integer hourId) {
-        this.hourId = hourId;
-    }
-
-
-    public Integer getManId() {
-        return manId;
-    }
-
-    public void setManId(Integer manId) {
-        this.manId = manId;
-    }
-
-
-    public Date getManufactureDate() {
-        return manufactureDate;
-    }
-
-    public void setManufactureDate(Date manufactureDate) {
-        this.manufactureDate = manufactureDate;
-    }
-
-    public BigDecimal getDay() {
-        return day;
-    }
-
-    public void setDay(BigDecimal day) {
-        this.day = day;
-    }
-
-    public String getJobContent() {
-        return jobContent;
-    }
-
-    public void setJobContent(String jobContent) {
-        this.jobContent = jobContent;
-    }
-
-    @Override
-    public String toString() {
-        return "ManHourJobInfo{" +
-                "hourId=" + hourId +
-                ", manId=" + manId +
-                ", manufactureDate=" + manufactureDate +
-                ", day=" + day +
-                ", jobContent='" + jobContent + '\'' +
-                '}';
-    }
-
-    public ManHourJobInfo(Integer hourId, Integer manId, Date manufactureDate, BigDecimal day, String jobContent) {
-        this.hourId = hourId;
-        this.manId = manId;
-        this.manufactureDate = manufactureDate;
-        this.day = day;
-        this.jobContent = jobContent;
-    }
-}

+ 10 - 9
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/entity/TaskInfoEntity.java

@@ -241,6 +241,16 @@ public class TaskInfoEntity {
         this.taskStatements = taskStatements;
     }
 
+    @Basic
+    @Column(name = "project_id")
+    public String getProjectId() {
+        return projectId;
+    }
+
+    public void setProjectId(String projectId) {
+        this.projectId = projectId;
+    }
+
     @Override
     public boolean equals(Object o) {
         if (this == o) return true;
@@ -254,13 +264,4 @@ public class TaskInfoEntity {
         return Objects.hash(taskId, targetTask, taskPriority, taskParticipant, startTime, endTime, taskStatus, taskCreator, taskIndex, taskStandard, taskStatements, projectId, createDate, processInstanceId, flowTaskStatus, processDefinitionId, isDelete);
     }
 
-    @Basic
-    @Column(name = "project_id")
-    public String getProjectId() {
-        return projectId;
-    }
-
-    public void setProjectId(String projectId) {
-        this.projectId = projectId;
-    }
 }

+ 57 - 0
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/enums/ManHourStatus.java

@@ -0,0 +1,57 @@
+package com.ankaibei.workFlow.webadmin.ankaibei.enums;
+
+/**
+ * 工时状态枚举类
+ *
+ * @author buzhanyi
+ */
+
+public enum ManHourStatus {
+
+    //0 未提交,1 审核中,2 已完成,3 已拒绝;
+    NO_ALLOCATION("0", "未提交"),
+    EXTENSION_ING("1", "审核中"),
+    REFUSE_ED("2", "已拒绝"),
+    FINISH_ED("3", "已通过");
+
+    /**
+     * 状态码
+     */
+    private final String code;
+    /**
+     * 信息
+     */
+    private final String reason;
+
+    /**
+     * 666666
+     */
+    ManHourStatus(String code, String reason) {
+        this.code = code;
+        this.reason = reason;
+    }
+
+    public String getCode() {
+        return code;
+    }
+
+    public String getReason() {
+        return reason;
+    }
+
+    /**
+     * 通过枚举的code,查询对应的枚举项
+     *
+     * @param code
+     * @return
+     */
+    public static ManHourStatus getEnumByCode(String code) {
+        ManHourStatus[] values = ManHourStatus.values();
+        for (ManHourStatus statusEnums : values) {
+            if (statusEnums.getCode().equals(code)) {
+                return statusEnums;
+            }
+        }
+        return null;
+    }
+}

+ 58 - 0
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/enums/ProTaskStatus.java

@@ -0,0 +1,58 @@
+package com.ankaibei.workFlow.webadmin.ankaibei.enums;
+
+/**
+ * 项目任务状态枚举类
+ *
+ * @author buzhanyi
+ */
+
+public enum ProTaskStatus {
+
+    // "0", "未分配"; "1", "审核中"; "2", "已分配"; "3", "已完成"; "4", "已拒绝";
+    NO_ALLOCATION("0", "未分配"),
+    EXTENSION_ING("1", "审核中"),
+    ALLOCATION_ED("2", "已分配"),
+    FINISH_ED("3", "已完成"),
+    REFUSE_ED("4", "已拒绝");
+
+    /**
+     * 状态码
+     */
+    private final String code;
+    /**
+     * 信息
+     */
+    private final String reason;
+
+    /**
+     * 666666
+     */
+    ProTaskStatus(String code, String reason) {
+        this.code = code;
+        this.reason = reason;
+    }
+
+    public String getCode() {
+        return code;
+    }
+
+    public String getReason() {
+        return reason;
+    }
+
+    /**
+     * 通过枚举的code,查询对应的枚举项
+     *
+     * @param code
+     * @return
+     */
+    public static ProTaskStatus getEnumByCode(String code) {
+        ProTaskStatus[] values = ProTaskStatus.values();
+        for (ProTaskStatus statusEnums : values) {
+            if (statusEnums.getCode().equals(code)) {
+                return statusEnums;
+            }
+        }
+        return null;
+    }
+}

+ 8 - 4
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/enums/TaskStatus.java

@@ -1,12 +1,16 @@
 package com.ankaibei.workFlow.webadmin.ankaibei.enums;
 
+/**
+ * @author buzhanyi
+ */
+
 public enum TaskStatus {
-    //1 已分配 2 未分配 3 已延期
-    ALLOCATION_ED("1", "已分配"),
-    NO_ALLOCATION("2", "未分配"),
+    //1 未分配 2已分配 3已延期 4 已完成 5 已拒绝
+    NO_ALLOCATION("1", "未分配"),
+    ALLOCATION_ED("2", "已分配"),
     EXTENSION_ED("3", "已延期"),
     FINISH_ED("4", "已完成"),
-    ;
+    REFUSE_ED("5", "已拒绝");
 
     /**
      * 状态码

+ 0 - 34
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/mapper/ManHourJobMapper.java

@@ -1,34 +0,0 @@
-package com.ankaibei.workFlow.webadmin.ankaibei.mapper;
-
-import com.ankaibei.workFlow.webadmin.ankaibei.entity.ManHourInfoEntity;
-import com.ankaibei.workFlow.webadmin.ankaibei.entity.ManHourJobInfo;
-import org.springframework.data.domain.Page;
-import org.springframework.data.domain.Pageable;
-import org.springframework.data.jpa.repository.JpaRepository;
-import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
-import org.springframework.data.jpa.repository.Modifying;
-import org.springframework.data.jpa.repository.Query;
-
-import javax.transaction.Transactional;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
-
-/**
- * @author
- * @version 1.0
- * @description:
- * @date 2022/9/21 15:34
- */
-public interface ManHourJobMapper extends JpaRepository<ManHourJobInfo, Integer>, JpaSpecificationExecutor<ManHourJobInfo> {
-
-    /**
-     * 删除工时
-     */
-    int deleteByManIdEquals(Integer manId);
-
-    /**
-     * 工时详情
-     */
-    List<ManHourJobInfo> findManHourJobInfosByManIdIs(Integer manId);
-}

+ 5 - 4
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/mapper/ManHourMapper.java

@@ -21,8 +21,9 @@ import java.util.Map;
 public interface ManHourMapper extends JpaRepository<ManHourInfoEntity, Integer>, JpaSpecificationExecutor<ManHourInfoEntity> {
 
 
-    @Query(value = "SELECT man.man_id manId,man.project_user projrctUser,man.project_name " +
-            "projectName,man.man_hour manHour,man.create_date createDate,man.flow_task_status flowTaskStatus, " +
+    @Query(value = "SELECT man.man_id manId,man.project_user projrctUser,man.project_name projectName," +
+            "man.task_id taskId,man.manufacture_date manufactureDate, man.man_hour manHour,man.job_content jobContent,man.man_status manStatus," +
+            "man.start_date startDate,man.end_date endDate,man.create_time createTime,man.flow_task_status flowTaskStatus, " +
             "man.process_instance_id processInstanceId ,man.process_definition_id processDefinitionId " +
             "from man_hour_info man WHERE " +
             "if( ?1 !='', (man.create_user = ?1 or man.ratify_user like %?1% ) , 1=1) and " +
@@ -39,7 +40,7 @@ public interface ManHourMapper extends JpaRepository<ManHourInfoEntity, Integer>
 
     @Transactional
     @Modifying
-    @Query(value = "update man_hour_info SET flow_task_status = ?1 ,ratify_user=?2 WHERE man_id = ?3", nativeQuery = true)
-    void updateManHourFlowStatus(String flowTaskStatus, String ratifyUser, Integer manId);
+    @Query(value = "update man_hour_info SET man_status= ?1 ,flow_task_status = ?2 ,ratify_user=?3 WHERE man_id = ?4", nativeQuery = true)
+    void updateManHourFlowStatus(String manStatus, String flowTaskStatus, String ratifyUser, Integer manId);
 
 }

+ 8 - 0
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/mapper/TaskInfoMapper.java

@@ -9,6 +9,7 @@ import org.springframework.data.jpa.repository.Modifying;
 import org.springframework.data.jpa.repository.Query;
 
 import javax.transaction.Transactional;
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -87,4 +88,11 @@ public interface TaskInfoMapper extends JpaRepository<TaskInfoEntity, Integer>,
     @Modifying
     @Query(value = "update task_info SET is_delete='-1' WHERE task_id = ?1", nativeQuery = true)
     void deleteTask(Integer taskId);
+
+
+    /**
+     * 查询改用户提交的审核已完成的任务
+     */
+    @Query
+    List<TaskInfoEntity> findAllByTaskParticipantContainsAndFlowTaskStatusEquals(String userId, String flowTaskStatus);
 }

+ 4 - 2
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/service/ManHourService.java

@@ -2,8 +2,8 @@ package com.ankaibei.workFlow.webadmin.ankaibei.service;
 
 
 import com.ankaibei.workFlow.webadmin.ankaibei.entity.ManHourInfoEntity;
-import com.ankaibei.workFlow.webadmin.ankaibei.entity.ManHourJobInfo;
 import com.ankaibei.workFlow.webadmin.ankaibei.vo.ManHourInfoVo;
+import com.ankaibei.workFlow.webadmin.ankaibei.vo.ManHourJobVo;
 import com.ankaibei.workFlow.webadmin.ankaibei.vo.ResMsg;
 
 import java.util.List;
@@ -18,7 +18,9 @@ public interface ManHourService {
 
     ResMsg findManHourAll(Integer pageIndex, Integer pageSize, ManHourInfoEntity manHourInfoEntity);
 
-    ResMsg addManHour(String projectId, ManHourInfoEntity manHourInfoEntity, List<ManHourJobInfo> manHours);
+    ResMsg addManHour(ManHourInfoEntity manHourInfoEntity, List<ManHourJobVo> jobs);
+
+    ResMsg submitManHour(List<ManHourInfoVo> manHourInfoVos);
 
     ResMsg deleteManHour(List<ManHourInfoVo> manHourInfoVos);
 

+ 8 - 0
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/service/TaskInfoService.java

@@ -54,4 +54,12 @@ public interface TaskInfoService {
      */
     ResMsg performTask(TaskInfoEntity taskInfoEntity);
 
+    /**
+     * 查找登录用户参与的审批已完成的任务
+     *
+     * @param userId
+     * @param flowTaskStatus
+     * @return
+     */
+    ResMsg findTaskIsFinish(String userId, String flowTaskStatus);
 }

+ 76 - 53
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/service/impl/ManHourServiceImpl.java

@@ -3,7 +3,6 @@ package com.ankaibei.workFlow.webadmin.ankaibei.service.impl;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
-import com.alibaba.fastjson.JSONPObject;
 import com.ankaibei.workFlow.common.core.object.ResponseResult;
 import com.ankaibei.workFlow.common.core.object.TokenData;
 import com.ankaibei.workFlow.common.flow.constant.FlowConstant;
@@ -11,26 +10,26 @@ import com.ankaibei.workFlow.common.flow.constant.FlowTaskStatus;
 import com.ankaibei.workFlow.common.flow.dto.FlowTaskCommentDto;
 import com.ankaibei.workFlow.common.flow.model.FlowEntry;
 import com.ankaibei.workFlow.common.flow.model.FlowEntryPublish;
-import com.ankaibei.workFlow.common.flow.online.controller.FlowOnlineOperationController;
-import com.ankaibei.workFlow.common.flow.util.FlowOperationHelper;
 import com.ankaibei.workFlow.common.flow.vo.TaskInfoVo;
 import com.ankaibei.workFlow.webadmin.ankaibei.entity.*;
 import com.ankaibei.workFlow.webadmin.ankaibei.enums.CodeEnum;
+import com.ankaibei.workFlow.webadmin.ankaibei.enums.ManHourStatus;
 import com.ankaibei.workFlow.webadmin.ankaibei.mapper.*;
 import com.ankaibei.workFlow.webadmin.ankaibei.service.ManHourService;
 import com.ankaibei.workFlow.webadmin.ankaibei.utils.FlowTaskStart;
 import com.ankaibei.workFlow.webadmin.ankaibei.vo.ManHourInfoVo;
+import com.ankaibei.workFlow.webadmin.ankaibei.vo.ManHourJobVo;
 import com.ankaibei.workFlow.webadmin.ankaibei.vo.ResMsg;
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.BeanUtils;
 import org.springframework.data.domain.Page;
 import org.springframework.data.domain.PageRequest;
 import org.springframework.data.domain.Pageable;
 import org.springframework.stereotype.Service;
+import org.springframework.util.ObjectUtils;
+import com.ankaibei.workFlow.webadmin.ankaibei.entity.ManHourInfoEntity;
+import com.ankaibei.workFlow.webadmin.ankaibei.entity.TaskInfoEntity;
 
 import javax.annotation.Resource;
-import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
 import java.util.*;
 
@@ -45,14 +44,14 @@ public class ManHourServiceImpl implements ManHourService {
 
     @Resource
     private ManHourMapper manHourMapper;
-    @Autowired
+    @Resource
     private FlowTaskStart flowTaskStart;
     @Resource
     private UserInfoMapper userInfoMapper;
     @Resource
-    private ManHourJobMapper manHourJobMapper;
-    @Resource
     private ProjectInfoMapper projectInfoMapper;
+    @Resource
+    private TaskInfoMapper taskInfoMapper;
 
     @Override
     public ResMsg findManHourAll(Integer pageIndex, Integer pageSize, ManHourInfoEntity manHourInfoEntity) {
@@ -64,20 +63,19 @@ public class ManHourServiceImpl implements ManHourService {
             SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
             endDate = dateFormat.format(manHourInfoEntity.getEndDate()) + " 23:59:59";
         }
-        Page<Map<String, String>> manHourAll = manHourMapper.findManHourAll(userId, manHourInfoEntity.getFlowTaskStatus(), manHourInfoEntity.getCreateDate(), endDate, page);
-        //匹配工时信息和项目信息
-        List<ManHourJobInfo> jobInfos = manHourJobMapper.findAll();
+        Page<Map<String, String>> manHourAll = manHourMapper.findManHourAll(userId, manHourInfoEntity.getFlowTaskStatus(), manHourInfoEntity.getStartDate(), endDate, page);
+        //匹配项目信息和任务信息
         List<ProjectInfoEntity> projectInfos = projectInfoMapper.findAll();
+        List<TaskInfoEntity> finishedTasks = taskInfoMapper.findAllByTaskParticipantContainsAndFlowTaskStatusEquals(userId, FlowTaskStatus.FINISHED + "");
         return new ResMsg(CodeEnum.OK, ResMsg.getMap(manHourAll.map(map -> {
             Map<Object, Object> map1 = new HashMap<>(map);
-            String projectId = map.get("projectName");
-            map1.put("manHour", map.get("manHour") + "天");
-            for (ManHourJobInfo jobInfo : jobInfos) {
-                if (jobInfo.getManId().equals(Integer.valueOf(map1.get("manId").toString()))) {
-                    map1.put("manHourJob", jobInfo);
+            for (TaskInfoEntity task : finishedTasks) {
+                if (map1.get("taskId").equals(task.getTaskId())) {
+                    map1.put("taskName", task.getTargetTask());
                     break;
                 }
             }
+            String projectId = map.get("projectName");
             for (ProjectInfoEntity projectInfo : projectInfos) {
                 if (Integer.valueOf(projectId).equals(projectInfo.getProjectId())) {
                     map1.put("projectName", projectInfo.getProjectName());
@@ -89,11 +87,63 @@ public class ManHourServiceImpl implements ManHourService {
     }
 
     @Override
-    public ResMsg addManHour(String projectId, ManHourInfoEntity manHourInfoEntity, List<ManHourJobInfo> manHours) {
+    public ResMsg addManHour(ManHourInfoEntity manHourInfoEntity, List<ManHourJobVo> jobs) {
         Optional<UserInfoEntity> byId1 = userInfoMapper.findById(manHourInfoEntity.getCreateUser());
-        manHourInfoEntity.setProjectName(projectId);
-        manHourInfoEntity.setProjectUser(byId1.orElse(null) != null ? byId1.orElse(null).getShowName() : null);
-        //manHourInfoEntity.setManStatus("1");
+        //工时:添加后状态为1,未提交
+        String showName = byId1.orElse(null) != null ? byId1.orElse(null).getShowName() : null;
+        manHourInfoEntity.setProjectUser(showName);
+        manHourInfoEntity.setCreateUser(showName);
+        manHourInfoEntity.setManStatus(ManHourStatus.NO_ALLOCATION.getCode());
+        for (ManHourJobVo job : jobs) {
+            BeanUtils.copyProperties(job, manHourInfoEntity);
+            manHourMapper.save(manHourInfoEntity);
+        }
+        return new ResMsg(CodeEnum.OK);
+    }
+
+    @Override
+    public ResMsg submitManHour(List<ManHourInfoVo> manHourInfoVos) {
+        //先判断ID是否为空:不为空就是批量提交的
+        if (!ObjectUtils.isEmpty(manHourInfoVos.get(0).getManId())) {
+            for (ManHourInfoVo vo : manHourInfoVos) {
+                Optional<ManHourInfoEntity> byId = manHourMapper.findById(vo.getManId());
+                ManHourInfoEntity infoEntity = byId.orElse(null) != null ? byId.orElse(null) : null;
+                ResMsg resMsg = manHourFlowStart(infoEntity);
+                if (!"200".equals(resMsg.getCode())) {
+                    return resMsg;
+                }
+            }
+        } else {
+            //为空就是单个新增并且提交的,新增的也是生成多天记录后提交
+            Optional<UserInfoEntity> byId1 = userInfoMapper.findById(TokenData.takeFromRequest().getUserId());
+            ManHourInfoVo vo = manHourInfoVos.get(0);
+            ManHourInfoEntity manHourInfoEntity = new ManHourInfoEntity();
+            BeanUtils.copyProperties(vo, manHourInfoEntity);
+            manHourInfoEntity.setProjectUser(byId1.orElse(null) != null ? byId1.orElse(null).getShowName() : null);
+            ManHourInfoEntity save = manHourMapper.save(manHourInfoEntity);
+            return manHourFlowStart(save);
+        }
+
+        return new ResMsg(CodeEnum.OK);
+    }
+
+    @Override
+    public ResMsg deleteManHour(List<ManHourInfoVo> manHourInfoVos) {
+
+        for (ManHourInfoVo info : manHourInfoVos) {
+            manHourMapper.deleteById(Integer.valueOf(info.getManId()));
+        }
+        return new ResMsg(CodeEnum.OK);
+    }
+
+    @Override
+    public ResMsg findManHourByID(Integer manId) {
+        Optional<ManHourInfoEntity> byId = manHourMapper.findById(manId);
+        ManHourInfoEntity infoEntity = byId.orElse(null) != null ? byId.orElse(null) : null;
+        return new ResMsg(CodeEnum.OK, infoEntity);
+    }
+
+    public ResMsg manHourFlowStart(ManHourInfoEntity manHourInfoEntity) {
         //param processDefinitionKey 项目人员工时接口审批流程--流程标识。
         String processDefinitionKey = "manHourCountApply";
         ResponseResult<FlowEntry> flowEntryResult = flowTaskStart.verifyAndGetFlowEntry(processDefinitionKey);
@@ -117,9 +167,9 @@ public class ManHourServiceImpl implements ManHourService {
         flowTaskCommentDto.setApprovalType("agree");
         HashMap<String, Object> stringObjectHashMap = new HashMap<>();
         stringObjectHashMap.put("project_user", manHourInfoEntity.getProjectUser());
-        stringObjectHashMap.put("project_name", manHourInfoEntity.getProjectName());
+        stringObjectHashMap.put("project_name", manHourInfoEntity.getProjectId());
         stringObjectHashMap.put("man_hour", "总计**时");
-        stringObjectHashMap.put("create_date", manHourInfoEntity.getCreateDate());
+        stringObjectHashMap.put("create_date", manHourInfoEntity.getStartDate());
         stringObjectHashMap.put("create_user", manHourInfoEntity.getCreateUser());
         ManHourInfoEntity save = manHourMapper.save(manHourInfoEntity);
         stringObjectHashMap.put("man_id", save.getManId());
@@ -127,38 +177,11 @@ public class ManHourServiceImpl implements ManHourService {
         Map<String, String> map = flowTaskStart.startAndTakeUserTaskSS(processDefinitionKey, flowTaskCommentDto, null, masterData, null, null).getData();
         manHourInfoEntity.setProcessInstanceId(map.get("processInstanceId"));
         manHourInfoEntity.setProcessDefinitionId(map.get("processDefinitionId"));
+        manHourInfoEntity.setManStatus(ManHourStatus.EXTENSION_ING.getCode());
         manHourInfoEntity.setFlowTaskStatus(FlowTaskStatus.SUBMITTED);
-        BigDecimal day = new BigDecimal(0);
-        for (ManHourJobInfo manHour : manHours) {
-            day = day.add(manHour.getDay());
-        }
-        manHourInfoEntity.setManHour(day);
         manHourInfoEntity.setCreateTime(new Date());
         ManHourInfoEntity save1 = manHourMapper.save(manHourInfoEntity);
-        for (ManHourJobInfo manHour : manHours) {
-            manHour.setManId(save.getManId());
-            manHourJobMapper.save(manHour);
-        }
-
-        return new ResMsg(CodeEnum.OK);
-    }
-
-    @Override
-    public ResMsg deleteManHour(List<ManHourInfoVo> manHourInfoVos) {
-
-        for (ManHourInfoVo info : manHourInfoVos) {
-            manHourMapper.deleteById(Integer.valueOf(info.getManId()));
-            manHourJobMapper.deleteByManIdEquals(Integer.valueOf(info.getManId()));
-        }
-        return new ResMsg(CodeEnum.OK);
-    }
-
-    @Override
-    public ResMsg findManHourByID(Integer manId) {
-        Optional<ManHourInfoEntity> byId = manHourMapper.findById(manId);
-        List<ManHourJobInfo> byManIdIs = manHourJobMapper.findManHourJobInfosByManIdIs(manId);
-        byId.get().setManHourJob(byManIdIs);
-        return new ResMsg(CodeEnum.OK, byId);
+        return new ResMsg(CodeEnum.OK, save1);
     }
 
 

+ 9 - 6
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/service/impl/TaskInfoServiceImpl.java

@@ -23,10 +23,7 @@ import com.ankaibei.workFlow.webadmin.ankaibei.service.TaskInfoService;
 import com.ankaibei.workFlow.webadmin.ankaibei.utils.FlowTaskStart;
 import com.ankaibei.workFlow.webadmin.ankaibei.vo.ResMsg;
 import com.ankaibei.workFlow.webadmin.ankaibei.vo.TaskInfoVo;
-import com.ankaibei.workflow.api.LoginApi;
 import org.apache.commons.lang3.ObjectUtils;
-import org.flowable.idm.engine.impl.cmd.GetUserInfoCmd;
-import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
 import org.springframework.data.domain.PageRequest;
 import org.springframework.data.domain.Pageable;
@@ -57,14 +54,13 @@ public class TaskInfoServiceImpl implements TaskInfoService {
     private UserInfoMapper userInfoMapper;
     @Resource
     private ProjectInfoMapper projectInfoMapper;
-    @Autowired
+    @Resource
     private FlowTaskStart flowTaskStart;
 
     @Override
     public ResMsg findTaskInfo(Integer pageIndex, Integer pageSize, TaskInfoEntity taskInfoEntity) {
         //拿到用户的ID,只查询与本人有关的任务
         String userId = TokenData.takeFromRequest().getUserId();
-        //System.out.println("tokenData:===" + tokenData.toString());
         Pageable page = PageRequest.of(pageIndex - 1, pageSize);
         Page<Map<String, String>> all = taskInfoMapper.findTaskInfo(userId, taskInfoEntity.getTargetTask(), taskInfoEntity.getTaskStatus(), page);
         //先将项目信息全部查出,再根据项目ID匹配项目名称
@@ -161,7 +157,7 @@ public class TaskInfoServiceImpl implements TaskInfoService {
             }
         }
         if (taskParticipant.size() < 1) {
-            //(1 已分配 2未分配 3已延期)
+            //(1 未分配 2已分配 3已延期)
             taskInfoEntity.setTaskStatus(TaskStatus.NO_ALLOCATION.getCode());
         } else {
             taskInfoEntity.setTaskStatus(TaskStatus.ALLOCATION_ED.getCode());
@@ -262,4 +258,11 @@ public class TaskInfoServiceImpl implements TaskInfoService {
         }
         return new ResMsg(CodeEnum.OK);
     }
+
+    @Override
+    public ResMsg findTaskIsFinish(String userId, String flowTaskStatus) {
+        List<TaskInfoEntity> contains = taskInfoMapper.findAllByTaskParticipantContainsAndFlowTaskStatusEquals(userId, flowTaskStatus);
+        return new ResMsg(CodeEnum.OK, contains);
+    }
+
 }

+ 176 - 11
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/vo/ManHourInfoVo.java

@@ -1,9 +1,9 @@
 package com.ankaibei.workFlow.webadmin.ankaibei.vo;
 
-import com.ankaibei.workFlow.webadmin.ankaibei.entity.ManHourJobInfo;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
+import java.math.BigDecimal;
 import java.util.Date;
 import java.util.List;
 
@@ -16,42 +16,62 @@ import java.util.List;
 @EqualsAndHashCode(callSuper = true)
 @Data
 public class ManHourInfoVo extends BaseVo {
+
+    /**
+     * 工时id
+     */
     private Integer manId;
     /**
      * 项目成员
      */
     private String projectUser;
+
     /**
      * 项目名称
      */
-    private String projectName;
+    private String projectId;
+
     /**
-     * 记录每一天的工时
+     * 任务名称
      */
-    private List<ManHourJobInfo> manHours;
+    private String taskId;
 
     /**
-     * 创建日期
+     * 开始日期
      */
-    private Date createDate;
+    private Date startDate;
     /**
      * 结束日期
      */
     private Date endDate;
     /**
-     * 创建用户
+     * 工时日期
      */
-    private String createUser;
+    private String manufactureDate;
 
     /**
-     * 项目id
+     * 总工时(小时)
      */
-    private String projectId;
+    private BigDecimal manHour;
+
+    /**
+     * 工作内容
+     */
+    private String jobContent;
+
+    /**
+     * 工时状态
+     */
+    private String manStatus;
+
+    /**
+     * 创建用户
+     */
+    private String createUser;
     /**
      * 审批人
      */
     private String ratifyUser;
-
     /**
      * 进入流程后获取到的流程实例的id
      */
@@ -64,5 +84,150 @@ public class ManHourInfoVo extends BaseVo {
      * 流程定义Id
      */
     private String processDefinitionId;
+    /**
+     * 申请时间
+     */
+    private Date createTime;
+
+    /**
+     * 工作内容
+     */
+    List<ManHourJobVo> jobs;
+
+    public Integer getManId() {
+        return manId;
+    }
+
+    public void setManId(Integer manId) {
+        this.manId = manId;
+    }
+
+    public String getProjectUser() {
+        return projectUser;
+    }
+
+    public void setProjectUser(String projectUser) {
+        this.projectUser = projectUser;
+    }
+
+    public String getProjectId() {
+        return projectId;
+    }
+
+    public void setProjectId(String projectId) {
+        this.projectId = projectId;
+    }
+
+    public String getTaskId() {
+        return taskId;
+    }
+
+    public void setTaskId(String taskId) {
+        this.taskId = taskId;
+    }
+
+    public Date getStartDate() {
+        return startDate;
+    }
+
+    public void setStartDate(Date startDate) {
+        this.startDate = startDate;
+    }
+
+    public Date getEndDate() {
+        return endDate;
+    }
+
+    public void setEndDate(Date endDate) {
+        this.endDate = endDate;
+    }
+
+    public String getManufactureDate() {
+        return manufactureDate;
+    }
+
+    public void setManufactureDate(String manufactureDate) {
+        this.manufactureDate = manufactureDate;
+    }
+
+    public BigDecimal getManHour() {
+        return manHour;
+    }
+
+    public void setManHour(BigDecimal manHour) {
+        this.manHour = manHour;
+    }
+
+    public String getJobContent() {
+        return jobContent;
+    }
+
+    public void setJobContent(String jobContent) {
+        this.jobContent = jobContent;
+    }
+
+    public String getManStatus() {
+        return manStatus;
+    }
+
+    public void setManStatus(String manStatus) {
+        this.manStatus = manStatus;
+    }
+
+    public String getCreateUser() {
+        return createUser;
+    }
+
+    public void setCreateUser(String createUser) {
+        this.createUser = createUser;
+    }
+
+    public String getRatifyUser() {
+        return ratifyUser;
+    }
+
+    public void setRatifyUser(String ratifyUser) {
+        this.ratifyUser = ratifyUser;
+    }
+
+    public String getProcessInstanceId() {
+        return processInstanceId;
+    }
+
+    public void setProcessInstanceId(String processInstanceId) {
+        this.processInstanceId = processInstanceId;
+    }
+
+    public Integer getFlowTaskStatus() {
+        return flowTaskStatus;
+    }
+
+    public void setFlowTaskStatus(Integer flowTaskStatus) {
+        this.flowTaskStatus = flowTaskStatus;
+    }
+
+    public String getProcessDefinitionId() {
+        return processDefinitionId;
+    }
+
+    public void setProcessDefinitionId(String processDefinitionId) {
+        this.processDefinitionId = processDefinitionId;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public List<ManHourJobVo> getJobs() {
+        return jobs;
+    }
+
+    public void setJobs(List<ManHourJobVo> jobs) {
+        this.jobs = jobs;
+    }
 
 }

+ 62 - 0
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/vo/ManHourJobVo.java

@@ -0,0 +1,62 @@
+package com.ankaibei.workFlow.webadmin.ankaibei.vo;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.GenerationType;
+import javax.persistence.Id;
+import javax.persistence.Table;
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * @author
+ * @version 1.0
+ * @description:工时详细记录表
+ * @date 2022/9/21 14:28
+ */
+@Data
+public class ManHourJobVo {
+    /**
+     * 工作日期
+     */
+    private Date manufactureDate;
+
+    /**
+     * 工作时长(小时)
+     */
+    private Integer manHour;
+    /**
+     * 工作内容
+     */
+    private String jobContent;
+
+
+    public Date getManufactureDate() {
+        return manufactureDate;
+    }
+
+    public void setManufactureDate(Date manufactureDate) {
+        this.manufactureDate = manufactureDate;
+    }
+
+    public Integer getManHour() {
+        return manHour;
+    }
+
+    public void setManHour(Integer manHour) {
+        this.manHour = manHour;
+    }
+
+    public String getJobContent() {
+        return jobContent;
+    }
+
+    public void setJobContent(String jobContent) {
+        this.jobContent = jobContent;
+    }
+
+}

+ 4 - 4
application-webadmin/src/main/resources/application-dev.yml

@@ -11,14 +11,14 @@ spring:
     druid:
       # 数据库链接 [主数据源]
       main:
-        url: jdbc:mysql://localhost:3306/ankaibei_workflow?characterEncoding=utf8&useSSL=true&serverTimezone=Asia/Shanghai
+        url: jdbc:mysql://124.70.58.209:18836/akb_106?characterEncoding=utf8&useSSL=true&serverTimezone=Asia/Shanghai
         username: root
-        password: root
+        password: UTA1hcycRtgD0c7Y
       # 默认生成的操作日志数据源配置,缺省情况下和工程中配置的upms数据库链接一致,可根据需求自行修改。
       operation-log:
-        url: jdbc:mysql://localhost:3306/ankaibei_workflow?characterEncoding=utf8&useSSL=true&serverTimezone=Asia/Shanghai
+        url: jdbc:mysql://124.70.58.209:18836/akb_106?characterEncoding=utf8&useSSL=true&serverTimezone=Asia/Shanghai
         username: root
-        password: root
+        password: UTA1hcycRtgD0c7Y
       driver-class-name: com.mysql.cj.jdbc.Driver
       name: application-webadmin
       initialSize: 10