qushaowei
2023-11-18 9d3675b12829de9ec46c210c5c8c460705206dbc
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/MaintenanceStandardController.java
@@ -9,12 +9,14 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.shiro.SecurityUtils;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.system.api.ISysBaseAPI;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.modules.eam.entity.*;
import org.jeecg.modules.eam.service.*;
import org.springframework.beans.factory.annotation.Autowired;
@@ -135,6 +137,8 @@
    @Transactional(rollbackFor = {Exception.class})
    public Result<String> add(@RequestBody MaintenanceStandard maintenanceStandard) {
//        maintenanceStandard.setType("daily");
        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        maintenanceStandard.setWritePerson(sysUser.getRealname());
        maintenanceStandardService.save(maintenanceStandard);
        List<MaintenanceStandardDetail> maintenanceStandardDetaillist = maintenanceStandard.getMaintenanceStandardDetaillist();
        for (MaintenanceStandardDetail maintenanceStandardDetail : maintenanceStandardDetaillist) {
@@ -156,6 +160,7 @@
    @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST})
    @Transactional(rollbackFor = {Exception.class})
    public Result<String> edit(@RequestBody MaintenanceStandard maintenanceStandard) {
        maintenanceStandard.setApprovalStatus("1");
        maintenanceStandardService.updateById(maintenanceStandard);
        //1.删除原保养项目
        List<MaintenanceStandardDetail> maintenanceStandardDetailList = maintenanceStandardDetailService.lambdaQuery().eq(MaintenanceStandardDetail::getMaintenanceStandardId, maintenanceStandard.getId()).eq(MaintenanceStandardDetail::getDelFlag, 0).eq(MaintenanceStandardDetail::getStatus, "1").list();
@@ -266,8 +271,18 @@
        //作业指导书
        List<MaintenanceStandardWorkInstruction> maintenanceStandardWorkInstructionList = maintenanceStandardWorkInstructionService.lambdaQuery().eq(MaintenanceStandardWorkInstruction::getMaintenanceStandardId,maintenanceStandard.getId())
                .eq(MaintenanceStandardWorkInstruction::getDelFlag, CommonConstant.DEL_FLAG_0).list();
        maintenanceStandard.setId("");
        maintenanceStandard.setCreateTime(new Date());
        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        maintenanceStandard.setWritePerson(sysUser.getRealname());
        maintenanceStandard.setApprovalStatus("1");
        maintenanceStandard.setTakeEffectTime(null);
        maintenanceStandard.setLoseEfficacyTime(null);
        maintenanceStandard.setApprovalFeedback(null);
        maintenanceStandard.setAuditFeedback(null);
        maintenanceStandard.setAuditPerson(null);
        maintenanceStandard.setApprovalPerson(null);
        maintenanceStandardService.save(maintenanceStandard);
        //明细信息
        List<MaintenanceStandardDetail> maintenanceStandardDetailList = maintenanceStandard.getMaintenanceStandardDetaillist();
@@ -339,20 +354,56 @@
    @Transactional(rollbackFor = { Exception.class })
    public Result<String> versionTakeEffect(@RequestBody MaintenanceStandard maintenanceStandard) {
        List<MaintenanceStandard> maintenanceStandardList = maintenanceStandardService.lambdaQuery()
                .eq(MaintenanceStandard::getNum, maintenanceStandard.getNum())
                .eq(MaintenanceStandard::getVersionStatus, "2").list();
        for (MaintenanceStandard standard : maintenanceStandardList) {
            standard.setVersionStatus("3");
            standard.setLoseEfficacyTime(new Date());
            maintenanceStandardService.updateById(standard);
        }
        maintenanceStandard.setTakeEffectTime(new Date());
//        List<MaintenanceStandard> maintenanceStandardList = maintenanceStandardService.lambdaQuery()
//                .eq(MaintenanceStandard::getNum, maintenanceStandard.getNum())
//                .eq(MaintenanceStandard::getVersionStatus, "2").list();
//        for (MaintenanceStandard standard : maintenanceStandardList) {
//            standard.setVersionStatus("3");
//            standard.setLoseEfficacyTime(new Date());
//            maintenanceStandardService.updateById(standard);
//        }
//        maintenanceStandard.setTakeEffectTime(new Date());
        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        maintenanceStandard.setLoseEfficacyPerson(sysUser.getRealname());
        maintenanceStandard.setLoseEfficacyTime(new Date());
        boolean b = maintenanceStandardService.updateById(maintenanceStandard);
        if (b){
            return Result.OK("生效成功!");
            return Result.OK("失效成功!");
        }else{
            return Result.error("生效失败!");
            return Result.error("失效失败!");
        }
    }
    /**
     * 签审流程
     * qsw 2023-11-16
     */
    @RequestMapping(value = "/auditApproval", method = {RequestMethod.PUT,RequestMethod.POST})
    @Transactional(rollbackFor = { Exception.class })
    public Result<String> auditApproval(@RequestBody MaintenanceStandard maintenanceStandard) {
        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        String approvalStatus = maintenanceStandard.getApprovalStatus();
        if("5".equals(approvalStatus)){//审核通过后,版本生效
            List<MaintenanceStandard> dailyMaintenanceStandards = maintenanceStandardService.lambdaQuery()
                    .eq(MaintenanceStandard::getNum, maintenanceStandard.getNum())
                    .eq(MaintenanceStandard::getVersionStatus, "2").list();
            for (MaintenanceStandard dailyMaintenanceStandard : dailyMaintenanceStandards) {
                dailyMaintenanceStandard.setVersionStatus("3");
                dailyMaintenanceStandard.setLoseEfficacyTime(new Date());
                dailyMaintenanceStandard.setLoseEfficacyPerson(sysUser.getRealname());
                maintenanceStandardService.updateById(dailyMaintenanceStandard);
            }
            maintenanceStandard.setApprovalPerson(sysUser.getRealname());
            maintenanceStandard.setVersionStatus("2");
            maintenanceStandard.setTakeEffectTime(new Date());
        }else if("3".equals(approvalStatus)){
            maintenanceStandard.setAuditPerson(sysUser.getRealname());
        }
        boolean b = maintenanceStandardService.updateById(maintenanceStandard);
        if (b){
            return Result.OK("审核成功!");
        }else{
            return Result.error("审核失败!");
        }
    }