浏览代码

安全交底管理、成果归档管理

lamphua 11 个月前
父节点
当前提交
90dad75ae6

+ 1
- 0
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcArchiveController.java 查看文件

@@ -73,6 +73,7 @@ public class CmcArchiveController extends BaseController
73 73
     @PostMapping
74 74
     public AjaxResult add(@RequestBody CmcArchive cmcArchive)
75 75
     {
76
+        cmcArchive.setProjectLeader(getLoginUser().getUserId());
76 77
         return toAjax(cmcArchiveService.insertCmcArchive(cmcArchive));
77 78
     }
78 79
 

+ 1
- 1
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcProjectSubContractController.java 查看文件

@@ -91,6 +91,6 @@ public class CmcProjectSubContractController extends BaseController
91 91
 	@DeleteMapping("/{subContractIds}")
92 92
     public AjaxResult remove(@PathVariable String[] subContractIds)
93 93
     {
94
-        return toAjax(cmcProjectSubContractService.deleteCmcProjectSubContractBySubContractIds(subContractIds));
94
+        return success(cmcProjectSubContractService.deleteCmcProjectSubContractBySubContractIds(subContractIds));
95 95
     }
96 96
 }

+ 14
- 0
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcTechnicalController.java 查看文件

@@ -3,6 +3,8 @@ package com.ruoyi.web.controller.oa;
3 3
 import java.util.Date;
4 4
 import java.util.List;
5 5
 import javax.servlet.http.HttpServletResponse;
6
+
7
+import com.ruoyi.system.service.ISysUserService;
6 8
 import org.springframework.beans.factory.annotation.Autowired;
7 9
 import org.springframework.web.bind.annotation.GetMapping;
8 10
 import org.springframework.web.bind.annotation.PostMapping;
@@ -34,6 +36,9 @@ public class CmcTechnicalController extends BaseController
34 36
     @Autowired
35 37
     private ICmcTechnicalService cmcTechnicalService;
36 38
 
39
+    @Autowired
40
+    private ISysUserService userService;
41
+
37 42
     /**
38 43
      * 查询cmc技术方案列表
39 44
      */
@@ -53,6 +58,15 @@ public class CmcTechnicalController extends BaseController
53 58
     public void export(HttpServletResponse response, CmcTechnical cmcTechnical)
54 59
     {
55 60
         List<CmcTechnical> list = cmcTechnicalService.selectCmcTechnicalList(cmcTechnical);
61
+        for (CmcTechnical technical : list) {
62
+            String qualityInspector = technical.getQualityInspector();
63
+            StringBuilder qualityInspectorName = new StringBuilder();
64
+            if (qualityInspector != null && !qualityInspector.equals("") && qualityInspector.split(",").length > 0) {
65
+                for (String inspector : qualityInspector.split(","))
66
+                    qualityInspectorName.append(userService.selectUserById(Long.parseLong(inspector)).getNickName()).append("、");
67
+                technical.setQualityInspectorName(qualityInspectorName.substring(0, qualityInspectorName.length() - 1));
68
+            }
69
+        }
56 70
         ExcelUtil<CmcTechnical> util = new ExcelUtil<CmcTechnical>(CmcTechnical.class);
57 71
         util.exportExcel(response, list, "cmc技术方案数据");
58 72
     }

+ 45
- 10
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcArchive.java 查看文件

@@ -29,31 +29,33 @@ public class CmcArchive extends BaseEntity
29 29
     private String projectName;
30 30
     private CmcProject project;
31 31
 
32
-    /** 成果汇交日期 */
33
-    @JsonFormat(pattern = "yyyy-MM-dd")
34
-    @Excel(name = "成果汇交日期", width = 30, dateFormat = "yyyy-MM-dd")
35
-    private Date submitTime;
36
-
37
-    /** 备注说明 */
38
-    @Excel(name = "备注说明")
39
-    private String submitSituation;
32
+    /** 项目负责人 */
33
+    @Excel(name = "项目负责人")
34
+    private String leaderUserName;
35
+    private Long projectLeader;
40 36
 
41 37
     /** 生产部门检查员 */
42 38
     @Excel(name = "生产部门检查员")
39
+    private String produceUserName;
43 40
     private Long produceInspector;
44 41
 
45 42
     /** 质量检查员 */
46 43
     @Excel(name = "质量检查员")
44
+    private String qualityUserName;
47 45
     private Long qualityInspector;
48 46
 
49 47
     /** 技术部负责人 */
50 48
     @Excel(name = "技术部负责人")
49
+    private String deptUserName;
51 50
     private Long deptLeader;
52 51
 
53
-    /** 归档人 */
54
-    @Excel(name = "归档人")
52
+    /** 资料归档人 */
53
+    @Excel(name = "资料归档人")
54
+    private String archiveUserName;
55 55
     private Long archiver;
56 56
 
57
+    private SysUser leaderUser;
58
+
57 59
     private SysUser produceUser;
58 60
 
59 61
     private SysUser qualityUser;
@@ -62,6 +64,11 @@ public class CmcArchive extends BaseEntity
62 64
 
63 65
     private SysUser archiveUser;
64 66
 
67
+    /** 成果提交日期 */
68
+    @JsonFormat(pattern = "yyyy-MM-dd")
69
+    @Excel(name = "成果提交日期", width = 30, dateFormat = "yyyy-MM-dd")
70
+    private Date submitTime;
71
+
65 72
     /** 资料接收时间 */
66 73
     @JsonFormat(pattern = "yyyy-MM-dd")
67 74
     @Excel(name = "资料接收时间", width = 30, dateFormat = "yyyy-MM-dd")
@@ -87,6 +94,11 @@ public class CmcArchive extends BaseEntity
87 94
     @Excel(name = "归档时间", width = 30, dateFormat = "yyyy-MM-dd")
88 95
     private Date archiveTime;
89 96
 
97
+    /** 备注说明 */
98
+    @Excel(name = "备注说明")
99
+    private String submitSituation;
100
+
101
+
90 102
     /** 生产部门意见 */
91 103
     @Excel(name = "生产部门意见")
92 104
     private String produceComment;
@@ -150,6 +162,15 @@ public class CmcArchive extends BaseEntity
150 162
     {
151 163
         return submitSituation;
152 164
     }
165
+    public void setProjectLeader(Long projectLeader)
166
+    {
167
+        this.projectLeader = projectLeader;
168
+    }
169
+
170
+    public Long getProjectLeader()
171
+    {
172
+        return projectLeader;
173
+    }
153 174
     public void setProduceInspector(Long produceInspector) 
154 175
     {
155 176
         this.produceInspector = produceInspector;
@@ -267,9 +288,20 @@ public class CmcArchive extends BaseEntity
267 288
     {
268 289
         return archiveComment;
269 290
     }
291
+    public void setLeaderUser(SysUser leaderUser)
292
+    {
293
+        this.leaderUser = leaderUser;
294
+        this.leaderUserName = leaderUser == null ? "" : leaderUser.getNickName();
295
+    }
296
+
297
+    public SysUser getLeaderUser()
298
+    {
299
+        return leaderUser;
300
+    }
270 301
     public void setProduceUser(SysUser produceUser)
271 302
     {
272 303
         this.produceUser = produceUser;
304
+        this.produceUserName = produceUser == null ? "" : produceUser.getNickName();
273 305
     }
274 306
 
275 307
     public SysUser getProduceUser()
@@ -279,6 +311,7 @@ public class CmcArchive extends BaseEntity
279 311
     public void setQualityUser(SysUser qualityUser)
280 312
     {
281 313
         this.qualityUser = qualityUser;
314
+        this.qualityUserName = qualityUser == null ? "" : qualityUser.getNickName();
282 315
     }
283 316
 
284 317
     public SysUser getQualityUser()
@@ -288,6 +321,7 @@ public class CmcArchive extends BaseEntity
288 321
     public void setDeptUser(SysUser deptUser)
289 322
     {
290 323
         this.deptUser = deptUser;
324
+        this.deptUserName = deptUser == null ? "" : deptUser.getNickName();
291 325
     }
292 326
 
293 327
     public SysUser getDeptUser()
@@ -297,6 +331,7 @@ public class CmcArchive extends BaseEntity
297 331
     public void setArchiveUser(SysUser archiveUser)
298 332
     {
299 333
         this.archiveUser = archiveUser;
334
+        this.archiveUserName = archiveUser == null ? "" : archiveUser.getNickName();
300 335
     }
301 336
 
302 337
     public SysUser getArchiveUser()

+ 28
- 9
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcSafe.java 查看文件

@@ -22,18 +22,24 @@ public class CmcSafe extends BaseEntity
22 22
     private String safeId;
23 23
 
24 24
     /** 项目id */
25
-    @Excel(name = "项目id")
26 25
     private String projectId;
26
+    @Excel(name = "项目编号")
27
+    private String projectNumber;
28
+    @Excel(name = "项目名称")
29
+    private String projectName;
30
+    private CmcProject project;
27 31
 
28 32
     /** 接受交底人 */
29
-    @Excel(name = "接受交底人")
30 33
     private Long disclosureAccepter;
34
+    @Excel(name = "接受交底人")
35
+    private String acceptUserName;
31 36
 
32
-    private SysUser disclosureAccepterUser;
37
+    private SysUser accepterUser;
33 38
 
34 39
     /** 安全交底人 */
35
-    @Excel(name = "安全交底人")
36 40
     private Long disclosurer;
41
+    @Excel(name = "安全交底人")
42
+    private String disclosurerUserName;
37 43
 
38 44
     private SysUser disclosurerUser;
39 45
 
@@ -81,23 +87,35 @@ public class CmcSafe extends BaseEntity
81 87
     {
82 88
         return projectId;
83 89
     }
90
+    public void setProject(CmcProject project)
91
+    {
92
+        this.project = project;
93
+        this.projectNumber = project == null ? "" : project.getProjectNumber();
94
+        this.projectName = project == null ? "" : project.getProjectName();
95
+    }
96
+
97
+    public CmcProject getProject()
98
+    {
99
+        return project;
100
+    }
84 101
     public void setDisclosureAccepter(Long disclosureAccepter) 
85 102
     {
86 103
         this.disclosureAccepter = disclosureAccepter;
87 104
     }
88 105
 
89
-    public Long getDisclosureAccepter() 
106
+    public Long getDisclosureAccepter()
90 107
     {
91 108
         return disclosureAccepter;
92 109
     }
93
-    public void setDisclosureAccepterUser(SysUser disclosureAccepterUser)
110
+    public void setAccepterUser(SysUser accepterUser)
94 111
     {
95
-        this.disclosureAccepterUser = disclosureAccepterUser;
112
+        this.accepterUser = accepterUser;
113
+        this.acceptUserName = accepterUser == null ? "" : accepterUser.getNickName();
96 114
     }
97 115
 
98
-    public SysUser getDisclosureAccepterUser()
116
+    public SysUser getAccepterUser()
99 117
     {
100
-        return disclosureAccepterUser;
118
+        return accepterUser;
101 119
     }
102 120
     public void setDisclosurer(Long disclosurer) 
103 121
     {
@@ -112,6 +130,7 @@ public class CmcSafe extends BaseEntity
112 130
     public void setDisclosurerUser(SysUser disclosurerUser)
113 131
     {
114 132
         this.disclosurerUser = disclosurerUser;
133
+        this.disclosurerUserName = disclosurerUser == null ? "" : disclosurerUser.getNickName();
115 134
     }
116 135
 
117 136
     public SysUser getDisclosurerUser()

+ 50
- 18
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcTechnical.java 查看文件

@@ -30,35 +30,38 @@ public class CmcTechnical extends BaseEntity
30 30
     private CmcProject project;
31 31
 
32 32
     /** 技术负责人 */
33
-    @Excel(name = "技术负责人")
34 33
     private Long technicalDirector;
35 34
 
36 35
     /** 技术设计人 */
37
-    @Excel(name = "技术设计人")
38 36
     private Long technicalDesigner;
39 37
 
40 38
     /** 技术安排人 */
41
-    @Excel(name = "技术安排人")
42 39
     private Long technicalPlanner;
43 40
 
41
+    /** 质量检查员 */
42
+    private String qualityInspector;
43
+
44
+    /** 总工审批人 */
45
+    private Long managerUserId;
46
+
47
+    @Excel(name = "技术负责人")
48
+    private String directUserName;
49
+    private SysUser directUser;
50
+
51
+    @Excel(name = "技术安排人")
52
+    private String planUserName;
44 53
     private SysUser planUser;
45 54
 
55
+    @Excel(name = "技术设计人")
56
+    private String designUserName;
46 57
     private SysUser designUser;
47 58
 
59
+    @Excel(name = "总工程师")
60
+    private String managerUserName;
48 61
     private SysUser managerUser;
49 62
 
50
-    /** 技术安排意见 */
51
-    @Excel(name = "技术安排意见")
52
-    private String planComment;
53
-
54
-    /** 质量检查员 */
55 63
     @Excel(name = "质量检查员")
56
-    private String qualityInspector;
57
-
58
-    /** 技术安排时间 */
59
-    @JsonFormat(pattern = "yyyy-MM-dd")
60
-    @Excel(name = "技术安排时间", width = 30, dateFormat = "yyyy-MM-dd")
61
-    private Date technicalTime;
64
+    private String qualityInspectorName;
62 65
 
63 66
     /** 技术方案 */
64 67
     @Excel(name = "技术方案")
@@ -76,18 +79,23 @@ public class CmcTechnical extends BaseEntity
76 79
     @Excel(name = "方案说明")
77 80
     private String designDescription;
78 81
 
82
+    /** 技术安排意见 */
83
+    @Excel(name = "技术安排意见")
84
+    private String planComment;
85
+
79 86
     /** 技术审核意见 */
80 87
     @Excel(name = "技术审核意见")
81 88
     private String technicalComment;
82 89
 
83
-    /** 总工审批人 */
84
-    @Excel(name = "总工审批人")
85
-    private Long managerUserId;
86
-
87 90
     /** 总工审核意见 */
88 91
     @Excel(name = "总工审核意见")
89 92
     private String manageComment;
90 93
 
94
+    /** 技术安排时间 */
95
+    @JsonFormat(pattern = "yyyy-MM-dd")
96
+    @Excel(name = "技术安排时间", width = 30, dateFormat = "yyyy-MM-dd")
97
+    private Date technicalTime;
98
+
91 99
     /** 方案上传时间 */
92 100
     @JsonFormat(pattern = "yyyy-MM-dd")
93 101
     @Excel(name = "方案上传时间", width = 30, dateFormat = "yyyy-MM-dd")
@@ -159,9 +167,22 @@ public class CmcTechnical extends BaseEntity
159 167
     {
160 168
         return technicalPlanner;
161 169
     }
170
+    public void setDirectUser(SysUser directUser)
171
+    {
172
+        this.directUser = directUser;
173
+        this.designUserName = directUser == null ? "" : directUser.getNickName();
174
+
175
+    }
176
+
177
+    public SysUser getDirectUser()
178
+    {
179
+        return directUser;
180
+    }
162 181
     public void setPlanUser(SysUser planUser)
163 182
     {
164 183
         this.planUser = planUser;
184
+        this.planUserName = planUser == null ? "" : planUser.getNickName();
185
+
165 186
     }
166 187
 
167 188
     public SysUser getPlanUser()
@@ -171,6 +192,7 @@ public class CmcTechnical extends BaseEntity
171 192
     public void setDesignUser(SysUser designUser)
172 193
     {
173 194
         this.designUser = designUser;
195
+        this.designUserName = designUser == null ? "" : designUser.getNickName();
174 196
     }
175 197
 
176 198
     public SysUser getDesignUser()
@@ -180,6 +202,7 @@ public class CmcTechnical extends BaseEntity
180 202
     public void setManagerUser(SysUser managerUser)
181 203
     {
182 204
         this.managerUser = managerUser;
205
+        this.managerUserName = managerUser == null ? "" : managerUser.getNickName();
183 206
     }
184 207
 
185 208
     public SysUser getManagerUser()
@@ -204,6 +227,15 @@ public class CmcTechnical extends BaseEntity
204 227
     {
205 228
         return qualityInspector;
206 229
     }
230
+    public void setQualityInspectorName(String qualityInspectorName)
231
+    {
232
+        this.qualityInspectorName = qualityInspectorName;
233
+    }
234
+
235
+    public String getQualityInspectorName()
236
+    {
237
+        return qualityInspectorName;
238
+    }
207 239
     public void setTechnicalTime(Date technicalTime)
208 240
     {
209 241
         this.technicalTime = technicalTime;

+ 13
- 1
oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcArchiveMapper.xml 查看文件

@@ -7,6 +7,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
7 7
     <resultMap type="CmcArchive" id="CmcArchiveResult">
8 8
         <result property="archiveId"    column="archive_id"    />
9 9
         <result property="projectId"    column="project_id"    />
10
+        <result property="projectLeader"    column="project_leader"    />
10 11
         <result property="submitTime"    column="submit_time"    />
11 12
         <result property="submitSituation"    column="submit_situation"    />
12 13
         <result property="produceInspector"    column="produce_inspector"    />
@@ -26,6 +27,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
26 27
         <association property="qualityUser"    javaType="SysUser"         resultMap="QualityUserResult" />
27 28
         <association property="deptUser"    javaType="SysUser"         resultMap="DeptUserResult" />
28 29
         <association property="archiveUser"    javaType="SysUser"         resultMap="ArchiveUserResult" />
30
+        <association property="leaderUser"    javaType="SysUser"         resultMap="LeaderUserResult" />
29 31
     </resultMap>
30 32
 
31 33
     <resultMap type="SysUser" id="ProduceUserResult">
@@ -48,20 +50,27 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
48 50
         <result property="nickName"    column="archive_nick_name"    />
49 51
     </resultMap>
50 52
 
53
+    <resultMap type="SysUser" id="LeaderUserResult">
54
+        <result property="userId"    column="user_id"    />
55
+        <result property="nickName"    column="leader_nick_name"    />
56
+    </resultMap>
57
+
51 58
     <sql id="selectCmcArchiveVo">
52
-        select a.archive_id, a.project_id, a.submit_time, a.submit_situation, a.produce_inspector, u.nick_name as produce_nick_name, a.quality_inspector, u1.nick_name as quality_nick_name,
59
+        select a.archive_id, a.project_id, a.project_leader, a.submit_time, a.submit_situation, a.produce_inspector, u.nick_name as produce_nick_name, a.quality_inspector, u1.nick_name as quality_nick_name,
53 60
                a.dept_leader, u2.nick_name as dept_nick_name, a.archiver, u3.nick_name as archive_nick_name, a.receive_time, a.quality_time, a.produce_time, a.dept_time, a.archive_time,
54 61
                a.produce_comment, a.quality_comment, a.dept_comment, a.archive_comment from cmc_archive as a
55 62
         left join sys_user as u on u.user_id = a.produce_inspector
56 63
         left join sys_user as u1 on u1.user_id = a.quality_inspector
57 64
         left join sys_user as u2 on u2.user_id = a.dept_leader
58 65
         left join sys_user as u3 on u3.user_id = a.archiver
66
+        left join sys_user as u4 on u4.user_id = a.project_leader
59 67
     </sql>
60 68
 
61 69
     <select id="selectCmcArchiveList" parameterType="CmcArchive" resultMap="CmcArchiveResult">
62 70
         <include refid="selectCmcArchiveVo"/>
63 71
         <where>  
64 72
             <if test="projectId != null  and projectId != ''"> and a.project_id = #{projectId}</if>
73
+            <if test="projectLeader != null  and projectLeader != ''"> and a.project_leader = #{projectLeader}</if>
65 74
             <if test="submitTime != null "> and a.submit_time = #{submitTime}</if>
66 75
             <if test="submitSituation != null  and submitSituation != ''"> and a.submit_situation = #{submitSituation}</if>
67 76
             <if test="produceInspector != null "> and a.produce_inspector = #{produceInspector}</if>
@@ -90,6 +99,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
90 99
         <trim prefix="(" suffix=")" suffixOverrides=",">
91 100
             <if test="archiveId != null">archive_id,</if>
92 101
             <if test="projectId != null">project_id,</if>
102
+            <if test="projectLeader != null">project_leader,</if>
93 103
             <if test="submitTime != null">submit_time,</if>
94 104
             <if test="submitSituation != null">submit_situation,</if>
95 105
             <if test="produceInspector != null">produce_inspector,</if>
@@ -109,6 +119,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
109 119
         <trim prefix="values (" suffix=")" suffixOverrides=",">
110 120
             <if test="archiveId != null">#{archiveId},</if>
111 121
             <if test="projectId != null">#{projectId},</if>
122
+            <if test="projectLeader != null">#{projectLeader},</if>
112 123
             <if test="submitTime != null">#{submitTime},</if>
113 124
             <if test="submitSituation != null">#{submitSituation},</if>
114 125
             <if test="produceInspector != null">#{produceInspector},</if>
@@ -131,6 +142,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
131 142
         update cmc_archive
132 143
         <trim prefix="SET" suffixOverrides=",">
133 144
             <if test="projectId != null">project_id = #{projectId},</if>
145
+            <if test="projectLeader != null">project_leader = #{projectLeader},</if>
134 146
             <if test="submitTime != null">submit_time = #{submitTime},</if>
135 147
             <if test="submitSituation != null">submit_situation = #{submitSituation},</if>
136 148
             <if test="produceInspector != null">produce_inspector = #{produceInspector},</if>

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

@@ -15,11 +15,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
15 15
         <result property="disclosureComment"    column="disclosure_comment"    />
16 16
         <result property="disclosureTime"    column="disclosure_time"    />
17 17
         <result property="acceptTime"    column="accept_time"    />
18
-        <association property="disclosureAccepterUser"    javaType="SysUser"         resultMap="DisclosureAccepterUserResult" />
18
+        <association property="accepterUser"    javaType="SysUser"         resultMap="AccepterUserResult" />
19 19
         <association property="disclosurerUser"    javaType="SysUser"         resultMap="DisclosurerUserResult" />
20
+        <association property="project"    javaType="CmcProject"         resultMap="CmcProjectResult" />
20 21
     </resultMap>
21 22
 
22
-    <resultMap type="SysUser" id="DisclosureAccepterUserResult">
23
+    <resultMap type="SysUser" id="AccepterUserResult">
23 24
         <result property="userId"    column="user_id"    />
24 25
         <result property="nickName"    column="accepter_nick_name"    />
25 26
     </resultMap>
@@ -29,10 +30,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
29 30
         <result property="nickName"    column="disclosurer_nick_name"    />
30 31
     </resultMap>
31 32
 
33
+    <resultMap type="CmcProject" id="CmcProjectResult">
34
+        <result property="projectId"    column="project_id"    />
35
+        <result property="projectNumber"    column="project_number"    />
36
+        <result property="projectName"    column="project_name"    />
37
+    </resultMap>
38
+
32 39
     <sql id="selectCmcSafeVo">
33
-        select s.safe_id, s.project_id, s.disclosure_accepter, u.nick_name as accepter_nick_name, s.disclosurer, u1.nick_name as disclosurer_nick_name, s.environment_comment, s.outside_comment, s.inside_comment, s.disclosure_comment, s.disclosure_time, s.accept_time from cmc_safe as s
40
+        select s.safe_id, s.project_id, p.project_number, p.project_name, s.disclosure_accepter, u.nick_name as accepter_nick_name, s.disclosurer, u1.nick_name as disclosurer_nick_name, s.environment_comment, s.outside_comment, s.inside_comment, s.disclosure_comment, s.disclosure_time, s.accept_time from cmc_safe as s
34 41
         left join sys_user as u on u.user_id = s.disclosure_accepter
35 42
         left join sys_user as u1 on u1.user_id = s.disclosurer
43
+        left join cmc_project as p on p.project_id = s.project_id
36 44
     </sql>
37 45
 
38 46
     <select id="selectCmcSafeList" parameterType="CmcSafe" resultMap="CmcSafeResult">

+ 14
- 8
oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcTechnicalMapper.xml 查看文件

@@ -22,12 +22,18 @@
22 22
         <result property="technicalUploadTime"    column="technical_upload_time"    />
23 23
         <result property="techApprovalTime"    column="tech_approval_time"    />
24 24
         <result property="manageApprovalTime"    column="manage_approval_time"    />
25
+        <association property="directUser"    javaType="SysUser"         resultMap="DirectUserResult" />
25 26
         <association property="planUser"    javaType="SysUser"         resultMap="PlanUserResult" />
26 27
         <association property="designUser"    javaType="SysUser"         resultMap="DesignUserResult" />
27 28
         <association property="managerUser"    javaType="SysUser"         resultMap="ManagerUserResult" />
28 29
         <association property="project"    javaType="CmcProject"         resultMap="CmcProjectResult" />
29 30
     </resultMap>
30 31
 
32
+    <resultMap type="SysUser" id="DirectUserResult">
33
+        <result property="userId"    column="user_id"    />
34
+        <result property="nickName"    column="direct_nick_name"    />
35
+    </resultMap>
36
+
31 37
     <resultMap type="SysUser" id="PlanUserResult">
32 38
         <result property="userId"    column="user_id"    />
33 39
         <result property="nickName"    column="plan_nick_name"    />
@@ -50,14 +56,14 @@
50 56
     </resultMap>
51 57
 
52 58
     <sql id="selectCmcTechnicalVo">
53
-        select t.technical_id, t.project_id, p.project_number, p.project_name, t.technical_director, t.technical_designer, u.nick_name as design_nick_name, t.technical_planner, u1.nick_name as plan_nick_name,
54
-               t.plan_comment, t.quality_inspector, t.technical_time, t.technical_document, t.modify_document, t.final_document, t.design_description, t.technical_comment,
55
-               t.manager_user_id, u2.nick_name as manager_nick_name,
56
-               t.manage_comment, t.technical_upload_time, t.tech_approval_time, t.manage_approval_time from cmc_technical as t
57
-         left join sys_user as u on u.user_id = t.technical_designer
58
-         left join sys_user as u1 on u1.user_id = t.technical_planner
59
-         left join sys_user as u2 on u2.user_id = t.manager_user_id
60
-         left join cmc_project as p on p.project_id = t.project_id
59
+        select t.technical_id, t.project_id, p.project_number, p.project_name, t.technical_director, u.nick_name as direct_nick_name, t.technical_designer, u1.nick_name as design_nick_name,
60
+               t.technical_planner, u2.nick_name as plan_nick_name, t.plan_comment, t.quality_inspector, t.technical_time, t.technical_document, t.modify_document, t.final_document,
61
+               t.design_description, t.technical_comment, t.manager_user_id, u3.nick_name as manager_nick_name, t.manage_comment, t.technical_upload_time, t.tech_approval_time, t.manage_approval_time from cmc_technical as t
62
+        left join sys_user as u on u.user_id = t.technical_director
63
+        left join sys_user as u1 on u1.user_id = t.technical_designer
64
+        left join sys_user as u2 on u2.user_id = t.technical_planner
65
+        left join sys_user as u3 on u3.user_id = t.manager_user_id
66
+        left join cmc_project as p on p.project_id = t.project_id
61 67
     </sql>
62 68
 
63 69
     <select id="selectCmcTechnicalList" parameterType="CmcTechnical" resultMap="CmcTechnicalResult">

+ 2
- 1
oa-back/sql/sql.sql 查看文件

@@ -10064,7 +10064,8 @@ drop table if exists `cmc_archive`;
10064 10064
 create table `cmc_archive`  (
10065 10065
   `archive_id` 				char(19)  		not null 	comment '成果归档id',
10066 10066
   `project_id` 				char(19)  		default null comment '项目id',
10067
-  `submit_time` 			date			default null comment '成果汇交日期',
10067
+  `project_leader` 			bigint  		default null comment '项目负责人',
10068
+  `submit_time` 			date			default null comment '成果提交日期',
10068 10069
   `submit_situation` 		varchar(255)	default null comment '备注说明',
10069 10070
   `produce_inspector` 		bigint			default null comment '生产部门检查员',
10070 10071
   `quality_inspector` 		bigint			default null comment '质量检查员',

+ 39
- 28
oa-ui/src/views/oa/archive/index.vue 查看文件

@@ -1,8 +1,13 @@
1 1
 <template>
2 2
   <div class="app-container">
3 3
     <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
4
-      <el-form-item label="项目id" prop="projectId">
5
-        <el-input v-model="queryParams.projectId" placeholder="请输入项目id" clearable @keyup.enter.native="handleQuery" />
4
+      <el-form-item label="项目编号" prop="projectId">
5
+        <el-select v-model="queryParams.projectId" clearable filterable remote reserve-keyword placeholder="请输入项目编号"
6
+          :remote-method="remoteMethod" :loading="loading" style="width: 400px;">
7
+          <el-option v-for="project in projectList" :key="project.projectId"
8
+            :label="project.projectNumber + '-' + project.projectName" :value="project.projectId">
9
+          </el-option>
10
+        </el-select>
6 11
       </el-form-item>
7 12
       <el-form-item label="归档人" prop="archiver">
8 13
         <el-select v-model="queryParams.archiver" filterable clearable @change="handleQuery">
@@ -11,9 +16,9 @@
11 16
           </el-option>
12 17
         </el-select>
13 18
       </el-form-item>
14
-      <el-form-item label="成果交日期" prop="submitTime" label-width="128px">
19
+      <el-form-item label="成果交日期" prop="submitTime" label-width="128px">
15 20
         <el-date-picker clearable v-model="queryParams.submitTime" type="date" value-format="yyyy-MM-dd"
16
-          placeholder="请选择成果交日期">
21
+          placeholder="请选择成果交日期">
17 22
         </el-date-picker>
18 23
       </el-form-item>
19 24
       <el-form-item label="归档时间" prop="archiveTime">
@@ -28,18 +33,6 @@
28 33
     </el-form>
29 34
 
30 35
     <el-row :gutter="10" class="mb8">
31
-      <el-col :span="1.5">
32
-        <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
33
-          v-hasPermi="['oa:archive:add']">新增</el-button>
34
-      </el-col>
35
-      <el-col :span="1.5">
36
-        <el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
37
-          v-hasPermi="['oa:archive:edit']">修改</el-button>
38
-      </el-col>
39
-      <el-col :span="1.5">
40
-        <el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
41
-          v-hasPermi="['oa:archive:remove']">删除</el-button>
42
-      </el-col>
43 36
       <el-col :span="1.5">
44 37
         <el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport"
45 38
           v-hasPermi="['oa:archive:export']">导出</el-button>
@@ -49,17 +42,19 @@
49 42
 
50 43
     <el-table v-loading="loading" :data="archiveList" @selection-change="handleSelectionChange">
51 44
       <el-table-column type="index" label="序号" width="55" align="center" />
52
-      <el-table-column label="项目id" align="center" prop="projectId" />
53
-      <el-table-column label="成果汇交日期" align="center" prop="submitTime" width="180">
45
+      <el-table-column label="项目编号" align="center" prop="project.projectNumber" />
46
+      <el-table-column label="项目名称" align="center" prop="project.projectName" />
47
+      <el-table-column label="成果提交日期" align="center" prop="submitTime" width="180">
54 48
         <template slot-scope="scope">
55 49
           <span>{{ parseTime(scope.row.submitTime, '{y}-{m}-{d}') }}</span>
56 50
         </template>
57 51
       </el-table-column>
58 52
       <el-table-column label="备注说明" align="center" prop="submitSituation" />
59
-      <el-table-column label="生产部门检查员" align="center" prop="produceInspector" />
60
-      <el-table-column label="质量检查员" align="center" prop="qualityInspector" />
61
-      <el-table-column label="技术部负责人" align="center" prop="deptLeader" />
62
-      <el-table-column label="归档人" align="center" prop="archiver" />
53
+      <el-table-column label="项目负责人" align="center" prop="leaderUser.nickName" />
54
+      <el-table-column label="生产部门检查员" align="center" prop="produceUser.nickName" />
55
+      <el-table-column label="质量检查员" align="center" prop="qualityUser.nickName" />
56
+      <el-table-column label="技术部负责人" align="center" prop="deptUser.nickName" />
57
+      <el-table-column label="归档人" align="center" prop="archiverUser.nickName" />
63 58
       <el-table-column label="资料接收时间" align="center" prop="receiveTime" width="180">
64 59
         <template slot-scope="scope">
65 60
           <span>{{ parseTime(scope.row.receiveTime, '{y}-{m}-{d}') }}</span>
@@ -91,10 +86,8 @@
91 86
       <el-table-column label="归档审核意见" align="center" prop="archiveComment" /> -->
92 87
       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
93 88
         <template slot-scope="scope">
94
-          <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
95
-            v-hasPermi="['oa:archive:edit']">修改</el-button>
96
-          <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
97
-            v-hasPermi="['oa:archive:remove']">删除</el-button>
89
+          <el-button size="mini" type="text" icon="el-icon-view" @click="handleView(scope.row)"
90
+            v-hasPermi="['oa:technical:view']">查看</el-button>
98 91
         </template>
99 92
       </el-table-column>
100 93
     </el-table>
@@ -108,9 +101,9 @@
108 101
         <el-form-item label="项目id" prop="projectId">
109 102
           <el-input v-model="form.projectId" placeholder="请输入项目id" />
110 103
         </el-form-item>
111
-        <el-form-item label="成果交日期" prop="submitTime">
104
+        <el-form-item label="成果交日期" prop="submitTime">
112 105
           <el-date-picker clearable v-model="form.submitTime" type="date" value-format="yyyy-MM-dd"
113
-            placeholder="请选择成果交日期">
106
+            placeholder="请选择成果交日期">
114 107
           </el-date-picker>
115 108
         </el-form-item>
116 109
         <el-form-item label="备注说明" prop="submitSituation">
@@ -182,6 +175,7 @@
182 175
 
183 176
 <script>
184 177
 import { listArchive, getArchive, delArchive, addArchive, updateArchive } from "@/api/oa/archive/archive";
178
+import { listProject } from '@/api/oa/project/project';
185 179
 
186 180
 export default {
187 181
   name: "Archive",
@@ -201,6 +195,7 @@ export default {
201 195
       total: 0,
202 196
       // cmc成果归档表格数据
203 197
       archiveList: [],
198
+      projectList: [],
204 199
       // 弹出层标题
205 200
       title: "",
206 201
       // 是否显示弹出层
@@ -230,6 +225,9 @@ export default {
230 225
       },
231 226
       // 表单参数
232 227
       form: {},
228
+      taskForm: {
229
+        formId:''
230
+      },
233 231
       // 表单校验
234 232
       rules: {
235 233
       }
@@ -248,6 +246,15 @@ export default {
248 246
         this.loading = false;
249 247
       });
250 248
     },
249
+    remoteMethod(val) {
250
+      listProject({
251
+        pageNum: 1,
252
+        pageSize: 20, 
253
+        projectNumber: val
254
+      }).then(res => {
255
+        this.projectList = res.rows;
256
+      })
257
+    },
251 258
     // 取消按钮
252 259
     cancel() {
253 260
       this.open = false;
@@ -278,6 +285,10 @@ export default {
278 285
       };
279 286
       this.resetForm("form");
280 287
     },
288
+    handleView(row){
289
+      this.taskForm.formId = row.projectId;
290
+      this.infoOpen = true;
291
+    },
281 292
     /** 搜索按钮操作 */
282 293
     handleQuery() {
283 294
       this.queryParams.pageNum = 1;

+ 1
- 1
oa-ui/src/views/oa/device/index.vue 查看文件

@@ -384,7 +384,7 @@ export default {
384 384
       if (row == '3') {
385 385
         return 'primary'
386 386
       }
387
-      if (row == '3') {
387
+      if (row == '4') {
388 388
         return 'info'
389 389
       }
390 390
     }

+ 5
- 1
oa-ui/src/views/oa/partner/index.vue 查看文件

@@ -213,7 +213,11 @@ export default {
213 213
       this.title = "添加合作单位";
214 214
     },
215 215
     handleView(row){
216
-
216
+      const partnerId = row.partnerId || this.ids
217
+      getPartner(partnerId).then(response => {
218
+        this.form = response.data;
219
+        this.open = true;
220
+      });
217 221
     },
218 222
     /** 修改按钮操作 */
219 223
     handleUpdate(row) {

+ 34
- 23
oa-ui/src/views/oa/safe/index.vue 查看文件

@@ -1,8 +1,13 @@
1 1
 <template>
2 2
   <div class="app-container">
3 3
     <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="120px">
4
-      <el-form-item label="项目id" prop="projectId">
5
-        <el-input v-model="queryParams.projectId" placeholder="请输入项目id" clearable @keyup.enter.native="handleQuery" />
4
+      <el-form-item label="项目编号" prop="projectId">
5
+        <el-select v-model="queryParams.projectId" clearable filterable remote reserve-keyword placeholder="请输入项目编号"
6
+          :remote-method="remoteMethod" :loading="loading" style="width: 400px;">
7
+          <el-option v-for="project in projectList" :key="project.projectId"
8
+            :label="project.projectNumber + '-' + project.projectName" :value="project.projectId">
9
+          </el-option>
10
+        </el-select>
6 11
       </el-form-item>
7 12
       <el-form-item label="接受交底人" prop="disclosureAccepter">
8 13
         <el-select v-model="queryParams.disclosureAccepter" filterable clearable @change="handleQuery">
@@ -17,19 +22,7 @@
17 22
       </el-form-item>
18 23
     </el-form>
19 24
 
20
-    <el-row :gutter="10" class="mb8">
21
-      <el-col :span="1.5">
22
-        <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
23
-          v-hasPermi="['oa:safe:add']">新增</el-button>
24
-      </el-col>
25
-      <el-col :span="1.5">
26
-        <el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
27
-          v-hasPermi="['oa:safe:edit']">修改</el-button>
28
-      </el-col>
29
-      <el-col :span="1.5">
30
-        <el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
31
-          v-hasPermi="['oa:safe:remove']">删除</el-button>
32
-      </el-col>
25
+    <el-row :gutter="10" class="mb8">      
33 26
       <el-col :span="1.5">
34 27
         <el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport"
35 28
           v-hasPermi="['oa:safe:export']">导出</el-button>
@@ -39,9 +32,10 @@
39 32
 
40 33
     <el-table v-loading="loading" :data="safeList" @selection-change="handleSelectionChange">
41 34
       <el-table-column type="index" label="序号" width="55" align="center" />
42
-      <el-table-column label="项目id" align="center" prop="projectId" />
43
-      <el-table-column label="接受交底人" align="center" prop="disclosureAccepter" />
44
-      <el-table-column label="安全交底人" align="center" prop="disclosurer" />
35
+      <el-table-column label="项目编号" align="center" prop="project.projectNumber" />
36
+      <el-table-column label="项目名称" align="center" prop="project.projectName" />
37
+      <el-table-column label="接受交底人" align="center" prop="accepterUser.nickName" />
38
+      <el-table-column label="安全交底人" align="center" prop="disclosurerUser.nickName" />
45 39
       <!-- <el-table-column label="环境要求" align="center" prop="environmentComment" />
46 40
       <el-table-column label="外业要求" align="center" prop="outsideComment" />
47 41
       <el-table-column label="内业要求" align="center" prop="insideComment" /> -->
@@ -60,10 +54,6 @@
60 54
         <template slot-scope="scope">
61 55
           <el-button size="mini" type="text" icon="el-icon-view" @click="handleView(scope.row)"
62 56
             v-hasPermi="['oa:safe:view']">查看</el-button>
63
-          <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
64
-            v-hasPermi="['oa:safe:edit']">修改</el-button>
65
-          <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
66
-            v-hasPermi="['oa:safe:remove']">删除</el-button>
67 57
         </template>
68 58
       </el-table-column>
69 59
     </el-table>
@@ -111,14 +101,20 @@
111 101
         <el-button @click="cancel">取 消</el-button>
112 102
       </div>
113 103
     </el-dialog>
104
+    <el-dialog :title="title" :visible.sync="infoOpen" width="50%" append-to-body>
105
+      <safe-tab :taskForm="taskForm"></safe-tab>
106
+    </el-dialog>
114 107
   </div>
115 108
 </template>
116 109
 
117 110
 <script>
118 111
 import { listSafe, getSafe, delSafe, addSafe, updateSafe } from "@/api/oa/safe/safe";
112
+import { listProject } from '@/api/oa/project/project';
113
+import safeTab from '../../flowable/form/projectProcess/safeTab.vue';
119 114
 
120 115
 export default {
121 116
   name: "Safe",
117
+  components: { safeTab, },
122 118
   data() {
123 119
     return {
124 120
       // 遮罩层
@@ -135,10 +131,12 @@ export default {
135 131
       total: 0,
136 132
       // cmc安全交底表格数据
137 133
       safeList: [],
134
+      projectList: [],
138 135
       // 弹出层标题
139 136
       title: "",
140 137
       // 是否显示弹出层
141 138
       open: false,
139
+      infoOpen: false,
142 140
       // 查询参数
143 141
       queryParams: {
144 142
         pageNum: 1,
@@ -155,6 +153,9 @@ export default {
155 153
       },
156 154
       // 表单参数
157 155
       form: {},
156
+      taskForm: {
157
+        formId:''
158
+      },
158 159
       // 表单校验
159 160
       rules: {
160 161
       }
@@ -173,6 +174,15 @@ export default {
173 174
         this.loading = false;
174 175
       });
175 176
     },
177
+    remoteMethod(val) {
178
+      listProject({
179
+        pageNum: 1,
180
+        pageSize: 20, 
181
+        projectNumber: val
182
+      }).then(res => {
183
+        this.projectList = res.rows;
184
+      })
185
+    },
176 186
     // 取消按钮
177 187
     cancel() {
178 188
       this.open = false;
@@ -217,7 +227,8 @@ export default {
217 227
       this.title = "添加cmc安全交底";
218 228
     },
219 229
     handleView(row){
220
-      
230
+      this.taskForm.formId = row.projectId;
231
+      this.infoOpen = true;
221 232
     },
222 233
     /** 修改按钮操作 */
223 234
     handleUpdate(row) {

+ 20
- 4
oa-ui/src/views/oa/technical/index.vue 查看文件

@@ -1,8 +1,13 @@
1 1
 <template>
2 2
   <div class="app-container">
3 3
     <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="128px">
4
-      <el-form-item label="项目id" prop="projectId">
5
-        <el-input v-model="queryParams.projectId" placeholder="请输入项目id" clearable @keyup.enter.native="handleQuery" />
4
+      <el-form-item label="项目编号" prop="projectId">
5
+        <el-select v-model="queryParams.projectId" clearable filterable remote reserve-keyword placeholder="请输入项目编号"
6
+          :remote-method="remoteMethod" :loading="loading" style="width: 400px;">
7
+          <el-option v-for="project in projectList" :key="project.projectId"
8
+            :label="project.projectNumber + '-' + project.projectName" :value="project.projectId">
9
+          </el-option>
10
+        </el-select>
6 11
       </el-form-item>
7 12
       <el-form-item label="技术负责人" prop="technicalDirector">
8 13
         <el-select v-model="queryParams.technicalDirector" filterable clearable @change="handleQuery">
@@ -85,8 +90,8 @@
85 90
         <template slot-scope="scope">
86 91
           <el-button size="mini" type="text" icon="el-icon-view" @click="handleView(scope.row)"
87 92
             v-hasPermi="['oa:technical:view']">查看</el-button>
88
-          <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
89
-            v-hasPermi="['oa:technical:remove']">删除</el-button>
93
+          <!-- <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
94
+            v-hasPermi="['oa:technical:remove']">删除</el-button> -->
90 95
         </template>
91 96
       </el-table-column>
92 97
     </el-table>
@@ -162,6 +167,7 @@
162 167
 <script>
163 168
 import { listTechnical, getTechnical, delTechnical, addTechnical, updateTechnical } from "@/api/oa/technical/technical";
164 169
 import technicalTab from '../../flowable/form/projectProcess/technicalTab.vue';
170
+import { listProject } from '@/api/oa/project/project';
165 171
 
166 172
 export default {
167 173
   name: "Technical",
@@ -182,6 +188,7 @@ export default {
182 188
       total: 0,
183 189
       // cmc技术交底表格数据
184 190
       technicalList: [],
191
+      projectList: [],
185 192
       // 弹出层标题
186 193
       title: "",
187 194
       // 是否显示弹出层
@@ -229,6 +236,15 @@ export default {
229 236
         this.loading = false;
230 237
       });
231 238
     },
239
+    remoteMethod(val) {
240
+      listProject({
241
+        pageNum: 1,
242
+        pageSize: 20, 
243
+        projectNumber: val
244
+      }).then(res => {
245
+        this.projectList = res.rows;
246
+      })
247
+    },
232 248
     // 取消按钮
233 249
     cancel() {
234 250
       this.open = false;

正在加载...
取消
保存