Browse Source

综合事务部考核修改

lamphua 9 months ago
parent
commit
529ac5ea2a

+ 15
- 18
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcAssessController.java View File

10
 import com.alibaba.fastjson2.JSONObject;
10
 import com.alibaba.fastjson2.JSONObject;
11
 import com.ruoyi.common.core.domain.entity.SysDictData;
11
 import com.ruoyi.common.core.domain.entity.SysDictData;
12
 import com.ruoyi.common.utils.DateUtils;
12
 import com.ruoyi.common.utils.DateUtils;
13
+import com.ruoyi.common.utils.StringUtils;
13
 import com.ruoyi.oa.domain.CmcAssessContent;
14
 import com.ruoyi.oa.domain.CmcAssessContent;
14
 import com.ruoyi.oa.domain.CmcAssessContentWork;
15
 import com.ruoyi.oa.domain.CmcAssessContentWork;
15
 import com.ruoyi.oa.service.ICmcAssessContentService;
16
 import com.ruoyi.oa.service.ICmcAssessContentService;
190
                 if (key.equals("selfAssess"))
191
                 if (key.equals("selfAssess"))
191
                     cmcAssess.setSelfAssess(formDataJson.getString(key));
192
                     cmcAssess.setSelfAssess(formDataJson.getString(key));
192
                 if (key.startsWith("role") && !Objects.equals(formDataJson.get(key), new JSONArray())) {
193
                 if (key.startsWith("role") && !Objects.equals(formDataJson.get(key), new JSONArray())) {
193
-                    StringBuilder roles = new StringBuilder();
194
-                    for (int i = 0; i < formDataJson.getJSONArray(key).size(); i++) {
195
-                        String rolei = "";
196
-                        if (i == formDataJson.getJSONArray(key).size() - 1)
197
-                            rolei = formDataJson.getJSONArray(key).getString(i);
198
-                        else
199
-                            rolei = formDataJson.getJSONArray(key).getString(i) + ",";
200
-                        roles.append(rolei);
194
+                    JSONArray roleArray = new JSONArray();
195
+                    if (!formDataJson.getString(key).equals("") && !formDataJson.getString(key).contains(",")) {
196
+                        roleArray.add(formDataJson.getString(key));
201
                     }
197
                     }
198
+                    else
199
+                        roleArray = formDataJson.getJSONArray(key);
200
+                    String roles = StringUtils.join(roleArray, ",");
202
                     CmcAssessContent cmcAssessContent = cmcAssessContentService.selectCmcAssessContentByContentId(cmcAssess.getAssessId() + key.substring(4)).get(0);
201
                     CmcAssessContent cmcAssessContent = cmcAssessContentService.selectCmcAssessContentByContentId(cmcAssess.getAssessId() + key.substring(4)).get(0);
203
-                    cmcAssessContent.setRole(roles.toString());
202
+                    cmcAssessContent.setRole(roles);
204
                     cmcAssessContentService.updateCmcAssessContent(cmcAssessContent);
203
                     cmcAssessContentService.updateCmcAssessContent(cmcAssessContent);
205
                 }
204
                 }
206
                 if (key.startsWith("familiar")) {
205
                 if (key.startsWith("familiar")) {
273
             if (formDataJson.get(key) != null) {
272
             if (formDataJson.get(key) != null) {
274
                 if (key.startsWith("role") && !Objects.equals(formDataJson.get(key), new JSONArray())) {
273
                 if (key.startsWith("role") && !Objects.equals(formDataJson.get(key), new JSONArray())) {
275
                     CmcAssessContent cmcAssessContent = cmcAssessContentService.selectCmcAssessContentByContentId(formDataJson.getString("assessId") + key.substring(4)).get(0);
274
                     CmcAssessContent cmcAssessContent = cmcAssessContentService.selectCmcAssessContentByContentId(formDataJson.getString("assessId") + key.substring(4)).get(0);
276
-                    StringBuilder roles = new StringBuilder();
277
-                    for (int i = 0; i < formDataJson.getJSONArray(key).size(); i++) {
278
-                        String rolei = "";
279
-                        if (i == formDataJson.getJSONArray(key).size() - 1)
280
-                            rolei = formDataJson.getJSONArray(key).getString(i);
281
-                        else
282
-                            rolei = formDataJson.getJSONArray(key).getString(i) + ",";
283
-                        roles.append(rolei);
275
+                    JSONArray roleArray = new JSONArray();
276
+                    if (!formDataJson.getString(key).equals("") && !formDataJson.getString(key).contains(",")) {
277
+                        roleArray.add(formDataJson.getString(key));
284
                     }
278
                     }
285
-                    cmcAssessContent.setRole(roles.toString());
279
+                    else
280
+                        roleArray = formDataJson.getJSONArray(key);
281
+                    String roles = StringUtils.join(roleArray, ",");
282
+                    cmcAssessContent.setRole(roles);
286
                     cmcAssessContentService.updateCmcAssessContent(cmcAssessContent);
283
                     cmcAssessContentService.updateCmcAssessContent(cmcAssessContent);
287
                 }
284
                 }
288
                 if (key.length() == 5 && key.startsWith("f") && !formDataJson.get(key).equals("")) {
285
                 if (key.length() == 5 && key.startsWith("f") && !formDataJson.get(key).equals("")) {

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

92
         if (cmcContract.getManagerComment() != null && cmcContract.getGmComment() == null) {
92
         if (cmcContract.getManagerComment() != null && cmcContract.getGmComment() == null) {
93
             cmcContract.setManagerUserId(getLoginUser().getUserId());
93
             cmcContract.setManagerUserId(getLoginUser().getUserId());
94
         }
94
         }
95
-        if (cmcContract.getGmComment() != null && cmcContract.getSignDate() == null) {
95
+        if (cmcContract.getGmComment() != null && cmcContract.getSignDate() == null && getLoginUser().getUserId() != 22) {
96
             cmcContract.setGmUserId(getLoginUser().getUserId());
96
             cmcContract.setGmUserId(getLoginUser().getUserId());
97
         }
97
         }
98
         return toAjax(cmcContractService.updateCmcContract(cmcContract));
98
         return toAjax(cmcContractService.updateCmcContract(cmcContract));

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

9
 
9
 
10
 import com.ruoyi.common.core.domain.entity.SysUser;
10
 import com.ruoyi.common.core.domain.entity.SysUser;
11
 import com.ruoyi.common.utils.StringUtils;
11
 import com.ruoyi.common.utils.StringUtils;
12
+import com.ruoyi.oa.domain.CmcManageDept;
13
+import com.ruoyi.oa.service.ICmcManageDeptService;
12
 import com.ruoyi.oa.service.ICmcPartyAService;
14
 import com.ruoyi.oa.service.ICmcPartyAService;
13
 import com.ruoyi.oa.service.ICmcProjectWorkService;
15
 import com.ruoyi.oa.service.ICmcProjectWorkService;
14
 import com.ruoyi.system.service.ISysDeptService;
16
 import com.ruoyi.system.service.ISysDeptService;
51
     @Autowired
53
     @Autowired
52
     private ISysUserService userService;
54
     private ISysUserService userService;
53
 
55
 
56
+    @Autowired
57
+    private ICmcManageDeptService cmcManageDeptService;
58
+
54
     /**
59
     /**
55
      * 查询cmc项目列表
60
      * 查询cmc项目列表
56
      */
61
      */
140
 //                List<String> managerList = new ArrayList<>();
145
 //                List<String> managerList = new ArrayList<>();
141
 //                String[] deptId = deptString.split(",");
146
 //                String[] deptId = deptString.split(",");
142
 //                for (String dept : deptId) {
147
 //                for (String dept : deptId) {
143
-//                        List<SysUser> manageList = SysPostController.getManageId(dept, null);
148
+//                        List<SysUser> manageList = getManageId(dept, "");
144
 //                        for (SysUser manager : manageList) {
149
 //                        for (SysUser manager : manageList) {
145
 //                            managerList.add(manager.getPinyin());
150
 //                            managerList.add(manager.getPinyin());
146
 //
151
 //
183
         }
188
         }
184
         return cmcProject.getUndertakingDeptName();
189
         return cmcProject.getUndertakingDeptName();
185
     }
190
     }
191
+
192
+    public  List<SysUser> getManageId(String deptId, String partyAId) {
193
+        List<SysUser> userList = new ArrayList<>();
194
+        CmcManageDept cmcManageDept = new CmcManageDept();
195
+        cmcManageDept.setDeptId(deptId);
196
+        cmcManageDept.setPartyAId(partyAId);
197
+        for (CmcManageDept manageDept : cmcManageDeptService.selectCmcManageDeptList(cmcManageDept)) {
198
+            userList.add(userService.selectUserById(manageDept.getUserId()));
199
+        }
200
+        return userList;
201
+    }
186
 }
202
 }

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

1
 package com.ruoyi.web.controller.qyweixin;
1
 package com.ruoyi.web.controller.qyweixin;
2
 
2
 
3
 import com.alibaba.fastjson2.JSONObject;
3
 import com.alibaba.fastjson2.JSONObject;
4
-import com.ruoyi.oa.domain.CmcProject;
5
-import liquibase.pro.packaged.S;
6
-import org.springframework.web.bind.annotation.GetMapping;
7
 import org.springframework.web.bind.annotation.PostMapping;
4
 import org.springframework.web.bind.annotation.PostMapping;
8
 import org.springframework.web.bind.annotation.RequestMapping;
5
 import org.springframework.web.bind.annotation.RequestMapping;
9
 import org.springframework.web.bind.annotation.RestController;
6
 import org.springframework.web.bind.annotation.RestController;

+ 4
- 4
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysPostController.java View File

41
     private ISysPostService postService;
41
     private ISysPostService postService;
42
 
42
 
43
     @Autowired
43
     @Autowired
44
-    private static ISysUserService userService;
44
+    private  ISysUserService userService;
45
 
45
 
46
     @Autowired
46
     @Autowired
47
-    private static ICmcManageDeptService cmcManageDeptService;
47
+    private  ICmcManageDeptService cmcManageDeptService;
48
 
48
 
49
     /**
49
     /**
50
      * 获取岗位列表
50
      * 获取岗位列表
165
     @GetMapping("/manageLeader")
165
     @GetMapping("/manageLeader")
166
     public AjaxResult getManageLeader(String userId)
166
     public AjaxResult getManageLeader(String userId)
167
     {
167
     {
168
-        return success(getManageId(userService.selectUserById(Long.parseLong(userId)).getDeptId().toString(), null));
168
+        return success(getManageId(userService.selectUserById(Long.parseLong(userId)).getDeptId().toString(), ""));
169
     }
169
     }
170
 
170
 
171
     /**
171
     /**
267
         return success(posts);
267
         return success(posts);
268
     }
268
     }
269
 
269
 
270
-    public static List<SysUser> getManageId(String deptId, String partyAId) {
270
+    public  List<SysUser> getManageId(String deptId, String partyAId) {
271
         List<SysUser> userList = new ArrayList<>();
271
         List<SysUser> userList = new ArrayList<>();
272
         CmcManageDept cmcManageDept = new CmcManageDept();
272
         CmcManageDept cmcManageDept = new CmcManageDept();
273
         cmcManageDept.setDeptId(deptId);
273
         cmcManageDept.setDeptId(deptId);

+ 43
- 9
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcAssess.java View File

22
     private String assessId;
22
     private String assessId;
23
 
23
 
24
     /** 用户id */
24
     /** 用户id */
25
-    @Excel(name = "用户id")
25
+    @Excel(name = "被考核人")
26
+    private String userName;
26
     private Long userId;
27
     private Long userId;
27
 
28
 
28
     /** 项目id */
29
     /** 项目id */
29
-    @Excel(name = "项目id")
30
     private String projectId;
30
     private String projectId;
31
+    @Excel(name = "项目编号")
32
+    private String projectNumber;
33
+    @Excel(name = "项目名称")
34
+    private String projectName;
31
 
35
 
32
     /** 考核时间(月份) */
36
     /** 考核时间(月份) */
33
-    @Excel(name = "考核时间", readConverterExp = "月份")
37
+    @JsonFormat(pattern = "yyyy-MM")
38
+    @Excel(name = "考核时间", dateFormat = "yyyy-MM")
34
     private Date assessTime;
39
     private Date assessTime;
35
 
40
 
36
     /** 部门考核等级(不合格、合格、良好、优秀) */
41
     /** 部门考核等级(不合格、合格、良好、优秀) */
37
-    @Excel(name = "部门考核等级", readConverterExp = "不合格、合格、良好、优秀")
42
+    @Excel(name = "部门考核等级", readConverterExp = "0=不合格,1=合格,2=良好,3=优秀")
38
     private String deptAssessment;
43
     private String deptAssessment;
39
 
44
 
40
     /** 部门考核意见 */
45
     /** 部门考核意见 */
48
 
53
 
49
     /** 部门考核负责人 */
54
     /** 部门考核负责人 */
50
     @Excel(name = "部门考核负责人")
55
     @Excel(name = "部门考核负责人")
56
+    private String deptUserName;
51
     private Long deptAssesser;
57
     private Long deptAssesser;
52
 
58
 
53
-    private SysUser deptUser;
54
-
55
     /** 分管考核等级(不合格、合格、良好、优秀) */
59
     /** 分管考核等级(不合格、合格、良好、优秀) */
56
-    @Excel(name = "分管考核等级", readConverterExp = "不合格、合格、良好、优秀")
60
+    @Excel(name = "分管考核等级", readConverterExp = "0=不合格,1=合格,2=良好,3=优秀")
57
     private String managerAssessment;
61
     private String managerAssessment;
58
 
62
 
59
     /** 分管考核意见 */
63
     /** 分管考核意见 */
67
 
71
 
68
     /** 分管考核负责人 */
72
     /** 分管考核负责人 */
69
     @Excel(name = "分管考核负责人")
73
     @Excel(name = "分管考核负责人")
74
+    private String managerUserName;
70
     private Long managerAssesser;
75
     private Long managerAssesser;
71
 
76
 
72
-    private SysUser managerUser;
73
-
74
     /** 自述 */
77
     /** 自述 */
75
     @Excel(name = "自述")
78
     @Excel(name = "自述")
76
     private String selfAssess;
79
     private String selfAssess;
84
     @Excel(name = "其他工作")
87
     @Excel(name = "其他工作")
85
     private String otherWork;
88
     private String otherWork;
86
 
89
 
90
+    private SysUser user;
91
+
92
+    private SysUser deptUser;
93
+
94
+    private SysUser managerUser;
95
+
96
+    private CmcProject project;
97
+
87
     public void setAssessId(String assessId)
98
     public void setAssessId(String assessId)
88
     {
99
     {
89
         this.assessId = assessId;
100
         this.assessId = assessId;
111
     {
122
     {
112
         return projectId;
123
         return projectId;
113
     }
124
     }
125
+    public void setProject(CmcProject project)
126
+    {
127
+        this.project = project;
128
+        this.projectNumber = project == null ? "" : project.getProjectNumber();
129
+        this.projectName = project == null ? "" : project.getProjectName();
130
+    }
131
+
132
+    public CmcProject getProject()
133
+    {
134
+        return project;
135
+    }
114
     public void setAssessTime(Date assessTime)
136
     public void setAssessTime(Date assessTime)
115
     {
137
     {
116
         this.assessTime = assessTime;
138
         this.assessTime = assessTime;
222
     public void setDeptUser(SysUser deptUser)
244
     public void setDeptUser(SysUser deptUser)
223
     {
245
     {
224
         this.deptUser = deptUser;
246
         this.deptUser = deptUser;
247
+        this.deptUserName = deptUser == null ? "" : deptUser.getNickName();
225
     }
248
     }
226
 
249
 
227
     public SysUser getDeptUser()
250
     public SysUser getDeptUser()
231
     public void setManagerUser(SysUser managerUser)
254
     public void setManagerUser(SysUser managerUser)
232
     {
255
     {
233
         this.managerUser = managerUser;
256
         this.managerUser = managerUser;
257
+        this.managerUserName = managerUser == null ? "" : managerUser.getNickName();
234
     }
258
     }
235
 
259
 
236
     public SysUser getManagerUser()
260
     public SysUser getManagerUser()
237
     {
261
     {
238
         return managerUser;
262
         return managerUser;
239
     }
263
     }
264
+    public void setUser(SysUser user)
265
+    {
266
+        this.user = user;
267
+        this.userName = user == null ? "" : user.getNickName();
268
+    }
269
+
270
+    public SysUser getUser()
271
+    {
272
+        return user;
273
+    }
240
 
274
 
241
     @Override
275
     @Override
242
     public String toString() {
276
     public String toString() {

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

20
         <result property="selfAssess"    column="self_assess"    />
20
         <result property="selfAssess"    column="self_assess"    />
21
         <result property="fillTime"    column="fill_time"    />
21
         <result property="fillTime"    column="fill_time"    />
22
         <result property="otherWork"    column="other_work"    />
22
         <result property="otherWork"    column="other_work"    />
23
+        <association property="user"    javaType="SysUser"         resultMap="UserResult" />
23
         <association property="deptUser"    javaType="SysUser"         resultMap="DeptUserResult" />
24
         <association property="deptUser"    javaType="SysUser"         resultMap="DeptUserResult" />
24
         <association property="managerUser"    javaType="SysUser"         resultMap="ManagerUserResult" />
25
         <association property="managerUser"    javaType="SysUser"         resultMap="ManagerUserResult" />
26
+        <association property="project"    javaType="CmcProject"         resultMap="CmcProjectResult" />
27
+    </resultMap>
28
+
29
+    <resultMap type="SysUser" id="UserResult">
30
+        <result property="userId"    column="user_id"    />
31
+        <result property="nickName"    column="nick_name"    />
25
     </resultMap>
32
     </resultMap>
26
 
33
 
27
     <resultMap type="SysUser" id="DeptUserResult">
34
     <resultMap type="SysUser" id="DeptUserResult">
34
         <result property="nickName"    column="manager_nick_name"    />
41
         <result property="nickName"    column="manager_nick_name"    />
35
     </resultMap>
42
     </resultMap>
36
 
43
 
44
+    <resultMap type="CmcProject" id="CmcProjectResult">
45
+        <result property="projectId"    column="project_id"    />
46
+        <result property="projectNumber"    column="project_number"    />
47
+        <result property="projectName"    column="project_name"    />
48
+    </resultMap>
49
+
37
     <sql id="selectCmcAssessVo">
50
     <sql id="selectCmcAssessVo">
38
-        select a.assess_id, a.user_id, a.project_id, a.assess_time, a.dept_assessment, a.dept_advice, a.dept_time, a.dept_assesser, u1.nick_name as dept_nick_name, a.manager_assessment,
51
+        select a.assess_id, a.user_id, u.nick_name as nick_name, a.project_id, p.project_number, p.project_name, a.assess_time, a.dept_assessment, a.dept_advice, a.dept_time, a.dept_assesser, u1.nick_name as dept_nick_name, a.manager_assessment,
39
                a.manager_advice, a.manager_time, a.manager_assesser, u2.nick_name as manager_nick_name, a.self_assess, a.fill_time, a.other_work from cmc_assess as a
52
                a.manager_advice, a.manager_time, a.manager_assesser, u2.nick_name as manager_nick_name, a.self_assess, a.fill_time, a.other_work from cmc_assess as a
53
+        left join sys_user as u on u.user_id = a.user_id
40
         left join sys_user as u1 on u1.user_id = a.dept_assesser
54
         left join sys_user as u1 on u1.user_id = a.dept_assesser
41
         left join sys_user as u2 on u2.user_id = a.manager_assesser
55
         left join sys_user as u2 on u2.user_id = a.manager_assesser
56
+        left join cmc_project as p on p.project_id = a.project_id
42
     </sql>
57
     </sql>
43
 
58
 
44
     <select id="selectCmcAssessList" parameterType="CmcAssess" resultMap="CmcAssessResult">
59
     <select id="selectCmcAssessList" parameterType="CmcAssess" resultMap="CmcAssessResult">

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

119
             <if test="applier != null "> and ca.applier = #{applier}</if>
119
             <if test="applier != null "> and ca.applier = #{applier}</if>
120
             <if test="useDept != null "> and ca.use_dept = #{useDept}</if>
120
             <if test="useDept != null "> and ca.use_dept = #{useDept}</if>
121
             <if test="cars != null  and cars != ''"> and find_in_set(#{cars}, ca.cars)</if>
121
             <if test="cars != null  and cars != ''"> and find_in_set(#{cars}, ca.cars)</if>
122
+            <if test="undertakingDept != null  and undertakingDept != ''"> and find_in_set(#{undertakingDept}, p.undertaking_dept)</if>
122
             <if test="drivers != null  and drivers != ''"> and find_in_set(#{drivers}, ca.drivers)</if>
123
             <if test="drivers != null  and drivers != ''"> and find_in_set(#{drivers}, ca.drivers)</if>
123
             <if test="projectId != null  and projectId != ''"> and ca.project_id = #{projectId}</if>
124
             <if test="projectId != null  and projectId != ''"> and ca.project_id = #{projectId}</if>
124
             <if test="applyReason != null  and applyReason != ''"> and ca.apply_reason = #{applyReason}</if>
125
             <if test="applyReason != null  and applyReason != ''"> and ca.apply_reason = #{applyReason}</if>

+ 3
- 3
oa-ui/src/views/flowable/form/access/zhForm.vue View File

1
 <!--
1
 <!--
2
  * @Author: ysh
2
  * @Author: ysh
3
  * @Date: 2024-01-19 16:29:01
3
  * @Date: 2024-01-19 16:29:01
4
- * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-02-20 16:21:05
4
+ * @LastEditors: wrh
5
+ * @LastEditTime: 2024-08-27 12:36:42
6
 -->
6
 -->
7
 <template>
7
 <template>
8
   <div>
8
   <div>
156
       for (let btn of this.checkedBtn) {
156
       for (let btn of this.checkedBtn) {
157
         let ids = this.changeLabelToValue(btn);
157
         let ids = this.changeLabelToValue(btn);
158
         if (this.form['role' + ids] == undefined) {
158
         if (this.form['role' + ids] == undefined) {
159
-          this.$message.error('熟练程度为必填项,请完善!');
159
+          this.$message.error('参与情况为必填项,请完善!');
160
           flag = 0
160
           flag = 0
161
           break
161
           break
162
         } else {
162
         } else {

+ 10
- 19
oa-ui/src/views/flowable/form/access/zhTable.vue View File

89
         <td class="table-fzr">考核建议</td>
89
         <td class="table-fzr">考核建议</td>
90
       </tr>
90
       </tr>
91
       <tr>
91
       <tr>
92
-        <td rowspan="9">劳动组织</td>
92
+        <td rowspan="8">劳动组织</td>
93
         <td>组织会议</td>
93
         <td>组织会议</td>
94
         <td>次</td>
94
         <td>次</td>
95
         <td class="personInput">
95
         <td class="personInput">
96
           <span v-if="!isStaff">{{ tableForm.f0101 }}</span>
96
           <span v-if="!isStaff">{{ tableForm.f0101 }}</span>
97
           <el-input v-if="isStaff" v-model="tableForm.f0101"></el-input>
97
           <el-input v-if="isStaff" v-model="tableForm.f0101"></el-input>
98
         </td>
98
         </td>
99
-        <td rowspan="9">
99
+        <td rowspan="8">
100
           <el-radio-group v-model="tableForm.role01" :disabled="!isStaff">
100
           <el-radio-group v-model="tableForm.role01" :disabled="!isStaff">
101
             <div><el-radio label="00">主办</el-radio></div>
101
             <div><el-radio label="00">主办</el-radio></div>
102
             <div><el-radio label="01">参与</el-radio></div>
102
             <div><el-radio label="01">参与</el-radio></div>
104
           </el-radio-group>
104
           </el-radio-group>
105
         </td>
105
         </td>
106
 
106
 
107
-        <td rowspan="9">
107
+        <td rowspan="8">
108
           <div v-if="!isStaff">{{ tableForm.remark01 }}</div>
108
           <div v-if="!isStaff">{{ tableForm.remark01 }}</div>
109
           <el-input v-if="isStaff" v-model="tableForm.remark01" type="textarea" :rows="4"></el-input>
109
           <el-input v-if="isStaff" v-model="tableForm.remark01" type="textarea" :rows="4"></el-input>
110
         </td>
110
         </td>
111
-        <td rowspan="9">
111
+        <td rowspan="8">
112
           <el-radio-group v-model="tableForm.workload01" :disabled="!isPiLeader">
112
           <el-radio-group v-model="tableForm.workload01" :disabled="!isPiLeader">
113
             <div v-for="dict in dict.type.cmc_workload" style="text-align:left">
113
             <div v-for="dict in dict.type.cmc_workload" style="text-align:left">
114
               <el-radio :key="dict.value" :label="dict.value"
114
               <el-radio :key="dict.value" :label="dict.value"
118
             </div>
118
             </div>
119
           </el-radio-group>
119
           </el-radio-group>
120
         </td>
120
         </td>
121
-        <td rowspan="9">
121
+        <td rowspan="8">
122
           <el-radio-group v-model="tableForm.assessment01" :disabled="!isPiLeader">
122
           <el-radio-group v-model="tableForm.assessment01" :disabled="!isPiLeader">
123
             <div v-for="dict in dict.type.cmc_accessment" style="text-align:left">
123
             <div v-for="dict in dict.type.cmc_accessment" style="text-align:left">
124
               <el-radio :key="dict.value" :label="dict.value"
124
               <el-radio :key="dict.value" :label="dict.value"
128
             </div>
128
             </div>
129
           </el-radio-group>
129
           </el-radio-group>
130
         </td>
130
         </td>
131
-        <td rowspan="9">
131
+        <td rowspan="8">
132
           <el-input type="textarea" :rows="4" v-model="tableForm.advice01" :disabled="!isPiLeader">
132
           <el-input type="textarea" :rows="4" v-model="tableForm.advice01" :disabled="!isPiLeader">
133
           </el-input>
133
           </el-input>
134
         </td>
134
         </td>
174
           </el-input>
174
           </el-input>
175
         </td>
175
         </td>
176
       </tr>
176
       </tr>
177
-      <tr>
178
-        <td>公司发文管理</td>
179
-        <td>次</td>
180
-        <td class="personInput">
181
-          <span v-if="!isStaff">{{ tableForm.f0106 }}</span>
182
-          <el-input v-if="isStaff" v-model="tableForm.f0106">
183
-          </el-input>
184
-        </td>
185
-      </tr>
186
       <tr>
177
       <tr>
187
         <td>企业微信、公司官方群、公司网站维护</td>
178
         <td>企业微信、公司官方群、公司网站维护</td>
188
         <td>次</td>
179
         <td>次</td>
828
       getAssess(this.taskForm.formId).then(res => {
819
       getAssess(this.taskForm.formId).then(res => {
829
         let data = res.data;
820
         let data = res.data;
830
         for (let d in data) {
821
         for (let d in data) {
831
-          if (d.includes('role')) {
832
-            if (data[d] != "" && data[d] != undefined && data[d] != null)
833
-              data[d] = data[d].split(',')
834
-          }
822
+          // if (d.includes('role')) {
823
+          //   if (data[d] != "" && data[d] != undefined && data[d] != null)
824
+          //     data[d] = data[d].split(',')
825
+          // }
835
           if (d.includes('familiar')) {
826
           if (d.includes('familiar')) {
836
             if (data[d] != "" && data[d] != undefined && data[d] != null)
827
             if (data[d] != "" && data[d] != undefined && data[d] != null)
837
               data[d] = parseInt(data[d])
828
               data[d] = parseInt(data[d])

+ 57
- 217
oa-ui/src/views/oa/assess/index.vue View File

1
 <template>
1
 <template>
2
   <div class="app-container">
2
   <div class="app-container">
3
     <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
3
     <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
4
-      <el-form-item label="用户id" prop="userId">
5
-        <el-input
6
-          v-model="queryParams.userId"
7
-          placeholder="请输入用户id"
8
-          clearable
9
-          @keyup.enter.native="handleQuery"
10
-        />
4
+      <el-form-item label="被考核人" prop="userId">
5
+        <el-select v-model="queryParams.userId" filterable clearable @change="handleQuery">
6
+          <el-option v-for="item in $store.state.user.userList" :key="item.userId" :label="item.nickName"
7
+            :value="item.userId">
8
+          </el-option>
9
+        </el-select>
11
       </el-form-item>
10
       </el-form-item>
12
-      <el-form-item label="项目id" prop="projectId">
13
-        <el-input
14
-          v-model="queryParams.projectId"
15
-          placeholder="请输入项目id"
16
-          clearable
17
-          @keyup.enter.native="handleQuery"
18
-        />
11
+      <el-form-item label="项目编号" prop="projectId">
12
+        <el-select v-model="queryParams.projectId" clearable filterable remote reserve-keyword placeholder="请输入项目编号"
13
+          :remote-method="remoteMethod" :loading="loading" style="width: 400px;">
14
+          <el-option v-for="project in projectList" :key="project.projectId"
15
+            :label="project.projectNumber + '-' + project.projectName" :value="project.projectId">
16
+          </el-option>
17
+        </el-select>
19
       </el-form-item>
18
       </el-form-item>
20
       <el-form-item label="考核时间" prop="assessTime">
19
       <el-form-item label="考核时间" prop="assessTime">
21
         <el-date-picker clearable
20
         <el-date-picker clearable
22
           v-model="queryParams.assessTime"
21
           v-model="queryParams.assessTime"
23
-          type="date"
24
-          value-format="yyyy-MM-dd"
22
+          type="month"
25
           placeholder="请选择考核时间">
23
           placeholder="请选择考核时间">
26
         </el-date-picker>
24
         </el-date-picker>
27
-      </el-form-item>
28
-      <el-form-item label="部门考核等级" prop="deptAssessment">
29
-        <el-input
30
-          v-model="queryParams.deptAssessment"
31
-          placeholder="请输入部门考核等级"
32
-          clearable
33
-          @keyup.enter.native="handleQuery"
34
-        />
35
-      </el-form-item>
36
-      <el-form-item label="部门考核意见" prop="deptAdvice">
37
-        <el-input
38
-          v-model="queryParams.deptAdvice"
39
-          placeholder="请输入部门考核意见"
40
-          clearable
41
-          @keyup.enter.native="handleQuery"
42
-        />
43
-      </el-form-item>
44
-      <el-form-item label="部门考核时间" prop="deptTime">
45
-        <el-date-picker clearable
46
-          v-model="queryParams.deptTime"
47
-          type="date"
48
-          value-format="yyyy-MM-dd"
49
-          placeholder="请选择部门考核时间">
50
-        </el-date-picker>
51
-      </el-form-item>
52
-      <el-form-item label="部门考核负责人" prop="deptAssesser">
53
-        <el-input
54
-          v-model="queryParams.deptAssesser"
55
-          placeholder="请输入部门考核负责人"
56
-          clearable
57
-          @keyup.enter.native="handleQuery"
58
-        />
59
-      </el-form-item>
60
-      <el-form-item label="分管考核等级" prop="managerAssessment">
61
-        <el-input
62
-          v-model="queryParams.managerAssessment"
63
-          placeholder="请输入分管考核等级"
64
-          clearable
65
-          @keyup.enter.native="handleQuery"
66
-        />
67
-      </el-form-item>
68
-      <el-form-item label="分管考核意见" prop="managerAdvice">
69
-        <el-input
70
-          v-model="queryParams.managerAdvice"
71
-          placeholder="请输入分管考核意见"
72
-          clearable
73
-          @keyup.enter.native="handleQuery"
74
-        />
75
-      </el-form-item>
76
-      <el-form-item label="分管考核时间" prop="managerTime">
77
-        <el-date-picker clearable
78
-          v-model="queryParams.managerTime"
79
-          type="date"
80
-          value-format="yyyy-MM-dd"
81
-          placeholder="请选择分管考核时间">
82
-        </el-date-picker>
83
-      </el-form-item>
84
-      <el-form-item label="分管考核负责人" prop="managerAssesser">
85
-        <el-input
86
-          v-model="queryParams.managerAssesser"
87
-          placeholder="请输入分管考核负责人"
88
-          clearable
89
-          @keyup.enter.native="handleQuery"
90
-        />
91
-      </el-form-item>
92
-      <el-form-item label="自述" prop="selfAssess">
93
-        <el-input
94
-          v-model="queryParams.selfAssess"
95
-          placeholder="请输入自述"
96
-          clearable
97
-          @keyup.enter.native="handleQuery"
98
-        />
99
-      </el-form-item>
100
-      <el-form-item label="考核填报时间" prop="fillTime">
101
-        <el-date-picker clearable
102
-          v-model="queryParams.fillTime"
103
-          type="date"
104
-          value-format="yyyy-MM-dd"
105
-          placeholder="请选择考核填报时间">
106
-        </el-date-picker>
107
-      </el-form-item>
108
-      <el-form-item label="其他工作" prop="otherWork">
109
-        <el-input
110
-          v-model="queryParams.otherWork"
111
-          placeholder="请输入其他工作"
112
-          clearable
113
-          @keyup.enter.native="handleQuery"
114
-        />
115
-      </el-form-item>
25
+      </el-form-item>      
116
       <el-form-item>
26
       <el-form-item>
117
         <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
27
         <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
118
         <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
28
         <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
119
       </el-form-item>
29
       </el-form-item>
120
     </el-form>
30
     </el-form>
121
 
31
 
122
-    <el-row :gutter="10" class="mb8">
123
-      <el-col :span="1.5">
124
-        <el-button
125
-          type="primary"
126
-          plain
127
-          icon="el-icon-plus"
128
-          size="mini"
129
-          @click="handleAdd"
130
-          v-hasPermi="['oa:assess:add']"
131
-        >新增</el-button>
132
-      </el-col>
133
-      <el-col :span="1.5">
134
-        <el-button
135
-          type="success"
136
-          plain
137
-          icon="el-icon-edit"
138
-          size="mini"
139
-          :disabled="single"
140
-          @click="handleUpdate"
141
-          v-hasPermi="['oa:assess:edit']"
142
-        >修改</el-button>
143
-      </el-col>
144
-      <el-col :span="1.5">
145
-        <el-button
146
-          type="danger"
147
-          plain
148
-          icon="el-icon-delete"
149
-          size="mini"
150
-          :disabled="multiple"
151
-          @click="handleDelete"
152
-          v-hasPermi="['oa:assess:remove']"
153
-        >删除</el-button>
154
-      </el-col>
32
+    <el-row :gutter="10" class="mb8">      
155
       <el-col :span="1.5">
33
       <el-col :span="1.5">
156
         <el-button
34
         <el-button
157
           type="warning"
35
           type="warning"
166
     </el-row>
44
     </el-row>
167
 
45
 
168
     <el-table v-loading="loading" :data="assessList" @selection-change="handleSelectionChange">
46
     <el-table v-loading="loading" :data="assessList" @selection-change="handleSelectionChange">
169
-      <el-table-column type="selection" width="55" align="center" />
170
-      <el-table-column label="总考核表id" align="center" prop="assessId" />
171
-      <el-table-column label="用户id" align="center" prop="userId" />
172
-      <el-table-column label="项目id" align="center" prop="projectId" />
47
+      <el-table-column label="序号" align="center" type="index" />
48
+      <!-- <el-table-column type="selection" width="55" align="center" /> -->
49
+      <!-- <el-table-column label="总考核表id" align="center" prop="assessId" /> -->
50
+      <el-table-column label="被考核人" align="center" prop="userId">
51
+        <template slot-scope="scope">
52
+          <span>{{ getUserName(scope.row.userId) }}</span>
53
+        </template>
54
+      </el-table-column>
55
+      <el-table-column label="项目编号" align="center">
56
+        <template slot-scope="scope">
57
+          <span>{{ scope.row.project ? scope.row.project.projectNumber : "" }}</span>
58
+        </template>
59
+      </el-table-column>
60
+      <el-table-column label="项目名称" align="center">
61
+        <template slot-scope="scope">
62
+          <span>{{ scope.row.project ? scope.row.project.projectName : "" }}</span>
63
+        </template>
64
+      </el-table-column>
173
       <el-table-column label="考核时间" align="center" prop="assessTime" width="180">
65
       <el-table-column label="考核时间" align="center" prop="assessTime" width="180">
174
         <template slot-scope="scope">
66
         <template slot-scope="scope">
175
           <span>{{ parseTime(scope.row.assessTime, '{y}-{m}-{d}') }}</span>
67
           <span>{{ parseTime(scope.row.assessTime, '{y}-{m}-{d}') }}</span>
182
           <span>{{ parseTime(scope.row.deptTime, '{y}-{m}-{d}') }}</span>
74
           <span>{{ parseTime(scope.row.deptTime, '{y}-{m}-{d}') }}</span>
183
         </template>
75
         </template>
184
       </el-table-column>
76
       </el-table-column>
185
-      <el-table-column label="部门考核负责人" align="center" prop="deptAssesser" />
77
+      <el-table-column label="部门考核负责人" align="center" prop="deptAssesser">
78
+        <template slot-scope="scope">
79
+          <span>{{ getUserName(scope.row.deptAssesser) }}</span>
80
+        </template>
81
+      </el-table-column>
186
       <el-table-column label="分管考核等级" align="center" prop="managerAssessment" />
82
       <el-table-column label="分管考核等级" align="center" prop="managerAssessment" />
187
       <el-table-column label="分管考核意见" align="center" prop="managerAdvice" />
83
       <el-table-column label="分管考核意见" align="center" prop="managerAdvice" />
188
       <el-table-column label="分管考核时间" align="center" prop="managerTime" width="180">
84
       <el-table-column label="分管考核时间" align="center" prop="managerTime" width="180">
190
           <span>{{ parseTime(scope.row.managerTime, '{y}-{m}-{d}') }}</span>
86
           <span>{{ parseTime(scope.row.managerTime, '{y}-{m}-{d}') }}</span>
191
         </template>
87
         </template>
192
       </el-table-column>
88
       </el-table-column>
193
-      <el-table-column label="分管考核负责人" align="center" prop="managerAssesser" />
89
+      <el-table-column label="分管考核负责人" align="center" prop="managerAssesser">
90
+        <template slot-scope="scope">
91
+          <span>{{ getUserName(scope.row.managerAssesser) }}</span>
92
+        </template>
93
+      </el-table-column>
194
       <el-table-column label="自述" align="center" prop="selfAssess" />
94
       <el-table-column label="自述" align="center" prop="selfAssess" />
195
       <el-table-column label="考核填报时间" align="center" prop="fillTime" width="180">
95
       <el-table-column label="考核填报时间" align="center" prop="fillTime" width="180">
196
         <template slot-scope="scope">
96
         <template slot-scope="scope">
198
         </template>
98
         </template>
199
       </el-table-column>
99
       </el-table-column>
200
       <el-table-column label="其他工作" align="center" prop="otherWork" />
100
       <el-table-column label="其他工作" align="center" prop="otherWork" />
201
-      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
101
+      <!-- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
202
         <template slot-scope="scope">
102
         <template slot-scope="scope">
203
           <el-button
103
           <el-button
204
             size="mini"
104
             size="mini"
215
             v-hasPermi="['oa:assess:remove']"
115
             v-hasPermi="['oa:assess:remove']"
216
           >删除</el-button>
116
           >删除</el-button>
217
         </template>
117
         </template>
218
-      </el-table-column>
118
+      </el-table-column> -->
219
     </el-table>
119
     </el-table>
220
     
120
     
221
     <pagination
121
     <pagination
226
       @pagination="getList"
126
       @pagination="getList"
227
     />
127
     />
228
 
128
 
229
-    <!-- 添加或修改cmc考核对话框 -->
230
-    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
231
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
232
-        <el-form-item label="用户id" prop="userId">
233
-          <el-input v-model="form.userId" placeholder="请输入用户id" />
234
-        </el-form-item>
235
-        <el-form-item label="项目id" prop="projectId">
236
-          <el-input v-model="form.projectId" placeholder="请输入项目id" />
237
-        </el-form-item>
238
-        <el-form-item label="考核时间" prop="assessTime">
239
-          <el-date-picker clearable
240
-            v-model="form.assessTime"
241
-            type="date"
242
-            value-format="yyyy-MM-dd"
243
-            placeholder="请选择考核时间">
244
-          </el-date-picker>
245
-        </el-form-item>
246
-        <el-form-item label="部门考核等级" prop="deptAssessment">
247
-          <el-input v-model="form.deptAssessment" placeholder="请输入部门考核等级" />
248
-        </el-form-item>
249
-        <el-form-item label="部门考核意见" prop="deptAdvice">
250
-          <el-input v-model="form.deptAdvice" placeholder="请输入部门考核意见" />
251
-        </el-form-item>
252
-        <el-form-item label="部门考核时间" prop="deptTime">
253
-          <el-date-picker clearable
254
-            v-model="form.deptTime"
255
-            type="date"
256
-            value-format="yyyy-MM-dd"
257
-            placeholder="请选择部门考核时间">
258
-          </el-date-picker>
259
-        </el-form-item>
260
-        <el-form-item label="部门考核负责人" prop="deptAssesser">
261
-          <el-input v-model="form.deptAssesser" placeholder="请输入部门考核负责人" />
262
-        </el-form-item>
263
-        <el-form-item label="分管考核等级" prop="managerAssessment">
264
-          <el-input v-model="form.managerAssessment" placeholder="请输入分管考核等级" />
265
-        </el-form-item>
266
-        <el-form-item label="分管考核意见" prop="managerAdvice">
267
-          <el-input v-model="form.managerAdvice" placeholder="请输入分管考核意见" />
268
-        </el-form-item>
269
-        <el-form-item label="分管考核时间" prop="managerTime">
270
-          <el-date-picker clearable
271
-            v-model="form.managerTime"
272
-            type="date"
273
-            value-format="yyyy-MM-dd"
274
-            placeholder="请选择分管考核时间">
275
-          </el-date-picker>
276
-        </el-form-item>
277
-        <el-form-item label="分管考核负责人" prop="managerAssesser">
278
-          <el-input v-model="form.managerAssesser" placeholder="请输入分管考核负责人" />
279
-        </el-form-item>
280
-        <el-form-item label="自述" prop="selfAssess">
281
-          <el-input v-model="form.selfAssess" placeholder="请输入自述" />
282
-        </el-form-item>
283
-        <el-form-item label="考核填报时间" prop="fillTime">
284
-          <el-date-picker clearable
285
-            v-model="form.fillTime"
286
-            type="date"
287
-            value-format="yyyy-MM-dd"
288
-            placeholder="请选择考核填报时间">
289
-          </el-date-picker>
290
-        </el-form-item>
291
-        <el-form-item label="其他工作" prop="otherWork">
292
-          <el-input v-model="form.otherWork" placeholder="请输入其他工作" />
293
-        </el-form-item>
294
-      </el-form>
295
-      <div slot="footer" class="dialog-footer">
296
-        <el-button type="primary" @click="submitForm">确 定</el-button>
297
-        <el-button @click="cancel">取 消</el-button>
298
-      </div>
299
-    </el-dialog>
300
   </div>
129
   </div>
301
 </template>
130
 </template>
302
 
131
 
303
 <script>
132
 <script>
304
 import { listAssess, getAssess, delAssess, addAssess, updateAssess } from "@/api/oa/assess/assess";
133
 import { listAssess, getAssess, delAssess, addAssess, updateAssess } from "@/api/oa/assess/assess";
134
+import { listProject } from '@/api/oa/project/project';
305
 
135
 
306
 export default {
136
 export default {
307
   name: "Assess",
137
   name: "Assess",
321
       total: 0,
151
       total: 0,
322
       // cmc考核表格数据
152
       // cmc考核表格数据
323
       assessList: [],
153
       assessList: [],
154
+      projectList: [],
324
       // 弹出层标题
155
       // 弹出层标题
325
       title: "",
156
       title: "",
326
       // 是否显示弹出层
157
       // 是否显示弹出层
369
       this.open = false;
200
       this.open = false;
370
       this.reset();
201
       this.reset();
371
     },
202
     },
203
+    remoteMethod(val) {
204
+      listProject({
205
+        pageNum: 1,
206
+        pageSize: 20,
207
+        projectNumber: val
208
+      }).then(res => {
209
+        this.projectList = res.rows;
210
+      })
211
+    },
372
     // 表单重置
212
     // 表单重置
373
     reset() {
213
     reset() {
374
       this.form = {
214
       this.form = {

Loading…
Cancel
Save