浏览代码

新增、修改、删除项目

lamphua 1年前
父节点
当前提交
5e5737c875

+ 53
- 30
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcProjectController.java 查看文件

5
 import javax.servlet.http.HttpServletResponse;
5
 import javax.servlet.http.HttpServletResponse;
6
 
6
 
7
 import com.alibaba.fastjson2.JSONObject;
7
 import com.alibaba.fastjson2.JSONObject;
8
+import com.ruoyi.common.core.domain.entity.SysUser;
8
 import com.ruoyi.common.utils.DateUtils;
9
 import com.ruoyi.common.utils.DateUtils;
9
 import com.ruoyi.common.utils.SnowFlake;
10
 import com.ruoyi.common.utils.SnowFlake;
10
 import com.ruoyi.oa.domain.CmcProjectWork;
11
 import com.ruoyi.oa.domain.CmcProjectWork;
47
     public TableDataInfo list(CmcProject cmcProject)
48
     public TableDataInfo list(CmcProject cmcProject)
48
     {
49
     {
49
         startPage();
50
         startPage();
50
-        List<CmcProject> orilist = cmcProjectService.selectCmcProjectList(cmcProject);
51
         List<CmcProject> list = new ArrayList<>();
51
         List<CmcProject> list = new ArrayList<>();
52
-        for (CmcProject project : orilist) {
53
-            if (project.getProjectLeader() != null && !project.getProjectLeader().equals(""))
54
-                project.setProjectLeader(userService.selectUserById(Long.parseLong(project.getProjectLeader())).getNickName());
55
-            list.add(project);
52
+        if (cmcProject.getProjectLeaderName() != null && !cmcProject.getProjectLeaderName().equals("")) {
53
+            SysUser user = new SysUser();
54
+            user.setNickName(cmcProject.getProjectLeaderName());
55
+            List<SysUser> userList = userService.selectUserList(user);
56
+            if (userList.size() > 0)
57
+                for (SysUser sysUser : userList) {
58
+                    cmcProject.setProjectLeader(sysUser.getUserId().toString());
59
+                    list.addAll(cmcProjectService.selectCmcProjectList(cmcProject));
60
+                }
61
+            else
62
+                list = cmcProjectService.selectCmcProjectList(cmcProject);
56
         }
63
         }
64
+        else
65
+            list = cmcProjectService.selectCmcProjectList(cmcProject);
57
         return getDataTable(list);
66
         return getDataTable(list);
58
     }
67
     }
59
 
68
 
75
     @GetMapping(value = "/{projectId}")
84
     @GetMapping(value = "/{projectId}")
76
     public AjaxResult getInfo(@PathVariable("projectId") String projectId)
85
     public AjaxResult getInfo(@PathVariable("projectId") String projectId)
77
     {
86
     {
78
-        CmcProject cmcProject = cmcProjectService.selectCmcProjectByProjectId(projectId);
79
-        if (cmcProject.getProjectLeader() != null && !cmcProject.getProjectLeader().equals(""))
80
-            cmcProject.setProjectLeader(userService.selectUserById(Long.parseLong(cmcProject.getProjectLeader())).getNickName());
81
-        return success(cmcProject);
87
+        return success(cmcProjectService.selectCmcProjectByProjectId(projectId));
82
     }
88
     }
83
 
89
 
84
     /**
90
     /**
114
         cmcProject.setProjectLevel(formDataJson.getString("projectLevel"));
120
         cmcProject.setProjectLevel(formDataJson.getString("projectLevel"));
115
         cmcProject.setProjectRegistrant(formDataJson.getString("projectRegistrant"));
121
         cmcProject.setProjectRegistrant(formDataJson.getString("projectRegistrant"));
116
         cmcProject.setCreateTime(DateUtils.getNowDate());
122
         cmcProject.setCreateTime(DateUtils.getNowDate());
123
+        cmcProject.setIsFinished("0");
124
+        cmcProject.setRemark(formDataJson.getString("remark"));
117
         String workList = formDataJson.getString("workList");
125
         String workList = formDataJson.getString("workList");
118
         workList = workList.substring(1, workList.length() - 1);
126
         workList = workList.substring(1, workList.length() - 1);
119
         if (workList.split("}").length > 1) {
127
         if (workList.split("}").length > 1) {
123
                     workArri = workArri.substring(1);
131
                     workArri = workArri.substring(1);
124
                 JSONObject workArrObject = JSONObject.parse(workArri);
132
                 JSONObject workArrObject = JSONObject.parse(workArri);
125
                 CmcProjectWork cmcProjectWork = new CmcProjectWork();
133
                 CmcProjectWork cmcProjectWork = new CmcProjectWork();
134
+                cmcProjectWork.setWorkId(new SnowFlake().generateId());
126
                 cmcProjectWork.setProjectId(cmcProject.getProjectId());
135
                 cmcProjectWork.setProjectId(cmcProject.getProjectId());
127
-                cmcProjectWork.setWorkContent(workArrObject.getString("workContent"));
128
-                cmcProjectWork.setScaleGrade(workArrObject.getString("scaleGrade"));
136
+                cmcProjectWork.setContent(workArrObject.getString("content"));
137
+                cmcProjectWork.setScale(workArrObject.getString("scale"));
129
                 cmcProjectWork.setUnit(workArrObject.getString("unit"));
138
                 cmcProjectWork.setUnit(workArrObject.getString("unit"));
130
-                cmcProjectWork.setWorkLoad(workArrObject.getString("workLoad"));
131
-                cmcProjectWork.setFinishTime(DateUtils.dateTime("yyyy-MM-dd", workArrObject.getString("finishTime")));
139
+                cmcProjectWork.setWorkload(workArrObject.getString("workload"));
140
+                cmcProjectWork.setDeadline(DateUtils.dateTime("yyyy-MM-dd", workArrObject.getString("deadline")));
141
+                cmcProjectWork.setRemark(workArrObject.getString("remark"));
132
                 cmcProjectWorkService.insertCmcProjectWork(cmcProjectWork);
142
                 cmcProjectWorkService.insertCmcProjectWork(cmcProjectWork);
133
             }
143
             }
134
         }
144
         }
135
         else {
145
         else {
136
             JSONObject workArrObject = JSONObject.parse(workList);
146
             JSONObject workArrObject = JSONObject.parse(workList);
137
             CmcProjectWork cmcProjectWork = new CmcProjectWork();
147
             CmcProjectWork cmcProjectWork = new CmcProjectWork();
148
+            cmcProjectWork.setWorkId(new SnowFlake().generateId());
138
             cmcProjectWork.setProjectId(cmcProject.getProjectId());
149
             cmcProjectWork.setProjectId(cmcProject.getProjectId());
139
-            cmcProjectWork.setWorkContent(workArrObject.getString("workContent"));
140
-            cmcProjectWork.setScaleGrade(workArrObject.getString("scaleGrade"));
150
+            cmcProjectWork.setContent(workArrObject.getString("content"));
151
+            cmcProjectWork.setScale(workArrObject.getString("scale"));
141
             cmcProjectWork.setUnit(workArrObject.getString("unit"));
152
             cmcProjectWork.setUnit(workArrObject.getString("unit"));
142
-            cmcProjectWork.setWorkLoad(workArrObject.getString("workLoad"));
143
-            cmcProjectWork.setFinishTime(DateUtils.dateTime("yyyy-MM-dd", workArrObject.getString("finishTime")));
153
+            cmcProjectWork.setWorkload(workArrObject.getString("workload"));
154
+            cmcProjectWork.setDeadline(DateUtils.dateTime("yyyy-MM-dd", workArrObject.getString("deadline")));
155
+            cmcProjectWork.setRemark(workArrObject.getString("remark"));
144
             cmcProjectWorkService.insertCmcProjectWork(cmcProjectWork);
156
             cmcProjectWorkService.insertCmcProjectWork(cmcProjectWork);
145
         }
157
         }
146
         return toAjax(cmcProjectService.insertCmcProject(cmcProject));
158
         return toAjax(cmcProjectService.insertCmcProject(cmcProject));
161
      */
173
      */
162
     @Log(title = "cmc项目", businessType = BusinessType.UPDATE)
174
     @Log(title = "cmc项目", businessType = BusinessType.UPDATE)
163
     @PutMapping( "/modify")
175
     @PutMapping( "/modify")
164
-    public AjaxResult modify(@RequestParam("taskForm") String formData)
176
+    public AjaxResult modify(@RequestParam("form") String formData)
165
     {
177
     {
166
         JSONObject formDataJson = JSONObject.parse(formData);
178
         JSONObject formDataJson = JSONObject.parse(formData);
167
         CmcProject cmcProject = cmcProjectService.selectCmcProjectByProjectId(formDataJson.getString("projectId"));
179
         CmcProject cmcProject = cmcProjectService.selectCmcProjectByProjectId(formDataJson.getString("projectId"));
177
         cmcProject.setProjectLevel(formDataJson.getString("projectLevel"));
189
         cmcProject.setProjectLevel(formDataJson.getString("projectLevel"));
178
         cmcProject.setProjectRegistrant(formDataJson.getString("projectRegistrant"));
190
         cmcProject.setProjectRegistrant(formDataJson.getString("projectRegistrant"));
179
         cmcProject.setCreateTime(DateUtils.getNowDate());
191
         cmcProject.setCreateTime(DateUtils.getNowDate());
192
+        cmcProject.setIsFinished("0");
193
+        cmcProject.setRemark(formDataJson.getString("remark"));
180
         String workList = formDataJson.getString("workList");
194
         String workList = formDataJson.getString("workList");
181
         workList = workList.substring(1, workList.length() - 1);
195
         workList = workList.substring(1, workList.length() - 1);
182
         if (workList.split("}").length > 1) {
196
         if (workList.split("}").length > 1) {
197
+            cmcProjectWorkService.deleteCmcProjectWorkByProjectId(formDataJson.getString("projectId"));
183
             for (int i = 0; i < workList.split("}").length; i++) {
198
             for (int i = 0; i < workList.split("}").length; i++) {
184
                 String workArri = workList.split("}")[i] + "}";
199
                 String workArri = workList.split("}")[i] + "}";
185
                 if (i > 0)
200
                 if (i > 0)
186
                     workArri = workArri.substring(1);
201
                     workArri = workArri.substring(1);
187
                 JSONObject workArrObject = JSONObject.parse(workArri);
202
                 JSONObject workArrObject = JSONObject.parse(workArri);
188
-                CmcProjectWork cmcProjectWork = cmcProjectWorkService.selectCmcProjectWorkByProjectId(formDataJson.getString("projectId"));
189
-                cmcProjectWork.setWorkContent(workArrObject.getString("workContent"));
190
-                cmcProjectWork.setScaleGrade(workArrObject.getString("scaleGrade"));
203
+                CmcProjectWork cmcProjectWork = new CmcProjectWork();
204
+                cmcProjectWork.setWorkId(new SnowFlake().generateId());
205
+                cmcProjectWork.setProjectId(formDataJson.getString("projectId"));
206
+                cmcProjectWork.setContent(workArrObject.getString("content"));
207
+                cmcProjectWork.setScale(workArrObject.getString("scale"));
191
                 cmcProjectWork.setUnit(workArrObject.getString("unit"));
208
                 cmcProjectWork.setUnit(workArrObject.getString("unit"));
192
-                cmcProjectWork.setWorkLoad(workArrObject.getString("workLoad"));
193
-                cmcProjectWork.setFinishTime(DateUtils.dateTime("yyyy-MM-dd", workArrObject.getString("finishTime")));
194
-                cmcProjectWorkService.updateCmcProjectWork(cmcProjectWork);
209
+                cmcProjectWork.setWorkload(workArrObject.getString("workload"));
210
+                cmcProjectWork.setDeadline(DateUtils.dateTime("yyyy-MM-dd", workArrObject.getString("deadline")));
211
+                cmcProjectWork.setRemark(workArrObject.getString("remark"));
212
+                cmcProjectWorkService.insertCmcProjectWork(cmcProjectWork);
195
             }
213
             }
196
         }
214
         }
197
         else {
215
         else {
198
             JSONObject workArrObject = JSONObject.parse(workList);
216
             JSONObject workArrObject = JSONObject.parse(workList);
199
-            CmcProjectWork cmcProjectWork = cmcProjectWorkService.selectCmcProjectWorkByProjectId(formDataJson.getString("projectId"));
200
-            cmcProjectWork.setWorkContent(workArrObject.getString("workContent"));
201
-            cmcProjectWork.setScaleGrade(workArrObject.getString("scaleGrade"));
217
+            cmcProjectWorkService.deleteCmcProjectWorkByProjectId(formDataJson.getString("projectId"));
218
+            CmcProjectWork cmcProjectWork = new CmcProjectWork();
219
+            cmcProjectWork.setWorkId(new SnowFlake().generateId());
220
+            cmcProjectWork.setProjectId(formDataJson.getString("projectId"));
221
+            cmcProjectWork.setContent(workArrObject.getString("content"));
222
+            cmcProjectWork.setScale(workArrObject.getString("scale"));
202
             cmcProjectWork.setUnit(workArrObject.getString("unit"));
223
             cmcProjectWork.setUnit(workArrObject.getString("unit"));
203
-            cmcProjectWork.setWorkLoad(workArrObject.getString("workLoad"));
204
-            cmcProjectWork.setFinishTime(DateUtils.dateTime("yyyy-MM-dd", workArrObject.getString("finishTime")));
205
-            cmcProjectWorkService.updateCmcProjectWork(cmcProjectWork);
224
+            cmcProjectWork.setWorkload(workArrObject.getString("workload"));
225
+            cmcProjectWork.setDeadline(DateUtils.dateTime("yyyy-MM-dd", workArrObject.getString("deadline")));
226
+            cmcProjectWork.setRemark(workArrObject.getString("remark"));
227
+            cmcProjectWorkService.insertCmcProjectWork(cmcProjectWork);
206
         }
228
         }
207
         return toAjax(cmcProjectService.updateCmcProject(cmcProject));
229
         return toAjax(cmcProjectService.updateCmcProject(cmcProject));
208
     }
230
     }
214
 	@DeleteMapping("/{projectIds}")
236
 	@DeleteMapping("/{projectIds}")
215
     public AjaxResult remove(@PathVariable String[] projectIds)
237
     public AjaxResult remove(@PathVariable String[] projectIds)
216
     {
238
     {
239
+        cmcProjectWorkService.deleteCmcProjectWorkByProjectIds(projectIds);
217
         return toAjax(cmcProjectService.deleteCmcProjectByProjectIds(projectIds));
240
         return toAjax(cmcProjectService.deleteCmcProjectByProjectIds(projectIds));
218
     }
241
     }
219
 }
242
 }

+ 13
- 0
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcProject.java 查看文件

30
     @Excel(name = "项目负责人")
30
     @Excel(name = "项目负责人")
31
     private String projectLeader;
31
     private String projectLeader;
32
 
32
 
33
+    /** 项目负责人名字 */
34
+    @Excel(name = "项目负责人名字")
35
+    private String projectLeaderName;
36
+
33
     /** 项目状态(0进行中、1已结束) */
37
     /** 项目状态(0进行中、1已结束) */
34
     @Excel(name = "项目状态", readConverterExp = "0=进行中、1=已结束")
38
     @Excel(name = "项目状态", readConverterExp = "0=进行中、1=已结束")
35
     private String isFinished;
39
     private String isFinished;
98
     {
102
     {
99
         return projectLeader;
103
         return projectLeader;
100
     }
104
     }
105
+    public void setProjectLeaderName(String projectLeaderName)
106
+    {
107
+        this.projectLeaderName = projectLeaderName;
108
+    }
109
+
110
+    public String getProjectLeaderName()
111
+    {
112
+        return projectLeaderName;
113
+    }
101
     public void setIsFinished(String isFinished)
114
     public void setIsFinished(String isFinished)
102
     {
115
     {
103
         this.isFinished = isFinished;
116
         this.isFinished = isFinished;

+ 38
- 26
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcProjectWork.java 查看文件

17
 {
17
 {
18
     private static final long serialVersionUID = 1L;
18
     private static final long serialVersionUID = 1L;
19
 
19
 
20
+    /** 工作内容id */
21
+    private String workId;
22
+
20
     /** 项目id */
23
     /** 项目id */
21
     private String projectId;
24
     private String projectId;
22
 
25
 
23
     /** 工作内容 */
26
     /** 工作内容 */
24
     @Excel(name = "工作内容")
27
     @Excel(name = "工作内容")
25
-    private String workContent;
28
+    private String content;
26
 
29
 
27
     /** 等级或比例尺 */
30
     /** 等级或比例尺 */
28
     @Excel(name = "等级或比例尺")
31
     @Excel(name = "等级或比例尺")
29
-    private String scaleGrade;
32
+    private String scale;
30
 
33
 
31
     /** 单位 */
34
     /** 单位 */
32
     @Excel(name = "单位")
35
     @Excel(name = "单位")
34
 
37
 
35
     /** 工作量 */
38
     /** 工作量 */
36
     @Excel(name = "工作量")
39
     @Excel(name = "工作量")
37
-    private String workLoad;
40
+    private String workload;
38
 
41
 
39
     /** 要求完成时间 */
42
     /** 要求完成时间 */
40
     @JsonFormat(pattern = "yyyy-MM-dd")
43
     @JsonFormat(pattern = "yyyy-MM-dd")
41
     @Excel(name = "要求完成时间", width = 30, dateFormat = "yyyy-MM-dd")
44
     @Excel(name = "要求完成时间", width = 30, dateFormat = "yyyy-MM-dd")
42
-    private Date finishTime;
45
+    private Date deadline;
46
+
47
+    public void setWorkId(String workId)
48
+    {
49
+        this.workId = workId;
50
+    }
43
 
51
 
44
-    public void setProjectId(String projectId) 
52
+    public String getWorkId()
53
+    {
54
+        return workId;
55
+    }
56
+    public void setProjectId(String projectId)
45
     {
57
     {
46
         this.projectId = projectId;
58
         this.projectId = projectId;
47
     }
59
     }
48
 
60
 
49
-    public String getProjectId() 
61
+    public String getProjectId()
50
     {
62
     {
51
         return projectId;
63
         return projectId;
52
     }
64
     }
53
-    public void setWorkContent(String workContent) 
65
+    public void setContent(String content) 
54
     {
66
     {
55
-        this.workContent = workContent;
67
+        this.content = content;
56
     }
68
     }
57
 
69
 
58
-    public String getWorkContent() 
70
+    public String getContent() 
59
     {
71
     {
60
-        return workContent;
72
+        return content;
61
     }
73
     }
62
-    public void setScaleGrade(String scaleGrade) 
74
+    public void setScale(String scale) 
63
     {
75
     {
64
-        this.scaleGrade = scaleGrade;
76
+        this.scale = scale;
65
     }
77
     }
66
 
78
 
67
-    public String getScaleGrade() 
79
+    public String getScale() 
68
     {
80
     {
69
-        return scaleGrade;
81
+        return scale;
70
     }
82
     }
71
     public void setUnit(String unit) 
83
     public void setUnit(String unit) 
72
     {
84
     {
77
     {
89
     {
78
         return unit;
90
         return unit;
79
     }
91
     }
80
-    public void setWorkLoad(String workLoad) 
92
+    public void setWorkload(String workload) 
81
     {
93
     {
82
-        this.workLoad = workLoad;
94
+        this.workload = workload;
83
     }
95
     }
84
 
96
 
85
-    public String getWorkLoad() 
97
+    public String getWorkload() 
86
     {
98
     {
87
-        return workLoad;
99
+        return workload;
88
     }
100
     }
89
-    public void setFinishTime(Date finishTime) 
101
+    public void setDeadline(Date deadline) 
90
     {
102
     {
91
-        this.finishTime = finishTime;
103
+        this.deadline = deadline;
92
     }
104
     }
93
 
105
 
94
-    public Date getFinishTime() 
106
+    public Date getDeadline() 
95
     {
107
     {
96
-        return finishTime;
108
+        return deadline;
97
     }
109
     }
98
 
110
 
99
     @Override
111
     @Override
100
     public String toString() {
112
     public String toString() {
101
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
113
         return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
102
             .append("projectId", getProjectId())
114
             .append("projectId", getProjectId())
103
-            .append("workContent", getWorkContent())
104
-            .append("scaleGrade", getScaleGrade())
115
+            .append("content", getContent())
116
+            .append("scale", getScale())
105
             .append("unit", getUnit())
117
             .append("unit", getUnit())
106
-            .append("workLoad", getWorkLoad())
107
-            .append("finishTime", getFinishTime())
118
+            .append("workload", getWorkload())
119
+            .append("deadline", getDeadline())
108
             .toString();
120
             .toString();
109
     }
121
     }
110
 }
122
 }

+ 7
- 7
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/mapper/CmcProjectWorkMapper.java 查看文件

14
     /**
14
     /**
15
      * 查询cmc项目内容
15
      * 查询cmc项目内容
16
      * 
16
      * 
17
-     * @param projectId cmc项目内容主键
18
-     * @return cmc项目内容
17
+     * @param projectId cmc项目id
18
+     * @return cmc项目内容集合
19
      */
19
      */
20
-    public CmcProjectWork selectCmcProjectWorkByProjectId(String projectId);
20
+    public List<CmcProjectWork> selectCmcProjectWorkListByProjectId(String projectId);
21
 
21
 
22
     /**
22
     /**
23
      * 查询cmc项目内容列表
23
      * 查询cmc项目内容列表
46
     /**
46
     /**
47
      * 删除cmc项目内容
47
      * 删除cmc项目内容
48
      * 
48
      * 
49
-     * @param projectId cmc项目内容主键
49
+     * @param workId cmc项目内容主键
50
      * @return 结果
50
      * @return 结果
51
      */
51
      */
52
-    public int deleteCmcProjectWorkByProjectId(String projectId);
52
+    public int deleteCmcProjectWorkByProjectId(String workId);
53
 
53
 
54
     /**
54
     /**
55
      * 批量删除cmc项目内容
55
      * 批量删除cmc项目内容
56
      * 
56
      * 
57
-     * @param projectIds 需要删除的数据主键集合
57
+     * @param workIds 需要删除的数据主键集合
58
      * @return 结果
58
      * @return 结果
59
      */
59
      */
60
-    public int deleteCmcProjectWorkByProjectIds(String[] projectIds);
60
+    public int deleteCmcProjectWorkByProjectIds(String[] workIds);
61
 }
61
 }

+ 3
- 3
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/ICmcProjectWorkService.java 查看文件

14
     /**
14
     /**
15
      * 查询cmc项目内容
15
      * 查询cmc项目内容
16
      * 
16
      * 
17
-     * @param projectId cmc项目内容主键
18
-     * @return cmc项目内容
17
+     * @param projectId cmc项目id
18
+     * @return cmc项目内容集合
19
      */
19
      */
20
-    public CmcProjectWork selectCmcProjectWorkByProjectId(String projectId);
20
+    public List<CmcProjectWork> selectCmcProjectWorkListByProjectId(String projectId);
21
 
21
 
22
     /**
22
     /**
23
      * 查询cmc项目内容列表
23
      * 查询cmc项目内容列表

+ 7
- 7
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/impl/CmcProjectWorkServiceImpl.java 查看文件

22
     /**
22
     /**
23
      * 查询cmc项目内容
23
      * 查询cmc项目内容
24
      * 
24
      * 
25
-     * @param projectId cmc项目内容主键
26
-     * @return cmc项目内容
25
+     * @param projectId cmc项目id
26
+     * @return cmc项目内容集合
27
      */
27
      */
28
     @Override
28
     @Override
29
-    public CmcProjectWork selectCmcProjectWorkByProjectId(String projectId)
29
+    public List<CmcProjectWork> selectCmcProjectWorkListByProjectId(String projectId)
30
     {
30
     {
31
-        return cmcProjectWorkMapper.selectCmcProjectWorkByProjectId(projectId);
31
+        return cmcProjectWorkMapper.selectCmcProjectWorkListByProjectId(projectId);
32
     }
32
     }
33
 
33
 
34
     /**
34
     /**
70
     /**
70
     /**
71
      * 批量删除cmc项目内容
71
      * 批量删除cmc项目内容
72
      * 
72
      * 
73
-     * @param projectIds 需要删除的cmc项目内容主键
73
+     * @param workIds 需要删除的cmc项目内容主键
74
      * @return 结果
74
      * @return 结果
75
      */
75
      */
76
     @Override
76
     @Override
77
-    public int deleteCmcProjectWorkByProjectIds(String[] projectIds)
77
+    public int deleteCmcProjectWorkByProjectIds(String[] workIds)
78
     {
78
     {
79
-        return cmcProjectWorkMapper.deleteCmcProjectWorkByProjectIds(projectIds);
79
+        return cmcProjectWorkMapper.deleteCmcProjectWorkByProjectIds(workIds);
80
     }
80
     }
81
 
81
 
82
     /**
82
     /**

+ 28
- 24
oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcProjectWorkMapper.xml 查看文件

5
 <mapper namespace="com.ruoyi.oa.mapper.CmcProjectWorkMapper">
5
 <mapper namespace="com.ruoyi.oa.mapper.CmcProjectWorkMapper">
6
     
6
     
7
     <resultMap type="CmcProjectWork" id="CmcProjectWorkResult">
7
     <resultMap type="CmcProjectWork" id="CmcProjectWorkResult">
8
+        <result property="workId"    column="work_id"    />
8
         <result property="projectId"    column="project_id"    />
9
         <result property="projectId"    column="project_id"    />
9
-        <result property="workContent"    column="work_content"    />
10
-        <result property="scaleGrade"    column="scale_grade"    />
10
+        <result property="content"    column="content"    />
11
+        <result property="scale"    column="scale"    />
11
         <result property="unit"    column="unit"    />
12
         <result property="unit"    column="unit"    />
12
-        <result property="workLoad"    column="work_load"    />
13
-        <result property="finishTime"    column="finish_time"    />
13
+        <result property="workload"    column="workload"    />
14
+        <result property="deadline"    column="deadline"    />
14
         <result property="remark"    column="remark"    />
15
         <result property="remark"    column="remark"    />
15
     </resultMap>
16
     </resultMap>
16
 
17
 
17
     <sql id="selectCmcProjectWorkVo">
18
     <sql id="selectCmcProjectWorkVo">
18
-        select project_id, work_content, scale_grade, unit, work_load, finish_time, remark from cmc_project_work
19
+        select work_id, project_id, content, scale, unit, workload, deadline, remark from cmc_project_work
19
     </sql>
20
     </sql>
20
 
21
 
21
     <select id="selectCmcProjectWorkList" parameterType="CmcProjectWork" resultMap="CmcProjectWorkResult">
22
     <select id="selectCmcProjectWorkList" parameterType="CmcProjectWork" resultMap="CmcProjectWorkResult">
22
         <include refid="selectCmcProjectWorkVo"/>
23
         <include refid="selectCmcProjectWorkVo"/>
23
         <where>  
24
         <where>  
24
-            <if test="workContent != null  and workContent != ''"> and work_content like concat('%', #{workContent}, '%')</if>
25
-            <if test="scaleGrade != null  and scaleGrade != ''"> and scale_grade like concat('%', #{scaleGrade}, '%')</if>
25
+            <if test="content != null  and content != ''"> and content like concat('%', #{content}, '%')</if>
26
+            <if test="scale != null  and scale != ''"> and scale like concat('%', #{scale}, '%')</if>
26
             <if test="unit != null  and unit != ''"> and unit like concat('%', #{unit}, '%')</if>
27
             <if test="unit != null  and unit != ''"> and unit like concat('%', #{unit}, '%')</if>
27
-            <if test="workLoad != null  and workLoad != ''"> and work_load = #{workLoad}</if>
28
-            <if test="finishTime != null "> and finish_time like concat('%', #{finishTime}, '%')</if>
28
+            <if test="workload != null  and workload != ''"> and workload = #{workload}</if>
29
+            <if test="deadline != null "> and deadline like concat('%', #{deadline}, '%')</if>
29
         </where>
30
         </where>
30
     </select>
31
     </select>
31
     
32
     
32
-    <select id="selectCmcProjectWorkByProjectId" parameterType="String" resultMap="CmcProjectWorkResult">
33
+    <select id="selectCmcProjectWorkListByProjectId" parameterType="String" resultMap="CmcProjectWorkResult">
33
         <include refid="selectCmcProjectWorkVo"/>
34
         <include refid="selectCmcProjectWorkVo"/>
34
         where project_id = #{projectId}
35
         where project_id = #{projectId}
35
     </select>
36
     </select>
37
     <insert id="insertCmcProjectWork" parameterType="CmcProjectWork">
38
     <insert id="insertCmcProjectWork" parameterType="CmcProjectWork">
38
         insert into cmc_project_work
39
         insert into cmc_project_work
39
         <trim prefix="(" suffix=")" suffixOverrides=",">
40
         <trim prefix="(" suffix=")" suffixOverrides=",">
41
+            <if test="workId != null">work_id,</if>
40
             <if test="projectId != null">project_id,</if>
42
             <if test="projectId != null">project_id,</if>
41
-            <if test="workContent != null">work_content,</if>
42
-            <if test="scaleGrade != null">scale_grade,</if>
43
+            <if test="content != null">content,</if>
44
+            <if test="scale != null">scale,</if>
43
             <if test="unit != null">unit,</if>
45
             <if test="unit != null">unit,</if>
44
-            <if test="workLoad != null">work_load,</if>
45
-            <if test="finishTime != null">finish_time,</if>
46
+            <if test="workload != null">workload,</if>
47
+            <if test="deadline != null">deadline,</if>
46
             <if test="remark != null">remark,</if>
48
             <if test="remark != null">remark,</if>
47
          </trim>
49
          </trim>
48
         <trim prefix="values (" suffix=")" suffixOverrides=",">
50
         <trim prefix="values (" suffix=")" suffixOverrides=",">
51
+            <if test="workId != null">#{workId},</if>
49
             <if test="projectId != null">#{projectId},</if>
52
             <if test="projectId != null">#{projectId},</if>
50
-            <if test="workContent != null">#{workContent},</if>
51
-            <if test="scaleGrade != null">#{scaleGrade},</if>
53
+            <if test="content != null">#{content},</if>
54
+            <if test="scale != null">#{scale},</if>
52
             <if test="unit != null">#{unit},</if>
55
             <if test="unit != null">#{unit},</if>
53
-            <if test="workLoad != null">#{workLoad},</if>
54
-            <if test="finishTime != null">#{finishTime},</if>
56
+            <if test="workload != null">#{workload},</if>
57
+            <if test="deadline != null">#{deadline},</if>
55
             <if test="remark != null">#{remark},</if>
58
             <if test="remark != null">#{remark},</if>
56
          </trim>
59
          </trim>
57
     </insert>
60
     </insert>
59
     <update id="updateCmcProjectWork" parameterType="CmcProjectWork">
62
     <update id="updateCmcProjectWork" parameterType="CmcProjectWork">
60
         update cmc_project_work
63
         update cmc_project_work
61
         <trim prefix="SET" suffixOverrides=",">
64
         <trim prefix="SET" suffixOverrides=",">
62
-            <if test="workContent != null">work_content = #{workContent},</if>
63
-            <if test="scaleGrade != null">scale_grade = #{scaleGrade},</if>
65
+            <if test="projectId != null">project_id = #{projectId},</if>
66
+            <if test="content != null">content = #{content},</if>
67
+            <if test="scale != null">scale = #{scale},</if>
64
             <if test="unit != null">unit = #{unit},</if>
68
             <if test="unit != null">unit = #{unit},</if>
65
-            <if test="workLoad != null">work_load = #{workLoad},</if>
66
-            <if test="finishTime != null">finish_time = #{finishTime},</if>
69
+            <if test="workload != null">workload = #{workload},</if>
70
+            <if test="deadline != null">deadline = #{deadline},</if>
67
             <if test="remark != null">remark = #{remark},</if>
71
             <if test="remark != null">remark = #{remark},</if>
68
         </trim>
72
         </trim>
69
-        where project_id = #{projectId}
73
+        where work_id = #{workId}
70
     </update>
74
     </update>
71
 
75
 
72
     <delete id="deleteCmcProjectWorkByProjectId" parameterType="String">
76
     <delete id="deleteCmcProjectWorkByProjectId" parameterType="String">
74
     </delete>
78
     </delete>
75
 
79
 
76
     <delete id="deleteCmcProjectWorkByProjectIds" parameterType="String">
80
     <delete id="deleteCmcProjectWorkByProjectIds" parameterType="String">
77
-        delete from cmc_project_work where project_id in 
81
+        delete from cmc_project_work where project_id in
78
         <foreach item="projectId" collection="array" open="(" separator="," close=")">
82
         <foreach item="projectId" collection="array" open="(" separator="," close=")">
79
             #{projectId}
83
             #{projectId}
80
         </foreach>
84
         </foreach>

+ 3
- 0
oa-back/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml 查看文件

72
 		<if test="userName != null and userName != ''">
72
 		<if test="userName != null and userName != ''">
73
 			AND u.user_name like concat('%', #{userName}, '%')
73
 			AND u.user_name like concat('%', #{userName}, '%')
74
 		</if>
74
 		</if>
75
+		<if test="nickName != null and nickName != ''">
76
+			AND u.nick_name like concat('%', #{nickName}, '%')
77
+		</if>
75
 		<if test="status != null and status != ''">
78
 		<if test="status != null and status != ''">
76
 			AND u.status = #{status}
79
 			AND u.status = #{status}
77
 		</if>
80
 		</if>

+ 13
- 12
oa-back/sql/ry_20231130.sql 查看文件

1226
   manager_assessment	char(1)			default null	comment '分管考核等级(不合格、合格、良好、优秀)',
1226
   manager_assessment	char(1)			default null	comment '分管考核等级(不合格、合格、良好、优秀)',
1227
   manager_advice		varchar(255)	default null	comment '分管考核意见',
1227
   manager_advice		varchar(255)	default null	comment '分管考核意见',
1228
   manager_time			datetime		default null	comment '分管考核时间',
1228
   manager_time			datetime		default null	comment '分管考核时间',
1229
-  manager_assesser		varchar(30)		default null	comment '分管考核负责人',
1229
+  manager_assesser		varchar(10)		default null	comment '分管考核负责人',
1230
   self_assess			varchar(255)	default null	comment '自述',
1230
   self_assess			varchar(255)	default null	comment '自述',
1231
   fill_time				datetime		default null	comment '考核填报时间',
1231
   fill_time				datetime		default null	comment '考核填报时间',
1232
   other_work			varchar(255)	default null	comment '其他工作',
1232
   other_work			varchar(255)	default null	comment '其他工作',
1258
 drop table if exists cmc_assess_content_work;
1258
 drop table if exists cmc_assess_content_work;
1259
 create table cmc_assess_content_work (
1259
 create table cmc_assess_content_work (
1260
   work_id				char(23)		not null		comment '工作内容id(考核内容id+2位)',
1260
   work_id				char(23)		not null		comment '工作内容id(考核内容id+2位)',
1261
-  work_load				varchar(10)	default null	comment '工作量',
1261
+  work_load				varchar(10)		default null	comment '工作量',
1262
   primary key (work_id)
1262
   primary key (work_id)
1263
 ) engine=innodb	comment = 'cmc考核工作内容表';
1263
 ) engine=innodb	comment = 'cmc考核工作内容表';
1264
 
1264
 
1271
   project_id			char(19)				not null			comment '项目id',
1271
   project_id			char(19)				not null			comment '项目id',
1272
   project_number		varchar(10)				default null		comment '项目编号',
1272
   project_number		varchar(10)				default null		comment '项目编号',
1273
   project_name			varchar(50)				default null		comment '项目名称',
1273
   project_name			varchar(50)				default null		comment '项目名称',
1274
-  project_leader		char(3)					default null		comment '项目负责人',
1274
+  project_leader		varchar(3)				default null		comment '项目负责人',
1275
   is_finished			char(1)					default null		comment '项目状态(0进行中、1已结束)',
1275
   is_finished			char(1)					default null		comment '项目状态(0进行中、1已结束)',
1276
   project_source		char(1)					default null		comment '项目来源(0院内、1院外)',
1276
   project_source		char(1)					default null		comment '项目来源(0院内、1院外)',
1277
   party_a				varchar(50)				default null		comment '甲方单位',
1277
   party_a				varchar(50)				default null		comment '甲方单位',
1278
-  contact_person		char(10)				default null		comment '联系人',
1278
+  contact_person		varchar(10)				default null		comment '联系人',
1279
   telephone				char(11)				default null		comment '联系电话',
1279
   telephone				char(11)				default null		comment '联系电话',
1280
-  project_type			char(20)				default null		comment '项目类型',
1280
+  project_type			varchar(20)				default null		comment '项目类型',
1281
   project_level			char(1)					default null		comment '项目级别(0一般项目、1重大项目)',
1281
   project_level			char(1)					default null		comment '项目级别(0一般项目、1重大项目)',
1282
-  project_registrant	char(3)					default null		comment '项目登记人',
1282
+  project_registrant	varchar(3)				default null		comment '项目登记人',
1283
   create_time			datetime				default null		comment '项目登记时间',
1283
   create_time			datetime				default null		comment '项目登记时间',
1284
   remark				varchar(255)				default null		comment '项目备注',
1284
   remark				varchar(255)				default null		comment '项目备注',
1285
   primary key (project_id)
1285
   primary key (project_id)
1351
 -- ----------------------------
1351
 -- ----------------------------
1352
 drop table if exists `cmc_project_work`;
1352
 drop table if exists `cmc_project_work`;
1353
 create table `cmc_project_work`  (
1353
 create table `cmc_project_work`  (
1354
+  `work_id`			char(19)		not null		comment '工作内容id',
1354
   `project_id`		char(19)		not null		comment '项目id',
1355
   `project_id`		char(19)		not null		comment '项目id',
1355
-  `work_content`	varchar(255)	default null	comment '工作内容',
1356
-  `scale_grade`		varchar(10)		default null	comment '等级或比例尺',
1356
+  `content`			varchar(255)	default null	comment '工作内容',
1357
+  `scale`			varchar(10)		default null	comment '等级或比例尺',
1357
   `unit`			varchar(10)		default null	comment '单位',
1358
   `unit`			varchar(10)		default null	comment '单位',
1358
-  `work_load`		varchar(10)		default null	comment '工作量',
1359
-  `finish_time`		datetime		default null	comment '要求完成时间',
1359
+  `workload`		varchar(10)		default null	comment '工作量',
1360
+  `deadline`		datetime		default null	comment '要求完成时间',
1360
   `remark`			varchar(255)		default null	comment '工作内容备注',
1361
   `remark`			varchar(255)		default null	comment '工作内容备注',
1361
-  primary key (`project_id`)
1362
+  primary key (`work_id`)
1362
 ) engine = innodb comment = 'cmc项目内容表';
1363
 ) engine = innodb comment = 'cmc项目内容表';
1363
 
1364
 
1364
 -- ----------------------------
1365
 -- ----------------------------
1371
 drop table if exists `cmc_car`;
1372
 drop table if exists `cmc_car`;
1372
 create table `cmc_car`  (
1373
 create table `cmc_car`  (
1373
   `car_id`			int			not null auto_increment		comment '车辆id',
1374
   `car_id`			int			not null auto_increment		comment '车辆id',
1374
-  `license_plate`	char(8)		default null				comment '车牌号',
1375
+  `license_plate`	varchar(8)	default null				comment '车牌号',
1375
   `driver`			bigint		default null				comment '驾驶员(常用)',
1376
   `driver`			bigint		default null				comment '驾驶员(常用)',
1376
   primary key (`car_id`)
1377
   primary key (`car_id`)
1377
 ) engine = innodb comment = 'cmc车辆信息表';
1378
 ) engine = innodb comment = 'cmc车辆信息表';

+ 43
- 13
oa-ui/src/views/oa/project/index.vue 查看文件

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
4
  * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-02-29 11:09:14
5
+ * @LastEditTime: 2024-02-29 16:59:28
6
 -->
6
 -->
7
 <template>
7
 <template>
8
   <div class="project-wrapper">
8
   <div class="project-wrapper">
13
           <el-input v-model="queryParams.projectNumber" placeholder="请输入项目编号" clearable
13
           <el-input v-model="queryParams.projectNumber" placeholder="请输入项目编号" clearable
14
             @keyup.enter.native="handleQuery" />
14
             @keyup.enter.native="handleQuery" />
15
         </el-form-item>
15
         </el-form-item>
16
-        <el-form-item label="项目负责人" prop="projectLeader">
17
-          <el-input v-model="queryParams.projectLeader" placeholder="请输入项目负责人" clearable
16
+        <el-form-item label="项目负责人" prop="projectLeaderName">
17
+          <el-input v-model="queryParams.projectLeaderName" placeholder="请输入项目负责人" clearable
18
             @keyup.enter.native="handleQuery" />
18
             @keyup.enter.native="handleQuery" />
19
         </el-form-item>
19
         </el-form-item>
20
         <el-form-item label="项目名称" prop="projectName">
20
         <el-form-item label="项目名称" prop="projectName">
80
         </el-table-column>
80
         </el-table-column>
81
         <el-table-column label="项目编号" align="center" key="projectNumber" prop="projectNumber" />
81
         <el-table-column label="项目编号" align="center" key="projectNumber" prop="projectNumber" />
82
         <el-table-column label="项目名称" align="center" key="projectName" prop="projectName" />
82
         <el-table-column label="项目名称" align="center" key="projectName" prop="projectName" />
83
-        <el-table-column label="项目负责人" align="center" key="projectLeader" prop="projectLeader" />
83
+        <el-table-column label="项目负责人" align="center" key="projectLeaderName" prop="projectLeaderName" />
84
         <el-table-column label="操作" align="center" width="160" class-name="small-padding fixed-width">
84
         <el-table-column label="操作" align="center" width="160" class-name="small-padding fixed-width">
85
           <template slot-scope="scope" v-if="scope.row.userId !== 1">
85
           <template slot-scope="scope" v-if="scope.row.userId !== 1">
86
             <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
86
             <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
139
             </tr>
139
             </tr>
140
             <tr v-for="(work, index) in workList" :key="index">
140
             <tr v-for="(work, index) in workList" :key="index">
141
               <td>
141
               <td>
142
-                <el-input v-model="work.name" type="textarea" autosize clearable></el-input>
142
+                <el-input v-model="work.content" type="textarea" autosize clearable></el-input>
143
               </td>
143
               </td>
144
               <td>
144
               <td>
145
                 <el-input v-model="work.scale" clearable></el-input>
145
                 <el-input v-model="work.scale" clearable></el-input>
213
 </template>
213
 </template>
214
 
214
 
215
 <script>
215
 <script>
216
-import { listProject } from "@/api/oa/project/project";
216
+import { listProject, submitProject, modifyProject, delProject } from "@/api/oa/project/project";
217
 import { listDept } from '@/api/system/dept'
217
 import { listDept } from '@/api/system/dept'
218
-import { listUser } from '@/api/system/user'
218
+import { listUser, getUser } from '@/api/system/user'
219
 export default {
219
 export default {
220
   data() {
220
   data() {
221
     return {
221
     return {
247
         userList: []
247
         userList: []
248
       },
248
       },
249
       workList: [{
249
       workList: [{
250
-        name: '',
250
+        content: '',
251
         scale: '',
251
         scale: '',
252
         unit: '',
252
         unit: '',
253
         workload: '',
253
         workload: '',
265
     getList() {
265
     getList() {
266
       this.loading = true
266
       this.loading = true
267
       listProject(this.queryParams).then(response => {
267
       listProject(this.queryParams).then(response => {
268
-        this.projectList = response.rows;
268
+        this.projectList = [];
269
+        for (let p of response.rows) {
270
+          if (p.projectLeader != null) {
271
+            getUser(Number(p.projectLeader)).then(res => {
272
+              p.projectLeaderName = res.data.nickName;
273
+            })
274
+          }
275
+          this.projectList.push(p);
276
+        }
269
         this.total = response.total;
277
         this.total = response.total;
270
         this.loading = false;
278
         this.loading = false;
271
       })
279
       })
293
       this.addOpen = true;
301
       this.addOpen = true;
294
     },
302
     },
295
     handleDelete(row) {
303
     handleDelete(row) {
296
-
304
+      const projectIds = row.projectId || this.ids;
305
+      const projectNumbers = row.projectNumber || this.ids;
306
+      this.$modal.confirm('是否确认删除项目编号为"' + projectNumbers + '"的数据项?').then(function () {
307
+        return delProject(projectIds);
308
+      }).then(() => {
309
+        this.getList();
310
+        this.$modal.msgSuccess("删除成功");
311
+      }).catch(() => { });
297
     },
312
     },
298
     confirmAddForm() {
313
     confirmAddForm() {
299
-      this.addForm.workList = this.workList
300
-      console.log(this.addForm);
314
+      this.addForm.workList = this.workList;
315
+      let formData = new FormData();
316
+      let form = JSON.stringify(this.addForm);
317
+      formData.append("form", form);
318
+      console.log(this.title);
319
+      if (this.title == '新增项目')
320
+        submitProject(formData).then(response => {
321
+          this.$modal.msgSuccess("新增成功");
322
+          this.addOpen = false;
323
+          this.getList();
324
+        });
325
+      else
326
+        modifyProject(formData).then(response => {
327
+            this.$modal.msgSuccess("修改成功");
328
+            this.addOpen = false;
329
+            this.getList();
330
+          });
301
     },
331
     },
302
     // 人员选择
332
     // 人员选择
303
     choosePeople() {
333
     choosePeople() {
336
     },
366
     },
337
     addWorkList() {
367
     addWorkList() {
338
       this.workList.push({
368
       this.workList.push({
339
-        name: '',
369
+        content: '',
340
         scale: '',
370
         scale: '',
341
         unit: '',
371
         unit: '',
342
         workload: '',
372
         workload: '',

正在加载...
取消
保存