Pārlūkot izejas kodu

王子文 专项培养
1) bug fixed: 季度汇报页面日期问题
2) 员工离职时修改继任者清单状态、培养计划状态

wangggziwen 3 gadi atpakaļ
vecāks
revīzija
5b634e1bed

+ 1 - 0
master/src/main/java/com/ruoyi/common/thread/Trainning/MeetingInvitationMailThread.java

@@ -90,6 +90,7 @@ public class MeetingInvitationMailThread implements Runnable {
         //拼接html
         String html = start + prime + end;
         mailService.sendHtmlMail(email, "CPMS:您已受邀参加学员" + successorName + "的季度汇报 (" + feedbackYear + "年第" + feedbackSeason + "季度)", html);
+//        mailService.sendHtmlMail("lihuiisfish@163.com", "CPMS:您已受邀参加学员" + successorName + "的季度汇报 (" + feedbackYear + "年第" + feedbackSeason + "季度)", html);
     }
 
 }

+ 12 - 2
master/src/main/java/com/ruoyi/project/plant/controller/TStaffmgrController.java

@@ -18,9 +18,10 @@ import com.ruoyi.project.system.domain.SysUser;
 import com.ruoyi.project.system.service.ISysDeptService;
 import com.ruoyi.project.system.service.ISysDictTypeService;
 import com.ruoyi.project.system.service.ISysUserService;
-import com.ruoyi.project.system.service.ITAlarmPrincipalService;
 import com.ruoyi.project.training.domain.*;
 import com.ruoyi.project.training.service.*;
+import com.ruoyi.project.training.spec.service.ITStPlanService;
+import com.ruoyi.project.training.spec.service.ITStSuccessorService;
 import org.apache.commons.lang.StringUtils;
 import org.apache.poi.ss.usermodel.*;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -84,6 +85,12 @@ public class TStaffmgrController extends BaseController
     @Autowired
     private ISysUserService sysUserService;
 
+    @Autowired
+    private ITStSuccessorService stSuccessorService;
+
+    @Autowired
+    private ITStPlanService tStPlanService;
+
     /**
      * 获取当前用户id
      * @return 当前用户id
@@ -490,7 +497,10 @@ public class TStaffmgrController extends BaseController
             tTrainingrecords.setDelFlag(9l);
             tTrainingrecordsService.updateTTrainingrecords(tTrainingrecords);
         }
-
+        // 王子文 2022年6月27日 添加
+        // 离职时修改继任者清单状态、培养计划状态
+        stSuccessorService.updateStateByStaffId(id);
+        tStPlanService.updateStudyStateByStaffId(id);
         return toAjax(tStaffmgrService.deleteLeftTStaffmgrByIds(id));
     }
 

+ 6 - 0
master/src/main/java/com/ruoyi/project/training/spec/mapper/TStPlanMapper.java

@@ -93,4 +93,10 @@ public interface TStPlanMapper
      */
     public int deleteTStPlanByIds(Long[] ids);
 
+    /**
+     * 根据staffId修改“未完成”的继任者计划状态为“因离职中止”
+     * @param staffId
+     * @return
+     */
+    public int updateStudyStateByStaffId(Long staffId);
 }

+ 7 - 0
master/src/main/java/com/ruoyi/project/training/spec/mapper/TStSuccessorMapper.java

@@ -71,4 +71,11 @@ public interface TStSuccessorMapper
      * @return 结果
      */
     public int deleteTStSuccessorByIds(Long[] ids);
+
+    /**
+     * 根据staffId修改“进行中”的继任者计划状态为“因离职中止”
+     * @param staffId
+     * @return
+     */
+    public int updateStateByStaffId(Long staffId);
 }

+ 7 - 0
master/src/main/java/com/ruoyi/project/training/spec/service/ITStPlanService.java

@@ -88,4 +88,11 @@ public interface ITStPlanService
      * @return 结果
      */
     String importData(List<TStPlanImportVO> planList, boolean isUpdateSupport, SysUser loginUser, Long yearPlanId);
+
+    /**
+     * 根据staffId修改“未完成”的继任者计划状态为“因离职中止”
+     * @param staffId
+     * @return
+     */
+    public int updateStudyStateByStaffId(Long staffId);
 }

+ 7 - 0
master/src/main/java/com/ruoyi/project/training/spec/service/ITStSuccessorService.java

@@ -68,4 +68,11 @@ public interface ITStSuccessorService
      * @return 结果
      */
     public int deleteTStSuccessorById(Long id);
+
+    /**
+     * 根据staffId修改“进行中”的继任者计划状态为“因离职中止”
+     * @param staffId
+     * @return
+     */
+    public int updateStateByStaffId(Long staffId);
 }

+ 10 - 0
master/src/main/java/com/ruoyi/project/training/spec/service/impl/TStPlanServiceImpl.java

@@ -189,4 +189,14 @@ public class TStPlanServiceImpl implements ITStPlanService
         }
         return successMsg.toString();
     }
+
+    /**
+     * 根据staffId修改“未完成”的继任者计划状态为“因离职中止”
+     * @param staffId
+     * @return
+     */
+    @Override
+    public int updateStudyStateByStaffId(Long staffId) {
+        return tStPlanMapper.updateStudyStateByStaffId(staffId);
+    }
 }

+ 10 - 0
master/src/main/java/com/ruoyi/project/training/spec/service/impl/TStSuccessorServiceImpl.java

@@ -104,4 +104,14 @@ public class TStSuccessorServiceImpl implements ITStSuccessorService
     {
         return tStSuccessorMapper.deleteTStSuccessorById(id);
     }
+
+    /**
+     * 根据staffId修改“进行中”的继任者计划状态为“因离职中止”
+     * @param staffId
+     * @return
+     */
+    @Override
+    public int updateStateByStaffId(Long staffId) {
+        return tStSuccessorMapper.updateStateByStaffId(staffId);
+    }
 }

+ 5 - 0
master/src/main/resources/mybatis/training/spec/TStPlanMapper.xml

@@ -231,4 +231,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </foreach>
     </update>
 
+    <!-- 根据staffId修改“未完成”的继任者计划状态为“因离职中止” -->
+    <update id="updateStudyStateByStaffId" parameterType="Long">
+        update t_st_plan set studyState = 4 where (staff_id = #{staffId} or staff_id = (select staff_id from T_ST_SUCCESSOR where mentor_staff_id = #{staffId})) and study_state in (0,2,3)
+    </update>
+
 </mapper>

+ 5 - 0
master/src/main/resources/mybatis/training/spec/TStSuccessorMapper.xml

@@ -131,4 +131,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </foreach>
     </update>
 
+    <!-- 根据staffId修改“进行中”的继任者计划状态为“因离职中止” -->
+    <update id="updateStateByStaffId" parameterType="Long">
+        update t_st_successor set state = 2 where (staff_id = #{staffId} or mentor_staff_id = #{staffId}) and state = 0
+    </update>
+
 </mapper>

+ 9 - 1
ui/src/views/training/spec/seasonalfeedback/index.vue

@@ -1123,10 +1123,18 @@ export default {
       }
       let updateParams = {};
       updateParams.id = this.feedbackId;
+      if (typeof(this.meetingDate) == "string") {
+        console.log("type is string");
+      } else {
+        console.log("type is not string");
+        this.meetingDate.setTime(this.meetingDate.getTime() + 3600 * 1000 * 24);
+      }
       updateParams.meetingDate = this.meetingDate;
       updateParams.id = this.parentId;
       // 修改会议日期
-      updateFeedback(updateParams);
+      updateFeedback(updateParams).then(response => {
+        this.meetingDate.setTime(this.meetingDate.getTime() - 3600 * 1000 * 24);
+      });
       for (let i = 0; i < this.mentorOptionsArray.length; i++) {
         let feedback = {};
         feedback.parentId = this.feedbackId;  // 设置父级id