Browse Source

1.更改项目内容接口;

2.借款申请录入明细
lamphua 1 year ago
parent
commit
e2896c2781
33 changed files with 820 additions and 519 deletions
  1. 27
    6
      oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcBorrowController.java
  2. 9
    6
      oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcBorrowDetailController.java
  3. 1
    0
      oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcDeviceApprovalController.java
  4. 3
    126
      oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcProjectController.java
  5. 3
    0
      oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcProjectProgressController.java
  6. 3
    0
      oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcProjectWorkController.java
  7. 1
    0
      oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcTechnicalController.java
  8. 76
    23
      oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcBorrow.java
  9. 14
    0
      oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcProject.java
  10. 6
    6
      oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/mapper/CmcBorrowDetailMapper.java
  11. 6
    6
      oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/mapper/CmcBorrowMapper.java
  12. 6
    6
      oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/ICmcBorrowDetailService.java
  13. 6
    6
      oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/ICmcBorrowService.java
  14. 9
    9
      oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/impl/CmcBorrowDetailServiceImpl.java
  15. 9
    9
      oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/impl/CmcBorrowServiceImpl.java
  16. 8
    8
      oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcBorrowDetailMapper.xml
  17. 54
    21
      oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcBorrowMapper.xml
  18. 15
    1
      oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcDeviceApprovalMapper.xml
  19. 5
    5
      oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcProjectMapper.xml
  20. 9
    10
      oa-back/sql/sql.sql
  21. 4
    4
      oa-ui/src/api/oa/borrow/borrow.js
  22. 4
    4
      oa-ui/src/api/oa/borrow/borrowDetail.js
  23. 1
    19
      oa-ui/src/api/oa/project/project.js
  24. 333
    74
      oa-ui/src/views/flowable/form/borrowForm.vue
  25. 44
    31
      oa-ui/src/views/flowable/form/carForm.vue
  26. 27
    20
      oa-ui/src/views/flowable/form/deviceForm.vue
  27. 40
    38
      oa-ui/src/views/flowable/form/projectProcess/addproject.vue
  28. 45
    36
      oa-ui/src/views/flowable/form/projectProcess/arrangeProject.vue
  29. 3
    3
      oa-ui/src/views/flowable/form/projectProcess/scConfirm.vue
  30. 26
    25
      oa-ui/src/views/flowable/form/technicalForm.vue
  31. 11
    9
      oa-ui/src/views/flowable/task/todo/detail/index.vue
  32. 10
    6
      oa-ui/src/views/oa/budget/addBudget.vue
  33. 2
    2
      oa-ui/src/views/oa/budget/components/chooseMoney.vue

+ 27
- 6
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcBorrowController.java View File

1
 package com.ruoyi.web.controller.oa;
1
 package com.ruoyi.web.controller.oa;
2
 
2
 
3
+import java.util.Date;
3
 import java.util.List;
4
 import java.util.List;
4
 import javax.servlet.http.HttpServletResponse;
5
 import javax.servlet.http.HttpServletResponse;
5
 import org.springframework.beans.factory.annotation.Autowired;
6
 import org.springframework.beans.factory.annotation.Autowired;
59
     /**
60
     /**
60
      * 获取cmc借款申请详细信息
61
      * 获取cmc借款申请详细信息
61
      */
62
      */
62
-    @GetMapping(value = "/{borrowJd}")
63
-    public AjaxResult getInfo(@PathVariable("borrowJd") String borrowJd)
63
+    @GetMapping(value = "/{borrowId}")
64
+    public AjaxResult getInfo(@PathVariable("borrowId") String borrowId)
64
     {
65
     {
65
-        return success(cmcBorrowService.selectCmcBorrowByBorrowJd(borrowJd));
66
+        return success(cmcBorrowService.selectCmcBorrowByBorrowId(borrowId));
66
     }
67
     }
67
 
68
 
68
     /**
69
     /**
72
     @PostMapping
73
     @PostMapping
73
     public AjaxResult add(@RequestBody CmcBorrow cmcBorrow)
74
     public AjaxResult add(@RequestBody CmcBorrow cmcBorrow)
74
     {
75
     {
76
+        cmcBorrow.setApplyDept(getLoginUser().getDeptId());
75
         return toAjax(cmcBorrowService.insertCmcBorrow(cmcBorrow));
77
         return toAjax(cmcBorrowService.insertCmcBorrow(cmcBorrow));
76
     }
78
     }
77
 
79
 
82
     @PutMapping
84
     @PutMapping
83
     public AjaxResult edit(@RequestBody CmcBorrow cmcBorrow)
85
     public AjaxResult edit(@RequestBody CmcBorrow cmcBorrow)
84
     {
86
     {
87
+        if (cmcBorrow.getDeptComment() != null && cmcBorrow.getXmComment() == null) {
88
+            cmcBorrow.setDeptUserId(getLoginUser().getUserId());
89
+            cmcBorrow.setDeptTime(new Date());
90
+        }
91
+        if (cmcBorrow.getXmComment() != null && cmcBorrow.getManagerComment() == null) {
92
+            cmcBorrow.setXmUserId(getLoginUser().getUserId());
93
+            cmcBorrow.setXmTime(new Date());
94
+        }
95
+        if (cmcBorrow.getManagerComment() != null && cmcBorrow.getZjlComment() == null) {
96
+            cmcBorrow.setManagerUserId(getLoginUser().getUserId());
97
+            cmcBorrow.setManagerTime(new Date());
98
+        }
99
+        if (cmcBorrow.getZjlComment() != null && cmcBorrow.getCwComment() == null) {
100
+            cmcBorrow.setZjlUserId(getLoginUser().getUserId());
101
+            cmcBorrow.setZjlTime(new Date());
102
+        }
103
+        if (cmcBorrow.getLendTime() != null) {
104
+            cmcBorrow.setCwUserId(getLoginUser().getUserId());
105
+        }
85
         return toAjax(cmcBorrowService.updateCmcBorrow(cmcBorrow));
106
         return toAjax(cmcBorrowService.updateCmcBorrow(cmcBorrow));
86
     }
107
     }
87
 
108
 
89
      * 删除cmc借款申请
110
      * 删除cmc借款申请
90
      */
111
      */
91
     @Log(title = "cmc借款申请", businessType = BusinessType.DELETE)
112
     @Log(title = "cmc借款申请", businessType = BusinessType.DELETE)
92
-	@DeleteMapping("/{borrowJds}")
93
-    public AjaxResult remove(@PathVariable String[] borrowJds)
113
+	@DeleteMapping("/{borrowIds}")
114
+    public AjaxResult remove(@PathVariable String[] borrowIds)
94
     {
115
     {
95
-        return toAjax(cmcBorrowService.deleteCmcBorrowByBorrowJds(borrowJds));
116
+        return toAjax(cmcBorrowService.deleteCmcBorrowByBorrowIds(borrowIds));
96
     }
117
     }
97
 }
118
 }

+ 9
- 6
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcBorrowDetailController.java View File

2
 
2
 
3
 import java.util.List;
3
 import java.util.List;
4
 import javax.servlet.http.HttpServletResponse;
4
 import javax.servlet.http.HttpServletResponse;
5
+
6
+import com.ruoyi.common.utils.SnowFlake;
5
 import org.springframework.beans.factory.annotation.Autowired;
7
 import org.springframework.beans.factory.annotation.Autowired;
6
 import org.springframework.web.bind.annotation.GetMapping;
8
 import org.springframework.web.bind.annotation.GetMapping;
7
 import org.springframework.web.bind.annotation.PostMapping;
9
 import org.springframework.web.bind.annotation.PostMapping;
59
     /**
61
     /**
60
      * 获取cmc借款明细详细信息
62
      * 获取cmc借款明细详细信息
61
      */
63
      */
62
-    @GetMapping(value = "/{borrowDetailId}")
63
-    public AjaxResult getInfo(@PathVariable("borrowDetailId") String borrowDetailId)
64
+    @GetMapping(value = "/{borrowId}")
65
+    public AjaxResult getInfo(@PathVariable("borrowId") String borrowId)
64
     {
66
     {
65
-        return success(cmcBorrowDetailService.selectCmcBorrowDetailByBorrowDetailId(borrowDetailId));
67
+        return success(cmcBorrowDetailService.selectCmcBorrowDetailByBorrowId(borrowId));
66
     }
68
     }
67
 
69
 
68
     /**
70
     /**
72
     @PostMapping
74
     @PostMapping
73
     public AjaxResult add(@RequestBody CmcBorrowDetail cmcBorrowDetail)
75
     public AjaxResult add(@RequestBody CmcBorrowDetail cmcBorrowDetail)
74
     {
76
     {
77
+        cmcBorrowDetail.setBorrowDetailId(new SnowFlake().generateId());
75
         return toAjax(cmcBorrowDetailService.insertCmcBorrowDetail(cmcBorrowDetail));
78
         return toAjax(cmcBorrowDetailService.insertCmcBorrowDetail(cmcBorrowDetail));
76
     }
79
     }
77
 
80
 
89
      * 删除cmc借款明细
92
      * 删除cmc借款明细
90
      */
93
      */
91
     @Log(title = "cmc借款明细", businessType = BusinessType.DELETE)
94
     @Log(title = "cmc借款明细", businessType = BusinessType.DELETE)
92
-	@DeleteMapping("/{borrowDetailIds}")
93
-    public AjaxResult remove(@PathVariable String[] borrowDetailIds)
95
+	@DeleteMapping("/{borrowIds}")
96
+    public AjaxResult remove(@PathVariable String[] borrowIds)
94
     {
97
     {
95
-        return toAjax(cmcBorrowDetailService.deleteCmcBorrowDetailByBorrowDetailIds(borrowDetailIds));
98
+        return toAjax(cmcBorrowDetailService.deleteCmcBorrowDetailByBorrowIds(borrowIds));
96
     }
99
     }
97
 }
100
 }

+ 1
- 0
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcDeviceApprovalController.java View File

130
             cmcDeviceApproval.setManagerTime(new Date());
130
             cmcDeviceApproval.setManagerTime(new Date());
131
         }
131
         }
132
         if (formDataJson.getDate("returnDate") != null) {
132
         if (formDataJson.getDate("returnDate") != null) {
133
+            cmcDeviceApproval.setRemark(formDataJson.getString("remark"));
133
             cmcDeviceApproval.setReturnDate(formDataJson.getDate("returnDate"));
134
             cmcDeviceApproval.setReturnDate(formDataJson.getDate("returnDate"));
134
         }
135
         }
135
         if (formDataJson.getString("dispatchComment") != null) {
136
         if (formDataJson.getString("dispatchComment") != null) {

+ 3
- 126
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcProjectController.java View File

1
 package com.ruoyi.web.controller.oa;
1
 package com.ruoyi.web.controller.oa;
2
 
2
 
3
+import java.util.Date;
3
 import java.util.List;
4
 import java.util.List;
4
 import javax.servlet.http.HttpServletResponse;
5
 import javax.servlet.http.HttpServletResponse;
5
 
6
 
95
     @PostMapping
96
     @PostMapping
96
     public AjaxResult add(@RequestBody CmcProject cmcProject)
97
     public AjaxResult add(@RequestBody CmcProject cmcProject)
97
     {
98
     {
98
-        return toAjax(cmcProjectService.insertCmcProject(cmcProject));
99
-    }
100
-
101
-    /**
102
-     * 新增cmc项目
103
-     */
104
-    @Log(title = "cmc项目", businessType = BusinessType.INSERT)
105
-    @PostMapping( "/submit")
106
-    public AjaxResult submit(@RequestParam("form")String formData)
107
-    {
108
-        JSONObject formDataJson = JSONObject.parse(formData);
109
-        CmcProject cmcProject = new CmcProject();
110
-        cmcProject.setProjectId(formDataJson.getString("projectId"));
111
-        cmcProject.setProjectName(formDataJson.getString("projectName"));
112
-        cmcProject.setProjectNumber(formDataJson.getString("projectNumber"));
113
-        cmcProject.setProjectLeader(formDataJson.getLong("projectLeader"));
114
-        cmcProject.setIsFinished(formDataJson.getString("isFinished"));
115
-        cmcProject.setProjectSource(formDataJson.getString("projectSource"));
116
-        cmcProject.setPartyA(formDataJson.getString("partyA"));
117
-        cmcProject.setContactPerson(formDataJson.getString("contactPerson"));
118
-        cmcProject.setTelephone(formDataJson.getString("telephone"));
119
-        cmcProject.setProjectType(formDataJson.getString("projectType"));
120
-        cmcProject.setProjectLevel(formDataJson.getString("projectLevel"));
121
-        cmcProject.setProjectRegistrant(formDataJson.getLong("projectRegistrant"));
122
-        cmcProject.setCreateTime(DateUtils.getNowDate());
99
+        cmcProject.setRegisterTime(new Date());
123
         cmcProject.setIsFinished("0");
100
         cmcProject.setIsFinished("0");
124
-        cmcProject.setRemark(formDataJson.getString("remark"));
125
-        cmcProjectService.insertCmcProject(cmcProject);
126
-        String workList = formDataJson.getString("workList");
127
-        workList = workList.substring(1, workList.length() - 1);
128
-        if (workList.split("}").length > 1) {
129
-            for (int i = 0; i < workList.split("}").length; i++) {
130
-                String workArri = workList.split("}")[i] + "}";
131
-                if (i > 0)
132
-                    workArri = workArri.substring(1);
133
-                JSONObject workArrObject = JSONObject.parse(workArri);
134
-                CmcProjectWork cmcProjectWork = new CmcProjectWork();
135
-                cmcProjectWork.setWorkId(new SnowFlake().generateId());
136
-                cmcProjectWork.setProjectId(cmcProject.getProjectId());
137
-                cmcProjectWork.setContent(workArrObject.getString("content"));
138
-                cmcProjectWork.setScale(workArrObject.getString("scale"));
139
-                cmcProjectWork.setUnit(workArrObject.getString("unit"));
140
-                cmcProjectWork.setWorkload(workArrObject.getString("workload"));
141
-                cmcProjectWork.setDeadline(workArrObject.getString("deadline") != null ? DateUtils.dateTime("yyyy-MM-dd", workArrObject.getString("deadline")) : null);
142
-                cmcProjectWork.setRemark(workArrObject.getString("remark"));
143
-                cmcProjectWorkService.insertCmcProjectWork(cmcProjectWork);
144
-            }
145
-        }
146
-        else {
147
-            JSONObject workArrObject = JSONObject.parse(workList);
148
-            CmcProjectWork cmcProjectWork = new CmcProjectWork();
149
-            cmcProjectWork.setWorkId(new SnowFlake().generateId());
150
-            cmcProjectWork.setProjectId(cmcProject.getProjectId());
151
-            cmcProjectWork.setContent(workArrObject.getString("content"));
152
-            cmcProjectWork.setScale(workArrObject.getString("scale"));
153
-            cmcProjectWork.setUnit(workArrObject.getString("unit"));
154
-            cmcProjectWork.setWorkload(workArrObject.getString("workload"));
155
-            cmcProjectWork.setDeadline(workArrObject.getString("deadline") != null ? DateUtils.dateTime("yyyy-MM-dd", workArrObject.getString("deadline")) : null);
156
-            cmcProjectWork.setRemark(workArrObject.getString("remark"));
157
-            cmcProjectWorkService.insertCmcProjectWork(cmcProjectWork);
158
-        }
159
-        return success("新增成功");
101
+        return toAjax(cmcProjectService.insertCmcProject(cmcProject));
160
     }
102
     }
161
 
103
 
162
     /**
104
     /**
169
         return toAjax(cmcProjectService.updateCmcProject(cmcProject));
111
         return toAjax(cmcProjectService.updateCmcProject(cmcProject));
170
     }
112
     }
171
 
113
 
172
-    /**
173
-     * 修改cmc项目
174
-     */
175
-    @Log(title = "cmc项目", businessType = BusinessType.UPDATE)
176
-    @PutMapping( "/modify")
177
-    public AjaxResult modify(@RequestParam("form") String formData)
178
-    {
179
-        JSONObject formDataJson = JSONObject.parse(formData);
180
-        CmcProject cmcProject = cmcProjectService.selectCmcProjectByProjectId(formDataJson.getString("projectId"));
181
-        cmcProject.setProjectName(formDataJson.getString("projectName"));
182
-        cmcProject.setProjectNumber(formDataJson.getString("projectNumber"));
183
-        cmcProject.setProjectLeader(formDataJson.getLong("projectLeader"));
184
-        cmcProject.setIsFinished(formDataJson.getString("isFinished"));
185
-        cmcProject.setProjectSource(formDataJson.getString("projectSource"));
186
-        cmcProject.setPartyA(formDataJson.getString("partyA"));
187
-        cmcProject.setContactPerson(formDataJson.getString("contactPerson"));
188
-        cmcProject.setTelephone(formDataJson.getString("telephone"));
189
-        cmcProject.setProjectType(formDataJson.getString("projectType"));
190
-        cmcProject.setProjectLevel(formDataJson.getString("projectLevel"));
191
-        cmcProject.setProjectRegistrant(formDataJson.getLong("projectRegistrant"));
192
-        cmcProject.setSiteLeader(formDataJson.getLong("siteLeader"));
193
-        cmcProject.setUndertakingDept(formDataJson.getString("undertakingDept"));
194
-        cmcProject.setCreateTime(DateUtils.getNowDate());
195
-        cmcProject.setIsFinished("0");
196
-        cmcProject.setRemark(formDataJson.getString("remark"));
197
-        String workList = formDataJson.getString("workList");
198
-        if (workList != null) {
199
-            workList = workList.substring(1, workList.length() - 1);
200
-            if (workList.split("}").length > 1) {
201
-                cmcProjectWorkService.deleteCmcProjectWorkByProjectId(formDataJson.getString("projectId"));
202
-                for (int i = 0; i < workList.split("}").length; i++) {
203
-                    String workArri = workList.split("}")[i] + "}";
204
-                    if (i > 0)
205
-                        workArri = workArri.substring(1);
206
-                    JSONObject workArrObject = JSONObject.parse(workArri);
207
-                    CmcProjectWork cmcProjectWork = new CmcProjectWork();
208
-                    cmcProjectWork.setWorkId(new SnowFlake().generateId());
209
-                    cmcProjectWork.setProjectId(formDataJson.getString("projectId"));
210
-                    cmcProjectWork.setContent(workArrObject.getString("content"));
211
-                    cmcProjectWork.setScale(workArrObject.getString("scale"));
212
-                    cmcProjectWork.setUnit(workArrObject.getString("unit"));
213
-                    cmcProjectWork.setWorkload(workArrObject.getString("workload"));
214
-                    cmcProjectWork.setDeadline(workArrObject.getString("deadline") != null ? DateUtils.dateTime("yyyy-MM-dd", workArrObject.getString("deadline")) : null);
215
-                    cmcProjectWork.setRemark(workArrObject.getString("remark"));
216
-                    cmcProjectWorkService.insertCmcProjectWork(cmcProjectWork);
217
-                }
218
-            }
219
-            else {
220
-                JSONObject workArrObject = JSONObject.parse(workList);
221
-                cmcProjectWorkService.deleteCmcProjectWorkByProjectId(formDataJson.getString("projectId"));
222
-                CmcProjectWork cmcProjectWork = new CmcProjectWork();
223
-                cmcProjectWork.setWorkId(new SnowFlake().generateId());
224
-                cmcProjectWork.setProjectId(formDataJson.getString("projectId"));
225
-                cmcProjectWork.setContent(workArrObject.getString("content"));
226
-                cmcProjectWork.setScale(workArrObject.getString("scale"));
227
-                cmcProjectWork.setUnit(workArrObject.getString("unit"));
228
-                cmcProjectWork.setWorkload(workArrObject.getString("workload"));
229
-                cmcProjectWork.setDeadline(workArrObject.getString("deadline") != null ? DateUtils.dateTime("yyyy-MM-dd", workArrObject.getString("deadline")) : null);
230
-                cmcProjectWork.setRemark(workArrObject.getString("remark"));
231
-                cmcProjectWorkService.insertCmcProjectWork(cmcProjectWork);
232
-            }
233
-        }
234
-        return toAjax(cmcProjectService.updateCmcProject(cmcProject));
235
-    }
236
-
237
     /**
114
     /**
238
      * 删除cmc项目
115
      * 删除cmc项目
239
      */
116
      */

+ 3
- 0
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcProjectProgressController.java View File

2
 
2
 
3
 import java.util.List;
3
 import java.util.List;
4
 import javax.servlet.http.HttpServletResponse;
4
 import javax.servlet.http.HttpServletResponse;
5
+
6
+import com.ruoyi.common.utils.SnowFlake;
5
 import org.springframework.beans.factory.annotation.Autowired;
7
 import org.springframework.beans.factory.annotation.Autowired;
6
 import org.springframework.web.bind.annotation.GetMapping;
8
 import org.springframework.web.bind.annotation.GetMapping;
7
 import org.springframework.web.bind.annotation.PostMapping;
9
 import org.springframework.web.bind.annotation.PostMapping;
72
     @PostMapping
74
     @PostMapping
73
     public AjaxResult add(@RequestBody CmcProjectProgress cmcProjectProgress)
75
     public AjaxResult add(@RequestBody CmcProjectProgress cmcProjectProgress)
74
     {
76
     {
77
+        cmcProjectProgress.setProgressId(new SnowFlake().generateId());
75
         return toAjax(cmcProjectProgressService.insertCmcProjectProgress(cmcProjectProgress));
78
         return toAjax(cmcProjectProgressService.insertCmcProjectProgress(cmcProjectProgress));
76
     }
79
     }
77
 
80
 

+ 3
- 0
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcProjectWorkController.java View File

2
 
2
 
3
 import java.util.List;
3
 import java.util.List;
4
 import javax.servlet.http.HttpServletResponse;
4
 import javax.servlet.http.HttpServletResponse;
5
+
6
+import com.ruoyi.common.utils.SnowFlake;
5
 import org.springframework.beans.factory.annotation.Autowired;
7
 import org.springframework.beans.factory.annotation.Autowired;
6
 import org.springframework.web.bind.annotation.GetMapping;
8
 import org.springframework.web.bind.annotation.GetMapping;
7
 import org.springframework.web.bind.annotation.PostMapping;
9
 import org.springframework.web.bind.annotation.PostMapping;
72
     @PostMapping
74
     @PostMapping
73
     public AjaxResult add(@RequestBody CmcProjectWork cmcProjectWork)
75
     public AjaxResult add(@RequestBody CmcProjectWork cmcProjectWork)
74
     {
76
     {
77
+        cmcProjectWork.setWorkId(new SnowFlake().generateId());
75
         return toAjax(cmcProjectWorkService.insertCmcProjectWork(cmcProjectWork));
78
         return toAjax(cmcProjectWorkService.insertCmcProjectWork(cmcProjectWork));
76
     }
79
     }
77
 
80
 

+ 1
- 0
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcTechnicalController.java View File

73
     @PostMapping
73
     @PostMapping
74
     public AjaxResult add(@RequestBody CmcTechnical cmcTechnical)
74
     public AjaxResult add(@RequestBody CmcTechnical cmcTechnical)
75
     {
75
     {
76
+        cmcTechnical.setTechnicalTime(new Date());
76
         return toAjax(cmcTechnicalService.insertCmcTechnical(cmcTechnical));
77
         return toAjax(cmcTechnicalService.insertCmcTechnical(cmcTechnical));
77
     }
78
     }
78
 
79
 

+ 76
- 23
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcBorrow.java View File

3
 import java.math.BigDecimal;
3
 import java.math.BigDecimal;
4
 import java.util.Date;
4
 import java.util.Date;
5
 import com.fasterxml.jackson.annotation.JsonFormat;
5
 import com.fasterxml.jackson.annotation.JsonFormat;
6
+import com.ruoyi.common.core.domain.entity.SysDept;
6
 import com.ruoyi.common.core.domain.entity.SysUser;
7
 import com.ruoyi.common.core.domain.entity.SysUser;
7
 import org.apache.commons.lang3.builder.ToStringBuilder;
8
 import org.apache.commons.lang3.builder.ToStringBuilder;
8
 import org.apache.commons.lang3.builder.ToStringStyle;
9
 import org.apache.commons.lang3.builder.ToStringStyle;
20
     private static final long serialVersionUID = 1L;
21
     private static final long serialVersionUID = 1L;
21
 
22
 
22
     /** 借款申请id */
23
     /** 借款申请id */
23
-    private String borrowJd;
24
+    private String borrowId;
24
 
25
 
25
     /** 项目id */
26
     /** 项目id */
26
     @Excel(name = "项目id")
27
     @Excel(name = "项目id")
28
 
29
 
29
     private CmcProject project;
30
     private CmcProject project;
30
 
31
 
31
-    /** 借款类型 */
32
-    @Excel(name = "借款类型")
33
-    private String borrowType;
34
-
35
     /** 借款事由 */
32
     /** 借款事由 */
36
     @Excel(name = "借款事由")
33
     @Excel(name = "借款事由")
37
     private String applyReason;
34
     private String applyReason;
38
 
35
 
39
     /** 借款部门 */
36
     /** 借款部门 */
40
     @Excel(name = "借款部门")
37
     @Excel(name = "借款部门")
41
-    private String applyDept;
38
+    private Long applyDept;
39
+
40
+    private SysDept dept;
42
 
41
 
43
     /** 借款人 */
42
     /** 借款人 */
44
     @Excel(name = "借款人")
43
     @Excel(name = "借款人")
46
 
45
 
47
     private SysUser applierUser;
46
     private SysUser applierUser;
48
 
47
 
48
+    private SysUser deptUser;
49
+
50
+    private SysUser xmUser;
51
+
52
+    private SysUser managerUser;
53
+
54
+    private SysUser zjlUser;
55
+
56
+    private SysUser cwUser;
57
+
49
     /** 借款日期 */
58
     /** 借款日期 */
50
     @JsonFormat(pattern = "yyyy-MM-dd")
59
     @JsonFormat(pattern = "yyyy-MM-dd")
51
     @Excel(name = "借款日期", width = 30, dateFormat = "yyyy-MM-dd")
60
     @Excel(name = "借款日期", width = 30, dateFormat = "yyyy-MM-dd")
124
     @Excel(name = "借款支付时间", width = 30, dateFormat = "yyyy-MM-dd")
133
     @Excel(name = "借款支付时间", width = 30, dateFormat = "yyyy-MM-dd")
125
     private Date lendTime;
134
     private Date lendTime;
126
 
135
 
127
-    public void setBorrowJd(String borrowJd) 
136
+    public void setBorrowId(String borrowId) 
128
     {
137
     {
129
-        this.borrowJd = borrowJd;
138
+        this.borrowId = borrowId;
130
     }
139
     }
131
 
140
 
132
-    public String getBorrowJd() 
141
+    public String getBorrowId() 
133
     {
142
     {
134
-        return borrowJd;
143
+        return borrowId;
135
     }
144
     }
136
     public void setProjectId(String projectId) 
145
     public void setProjectId(String projectId) 
137
     {
146
     {
151
     {
160
     {
152
         return project;
161
         return project;
153
     }
162
     }
154
-    public void setBorrowType(String borrowType) 
155
-    {
156
-        this.borrowType = borrowType;
157
-    }
158
-
159
-    public String getBorrowType() 
160
-    {
161
-        return borrowType;
162
-    }
163
     public void setApplyReason(String applyReason) 
163
     public void setApplyReason(String applyReason) 
164
     {
164
     {
165
         this.applyReason = applyReason;
165
         this.applyReason = applyReason;
169
     {
169
     {
170
         return applyReason;
170
         return applyReason;
171
     }
171
     }
172
-    public void setApplyDept(String applyDept)
172
+    public void setApplyDept(Long applyDept)
173
     {
173
     {
174
         this.applyDept = applyDept;
174
         this.applyDept = applyDept;
175
     }
175
     }
176
 
176
 
177
-    public String getApplyDept()
177
+    public Long getApplyDept()
178
     {
178
     {
179
         return applyDept;
179
         return applyDept;
180
     }
180
     }
181
+    public void setDept(SysDept dept)
182
+    {
183
+        this.dept = dept;
184
+    }
185
+
186
+    public SysDept getDept()
187
+    {
188
+        return dept;
189
+    }
181
     public void setApplier(Long applier) 
190
     public void setApplier(Long applier) 
182
     {
191
     {
183
         this.applier = applier;
192
         this.applier = applier;
196
     {
205
     {
197
         return applierUser;
206
         return applierUser;
198
     }
207
     }
208
+    public void setDeptUser(SysUser deptUser)
209
+    {
210
+        this.deptUser = deptUser;
211
+    }
212
+
213
+    public SysUser getDeptUser()
214
+    {
215
+        return deptUser;
216
+    }
217
+    public void setXmUser(SysUser xmUser)
218
+    {
219
+        this.xmUser = xmUser;
220
+    }
221
+
222
+    public SysUser getXmUser()
223
+    {
224
+        return xmUser;
225
+    }
226
+    public void setManagerUser(SysUser managerUser)
227
+    {
228
+        this.managerUser = managerUser;
229
+    }
230
+
231
+    public SysUser getManagerUser()
232
+    {
233
+        return managerUser;
234
+    }
235
+    public void setZjlUser(SysUser zjlUser)
236
+    {
237
+        this.zjlUser = zjlUser;
238
+    }
239
+
240
+    public SysUser getZjlUser()
241
+    {
242
+        return zjlUser;
243
+    }
244
+    public void setCwUser(SysUser cwUser)
245
+    {
246
+        this.cwUser = cwUser;
247
+    }
248
+
249
+    public SysUser getCwUser()
250
+    {
251
+        return cwUser;
252
+    }
199
     public void setApplyDate(Date applyDate) 
253
     public void setApplyDate(Date applyDate) 
200
     {
254
     {
201
         this.applyDate = applyDate;
255
         this.applyDate = applyDate;
362
     @Override
416
     @Override
363
     public String toString() {
417
     public String toString() {
364
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
418
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
365
-            .append("borrowJd", getBorrowJd())
419
+            .append("borrowId", getBorrowId())
366
             .append("projectId", getProjectId())
420
             .append("projectId", getProjectId())
367
-            .append("borrowType", getBorrowType())
368
             .append("applyReason", getApplyReason())
421
             .append("applyReason", getApplyReason())
369
             .append("applier", getApplier())
422
             .append("applier", getApplier())
370
             .append("applyDept", getApplyDept())
423
             .append("applyDept", getApplyDept())

+ 14
- 0
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcProject.java View File

92
     @Excel(name = "组织交底文档")
92
     @Excel(name = "组织交底文档")
93
     private String organizeDocument;
93
     private String organizeDocument;
94
 
94
 
95
+    /** 项目登记日期 */
96
+    @JsonFormat(pattern = "yyyy-MM-dd")
97
+    @Excel(name = "项目登记日期", width = 30, dateFormat = "yyyy-MM-dd")
98
+    private Date registerTime;
99
+
95
     /** 项目安排日期 */
100
     /** 项目安排日期 */
96
     @JsonFormat(pattern = "yyyy-MM-dd")
101
     @JsonFormat(pattern = "yyyy-MM-dd")
97
     @Excel(name = "项目安排日期", width = 30, dateFormat = "yyyy-MM-dd")
102
     @Excel(name = "项目安排日期", width = 30, dateFormat = "yyyy-MM-dd")
282
     {
287
     {
283
         return siteLeader;
288
         return siteLeader;
284
     }
289
     }
290
+    public void setRegisterTime(Date registerTime)
291
+    {
292
+        this.registerTime = registerTime;
293
+    }
294
+
295
+    public Date getRegisterTime()
296
+    {
297
+        return registerTime;
298
+    }
285
     public void setPlanTime(Date planTime)
299
     public void setPlanTime(Date planTime)
286
     {
300
     {
287
         this.planTime = planTime;
301
         this.planTime = planTime;

+ 6
- 6
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/mapper/CmcBorrowDetailMapper.java View File

14
     /**
14
     /**
15
      * 查询cmc借款明细
15
      * 查询cmc借款明细
16
      * 
16
      * 
17
-     * @param borrowDetailId cmc借款明细主键
17
+     * @param borrowId cmc借款明细主键
18
      * @return cmc借款明细
18
      * @return cmc借款明细
19
      */
19
      */
20
-    public CmcBorrowDetail selectCmcBorrowDetailByBorrowDetailId(String borrowDetailId);
20
+    public List<CmcBorrowDetail> selectCmcBorrowDetailByBorrowId(String borrowId);
21
 
21
 
22
     /**
22
     /**
23
      * 查询cmc借款明细列表
23
      * 查询cmc借款明细列表
46
     /**
46
     /**
47
      * 删除cmc借款明细
47
      * 删除cmc借款明细
48
      * 
48
      * 
49
-     * @param borrowDetailId cmc借款明细主键
49
+     * @param borrowId cmc借款明细主键
50
      * @return 结果
50
      * @return 结果
51
      */
51
      */
52
-    public int deleteCmcBorrowDetailByBorrowDetailId(String borrowDetailId);
52
+    public int deleteCmcBorrowDetailByBorrowId(String borrowId);
53
 
53
 
54
     /**
54
     /**
55
      * 批量删除cmc借款明细
55
      * 批量删除cmc借款明细
56
      * 
56
      * 
57
-     * @param borrowDetailIds 需要删除的数据主键集合
57
+     * @param borrowIds 需要删除的数据主键集合
58
      * @return 结果
58
      * @return 结果
59
      */
59
      */
60
-    public int deleteCmcBorrowDetailByBorrowDetailIds(String[] borrowDetailIds);
60
+    public int deleteCmcBorrowDetailByBorrowIds(String[] borrowIds);
61
 }
61
 }

+ 6
- 6
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/mapper/CmcBorrowMapper.java View File

14
     /**
14
     /**
15
      * 查询cmc借款申请
15
      * 查询cmc借款申请
16
      * 
16
      * 
17
-     * @param borrowJd cmc借款申请主键
17
+     * @param borrowId cmc借款申请主键
18
      * @return cmc借款申请
18
      * @return cmc借款申请
19
      */
19
      */
20
-    public CmcBorrow selectCmcBorrowByBorrowJd(String borrowJd);
20
+    public CmcBorrow selectCmcBorrowByBorrowId(String borrowId);
21
 
21
 
22
     /**
22
     /**
23
      * 查询cmc借款申请列表
23
      * 查询cmc借款申请列表
46
     /**
46
     /**
47
      * 删除cmc借款申请
47
      * 删除cmc借款申请
48
      * 
48
      * 
49
-     * @param borrowJd cmc借款申请主键
49
+     * @param borrowId cmc借款申请主键
50
      * @return 结果
50
      * @return 结果
51
      */
51
      */
52
-    public int deleteCmcBorrowByBorrowJd(String borrowJd);
52
+    public int deleteCmcBorrowByBorrowId(String borrowId);
53
 
53
 
54
     /**
54
     /**
55
      * 批量删除cmc借款申请
55
      * 批量删除cmc借款申请
56
      * 
56
      * 
57
-     * @param borrowJds 需要删除的数据主键集合
57
+     * @param borrowIds 需要删除的数据主键集合
58
      * @return 结果
58
      * @return 结果
59
      */
59
      */
60
-    public int deleteCmcBorrowByBorrowJds(String[] borrowJds);
60
+    public int deleteCmcBorrowByBorrowIds(String[] borrowIds);
61
 }
61
 }

+ 6
- 6
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/ICmcBorrowDetailService.java View File

14
     /**
14
     /**
15
      * 查询cmc借款明细
15
      * 查询cmc借款明细
16
      * 
16
      * 
17
-     * @param borrowDetailId cmc借款明细主键
17
+     * @param borrowId cmc借款明细主键
18
      * @return cmc借款明细
18
      * @return cmc借款明细
19
      */
19
      */
20
-    public CmcBorrowDetail selectCmcBorrowDetailByBorrowDetailId(String borrowDetailId);
20
+    public List<CmcBorrowDetail> selectCmcBorrowDetailByBorrowId(String borrowId);
21
 
21
 
22
     /**
22
     /**
23
      * 查询cmc借款明细列表
23
      * 查询cmc借款明细列表
46
     /**
46
     /**
47
      * 批量删除cmc借款明细
47
      * 批量删除cmc借款明细
48
      * 
48
      * 
49
-     * @param borrowDetailIds 需要删除的cmc借款明细主键集合
49
+     * @param borrowIds 需要删除的cmc借款明细主键集合
50
      * @return 结果
50
      * @return 结果
51
      */
51
      */
52
-    public int deleteCmcBorrowDetailByBorrowDetailIds(String[] borrowDetailIds);
52
+    public int deleteCmcBorrowDetailByBorrowIds(String[] borrowIds);
53
 
53
 
54
     /**
54
     /**
55
      * 删除cmc借款明细信息
55
      * 删除cmc借款明细信息
56
      * 
56
      * 
57
-     * @param borrowDetailId cmc借款明细主键
57
+     * @param borrowId cmc借款明细主键
58
      * @return 结果
58
      * @return 结果
59
      */
59
      */
60
-    public int deleteCmcBorrowDetailByBorrowDetailId(String borrowDetailId);
60
+    public int deleteCmcBorrowDetailByBorrowId(String borrowId);
61
 }
61
 }

+ 6
- 6
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/ICmcBorrowService.java View File

14
     /**
14
     /**
15
      * 查询cmc借款申请
15
      * 查询cmc借款申请
16
      * 
16
      * 
17
-     * @param borrowJd cmc借款申请主键
17
+     * @param borrowId cmc借款申请主键
18
      * @return cmc借款申请
18
      * @return cmc借款申请
19
      */
19
      */
20
-    public CmcBorrow selectCmcBorrowByBorrowJd(String borrowJd);
20
+    public CmcBorrow selectCmcBorrowByBorrowId(String borrowId);
21
 
21
 
22
     /**
22
     /**
23
      * 查询cmc借款申请列表
23
      * 查询cmc借款申请列表
46
     /**
46
     /**
47
      * 批量删除cmc借款申请
47
      * 批量删除cmc借款申请
48
      * 
48
      * 
49
-     * @param borrowJds 需要删除的cmc借款申请主键集合
49
+     * @param borrowIds 需要删除的cmc借款申请主键集合
50
      * @return 结果
50
      * @return 结果
51
      */
51
      */
52
-    public int deleteCmcBorrowByBorrowJds(String[] borrowJds);
52
+    public int deleteCmcBorrowByBorrowIds(String[] borrowIds);
53
 
53
 
54
     /**
54
     /**
55
      * 删除cmc借款申请信息
55
      * 删除cmc借款申请信息
56
      * 
56
      * 
57
-     * @param borrowJd cmc借款申请主键
57
+     * @param borrowId cmc借款申请主键
58
      * @return 结果
58
      * @return 结果
59
      */
59
      */
60
-    public int deleteCmcBorrowByBorrowJd(String borrowJd);
60
+    public int deleteCmcBorrowByBorrowId(String borrowId);
61
 }
61
 }

+ 9
- 9
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/impl/CmcBorrowDetailServiceImpl.java View File

22
     /**
22
     /**
23
      * 查询cmc借款明细
23
      * 查询cmc借款明细
24
      * 
24
      * 
25
-     * @param borrowDetailId cmc借款明细主键
25
+     * @param borrowId cmc借款明细主键
26
      * @return cmc借款明细
26
      * @return cmc借款明细
27
      */
27
      */
28
     @Override
28
     @Override
29
-    public CmcBorrowDetail selectCmcBorrowDetailByBorrowDetailId(String borrowDetailId)
29
+    public List<CmcBorrowDetail> selectCmcBorrowDetailByBorrowId(String borrowId)
30
     {
30
     {
31
-        return cmcBorrowDetailMapper.selectCmcBorrowDetailByBorrowDetailId(borrowDetailId);
31
+        return cmcBorrowDetailMapper.selectCmcBorrowDetailByBorrowId(borrowId);
32
     }
32
     }
33
 
33
 
34
     /**
34
     /**
70
     /**
70
     /**
71
      * 批量删除cmc借款明细
71
      * 批量删除cmc借款明细
72
      * 
72
      * 
73
-     * @param borrowDetailIds 需要删除的cmc借款明细主键
73
+     * @param borrowIds 需要删除的cmc借款明细主键
74
      * @return 结果
74
      * @return 结果
75
      */
75
      */
76
     @Override
76
     @Override
77
-    public int deleteCmcBorrowDetailByBorrowDetailIds(String[] borrowDetailIds)
77
+    public int deleteCmcBorrowDetailByBorrowIds(String[] borrowIds)
78
     {
78
     {
79
-        return cmcBorrowDetailMapper.deleteCmcBorrowDetailByBorrowDetailIds(borrowDetailIds);
79
+        return cmcBorrowDetailMapper.deleteCmcBorrowDetailByBorrowIds(borrowIds);
80
     }
80
     }
81
 
81
 
82
     /**
82
     /**
83
      * 删除cmc借款明细信息
83
      * 删除cmc借款明细信息
84
      * 
84
      * 
85
-     * @param borrowDetailId cmc借款明细主键
85
+     * @param borrowId cmc借款明细主键
86
      * @return 结果
86
      * @return 结果
87
      */
87
      */
88
     @Override
88
     @Override
89
-    public int deleteCmcBorrowDetailByBorrowDetailId(String borrowDetailId)
89
+    public int deleteCmcBorrowDetailByBorrowId(String borrowId)
90
     {
90
     {
91
-        return cmcBorrowDetailMapper.deleteCmcBorrowDetailByBorrowDetailId(borrowDetailId);
91
+        return cmcBorrowDetailMapper.deleteCmcBorrowDetailByBorrowId(borrowId);
92
     }
92
     }
93
 }
93
 }

+ 9
- 9
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/impl/CmcBorrowServiceImpl.java View File

22
     /**
22
     /**
23
      * 查询cmc借款申请
23
      * 查询cmc借款申请
24
      * 
24
      * 
25
-     * @param borrowJd cmc借款申请主键
25
+     * @param borrowId cmc借款申请主键
26
      * @return cmc借款申请
26
      * @return cmc借款申请
27
      */
27
      */
28
     @Override
28
     @Override
29
-    public CmcBorrow selectCmcBorrowByBorrowJd(String borrowJd)
29
+    public CmcBorrow selectCmcBorrowByBorrowId(String borrowId)
30
     {
30
     {
31
-        return cmcBorrowMapper.selectCmcBorrowByBorrowJd(borrowJd);
31
+        return cmcBorrowMapper.selectCmcBorrowByBorrowId(borrowId);
32
     }
32
     }
33
 
33
 
34
     /**
34
     /**
70
     /**
70
     /**
71
      * 批量删除cmc借款申请
71
      * 批量删除cmc借款申请
72
      * 
72
      * 
73
-     * @param borrowJds 需要删除的cmc借款申请主键
73
+     * @param borrowIds 需要删除的cmc借款申请主键
74
      * @return 结果
74
      * @return 结果
75
      */
75
      */
76
     @Override
76
     @Override
77
-    public int deleteCmcBorrowByBorrowJds(String[] borrowJds)
77
+    public int deleteCmcBorrowByBorrowIds(String[] borrowIds)
78
     {
78
     {
79
-        return cmcBorrowMapper.deleteCmcBorrowByBorrowJds(borrowJds);
79
+        return cmcBorrowMapper.deleteCmcBorrowByBorrowIds(borrowIds);
80
     }
80
     }
81
 
81
 
82
     /**
82
     /**
83
      * 删除cmc借款申请信息
83
      * 删除cmc借款申请信息
84
      * 
84
      * 
85
-     * @param borrowJd cmc借款申请主键
85
+     * @param borrowId cmc借款申请主键
86
      * @return 结果
86
      * @return 结果
87
      */
87
      */
88
     @Override
88
     @Override
89
-    public int deleteCmcBorrowByBorrowJd(String borrowJd)
89
+    public int deleteCmcBorrowByBorrowId(String borrowId)
90
     {
90
     {
91
-        return cmcBorrowMapper.deleteCmcBorrowByBorrowJd(borrowJd);
91
+        return cmcBorrowMapper.deleteCmcBorrowByBorrowId(borrowId);
92
     }
92
     }
93
 }
93
 }

+ 8
- 8
oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcBorrowDetailMapper.xml View File

34
         </where>
34
         </where>
35
     </select>
35
     </select>
36
     
36
     
37
-    <select id="selectCmcBorrowDetailByBorrowDetailId" parameterType="String" resultMap="CmcBorrowDetailResult">
37
+    <select id="selectCmcBorrowDetailByBorrowId" parameterType="String" resultMap="CmcBorrowDetailResult">
38
         <include refid="selectCmcBorrowDetailVo"/>
38
         <include refid="selectCmcBorrowDetailVo"/>
39
-        where borrow_detail_id = #{borrowDetailId}
39
+        where borrow_id = #{borrowId}
40
     </select>
40
     </select>
41
         
41
         
42
     <insert id="insertCmcBorrowDetail" parameterType="CmcBorrowDetail">
42
     <insert id="insertCmcBorrowDetail" parameterType="CmcBorrowDetail">
80
         where borrow_detail_id = #{borrowDetailId}
80
         where borrow_detail_id = #{borrowDetailId}
81
     </update>
81
     </update>
82
 
82
 
83
-    <delete id="deleteCmcBorrowDetailByBorrowDetailId" parameterType="String">
84
-        delete from cmc_borrow_detail where borrow_detail_id = #{borrowDetailId}
83
+    <delete id="deleteCmcBorrowDetailByBorrowId" parameterType="String">
84
+        delete from cmc_borrow_detail where borrow_id = #{borrowId}
85
     </delete>
85
     </delete>
86
 
86
 
87
-    <delete id="deleteCmcBorrowDetailByBorrowDetailIds" parameterType="String">
88
-        delete from cmc_borrow_detail where borrow_detail_id in 
89
-        <foreach item="borrowDetailId" collection="array" open="(" separator="," close=")">
90
-            #{borrowDetailId}
87
+    <delete id="deleteCmcBorrowDetailByBorrowIds" parameterType="String">
88
+        delete from cmc_borrow_detail where borrow_id in
89
+        <foreach item="borrowId" collection="array" open="(" separator="," close=")">
90
+            #{borrowId}
91
         </foreach>
91
         </foreach>
92
     </delete>
92
     </delete>
93
 </mapper>
93
 </mapper>

+ 54
- 21
oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcBorrowMapper.xml View File

5
 <mapper namespace="com.ruoyi.oa.mapper.CmcBorrowMapper">
5
 <mapper namespace="com.ruoyi.oa.mapper.CmcBorrowMapper">
6
     
6
     
7
     <resultMap type="CmcBorrow" id="CmcBorrowResult">
7
     <resultMap type="CmcBorrow" id="CmcBorrowResult">
8
-        <result property="borrowJd"    column="borrow_jd"    />
8
+        <result property="borrowId"    column="borrow_id"    />
9
         <result property="projectId"    column="project_id"    />
9
         <result property="projectId"    column="project_id"    />
10
-        <result property="borrowType"    column="borrow_type"    />
11
         <result property="applyReason"    column="apply_reason"    />
10
         <result property="applyReason"    column="apply_reason"    />
12
         <result property="applier"    column="applier"    />
11
         <result property="applier"    column="applier"    />
13
         <result property="applyDept"    column="apply_dept"    />
12
         <result property="applyDept"    column="apply_dept"    />
29
         <result property="managerTime"    column="manager_time"    />
28
         <result property="managerTime"    column="manager_time"    />
30
         <result property="zjlTime"    column="zjl_time"    />
29
         <result property="zjlTime"    column="zjl_time"    />
31
         <result property="lendTime"    column="lend_time"    />
30
         <result property="lendTime"    column="lend_time"    />
32
-        <association property="applierUser"    javaType="SysUser"         resultMap="SysUserResult" />
31
+        <association property="applierUser"    javaType="SysUser"         resultMap="ApplierUserResult" />
32
+        <association property="deptUser"    javaType="SysUser"         resultMap="DeptUserResult" />
33
+        <association property="managerUser"    javaType="SysUser"         resultMap="ManagerUserResult" />
34
+        <association property="xmUser"    javaType="SysUser"         resultMap="XmUserResult" />
35
+        <association property="zjlUser"    javaType="SysUser"         resultMap="ZjlUserResult" />
36
+        <association property="cwUser"    javaType="SysUser"         resultMap="CwUserResult" />
33
         <association property="dept"    javaType="SysDept"         resultMap="SysDeptResult" />
37
         <association property="dept"    javaType="SysDept"         resultMap="SysDeptResult" />
34
         <association property="project"    javaType="CmcProject"         resultMap="CmcProjectResult" />
38
         <association property="project"    javaType="CmcProject"         resultMap="CmcProjectResult" />
35
     </resultMap>
39
     </resultMap>
36
 
40
 
37
-    <resultMap type="SysUser" id="SysUserResult">
41
+    <resultMap type="SysUser" id="ApplierUserResult">
38
         <result property="userId"    column="user_id"    />
42
         <result property="userId"    column="user_id"    />
39
-        <result property="nickName"    column="nick_name"    />
43
+        <result property="nickName"    column="applier_nick_name"    />
44
+    </resultMap>
45
+
46
+    <resultMap type="SysUser" id="DeptUserResult">
47
+        <result property="userId"    column="user_id"    />
48
+        <result property="nickName"    column="dept_nick_name"    />
49
+    </resultMap>
50
+
51
+    <resultMap type="SysUser" id="ManagerUserResult">
52
+        <result property="userId"    column="user_id"    />
53
+        <result property="nickName"    column="manager_nick_name"    />
54
+    </resultMap>
55
+
56
+    <resultMap type="SysUser" id="XmUserResult">
57
+        <result property="userId"    column="user_id"    />
58
+        <result property="nickName"    column="xm_nick_name"    />
59
+    </resultMap>
60
+
61
+    <resultMap type="SysUser" id="ZjlUserResult">
62
+        <result property="userId"    column="user_id"    />
63
+        <result property="nickName"    column="zjl_nick_name"    />
64
+    </resultMap>
65
+
66
+    <resultMap type="SysUser" id="CwUserResult">
67
+        <result property="userId"    column="user_id"    />
68
+        <result property="nickName"    column="cw_nick_name"    />
40
     </resultMap>
69
     </resultMap>
41
 
70
 
42
     <resultMap type="SysDept" id="SysDeptResult">
71
     <resultMap type="SysDept" id="SysDeptResult">
51
     </resultMap>
80
     </resultMap>
52
 
81
 
53
     <sql id="selectCmcBorrowVo">
82
     <sql id="selectCmcBorrowVo">
54
-        select b.borrow_jd, b.project_id, p.project_number, p.project_name, b.borrow_type, b.apply_reason, b.applier, u.nick_name, d.dept_name, b.apply_date, b.apply_amount, b.manager_amount, b.dept_comment, b.dept_user_id, b.xm_user_id, b.xm_comment, b.manager_comment, b.manager_user_id, b.zjl_user_id, b.zjl_comment, b.cw_user_id, b.cw_comment, b.dept_time, b.xm_time, b.manager_time, b.zjl_time, b.lend_time from cmc_borrow as b
83
+        select b.borrow_id, b.project_id, p.project_number, p.project_name, b.apply_reason, b.applier, u.nick_name as applier_nick_name, d.dept_name, b.apply_dept,
84
+               b.apply_date, b.apply_amount, b.manager_amount, b.dept_comment, b.dept_user_id, u1.nick_name as dept_nick_name, b.xm_user_id, u2.nick_name as xm_nick_name, b.xm_comment,
85
+               b.manager_comment, b.manager_user_id, u3.nick_name as manager_nick_name, b.zjl_user_id, u4.nick_name as zjl_nick_name, b.zjl_comment, b.cw_user_id, u5.nick_name as cw_nick_name,
86
+               b.cw_comment, b.dept_time, b.xm_time, b.manager_time, b.zjl_time, b.lend_time from cmc_borrow as b
55
         left join sys_user as u on u.user_id = b.applier
87
         left join sys_user as u on u.user_id = b.applier
88
+        left join sys_user as u1 on u1.user_id = b.dept_user_id
89
+        left join sys_user as u2 on u2.user_id = b.xm_user_id
90
+        left join sys_user as u3 on u3.user_id = b.manager_user_id
91
+        left join sys_user as u4 on u4.user_id = b.zjl_user_id
92
+        left join sys_user as u5 on u5.user_id = b.cw_user_id
56
         left join sys_dept as d on d.dept_id = b.apply_dept
93
         left join sys_dept as d on d.dept_id = b.apply_dept
57
         left join cmc_project as p on b.project_id = p.project_id
94
         left join cmc_project as p on b.project_id = p.project_id
58
     </sql>
95
     </sql>
61
         <include refid="selectCmcBorrowVo"/>
98
         <include refid="selectCmcBorrowVo"/>
62
         <where>  
99
         <where>  
63
             <if test="projectId != null  and projectId != ''"> and b.project_id = #{projectId}</if>
100
             <if test="projectId != null  and projectId != ''"> and b.project_id = #{projectId}</if>
64
-            <if test="borrowType != null  and borrowType != ''"> and b.borrow_type = #{borrowType}</if>
65
             <if test="applyReason != null  and applyReason != ''"> and b.apply_reason = #{applyReason}</if>
101
             <if test="applyReason != null  and applyReason != ''"> and b.apply_reason = #{applyReason}</if>
66
             <if test="applyDept != null  and applyDept != ''"> and b.apply_dept = #{applyDept}</if>
102
             <if test="applyDept != null  and applyDept != ''"> and b.apply_dept = #{applyDept}</if>
67
             <if test="applier != null "> and b.applier = #{applier}</if>
103
             <if test="applier != null "> and b.applier = #{applier}</if>
86
         </where>
122
         </where>
87
     </select>
123
     </select>
88
     
124
     
89
-    <select id="selectCmcBorrowByBorrowJd" parameterType="String" resultMap="CmcBorrowResult">
125
+    <select id="selectCmcBorrowByBorrowId" parameterType="String" resultMap="CmcBorrowResult">
90
         <include refid="selectCmcBorrowVo"/>
126
         <include refid="selectCmcBorrowVo"/>
91
-        where b.borrow_jd = #{borrowJd}
127
+        where b.borrow_id = #{borrowId}
92
     </select>
128
     </select>
93
         
129
         
94
     <insert id="insertCmcBorrow" parameterType="CmcBorrow">
130
     <insert id="insertCmcBorrow" parameterType="CmcBorrow">
95
         insert into cmc_borrow
131
         insert into cmc_borrow
96
         <trim prefix="(" suffix=")" suffixOverrides=",">
132
         <trim prefix="(" suffix=")" suffixOverrides=",">
97
-            <if test="borrowJd != null">borrow_jd,</if>
133
+            <if test="borrowId != null">borrow_id,</if>
98
             <if test="projectId != null">project_id,</if>
134
             <if test="projectId != null">project_id,</if>
99
-            <if test="borrowType != null">borrow_type,</if>
100
             <if test="applyReason != null">apply_reason,</if>
135
             <if test="applyReason != null">apply_reason,</if>
101
             <if test="applier != null">applier,</if>
136
             <if test="applier != null">applier,</if>
102
             <if test="applyDept != null">apply_dept,</if>
137
             <if test="applyDept != null">apply_dept,</if>
120
             <if test="lendTime != null">lend_time,</if>
155
             <if test="lendTime != null">lend_time,</if>
121
          </trim>
156
          </trim>
122
         <trim prefix="values (" suffix=")" suffixOverrides=",">
157
         <trim prefix="values (" suffix=")" suffixOverrides=",">
123
-            <if test="borrowJd != null">#{borrowJd},</if>
158
+            <if test="borrowId != null">#{borrowId},</if>
124
             <if test="projectId != null">#{projectId},</if>
159
             <if test="projectId != null">#{projectId},</if>
125
-            <if test="borrowType != null">#{borrowType},</if>
126
             <if test="applyReason != null">#{applyReason},</if>
160
             <if test="applyReason != null">#{applyReason},</if>
127
             <if test="applier != null">#{applier},</if>
161
             <if test="applier != null">#{applier},</if>
128
             <if test="applyDept != null">#{applyDept},</if>
162
             <if test="applyDept != null">#{applyDept},</if>
151
         update cmc_borrow
185
         update cmc_borrow
152
         <trim prefix="SET" suffixOverrides=",">
186
         <trim prefix="SET" suffixOverrides=",">
153
             <if test="projectId != null">project_id = #{projectId},</if>
187
             <if test="projectId != null">project_id = #{projectId},</if>
154
-            <if test="borrowType != null">borrow_type = #{borrowType},</if>
155
             <if test="applyReason != null">apply_reason = #{applyReason},</if>
188
             <if test="applyReason != null">apply_reason = #{applyReason},</if>
156
             <if test="applier != null">applier = #{applier},</if>
189
             <if test="applier != null">applier = #{applier},</if>
157
             <if test="applyDept != null">apply_dept = #{applyDept},</if>
190
             <if test="applyDept != null">apply_dept = #{applyDept},</if>
174
             <if test="zjlTime != null">zjl_time = #{zjlTime},</if>
207
             <if test="zjlTime != null">zjl_time = #{zjlTime},</if>
175
             <if test="lendTime != null">lend_time = #{lendTime},</if>
208
             <if test="lendTime != null">lend_time = #{lendTime},</if>
176
         </trim>
209
         </trim>
177
-        where borrow_jd = #{borrowJd}
210
+        where borrow_id = #{borrowId}
178
     </update>
211
     </update>
179
 
212
 
180
-    <delete id="deleteCmcBorrowByBorrowJd" parameterType="String">
181
-        delete from cmc_borrow where borrow_jd = #{borrowJd}
213
+    <delete id="deleteCmcBorrowByBorrowId" parameterType="String">
214
+        delete from cmc_borrow where borrow_id = #{borrowId}
182
     </delete>
215
     </delete>
183
 
216
 
184
-    <delete id="deleteCmcBorrowByBorrowJds" parameterType="String">
185
-        delete from cmc_borrow where borrow_jd in 
186
-        <foreach item="borrowJd" collection="array" open="(" separator="," close=")">
187
-            #{borrowJd}
217
+    <delete id="deleteCmcBorrowByBorrowIds" parameterType="String">
218
+        delete from cmc_borrow where borrow_id in 
219
+        <foreach item="borrowId" collection="array" open="(" separator="," close=")">
220
+            #{borrowId}
188
         </foreach>
221
         </foreach>
189
     </delete>
222
     </delete>
190
 </mapper>
223
 </mapper>

+ 15
- 1
oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcDeviceApprovalMapper.xml View File

28
         <result property="remark"    column="remark"    />
28
         <result property="remark"    column="remark"    />
29
         <result property="deptTime"    column="dept_time"    />
29
         <result property="deptTime"    column="dept_time"    />
30
         <result property="managerTime"    column="manager_time"    />
30
         <result property="managerTime"    column="manager_time"    />
31
+        <result property="dispatchTime"    column="dispatch_time"    />
31
         <association property="applierUser"    javaType="SysUser"         resultMap="SysUserResult" />
32
         <association property="applierUser"    javaType="SysUser"         resultMap="SysUserResult" />
32
         <association property="dept"    javaType="SysDept"         resultMap="SysDeptResult" />
33
         <association property="dept"    javaType="SysDept"         resultMap="SysDeptResult" />
33
         <association property="project"    javaType="CmcProject"         resultMap="CmcProjectResult" />
34
         <association property="project"    javaType="CmcProject"         resultMap="CmcProjectResult" />
70
     <sql id="selectCmcDeviceApprovalVo">
71
     <sql id="selectCmcDeviceApprovalVo">
71
         select da.device_apply_id, da.applier, u.nick_name as applier_nick_name, da.use_dept, d.dept_name, da.devices, da.project_id, p.project_number, p.project_name,
72
         select da.device_apply_id, da.applier, u.nick_name as applier_nick_name, da.use_dept, d.dept_name, da.devices, da.project_id, p.project_number, p.project_name,
72
                da.apply_reason, da.apply_date, da.return_date, da.begin_date, da.begin_halfday, da.end_date, da.end_halfday, da.days, da.dept_user_id, u1.nick_name as dept_nick_name,
73
                da.apply_reason, da.apply_date, da.return_date, da.begin_date, da.begin_halfday, da.end_date, da.end_halfday, da.days, da.dept_user_id, u1.nick_name as dept_nick_name,
73
-               da.dept_comment, da.manager_user_id, u2.nick_name as manager_nick_name, da.manager_comment, da.dispatcher, u3.nick_name as dispatch_nick_name, da.dispatch_comment, da.estimate_cost, da.remark from cmc_device_approval as da
74
+               da.dept_comment, da.manager_user_id, u2.nick_name as manager_nick_name, da.manager_comment, da.dispatcher, u3.nick_name as dispatch_nick_name, da.dispatch_comment,
75
+               da.estimate_cost, da.remark, da.dept_time, da.manager_time, da.dispatch_time from cmc_device_approval as da
74
             left join sys_user as u on u.user_id = da.applier
76
             left join sys_user as u on u.user_id = da.applier
75
             left join sys_user as u1 on u1.user_id = da.dept_user_id
77
             left join sys_user as u1 on u1.user_id = da.dept_user_id
76
             left join sys_user as u2 on u2.user_id = da.manager_user_id
78
             left join sys_user as u2 on u2.user_id = da.manager_user_id
101
             <if test="dispatcher != null "> and da.dispatcher = #{dispatcher}</if>
103
             <if test="dispatcher != null "> and da.dispatcher = #{dispatcher}</if>
102
             <if test="dispatchComment != null  and dispatchComment != ''"> and da.dispatch_comment = #{dispatchComment}</if>
104
             <if test="dispatchComment != null  and dispatchComment != ''"> and da.dispatch_comment = #{dispatchComment}</if>
103
             <if test="estimateCost != null "> and da.estimate_cost = #{estimateCost}</if>
105
             <if test="estimateCost != null "> and da.estimate_cost = #{estimateCost}</if>
106
+            <if test="deptTime != null "> and da.dept_time = #{deptTime}</if>
107
+            <if test="managerTime != null "> and da.manager_time = #{managerTime}</if>
108
+            <if test="dispatchTime != null "> and da.dispatch_time = #{dispatchTime}</if>
104
         </where>
109
         </where>
105
     </select>
110
     </select>
106
     
111
     
133
             <if test="dispatchComment != null">dispatch_comment,</if>
138
             <if test="dispatchComment != null">dispatch_comment,</if>
134
             <if test="estimateCost != null">estimate_cost,</if>
139
             <if test="estimateCost != null">estimate_cost,</if>
135
             <if test="remark != null">remark,</if>
140
             <if test="remark != null">remark,</if>
141
+            <if test="deptTime != null">dept_time,</if>
142
+            <if test="managerTime != null">manager_time,</if>
143
+            <if test="dispatchTime != null">dispatch_time,</if>
136
          </trim>
144
          </trim>
137
         <trim prefix="values (" suffix=")" suffixOverrides=",">
145
         <trim prefix="values (" suffix=")" suffixOverrides=",">
138
             <if test="deviceApplyId != null">#{deviceApplyId},</if>
146
             <if test="deviceApplyId != null">#{deviceApplyId},</if>
156
             <if test="dispatchComment != null">#{dispatchComment},</if>
164
             <if test="dispatchComment != null">#{dispatchComment},</if>
157
             <if test="estimateCost != null">#{estimateCost},</if>
165
             <if test="estimateCost != null">#{estimateCost},</if>
158
             <if test="remark != null">#{remark},</if>
166
             <if test="remark != null">#{remark},</if>
167
+            <if test="deptTime != null">#{deptTime},</if>
168
+            <if test="managerTime != null">#{managerTime},</if>
169
+            <if test="dispatchTime != null">#{dispatchTime},</if>
159
          </trim>
170
          </trim>
160
     </insert>
171
     </insert>
161
 
172
 
182
             <if test="dispatchComment != null">dispatch_comment = #{dispatchComment},</if>
193
             <if test="dispatchComment != null">dispatch_comment = #{dispatchComment},</if>
183
             <if test="estimateCost != null">estimate_cost = #{estimateCost},</if>
194
             <if test="estimateCost != null">estimate_cost = #{estimateCost},</if>
184
             <if test="remark != null">remark = #{remark},</if>
195
             <if test="remark != null">remark = #{remark},</if>
196
+            <if test="deptTime != null">dept_time = #{deptTime},</if>
197
+            <if test="managerTime != null">manager_time = #{managerTime},</if>
198
+            <if test="dispatchTime != null">dispatch_time = #{dispatchTime},</if>
185
         </trim>
199
         </trim>
186
         where device_apply_id = #{deviceApplyId}
200
         where device_apply_id = #{deviceApplyId}
187
     </update>
201
     </update>

+ 5
- 5
oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcProjectMapper.xml View File

21
         <result property="undertakingDept"    column="undertaking_dept"    />
21
         <result property="undertakingDept"    column="undertaking_dept"    />
22
         <result property="projectPlanner"    column="project_planner"    />
22
         <result property="projectPlanner"    column="project_planner"    />
23
         <result property="siteLeader"    column="site_leader"    />
23
         <result property="siteLeader"    column="site_leader"    />
24
-        <result property="createTime"    column="create_time"    />
24
+        <result property="registerTime"    column="register_time"    />
25
         <result property="planTime"    column="plan_time"    />
25
         <result property="planTime"    column="plan_time"    />
26
         <result property="entryTime"    column="entry_time"    />
26
         <result property="entryTime"    column="entry_time"    />
27
         <result property="exitTime"    column="exit_time"    />
27
         <result property="exitTime"    column="exit_time"    />
43
     </resultMap>
43
     </resultMap>
44
 
44
 
45
     <sql id="selectCmcProjectVo">
45
     <sql id="selectCmcProjectVo">
46
-        select p.project_id, p.project_number, p.project_name, p.project_leader, u.nick_name as leader_nick_name, p.is_finished, p.project_source, p.party_a, p.contact_person, p.telephone, p.contract_id, p.project_type, p.project_level, p.project_registrant, u1.nick_name as registrant_nick_name, p.undertaking_dept, p.project_planner, p.site_leader, p.create_time, p.plan_time, p.entry_time, p.exit_time, p.remark, p.budget_id, p.technical_id from cmc_project as p
46
+        select p.project_id, p.project_number, p.project_name, p.project_leader, u.nick_name as leader_nick_name, p.is_finished, p.project_source, p.party_a, p.contact_person, p.telephone, p.contract_id, p.project_type, p.project_level, p.project_registrant, u1.nick_name as registrant_nick_name, p.undertaking_dept, p.project_planner, p.site_leader, p.register_time, p.plan_time, p.entry_time, p.exit_time, p.remark, p.budget_id, p.technical_id from cmc_project as p
47
         left join sys_user as u on u.user_id = p.project_leader
47
         left join sys_user as u on u.user_id = p.project_leader
48
         left join sys_user as u1 on u1.user_id = p.project_registrant
48
         left join sys_user as u1 on u1.user_id = p.project_registrant
49
     </sql>
49
     </sql>
98
             <if test="undertakingDept != null">undertaking_dept,</if>
98
             <if test="undertakingDept != null">undertaking_dept,</if>
99
             <if test="projectPlanner != null">project_planner,</if>
99
             <if test="projectPlanner != null">project_planner,</if>
100
             <if test="siteLeader != null">site_leader,</if>
100
             <if test="siteLeader != null">site_leader,</if>
101
-            <if test="createTime != null">create_time,</if>
101
+            <if test="registerTime != null">register_time,</if>
102
             <if test="planTime != null">plan_time,</if>
102
             <if test="planTime != null">plan_time,</if>
103
             <if test="entryTime != null">entry_time,</if>
103
             <if test="entryTime != null">entry_time,</if>
104
             <if test="exitTime != null">exit_time,</if>
104
             <if test="exitTime != null">exit_time,</if>
123
             <if test="undertakingDept != null">#{undertakingDept},</if>
123
             <if test="undertakingDept != null">#{undertakingDept},</if>
124
             <if test="projectPlanner != null">#{projectPlanner},</if>
124
             <if test="projectPlanner != null">#{projectPlanner},</if>
125
             <if test="siteLeader != null">#{siteLeader},</if>
125
             <if test="siteLeader != null">#{siteLeader},</if>
126
-            <if test="createTime != null">#{createTime},</if>
126
+            <if test="registerTime != null">#{registerTime},</if>
127
             <if test="planTime != null">#{planTime},</if>
127
             <if test="planTime != null">#{planTime},</if>
128
             <if test="entryTime != null">#{entryTime},</if>
128
             <if test="entryTime != null">#{entryTime},</if>
129
             <if test="exitTime != null">#{exitTime},</if>
129
             <if test="exitTime != null">#{exitTime},</if>
151
             <if test="undertakingDept != null">undertaking_dept = #{undertakingDept},</if>
151
             <if test="undertakingDept != null">undertaking_dept = #{undertakingDept},</if>
152
             <if test="projectPlanner != null">project_planner = #{projectPlanner},</if>
152
             <if test="projectPlanner != null">project_planner = #{projectPlanner},</if>
153
             <if test="siteLeader != null">site_leader = #{siteLeader},</if>
153
             <if test="siteLeader != null">site_leader = #{siteLeader},</if>
154
-            <if test="createTime != null">create_time = #{createTime},</if>
154
+            <if test="registerTime != null">register_time = #{registerTime},</if>
155
             <if test="planTime != null">plan_time = #{planTime},</if>
155
             <if test="planTime != null">plan_time = #{planTime},</if>
156
             <if test="entryTime != null">entry_time = #{entryTime},</if>
156
             <if test="entryTime != null">entry_time = #{entryTime},</if>
157
             <if test="exitTime != null">exit_time = #{exitTime},</if>
157
             <if test="exitTime != null">exit_time = #{exitTime},</if>

+ 9
- 10
oa-back/sql/sql.sql View File

1373
   project_planner		bigint					default null		comment '项目安排人',
1373
   project_planner		bigint					default null		comment '项目安排人',
1374
   site_leader			bigint					default null		comment '现场负责人',
1374
   site_leader			bigint					default null		comment '现场负责人',
1375
   organize_document		varchar(255)			default null		comment '组织交底文档',
1375
   organize_document		varchar(255)			default null		comment '组织交底文档',
1376
-  create_time			datetime				default null		comment '项目登记时间',
1376
+  register_time			datetime				default null		comment '项目登记时间',
1377
   organize_time			datetime				default null		comment '组织交底时间',
1377
   organize_time			datetime				default null		comment '组织交底时间',
1378
   plan_time				datetime				default null		comment '项目安排时间',
1378
   plan_time				datetime				default null		comment '项目安排时间',
1379
   entry_time			datetime				default null		comment '进场时间',
1379
   entry_time			datetime				default null		comment '进场时间',
3750
 -- ----------------------------
3750
 -- ----------------------------
3751
 drop table if exists `cmc_borrow`;
3751
 drop table if exists `cmc_borrow`;
3752
 create table `cmc_borrow`  (
3752
 create table `cmc_borrow`  (
3753
-  `borrow_jd` 		char(19)		not null 	comment '借款申请id',
3753
+  `borrow_id` 		char(19)		not null 	comment '借款申请id',
3754
   `project_id` 		char(19)  		default null comment '项目id',
3754
   `project_id` 		char(19)  		default null comment '项目id',
3755
-  `borrow_type` 	char(1)  		default null comment '借款类型',
3756
   `apply_reason` 	varchar(255)  	default null comment '借款事由',
3755
   `apply_reason` 	varchar(255)  	default null comment '借款事由',
3757
   `applier` 		bigint 			default null comment '借款人',
3756
   `applier` 		bigint 			default null comment '借款人',
3758
   `apply_dept`		bigint			default null comment '申请部门',
3757
   `apply_dept`		bigint			default null comment '申请部门',
3774
   `manager_time` 	datetime 		default null comment '分管审批时间',
3773
   `manager_time` 	datetime 		default null comment '分管审批时间',
3775
   `zjl_time` 		datetime 		default null comment '总经理审批时间',
3774
   `zjl_time` 		datetime 		default null comment '总经理审批时间',
3776
   `lend_time` 		datetime 		default null comment '借款支付时间',
3775
   `lend_time` 		datetime 		default null comment '借款支付时间',
3777
-  primary key (`borrow_jd`)
3776
+  primary key (`borrow_id`)
3778
 ) engine = innodb comment = 'cmc借款申请表';
3777
 ) engine = innodb comment = 'cmc借款申请表';
3779
 
3778
 
3780
 -- ----------------------------
3779
 -- ----------------------------
5349
 INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('3021', '财务部考核', 'assess', NULL, '', '2024-02-21 10:13:27.359', NULL, NULL, '3021', NULL);
5348
 INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('3021', '财务部考核', 'assess', NULL, '', '2024-02-21 10:13:27.359', NULL, NULL, '3021', NULL);
5350
 INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('4001', '用车审批', 'car', NULL, '', '2024-02-23 14:13:15.003', NULL, NULL, '4001', NULL);
5349
 INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('4001', '用车审批', 'car', NULL, '', '2024-02-23 14:13:15.003', NULL, NULL, '4001', NULL);
5351
 INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('5001', '设备审批', 'device', NULL, '', '2024-03-06 09:32:51.728', NULL, NULL, '5001', NULL);
5350
 INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('5001', '设备审批', 'device', NULL, '', '2024-03-06 09:32:51.728', NULL, NULL, '5001', NULL);
5352
-INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('6001', '合同评审', 'contract', NULL, '', '2024-04-02 14:34:45.390', NULL, NULL, '6001', NULL);
5353
-INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('6005', '项目流转', 'project', NULL, '', '2024-04-02 13:23:32.390', NULL, NULL, '6005', NULL);
5354
-INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('6009', '安全交底', 'project', NULL, '', '2024-04-02 11:42:24.390', NULL, NULL, '6009', NULL);
5355
-INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('6013', '技术交底', 'project', NULL, '', '2024-04-02 11:32:12.390', NULL, NULL, '6013', NULL);
5356
-INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('6017', '项目预算', 'project', NULL, '', '2024-04-02 10:02:23.390', NULL, NULL, '6017', NULL);
5357
-INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('7001', '借款审批', 'borrow', NULL, '', '2024-04-15 09:19:36.390', NULL, NULL, '7001', NULL);
5351
+INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('6001', '合同评审', 'contract', NULL, '', '2024-03-15 14:34:45.390', NULL, NULL, '6001', NULL);
5352
+INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('6005', '项目流转', 'project', NULL, '', '2024-03-22 13:23:32.390', NULL, NULL, '6005', NULL);
5353
+INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('6009', '安全交底', 'project', NULL, '', '2024-03-22 11:42:24.390', NULL, NULL, '6009', NULL);
5354
+INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('6013', '技术交底', 'project', NULL, '', '2024-03-22 11:32:12.390', NULL, NULL, '6013', NULL);
5355
+INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('6017', '项目预算', 'project', NULL, '', '2024-03-22 10:02:23.390', NULL, NULL, '6017', NULL);
5356
+INSERT INTO `ACT_RE_DEPLOYMENT` (`ID_`, `NAME_`, `CATEGORY_`, `KEY_`, `TENANT_ID_`, `DEPLOY_TIME_`, `DERIVED_FROM_`, `DERIVED_FROM_ROOT_`, `PARENT_DEPLOYMENT_ID_`, `ENGINE_VERSION_`) VALUES ('7001', '借款审批', 'borrow', NULL, '', '2024-04-07 09:19:36.390', NULL, NULL, '7001', NULL);
5358
 COMMIT;
5357
 COMMIT;
5359
 
5358
 
5360
 -- ----------------------------
5359
 -- ----------------------------

+ 4
- 4
oa-ui/src/api/oa/borrow/borrow.js View File

10
 }
10
 }
11
 
11
 
12
 // 查询cmc借款申请详细
12
 // 查询cmc借款申请详细
13
-export function getBorrow(borrowJd) {
13
+export function getBorrow(borrowId) {
14
   return request({
14
   return request({
15
-    url: '/oa/borrow/' + borrowJd,
15
+    url: '/oa/borrow/' + borrowId,
16
     method: 'get'
16
     method: 'get'
17
   })
17
   })
18
 }
18
 }
36
 }
36
 }
37
 
37
 
38
 // 删除cmc借款申请
38
 // 删除cmc借款申请
39
-export function delBorrow(borrowJd) {
39
+export function delBorrow(borrowId) {
40
   return request({
40
   return request({
41
-    url: '/oa/borrow/' + borrowJd,
41
+    url: '/oa/borrow/' + borrowId,
42
     method: 'delete'
42
     method: 'delete'
43
   })
43
   })
44
 }
44
 }

+ 4
- 4
oa-ui/src/api/oa/borrow/borrowDetail.js View File

10
 }
10
 }
11
 
11
 
12
 // 查询cmc借款明细详细
12
 // 查询cmc借款明细详细
13
-export function getBorrowDetail(borrowDetailId) {
13
+export function getBorrowDetail(borrowId) {
14
   return request({
14
   return request({
15
-    url: '/oa/borrowDetail/' + borrowDetailId,
15
+    url: '/oa/borrowDetail/' + borrowId,
16
     method: 'get'
16
     method: 'get'
17
   })
17
   })
18
 }
18
 }
36
 }
36
 }
37
 
37
 
38
 // 删除cmc借款明细
38
 // 删除cmc借款明细
39
-export function delBorrowDetail(borrowDetailId) {
39
+export function delBorrowDetail(borrowId) {
40
   return request({
40
   return request({
41
-    url: '/oa/borrowDetail/' + borrowDetailId,
41
+    url: '/oa/borrowDetail/' + borrowId,
42
     method: 'delete'
42
     method: 'delete'
43
   })
43
   })
44
 }
44
 }

+ 1
- 19
oa-ui/src/api/oa/project/project.js View File

2
  * @Author: wrh
2
  * @Author: wrh
3
  * @Date: 2024-01-30 16:37:46
3
  * @Date: 2024-01-30 16:37:46
4
  * @LastEditors: wrh
4
  * @LastEditors: wrh
5
- * @LastEditTime: 2024-03-27 16:28:08
5
+ * @LastEditTime: 2024-04-16 16:05:21
6
  */
6
  */
7
 /*
7
 /*
8
  * @Author: wrh
8
  * @Author: wrh
47
   })
47
   })
48
 }
48
 }
49
 
49
 
50
-// 提交cmc考核
51
-export function submitProject(data) {
52
-  return request({
53
-    url: '/oa/project/submit',
54
-    method: 'post',
55
-    data: data
56
-  })
57
-}
58
-
59
 // 修改cmc项目
50
 // 修改cmc项目
60
 export function updateProject(data) {
51
 export function updateProject(data) {
61
   return request({
52
   return request({
65
   })
56
   })
66
 }
57
 }
67
 
58
 
68
-// 修改cmc项目
69
-export function modifyProject(data) {
70
-  return request({
71
-    url: '/oa/project/modify',
72
-    method: 'put',
73
-    data: data
74
-  })
75
-}
76
-
77
 // 删除cmc项目
59
 // 删除cmc项目
78
 export function delProject(projectId) {
60
 export function delProject(projectId) {
79
   return request({
61
   return request({

+ 333
- 74
oa-ui/src/views/flowable/form/borrowForm.vue View File

1
 <template>
1
 <template>
2
   <div class="app-container">
2
   <div class="app-container">
3
-    <el-row>
3
+    <el-row :gutter="20">
4
       <el-col :span="18" :xs="24">
4
       <el-col :span="18" :xs="24">
5
         <el-form ref="form" :model="form" :rules="rules" label-width="120px">
5
         <el-form ref="form" :model="form" :rules="rules" label-width="120px">
6
+          <el-row :gutter="20">
7
+            <el-col :span="6" :xs="24">
8
+              <el-form-item label="申请人" prop="user.nickName">
9
+                {{ form.applierUser ? form.applierUser.nickName : form.user.nickName }}
10
+              </el-form-item>
11
+            </el-col>
12
+            <el-col :span="6" :xs="24">
13
+              <el-form-item label="申请部门" prop="dept.deptName">
14
+                {{ form.dept.deptName }}
15
+              </el-form-item>
16
+            </el-col>
17
+            <el-col :span="6" :xs="24">
18
+              <el-form-item label="申请时间:" prop="date">
19
+                <el-date-picker style="width:140px;" v-model="form.applyDate" value-format="yyyy-MM-dd" type="date"
20
+                  placeholder="选择日期" :disabled="taskName != '借款申请'">
21
+                </el-date-picker>
22
+              </el-form-item>
23
+            </el-col>
24
+          </el-row>
6
           <el-form-item label="项目编号:" prop="projectId" v-if="taskForm.procDefName == '借款审批'">
25
           <el-form-item label="项目编号:" prop="projectId" v-if="taskForm.procDefName == '借款审批'">
7
             <el-select v-model="form.projectId" filterable placeholder="请选择" @change="handleSelectProject"
26
             <el-select v-model="form.projectId" filterable placeholder="请选择" @change="handleSelectProject"
8
               :disabled="taskName != '借款申请'" clearable>
27
               :disabled="taskName != '借款申请'" clearable>
25
               }}</el-descriptions-item>
44
               }}</el-descriptions-item>
26
             </el-descriptions>
45
             </el-descriptions>
27
           </el-form-item>
46
           </el-form-item>
28
-          <el-form-item label="申请金额" prop="applyAmount">
29
-            <el-input v-model="form.applyAmount" placeholder="请输入申请金额" />
30
-          </el-form-item>
31
-          <el-form-item label="核准金额" prop="managerAmount">
32
-            <el-input v-model="form.managerAmount" placeholder="请输入核准金额" />
47
+          <el-form-item label="借款明细:">
48
+            <table border="1">
49
+              <tr>
50
+                <td>序号</td>
51
+                <td style="width:200px">开支项目</td>
52
+                <td>单位</td>
53
+                <td>单价</td>
54
+                <td>数量</td>
55
+                <td>申请金额</td>
56
+                <td>项目管理部校核金额</td>
57
+                <td>分管领导审核金额</td>
58
+              </tr>
59
+              <tr v-for="(detail, index) in detailList" :key="index">
60
+                <td>
61
+                  {{ index + 1 }}
62
+                </td>
63
+                <td>
64
+                  <el-input v-model="detail.borrowItem"></el-input>
65
+                </td>
66
+                <td>
67
+                  <el-input v-model="detail.unit"></el-input>
68
+                </td>
69
+                <td>
70
+                  <el-input v-model="detail.price" @change="calculateAmount(detail)"></el-input>
71
+                </td>
72
+                <td>
73
+                  <el-input v-model="detail.quantity" @change="calculateAmount(detail)"></el-input>
74
+                </td>
75
+                <td>
76
+                  <el-input v-model="detail.applyAmount"></el-input>
77
+                </td>
78
+                <td>
79
+                  <el-input v-model="detail.xmAmount" :disabled="taskName != '项目部审核'"
80
+                    @change="calculateXmAmount(detail)"></el-input>
81
+                </td>
82
+                <td>
83
+                  <el-input v-model="detail.managerAmount" :disabled="taskName != '分管审核'"
84
+                    @change="calculateManagerAmount(detail)"></el-input>
85
+                </td>
86
+                <td>
87
+                  <el-button type="danger" icon="el-icon-minus" size="mini" circle
88
+                    @click="deleDetailItem(index)"></el-button>
89
+                </td>
90
+              </tr>
91
+            </table>
92
+            <el-button icon="el-icon-plus" size="mini" @click="addDetailList()" type="primary" plain></el-button>
33
           </el-form-item>
93
           </el-form-item>
94
+          <el-row :gutter="20">
95
+            <el-col :span="6" :xs="24">
96
+              <el-form-item label="申请金额" prop="applyAmount">
97
+                <el-input v-model="form.applyAmount" placeholder="请输入申请金额" :disabled="taskName != '借款申请'" />
98
+              </el-form-item>
99
+            </el-col>
100
+            <el-col :span="6" :xs="24">
101
+              <el-form-item label="核准金额" prop="managerAmount">
102
+                <el-input v-model="form.managerAmount" placeholder="请输入核准金额" :disabled="taskName != '分管审核'" />
103
+              </el-form-item>
104
+            </el-col>
105
+          </el-row>
34
           <el-form-item label="申请人说明" prop="applyReason">
106
           <el-form-item label="申请人说明" prop="applyReason">
35
-            <el-input v-model="form.applyReason" placeholder="请输入申请人说明" />
36
-          </el-form-item>
37
-          <el-form-item label="申请人" prop="user.nickName">
38
-            {{ form.applierUser ? form.applierUser.nickName : form.user.nickName }}
39
-          </el-form-item>
40
-          <el-form-item label="申请部门" prop="dept.deptName">
41
-            {{ form.dept.deptName }}
42
-          </el-form-item>
43
-          <el-form-item label="申请时间:" prop="date">
44
-            <el-date-picker style="width:140px;" v-model="form.applyDate" value-format="yyyy-MM-dd" type="date"
45
-              placeholder="选择日期" :disabled="taskName != '借款申请'">
46
-            </el-date-picker>
107
+            <el-input type="textarea" v-model="form.applyReason" placeholder="请输入申请人说明" :disabled="taskName != '借款申请'" />
47
           </el-form-item>
108
           </el-form-item>
48
           <el-divider></el-divider>
109
           <el-divider></el-divider>
49
-          <el-form-item label="部门意见" prop="deptComment">
50
-            <el-input v-model="form.deptComment" placeholder="请输入部门意见" />
110
+          <el-form-item label="部门负责人意见" prop="deptComment">
111
+            <el-input type="textarea" v-model="form.deptComment" placeholder="请输入部门负责人意见"
112
+              :disabled="taskName != '部门审核'" />
51
           </el-form-item>
113
           </el-form-item>
52
           <el-row>
114
           <el-row>
53
             <el-col :span="6" :xs="24" :offset="12">
115
             <el-col :span="6" :xs="24" :offset="12">
56
               </el-form-item>
118
               </el-form-item>
57
             </el-col>
119
             </el-col>
58
             <el-col :span="6">
120
             <el-col :span="6">
59
-              <el-form-item label="日期:" prop="deptTime" label-width="120px" v-if="showFormItem('部门审核')">
60
-                <el-date-picker style="width:170px;" v-model="form.deptTime" value-format="yyyy-MM-dd" type="date"
61
-                  :disabled="true">
62
-                </el-date-picker>
121
+              <el-form-item label="日期:" label-width="120px" v-if="showFormItem('部门审核')">
122
+                <span> {{ form.deptTime ? form.deptTime : deptTime }} </span>
63
               </el-form-item>
123
               </el-form-item>
64
             </el-col>
124
             </el-col>
65
           </el-row>
125
           </el-row>
66
-          <el-form-item label="项目部审批意见" prop="xmComment">
67
-            <el-input v-model="form.xmComment" placeholder="请输入项目部审批意见" />
68
-          </el-form-item>
69
-          <el-form-item label="项目部审批人" prop="xmUserId">
70
-            <el-input v-model="form.xmUserId" placeholder="请输入项目部审批人" />
71
-          </el-form-item>
72
-          <el-form-item label="项目部审批时间" prop="xmTime">
73
-            <el-date-picker clearable v-model="form.xmTime" type="date" value-format="yyyy-MM-dd"
74
-              placeholder="请选择项目部审批时间">
75
-            </el-date-picker>
76
-          </el-form-item>
77
-          <el-form-item label="分管审批意见" prop="managerComment">
78
-            <el-input v-model="form.managerComment" placeholder="请输入分管审批意见" />
79
-          </el-form-item>
80
-          <el-form-item label="分管审批人" prop="managerUserId">
81
-            <el-input v-model="form.managerUserId" placeholder="请输入分管审批人" />
126
+          <el-form-item label="项目部校核意见" prop="xmComment">
127
+            <el-input type="textarea" v-model="form.xmComment" placeholder="请输入项目部校核意见" :disabled="taskName != '项目部审核'" />
82
           </el-form-item>
128
           </el-form-item>
83
-          <el-form-item label="分管审批时间" prop="managerTime">
84
-            <el-date-picker clearable v-model="form.managerTime" type="date" value-format="yyyy-MM-dd"
85
-              placeholder="请选择分管审批时间">
86
-            </el-date-picker>
129
+          <el-row>
130
+            <el-col :span="6" :xs="24" :offset="12">
131
+              <el-form-item label="签名:" label-width="120px" v-if="showFormItem('项目部审核')">
132
+                <span class="auditor"> {{ form.xmUser ? form.xmUser.nickName : xmUser }} </span>
133
+              </el-form-item>
134
+            </el-col>
135
+            <el-col :span="6">
136
+              <el-form-item label="日期:" label-width="120px" v-if="showFormItem('项目部审核')">
137
+                <span> {{ form.xmTime ? form.xmTime : xmTime }} </span>
138
+              </el-form-item>
139
+            </el-col>
140
+          </el-row>
141
+          <el-form-item label="分管领导审核意见" prop="managerComment">
142
+            <el-input type="textarea" v-model="form.managerComment" placeholder="请输入分管领导审核意见"
143
+              :disabled="taskName != '分管审核'" />
87
           </el-form-item>
144
           </el-form-item>
145
+          <el-row>
146
+            <el-col :span="6" :xs="24" :offset="12">
147
+              <el-form-item label="签名:" label-width="120px" v-if="showFormItem('分管审核')">
148
+                <span class="auditor"> {{ form.managerUser ? form.managerUser.nickName : managerUser }} </span>
149
+              </el-form-item>
150
+            </el-col>
151
+            <el-col :span="6">
152
+              <el-form-item label="日期:" label-width="120px" v-if="showFormItem('分管审核')">
153
+                <span> {{ form.managerTime ? form.managerTime : managerTime }} </span>
154
+              </el-form-item>
155
+            </el-col>
156
+          </el-row>
88
           <el-form-item label="总经理审批意见" prop="zjlComment">
157
           <el-form-item label="总经理审批意见" prop="zjlComment">
89
-            <el-input v-model="form.zjlComment" placeholder="请输入总经理审批意见" />
90
-          </el-form-item>
91
-          <el-form-item label="总经理审批人" prop="zjlUserId">
92
-            <el-input v-model="form.zjlUserId" placeholder="请输入总经理审批人" />
93
-          </el-form-item>
94
-          <el-form-item label="总经理审批时间" prop="zjlTime">
95
-            <el-date-picker clearable v-model="form.zjlTime" type="date" value-format="yyyy-MM-dd"
96
-              placeholder="请选择总经理审批时间">
97
-            </el-date-picker>
98
-          </el-form-item>
99
-          <el-form-item label="财务部经办人" prop="cwUserId">
100
-            <el-input v-model="form.cwUserId" placeholder="请输入财务部经办人" />
101
-          </el-form-item>
102
-          <el-form-item label="借款支付时间" prop="lendTime">
103
-            <el-date-picker clearable v-model="form.lendTime" type="date" value-format="yyyy-MM-dd"
104
-              placeholder="请选择借款支付时间">
105
-            </el-date-picker>
158
+            <el-input type="textarea" v-model="form.zjlComment" placeholder="请输入总经理审批意见"
159
+              :disabled="taskName != '总经理审核'" />
106
           </el-form-item>
160
           </el-form-item>
161
+          <el-row>
162
+            <el-col :span="6" :xs="24" :offset="12">
163
+              <el-form-item label="签名:" label-width="120px" v-if="showFormItem('总经理审核')">
164
+                <span class="auditor"> {{ form.zjlUser ? form.zjlUser.nickName : zjlUser }} </span>
165
+              </el-form-item>
166
+            </el-col>
167
+            <el-col :span="6">
168
+              <el-form-item label="日期:" label-width="120px" v-if="showFormItem('总经理审核')">
169
+                <span> {{ form.zjlTime ? form.zjlTime : zjlTime }} </span>
170
+              </el-form-item>
171
+            </el-col>
172
+          </el-row>
107
           <el-form-item label="财务部支付备注" prop="cwComment">
173
           <el-form-item label="财务部支付备注" prop="cwComment">
108
-            <el-input v-model="form.cwComment" placeholder="请输入财务部支付备注" />
174
+            <el-input type="textarea" v-model="form.cwComment" placeholder="请输入财务部支付备注" :disabled="taskName != '财务处理'" />
109
           </el-form-item>
175
           </el-form-item>
176
+          <el-row>
177
+            <el-col :span="6" :xs="24" :offset="12">
178
+              <el-form-item label="经办人:" label-width="120px" v-if="showFormItem('财务处理')">
179
+                <span class="auditor"> {{ form.cwUser ? form.cwUser.nickName : cwUser }} </span>
180
+              </el-form-item>
181
+            </el-col>
182
+            <el-col :span="6">
183
+              <el-form-item label="支付日期:" style="margin-left:20px" prop="lendTime" v-if="showFormItem('财务处理')">
184
+                <el-date-picker style="width:160px;" v-model="form.lendTime" value-format="yyyy-MM-dd" type="date"
185
+                  placeholder="选择日期" :disabled="taskName != '财务处理'">
186
+                </el-date-picker>
187
+              </el-form-item>
188
+            </el-col>
189
+          </el-row>
110
         </el-form>
190
         </el-form>
111
-        <div slot="footer" class="dialog-footer">
191
+        <div style="text-align: center;">
112
           <el-button type="primary" @click="submitForm">确 定</el-button>
192
           <el-button type="primary" @click="submitForm">确 定</el-button>
113
           <el-button @click="cancel">取 消</el-button>
193
           <el-button @click="cancel">取 消</el-button>
114
         </div>
194
         </div>
126
 </template>
206
 </template>
127
 
207
 
128
 <script>
208
 <script>
209
+import { parseTime } from "@/utils/ruoyi";
210
+import { getUsersDeptLeader, getUsersDeptLeaderByDept, getUsersManageLeaderByDept } from '@/api/system/post.js'
129
 import { listBorrow, getBorrow, delBorrow, addBorrow, updateBorrow } from "@/api/oa/borrow/borrow";
211
 import { listBorrow, getBorrow, delBorrow, addBorrow, updateBorrow } from "@/api/oa/borrow/borrow";
212
+import { getBorrowDetail, addBorrowDetail, updateBorrowDetail } from "@/api/oa/borrow/borrowDetail";
130
 import { listProject, getProject } from "@/api/oa/project/project";
213
 import { listProject, getProject } from "@/api/oa/project/project";
131
 import flow from '@/views/flowable/task/todo/detail/flow'
214
 import flow from '@/views/flowable/task/todo/detail/flow'
132
 import { flowXmlAndNode } from "@/api/flowable/definition";
215
 import { flowXmlAndNode } from "@/api/flowable/definition";
216
+import { complete, getNextFlowNode } from "@/api/flowable/todo";
133
 
217
 
134
 export default {
218
 export default {
135
   components: {
219
   components: {
148
   },
232
   },
149
   data() {
233
   data() {
150
     return {
234
     return {
235
+      deptUser: '',
236
+      xmUser: '',
237
+      managerUser: '',
238
+      zjlUser: '',
239
+      cwUser: '',
240
+      deptTime: '',
241
+      xmTime: '',
242
+      managerTime: '',
243
+      zjlTime: '',
244
+      lendTime: '',
151
       // 遮罩层
245
       // 遮罩层
152
       loading: true,
246
       loading: true,
153
       // 选中数组
247
       // 选中数组
171
         pageNum: 1,
265
         pageNum: 1,
172
         pageSize: 10,
266
         pageSize: 10,
173
         projectId: null,
267
         projectId: null,
174
-        borrowType: null,
175
         applyReason: null,
268
         applyReason: null,
176
         applier: null,
269
         applier: null,
177
         applyDate: null,
270
         applyDate: null,
193
         zjlTime: null,
286
         zjlTime: null,
194
         lendTime: null
287
         lendTime: null
195
       },
288
       },
289
+      detail: {},
290
+      detailList: [],
196
       projectList: [],
291
       projectList: [],
197
       chooseProject: {},
292
       chooseProject: {},
198
       isSelect: false,
293
       isSelect: false,
209
       // 表单校验
304
       // 表单校验
210
       rules: {
305
       rules: {
211
       },
306
       },
307
+      formTotal: 0,
212
       flowData: {}
308
       flowData: {}
213
     };
309
     };
214
   },
310
   },
215
   created() {
311
   created() {
312
+    if (this.taskName == '部门审核') {
313
+      this.deptUser = this.$store.getters.name;
314
+      this.deptTime = parseTime(new Date(), '{y}-{m}-{d}')
315
+    }
316
+    if (this.taskName == '分管审核') {
317
+      this.managerUser = this.$store.getters.name;
318
+      this.managerTime = parseTime(new Date(), '{y}-{m}-{d}')
319
+    }
320
+    if (this.taskName == '项目部审核') {
321
+      this.xmUser = this.$store.getters.name;
322
+      this.xmTime = parseTime(new Date(), '{y}-{m}-{d}')
323
+    }
324
+    if (this.taskName == '总经理审核') {
325
+      this.zjlUser = this.$store.getters.name;
326
+      this.zjlTime = parseTime(new Date(), '{y}-{m}-{d}')
327
+    }
328
+    if (this.taskName == '财务处理') {
329
+      this.cwUser = this.$store.getters.name;
330
+      this.lendTime = parseTime(new Date(), '{y}-{m}-{d}')
331
+    }
216
     this.form.applyDate = new Date();
332
     this.form.applyDate = new Date();
217
     this.form.user.nickName = this.$store.getters.name;
333
     this.form.user.nickName = this.$store.getters.name;
218
     this.form.dept.deptName = this.$store.getters.deptName;
334
     this.form.dept.deptName = this.$store.getters.deptName;
222
       this.flowData = res.data;
338
       this.flowData = res.data;
223
     })
339
     })
224
   },
340
   },
341
+  mounted() {
342
+    this.initForm();
343
+  },
225
   methods: {
344
   methods: {
345
+    initForm() {
346
+      getBorrowDetail(this.taskForm.formId).then(res => {
347
+        this.detailList = res.data;
348
+      });
349
+      getBorrow(this.taskForm.formId).then(res => {
350
+        if (this.isEmptyObject(res.data)) {
351
+          this.formTotal = 0;
352
+          this.form.applier = this.$store.getters.userId;
353
+        }
354
+        else {
355
+          this.formTotal = 1;
356
+          this.form = res.data;
357
+        }
358
+      })
359
+    },
226
     /** 查询cmc借款申请列表 */
360
     /** 查询cmc借款申请列表 */
227
     getList() {
361
     getList() {
228
       this.loading = true;
362
       this.loading = true;
258
       this.open = false;
392
       this.open = false;
259
       this.reset();
393
       this.reset();
260
     },
394
     },
395
+    isEmptyObject(obj) {
396
+      for (var key in obj) {
397
+        if (obj.hasOwnProperty(key)) {
398
+          return false;
399
+        }
400
+      }
401
+      return true;
402
+    },
403
+    deleDetailItem(index) {
404
+      let arr = this.detailList;
405
+      if (arr.length == 1) {
406
+        return;
407
+      }
408
+      if (index >= 0 && index < arr.length) {
409
+        arr.splice(index, 1);
410
+      }
411
+    },
412
+    addDetailList() {
413
+      this.detailList.push({
414
+        borrowItem: '',
415
+        unit: '',
416
+        price: '',
417
+        quantity: '',
418
+        applyAmount: '',
419
+        xmAmount: '',
420
+        managerAmount: '',
421
+      });
422
+    },
261
     // 表单重置
423
     // 表单重置
262
     reset() {
424
     reset() {
263
       this.form = {
425
       this.form = {
264
-        borrowJd: null,
426
+        borrowId: null,
265
         projectId: null,
427
         projectId: null,
266
-        borrowType: null,
267
         applyReason: null,
428
         applyReason: null,
268
         applier: null,
429
         applier: null,
269
         applyDate: null,
430
         applyDate: null,
299
     },
460
     },
300
     // 多选框选中数据
461
     // 多选框选中数据
301
     handleSelectionChange(selection) {
462
     handleSelectionChange(selection) {
302
-      this.ids = selection.map(item => item.borrowJd)
463
+      this.ids = selection.map(item => item.borrowId)
303
       this.single = selection.length !== 1
464
       this.single = selection.length !== 1
304
       this.multiple = !selection.length
465
       this.multiple = !selection.length
305
     },
466
     },
312
     /** 修改按钮操作 */
473
     /** 修改按钮操作 */
313
     handleUpdate(row) {
474
     handleUpdate(row) {
314
       this.reset();
475
       this.reset();
315
-      const borrowJd = row.borrowJd || this.ids
316
-      getBorrow(borrowJd).then(response => {
476
+      const borrowId = row.borrowId || this.ids
477
+      getBorrow(borrowId).then(response => {
317
         this.form = response.data;
478
         this.form = response.data;
318
         this.open = true;
479
         this.open = true;
319
         this.title = "修改cmc借款申请";
480
         this.title = "修改cmc借款申请";
323
     submitForm() {
484
     submitForm() {
324
       this.$refs["form"].validate(valid => {
485
       this.$refs["form"].validate(valid => {
325
         if (valid) {
486
         if (valid) {
326
-          if (this.form.borrowJd != null) {
487
+          if (this.formTotal != 0) {
488
+            for (let detail of this.detailList) {
489
+              updateBorrowDetail(detail);
490
+            }
327
             updateBorrow(this.form).then(response => {
491
             updateBorrow(this.form).then(response => {
328
               this.$modal.msgSuccess("修改成功");
492
               this.$modal.msgSuccess("修改成功");
329
               this.open = false;
493
               this.open = false;
330
               this.getList();
494
               this.getList();
331
             });
495
             });
496
+            const params = { taskId: this.taskForm.taskId };
497
+            getNextFlowNode(params).then(res => {
498
+              if (this.taskName == '部门审核') {
499
+                getUsersDeptLeaderByDept({ deptId: 107 }).then(res => {
500
+                  let userId = res.data.userId;
501
+                  this.$set(this.taskForm.variables, "approval", userId);
502
+                  complete(this.taskForm).then(response => {
503
+                    this.$modal.msgSuccess(response.msg);
504
+                    this.$emit('goBack')
505
+                  });
506
+                });
507
+              }
508
+              else if (this.taskName == '项目部审核') {
509
+                getUsersManageLeaderByDept({ deptId: this.form.applyDept }).then(res => {
510
+                  let userId = res.data.userId;
511
+                  this.$set(this.taskForm.variables, "approval", userId);
512
+                  complete(this.taskForm).then(response => {
513
+                    this.$modal.msgSuccess(response.msg);
514
+                    this.$emit('goBack')
515
+                  });
516
+                });
517
+              }
518
+              else if (this.taskName == '分管审核') {
519
+                this.$set(this.taskForm.variables, "approval", 2);
520
+                complete(this.taskForm).then(response => {
521
+                  this.$modal.msgSuccess(response.msg);
522
+                  this.$emit('goBack')
523
+                });
524
+              }
525
+              else if (this.taskName == '总经理审核') {
526
+                getUsersDeptLeaderByDept({ deptId: 106 }).then(res => {
527
+                  let userId = res.data.userId;
528
+                  this.$set(this.taskForm.variables, "approval", userId);
529
+                  complete(this.taskForm).then(response => {
530
+                    this.$modal.msgSuccess(response.msg);
531
+                    this.$emit('goBack')
532
+                  });
533
+                });
534
+              }
535
+              else if (this.taskName == '财务处理') {
536
+                complete(this.taskForm).then(response => {
537
+                  this.$modal.msgSuccess(response.msg);
538
+                  this.$emit('goBack')
539
+                });
540
+              }
541
+            })
332
           } else {
542
           } else {
543
+            for (let detail of this.detailList) {
544
+              detail.borrowId = this.taskForm.formId;
545
+              addBorrowDetail(detail);
546
+            }
547
+            this.form.borrowId = this.taskForm.formId;
333
             addBorrow(this.form).then(response => {
548
             addBorrow(this.form).then(response => {
334
               this.$modal.msgSuccess("新增成功");
549
               this.$modal.msgSuccess("新增成功");
335
               this.open = false;
550
               this.open = false;
336
               this.getList();
551
               this.getList();
337
             });
552
             });
553
+            const params = { taskId: this.taskForm.taskId };
554
+            getNextFlowNode(params).then(res => {
555
+              getUsersDeptLeader({ userId: this.$store.getters.userId }).then(res => {
556
+                let userId = res.data.userId;
557
+                this.$set(this.taskForm.variables, "approval", userId);
558
+                complete(this.taskForm).then(response => {
559
+                  this.$modal.msgSuccess(response.msg);
560
+                  this.$emit('goBack')
561
+                });
562
+              })
563
+            })
338
           }
564
           }
339
         }
565
         }
340
       });
566
       });
341
     },
567
     },
342
     /** 删除按钮操作 */
568
     /** 删除按钮操作 */
343
     handleDelete(row) {
569
     handleDelete(row) {
344
-      const borrowJds = row.borrowJd || this.ids;
345
-      this.$modal.confirm('是否确认删除cmc借款申请编号为"' + borrowJds + '"的数据项?').then(function () {
346
-        return delBorrow(borrowJds);
570
+      const borrowIds = row.borrowId || this.ids;
571
+      this.$modal.confirm('是否确认删除cmc借款申请编号为"' + borrowIds + '"的数据项?').then(function () {
572
+        return delBorrow(borrowIds);
347
       }).then(() => {
573
       }).then(() => {
348
         this.getList();
574
         this.getList();
349
         this.$modal.msgSuccess("删除成功");
575
         this.$modal.msgSuccess("删除成功");
360
       if (name == '借款申请')
586
       if (name == '借款申请')
361
         isShow = true;
587
         isShow = true;
362
       else if (name == '部门审核')
588
       else if (name == '部门审核')
363
-        isShow = true;
589
+        isShow = (this.taskName != '借款申请');
590
+      else if (name == '项目部审核')
591
+        isShow = (this.taskName != '借款申请' && this.taskName != '部门审核');
592
+      else if (name == '分管审核')
593
+        isShow = (this.taskName != '借款申请' && this.taskName != '部门审核' && this.taskName != '项目部审核');
594
+      else if (name == '总经理审核')
595
+        isShow = (this.taskName == '总经理审核' || this.taskName == '财务处理');
596
+      else if (name == '财务处理')
597
+        isShow = (this.taskName == '财务处理');
364
       return isShow;
598
       return isShow;
365
     },
599
     },
600
+    calculateAmount(detail) {
601
+      let total = Number(detail.price) * Number(detail.quantity);
602
+      this.$set(detail, "applyAmount", total.toFixed(2));
603
+      this.getTotal("applyAmount", "applyAmount", this.detailList);
604
+    },
605
+    calculateXmAmount(detail) {
606
+      this.getTotal("xmAmount", "managerAmount", this.detailList);
607
+    },
608
+    calculateManagerAmount(detail) {
609
+      this.getTotal("managerAmount", "managerAmount", this.detailList);
610
+    },
611
+    getTotal(name1, name2, list) {
612
+      let sum = 0;
613
+      for (let user of list) {
614
+        sum = sum + Number(user[name1]);
615
+      }
616
+      this.form[name2] = sum.toFixed(2);
617
+    },
366
   }
618
   }
367
 };
619
 };
368
 </script>
620
 </script>
621
+
622
+<style>
623
+.auditor {
624
+  font-family: '华文行楷';
625
+  font-size: 20px;
626
+}
627
+</style>

+ 44
- 31
oa-ui/src/views/flowable/form/carForm.vue View File

2
  * @Author: ysh
2
  * @Author: ysh
3
  * @Date: 2024-02-29 11:44:28
3
  * @Date: 2024-02-29 11:44:28
4
  * @LastEditors: wrh
4
  * @LastEditors: wrh
5
- * @LastEditTime: 2024-04-11 14:52:03
5
+ * @LastEditTime: 2024-04-16 09:58:53
6
 -->
6
 -->
7
 
7
 
8
 <template>
8
 <template>
107
               </el-form-item>
107
               </el-form-item>
108
               <el-row>
108
               <el-row>
109
                 <el-col :span="6" :xs="24" :offset="12">
109
                 <el-col :span="6" :xs="24" :offset="12">
110
-                  <el-form-item label="签名:" label-width="120px" v-if="showFormItem('部门审核')">
110
+                  <el-form-item label="签名:" label-width="120px" v-if="showFormItem('部门审核签名')">
111
                     <span class="auditor"> {{ form.deptUser ? form.deptUser.nickName : deptUser }} </span>
111
                     <span class="auditor"> {{ form.deptUser ? form.deptUser.nickName : deptUser }} </span>
112
                   </el-form-item>
112
                   </el-form-item>
113
                 </el-col>
113
                 </el-col>
114
                 <el-col :span="6">
114
                 <el-col :span="6">
115
-                  <el-form-item label="日期:" prop="deptTime" label-width="120px" v-if="showFormItem('部门审核')">
116
-                    <el-date-picker style="width:170px;" v-model="form.deptTime" value-format="yyyy-MM-dd" type="date"
117
-                      :disabled="true">
118
-                    </el-date-picker>
115
+                  <el-form-item label="日期:" label-width="120px" v-if="showFormItem('部门审核签名')">
116
+                    <span> {{ form.deptTime ? form.deptTime : deptTime }} </span>
119
                   </el-form-item>
117
                   </el-form-item>
120
                 </el-col>
118
                 </el-col>
121
               </el-row>
119
               </el-row>
127
               </el-form-item>
125
               </el-form-item>
128
               <el-row>
126
               <el-row>
129
                 <el-col :span="6" :xs="24" :offset="12">
127
                 <el-col :span="6" :xs="24" :offset="12">
130
-                  <el-form-item label="签名:" label-width="120px" v-if="showFormItem('分管审核')">
128
+                  <el-form-item label="签名:" label-width="120px" v-if="showFormItem('分管审核签名')">
131
                     <span class="auditor"> {{ form.managerUser ? form.managerUser.nickName : managerUser }} </span>
129
                     <span class="auditor"> {{ form.managerUser ? form.managerUser.nickName : managerUser }} </span>
132
                   </el-form-item>
130
                   </el-form-item>
133
                 </el-col>
131
                 </el-col>
134
                 <el-col :span="6">
132
                 <el-col :span="6">
135
-                  <el-form-item label="日期:" prop="managerTime" label-width="120px" v-if="showFormItem('分管审核')">
136
-                    <el-date-picker style="width:170px;" v-model="form.managerTime" value-format="yyyy-MM-dd" type="date"
137
-                      :disabled="true">
138
-                    </el-date-picker>
133
+                  <el-form-item label="日期:" label-width="120px" v-if="showFormItem('分管审核签名')">
134
+                    <span> {{ form.managerTime ? form.managerTime : managerTime }} </span>
139
                   </el-form-item>
135
                   </el-form-item>
140
                 </el-col>
136
                 </el-col>
141
               </el-row>
137
               </el-row>
147
               </el-form-item>
143
               </el-form-item>
148
               <el-row>
144
               <el-row>
149
                 <el-col :span="6" :xs="24" :offset="12">
145
                 <el-col :span="6" :xs="24" :offset="12">
150
-                  <el-form-item label="签名:" label-width="120px" v-if="showFormItem('工会审核')">
146
+                  <el-form-item label="签名:" label-width="120px" v-if="showFormItem('工会审核签名')">
151
                     <span class="auditor"> {{ form.unionUser ? form.unionUser.nickName : unionUser }} </span>
147
                     <span class="auditor"> {{ form.unionUser ? form.unionUser.nickName : unionUser }} </span>
152
                   </el-form-item>
148
                   </el-form-item>
153
                 </el-col>
149
                 </el-col>
154
                 <el-col :span="6">
150
                 <el-col :span="6">
155
-                  <el-form-item label="日期:" prop="unionTime" label-width="120px" v-if="showFormItem('工会审核')">
156
-                    <el-date-picker style="width:170px;" v-model="form.unionTime" value-format="yyyy-MM-dd" type="date"
157
-                      :disabled="true">
158
-                    </el-date-picker>
151
+                  <el-form-item label="日期:" label-width="120px" v-if="showFormItem('工会审核签名')">
152
+                    <span> {{ form.unionTime ? form.unionTime : unionTime }} </span>
159
                   </el-form-item>
153
                   </el-form-item>
160
                 </el-col>
154
                 </el-col>
161
               </el-row>
155
               </el-row>
167
               </el-form-item>
161
               </el-form-item>
168
               <el-row>
162
               <el-row>
169
                 <el-col :span="6" :xs="24" :offset="12">
163
                 <el-col :span="6" :xs="24" :offset="12">
170
-                  <el-form-item label="签名:" label-width="120px" v-if="showFormItem('总经理审核')">
164
+                  <el-form-item label="签名:" label-width="120px" v-if="showFormItem('总经理审核签名')">
171
                     <span class="auditor"> {{ form.gmUser ? form.gmUser.nickName : gmUser }} </span>
165
                     <span class="auditor"> {{ form.gmUser ? form.gmUser.nickName : gmUser }} </span>
172
                   </el-form-item>
166
                   </el-form-item>
173
                 </el-col>
167
                 </el-col>
174
                 <el-col :span="6">
168
                 <el-col :span="6">
175
-                  <el-form-item label="日期:" prop="gmTime" label-width="120px" v-if="showFormItem('总经理审核')">
176
-                    <el-date-picker style="width:170px;" v-model="form.gmTime" value-format="yyyy-MM-dd" type="date"
177
-                      :disabled="true">
178
-                    </el-date-picker>
169
+                  <el-form-item label="日期:" label-width="120px" v-if="showFormItem('总经理审核签名')">
170
+                    <span> {{ form.gmTime ? form.gmTime : gmTime }} </span>
179
                   </el-form-item>
171
                   </el-form-item>
180
                 </el-col>
172
                 </el-col>
181
               </el-row>
173
               </el-row>
193
                   </el-form-item>
185
                   </el-form-item>
194
                 </el-col>
186
                 </el-col>
195
                 <el-col :span="6">
187
                 <el-col :span="6">
196
-                  <el-form-item label="日期:" prop="dispatchTime" label-width="120px"
197
-                    v-if="taskName == '安排用车' || taskName == '申请确认'">
198
-                    <el-date-picker style="width:170px;" v-model="form.dispatchTime" value-format="yyyy-MM-dd" type="date"
199
-                      :disabled="true">
200
-                    </el-date-picker>
188
+                  <el-form-item label="日期:" label-width="120px" v-if="taskName == '安排用车' || taskName == '申请确认'">
189
+                    <span> {{ form.dispatchTime ? form.dispatchTime : dispatchTime }} </span>
201
                   </el-form-item>
190
                   </el-form-item>
202
                 </el-col>
191
                 </el-col>
203
               </el-row>
192
               </el-row>
242
 </template>
231
 </template>
243
 
232
 
244
 <script>
233
 <script>
234
+import { parseTime } from "@/utils/ruoyi";
245
 import { listProject, getProject } from "@/api/oa/project/project";
235
 import { listProject, getProject } from "@/api/oa/project/project";
246
 import { listCar, getCar } from "@/api/oa/car/car";
236
 import { listCar, getCar } from "@/api/oa/car/car";
247
 import { listCarApproval, getCarApproval, updateCarApproval, addCarApproval, modifyCarApproval } from '@/api/oa/car/carApproval'
237
 import { listCarApproval, getCarApproval, updateCarApproval, addCarApproval, modifyCarApproval } from '@/api/oa/car/carApproval'
267
     }
257
     }
268
   },
258
   },
269
   created() {
259
   created() {
270
-    if (this.taskName == '部门审核')
260
+    if (this.taskName == '部门审核') {
271
       this.deptUser = this.$store.getters.name;
261
       this.deptUser = this.$store.getters.name;
272
-    if (this.taskName == '分管审核')
262
+      this.deptTime = parseTime(new Date(), '{y}-{m}-{d}')
263
+    }
264
+    if (this.taskName == '分管审核') {
273
       this.managerUser = this.$store.getters.name;
265
       this.managerUser = this.$store.getters.name;
274
-    if (this.taskName == '工会审核')
266
+      this.managerTime = parseTime(new Date(), '{y}-{m}-{d}')
267
+    }
268
+    if (this.taskName == '工会审核') {
275
       this.unionUser = this.$store.getters.name;
269
       this.unionUser = this.$store.getters.name;
276
-    if (this.taskName == '总经理审核')
270
+      this.unionTime = parseTime(new Date(), '{y}-{m}-{d}')
271
+    }
272
+    if (this.taskName == '总经理审核') {
277
       this.gmUser = this.$store.getters.name;
273
       this.gmUser = this.$store.getters.name;
278
-    if (this.taskName == '安排用车')
274
+      this.gmTime = parseTime(new Date(), '{y}-{m}-{d}')
275
+    }
276
+    if (this.taskName == '安排用车') {
279
       this.dispatchUser = this.$store.getters.name;
277
       this.dispatchUser = this.$store.getters.name;
278
+      this.dispatchTime = parseTime(new Date(), '{y}-{m}-{d}')
279
+    }
280
     this.dept = this.$store.getters.deptId;
280
     this.dept = this.$store.getters.deptId;
281
     this.getProjectList();
281
     this.getProjectList();
282
     this.getCarList();
282
     this.getCarList();
292
       unionUser: '',
292
       unionUser: '',
293
       gmUser: '',
293
       gmUser: '',
294
       dispatchUser: '',
294
       dispatchUser: '',
295
+      deptTime: undefined,
296
+      managerTime: undefined,
297
+      unionTime: undefined,
298
+      gmTime: undefined,
299
+      dispatchTime: undefined,
295
       form: {
300
       form: {
296
         carUsage: '0',
301
         carUsage: '0',
297
         days: '',
302
         days: '',
537
         isShow = (this.dept == 0 && this.taskName == '用车申请') || this.taskName == '工会审核' || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.unionUserId != null);
542
         isShow = (this.dept == 0 && this.taskName == '用车申请') || this.taskName == '工会审核' || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.unionUserId != null);
538
       else if (name == '总经理审核')
543
       else if (name == '总经理审核')
539
         isShow = (this.dept == 102 && this.taskName == '用车申请') || this.taskName == '总经理审核' || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.gmUserId != null);
544
         isShow = (this.dept == 102 && this.taskName == '用车申请') || this.taskName == '总经理审核' || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.gmUserId != null);
545
+      else if (name == '部门审核签名')
546
+        isShow = (this.taskName == '部门审核' || this.taskName == '分管审核') || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.deptUserId != null);
547
+      else if (name == '分管审核签名')
548
+        isShow = this.taskName == '分管审核' || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.managerUserId != null);
549
+      else if (name == '工会审核签名')
550
+        isShow = this.taskName == '工会审核' || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.unionUserId != null);
551
+      else if (name == '总经理审核签名')
552
+        isShow = this.taskName == '总经理审核' || ((this.taskName == '安排用车' || this.taskName == '申请确认') && this.form.gmUserId != null);
540
       return isShow;
553
       return isShow;
541
     },
554
     },
542
   },
555
   },

+ 27
- 20
oa-ui/src/views/flowable/form/deviceForm.vue View File

2
  * @Author: ysh
2
  * @Author: ysh
3
  * @Date: 2024-03-07 13:44:39
3
  * @Date: 2024-03-07 13:44:39
4
  * @LastEditors: wrh
4
  * @LastEditors: wrh
5
- * @LastEditTime: 2024-04-11 17:04:54
5
+ * @LastEditTime: 2024-04-16 10:20:19
6
 -->
6
 -->
7
 
7
 
8
 <template>
8
 <template>
94
               </el-form-item>
94
               </el-form-item>
95
               <el-row>
95
               <el-row>
96
                 <el-col :span="6" :xs="24" :offset="12">
96
                 <el-col :span="6" :xs="24" :offset="12">
97
-                  <el-form-item label="签名:" label-width="120px" v-if="showFormItem('部门审核')">
97
+                  <el-form-item label="签名:" label-width="120px" v-if="showFormItem('部门审核签名')">
98
                     <span class="auditor"> {{ form.deptUser ? form.deptUser.nickName : deptUser }} </span>
98
                     <span class="auditor"> {{ form.deptUser ? form.deptUser.nickName : deptUser }} </span>
99
                   </el-form-item>
99
                   </el-form-item>
100
                 </el-col>
100
                 </el-col>
101
                 <el-col :span="6">
101
                 <el-col :span="6">
102
-                  <el-form-item label="日期:" prop="deptTime" label-width="120px" v-if="showFormItem('部门审核')">
103
-                    <el-date-picker style="width:170px;" v-model="form.deptTime" value-format="yyyy-MM-dd" type="date"
104
-                      :disabled="true">
105
-                    </el-date-picker>
102
+                  <el-form-item label="日期:" label-width="120px" v-if="showFormItem('部门审核签名')">
103
+                    <span> {{ form.deptTime ? form.deptTime : deptTime }} </span>
106
                   </el-form-item>
104
                   </el-form-item>
107
                 </el-col>
105
                 </el-col>
108
               </el-row>
106
               </el-row>
114
               </el-form-item>
112
               </el-form-item>
115
               <el-row>
113
               <el-row>
116
                 <el-col :span="6" :xs="24" :offset="12">
114
                 <el-col :span="6" :xs="24" :offset="12">
117
-                  <el-form-item label="签名:" label-width="120px" v-if="showFormItem('分管审核')">
115
+                  <el-form-item label="签名:" label-width="120px" v-if="showFormItem('分管审核签名')">
118
                     <span class="auditor"> {{ form.managerUser ? form.managerUser.nickName : managerUser }} </span>
116
                     <span class="auditor"> {{ form.managerUser ? form.managerUser.nickName : managerUser }} </span>
119
                   </el-form-item>
117
                   </el-form-item>
120
                 </el-col>
118
                 </el-col>
121
                 <el-col :span="6">
119
                 <el-col :span="6">
122
-                  <el-form-item label="日期:" prop="managerTime" label-width="120px" v-if="showFormItem('分管审核')">
123
-                    <el-date-picker style="width:170px;" v-model="form.managerTime" value-format="yyyy-MM-dd" type="date"
124
-                      :disabled="true">
125
-                    </el-date-picker>
120
+                  <el-form-item label="日期:" label-width="120px" v-if="showFormItem('分管审核签名')">
121
+                    <span> {{ form.managerTime ? form.managerTime : managerTime }} </span>
126
                   </el-form-item>
122
                   </el-form-item>
127
                 </el-col>
123
                 </el-col>
128
               </el-row>
124
               </el-row>
140
                   </el-form-item>
136
                   </el-form-item>
141
                 </el-col>
137
                 </el-col>
142
                 <el-col :span="6">
138
                 <el-col :span="6">
143
-                  <el-form-item label="日期:" prop="dispatchTime" label-width="120px"
144
-                    v-if="taskName == '安排设备' || taskName == '申请确认' || taskName == '归还确认'">
145
-                    <el-date-picker style="width:170px;" v-model="form.dispatchTime" value-format="yyyy-MM-dd" type="date"
146
-                      :disabled="true">
147
-                    </el-date-picker>
139
+                  <el-form-item label="日期:" label-width="120px" v-if="taskName == '安排设备' || taskName == '申请确认' || taskName == '归还确认'">
140
+                    <span> {{ form.dispatchTime ? form.dispatchTime : dispatchTime }} </span>
148
                   </el-form-item>
141
                   </el-form-item>
149
                 </el-col>
142
                 </el-col>
150
               </el-row>
143
               </el-row>
151
               <!-- 设备安排 -->
144
               <!-- 设备安排 -->
152
               <el-form-item label-width="120px" label="设备选择:">
145
               <el-form-item label-width="120px" label="设备选择:">
153
-                <el-select v-model="form.devices" filterable multiple placeholder="请选择" @change="handleSelectDevice"
146
+                <el-select style="width: 300px;" v-model="form.devices" filterable multiple placeholder="请选择" @change="handleSelectDevice"
154
                   clearable :disabled="taskName != '安排设备'">
147
                   clearable :disabled="taskName != '安排设备'">
155
                   <el-option v-for="item in deviceList" :key="item.deviceId"
148
                   <el-option v-for="item in deviceList" :key="item.deviceId"
156
                     :label="item.brand + item.series + item.name + item.code" :value="item.deviceId">
149
                     :label="item.brand + item.series + item.name + item.code" :value="item.deviceId">
206
 </template>
199
 </template>
207
 
200
 
208
 <script>
201
 <script>
202
+import { parseTime } from "@/utils/ruoyi";
209
 import { listProject, getProject } from "@/api/oa/project/project";
203
 import { listProject, getProject } from "@/api/oa/project/project";
210
 import { listDevice, getDevice } from "@/api/oa/device/device";
204
 import { listDevice, getDevice } from "@/api/oa/device/device";
211
 import { listDeviceApproval, getDeviceApproval, updateDeviceApproval, submitDeviceApproval, modifyDeviceApproval } from '@/api/oa/device/deviceApproval'
205
 import { listDeviceApproval, getDeviceApproval, updateDeviceApproval, submitDeviceApproval, modifyDeviceApproval } from '@/api/oa/device/deviceApproval'
230
     }
224
     }
231
   },
225
   },
232
   created() {
226
   created() {
233
-    if (this.taskName == '部门审核')
227
+    if (this.taskName == '部门审核') {
234
       this.deptUser = this.$store.getters.name;
228
       this.deptUser = this.$store.getters.name;
235
-    if (this.taskName == '分管审核')
229
+      this.deptTime = parseTime(new Date(), '{y}-{m}-{d}')
230
+    }
231
+    if (this.taskName == '分管审核') {
236
       this.managerUser = this.$store.getters.name;
232
       this.managerUser = this.$store.getters.name;
237
-    if (this.taskName == '安排设备')
233
+      this.managerTime = parseTime(new Date(), '{y}-{m}-{d}')
234
+    }
235
+    if (this.taskName == '安排设备') {
238
       this.dispatchUser = this.$store.getters.name;
236
       this.dispatchUser = this.$store.getters.name;
237
+      this.dispatchTime = parseTime(new Date(), '{y}-{m}-{d}')
238
+    }
239
     this.form.user.nickName = this.$store.getters.name;
239
     this.form.user.nickName = this.$store.getters.name;
240
     this.form.dept.deptName = this.$store.getters.deptName;
240
     this.form.dept.deptName = this.$store.getters.deptName;
241
     this.getProjectList();
241
     this.getProjectList();
249
       deptUser: '',
249
       deptUser: '',
250
       managerUser: '',
250
       managerUser: '',
251
       dispatchUser: '',
251
       dispatchUser: '',
252
+      deptTime: undefined,
253
+      managerTime: undefined,
254
+      dispatchTime: undefined,
252
       form: {
255
       form: {
253
         user: {
256
         user: {
254
           nickName: '',
257
           nickName: '',
463
         isShow = (this.taskName == '设备申请' || this.taskName == '部门审核' || this.taskName == '分管审核') || ((this.taskName == '安排设备' || this.taskName == '申请确认' || this.taskName == '归还确认') && this.form.deptUserId != null);
466
         isShow = (this.taskName == '设备申请' || this.taskName == '部门审核' || this.taskName == '分管审核') || ((this.taskName == '安排设备' || this.taskName == '申请确认' || this.taskName == '归还确认') && this.form.deptUserId != null);
464
       else if (name == '分管审核')
467
       else if (name == '分管审核')
465
         isShow = (this.taskName == '设备申请' || this.taskName == '部门审核' || this.taskName == '分管审核') || ((this.taskName == '安排设备' || this.taskName == '申请确认' || this.taskName == '归还确认') && this.form.managerUserId != null);
468
         isShow = (this.taskName == '设备申请' || this.taskName == '部门审核' || this.taskName == '分管审核') || ((this.taskName == '安排设备' || this.taskName == '申请确认' || this.taskName == '归还确认') && this.form.managerUserId != null);
469
+      else if (name == '部门审核签名')
470
+        isShow = (this.taskName == '部门审核' || this.taskName == '分管审核') || ((this.taskName == '安排设备' || this.taskName == '申请确认' || this.taskName == '归还确认') && this.form.deptUserId != null);
471
+      else if (name == '分管审核签名')
472
+        isShow = this.taskName == '分管审核' || ((this.taskName == '安排设备' || this.taskName == '申请确认' || this.taskName == '归还确认') && this.form.managerUserId != null);
466
       return isShow;
473
       return isShow;
467
     },
474
     },
468
   },
475
   },

+ 40
- 38
oa-ui/src/views/flowable/form/projectProcess/addproject.vue View File

1
 <!--
1
 <!--
2
  * @Author: ysh
2
  * @Author: ysh
3
  * @Date: 2024-02-27 14:49:15
3
  * @Date: 2024-02-27 14:49:15
4
- * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-04-11 14:13:45
4
+ * @LastEditors: wrh
5
+ * @LastEditTime: 2024-04-16 17:03:17
6
 -->
6
 -->
7
 
7
 
8
 <template>
8
 <template>
50
           </tr>
50
           </tr>
51
           <tr v-for="(work, index) in workList" :key="index">
51
           <tr v-for="(work, index) in workList" :key="index">
52
             <td>
52
             <td>
53
-              <el-input v-model="work.content" type="textarea"  clearable :autosize="{ minRows: 4, maxRows: 10}"></el-input>
53
+              <el-input v-model="work.content" type="textarea" clearable
54
+                :autosize="{ minRows: 4, maxRows: 10 }"></el-input>
54
             </td>
55
             </td>
55
             <td>
56
             <td>
56
               <el-input v-model="work.scale" clearable></el-input>
57
               <el-input v-model="work.scale" clearable></el-input>
67
               </el-date-picker>
68
               </el-date-picker>
68
             </td>
69
             </td>
69
             <td>
70
             <td>
70
-              <el-input v-model="work.remark" type="textarea"  clearable :autosize="{ minRows: 4, maxRows: 10}"></el-input>
71
+              <el-input v-model="work.remark" type="textarea" clearable
72
+                :autosize="{ minRows: 4, maxRows: 10 }"></el-input>
71
             </td>
73
             </td>
72
             <td>
74
             <td>
73
-              <el-button type="danger" icon="el-icon-minus" size="mini" circle
74
-                @click="deletWorkItem(index)"></el-button>
75
+              <el-button type="danger" icon="el-icon-minus" size="mini" circle @click="deletWorkItem(index)"></el-button>
75
             </td>
76
             </td>
76
           </tr>
77
           </tr>
77
         </table>
78
         </table>
78
 
79
 
79
         <el-button icon="el-icon-plus" size="mini" @click="addWorkList"></el-button>
80
         <el-button icon="el-icon-plus" size="mini" @click="addWorkList"></el-button>
80
       </el-form-item>
81
       </el-form-item>
81
-      <el-form-item label="项目登记人:" prop="projectRegistrantUser.nickName">
82
-        <el-tag>{{ addForm.projectRegistrantUser.nickName }}</el-tag>
83
-        <!-- <el-input v-model="addForm.projectRegistrant"></el-input> -->
84
-      </el-form-item>
85
       <el-form-item label="备注:" prop="remark">
82
       <el-form-item label="备注:" prop="remark">
86
         <el-input v-model="addForm.remark" type="textarea" rows="3"></el-input>
83
         <el-input v-model="addForm.remark" type="textarea" rows="3"></el-input>
87
       </el-form-item>
84
       </el-form-item>
85
+      <el-row>
86
+        <el-col :span="6" :xs="24" :offset="12">
87
+          <el-form-item label="项目登记人:" prop="registrantUser">
88
+            <span class="auditor"> {{ addForm.projectRegistrantUser ? addForm.projectRegistrantUser.nickName : registrantUser }} </span>
89
+          </el-form-item>
90
+        </el-col>
91
+        <el-col :span="6">
92
+          <el-form-item label="登记日期:" label-width="120px">
93
+            <span> {{ addForm.registerTime ? addForm.registerTime : registerTime }} </span>
94
+          </el-form-item>
95
+        </el-col>
96
+      </el-row>
88
     </el-form>
97
     </el-form>
89
     <div slot="footer" class="dialog-footer" style="text-align: center">
98
     <div slot="footer" class="dialog-footer" style="text-align: center">
90
       <el-button type="primary" @click="confirmAddForm" :disabled="disabled">确 定</el-button>
99
       <el-button type="primary" @click="confirmAddForm" :disabled="disabled">确 定</el-button>
94
 </template>
103
 </template>
95
 
104
 
96
 <script>
105
 <script>
106
+import { parseTime } from "@/utils/ruoyi";
97
 import { mapGetters } from "vuex";
107
 import { mapGetters } from "vuex";
98
-import {
99
-  listProject,
100
-  getProject,
101
-  addProject,
102
-  updateProject,
103
-  delProject,
104
-  submitProject,
105
-} from "@/api/oa/project/project";
108
+import { listProject, getProject, addProject, delProject } from "@/api/oa/project/project";
106
 import { getUser } from "@/api/system/user";
109
 import { getUser } from "@/api/system/user";
107
 import { getUsersDeptLeaderByDept } from "@/api/system/post";
110
 import { getUsersDeptLeaderByDept } from "@/api/system/post";
108
-import {
109
-  complete,
110
-  rejectTask,
111
-  returnList,
112
-  returnTask,
113
-  getNextFlowNode,
114
-  delegate,
115
-  flowTaskForm,
116
-} from "@/api/flowable/todo";
117
-import { getProjectWork } from "@/api/oa/project/projectWork";
111
+import { complete, rejectTask, returnList, returnTask, getNextFlowNode, delegate, flowTaskForm } from "@/api/flowable/todo";
112
+import { getProjectWork, addProjectWork } from "@/api/oa/project/projectWork";
118
 export default {
113
 export default {
119
   props: {
114
   props: {
120
     disabled: {
115
     disabled: {
131
   },
126
   },
132
   data() {
127
   data() {
133
     return {
128
     return {
129
+      registerTime: undefined,
134
       // 查询参数
130
       // 查询参数
135
       queryParams: {
131
       queryParams: {
136
         pageNum: 1,
132
         pageNum: 1,
145
       loading: true,
141
       loading: true,
146
       modifyOpen: false,
142
       modifyOpen: false,
147
       addForm: {
143
       addForm: {
144
+        registerTime: undefined,
148
         projectRegistrant: "",
145
         projectRegistrant: "",
149
-        projectRegistrantUser: {
150
-          nickName: ''
151
-        }
152
       },
146
       },
153
       rules: {
147
       rules: {
154
         projectNumber: [{ required: true, message: "请输入项目编号", trigger: "blur" }],
148
         projectNumber: [{ required: true, message: "请输入项目编号", trigger: "blur" }],
160
           scale: "",
154
           scale: "",
161
           unit: "",
155
           unit: "",
162
           workload: "",
156
           workload: "",
163
-          deadline: "",
157
+          deadline: undefined,
164
           remark: "",
158
           remark: "",
165
         },
159
         },
166
       ],
160
       ],
168
     };
162
     };
169
   },
163
   },
170
   created() {
164
   created() {
165
+    this.registerTime = parseTime(new Date(), '{y}-{m}-{d}')
171
     if (this.$route.query.taskName != '项目登记') {
166
     if (this.$route.query.taskName != '项目登记') {
172
       this.getProjectInfo();
167
       this.getProjectInfo();
173
       this.getProjectWorkList();
168
       this.getProjectWorkList();
174
     } else {
169
     } else {
175
       this.addForm.projectRegistrant = this.userId;
170
       this.addForm.projectRegistrant = this.userId;
176
-      this.addForm.projectRegistrantUser.nickName = this.name;
171
+      this.registrantUser = this.name;
177
     }
172
     }
178
     // this.getList();
173
     // this.getList();
179
   },
174
   },
208
     },
203
     },
209
     confirmAddForm() {
204
     confirmAddForm() {
210
       this.addForm.projectId = this.taskForm.formId;
205
       this.addForm.projectId = this.taskForm.formId;
211
-      this.addForm.workList = this.workList;
212
-      let forms = new FormData();
213
-      forms.append("form", JSON.stringify(this.addForm));
214
-      submitProject(forms).then(response => {
206
+      console.log(this.addForm);
207
+      for (let work of this.workList) {
208
+        work.projectId = this.taskForm.formId;
209
+        addProjectWork(work);
210
+      }
211
+      addProject(this.addForm).then(response => {
215
         this.$modal.msgSuccess("新增成功");
212
         this.$modal.msgSuccess("新增成功");
216
         this.getList();
213
         this.getList();
217
       });
214
       });
237
         scale: "",
234
         scale: "",
238
         unit: "",
235
         unit: "",
239
         workload: "",
236
         workload: "",
240
-        deadline: "",
237
+        deadline: undefined,
241
         remark: "",
238
         remark: "",
242
       });
239
       });
243
     },
240
     },
316
 .el-radio__input.is-disabled.is-checked .el-radio__inner {
313
 .el-radio__input.is-disabled.is-checked .el-radio__inner {
317
   border-color: var(--current-color);
314
   border-color: var(--current-color);
318
 }
315
 }
316
+
317
+.auditor {
318
+  font-family: '华文行楷';
319
+  font-size: 20px;
320
+}
319
 </style>
321
 </style>

+ 45
- 36
oa-ui/src/views/flowable/form/projectProcess/arrangeProject.vue View File

1
 <!--
1
 <!--
2
  * @Author: ysh
2
  * @Author: ysh
3
  * @Date: 2024-03-19 09:24:06
3
  * @Date: 2024-03-19 09:24:06
4
- * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-04-11 16:24:28
4
+ * @LastEditors: wrh
5
+ * @LastEditTime: 2024-04-16 17:01:08
6
 -->
6
 -->
7
 <template>
7
 <template>
8
   <div class="app-container">
8
   <div class="app-container">
9
     <h2 style="text-align: center;">项目安排</h2>
9
     <h2 style="text-align: center;">项目安排</h2>
10
     <el-form :model="form" :rules="rules" label-width="100px" :disabled="disabled">
10
     <el-form :model="form" :rules="rules" label-width="100px" :disabled="disabled">
11
-      <el-form-item label="承担部门:" prop="undertakingDept">
12
-        <el-select v-model="form.deptId" multiple clearable style="width:500px" @change="getDeptLeader">
13
-          <el-option v-for="item in deptList" :key="item.deptId" :label="item.deptName" :value="item.deptId"
14
-            v-if="item.deptName != '四川中水成勘院测绘工程有限责任公司'">
15
-          </el-option>
16
-        </el-select>
17
-      </el-form-item>
18
-      <el-form-item label="部门负责人" prop="deptLeader">
19
-        <el-select v-model="form.deptLeader" multiple clearable style="width:500px">
20
-          <el-option v-for="item in userList" :key="item.userId" :label="item.nickName" :value="item.userId">
21
-          </el-option>
22
-        </el-select>
23
-      </el-form-item>
24
-      <el-form-item label="项目负责人" prop="projectLeader">
25
-        <el-tag effect="plain" type="warning" style="margin-right: 10px;"
26
-          v-if="form.projectLeader != '' && form.projectLeader != undefined">{{
27
-      form.projectLeaderName }}</el-tag>
28
-        <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="choosePeople">选择</el-button>
29
-      </el-form-item>
30
-      <el-form-item label="现场负责人" prop="siteLeader">
31
-        <el-select v-model="form.siteLeader" filterable clearable style="width:500px">
32
-          <el-option v-for="item in userList" :key="item.userId" :label="item.nickName" :value="item.userId"
33
-            v-if="item.nickName != 'admin'">
34
-          </el-option>
35
-        </el-select>
36
-      </el-form-item>
11
+      <el-row>
12
+        <el-col :span="12" :xs="24">
13
+          <el-form-item label="承担部门:" prop="undertakingDept">
14
+            <el-select v-model="form.deptId" multiple clearable style="width:400px" @change="getDeptLeader">
15
+              <el-option v-for="item in deptList" :key="item.deptId" :label="item.deptName" :value="item.deptId"
16
+                v-if="item.deptName != '四川中水成勘院测绘工程有限责任公司'">
17
+              </el-option>
18
+            </el-select>
19
+          </el-form-item>
20
+        </el-col>
21
+        <el-col :span="12" :xs="24">
22
+          <el-form-item label="部门负责人" prop="deptLeader">
23
+            <el-select v-model="form.deptLeader" multiple clearable style="width:400px">
24
+              <el-option v-for="item in userList" :key="item.userId" :label="item.nickName" :value="item.userId">
25
+              </el-option>
26
+            </el-select>
27
+          </el-form-item>
28
+        </el-col>
29
+      </el-row>
30
+      <el-row>
31
+        <el-col :span="12" :xs="24">
32
+          <el-form-item label="项目负责人" prop="projectLeader">
33
+            <el-tag effect="plain" type="warning" style="margin-right: 10px;"
34
+              v-if="form.projectLeader != '' && form.projectLeader != undefined">{{
35
+                form.projectLeaderName }}</el-tag>
36
+            <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="choosePeople">选择</el-button>
37
+          </el-form-item>
38
+        </el-col>
39
+        <el-col :span="12" :xs="24">
40
+          <el-form-item label="现场负责人" prop="siteLeader">
41
+            <el-select v-model="form.siteLeader" filterable clearable style="width:400px">
42
+              <el-option v-for="item in userList" :key="item.userId" :label="item.nickName" :value="item.userId"
43
+                v-if="item.nickName != 'admin'">
44
+              </el-option>
45
+            </el-select>
46
+          </el-form-item>
47
+        </el-col>
48
+      </el-row>
37
     </el-form>
49
     </el-form>
38
     <!-- 人员选择对话框 -->
50
     <!-- 人员选择对话框 -->
39
     <el-dialog width="320px" title="选择项目负责人" :visible.sync="peopleVisible" append-to-body>
51
     <el-dialog width="320px" title="选择项目负责人" :visible.sync="peopleVisible" append-to-body>
40
       <el-form>
52
       <el-form>
41
         <el-form-item label="部门:">
53
         <el-form-item label="部门:">
42
           <el-select v-model="peopleForm.deptId" @change="handleChangeDept">
54
           <el-select v-model="peopleForm.deptId" @change="handleChangeDept">
43
-            <el-option v-for="item in peopleForm.deptList" :key="item.deptId" :label="item.deptName"
44
-              :value="item.deptId" v-if="item.deptName != '四川中水成勘院测绘工程有限责任公司'">
55
+            <el-option v-for="item in peopleForm.deptList" :key="item.deptId" :label="item.deptName" :value="item.deptId"
56
+              v-if="item.deptName != '四川中水成勘院测绘工程有限责任公司'">
45
             </el-option>
57
             </el-option>
46
           </el-select>
58
           </el-select>
47
         </el-form-item>
59
         </el-form-item>
48
         <el-form-item label="人员:">
60
         <el-form-item label="人员:">
49
           <el-select v-model="peopleForm.userId">
61
           <el-select v-model="peopleForm.userId">
50
-            <el-option v-for="item in peopleForm.userList" :key="item.userId" :label="item.nickName"
51
-              :value="item.userId">
62
+            <el-option v-for="item in peopleForm.userList" :key="item.userId" :label="item.nickName" :value="item.userId">
52
             </el-option>
63
             </el-option>
53
           </el-select>
64
           </el-select>
54
         </el-form-item>
65
         </el-form-item>
185
       this.peopleVisible = false;
196
       this.peopleVisible = false;
186
     },
197
     },
187
     confirmPlanForm() {
198
     confirmPlanForm() {
188
-      this.form.undertakingDept = this.form.deptId.join(',')
189
-      let formData = new FormData();
190
-      formData.append("form", JSON.stringify(this.form));
191
-      modifyProject(formData)
199
+      this.form.undertakingDept = this.form.deptId.join(',');
200
+      updateProject(this.form)
192
       const params = { taskId: this.taskForm.taskId };
201
       const params = { taskId: this.taskForm.taskId };
193
       // 获取下一个流程节点
202
       // 获取下一个流程节点
194
       getNextFlowNode(params).then(res => {
203
       getNextFlowNode(params).then(res => {

+ 3
- 3
oa-ui/src/views/flowable/form/projectProcess/scConfirm.vue View File

1
 <!--
1
 <!--
2
  * @Author: ysh
2
  * @Author: ysh
3
  * @Date: 2024-04-08 13:56:14
3
  * @Date: 2024-04-08 13:56:14
4
- * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-04-15 10:33:51
4
+ * @LastEditors: wrh
5
+ * @LastEditTime: 2024-04-16 14:04:51
6
 -->
6
 -->
7
 <template>
7
 <template>
8
   <div class="app-container">
8
   <div class="app-container">
16
         <span class="auditor">{{ form.scApproverName }}</span>
16
         <span class="auditor">{{ form.scApproverName }}</span>
17
         <el-button @click.once="sign" type="primary" size="mini" v-if="taskName == '生产确认'">签名</el-button>
17
         <el-button @click.once="sign" type="primary" size="mini" v-if="taskName == '生产确认'">签名</el-button>
18
       </el-form-item>
18
       </el-form-item>
19
-      <el-form-item label="审核时间:">
19
+      <el-form-item label="确认时间:">
20
         {{ form.scApprovalTime }}
20
         {{ form.scApprovalTime }}
21
       </el-form-item>
21
       </el-form-item>
22
       <el-form-item>
22
       <el-form-item>

+ 26
- 25
oa-ui/src/views/flowable/form/technicalForm.vue View File

62
               </el-form-item>
62
               </el-form-item>
63
             </el-col>
63
             </el-col>
64
             <el-col :span="6">
64
             <el-col :span="6">
65
-              <el-form-item label="日期" prop="technicalTime" v-if="showFormItem('技术安排')">
66
-                <el-date-picker style="width:170px;" clearable v-model="form.technicalTime" type="date"
67
-                  value-format="yyyy-MM-dd" placeholder="请选择技术安排时间" :disabled="taskName != '技术安排'">
68
-                </el-date-picker>
65
+              <el-form-item label="日期:" label-width="120px" v-if="showFormItem('技术安排')">
66
+                <span> {{ form.technicalTime ? form.technicalTime : technicalTime }} </span>
69
               </el-form-item>
67
               </el-form-item>
70
             </el-col>
68
             </el-col>
71
           </el-row>
69
           </el-row>
84
               </el-form-item>
82
               </el-form-item>
85
             </el-col>
83
             </el-col>
86
             <el-col :span="6">
84
             <el-col :span="6">
87
-              <el-form-item label="日期" prop="technicalUploadTime" v-if="showFormItem('方案上传')">
88
-                <el-date-picker style="width:170px;" clearable v-model="form.technicalUploadTime" type="date"
89
-                  value-format="yyyy-MM-dd" placeholder="请选择方案上传时间" :disabled="taskName != '方案上传'">
90
-                </el-date-picker>
85
+              <el-form-item label="日期:" label-width="120px" v-if="showFormItem('方案上传')">
86
+                <span> {{ form.technicalUploadTime ? form.technicalUploadTime : technicalUploadTime }} </span>
91
               </el-form-item>
87
               </el-form-item>
92
             </el-col>
88
             </el-col>
93
           </el-row>
89
           </el-row>
103
               </el-form-item>
99
               </el-form-item>
104
             </el-col>
100
             </el-col>
105
             <el-col :span="6">
101
             <el-col :span="6">
106
-              <el-form-item label="日期" prop="techApprovalTime" v-if="showFormItem('技术审核')">
107
-                <el-date-picker style="width:170px;" clearable v-model="form.techApprovalTime" type="date"
108
-                  value-format="yyyy-MM-dd" placeholder="请选择技术审核时间" :disabled="taskName != '技术审核'">
109
-                </el-date-picker>
102
+              <el-form-item label="日期:" label-width="120px" v-if="showFormItem('技术审核')">
103
+                <span> {{ form.techApprovalTime ? form.techApprovalTime : techApprovalTime }} </span>
110
               </el-form-item>
104
               </el-form-item>
111
             </el-col>
105
             </el-col>
112
           </el-row>
106
           </el-row>
121
               </el-form-item>
115
               </el-form-item>
122
             </el-col>
116
             </el-col>
123
             <el-col :span="6">
117
             <el-col :span="6">
124
-              <el-form-item label="日期" prop="manageApprovalTime" v-if="showFormItem('总工审核')">
125
-                <el-date-picker style="width:170px;" clearable v-model="form.manageApprovalTime" type="date"
126
-                  value-format="yyyy-MM-dd" placeholder="请选择总工审核时间" :disabled="taskName != '总工审核'">
127
-                </el-date-picker>
118
+              <el-form-item label="日期:" label-width="120px" v-if="showFormItem('总工审核')">
119
+                <span> {{ form.manageApprovalTime ? form.manageApprovalTime : manageApprovalTime }} </span>
128
               </el-form-item>
120
               </el-form-item>
129
             </el-col>
121
             </el-col>
130
           </el-row>
122
           </el-row>
147
 </template>
139
 </template>
148
 
140
 
149
 <script>
141
 <script>
142
+import { parseTime } from "@/utils/ruoyi";
150
 import { listTechnical, getTechnical, delTechnical, addTechnical, updateTechnical } from "@/api/oa/technical/technical";
143
 import { listTechnical, getTechnical, delTechnical, addTechnical, updateTechnical } from "@/api/oa/technical/technical";
151
 import { getProject } from "@/api/oa/project/project";
144
 import { getProject } from "@/api/oa/project/project";
152
 import { listUser } from '@/api/system/user';
145
 import { listUser } from '@/api/system/user';
175
       planUser: '',
168
       planUser: '',
176
       managerUser: '',
169
       managerUser: '',
177
       designUser: '',
170
       designUser: '',
171
+      technicalTime: undefined,
172
+      technicalUploadTime: undefined,
173
+      techApprovalTime: undefined,
174
+      manageApprovalTime: undefined,
178
       // 遮罩层
175
       // 遮罩层
179
       loading: true,
176
       loading: true,
180
       // 选中数组
177
       // 选中数组
229
     };
226
     };
230
   },
227
   },
231
   created() {
228
   created() {
232
-    if (this.taskName == '技术安排')
229
+    if (this.taskName == '技术安排') {
233
       this.planUser = this.$store.getters.name;
230
       this.planUser = this.$store.getters.name;
234
-    if (this.taskName == '方案上传')
231
+      this.technicalTime = parseTime(new Date(), '{y}-{m}-{d}')
232
+    }
233
+    if (this.taskName == '方案上传') {
235
       this.designUser = this.$store.getters.name;
234
       this.designUser = this.$store.getters.name;
236
-    if (this.taskName == '技术审核')
235
+      this.technicalUploadTime = parseTime(new Date(), '{y}-{m}-{d}')
236
+    }
237
+    if (this.taskName == '技术审核') {
237
       this.planUser = this.$store.getters.name;
238
       this.planUser = this.$store.getters.name;
238
-    if (this.taskName == '总工审核')
239
+      this.techApprovalTime = parseTime(new Date(), '{y}-{m}-{d}')
240
+    }
241
+    if (this.taskName == '总工审核') {
239
       this.managerUser = this.$store.getters.name;
242
       this.managerUser = this.$store.getters.name;
243
+      this.manageApprovalTime = parseTime(new Date(), '{y}-{m}-{d}')
244
+    }
240
     this.getProjectById();
245
     this.getProjectById();
241
     this.getUserList();
246
     this.getUserList();
242
     this.getList();
247
     this.getList();
253
         if (this.isEmptyObject(res.data)) {
258
         if (this.isEmptyObject(res.data)) {
254
           this.formTotal = 0;
259
           this.formTotal = 0;
255
           this.form.technicalPlanner = this.$store.getters.userId;
260
           this.form.technicalPlanner = this.$store.getters.userId;
256
-          this.form.technicalTime = new Date();
257
         }
261
         }
258
         else {
262
         else {
259
           this.formTotal = 1;
263
           this.formTotal = 1;
269
             data.qualityInspector = arr
273
             data.qualityInspector = arr
270
           }
274
           }
271
           this.form = data;
275
           this.form = data;
272
-          console.log(this.form);
273
         }
276
         }
274
       })
277
       })
275
     },
278
     },
367
         if (valid) {
370
         if (valid) {
368
           if (this.formTotal != 0) {
371
           if (this.formTotal != 0) {
369
             this.form.qualityInspector = this.form.qualityInspector.join(',');
372
             this.form.qualityInspector = this.form.qualityInspector.join(',');
370
-            console.log(this.form);
371
             updateTechnical(this.form).then(response => {
373
             updateTechnical(this.form).then(response => {
372
               this.$modal.msgSuccess("修改成功");
374
               this.$modal.msgSuccess("修改成功");
373
               this.open = false;
375
               this.open = false;
456
 .auditor {
458
 .auditor {
457
   font-family: '华文行楷';
459
   font-family: '华文行楷';
458
   font-size: 20px;
460
   font-size: 20px;
459
-}
460
-</style>
461
+}</style>

+ 11
- 9
oa-ui/src/views/flowable/task/todo/detail/index.vue View File

30
             @goBack="goBack"></device-form>
30
             @goBack="goBack"></device-form>
31
           <project-process :taskName="taskName" :taskForm="taskForm" v-else-if="taskForm.procDefName == '项目流转'"
31
           <project-process :taskName="taskName" :taskForm="taskForm" v-else-if="taskForm.procDefName == '项目流转'"
32
             @goBack="goBack"></project-process>
32
             @goBack="goBack"></project-process>
33
-          <budget-index :taskName="taskName" :taskForm="taskForm" v-else-if="taskForm.procDefName == '项目预算'" @goBack="goBack"></budget-index>
34
-          <borrow-form :taskName="taskName" :taskForm="taskForm" v-else-if="taskForm.procDefName == '借款审批'" @goBack="goBack"></borrow-form>
35
-          <safe-form :taskName="taskName" :taskForm="taskForm" v-else-if="taskForm.procDefName == '安全交底'" @goBack="goBack"></safe-form>
36
-          <technical-form :taskName="taskName" :taskForm="taskForm" v-else-if="taskForm.procDefName == '技术交底'" @goBack="goBack"></technical-form>
33
+          <budget-index :taskName="taskName" :taskForm="taskForm" v-else-if="taskForm.procDefName == '项目预算'"
34
+            @goBack="goBack"></budget-index>
35
+          <borrow-form :taskName="taskName" :taskForm="taskForm" v-else-if="taskForm.procDefName == '借款审批'"
36
+            @goBack="goBack"></borrow-form>
37
+          <safe-form :taskName="taskName" :taskForm="taskForm" v-else-if="taskForm.procDefName == '安全交底'"
38
+            @goBack="goBack"></safe-form>
39
+          <technical-form :taskName="taskName" :taskForm="taskForm" v-else-if="taskForm.procDefName == '技术交底'"
40
+            @goBack="goBack"></technical-form>
37
           <el-row type="flex" justify="center" v-show="isShowApprove()">
41
           <el-row type="flex" justify="center" v-show="isShowApprove()">
38
             <el-button v-if="!formKeyExist" icon="el-icon-edit-outline" type="success" size="mini"
42
             <el-button v-if="!formKeyExist" icon="el-icon-edit-outline" type="success" size="mini"
39
               @click="handleComplete">审核通过
43
               @click="handleComplete">审核通过
565
     },
569
     },
566
     // 是否显示审批通过
570
     // 是否显示审批通过
567
     isShowApprove() {
571
     isShowApprove() {
568
-      if (this.taskName == '员工填报' || this.taskForm.procDefName == '用车审批'
569
-       || this.taskForm.procDefName == '用车审批(工会)' || this.taskForm.procDefName == '设备审批'|| this.taskForm.procDefName == '项目流转'
570
-       || this.taskForm.procDefName == '项目预算' || this.taskForm.procDefName == '借款审批' || this.taskForm.procDefName == '安全交底' || this.taskForm.procDefName == '技术交底') {
572
+      if (this.taskName == '员工填报' || this.taskForm.procDefName == '用车审批' || this.taskForm.procDefName == '设备审批' || this.taskForm.procDefName == '项目流转'
573
+        || this.taskForm.procDefName == '项目预算' || this.taskForm.procDefName == '借款审批' || this.taskForm.procDefName == '安全交底' || this.taskForm.procDefName == '技术交底') {
571
         return false
574
         return false
572
       } else {
575
       } else {
573
         return true
576
         return true
605
 
608
 
606
 .my-label {
609
 .my-label {
607
   background: #E1F3D8;
610
   background: #E1F3D8;
608
-}
609
-</style>
611
+}</style>

+ 10
- 6
oa-ui/src/views/oa/budget/addBudget.vue View File

1
 <!--
1
 <!--
2
  * @Author: ysh
2
  * @Author: ysh
3
  * @Date: 2024-03-25 15:05:59
3
  * @Date: 2024-03-25 15:05:59
4
- * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-04-11 10:25:37
4
+ * @LastEditors: wrh
5
+ * @LastEditTime: 2024-04-16 17:25:30
6
 -->
6
 -->
7
 <template>
7
 <template>
8
   <div>
8
   <div>
105
               {{ projectForm.projectRegistrantUser.nickName }}
105
               {{ projectForm.projectRegistrantUser.nickName }}
106
             </el-form-item>
106
             </el-form-item>
107
             <el-form-item label="登记时间:">
107
             <el-form-item label="登记时间:">
108
-              {{ projectForm.createTime }}
108
+              {{ projectForm.registerTime }}
109
             </el-form-item>
109
             </el-form-item>
110
             <el-form-item label="备注:">
110
             <el-form-item label="备注:">
111
               {{ projectForm.remark }}
111
               {{ projectForm.remark }}
149
                 <tr>
149
                 <tr>
150
                   <td style="width: 80px">姓名</td>
150
                   <td style="width: 80px">姓名</td>
151
                   <td style="width: 100px">部门</td>
151
                   <td style="width: 100px">部门</td>
152
+                  <td style="width: 100px">基础工资</td>
152
                   <td style="width: 100px">岗位工资</td>
153
                   <td style="width: 100px">岗位工资</td>
153
-                  <td style="width: 110px">人员成本(天)</td>
154
+                  <td style="width: 110px">人员成本(元/天)</td>
154
                   <!-- <td style="width: 100px">进出场单价</td> -->
155
                   <!-- <td style="width: 100px">进出场单价</td> -->
155
                   <td style="width: 100px">预算天数</td>
156
                   <td style="width: 100px">预算天数</td>
156
                   <td style="width: 100px">总额</td>
157
                   <td style="width: 100px">总额</td>
158
                 <tr v-for="user in chooseUser" :key="user.userId">
159
                 <tr v-for="user in chooseUser" :key="user.userId">
159
                   <td>{{ user.nickName }}</td>
160
                   <td>{{ user.nickName }}</td>
160
                   <td>{{ user.dept.deptName }}</td>
161
                   <td>{{ user.dept.deptName }}</td>
162
+                  <td>{{ 1780 }}</td>
161
                   <td>{{ user.salary.salary }}</td>
163
                   <td>{{ user.salary.salary }}</td>
162
-                  <td>{{ parseFloat(user.salary.salary / 31).toFixed(2) }}</td>
164
+                  <td>{{ parseFloat((user.salary.salary + 1780) / 21.75).toFixed(2) }}</td>
163
                   <!-- <td>
165
                   <!-- <td>
164
                     <el-input
166
                     <el-input
165
                       v-model="user.inOutPrice"
167
                       v-model="user.inOutPrice"
182
                 </tr>
184
                 </tr>
183
               </table>
185
               </table>
184
             </el-form-item>
186
             </el-form-item>
187
+            
188
+        <div style="color:red">tips:人员成本=(基础工资+岗位工资)/21.75,固定工资中的年功工资暂忽略不计,绩效工资计入直接成本,津贴补贴、五险一金扣除暂未考虑</div>
185
             <!-- 选择车辆 -->
189
             <!-- 选择车辆 -->
186
             <el-form-item label="选择车辆:">
190
             <el-form-item label="选择车辆:">
187
               <span v-if="chooseCar.length != 0">
191
               <span v-if="chooseCar.length != 0">
664
     },
668
     },
665
     // 计算单个人员的成本
669
     // 计算单个人员的成本
666
     calculateUserTotal(user) {
670
     calculateUserTotal(user) {
667
-      let total =parseFloat(user.salary.salary / 31).toFixed(2) * Number(user.days);
671
+      let total =parseFloat((user.salary.salary + 1780) / 21.75).toFixed(2) * Number(user.days);
668
       this.$set(user, "staffCost", total.toFixed(2));
672
       this.$set(user, "staffCost", total.toFixed(2));
669
       this.getCost("staffCost", "staffCost", this.chooseUser);
673
       this.getCost("staffCost", "staffCost", this.chooseUser);
670
       this.getFixCost();
674
       this.getFixCost();

+ 2
- 2
oa-ui/src/views/oa/budget/components/chooseMoney.vue View File

110
       </el-form-item>
110
       </el-form-item>
111
       <el-form-item label="进出场费用:">
111
       <el-form-item label="进出场费用:">
112
         <el-input v-numeric v-model="inOutPrice" style="width:200px;" @change="getInoutpriceSum">
112
         <el-input v-numeric v-model="inOutPrice" style="width:200px;" @change="getInoutpriceSum">
113
-          <template slot="append">人天</template>
113
+          <template slot="append">单价</template>
114
         </el-input>
114
         </el-input>
115
         ×
115
         ×
116
         <el-input v-numeric v-model="peopleNumber" style="width:200px;" @change="getInoutpriceSum">
116
         <el-input v-numeric v-model="peopleNumber" style="width:200px;" @change="getInoutpriceSum">
117
-          <template slot="append">数量</template>
117
+          <template slot="append">人天</template>
118
         </el-input>
118
         </el-input>
119
         = {{ inOutPriceSum }}
119
         = {{ inOutPriceSum }}
120
       </el-form-item>
120
       </el-form-item>

Loading…
Cancel
Save