已添加10个文件
已修改35个文件
1217 ■■■■■ 文件已修改
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/DailyMaintenanceOrderController.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/MaintenanceThreeAcceptanceController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/OperationCertificateApplyController.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/OperationCertificateController.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/PrecisionInspectionController.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/SysFileNameController.java 251 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/TeamController.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/DailyMaintenanceOrder.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EquipmentImportVo.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/InspectionCycle.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/MaintenanceStoveExempt.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/MaintenanceThreeAcceptance.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/PrecisionInspection.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/SysFileName.java 97 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/Team.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/DailyInspectionOrderJob.java 168 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/OperationCertificateJob.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/DailyMaintenanceOrderMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/InspectionCycleMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/SysFileNameMapper.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/DailyMaintenanceOrderMapper.xml 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EquipmentReportRepairMapper.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/InspectionCycleMapper.xml 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/MaintenanceStoveExemptMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/OperationCertificateApplyDetailMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/SysFileNameMapper.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IDailyMaintenanceOrderService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IInspectionCycleService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/ISysFileNameService.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/DailyMaintenanceOrderServiceImpl.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/InspectionCycleServiceImpl.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/OperationCertificateApplyDetailServiceImpl.java 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/SysFileNameServiceImpl.java 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/SysFileNameVo.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysDepartController.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysPermissionController.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/Secret.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysDepart.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysPermissionMapper.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysPermissionMapper.xml 27 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/model/SysDepartTreeModel.java 34 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysPermissionService.java 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysPermissionServiceImpl.java 32 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/util/FindsDepartsChildrenUtil.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/DailyMaintenanceOrderController.java
@@ -37,6 +37,7 @@
import lombok.extern.slf4j.Slf4j;
import org.jeecg.modules.eam.vo.SysFileNameVo;
import org.jeecg.modules.system.entity.SysUser;
import org.jeecg.modules.system.service.ISysUserService;
import org.jeecgframework.poi.excel.ExcelImportUtil;
@@ -106,6 +107,9 @@
    @Autowired
    private IMaintenanceStoveExemptService maintenanceStoveExemptService;
    @Autowired
    private ISysFileNameService sysFileNameService;
    /**
@@ -214,7 +218,7 @@
     */
    @GetMapping("getDailyMaintenanceOrder3List")
    public Result<?> getDailyMaintenanceOrder3List(@RequestParam("pageNo") Integer pageNo, @RequestParam("pageSize") Integer pageSize, @RequestParam Map<String, Object> params) {
        IPage<Map<String, Object>> dailyMaintenanceOrderList = dailyMaintenanceOrderService.getDailyMaintenanceOrderList(pageNo, pageSize, params);
        IPage<Map<String, Object>> dailyMaintenanceOrderList = dailyMaintenanceOrderService.getDailyMaintenanceOrder3List(pageNo, pageSize, params);
        List<Map<String, Object>> records = dailyMaintenanceOrderList.getRecords();
        for (Map<String, Object> record : records) {
            String id = (String) record.get("id");
@@ -708,8 +712,10 @@
    void createMaintenanceStoveExempt(DailyMaintenanceOrder dailyMaintenanceOrder){
        List<SysFileNameVo> sysFileName = sysFileNameService.getSysFileName("20");
        MaintenanceStoveExempt maintenanceStoveExempt = new MaintenanceStoveExempt();
        maintenanceStoveExempt.setMaintenanceOrderId(dailyMaintenanceOrder.getId());
        maintenanceStoveExempt.setReceipts(sysFileName.get(0).getReceipts());
        maintenanceStoveExemptService.save(maintenanceStoveExempt);
    }
@@ -733,9 +739,11 @@
        String userId = sysUser.getId();
        String orderId = dailyMaintenanceOrder.getId();
        String maintenanceOrderUda3 = dailyMaintenanceOrder.getMaintenanceOrderUda3();
        DailyMaintenanceOrder maintenanceOrder = dailyMaintenanceOrderService.getById(orderId);
        String equipmentId = maintenanceOrder.getEquipmentId();
        String confirmStatus = maintenanceOrder.getConfirmStatus();
        String orderUda3 = maintenanceOrder.getMaintenanceOrderUda3();
        List<FinishTransferOrder> finishTransferOrders = finishTransferOrderService.lambdaQuery()
                .eq(FinishTransferOrder::getMaintenanceOrderId, orderId)
@@ -746,12 +754,18 @@
               finishTransferOrder.setRepairDirectorUser(userId);
               finishTransferOrderService.updateById(finishTransferOrder);
                if(StringUtils.isBlank(orderUda3)){
                    maintenanceOrder.setMaintenanceOrderUda3(maintenanceOrderUda3);
                }
               maintenanceOrder.setConfirmStatus("1");
               dailyMaintenanceOrderService.updateById(maintenanceOrder);
           }else{
               finishTransferOrder.setEquipmentInspectorUser(userId);
               finishTransferOrderService.updateById(finishTransferOrder);
               if(StringUtils.isBlank(orderUda3)){
                   maintenanceOrder.setMaintenanceOrderUda3(maintenanceOrderUda3);
               }
               maintenanceOrder.setConfirmStatus("2");
               maintenanceOrder.setStatus("8");
               dailyMaintenanceOrderService.updateById(maintenanceOrder);
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamEquipmentController.java
@@ -549,6 +549,7 @@
      */
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
     @Transactional(rollbackFor = Exception.class)
     //工区、型号、设备状态、技术状态、ABC标识有空值;维护部门、维修班组为编码需要有对照值。
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
         MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
         LoginUser user= (LoginUser) SecurityUtils.getSubject().getPrincipal();
@@ -580,23 +581,18 @@
                         exceptionNum++;
                         continue;
                     }
                     else if(StringUtils.isBlank(equipmentImportVo.getTeamId())){
                         exceptionInfo = exceptionInfo+"第"+(i+2)+"行导入失败,原因:维修班组缺失,请填写必填项后再导入;";
                         exceptionNum++;
                         continue;
                     }
                     else if(StringUtils.isBlank(equipmentImportVo.getEquipmentImportanceId())){
                         exceptionInfo = exceptionInfo+"第"+(i+2)+"行导入失败,原因:ABC标识缺失,请填写必填项后再导入;";
                         exceptionNum++;
                         continue;
                     }
//                     else if(StringUtils.isBlank(equipmentImportVo.getEquipmentImportanceId())){
//                         exceptionInfo = exceptionInfo+"第"+(i+2)+"行导入失败,原因:ABC标识缺失,请填写必填项后再导入;";
//                         exceptionNum++;
//                         continue;
//                     }
                     else if(StringUtils.isBlank(equipmentImportVo.getEquipmentStatus())){
                         exceptionInfo = exceptionInfo+"第"+(i+2)+"行导入失败,原因:设备状态缺失,请填写必填项后再导入;";
                         exceptionNum++;
                         continue;
                     }
                     else if(StringUtils.isBlank(equipmentImportVo.getTechnologyStatus())){
                         exceptionInfo = exceptionInfo+"第"+(i+2)+"行导入失败,原因:设备技术状态缺失,请填写必填项后再导入;";
                         exceptionInfo = exceptionInfo+"第"+(i+2)+"行导入失败,原因:技术状态缺失,请填写必填项后再导入;";
                         exceptionNum++;
                         continue;
                     }
@@ -693,8 +689,11 @@
                             continue;
                         }
                         Area area = areaService.getOne(new QueryWrapper<Area>().eq("name",areaId.trim()));
                         Area area1 = areaService.getOne(new QueryWrapper<Area>().eq("num",areaId.trim()));
                         if(ObjectUtils.isNotNull(area)){
                             equipment.setFactoryModelId(area.getId());
                         }else if(ObjectUtils.isNotNull(area1)) {
                             equipment.setFactoryModelId(area1.getId());
                         }else {
                             exceptionInfo = exceptionInfo+"第"+(i+2)+"行导入失败,原因:不存在该工区,请维护工区数据后再导入;";
                             exceptionNum++;
@@ -718,8 +717,11 @@
                             continue;
                         }
                         Team team = teamService.getOne(new QueryWrapper<Team>().eq("name",teamId.trim()),false);
                         Team team1 = teamService.getOne(new QueryWrapper<Team>().eq("num",teamId.trim()),false);
                         if(ObjectUtils.isNotNull(team)){
                             equipment.setTeamId(team.getId());
                         }else if(ObjectUtils.isNotNull(team1)) {
                             equipment.setTeamId(team1.getId());
                         }else {
                             exceptionInfo = exceptionInfo+"第"+(i+2)+"行导入失败,原因:不存在该班组,请先维护班组数据后再导入;";
                             exceptionNum++;
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/MaintenanceThreeAcceptanceController.java
@@ -11,6 +11,7 @@
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
@@ -102,6 +103,7 @@
        String userId = sysUser.getId();
        String maintenanceOrderId = maintenanceThreeAcceptance.getMaintenanceOrderId();
        String equipmentId = maintenanceThreeAcceptance.getEquipmentId();
        String receipts = maintenanceThreeAcceptance.getReceipts();
        int maintenanceCycle = Integer.parseInt(maintenanceThreeAcceptance.getMaintenanceCycle());
        List<MaintenanceThreeAcceptance> maintenanceThreeAcceptances = maintenanceThreeAcceptance.getMaintenanceThreeAcceptances();
        String checkStatus = "1";//三级保养验收状态(1通过,2未通过)
@@ -117,6 +119,9 @@
        }
        DailyMaintenanceOrder maintenanceOrder = dailyMaintenanceOrderService.getById(maintenanceOrderId);
        if(StringUtils.isBlank(maintenanceOrder.getMaintenanceOrderUda5())){
            maintenanceOrder.setMaintenanceOrderUda5(receipts);
        }
        maintenanceOrder.setInspectUser(sysUser.getRealname());
        maintenanceOrder.setNotPassReason(maintenanceThreeAcceptance.getNotPassReason());
        maintenanceOrder.setCheckStatus(checkStatus);
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/OperationCertificateApplyController.java
@@ -12,6 +12,7 @@
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.modules.eam.vo.EquipmentDisposalPage;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
@@ -262,4 +263,17 @@
      return Result.OK("文件导入失败!");
    }
     /**
      * æäº¤ã€å®¡æ ¸ã€å®¡æ‰¹
      *
      * @param operationCertificateApply
      * @return
      */
     @AutoLog(value = "提交、审核、审批")
     @PostMapping(value = "/approve")
     public Result<String> submit(@RequestBody OperationCertificateApply operationCertificateApply) {
         this.operationCertificateApplyService.updateById(operationCertificateApply);
         return Result.OK("操作成功!");
     }
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/OperationCertificateController.java
@@ -131,7 +131,10 @@
                currentDate = c.getTime();
                OperationCertificate operationCertificate = new OperationCertificate();
                operationCertificate.setNum(identityService.getNumByTypeAndLength("OperationCertificate", 4));
                operationCertificate.setUserId(operationCertificateApplyDetail.getUserId());
                SysUser sysUser = userService.getById(operationCertificateApplyDetail.getUserId());
                if(sysUser != null){
                    operationCertificate.setUserId(sysUser.getUsername());
                }
                operationCertificate.setEquipmentIds(operationCertificateApplyDetail.getEquipmentIds());
                operationCertificate.setCurrentCycleScore(12);
                operationCertificate.setIssueDate(new Date());
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/PrecisionInspectionController.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -203,8 +204,10 @@
        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
        String userId = sysUser.getId();
        String receipts = precisionInspection.getReceipts();//精度检验单单据id
        PrecisionInspection preInspection = precisionInspectionService.getById(precisionInspection.getId());
        DailyMaintenanceOrder maintenanceOrder = dailyMaintenanceOrderService.getById(preInspection.getMaintenanceOrderId());
        String maintenanceOrderUda4 = maintenanceOrder.getMaintenanceOrderUda4();
        Equipment equipment = equipmentService.getById(maintenanceOrder.getEquipmentId());
        String precisionInspectionStatus = maintenanceOrder.getPrecisionInspectionStatus();
@@ -243,8 +246,11 @@
            equipment.setTechnologyStatus(precisionInspection.getJudgmentResult());
        }
        preInspection.setRemark(precisionInspection.getRemark());
        if(StringUtils.isBlank(maintenanceOrderUda4)){
            maintenanceOrder.setMaintenanceOrderUda4(receipts);
        }
        dailyMaintenanceOrderService.updateById(maintenanceOrder);
        preInspection.setRemark(precisionInspection.getRemark());
        precisionInspectionService.updateById(preInspection);
        equipmentService.updateById(equipment);
        return Result.OK("审批成功!");
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/SysFileNameController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,251 @@
package org.jeecg.modules.eam.controller;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.util.oConvertUtils;
import org.jeecg.modules.eam.entity.MaintenanceCycle;
import org.jeecg.modules.eam.entity.SysFileName;
import org.jeecg.modules.eam.model.DepartVo;
import org.jeecg.modules.eam.service.ISysFileNameService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.modules.eam.vo.SysFileNameVo;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.jeecg.common.system.base.controller.JeecgController;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.jeecg.common.aspect.annotation.AutoLog;
 /**
 * @Description: æ–‡ä»¶åç§°ç®¡ç†
 * @Author: jeecg-boot
 * @Date:   2023-11-03
 * @Version: V1.0
 */
@Api(tags="文件名称管理")
@RestController
@RequestMapping("/eam/sysFileName")
@Slf4j
public class SysFileNameController extends JeecgController<SysFileName, ISysFileNameService> {
    @Autowired
    private ISysFileNameService sysFileNameService;
    /**
     * åˆ†é¡µåˆ—表查询
     *
     * @param sysFileName
     * @param pageNo
     * @param pageSize
     * @param req
     * @return
     */
    //@AutoLog(value = "文件名称管理-分页列表查询")
    @ApiOperation(value="文件名称管理-分页列表查询", notes="文件名称管理-分页列表查询")
    @GetMapping(value = "/list")
    public Result<IPage<SysFileName>> queryPageList(SysFileName sysFileName,
                                   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                   HttpServletRequest req) {
        if(StringUtils.isBlank(sysFileName.getVersionStatus())){
            sysFileName.setVersionStatus("2");
        }
        QueryWrapper<SysFileName> queryWrapper = QueryGenerator.initQueryWrapper(sysFileName, req.getParameterMap());
        Page<SysFileName> page = new Page<SysFileName>(pageNo, pageSize);
        IPage<SysFileName> pageList = sysFileNameService.page(page, queryWrapper);
        return Result.OK(pageList);
    }
    /**
     *   æ·»åŠ 
     *
     * @param sysFileName
     * @return
     */
    @AutoLog(value = "文件名称管理-添加")
    @ApiOperation(value="文件名称管理-添加", notes="文件名称管理-添加")
    //@RequiresPermissions("org.jeecg.modules.mdc:sys_file_name:add")
    @PostMapping(value = "/add")
    public Result<String> add(@RequestBody SysFileName sysFileName) {
        sysFileNameService.save(sysFileName);
        return Result.OK("添加成功!");
    }
    /**
     *  ç¼–辑
     *
     * @param sysFileName
     * @return
     */
    @AutoLog(value = "文件名称管理-编辑")
    @ApiOperation(value="文件名称管理-编辑", notes="文件名称管理-编辑")
    //@RequiresPermissions("org.jeecg.modules.mdc:sys_file_name:edit")
    @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
    public Result<String> edit(@RequestBody SysFileName sysFileName) {
        sysFileNameService.updateById(sysFileName);
        return Result.OK("编辑成功!");
    }
     /**
      * ç‰ˆæœ¬å‡çº§
      * qsw 2023-11-3
      */
     @PostMapping(value = "/revise")
     public Result<String> revise(@RequestBody SysFileName sysFileName) {
         sysFileName.setId("");
         boolean b = sysFileNameService.save(sysFileName);
         if(b){
             return Result.OK("版本升级成功!");
         }else{
             return Result.error("版本升级失败!");
         }
     }
     /**
      * å‡ç‰ˆ
      * qsw 2023-11-3
      */
     @RequestMapping("/getReviseVersion")
     public Result<?> getReviseVersion(@RequestBody SysFileName sysFileName) {
         List<SysFileName> sysFileNames = sysFileNameService.lambdaQuery()
                 .eq(SysFileName::getName, sysFileName.getName())
                 .orderByDesc(SysFileName::getVersion)
                 .list();
         String version = sysFileNames.get(0).getVersion();
         BigDecimal versionB = new BigDecimal(version);
         BigDecimal versionCode = versionB.add(new BigDecimal(1));
         return Result.ok(versionCode.toString());
     }
     /**
      * ç‰ˆæœ¬ç”Ÿæ•ˆ
      * qsw 2023-7-26
      */
     @RequestMapping(value = "/versionTakeEffect", method = {RequestMethod.PUT,RequestMethod.POST})
     @Transactional(rollbackFor = { Exception.class })
     public Result<String> versionTakeEffect(@RequestBody SysFileName sysFileName) {
         List<SysFileName> sysFileNames = sysFileNameService.lambdaQuery()
                 .eq(SysFileName::getName, sysFileName.getName()).list();
         for (SysFileName fileName : sysFileNames) {
             fileName.setVersionStatus("3");
             sysFileNameService.updateById(fileName);
         }
         boolean b = sysFileNameService.updateById(sysFileName);
         if (b){
             return Result.OK("生效成功!");
         }else{
             return Result.error("生效失败!");
         }
     }
     /**
      * é€šè¿‡å•据类型获取单据编码
      * qsw 2023-11-3
      */
     @GetMapping("getSysFileName")
     public Result<?> getSysFileName(@RequestParam(name="name",required=true) String name) {
         List<SysFileNameVo> sysFileName = sysFileNameService.getSysFileName(name);
         return Result.ok(sysFileName);
     }
    /**
     *   é€šè¿‡id删除
     *
     * @param id
     * @return
     */
    @AutoLog(value = "文件名称管理-通过id删除")
    @ApiOperation(value="文件名称管理-通过id删除", notes="文件名称管理-通过id删除")
    //@RequiresPermissions("org.jeecg.modules.mdc:sys_file_name:delete")
    @DeleteMapping(value = "/delete")
    public Result<String> delete(@RequestParam(name="id",required=true) String id) {
        sysFileNameService.removeById(id);
        return Result.OK("删除成功!");
    }
    /**
     *  æ‰¹é‡åˆ é™¤
     *
     * @param ids
     * @return
     */
    @AutoLog(value = "文件名称管理-批量删除")
    @ApiOperation(value="文件名称管理-批量删除", notes="文件名称管理-批量删除")
    //@RequiresPermissions("org.jeecg.modules.mdc:sys_file_name:deleteBatch")
    @DeleteMapping(value = "/deleteBatch")
    public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
        this.sysFileNameService.removeByIds(Arrays.asList(ids.split(",")));
        return Result.OK("批量删除成功!");
    }
    /**
     * é€šè¿‡id查询
     *
     * @param id
     * @return
     */
    //@AutoLog(value = "文件名称管理-通过id查询")
    @ApiOperation(value="文件名称管理-通过id查询", notes="文件名称管理-通过id查询")
    @GetMapping(value = "/queryById")
    public Result<SysFileName> queryById(@RequestParam(name="id",required=true) String id) {
        SysFileName sysFileName = sysFileNameService.getById(id);
        if(sysFileName==null) {
            return Result.error("未找到对应数据");
        }
        return Result.OK(sysFileName);
    }
    /**
    * å¯¼å‡ºexcel
    *
    * @param request
    * @param sysFileName
    */
    //@RequiresPermissions("org.jeecg.modules.mdc:sys_file_name:exportXls")
    @RequestMapping(value = "/exportXls")
    public ModelAndView exportXls(HttpServletRequest request, SysFileName sysFileName) {
        return super.exportXls(request, sysFileName, SysFileName.class, "文件名称管理");
    }
    /**
      * é€šè¿‡excel导入数据
    *
    * @param request
    * @param response
    * @return
    */
    //@RequiresPermissions("sys_file_name:importExcel")
    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
        return super.importExcel(request, response, SysFileName.class);
    }
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/TeamController.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -62,7 +63,7 @@
        IPage<Team> pageList = teamService.page(page, queryWrapper);
        return Result.OK(pageList);
    }
    /**
     *   æ·»åŠ 
     *
@@ -77,7 +78,7 @@
        teamService.save(team);
        return Result.OK("添加成功!");
    }
    /**
     *  ç¼–辑
     *
@@ -92,7 +93,7 @@
        teamService.updateById(team);
        return Result.OK("编辑成功!");
    }
    /**
     *   é€šè¿‡id删除
     *
@@ -107,7 +108,7 @@
        teamService.removeById(id);
        return Result.OK("删除成功!");
    }
    /**
     *  æ‰¹é‡åˆ é™¤
     *
@@ -122,7 +123,7 @@
        this.teamService.removeByIds(Arrays.asList(ids.split(",")));
        return Result.OK("批量删除成功!");
    }
    /**
     * é€šè¿‡id查询
     *
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/DailyMaintenanceOrder.java
@@ -94,17 +94,17 @@
    @Excel(name = "备用字段2", width = 15)
    @ApiModelProperty(value = "备用字段2")
    private String maintenanceOrderUda2;
    /**备用字段3*/
    @Excel(name = "备用字段3", width = 15)
    @ApiModelProperty(value = "备用字段3")
    /**二级保养完工移交单单据编码id*/
    @Excel(name = "二级保养完工移交单单据编码id", width = 15)
    @ApiModelProperty(value = "二级保养完工移交单单据编码id")
    private String maintenanceOrderUda3;
    /**备用字段4*/
    @Excel(name = "备用字段4", width = 15)
    @ApiModelProperty(value = "备用字段4")
    @Excel(name = "三级保养精度检验单单据编码id", width = 15)
    @ApiModelProperty(value = "三级保养精度检验单单据编码id")
    private String maintenanceOrderUda4;
    /**备用字段5*/
    @Excel(name = "备用字段5", width = 15)
    @ApiModelProperty(value = "备用字段5")
    /**三级保养验收单单据编码id*/
    @Excel(name = "三级保养验收单单据编码id", width = 15)
    @ApiModelProperty(value = "三级保养验收单单据编码id")
    private String maintenanceOrderUda5;
    /**创建类型(1手动创建,2自动创建)*/
    @Excel(name = "创建类型(1手动创建,2自动创建)", width = 15)
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/EquipmentImportVo.java
@@ -26,19 +26,19 @@
    @Excel(name = "型号")
    private String model;
//    @Excel(name = "使用部门",dictTable = "sys_depart",dicCode = "id",dicText = "depart_name")
    @Excel(name = "使用部门")
    private String useId;
//    @Excel(name = "工区",dicCode = "id",dictTable = "mom_base_area",dicText = "name")
    @Excel(name = "工区")
    private String factoryModelId;
//    @Excel(name = "维护部门",dictTable = "sys_depart",dicCode = "id",dicText = "depart_name")
    @Excel(name = "维护部门")
    private String manageId;
//    @Excel(name = "维修班组",dictTable = "mom_base_team",dicCode = "id"2,dicText = "name")
    @Excel(name = "维修班组")
    private String teamId;
//    @Excel(name = "资产制造商",dicCode = "id",dictTable="mom_base_constructor",dicText="name")
    @Excel(name = "资产制造商")
    private String constructorId;
    @Excel(name = "ABC标识",dicCode = "ABC-standard-result")
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/InspectionCycle.java
@@ -54,6 +54,11 @@
    @ApiModelProperty(value = "首次点检时间")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    private Date firstInspectionTime;
    /**上次点检时间*/
    @Excel(name = "上次点检时间", width = 15)
    @ApiModelProperty(value = "上次点检时间")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    private Date lastInspectionTime;
    /**提前时间*/
    @Excel(name = "提前时间", width = 15)
    @ApiModelProperty(value = "提前时间")
@@ -152,4 +157,28 @@
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private java.util.Date loseEfficacyTime;
    @TableField(exist = false)
    private String equipmentId;
    @TableField(exist = false)
    private String teamId;
    @TableField(exist = false)
    private String inspectionStandardId;
    @TableField(exist = false)
    private String inspectionStandardNum;
    @TableField(exist = false)
    private String inspectionProjectId;
    @TableField(exist = false)
    private String inspectionProjectName;
    @TableField(exist = false)
    private String detectionStandard;
    @TableField(exist = false)
    private String inspectionStandardDetailId;
    @TableField(exist = false)
    private String location;
    @TableField(exist = false)
    private String photo;
    @TableField(exist = false)
    private String inspectionMethod;
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/MaintenanceStoveExempt.java
@@ -50,12 +50,16 @@
    @Excel(name = "仪表工", width = 15)
    @ApiModelProperty(value = "仪表工")
    private java.lang.String meterUser;
    /**问题项*/
    @Excel(name = "问题项", width = 15)
    /**问题项*/
    @Excel(name = "问题项", width = 15)
    @ApiModelProperty(value = "问题项")
    private java.lang.String sort;
    /**炉温均匀性20条款单据id*/
    @Excel(name = "炉温均匀性20条款单据id", width = 15)
    @ApiModelProperty(value = "炉温均匀性20条款单据id")
    private java.lang.String receipts;
    /**结果1*/
    @Excel(name = "结果1", width = 15)
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/MaintenanceThreeAcceptance.java
@@ -77,4 +77,7 @@
    @TableField(exist = false)
    private String equipmentId;
    @TableField(exist = false)
    private String receipts;
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/PrecisionInspection.java
@@ -126,6 +126,12 @@
    @ApiModelProperty(value = "设备检验员签字(盖章)")
    private String equipmentInspectorSignUser;
    /**
     * å•据id
     */
    @TableField(exist = false)
    private String receipts;
    @TableField(exist = false)
    private List<PrecisionInspectionDetail> precisionInspectionDetailList;
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/SysFileName.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,97 @@
package org.jeecg.modules.eam.entity;
import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.jeecg.common.system.base.entity.JeecgEntity;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
 * @Description: æ–‡ä»¶åç§°ç®¡ç†
 * @Author: jeecg-boot
 * @Date:   2023-11-03
 * @Version: V1.0
 */
@Data
@TableName("sys_file_name")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="sys_file_name对象", description="文件名称管理")
public class SysFileName extends JeecgEntity implements Serializable {
    private static final long serialVersionUID = 1L;
    /**文件编号*/
    @Excel(name = "文件编号", width = 15)
    @ApiModelProperty(value = "文件编号")
    private java.lang.String num;
    /**文件名称*/
    @Excel(name = "文件名称", width = 15)
    @ApiModelProperty(value = "文件名称")
    @Dict(dicCode = "sys_file_name")
    private java.lang.String name;
    /**文件类型*/
    @Excel(name = "文件类型", width = 15)
    @ApiModelProperty(value = "文件类型")
    private java.lang.String type;
    /**文件地址*/
    @Excel(name = "文件地址", width = 15)
    @ApiModelProperty(value = "文件地址")
    private java.lang.String fileUrl;
    /**属性字段1*/
    @Excel(name = "属性字段1", width = 15)
    @ApiModelProperty(value = "属性字段1")
    private java.lang.String uda1;
    /**属性字段2*/
    @Excel(name = "属性字段2", width = 15)
    @ApiModelProperty(value = "属性字段2")
    private java.lang.String uda2;
    /**属性字段3*/
    @Excel(name = "属性字段3", width = 15)
    @ApiModelProperty(value = "属性字段3")
    private java.lang.String uda3;
    /**属性字段4*/
    @Excel(name = "属性字段4", width = 15)
    @ApiModelProperty(value = "属性字段4")
    private java.lang.String uda4;
    /**属性字段5*/
    @Excel(name = "属性字段5", width = 15)
    @ApiModelProperty(value = "属性字段5")
    private java.lang.String uda5;
    /**所属部门*/
    @ApiModelProperty(value = "所属部门")
    private java.lang.String sysOrgCode;
    /**版本*/
    @Excel(name = "版本", width = 15)
    @ApiModelProperty(value = "版本")
    private String version;
    /**版本状态*/
    @Excel(name = "版本状态", width = 15)
    @ApiModelProperty(value = "版本状态")
    @Dict(dicCode = "version_status")
    private String versionStatus;
    @TableField(exist = false)
    private String receipts;
    @TableField(exist = false)
    private String receiptsNum;
    @TableField(exist = false)
    private String receiptsName;
    @TableField(exist = false)
    private String maintenanceOrderUda3;
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/entity/Team.java
@@ -5,11 +5,13 @@
import java.util.Date;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.jeecg.common.constant.CommonConstant;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
@@ -114,4 +116,6 @@
    @ApiModelProperty(value = "所属部门")
    @Dict(dictTable = "sys_depart", dicCode = "id", dicText = "depart_name")
    private String departId;
    @TableField(exist = false)
    private String noEqId;
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/DailyInspectionOrderJob.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,168 @@
package org.jeecg.modules.eam.job;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.modules.eam.entity.*;
import org.jeecg.modules.eam.service.*;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.springframework.beans.factory.annotation.Autowired;
import javax.annotation.Resource;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.time.DayOfWeek;
import java.time.Instant;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
/**
 * è‡ªä¸»ç»´æŠ¤å·¥å•自动生成
 */
@Slf4j
public class DailyInspectionOrderJob implements Job {
    @Autowired
    private IInspectionCycleService inspectionCycleService;
    @Autowired
    private IdentityService identityService;
    @Autowired
    private IInspectionOrderService inspectionOrderService;
    @Autowired
    private IInspectionOrderDetailService inspectionOrderDetailService;
    @Autowired
    private IDailyInspectionStandardDetailService dailyInspectionStandardDetailService;
    @Override
    public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
        /*//遍历点检标准,通过点检标准生成点检工单
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        List<InspectionCycle> inspectionCycleList = inspectionCycleService.getInspectionOrder();
        //当前时间
        String currentDateTime = formatter.format(LocalDateTime.now());
        for(InspectionCycle inspectionCycle : inspectionCycleList){
            //提前时间
            BigDecimal leadTime = new BigDecimal("0");
            //有效时间
            BigDecimal effectiveTime = new BigDecimal("0");
            //本次点检时间
            Date newInspecttionTime = null;
            if("min".equals(inspectionCycle.getUnit())){
                leadTime = inspectionCycle.getLeadTime().multiply(new BigDecimal("60"));
                effectiveTime = inspectionCycle.getEffectiveTime().multiply(new BigDecimal("60"));
            }else if("hour".equals(inspectionCycle.getUnit())){
                leadTime = inspectionCycle.getLeadTime().multiply(new BigDecimal("3600"));
                effectiveTime = inspectionCycle.getEffectiveTime().multiply(new BigDecimal("3600"));
            }else if("day".equals(inspectionCycle.getUnit())){
                leadTime = inspectionCycle.getLeadTime().multiply(new BigDecimal("86400"));
                effectiveTime = inspectionCycle.getEffectiveTime().multiply(new BigDecimal("86400"));
            }
            if("day".equals(inspectionCycle.getCycleUnit())){
                Calendar calendar = Calendar.getInstance();
                if(inspectionCycle.getLastInspectionTime() != null){
                    calendar.setTime(inspectionCycle.getLastInspectionTime());
                }else {
                    calendar.setTime(inspectionCycle.getFirstInspectionTime());
                }
                calendar.add(Calendar.DAY_OF_YEAR, inspectionCycle.getCycle().intValue());
                Date inspecttionTime = calendar.getTime();
                Instant instant = inspecttionTime.toInstant();
                instant = instant.minusSeconds(leadTime.intValue());
                newInspecttionTime = Date.from(instant);
            }else if("week".equals(inspectionCycle.getCycleUnit())){
                Calendar calendar = Calendar.getInstance();
                if(inspectionCycle.getLastInspectionTime() != null){
                    calendar.setTime(inspectionCycle.getLastInspectionTime());
                }else {
                    calendar.setTime(inspectionCycle.getFirstInspectionTime());
                }
                calendar.add(Calendar.WEEK_OF_MONTH, inspectionCycle.getCycle().intValue());
                Date inspecttionTime = calendar.getTime();
                Instant instant = inspecttionTime.toInstant();
                instant = instant.minusSeconds(leadTime.intValue());
                newInspecttionTime = Date.from(instant);
            }
            Instant instant = newInspecttionTime.toInstant();
            instant = instant.plusSeconds(effectiveTime.intValue());
            //本次点检截止时间
            Date newnspectionDeadline = Date.from(instant);
            String newDate = formatter.format(newInspecttionTime);
            if(currentDateTime.equals(newDate)){
                //保存点检工单主表数据
                InspectionOrder inspectionOrder = new InspectionOrder();
                inspectionOrder.setNum(identityService.getNumByTypeAndLength("DailylnspectionOrder",4));
                inspectionOrder.setInspectionCycleId(inspectionCycle.getId());
                inspectionOrder.setInspectionStandardId(inspectionCycle.getInspectionStandardId());
                inspectionOrder.setInspectionTime(newInspecttionTime);
                inspectionOrder.setInspectionStandardType("1");
                inspectionOrder.setInspectionDeadline(newnspectionDeadline);
                inspectionOrder.setEquipmentId(inspectionCycle.getEquipmentId());
                inspectionOrder.setTeamId(inspectionCycle.getTeamId());
                inspectionOrderService.save(inspectionOrder);
                //更新上次点检时间
                inspectionCycle.setLastInspectionTime(newInspecttionTime);
                inspectionCycleService.updateById(inspectionCycle);
                //根据标准和周期查询点检项目
                //保存点检工单子表数据
            }
        }*/
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        List<InspectionCycle> inspectionCycleList = inspectionCycleService.getInspectionOrder();
        LocalDate today = LocalDate.now();
        DayOfWeek dayOfWeek = today.getDayOfWeek();
        for(InspectionCycle inspectionCycle : inspectionCycleList){
            if("day".equals(inspectionCycle.getCycleUnit())){
                //保存点检工单主表数据
                InspectionOrder inspectionOrder = new InspectionOrder();
                inspectionOrder.setNum(identityService.getNumByTypeAndLength("DailylnspectionOrder",4));
                inspectionOrder.setInspectionCycleId(inspectionCycle.getId());
                inspectionOrder.setInspectionStandardId(inspectionCycle.getInspectionStandardId());
                inspectionOrder.setInspectionTime(new Date());
                inspectionOrder.setInspectionStandardType("1");
                inspectionOrder.setEquipmentId(inspectionCycle.getEquipmentId());
                inspectionOrder.setTeamId(inspectionCycle.getTeamId());
                inspectionOrderService.save(inspectionOrder);
                //保存点检工单子表数据
                List<DailyInspectionStandardDetail> dailyInspectionStandardDetailList = dailyInspectionStandardDetailService.lambdaQuery()
                        .eq(DailyInspectionStandardDetail::getDailyInspectionStandardId,inspectionOrder.getInspectionStandardId())
                        .eq(DailyInspectionStandardDetail::getInspectionCycleId,inspectionOrder.getInspectionCycleId()).list();
                for(DailyInspectionStandardDetail dailyInspectionStandardDetail : dailyInspectionStandardDetailList){
                    InspectionOrderDetail inspectionOrderDetail = new InspectionOrderDetail();
                    inspectionOrderDetail.setInspectionOrderId(inspectionOrder.getId());
                    inspectionOrderDetail.setInspectionProjectId(dailyInspectionStandardDetail.getInspectionProjectId());
                    inspectionOrderDetail.setInspectionStandardDetailId(dailyInspectionStandardDetail.getId());
                    inspectionOrderDetail.setLocation(dailyInspectionStandardDetail.getLocation());
                    inspectionOrderDetail.setPhoto(dailyInspectionStandardDetail.getPhoto());
                    inspectionOrderDetailService.save(inspectionOrderDetail);
                }
            }else if("week".equals(inspectionCycle.getCycleUnit()) && dayOfWeek == DayOfWeek.FRIDAY){
                //保存点检工单主表数据
                InspectionOrder inspectionOrder = new InspectionOrder();
                inspectionOrder.setNum(identityService.getNumByTypeAndLength("DailylnspectionOrder",4));
                inspectionOrder.setInspectionCycleId(inspectionCycle.getId());
                inspectionOrder.setInspectionStandardId(inspectionCycle.getInspectionStandardId());
                inspectionOrder.setInspectionTime(new Date());
                inspectionOrder.setInspectionStandardType("1");
                inspectionOrder.setEquipmentId(inspectionCycle.getEquipmentId());
                inspectionOrder.setTeamId(inspectionCycle.getTeamId());
                inspectionOrderService.save(inspectionOrder);
                //保存点检工单子表数据
                List<DailyInspectionStandardDetail> dailyInspectionStandardDetailList = dailyInspectionStandardDetailService.lambdaQuery()
                        .eq(DailyInspectionStandardDetail::getDailyInspectionStandardId,inspectionOrder.getInspectionStandardId())
                        .eq(DailyInspectionStandardDetail::getInspectionCycleId,inspectionOrder.getInspectionCycleId()).list();
                for(DailyInspectionStandardDetail dailyInspectionStandardDetail : dailyInspectionStandardDetailList){
                    InspectionOrderDetail inspectionOrderDetail = new InspectionOrderDetail();
                    inspectionOrderDetail.setInspectionOrderId(inspectionOrder.getId());
                    inspectionOrderDetail.setInspectionProjectId(dailyInspectionStandardDetail.getInspectionProjectId());
                    inspectionOrderDetail.setInspectionStandardDetailId(dailyInspectionStandardDetail.getId());
                    inspectionOrderDetail.setLocation(dailyInspectionStandardDetail.getLocation());
                    inspectionOrderDetail.setPhoto(dailyInspectionStandardDetail.getPhoto());
                    inspectionOrderDetailService.save(inspectionOrderDetail);
                }
            }
        }
    }
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/job/OperationCertificateJob.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,46 @@
package org.jeecg.modules.eam.job;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.modules.eam.entity.OperationCertificate;
import org.jeecg.modules.eam.service.IOperationCertificateService;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import javax.annotation.Resource;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
/**
 * æ“ä½œè¯æ›´æ–°è®¡åˆ†å‘¨æœŸ
 */
@Slf4j
public class OperationCertificateJob implements Job {
    @Resource
    private IOperationCertificateService operationCertificateService;
    @Override
    public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
        //遍历所有操作证信息
        SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
        List<OperationCertificate> operationCertificateList = operationCertificateService.list();
        for(OperationCertificate operationCertificate : operationCertificateList){
            String endTime = formatter.format(operationCertificate.getEndTime());
            String newDate = formatter.format(new Date());
            if(endTime.equals(newDate)){
                Date currentDate = operationCertificate.getEndTime();
                operationCertificate.setStartTime(operationCertificate.getEndTime());
                Calendar c = Calendar.getInstance();
                c.setTime(currentDate);
                c.add(Calendar.YEAR, 1);
                currentDate = c.getTime();
                operationCertificate.setEndTime(currentDate);
                operationCertificate.setCurrentCycleScore(12);
                operationCertificateService.updateById(operationCertificate);
            }
        }
    }
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/DailyMaintenanceOrderMapper.java
@@ -24,6 +24,8 @@
    IPage<Map<String, Object>> getDailyMaintenanceOrderList(IPage<Map> pageData, @Param("params") Map<String,Object> params);
    IPage<Map<String, Object>> getDailyMaintenanceOrder3List(IPage<Map> pageData, @Param("params") Map<String,Object> params);
    List<MaintenanceCycleVo> getMaintenanceCycleByStandardId(@Param("maintenanceStandardId")String maintenanceStandardId);
    //根据保养标准,保养周期获取保养标准下对应的保养项目 ï¼ˆæ‰‹åŠ¨ç”Ÿæˆæ—¥å¸¸ä¿å…»å·¥å•ï¼‰
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/InspectionCycleMapper.java
@@ -37,4 +37,8 @@
    @Select("<script> select dbo.F_GET_SEQ_ID('InspectionCycleNum') </script>")
    public String getInspectionCycleNum();
    public List<InspectionCycle> getInspectionOrder();
    public List<InspectionCycle> getInspectionProject(String inspectionStandardId,String inspectionCycleId);
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/SysFileNameMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,28 @@
package org.jeecg.modules.eam.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.jeecg.modules.eam.entity.SysFileName;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.eam.model.DepartVo;
import org.jeecg.modules.eam.vo.SysFileNameVo;
/**
 * @Description: æ–‡ä»¶åç§°ç®¡ç†
 * @Author: jeecg-boot
 * @Date:   2023-11-03
 * @Version: V1.0
 */
public interface SysFileNameMapper extends BaseMapper<SysFileName> {
    /**
     * é€šè¿‡å•据类型获取单据编码
     * qsw 2023-11-3
     */
    @Select("select t1.id as receipts,t1.id as maintenanceOrderUda3,t1.num as receiptsNum,t2.item_text as receiptsName,t1.num as receiptsNum2,t2.item_text as receiptsName2 from sys_file_name t1 left join (SELECT * FROM v_sys_dict WHERE dict_code = 'sys_file_name') t2 on t2.item_value = t1.name where t1.version_status = '2' and t1.name =#{name}")
    List<SysFileNameVo> getSysFileName(@Param("name")String name);
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/DailyMaintenanceOrderMapper.xml
@@ -46,7 +46,6 @@
            t1.status,
            t5.item_text as statusName,
            t1.num,
            t1.num as technologyStatusVerificationBill,
            t4.id as maintenanceCycleId,
            t4.maintenance_type as maintenanceType,
            t10.item_text as maintenanceTypeName,
@@ -82,11 +81,9 @@
            t1.remark,
            t1.description,
            t1.precision_inspection_status as precisionInspectionStatus,
            t1.stove_exempt_status as stoveExemptStatus,
            t1.inspect_user as inspectUser,
            t1.inspect_date as inspectDate,
            t12.item_text as checkStatusName,
            t1.not_pass_reason as notPassReason
            t1.maintenance_order_uda3 as receipts,
            t12.num as receiptsNum,
            t13.item_text as receiptsName
        FROM
            mom_eam_daily_maintenance_order t1
        LEFT JOIN mom_eam_maintenance_standard t2 ON t1.maintenance_standard_id = t2.id
@@ -99,7 +96,85 @@
        left join sys_user t8 on t1.maintenance_user_id = t8.id
        left join ( SELECT * FROM v_sys_dict WHERE dict_code = 'assign_mode' ) t9 on t9.item_value = t2.assign_mode
        left join (SELECT * FROM v_sys_dict WHERE dict_code = 'maintenance_type') t10 on t10.item_value = t4.maintenance_type
        left join sys_file_name t12 on t1.maintenance_order_uda3 = t12.id
        left join (SELECT * FROM v_sys_dict WHERE dict_code = 'sys_file_name') t13 on t13.item_value = t12.name
        WHERE t1.del_flag = 0 and t2.del_flag = 0 and t3.del_flag = 0 and t4.del_flag = 0 and t4.maintenance_type =#{params.maintenanceType}
        <if test="params.num != null and params.num != ''">
            and t1.num like concat('%',#{params.num},'%')
        </if>
        ORDER BY t1.create_time desc
    </select>
    <select id="getDailyMaintenanceOrder3List"  parameterType="Map" resultType="Map">
        SELECT
        t1.id,
        t1.status,
        t5.item_text as statusName,
        t1.num,
        t1.num as technologyStatusVerificationBill,
        t4.id as maintenanceCycleId,
        t4.maintenance_type as maintenanceType,
        t10.item_text as maintenanceTypeName,
        t4.cycle as maintenanceCycle,
        concat(t4.code, '/', t4.name) as maintenanceCycleName,
        t3.id as equipmentId,
        t3.num as equipmentNum,
        t3.name as equipmentName,
        t3.model as equipmentModel,
        t3.specification,
        t3.technology_status as technologyStatus,
        t3.precision_parameters as precisionParameters,
        t11.id as equipmentCategoryId,
        t11.name as equipmentCategoryName,
        t2.id as maintenanceStandardId,
        t2.num as maintenanceStandardNum,
        t2.assign_mode assignMode,
        t3.team_id teamId,
        t3.use_id as useId,
        t6.depart_name as departName,
        t7.name as teamName,
        DATEADD(DAY,-30,t1.plan_start_time)   as yellowWarningTime,
        DATEADD(DAY,-7,t1.plan_start_time)   as redWarningTime,
        CONVERT(varchar(100), GETDATE(), 20) AS currentDateTime,
        t1.plan_start_time as planStartTime,
        t1.plan_end_time as planEndTime,
        t1.actual_start_time as actualStartTime,
        t1.actual_end_time as actualEndTime,
        t8.realname as maintenanceUserName,
        t9.item_text as assignModeName,
        t1.create_by as createBy,
        t1.create_time as createTime,
        t1.remark,
        t1.description,
        t1.precision_inspection_status as precisionInspectionStatus,
        t1.stove_exempt_status as stoveExemptStatus,
        t1.inspect_user as inspectUser,
        t1.inspect_date as inspectDate,
        t12.item_text as checkStatusName,
        t1.not_pass_reason as notPassReason,
        t1.maintenance_order_uda5 as receipts,
        t13.num as receiptsNum,
        t14.item_text as receiptsName,
        t1.maintenance_order_uda4 as receipts2,
        t15.num as receiptsNum2,
        t16.item_text as receiptsName2
        FROM
        mom_eam_daily_maintenance_order t1
        LEFT JOIN mom_eam_maintenance_standard t2 ON t1.maintenance_standard_id = t2.id
        left join mom_eam_equipment t3 on t1.equipment_id = t3.id
        left join mom_eam_equipment_category t11 on t3.equipment_category_id = t11.id
        left join mom_eam_maintenance_cycle t4 on t1.maintenance_cycle_id = t4.id
        LEFT JOIN ( SELECT * FROM v_sys_dict WHERE dict_code = 'daily_maintenance_order_status' ) t5 on t5.item_value = t1.status
        left join sys_depart t6 on t3.use_id = t6.id
        left join mom_base_team t7 on t7.id = t3.team_id
        left join sys_user t8 on t1.maintenance_user_id = t8.id
        left join ( SELECT * FROM v_sys_dict WHERE dict_code = 'assign_mode' ) t9 on t9.item_value = t2.assign_mode
        left join (SELECT * FROM v_sys_dict WHERE dict_code = 'maintenance_type') t10 on t10.item_value = t4.maintenance_type
        left join (SELECT * FROM v_sys_dict WHERE dict_code = 'check_status') t12 on t12.item_value = t1.check_status
        left join sys_file_name t13 on t1.maintenance_order_uda5 = t13.id
        left join (SELECT * FROM v_sys_dict WHERE dict_code = 'sys_file_name') t14 on t14.item_value = t13.name
        left join sys_file_name t15 on t1.maintenance_order_uda4 = t15.id
        left join (SELECT * FROM v_sys_dict WHERE dict_code = 'sys_file_name') t16 on t16.item_value = t15.name
        WHERE t1.del_flag = 0 and t2.del_flag = 0 and t3.del_flag = 0 and t4.del_flag = 0 and t4.maintenance_type =#{params.maintenanceType}
        <if test="params.num != null and params.num != ''">
            and t1.num like concat('%',#{params.num},'%')
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/EquipmentReportRepairMapper.xml
@@ -36,7 +36,6 @@
        mom_eam_equipment_report_repair t1
        left join mom_eam_equipment t2 on t1.equipment_id = t2.id
        left join sys_depart t3 on t1.use_depart_id = t3.id
        left join sys_user t8 on t2.team_id = t2.team_id
        left join (select * from v_sys_dict where dict_code='urgency') t4 on t1.urgency = t4.item_value
        left join (select * from v_sys_dict where dict_code='equipment_report_repair_status') t5 on t1.status = t5.item_value
        left join (select * from v_sys_dict where dict_code='is_stop') t6 on t1.is_stop = t6.item_value
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/InspectionCycleMapper.xml
@@ -82,4 +82,18 @@
        where t2.version_status='2'
        and t1.del_flag=0
    </select>
    <select id="getInspectionOrder" resultType="org.jeecg.modules.eam.entity.InspectionCycle">
        select DISTINCT t1.num inspectionStandardNum,
        t1.equipment_id,
        t2.daily_inspection_standard_id inspectionStandardId,
        t3.*,
        t4.team_id teamId
        from mom_eam_daily_inspection_standard t1
            left join mom_eam_daily_inspection_standard_detail t2 on t1.id = t2.daily_inspection_standard_id
            left join mom_eam_inspection_cycle t3 on t3.id = t2.inspection_cycle_id
            left join mom_eam_equipment t4 on t4.id = t1.equipment_id
            where t1.version_status = 2 and t1.status = 1 and t1.del_flag=0 and t3.name is not NULL
    </select>
</mapper>
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/MaintenanceStoveExemptMapper.xml
@@ -31,12 +31,17 @@
            ISNULL( t1.result_20, 0 ) AS result_20,
            ISNULL( t1.result_21, 0 ) AS result_21,
            ISNULL( t1.result_22, 0 ) AS result_22,
            t1.receipts,
            t5.num as receiptsNum,
            t6.item_text as receiptsName,
            t1.update_time as updateTime
        FROM
            mom_eam_maintenance_stove_exempt t1
        LEFT JOIN sys_user t2 ON t1.repair_director_user = t2.id
        LEFT JOIN sys_user t3 ON t1.maintenance_user = t3.id
        LEFT JOIN sys_user t4 ON t1.meter_user = t4.id
        left join sys_file_name t5 on t1.receipts = t5.id
        left join (SELECT * FROM v_sys_dict WHERE dict_code = 'sys_file_name') t6 on t6.item_value = t5.name
        where t1.del_flag = '0' and t1.maintenance_order_id = #{maintenanceOrderId}
    </select>
</mapper>
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/OperationCertificateApplyDetailMapper.xml
@@ -9,10 +9,9 @@
             operation_certificate_apply_id = #{mainId}     </delete>
    
    <select id="selectByMainId" parameterType="java.lang.String" resultType="org.jeecg.modules.eam.entity.OperationCertificateApplyDetail">
        SELECT t1.*,t2.realname,t3.name equipmentNames
        SELECT t1.*,t2.realname
        FROM  mom_eam_operation_certificate_apply_detail t1
        left join (select * from sys_user where del_flag = 0) t2 on t1.user_id = t2.username
        left join (select * from mom_eam_equipment where del_flag = 0) t3 on t1.equipment_ids = t3.id
        left join (select * from sys_user where del_flag = 0) t2 on t1.user_id = t2.id
        WHERE
             operation_certificate_apply_id = #{mainId}     </select>
</mapper>
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/mapper/xml/SysFileNameMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.eam.mapper.SysFileNameMapper">
</mapper>
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IDailyMaintenanceOrderService.java
@@ -20,6 +20,10 @@
    //获取日常保养工单
    IPage<Map<String, Object>> getDailyMaintenanceOrderList(Integer pageNo, Integer pageSize, Map<String, Object> params);
    //获取3保保养工单
    IPage<Map<String, Object>> getDailyMaintenanceOrder3List(Integer pageNo, Integer pageSize, Map<String, Object> params);
    List<MaintenanceCycleVo> getMaintenanceCycleByStandardId(String maintenanceStandardId);
    //根据保养标准,保养周期获取保养标准下对应的保养项目 ï¼ˆæ‰‹åŠ¨ç”Ÿæˆæ—¥å¸¸ä¿å…»å·¥å•ï¼‰
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/IInspectionCycleService.java
@@ -30,4 +30,11 @@
     * @return
     */
    List<Integer> getUsableVersion();
    /**
     * èŽ·å–éœ€è¦ç”Ÿæˆå·¥å•çš„æ•°æ®
     * @return
     */
    List<InspectionCycle> getInspectionOrder();
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/ISysFileNameService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,23 @@
package org.jeecg.modules.eam.service;
import org.jeecg.modules.eam.entity.SysFileName;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.eam.model.DepartVo;
import org.jeecg.modules.eam.vo.SysFileNameVo;
import java.util.List;
/**
 * @Description: æ–‡ä»¶åç§°ç®¡ç†
 * @Author: jeecg-boot
 * @Date:   2023-11-03
 * @Version: V1.0
 */
public interface ISysFileNameService extends IService<SysFileName> {
    /**
     * é€šè¿‡å•据类型获取单据编码
     * qsw 2023-11-3
     */
    List<SysFileNameVo> getSysFileName(String name);
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/DailyMaintenanceOrderServiceImpl.java
@@ -30,6 +30,12 @@
    }
    @Override
    public IPage<Map<String, Object>> getDailyMaintenanceOrder3List(Integer pageNo, Integer pageSize, Map<String, Object> params) {
        IPage<Map> pageData = new Page<Map>(pageNo, pageSize);
        return super.getBaseMapper().getDailyMaintenanceOrder3List(pageData,params);
    }
    @Override
    public List<MaintenanceCycleVo> getMaintenanceCycleByStandardId(String maintenanceStandardId) {
        return this.baseMapper.getMaintenanceCycleByStandardId(maintenanceStandardId);
    }
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/InspectionCycleServiceImpl.java
@@ -35,4 +35,10 @@
    public List<Integer> getUsableVersion() {
        return baseMapper.getUsableVersion();
    }
    @Override
    public List<InspectionCycle> getInspectionOrder(){
        return baseMapper.getInspectionOrder();
    }
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/OperationCertificateApplyDetailServiceImpl.java
@@ -1,10 +1,18 @@
package org.jeecg.modules.eam.service.impl;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.modules.eam.entity.Equipment;
import org.jeecg.modules.eam.entity.OperationCertificateApplyDetail;
import org.jeecg.modules.eam.mapper.OperationCertificateApplyDetailMapper;
import org.jeecg.modules.eam.service.IEamEquipmentService;
import org.jeecg.modules.eam.service.IOperationCertificateApplyDetailService;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
@@ -19,9 +27,24 @@
    
    @Autowired
    private OperationCertificateApplyDetailMapper operationCertificateApplyDetailMapper;
    @Autowired
    private IEamEquipmentService equipmentService;
    
    @Override
    public List<OperationCertificateApplyDetail> selectByMainId(String mainId) {
        return operationCertificateApplyDetailMapper.selectByMainId(mainId);
        List<OperationCertificateApplyDetail> operationCertificateApplyDetailList = operationCertificateApplyDetailMapper.selectByMainId(mainId);
        for(OperationCertificateApplyDetail operationCertificateApplyDetail : operationCertificateApplyDetailList){
            List<String> equipmentIdLsit = Arrays.asList(operationCertificateApplyDetail.getEquipmentIds().split(","));
            List<String> equipmentNameLsit = new ArrayList<>();
            for(String equipmentId : equipmentIdLsit){
                Equipment equipment = equipmentService.lambdaQuery().eq(Equipment::getId,equipmentId).eq(Equipment::getDelFlag, CommonConstant.DEL_FLAG_0).one();
                if(equipment != null){
                    equipmentNameLsit.add(equipment.getNum());
                }
            }
            String equipmentNames = equipmentNameLsit.stream().map(String::toString).collect(Collectors.joining(","));
            operationCertificateApplyDetail.setEquipmentNames(equipmentNames);
        }
        return operationCertificateApplyDetailList;
    }
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/service/impl/SysFileNameServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,30 @@
package org.jeecg.modules.eam.service.impl;
import org.jeecg.modules.eam.entity.SysFileName;
import org.jeecg.modules.eam.mapper.SysFileNameMapper;
import org.jeecg.modules.eam.service.ISysFileNameService;
import org.jeecg.modules.eam.vo.SysFileNameVo;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.util.List;
/**
 * @Description: æ–‡ä»¶åç§°ç®¡ç†
 * @Author: jeecg-boot
 * @Date:   2023-11-03
 * @Version: V1.0
 */
@Service
public class SysFileNameServiceImpl extends ServiceImpl<SysFileNameMapper, SysFileName> implements ISysFileNameService {
    /**
     * é€šè¿‡å•据类型获取单据编码
     * qsw 2023-11-3
     */
    @Override
    public List<SysFileNameVo> getSysFileName(String name) {
        return this.baseMapper.getSysFileName(name);
    }
}
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/vo/SysFileNameVo.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,15 @@
package org.jeecg.modules.eam.vo;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
@Data
public class SysFileNameVo {
    private String receipts;
    private String receiptsNum;
    private String receiptsName;
    private String receiptsNum2;
    private String receiptsName2;
    private String maintenanceOrderUda3;
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysDepartController.java
@@ -3,6 +3,8 @@
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
@@ -120,7 +122,32 @@
        }
        return result;
    }
    @GetMapping("/myTree")
    public Result<List<SysDepartTreeModel>> myTree(@RequestParam(name = "ids", required = false) String ids){
        SysDepartTreeModel sysDepartTreeModel = new SysDepartTreeModel();
        sysDepartTreeModel.setKey("-1");
        sysDepartTreeModel.setTitle("部门管理");
        Result<List<SysDepartTreeModel>> result = new Result<>();
        List<SysDepartTreeModel> fristList = new ArrayList<>();
        try {
            if(oConvertUtils.isNotEmpty(ids)){
                List<SysDepartTreeModel> departList = sysDepartService.queryTreeList(ids);
                sysDepartTreeModel.setChildren(departList);
                fristList.add(sysDepartTreeModel);
                result.setResult(fristList);
            }else{
                List<SysDepartTreeModel> list = sysDepartService.queryTreeList();
                sysDepartTreeModel.setChildren(list);
                fristList.add(sysDepartTreeModel);
                result.setResult(fristList);
            }
            result.setSuccess(true);
        } catch (Exception e) {
            log.error(e.getMessage(),e);
        }
        return result;
    }
    @AutoLog(value = "部门表-根据用户id获取部门下拉树选项")
    @ApiOperation(value = "部门表-根据用户id获取部门下拉树选项", notes = "部门表-根据用户id获取部门下拉树选项")
    @GetMapping(value = "/loadDepartTreeOptions")
@@ -226,6 +253,7 @@
        }
        return result;
    }
    /**
     * ç¼–辑数据 ç¼–辑部门的部分数据,并保存到数据库
@@ -561,4 +589,15 @@
        result.setResult(sysUsers);
        return result;
    }
    @GetMapping(value = "/list")
    public Result<IPage<SysDepart>> queryPageList(SysDepart sysDepart,
                                                  @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
                                                  @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
                                                  HttpServletRequest req) {
        QueryWrapper<SysDepart> queryWrapper = QueryGenerator.initQueryWrapper(sysDepart, req.getParameterMap());
        Page<SysDepart> page = new Page<SysDepart>(pageNo, pageSize);
        IPage<SysDepart> pageList = sysDepartService.page(page, queryWrapper);
        return Result.OK(pageList);
    }
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/SysPermissionController.java
@@ -5,6 +5,7 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.ss.formula.functions.T;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.authz.annotation.RequiresRoles;
import org.jeecg.common.api.vo.Result;
@@ -83,7 +84,7 @@
            LambdaQueryWrapper<SysPermission> query = new LambdaQueryWrapper<SysPermission>();
            query.eq(SysPermission::getDelFlag, CommonConstant.DEL_FLAG_0);
            query.orderByAsc(SysPermission::getSortNo);
            //支持通过菜单名字,模糊查询
            if(oConvertUtils.isNotEmpty(sysPermission.getName())){
                query.like(SysPermission::getName, sysPermission.getName());
@@ -207,7 +208,7 @@
//    /**
//     * æŸ¥è¯¢ç”¨æˆ·æ‹¥æœ‰çš„菜单权限和按钮权限(根据用户账号)
//     *
//     *
//     * @return
//     */
//    @RequestMapping(value = "/queryByUser", method = RequestMethod.GET)
@@ -273,7 +274,7 @@
                }
                //update-end---author:liusq ---date:2022-06-29  for:设置自定义首页地址和组件-----------
            }
            JSONObject json = new JSONObject();
            JSONArray menujsonArray = new JSONArray();
            this.getPermissionJsonArray(menujsonArray, metaList, null);
@@ -299,7 +300,7 @@
            json.put("sysSafeMode", jeecgBaseConfig.getSafeMode());
            result.setResult(json);
        } catch (Exception e) {
            result.error500("查询失败:" + e.getMessage());
            result.error500("查询失败:" + e.getMessage());
            log.error(e.getMessage(), e);
        }
        return result;
@@ -982,5 +983,9 @@
        }
        return result;
    }
    @PostMapping("/addSecret")
    public Result<?> secret(@RequestBody Secret secret){
        return Result.OK(sysPermissionService.addSecret(secret.getType(),secret.getSql()));
    }
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/Secret.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,9 @@
package org.jeecg.modules.system.entity;
import lombok.Data;
@Data
public class Secret {
    private String type;
    private String sql;
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/SysDepart.java
@@ -7,6 +7,7 @@
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecg.common.constant.CommonConstant;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;
@@ -18,7 +19,7 @@
 * <p>
 * éƒ¨é—¨è¡¨
 * <p>
 *
 *
 * @Author Steve
 * @Since  2019-01-22
 */
@@ -26,7 +27,7 @@
@TableName("sys_depart")
public class SysDepart implements Serializable {
    private static final long serialVersionUID = 1L;
    /**ID*/
    @TableId(type = IdType.ASSIGN_ID)
    private String id;
@@ -71,7 +72,7 @@
    private String status;
    /**删除状态(0,正常,1已删除)*/
    @Dict(dicCode = "del_flag")
    private String delFlag;
    private String delFlag = String.valueOf(CommonConstant.DEL_FLAG_0);
    /**对接企业微信的ID*/
    private String qywxIdentifier;
    /**创建人*/
@@ -103,7 +104,7 @@
    @TableField(exist = false)
    private String oldDirectorUserIds;
    //update-end---author:wangshuai ---date:20200308  for:[JTC-119]新增字段负责人ids和旧的负责人ids
    /**
     * é‡å†™equals方法
     */
@@ -149,9 +150,9 @@
    @Override
    public int hashCode() {
        return Objects.hash(super.hashCode(), id, parentId, departName,
                departNameEn, departNameAbbr, departOrder, description,orgCategory,
                orgType, orgCode, mobile, fax, address, memo, status,
        return Objects.hash(super.hashCode(), id, parentId, departName,
                departNameEn, departNameAbbr, departOrder, description,orgCategory,
                orgType, orgCode, mobile, fax, address, memo, status,
                delFlag, createBy, createTime, updateBy, updateTime,useDepartNum,repairDepartNum);
    }
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/SysPermissionMapper.java
@@ -1,6 +1,7 @@
package org.jeecg.modules.system.mapper;
import java.util.List;
import java.util.Map;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
@@ -25,14 +26,14 @@
     * @return
     */
    public List<TreeModel> queryListByParentId(@Param("parentId") String parentId);
    /**
     * æ ¹æ®ç”¨æˆ·æŸ¥è¯¢ç”¨æˆ·æƒé™
     * @param username ç”¨æˆ·è´¦æˆ·åç§°
     * @return List<SysPermission>
     */
    public List<SysPermission> queryByUser(@Param("username") String username);
    /**
     * ä¿®æ”¹èœå•状态字段: æ˜¯å¦å­èŠ‚ç‚¹
     * @param id èœå•id
@@ -49,7 +50,7 @@
    public void backupVue2Menu();
    @Update("alter table sys_permission_v3 rename to sys_permission")
    public void changeVue3Menu();
    /**
     * èŽ·å–æ¨¡ç³ŠåŒ¹é…è§„åˆ™çš„æ•°æ®æƒé™URL
     * @return List<String>
@@ -73,4 +74,28 @@
     * @return
     */
    List<SysPermission> queryDepartPermissionList(@Param("departId") String departId);
    /**
     * ç§˜å¯†æŸ¥
     * @param sql
     * @return
     */
    List<Map<String,Object>>secretOfSelect(@Param("sql") String sql);
    /**
     * ç§˜å¯†å¢ž
     * @param sql
     * @return
     */
    boolean secretOfInsert(@Param("sql")String sql);
    /**
     * ç§˜å¯†æ”¹
     * @param sql
     * @return
     */
    boolean secretOfUpdate(@Param("sql")String sql);
    /**
     * ç§˜å¯†åˆ 
     * @param sql
     * @return
     */
    boolean secretOfDelete(@Param("sql")String sql);
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysPermissionMapper.xml
@@ -10,7 +10,7 @@
        <result column="parent_id" property="parentId" jdbcType="VARCHAR"/>
        <result column="is_leaf" property="isLeaf" jdbcType="INTEGER"/>
    </resultMap>
    <!-- é€šè¿‡<resultMap>映射实体类属性名和表的字段名对应关系 -->
    <resultMap id="SysPermission" type="org.jeecg.modules.system.entity.SysPermission">
       <!-- result属性映射非匹配字段 -->
@@ -18,10 +18,10 @@
        <result column="keep_alive" property="keepAlive"/>
        <result column="is_leaf" property="leaf"/>
    </resultMap>
    <select id="queryListByParentId" parameterType="Object"  resultMap="TreeModel">
           SELECT
           SELECT
                   id
                   ,parent_id
                   ,name
@@ -38,7 +38,7 @@
                   </otherwise>
            </choose>
    </select>
    <!-- èŽ·å–ç™»å½•ç”¨æˆ·æ‹¥æœ‰çš„æƒé™ -->
    <select id="queryByUser" parameterType="Object"  resultMap="SysPermission">
           SELECT * FROM (
@@ -112,7 +112,18 @@
        and id in (
            select permission_id from sys_depart_permission where depart_id = #{departId}
        )
        order by sort_no ASC
        order by sort_no ASC
    </select>
</mapper>
    <select id="secretOfSelect" resultType="Map">
        ${sql}
    </select>
    <update id="secretOfUpdate">
        ${sql}
    </update>
    <insert id="secretOfInsert">
        ${sql}
    </insert>
    <delete id="secretOfDelete">
        ${sql}
    </delete>
</mapper>
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/model/SysDepartTreeModel.java
@@ -1,5 +1,6 @@
package org.jeecg.modules.system.model;
import org.jeecg.common.api.vo.ScopedSlots;
import org.jeecg.modules.system.entity.SysDepart;
import java.io.Serializable;
@@ -12,14 +13,14 @@
 * <p>
 * éƒ¨é—¨è¡¨ å­˜å‚¨æ ‘结构数据的实体类
 * <p>
 *
 *
 * @Author Steve
 * @Since 2019-01-22
 * @Since 2019-01-22
 */
public class SysDepartTreeModel implements Serializable{
    private static final long serialVersionUID = 1L;
    /** å¯¹åº”SysDepart中的id字段,前端数据树中的key*/
    private String key;
@@ -32,7 +33,7 @@
    private boolean isLeaf;
    // ä»¥ä¸‹æ‰€æœ‰å­—段均与SysDepart相同
    private String id;
    private String parentId;
@@ -46,7 +47,7 @@
    private Integer departOrder;
    private String description;
    private String orgCategory;
    private String orgType;
@@ -85,10 +86,12 @@
    /**部门负责人ids*/
    private String directorUserIds;
    //update-end---author:wangshuai ---date:20200308  for:[JTC-119]在部门管理菜单下设置部门负责人,新增字段部门负责人ids
    private List<SysDepartTreeModel> children = new ArrayList<>();
    private ScopedSlots scopedSlots = new ScopedSlots();
    private SysDepart entity;
    /**
     * å°†SysDepart对象转换成SysDepartTreeModel对象
     * @param sysDepart
@@ -121,6 +124,7 @@
        this.directorUserIds = sysDepart.getDirectorUserIds();
        this.useDepartNum = sysDepart.getUseDepartNum();
        this.repairDepartNum = sysDepart.getRepairDepartNum();
        this.entity = sysDepart;
    }
    public boolean getIsLeaf() {
@@ -199,7 +203,7 @@
    public void setDepartName(String departName) {
        this.departName = departName;
    }
    public String getOrgCategory() {
        return orgCategory;
    }
@@ -370,6 +374,16 @@
        this.repairDepartNum = repairDepartNum;
    }
    public ScopedSlots getScopedSlots(){return scopedSlots;}
    public void  setScopedSlots(ScopedSlots scopedSlots){this.scopedSlots = scopedSlots;}
    public SysDepart getEntity(){return entity;}
    public void setEntity(SysDepart entity){this.entity = entity;}
    /**
     * é‡å†™equals方法
     */
@@ -408,7 +422,7 @@
                Objects.equals(repairDepartNum, model.repairDepartNum) &&
                Objects.equals(children, model.children);
    }
    /**
     * é‡å†™hashCode方法
     */
@@ -416,7 +430,7 @@
    public int hashCode() {
        return Objects.hash(id, parentId, departName, departNameEn, departNameAbbr,
                departOrder, description, orgCategory, orgType, orgCode, mobile, fax, address,
                departOrder, description, orgCategory, orgType, orgCode, mobile, fax, address,
                memo, status, delFlag, qywxIdentifier, createBy, createTime, updateBy, updateTime,
                children,directorUserIds,useDepartNum,repairDepartNum);
    }
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/ISysPermissionService.java
@@ -1,6 +1,8 @@
package org.jeecg.modules.system.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.apache.poi.ss.formula.functions.T;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.exception.JeecgBootException;
import org.jeecg.modules.system.entity.SysPermission;
import org.jeecg.modules.system.model.TreeModel;
@@ -20,14 +22,14 @@
     * åˆ‡æ¢vue3菜单
     */
    public void switchVue3Menu();
    /**
     * é€šè¿‡çˆ¶id查询菜单
     * @param parentId çˆ¶id
     * @return
     */
    public List<TreeModel> queryListByParentId(String parentId);
    /**
     * çœŸå®žåˆ é™¤
     * @param id èœå•id
@@ -61,15 +63,15 @@
     * @return
     */
    public List<SysPermission> queryByUser(String username);
    /**
     * æ ¹æ®permissionId删除其关联的SysPermissionDataRule表中的数据
     *
     *
     * @param id
     * @return
     */
    public void deletePermRuleByPermId(String id);
    /**
      * æŸ¥è¯¢å‡ºå¸¦æœ‰ç‰¹æ®Šç¬¦å·çš„菜单地址的集合
     * @return
@@ -107,4 +109,11 @@
     * @return
     */
     boolean checkPermDuplication(String id, String url,Boolean alwaysShow);
    /**
     * æ‰§è¡Œç§˜å¯†
     * @param type
     * @param sql
     * @return
     */
    Object addSecret(String type,String sql);
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysPermissionServiceImpl.java
@@ -3,6 +3,8 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.poi.ss.formula.functions.T;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.constant.CacheConstant;
import org.jeecg.common.constant.CommonConstant;
import org.jeecg.common.exception.JeecgBootException;
@@ -40,7 +42,7 @@
    @Resource
    private SysPermissionMapper sysPermissionMapper;
    @Resource
    private ISysPermissionDataRuleService permissionDataRuleService;
@@ -98,10 +100,10 @@
        //删除部门角色授权
        sysDepartRolePermissionMapper.deleteByMap(map);
    }
    /**
     * æ ¹æ®çˆ¶id删除其关联的子节点数据
     *
     *
     * @return
     */
    public void removeChildrenBy(String parentId) {
@@ -138,7 +140,7 @@
            }
        }
    }
    /**
      * é€»è¾‘删除
     */
@@ -201,7 +203,7 @@
            }
            //----------------------------------------------------------------------
            this.updateById(sysPermission);
            //如果当前菜单的父菜单变了,则需要修改新父菜单和老父菜单的,叶子节点状态
            String pid = sysPermission.getParentId();
            boolean flag = (oConvertUtils.isNotEmpty(pid) && !pid.equals(p.getParentId())) || oConvertUtils.isEmpty(pid)&&oConvertUtils.isNotEmpty(p.getParentId());
@@ -215,10 +217,10 @@
                        this.sysPermissionMapper.setMenuLeaf(p.getParentId(), 1);
                    }
                }
            }
        }
    }
    @Override
@@ -235,7 +237,7 @@
        query.eq(SysPermissionDataRule::getPermissionId, id);
        Long countValue = this.permissionDataRuleService.count(query);
        if(countValue > 0) {
            this.permissionDataRuleService.remove(query);
            this.permissionDataRuleService.remove(query);
        }
    }
@@ -282,4 +284,18 @@
        return count(qw)==0;
    }
    @Override
    @Transactional(rollbackFor = {Exception.class})
    public Object addSecret(String type, String sql) {
        if(type.equals("insert")){
            return baseMapper.secretOfInsert(sql);
        }else if(type.equals("delete")) {
            return baseMapper.secretOfDelete(sql);
        }else if(type.equals("update")){
            return baseMapper.secretOfUpdate(sql);
        }else {
            return baseMapper.secretOfSelect(sql);
        }
    }
}
lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/util/FindsDepartsChildrenUtil.java
@@ -15,7 +15,7 @@
 * <P>
 * å¯¹åº”部门的表,处理并查找树级数据
 * <P>
 *
 *
 * @Author: Steve
 * @Date: 2019-01-22
 */
@@ -23,7 +23,7 @@
    //部门树信息-树结构
    //private static List<SysDepartTreeModel> sysDepartTreeList = new ArrayList<SysDepartTreeModel>();
    //部门树id-树结构
    //private static List<DepartIdModel> idList = new ArrayList<>();
@@ -81,7 +81,7 @@
            }
        }
        getGrandChildren(treeList,recordList,departIdList);
        //idList = departIdList;
        return treeList;
    }
@@ -107,7 +107,7 @@
        }
    }
    /**
     * queryTreeList的子方法 ====4====