lxzn-boot-base-core/pom.xml
@@ -219,6 +219,12 @@ <groupId>com.fasterxml.jackson.module</groupId> <artifactId>jackson-module-kotlin</artifactId> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-jexl3</artifactId> <version>${jexl.version}</version> <!-- ææ°ç¨³å®ç --> </dependency> </dependencies> </project> lxzn-boot-base-core/src/main/java/org/jeecg/common/constant/CommonConstant.java
@@ -598,4 +598,10 @@ Integer AUTO_FLAG_Y = 1; Integer AUTO_FLAG_N = 2; /** * åæºç±»å 0(计ååæº) 1 (é计ååæº) */ String CLOSE_TYPE_0 = "0"; String CLOSE_TYPE_1 = "1"; } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/constant/MdcConstant.java
ÎļþÒÑɾ³ý lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcDowntimeController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,163 @@ package org.jeecg.modules.mdc.controller; 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; 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.system.base.controller.JeecgController; import org.jeecg.common.system.vo.LoginUser; import org.jeecg.modules.mdc.dto.MdcDowntimeDto; import org.jeecg.modules.mdc.entity.MdcDowntime; import org.jeecg.modules.mdc.service.IMdcDowntimeService; import org.jeecg.modules.mdc.vo.MdcDowntimeVo; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.Arrays; /** * @Description: å¾ æºåæºè¡¨ * @Author: lius * @Date: 2025-03-12 */ @Slf4j @Api(tags = "å¾ æºåæºè¡¨") @RestController @RequestMapping("/mdc/mdcDowntime") public class MdcDowntimeController extends JeecgController<MdcDowntime, IMdcDowntimeService> { @Resource private IMdcDowntimeService mdcDowntimeService; /** * å页å表æ¥è¯¢ * * @param mdcDowntimeVo * @param pageNo * @param pageSize * @param req * @return */ @AutoLog(value = "å¾ æºåæºè¡¨-å页å表æ¥è¯¢") @ApiOperation(value = "å¾ æºåæºè¡¨-å页å表æ¥è¯¢", notes = "å¾ æºåæºè¡¨-å页å表æ¥è¯¢") @GetMapping(value = "/list") public Result<?> queryPageList(MdcDowntimeVo mdcDowntimeVo, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) { LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); String userId = user.getId(); Page<MdcDowntimeDto> page = new Page<MdcDowntimeDto>(pageNo, pageSize); IPage<MdcDowntimeDto> pageList = mdcDowntimeService.pageList(userId, page, mdcDowntimeVo, req); return Result.OK(pageList); } /** * æ·»å * * @param mdcDowntime * @return */ @AutoLog(value = "å¾ æºåæºè¡¨-æ·»å ") @ApiOperation(value = "å¾ æºåæºè¡¨-æ·»å ", notes = "å¾ æºåæºè¡¨-æ·»å ") @PostMapping(value = "/add") public Result<?> add(@RequestBody MdcDowntime mdcDowntime) { if (StringUtils.isBlank(mdcDowntime.getEquipmentIds())) { return Result.error("æªéæ©è®¾å¤ï¼è¯·ææ¥"); } if (CollectionUtils.isEmpty(mdcDowntime.getDateList())) { return Result.error("æªéæ©æ¥æï¼è¯·ææ¥"); } boolean flag = mdcDowntimeService.saveDowntime(mdcDowntime); return flag ? Result.ok("æ·»å æå") : Result.error("æ·»å 失败"); } /** * ç¼è¾ * * @param mdcDowntime * @return */ @AutoLog(value = "å¾ æºåæºè¡¨-ç¼è¾") @ApiOperation(value = "å¾ æºåæºè¡¨-ç¼è¾", notes = "å¾ æºåæºè¡¨-ç¼è¾") @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) public Result<?> edit(@RequestBody MdcDowntime mdcDowntime) { mdcDowntimeService.updateById(mdcDowntime); return Result.OK("ç¼è¾æå!"); } /** * éè¿idå é¤ * * @param id * @return */ @AutoLog(value = "å¾ æºåæºè¡¨-éè¿idå é¤") @ApiOperation(value = "å¾ æºåæºè¡¨-éè¿idå é¤", notes = "å¾ æºåæºè¡¨-éè¿idå é¤") @DeleteMapping(value = "/delete") public Result<?> delete(@RequestParam(name = "id", required = true) String id) { mdcDowntimeService.removeById(id); return Result.OK("å 餿å!"); } /** * æ¹éå é¤ * * @param ids * @return */ @AutoLog(value = "å¾ æºåæºè¡¨-æ¹éå é¤") @ApiOperation(value = "å¾ æºåæºè¡¨-æ¹éå é¤", notes = "å¾ æºåæºè¡¨-æ¹éå é¤") @DeleteMapping(value = "/deleteBatch") public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { this.mdcDowntimeService.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<?> queryById(@RequestParam(name = "id", required = true) String id) { MdcDowntime mdcDowntime = mdcDowntimeService.getById(id); return Result.OK(mdcDowntime); } /** * 导åºexcel * * @param request * @param mdcDowntime */ @RequestMapping(value = "/exportXls") public ModelAndView exportXls(HttpServletRequest request, MdcDowntime mdcDowntime) { return super.exportXls(request, mdcDowntime, MdcDowntime.class, "å¾ æºåæºè¡¨"); } /** * éè¿excelå¯¼å ¥æ°æ® * * @param request * @param response * @return */ @RequestMapping(value = "/importExcel", method = RequestMethod.POST) public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { return super.importExcel(request, response, MdcDowntime.class); } } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcDowntimeReasonController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,168 @@ package org.jeecg.modules.mdc.controller; 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.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.jeecg.common.api.vo.Result; import org.jeecg.common.aspect.annotation.AutoLog; import org.jeecg.common.system.base.controller.JeecgController; import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.modules.mdc.entity.MdcDowntimeReason; import org.jeecg.modules.mdc.service.IMdcDowntimeReasonService; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.Arrays; import java.util.List; /** * @Description: åæºåå 表 * @Author: lius * @Date: 2025-03-11 */ @Slf4j @Api(tags = "åæºåå 表") @RestController @RequestMapping("/mdc/mdcDowntimeReason") public class MdcDowntimeReasonController extends JeecgController<MdcDowntimeReason, IMdcDowntimeReasonService> { @Resource private IMdcDowntimeReasonService mdcDowntimeReasonService; /** * å页å表æ¥è¯¢ * * @param mdcDowntimeReason * @param pageNo * @param pageSize * @param req * @return */ @AutoLog(value = "åæºåå 表-å页å表æ¥è¯¢") @ApiOperation(value = "åæºåå 表-å页å表æ¥è¯¢", notes = "åæºåå 表-å页å表æ¥è¯¢") @GetMapping(value = "/list") public Result<?> queryPageList(MdcDowntimeReason mdcDowntimeReason, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) { QueryWrapper<MdcDowntimeReason> queryWrapper = QueryGenerator.initQueryWrapper(mdcDowntimeReason, req.getParameterMap()); Page<MdcDowntimeReason> page = new Page<MdcDowntimeReason>(pageNo, pageSize); IPage<MdcDowntimeReason> pageList = mdcDowntimeReasonService.page(page, queryWrapper); return Result.OK(pageList); } /** * æ·»å * * @param mdcDowntimeReason * @return */ @AutoLog(value = "åæºåå 表-æ·»å ") @ApiOperation(value = "åæºåå 表-æ·»å ", notes = "åæºåå 表-æ·»å ") @PostMapping(value = "/add") public Result<?> add(@RequestBody MdcDowntimeReason mdcDowntimeReason) { mdcDowntimeReasonService.save(mdcDowntimeReason); return Result.OK("æ·»å æåï¼"); } /** * ç¼è¾ * * @param mdcDowntimeReason * @return */ @AutoLog(value = "åæºåå 表-ç¼è¾") @ApiOperation(value = "åæºåå 表-ç¼è¾", notes = "åæºåå 表-ç¼è¾") @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) public Result<?> edit(@RequestBody MdcDowntimeReason mdcDowntimeReason) { mdcDowntimeReasonService.updateById(mdcDowntimeReason); return Result.OK("ç¼è¾æå!"); } /** * éè¿idå é¤ * * @param id * @return */ @AutoLog(value = "åæºåå 表-éè¿idå é¤") @ApiOperation(value = "åæºåå 表-éè¿idå é¤", notes = "åæºåå 表-éè¿idå é¤") @DeleteMapping(value = "/delete") public Result<?> delete(@RequestParam(name = "id", required = true) String id) { mdcDowntimeReasonService.removeById(id); return Result.OK("å 餿å!"); } /** * æ¹éå é¤ * * @param ids * @return */ @AutoLog(value = "åæºåå 表-æ¹éå é¤") @ApiOperation(value = "åæºåå 表-æ¹éå é¤", notes = "åæºåå 表-æ¹éå é¤") @DeleteMapping(value = "/deleteBatch") public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { this.mdcDowntimeReasonService.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<?> queryById(@RequestParam(name = "id", required = true) String id) { MdcDowntimeReason mdcDowntimeReason = mdcDowntimeReasonService.getById(id); return Result.OK(mdcDowntimeReason); } /** * 导åºexcel * * @param request * @param mdcDowntimeReason */ @RequestMapping(value = "/exportXls") public ModelAndView exportXls(HttpServletRequest request, MdcDowntimeReason mdcDowntimeReason) { return super.exportXls(request, mdcDowntimeReason, MdcDowntimeReason.class, "åæºåå 表"); } /** * éè¿excelå¯¼å ¥æ°æ® * * @param request * @param response * @return */ @RequestMapping(value = "/importExcel", method = RequestMethod.POST) public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { return super.importExcel(request, response, MdcDowntimeReason.class); } /** * æ ¹æ®åæºç±»åè·ååæºåå å表 * * @param downtimeType * @return */ @AutoLog(value = "åæºåå 表-æ ¹æ®åæºç±»åè·ååæºåå å表") @ApiOperation(value = "åæºåå 表-æ ¹æ®åæºç±»åè·ååæºåå å表", notes = "åæºåå 表-æ ¹æ®åæºç±»åè·ååæºåå å表") @GetMapping(value = "/downtimeReasonList") public Result<?> downtimeReasonList(@RequestParam(name = "downtimeType", required = true) String downtimeType) { List<MdcDowntimeReason> result = mdcDowntimeReasonService.downtimeReasonList(downtimeType); return Result.OK(result); } } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcEquipmentTypeController.java
@@ -8,9 +8,7 @@ import org.jeecg.common.api.vo.Result; import org.jeecg.common.aspect.annotation.AutoLog; import org.jeecg.common.system.base.controller.JeecgController; import org.jeecg.modules.mdc.entity.MdcDriveTypeParamConfig; import org.jeecg.modules.mdc.entity.MdcEquipmentType; import org.jeecg.modules.mdc.service.IMdcDriveTypeParamConfigService; import org.jeecg.modules.mdc.service.IMdcEquipmentTypeService; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcOeeInfoController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,100 @@ package org.jeecg.modules.mdc.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; 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.system.base.controller.JeecgController; import org.jeecg.common.system.vo.LoginUser; import org.jeecg.modules.mdc.entity.MdcOeeInfo; import org.jeecg.modules.mdc.service.IMdcOeeInfoService; import org.jeecg.modules.mdc.vo.MdcOeeComputeVo; import org.jeecg.modules.mdc.vo.MdcOeeInfoVo; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; /** * @Description: OEE表 * @Author: lius * @Date: 2024-12-12 */ @Slf4j @Api(tags = "OEE表") @RestController @RequestMapping("/mdc/mdcOeeInfo") public class MdcOeeInfoController extends JeecgController<MdcOeeInfo, IMdcOeeInfoService> { @Resource private IMdcOeeInfoService mdcOeeInfoService; /** * å页å表æ¥è¯¢ * * @param mdcOeeInfoVo * @param pageNo * @param pageSize * @param req * @return */ @AutoLog(value = "OEE表-å页å表æ¥è¯¢") @ApiOperation(value = "OEE表-å页å表æ¥è¯¢", notes = "OEE表-å页å表æ¥è¯¢") @GetMapping(value = "/list") public Result<?> queryPageList(MdcOeeInfoVo mdcOeeInfoVo, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) { LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); String userId = user.getId(); Page<MdcOeeInfo> page = new Page<MdcOeeInfo>(pageNo, pageSize); IPage<MdcOeeInfo> pageList = mdcOeeInfoService.pageList(userId, page, mdcOeeInfoVo, req); return Result.OK(pageList); } /** * éè¿idæ¥è¯¢ * * @param id * @return */ @AutoLog(value = "OEE表-éè¿idæ¥è¯¢") @ApiOperation(value = "OEE表-éè¿idæ¥è¯¢", notes = "OEE表-éè¿idæ¥è¯¢") @GetMapping(value = "/queryById") public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { MdcOeeInfo mdcOeeInfo = mdcOeeInfoService.getById(id); return Result.OK(mdcOeeInfo); } /** * 导åºexcel * * @param request * @param mdcOeeInfoVo */ @RequestMapping(value = "/exportXls") public ModelAndView exportXls(HttpServletRequest request, MdcOeeInfoVo mdcOeeInfoVo) { LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); String userId = user.getId(); return mdcOeeInfoService.exportXls(userId, mdcOeeInfoVo); } /** * 计ç®OEE * * @return */ @AutoLog(value = "OEE表-计ç®OEE") @ApiOperation(value = "OEE表-计ç®OEE", notes = "OEE表-计ç®OEE") @PostMapping(value = "/computeOee") public Result<?> computeOee(@RequestBody MdcOeeComputeVo mdcOeeComputeVo) { mdcOeeInfoService.computeOee(mdcOeeComputeVo); return Result.OK("è®¡ç®æåï¼"); } } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcParameterController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,126 @@ package org.jeecg.modules.mdc.controller; import java.util.Arrays; import javax.servlet.http.HttpServletRequest; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.jeecg.common.api.vo.Result; import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.common.aspect.annotation.AutoLog; import lombok.extern.slf4j.Slf4j; import org.jeecg.common.system.base.controller.JeecgController; import org.jeecg.modules.mdc.entity.MdcParameter; import org.jeecg.modules.mdc.service.IMdcParameterService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; /** * @Description: mdcç®æ³å ¬å¼ * @Author: lius * @Date: 2025-08-13 * @Version: V1.0 */ @Slf4j @Api(tags = "mdcç®æ³å ¬å¼") @RestController @RequestMapping("/mdc/mdcParameter") public class MdcParameterController extends JeecgController<MdcParameter, IMdcParameterService> { @Autowired private IMdcParameterService mdcParameterService; /** * å页å表æ¥è¯¢ * * @param mdcParameter * @param pageNo * @param pageSize * @param req * @return */ @AutoLog(value = "mdcç®æ³å ¬å¼-å页å表æ¥è¯¢") @ApiOperation(value = "mdcç®æ³å ¬å¼-å页å表æ¥è¯¢", notes = "mdcç®æ³å ¬å¼-å页å表æ¥è¯¢") @GetMapping(value = "/list") public Result<?> queryPageList(MdcParameter mdcParameter, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) { QueryWrapper<MdcParameter> queryWrapper = QueryGenerator.initQueryWrapper(mdcParameter, req.getParameterMap()); Page<MdcParameter> page = new Page<MdcParameter>(pageNo, pageSize); IPage<MdcParameter> pageList = mdcParameterService.page(page, queryWrapper); return Result.OK(pageList); } /** * æ·»å * * @param mdcParameter * @return */ @AutoLog(value = "mdcç®æ³å ¬å¼-æ·»å ") @ApiOperation(value = "mdcç®æ³å ¬å¼-æ·»å ", notes = "mdcç®æ³å ¬å¼-æ·»å ") @PostMapping(value = "/add") public Result<?> add(@RequestBody MdcParameter mdcParameter) { mdcParameterService.save(mdcParameter); return Result.OK("æ·»å æåï¼"); } /** * ç¼è¾ * * @param mdcParameter * @return */ @AutoLog(value = "mdcç®æ³å ¬å¼-ç¼è¾") @ApiOperation(value = "mdcç®æ³å ¬å¼-ç¼è¾", notes = "mdcç®æ³å ¬å¼-ç¼è¾") @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) public Result<?> edit(@RequestBody MdcParameter mdcParameter) { mdcParameterService.updateById(mdcParameter); return Result.OK("ç¼è¾æå!"); } /** * éè¿idå é¤ * * @param id * @return */ @AutoLog(value = "mdcç®æ³å ¬å¼-éè¿idå é¤") @ApiOperation(value = "mdcç®æ³å ¬å¼-éè¿idå é¤", notes = "mdcç®æ³å ¬å¼-éè¿idå é¤") @DeleteMapping(value = "/delete") public Result<?> delete(@RequestParam(name = "id", required = true) String id) { mdcParameterService.removeById(id); return Result.OK("å 餿å!"); } /** * æ¹éå é¤ * * @param ids * @return */ @AutoLog(value = "mdcç®æ³å ¬å¼-æ¹éå é¤") @ApiOperation(value = "mdcç®æ³å ¬å¼-æ¹éå é¤", notes = "mdcç®æ³å ¬å¼-æ¹éå é¤") @DeleteMapping(value = "/deleteBatch") public Result<?> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { this.mdcParameterService.removeByIds(Arrays.asList(ids.split(","))); return Result.OK("æ¹éå 餿åï¼"); } /** * éè¿idæ¥è¯¢ * * @param id * @return */ @AutoLog(value = "mdcç®æ³å ¬å¼-éè¿idæ¥è¯¢") @ApiOperation(value = "mdcç®æ³å ¬å¼-éè¿idæ¥è¯¢", notes = "mdcç®æ³å ¬å¼-éè¿idæ¥è¯¢") @GetMapping(value = "/queryById") public Result<?> queryById(@RequestParam(name = "id", required = true) String id) { MdcParameter mdcParameter = mdcParameterService.getById(id); return Result.OK(mdcParameter); } } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/dto/MdcDowntimeDto.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,16 @@ package org.jeecg.modules.mdc.dto; import lombok.Data; import org.jeecg.modules.mdc.entity.MdcDowntime; /** * @Author: Lius * @CreateTime: 2025-03-17 * @Description: å¾ æºåæºåå */ @Data public class MdcDowntimeDto extends MdcDowntime { private Integer downtimeType; private String downtimeDescription; } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/dto/MdcEquDepDto.java
@@ -23,7 +23,7 @@ /** * å±çº§ç¼å· */ private String orgType; private String orgCode; /** * 设å¤id */ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/dto/MdcEquProDto.java
@@ -24,7 +24,7 @@ /** * å±çº§ç¼å· */ private String orgType; private String orgCode; /** * 设å¤id */ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcDowntime.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,74 @@ package org.jeecg.modules.mdc.entity; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; import org.jeecg.common.system.base.entity.JeecgEntity; import org.jeecgframework.poi.excel.annotation.Excel; import java.io.Serializable; import java.util.List; /** * @Description: å¾ æºåæºè¡¨ * @Author: lius * @Date: 2025-03-12 */ @Data @TableName("mdc_downtime") @EqualsAndHashCode(callSuper = false) @Accessors(chain = true) @ApiModel(value = "mdc_downtime对象", description = "å¾ æºåæºè¡¨") public class MdcDowntime extends JeecgEntity implements Serializable { private static final long serialVersionUID = 7151231815767722285L; /** * 设å¤ç¼å· */ @Excel(name = "设å¤ç¼å·", width = 15) @ApiModelProperty(value = "设å¤ç¼å·") private String equipmentId; /** * 设å¤åç§° */ @Excel(name = "设å¤åç§°", width = 15) @ApiModelProperty(value = "设å¤åç§°") private String equipmentName; /** * åæºåå id */ @Excel(name = "åæºåå id", width = 15) @ApiModelProperty(value = "åæºåå id") private String reasonId; /** * åæºæ¶é¿ */ @Excel(name = "åæºæ¶é¿", width = 15) @ApiModelProperty(value = "åæºæ¶é¿") private Integer downLong; /** * æ¥æ */ @Excel(name = "æ¥æ", width = 15) @ApiModelProperty(value = "æ¥æ") private String theDate; /** * 夿³¨ */ @Excel(name = "夿³¨", width = 15) @ApiModelProperty(value = "夿³¨") private String remark; @TableField(exist = false) private String equipmentIds; @TableField(exist = false) private List<String> dateList; } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcDowntimeReason.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,49 @@ package org.jeecg.modules.mdc.entity; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; import org.jeecg.common.aspect.annotation.Dict; import org.jeecg.common.system.base.entity.JeecgEntity; import org.jeecgframework.poi.excel.annotation.Excel; import java.io.Serializable; /** * @Description: åæºåå 表 * @Author: lius * @Date: 2025-03-11 */ @Data @TableName("mdc_downtime_reason") @EqualsAndHashCode(callSuper = false) @Accessors(chain = true) @ApiModel(value = "mdc_downtime_reason对象", description = "åæºåå 表") public class MdcDowntimeReason extends JeecgEntity implements Serializable { private static final long serialVersionUID = -4421631921207859780L; /** * åæºç±»åï¼0ï¼è®¡ååæº 1ï¼é计ååæºï¼ */ @Excel(name = "åæºç±»åï¼0ï¼è®¡ååæº 1ï¼é计ååæºï¼", width = 15) @ApiModelProperty(value = "åæºç±»åï¼0ï¼è®¡ååæº 1ï¼é计ååæºï¼") @Dict(dicCode = "mdc_downtime_type") private Integer downtimeType; /** * åæºåå æè¿° */ @Excel(name = "åæºåå æè¿°", width = 15) @ApiModelProperty(value = "åæºåå æè¿°") private String downtimeDescription; /** * 夿³¨ */ @Excel(name = "夿³¨", width = 15) @ApiModelProperty(value = "夿³¨") private String remark; } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcOeeInfo.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,114 @@ package org.jeecg.modules.mdc.entity; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; import org.jeecg.common.system.base.entity.JeecgEntity; import org.jeecgframework.poi.excel.annotation.Excel; import java.io.Serializable; import java.math.BigDecimal; /** * @Description: OEE表 * @Author: lius * @Date: 2024-12-12 */ @Data @TableName("mdc_oee_info") @EqualsAndHashCode(callSuper = false) @Accessors(chain = true) @ApiModel(value = "mdc_oee_info对象", description = "OEE表") public class MdcOeeInfo extends JeecgEntity implements Serializable { private static final long serialVersionUID = -1029070983514140912L; /** * 设å¤ç¼å· */ @Excel(name = "设å¤ç¼å·", width = 15) @ApiModelProperty(value = "设å¤ç¼å·") private String equipmentId; /** * æ¥æ */ @Excel(name = "æ¥æ", width = 15) @ApiModelProperty(value = "æ¥æ") private String theDate; /** * 工使¥åæ¶é´(min) */ @Excel(name = "工使¥åæ¶é´(min)", width = 15) @ApiModelProperty(value = "工使¥åæ¶é´(min)") private Integer calendarLong; /** * 计ååæºæ¶é´(min) */ @Excel(name = "计ååæºæ¶é´(min)", width = 15) @ApiModelProperty(value = "计ååæºæ¶é´(min)") private Integer planCloseLong; /** * è´è·æ¶é´(min) */ @Excel(name = "è´è·æ¶é´(min)", width = 15) @ApiModelProperty(value = "è´è·æ¶é´(min)") private Integer loadLong; /** * é计ååæºæ¶é´(min) */ @Excel(name = "é计ååæºæ¶é´(min)", width = 15) @ApiModelProperty(value = "é计ååæºæ¶é´(min)") private Integer noplanCloseLong; /** * å¼å¨æ¶é´(min) */ @Excel(name = "å¼å¨æ¶é´(min)", width = 15) @ApiModelProperty(value = "å¼å¨æ¶é´(min)") private Integer actuateLong; /** * æ¶é´å¼å¨ç */ @Excel(name = "æ¶é´å¼å¨ç", width = 15) @ApiModelProperty(value = "æ¶é´å¼å¨ç") private BigDecimal timeActuationRate; /** * ææè¿è¡æ¶é´ */ @Excel(name = "ææè¿è¡æ¶é´", width = 15) @ApiModelProperty(value = "ææè¿è¡æ¶é´") private Integer effectiveRunLong; /** * æ§è½å¼å¨ç */ @Excel(name = "æ§è½å¼å¨ç", width = 15) @ApiModelProperty(value = "æ§è½å¼å¨ç") private BigDecimal performanceRate; /** * å å·¥é¶ä»¶æ°é */ @Excel(name = "å å·¥é¶ä»¶æ°é", width = 15) @ApiModelProperty(value = "å å·¥é¶ä»¶æ°é") private Integer processCount; /** * åæ ¼é¶ä»¶æ°é */ @Excel(name = "åæ ¼é¶ä»¶æ°é", width = 15) @ApiModelProperty(value = "åæ ¼é¶ä»¶æ°é") private Integer passCount; /** * åæ ¼ç */ @Excel(name = "åæ ¼ç", width = 15) @ApiModelProperty(value = "åæ ¼ç") private BigDecimal passRate; /** * OEE */ @Excel(name = "OEE", width = 15) @ApiModelProperty(value = "OEE") private BigDecimal oee; } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcParameter.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,66 @@ package org.jeecg.modules.mdc.entity; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.experimental.Accessors; import org.jeecg.common.system.base.entity.JeecgEntity; import org.jeecgframework.poi.excel.annotation.Excel; import java.io.Serializable; /** * @Description: mdcç®æ³å ¬å¼ * @Author: lius * @Date: 2025-08-13 * @Version: V1.0 */ @Data @TableName("mdc_parameter") @EqualsAndHashCode(callSuper = false) @Accessors(chain = true) @ApiModel(value = "mdc_parameter对象", description = "mdcç®æ³å ¬å¼") public class MdcParameter extends JeecgEntity implements Serializable { private static final long serialVersionUID = -1935799306658540361L; /** * ç¼ç */ @Excel(name = "ç¼ç ", width = 15) @ApiModelProperty(value = "ç¼ç ") private String code; /** * åç§° */ @Excel(name = "åç§°", width = 15) @ApiModelProperty(value = "åç§°") private String name; /** * æè¿° */ @Excel(name = "æè¿°", width = 15) @ApiModelProperty(value = "æè¿°") private String description; /** * å¼ */ @Excel(name = "å¼", width = 15) @ApiModelProperty(value = "å¼") private String value; /** * ç±»å */ @Excel(name = "ç±»å", width = 15) @ApiModelProperty(value = "ç±»å") private Boolean type; /** * 夿³¨ */ @Excel(name = "夿³¨", width = 15) @ApiModelProperty(value = "夿³¨") private String remark; } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/job/RunningOEEJob.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,83 @@ package org.jeecg.modules.mdc.job; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.jeecg.common.util.DateUtils; import org.jeecg.modules.mdc.service.IMdcOeeInfoService; import org.jeecg.modules.mdc.util.ThrowableUtil; import org.jeecg.modules.mdc.vo.MdcOeeComputeVo; import org.jeecg.modules.quartz.entity.QuartzJob; import org.jeecg.modules.quartz.entity.SysQuartzLog; import org.jeecg.modules.quartz.service.IQuartzJobService; import org.jeecg.modules.quartz.service.ISysQuartzLogService; import org.jeecg.modules.system.service.ISysAnnouncementService; import org.quartz.*; import javax.annotation.Resource; import java.time.LocalDate; import java.util.Date; import java.util.List; /** * @Author: Lius * @CreateTime: 2025-04-24 * @Description: OEE */ @PersistJobDataAfterExecution @DisallowConcurrentExecution @Slf4j public class RunningOEEJob implements Job { /** * è¥åæ°åéåä¿®æ¹ QuartzJobControllerä¸ä¹é对åºä¿®æ¹ æ¶é´ï¼ yyyyMMdd ä¾ï¼ 20230414 */ private String parameter; public void setParameter(String parameter) { this.parameter = parameter; } @Resource private IQuartzJobService quartzJobService; @Resource private ISysAnnouncementService sysAnnouncementService; @Resource private ISysQuartzLogService sysQuartzLogService; @Resource private IMdcOeeInfoService mdcOeeInfoService; @Override public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException { SysQuartzLog quartzLog = new SysQuartzLog(); quartzLog.setCreateTime(new Date()); List<QuartzJob> byJobClassName = this.quartzJobService.findByJobClassName(this.getClass().getName()); if (byJobClassName != null && !byJobClassName.isEmpty()) { quartzLog.setJobId(byJobClassName.get(0).getId()); } quartzLog.setParams(this.parameter); log.info("宿¶è®¡ç®è®¾å¤ç»¼åæçOEEä»»å¡ RunningOEEJob start! æ¶é´:" + DateUtils.now(), this.parameter); long startTime = System.currentTimeMillis(); try { MdcOeeComputeVo mdcOeeComputeVo = new MdcOeeComputeVo(); String dateTime = LocalDate.now().plusDays(-1).toString(); if (StringUtils.isNotBlank(this.parameter)) { dateTime = DateUtils.date2Str(DateUtils.str2Date(this.parameter, DateUtils.yyyyMMdd.get()), DateUtils.date_sdf.get()); } mdcOeeComputeVo.setStartTime(dateTime); mdcOeeComputeVo.setEndTime(dateTime); mdcOeeInfoService.computeOee(mdcOeeComputeVo); quartzLog.setIsSuccess(0); } catch (Exception e) { quartzLog.setIsSuccess(-1); quartzLog.setExceptionDetail(ThrowableUtil.getStackTrace(e)); // åéæ¶æ¯éç¥ sysAnnouncementService.jobSendMessage("宿¶è®¡ç®è®¾å¤ç»¼åæçOEEä»»å¡", quartzLog.getExceptionDetail()); } long endTime = System.currentTimeMillis(); quartzLog.setExecutionTime(Integer.parseInt(String.valueOf(endTime - startTime))); sysQuartzLogService.save(quartzLog); } } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/EquipmentMapper.java
@@ -16,7 +16,7 @@ public interface EquipmentMapper extends BaseMapper<Equipment> { @Select(" SELECT name FROM SysObjects Where XType='U' AND name = '${saveTableName}' ") @Select(" SELECT TABLE_NAME FROM information_schema.TABLES WHERE TABLE_SCHEMA = DATABASE() AND TABLE_NAME = '${saveTableName}' ") String checkTableExists(@Param("saveTableName") String saveTableName); @Select(" SELECT COUNT(CollectTime) num FROM ${saveTableName} WHERE CollectTime < '${day}' ") @@ -28,6 +28,6 @@ @Delete(" delete from ${tableName} where CollectTime < '${day}' ") void deleteTableData(@Param("tableName") String saveTableName, @Param("day") String day); @Insert(" SELECT * INTO ${tableName} FROM ${lastTableName} WHERE CollectTime < '${date}' ") @Insert("CREATE TABLE `{tableName}` AS SELECT * FROM `{lastTableName}` WHERE CollectTime < '${date}' ") void insertNoTableData(@Param("tableName") String tableName, @Param("lastTableName") String lastTableName, @Param("date") String date); } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcDowntimeMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,23 @@ package org.jeecg.modules.mdc.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Param; import org.jeecg.modules.mdc.dto.MdcDowntimeDto; import org.jeecg.modules.mdc.entity.MdcDowntime; import org.jeecg.modules.mdc.vo.MdcDowntimeVo; import java.util.List; /** * @Description: å¾ æºåæºè¡¨ * @Author: lius * @Date: 2025-03-12 */ public interface MdcDowntimeMapper extends BaseMapper<MdcDowntime> { IPage<MdcDowntimeDto> pageList(Page<MdcDowntimeDto> page, @Param("mdcDowntimeVo") MdcDowntimeVo mdcDowntimeVo); List<MdcDowntime> findPlanTimeDuration(@Param("equipmentId") String equipmentId, @Param("validDate") String validDate, @Param("closeType") String closeType); } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcDowntimeReasonMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,13 @@ package org.jeecg.modules.mdc.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.jeecg.modules.mdc.entity.MdcDowntimeReason; /** * @Description: åæºåå 表 * @Author: lius * @Date: 2025-03-11 */ public interface MdcDowntimeReasonMapper extends BaseMapper<MdcDowntimeReason> { } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEfficiencyReportMapper.java
@@ -8,7 +8,6 @@ import org.jeecg.modules.mdc.vo.MdcEfficiencyReportQueryVo; import org.jeecg.modules.mdc.vo.MdcEfficiencyReportShiftQueryVo; import java.math.BigDecimal; import java.util.List; /** lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentStatisticalInfoMapper.java
@@ -16,4 +16,13 @@ * è·åè®¾å¤ææ°æ¥æçè¿è¡æ°æ® */ MdcEquipmentStatisticalInfo getMaxStaticsData(@Param("equipmentId") String equipmentId); /** * æ¥è¯¢è®¾å¤è¿è¡æ¶é´ * * @param equipmentId * @param validDate * @return */ Integer selectProcessLong(@Param("equipmentId") String equipmentId, @Param("validDate") String validDate); } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcOeeInfoMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,29 @@ package org.jeecg.modules.mdc.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Param; import org.jeecg.modules.mdc.entity.MdcOeeInfo; import org.jeecg.modules.mdc.vo.MdcOeeInfoVo; import java.math.BigDecimal; import java.util.List; /** * @Description: OEE表 * @Author: lius * @Date: 2024-12-12 */ public interface MdcOeeInfoMapper extends BaseMapper<MdcOeeInfo> { /** * å页å表 * * @param page * @param mdcOeeInfoVo * @return */ IPage<MdcOeeInfo> pageList(Page<MdcOeeInfo> page, @Param("mdcOeeInfoVo") MdcOeeInfoVo mdcOeeInfoVo); } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcParameterMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,14 @@ package org.jeecg.modules.mdc.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.jeecg.modules.mdc.entity.MdcParameter; /** * @Description: mdcç®æ³å ¬å¼ * @Author: lius * @Date: 2025-08-13 * @Version: V1.0 */ public interface MdcParameterMapper extends BaseMapper<MdcParameter> { } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/XYZAliasesMapper.java
ÎļþÒÑɾ³ý lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/ControlSystemMapper.xml
ÎļþÃû´Ó lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/ClientCategoryMapper.xml ÐÞ¸Ä @@ -1,5 +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.base.mapper.ClientCategoryMapper"> <mapper namespace="org.jeecg.modules.mdc.mapper.ControlSystemMapper"> </mapper> lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentAlarmMapper.xml
ÎļþÃû´Ó lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/ClientContactMapper.xml ÐÞ¸Ä @@ -1,5 +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.base.mapper.ClientContactMapper"> <mapper namespace="org.jeecg.modules.mdc.mapper.EquipmentAlarmMapper"> </mapper> lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentLogMapper.xml
@@ -3,11 +3,11 @@ <mapper namespace="org.jeecg.modules.mdc.mapper.EquipmentLogMapper"> <select id="getRow" resultType="org.jeecg.modules.mdc.entity.EquipmentLog"> SELECT top 1 * FROM EquipmentLog WHERE EquipmentID = #{ equipmentid } AND CollectTime <= #{ startTime } AND Oporation in ('0','1','2','3') ORDER BY CollectTime ASC SELECT * FROM EquipmentLog WHERE EquipmentID = #{ equipmentid } AND CollectTime <= #{ startTime } AND Oporation in ('0','1','2','3') ORDER BY CollectTime ASC LIMIT 1 </select> <select id="selectEquipmentOporation" resultType="org.jeecg.modules.mdc.entity.EquipmentLog"> SELECT TOP 1 * FROM EquipmentLog WHERE EquipmentID = #{ equipmentId } ORDER BY CollectTime DESC SELECT * FROM EquipmentLog WHERE EquipmentID = #{ equipmentId } ORDER BY CollectTime DESC LIMIT 1 </select> </mapper> lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/EquipmentWorklineMapper.xml
@@ -3,10 +3,10 @@ <mapper namespace="org.jeecg.modules.mdc.mapper.EquipmentWorklineMapper"> <select id="getEquipProgramNum" resultType="org.jeecg.modules.mdc.dto.EquipmentMachingDto"> select Programnumber,CollectTime from [${tableName}] where CollectTime > #{startTime} and CollectTime <= #{endTime} and Programnumber is not null select Programnumber,CollectTime from ${tableName} where CollectTime > #{startTime} and CollectTime <= #{endTime} and Programnumber is not null </select> <select id="getDataList" resultType="java.util.Map"> select top 1 [${tableName}].* from [${tableName}] order by CollectTime desc select ${tableName}.* from ${tableName} order by CollectTime desc limit 1 </select> </mapper> lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcDowntimeMapper.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,43 @@ <?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.mdc.mapper.MdcDowntimeMapper"> <select id="pageList" resultType="org.jeecg.modules.mdc.dto.MdcDowntimeDto"> SELECT t1.* , t2.downtime_type downtimeType, t2.downtime_description downtimeDescription FROM mdc_downtime t1 LEFT JOIN mdc_downtime_reason t2 ON t1.reason_id = t2.id <where> <if test="mdcDowntimeVo.equipmentId != null and mdcDowntimeVo.equipmentId != ''"> AND t1.equipment_id = #{ mdcDowntimeVo.equipmentId } </if> <if test="mdcDowntimeVo.equipmentName != null and mdcDowntimeVo.equipmentName != ''"> AND t1.equipment_name = #{ mdcDowntimeVo.equipmentName } </if> <if test="mdcDowntimeVo.theDate != null and mdcDowntimeVo.theDate != ''"> AND t1.the_date = #{ mdcDowntimeVo.theDate } </if> <if test="mdcDowntimeVo.equipmentIdList != null and mdcDowntimeVo.equipmentIdList.size() > 0 "> AND t1.equipment_id IN <foreach collection="mdcDowntimeVo.equipmentIdList" item="equipmentId" index="index" open="(" close=")" separator=","> #{ equipmentId } </foreach> </if> </where> ORDER BY t1.create_time DESC </select> <select id="findPlanTimeDuration" resultType="org.jeecg.modules.mdc.entity.MdcDowntime"> SELECT t1.* FROM mdc_downtime t1 LEFT JOIN mdc_downtime_reason t2 ON t1.reason_id = t2.id WHERE t1.equipment_id = #{equipmentId} AND t2.downtime_type = #{closeType} AND t1.the_date = #{validDate} </select> </mapper> lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcDowntimeReasonMapper.xmlcopy from lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/ClientCategoryMapper.xml copy to lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcDowntimeReasonMapper.xml
Îļþ´Ó lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/ClientCategoryMapper.xml ¸´ÖÆ @@ -1,5 +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.base.mapper.ClientCategoryMapper"> <mapper namespace="org.jeecg.modules.mdc.mapper.MdcDowntimeReasonMapper"> </mapper> lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEfficiencyReportMapper.xml
@@ -102,11 +102,11 @@ t1.the_date theDate, t1.shift_id shiftId, t1.shift_sub_id shiftSubId, SUM ( t1.process_long ) processLong, SUM ( t1.open_long ) openLong, SUM ( t1.wait_long ) waitLong, SUM ( t1.close_long ) closeLong, sum ( t1.total_long ) totalLong SUM( t1.process_long ) processLong, SUM( t1.open_long ) openLong, SUM( t1.wait_long ) waitLong, SUM( t1.close_long ) closeLong, sum( t1.total_long ) totalLong FROM mdc_equipment t2 LEFT JOIN mdc_equipment_statistical_shift_info t1 ON t1.equipment_id = t2.equipment_id @@ -153,10 +153,10 @@ <select id="comparativeAnalysis" resultType="org.jeecg.modules.mdc.dto.MdcComAnaDto"> SELECT mesi.equipment_id equipmentId, SUM ( mesi.open_long ) openLong, SUM ( mesi.close_long ) closeLong, SUM ( mesi.wait_long ) waitLong, SUM ( mesi.process_long ) processLong SUM( mesi.open_long ) openLong, SUM( mesi.close_long ) closeLong, SUM( mesi.wait_long ) waitLong, SUM( mesi.process_long ) processLong FROM mdc_equipment_statistical_info mesi LEFT JOIN mdc_equipment me ON mesi.equipment_id = me.equipment_id lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentMapper.xml
@@ -129,7 +129,7 @@ sd.id, sd.parent_id, sd.depart_name, sd.org_type, sd.org_code, me.equipment_id, me.equipment_name, me.equipment_type @@ -152,7 +152,7 @@ mp.id, mp.parent_id, mp.production_name, mp.org_type, mp.org_code, me.equipment_id, me.equipment_name, me.equipment_type lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentRunningSectionMapper.xml
@@ -4,17 +4,17 @@ <!--æ¥è¯¢åå°è®¾å¤æåæ¶é´æ®µè®°å½ï¼éæ¥è¦ï¼--> <select id="getMaxNormal" resultType="org.jeecg.modules.mdc.entity.MdcEquipmentRunningSection"> SELECT TOP 1 * FROM mdc_equipment_running_section WHERE equipment_id = #{equipmentId} AND status <![CDATA[ <> ]]> '22' ORDER BY end_time DESC SELECT * FROM mdc_equipment_running_section WHERE equipment_id = #{equipmentId} AND status <![CDATA[ <> ]]> '22' ORDER BY end_time DESC LIMIT 1 </select> <!--è·åè®¡ç®æ®µæ¶é´åçæå䏿¡è®°å½ï¼æ¥è¦ï¼--> <select id="getMaxError" resultType="org.jeecg.modules.mdc.entity.MdcEquipmentRunningSection"> SELECT TOP 1 * FROM mdc_equipment_running_section WHERE equipment_id = #{equipmentId} AND status = '22' ORDER BY end_time DESC SELECT * FROM mdc_equipment_running_section WHERE equipment_id = #{equipmentId} AND status = '22' ORDER BY end_time DESC LIMIT 1 </select> <!--è·å设å¤è¿è¡è®°å½ææ©çæ°æ®--> <select id="getFirstData" resultType="org.jeecg.modules.mdc.entity.MdcEquipmentRunningSection"> SELECT TOP 1 * FROM mdc_equipment_running_section WHERE equipment_id = #{equipmentId} ORDER BY start_time SELECT * FROM mdc_equipment_running_section WHERE equipment_id = #{equipmentId} ORDER BY start_time LIMIT 1 </select> <!--æ¥è¯¢è®¾å¤åæ¥è¿è¡ç¶ææ¶é´æ®µè®°å½--> lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentStatisticalInfoMapper.xml
@@ -2,9 +2,14 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="org.jeecg.modules.mdc.mapper.MdcEquipmentStatisticalInfoMapper"> <!--è·åè®¾å¤ææ°æ¥æçè¿è¡æ°æ®--> <select id="getMaxStaticsData" resultType="org.jeecg.modules.mdc.entity.MdcEquipmentStatisticalInfo"> SELECT TOP 1 * FROM mdc_equipment_statistical_info WHERE equipment_id = #{equipmentId} ORDER BY the_date DESC SELECT * FROM mdc_equipment_statistical_info WHERE equipment_id = #{equipmentId} ORDER BY the_date DESC LIMIT 1 </select> <!--æ¥è¯¢è®¾å¤è¿è¡æ¶é´--> <select id="selectProcessLong" resultType="java.lang.Integer"> SELECT process_long FROM mdc_equipment_statistical_info WHERE equipment_id = #{equipmentId} AND the_date = #{validDate} LIMIT 1 </select> </mapper> lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentStatisticalShiftInfoMapper.xml
@@ -2,9 +2,8 @@ <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="org.jeecg.modules.mdc.mapper.MdcEquipmentStatisticalShiftInfoMapper"> <select id="getMaxStaticsData" resultType="org.jeecg.modules.mdc.entity.MdcEquipmentStatisticalShiftInfo"> SELECT TOP 1 * FROM mdc_equipment_statistical_shift_info WHERE equipment_id = #{equipmentId} ORDER BY the_date DESC SELECT * FROM mdc_equipment_statistical_shift_info WHERE equipment_id = #{equipmentId} ORDER BY the_date DESC LIMIT 1 </select> </mapper> lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcOeeInfoMapper.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,31 @@ <?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.mdc.mapper.MdcOeeInfoMapper"> <!--å页å表--> <select id="pageList" resultType="org.jeecg.modules.mdc.entity.MdcOeeInfo"> SELECT * FROM mdc_oee_info <where> <if test="mdcOeeInfoVo.equipmentId != null and mdcOeeInfoVo.equipmentId != ''"> AND equipment_id = #{ mdcOeeInfoVo.equipmentId } </if> <if test="mdcOeeInfoVo.startTime != null and mdcOeeInfoVo.startTime != ''"> AND the_date >= #{ mdcOeeInfoVo.startTime } </if> <if test="mdcOeeInfoVo.endTime != null and mdcOeeInfoVo.endTime != ''"> AND the_date <= #{mdcOeeInfoVo.endTime } </if> <if test="mdcOeeInfoVo.equipmentIdList != null and mdcOeeInfoVo.equipmentIdList.size() > 0 "> AND equipment_id IN <foreach collection="mdcOeeInfoVo.equipmentIdList" item="id" index="index" open="(" close=")" separator=","> #{ id } </foreach> </if> </where> ORDER BY the_date DESC, equipment_id ASC </select> </mapper> lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcParameterMapper.xml
ÎļþÃû´Ó lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/MaterialMapper.xml ÐÞ¸Ä @@ -1,5 +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.base.mapper.MaterialMapper"> <mapper namespace="org.jeecg.modules.mdc.mapper.MdcParameterMapper"> </mapper> </mapper> lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcProcessQuantityMapper.xml
@@ -123,6 +123,6 @@ mpq.update_by updateBy, mpq.update_time updateTime FROM mdc_process_quantity mpq LEFT JOIN mdc_standard_process_duration mspd ON mpq.standard_id = mspd.id WHERE mpq.id = { id } WHERE mpq.id = #{ id } </select> </mapper> lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/XYZAliasesMapper.xml
ÎļþÒÑɾ³ý lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcDowntimeReasonService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,16 @@ package org.jeecg.modules.mdc.service; import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.mdc.entity.MdcDowntimeReason; import java.util.List; /** * @Description: åæºåå 表 * @Author: lius * @Date: 2025-03-11 */ public interface IMdcDowntimeReasonService extends IService<MdcDowntimeReason> { List<MdcDowntimeReason> downtimeReasonList(String downtimeType); } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcDowntimeService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,45 @@ package org.jeecg.modules.mdc.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.mdc.dto.MdcDowntimeDto; import org.jeecg.modules.mdc.entity.MdcDowntime; import org.jeecg.modules.mdc.vo.MdcDowntimeVo; import javax.servlet.http.HttpServletRequest; /** * @Description: å¾ æºåæºè¡¨ * @Author: lius * @Date: 2025-03-12 */ public interface IMdcDowntimeService extends IService<MdcDowntime> { /** * å页å表æ¥è¯¢ * * @param userId * @param page * @param mdcDowntimeVo * @param req * @return */ IPage<MdcDowntimeDto> pageList(String userId, Page<MdcDowntimeDto> page, MdcDowntimeVo mdcDowntimeVo, HttpServletRequest req); /** * æ·»å * @param mdcDowntime * @return */ boolean saveDowntime(MdcDowntime mdcDowntime); /** * æ¥è¯¢åæºæ¶é¿ * @param equipmentId * @param validDate * @param closeType * @return */ Integer findPlanTimeDuration(String equipmentId, String validDate, String closeType); } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentStatisticalInfoService.java
@@ -17,4 +17,13 @@ * @param dateTime */ void runningAllEquipmentStatisticalProcess(String dateTime); /** * æ¥è¯¢è®¾å¤è¿è¡æ¶é´ * * @param equipmentId * @param validDate * @return */ Integer selectProcessLong(String equipmentId, String validDate); } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcOeeInfoService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,49 @@ package org.jeecg.modules.mdc.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.mdc.entity.MdcOeeInfo; import org.jeecg.modules.mdc.vo.MdcOeeComputeVo; import org.jeecg.modules.mdc.vo.MdcOeeInfoVo; import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; import java.math.BigDecimal; import java.util.List; /** * @Description: OEE表 * @Author: lius * @Date: 2024-12-12 */ public interface IMdcOeeInfoService extends IService<MdcOeeInfo> { /** * å页å表 * * @param userId * @param page * @param mdcOeeInfoVo * @param req * @return */ IPage<MdcOeeInfo> pageList(String userId, Page<MdcOeeInfo> page, MdcOeeInfoVo mdcOeeInfoVo, HttpServletRequest req); /** * å¯¼åº * * @param userId * @param mdcOeeInfoVo * @return */ ModelAndView exportXls(String userId, MdcOeeInfoVo mdcOeeInfoVo); /** * 计ç®OEE * * @param mdcOeeComputeVo */ void computeOee(MdcOeeComputeVo mdcOeeComputeVo); } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcParameterService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,14 @@ package org.jeecg.modules.mdc.service; import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.mdc.entity.MdcParameter; /** * @Description: mdcç®æ³å ¬å¼ * @Author: jeecg-boot * @Date: 2025-08-13 * @Version: V1.0 */ public interface IMdcParameterService extends IService<MdcParameter> { } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/MdcEfficiencyReportService.java
@@ -4,9 +4,6 @@ import org.jeecg.modules.mdc.dto.DayUtilizationRateDto; import org.jeecg.modules.mdc.vo.*; import java.math.BigDecimal; import java.util.List; /** * @author: LiuS * @create: 2023-06-15 17:25 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcDowntimeReasonServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,24 @@ package org.jeecg.modules.mdc.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.jeecg.modules.mdc.entity.MdcDowntimeReason; import org.jeecg.modules.mdc.mapper.MdcDowntimeReasonMapper; import org.jeecg.modules.mdc.service.IMdcDowntimeReasonService; import org.springframework.stereotype.Service; import java.util.List; /** * @Description: åæºåå 表 * @Author: lius * @Date: 2025-03-11 */ @Service public class MdcDowntimeReasonServiceImpl extends ServiceImpl<MdcDowntimeReasonMapper, MdcDowntimeReason> implements IMdcDowntimeReasonService { @Override public List<MdcDowntimeReason> downtimeReasonList(String downtimeType) { return this.baseMapper.selectList(new LambdaQueryWrapper<MdcDowntimeReason>().eq(MdcDowntimeReason::getDowntimeType, downtimeType)); } } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcDowntimeServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,117 @@ package org.jeecg.modules.mdc.service.impl; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.lang3.StringUtils; import org.jeecg.modules.mdc.dto.MdcDowntimeDto; import org.jeecg.modules.mdc.entity.MdcDowntime; import org.jeecg.modules.mdc.entity.MdcEquipment; import org.jeecg.modules.mdc.mapper.MdcDowntimeMapper; import org.jeecg.modules.mdc.service.IMdcDowntimeService; import org.jeecg.modules.mdc.service.IMdcEquipmentService; import org.jeecg.modules.mdc.util.DateUtils; import org.jeecg.modules.mdc.vo.MdcDowntimeVo; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.util.ArrayList; import java.util.Collections; import java.util.List; /** * @Description: å¾ æºåæºè¡¨ * @Author: lius * @Date: 2025-03-12 */ @Service public class MdcDowntimeServiceImpl extends ServiceImpl<MdcDowntimeMapper, MdcDowntime> implements IMdcDowntimeService { @Resource private IMdcEquipmentService mdcEquipmentService; /** * å页å表æ¥è¯¢ * * @param userId * @param page * @param mdcDowntimeVo * @param req * @return */ @Override public IPage<MdcDowntimeDto> pageList(String userId, Page<MdcDowntimeDto> page, MdcDowntimeVo mdcDowntimeVo, HttpServletRequest req) { // è·å设å¤IDå表 List<String> equipmentIds = getEquipmentIds(userId, mdcDowntimeVo); // å¦æè®¾å¤IDå表为空ï¼ç´æ¥è¿å空å页 if (equipmentIds == null || equipmentIds.isEmpty()) { return new Page<>(page.getCurrent(), page.getSize(), 0); } // 设置设å¤IDåè¡¨å°æ¥è¯¢æ¡ä»¶ä¸ mdcDowntimeVo.setEquipmentIdList(equipmentIds); // æ§è¡å页æ¥è¯¢ return this.baseMapper.pageList(page, mdcDowntimeVo); } /** * æ·»å * @param mdcDowntime * @return */ @Override @Transactional(rollbackFor = Exception.class) public boolean saveDowntime(MdcDowntime mdcDowntime) { String[] equipmentIds = mdcDowntime.getEquipmentIds().split(","); List<String> dateList = mdcDowntime.getDateList(); List<MdcDowntime> mdcDowntimeList = new ArrayList<>(); for (String equipmentId : equipmentIds) { for (String date : dateList) { String format = DateUtils.format(DateUtils.toDate(date, DateUtils.STRDATE), DateUtils.STR_DATE); MdcEquipment mdcEquipment = mdcEquipmentService.findEquipmentNameByEquipmentId(equipmentId); MdcDowntime downtime = new MdcDowntime(); BeanUtils.copyProperties(mdcDowntime, downtime); downtime.setEquipmentId(mdcEquipment.getEquipmentId()); downtime.setEquipmentName(mdcEquipment.getEquipmentName()); downtime.setTheDate(format); mdcDowntimeList.add(downtime); } } this.saveBatch(mdcDowntimeList); return true; } @Override public Integer findPlanTimeDuration(String equipmentId, String validDate, String closeType) { int result = 0; List<MdcDowntime> mdcDowntimeList = this.baseMapper.findPlanTimeDuration(equipmentId, validDate, closeType); if (mdcDowntimeList != null && !mdcDowntimeList.isEmpty()) { for (MdcDowntime mdcDowntime : mdcDowntimeList) { result = mdcDowntime.getDownLong() + result; } } return result; } private List<String> getEquipmentIds(String userId, MdcDowntimeVo mdcDowntimeVo) { if (StringUtils.isNotEmpty(mdcDowntimeVo.getEquipmentId())) { return Collections.singletonList(mdcDowntimeVo.getEquipmentId()); } if (StringUtils.isNotEmpty(mdcDowntimeVo.getParentId())) { return "2".equals(mdcDowntimeVo.getTypeTree()) ? mdcEquipmentService.getEquipmentIdsByDepart(userId, mdcDowntimeVo.getParentId()) : mdcEquipmentService.getEquipmentIdsProduction(userId, mdcDowntimeVo.getParentId()); } return "2".equals(mdcDowntimeVo.getTypeTree()) ? mdcEquipmentService.getEquipmentIdsByDepart(userId, null) : mdcEquipmentService.getEquipmentIdsProduction(userId, null); } } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEfficiencyReportServiceImpl.java
@@ -9,12 +9,14 @@ import org.jeecg.modules.mdc.mapper.MdcEfficiencyReportMapper; import org.jeecg.modules.mdc.service.*; import org.jeecg.modules.mdc.util.DateUtils; import org.jeecg.modules.mdc.util.JexlFormulaCalculator; import org.jeecg.modules.mdc.vo.MdcUtilizationRateDto; import org.jeecg.modules.mdc.vo.*; import org.jeecg.modules.system.entity.MdcProduction; import org.jeecg.modules.system.entity.SysDepart; import org.jeecg.modules.system.service.IMdcProductionService; import org.jeecg.modules.system.service.ISysDepartService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -53,6 +55,12 @@ @Resource private IMdcEquipmentRunningSectionService mdcEquipmentRunningSectionService; @Resource private IMdcParameterService mdcParameterService; @Resource private JexlFormulaCalculator formulaCalculator; /** * å©ç¨çæ¥è¡¨ @@ -115,56 +123,22 @@ if ("2".equals(vo.getTypeTree())) { // é¨é¨å±çº§ List<MdcEquDepDto> equipmentList = mdcEquipmentService.findEquDepList(vo.getEquipmentIdList()); // æ¥è¯¢ææé¨é¨ä¿¡æ¯ List<SysDepart> departList = sysDepartService.list(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).orderByAsc(SysDepart::getDepartOrder)); for (MdcEquDepDto mdcEquDepDto : equipmentList) { MdcEfficiencyListDto mdcEfficiencyListDto = new MdcEfficiencyListDto(); mdcEfficiencyListDto.setEquipmentId(mdcEquDepDto.getEquipmentId()); mdcEfficiencyListDto.setEquipmentName(mdcEquDepDto.getEquipmentName()); mdcEfficiencyListDto.setEquipmentType(mdcEquDepDto.getEquipmentType()); switch (mdcEquDepDto.getOrgType()) { case "1": mdcEfficiencyListDto.setLevel1(mdcEquDepDto.getDepartName()); break; case "2": mdcEfficiencyListDto.setLevel2(mdcEquDepDto.getDepartName()); break; case "3": mdcEfficiencyListDto.setLevel3(mdcEquDepDto.getDepartName()); break; default: } SysDepart sysDepart = departList.stream().filter(depart -> depart.getId().equals(mdcEquDepDto.getParentId())).findAny().orElse(null); if (sysDepart != null) { switch (sysDepart.getOrgType()) { case "1": mdcEfficiencyListDto.setLevel1(sysDepart.getDepartName()); break; case "2": mdcEfficiencyListDto.setLevel2(sysDepart.getDepartName()); break; case "3": mdcEfficiencyListDto.setLevel3(sysDepart.getDepartName()); break; default: String orgCode = mdcEquDepDto.getOrgCode(); if (orgCode != null) { if (orgCode.length() >= 3) { mdcEfficiencyListDto.setLevel1(sysDepartService.getOne(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(SysDepart::getOrgCode, orgCode.substring(0, 3))).getDepartName()); } if (StringUtils.isNotEmpty(sysDepart.getParentId())) { departList.stream().filter(depart -> depart.getId().equals(sysDepart.getParentId())).findAny().ifPresent(depart1 -> { switch (depart1.getOrgType()) { case "1": mdcEfficiencyListDto.setLevel1(depart1.getDepartName()); break; case "2": mdcEfficiencyListDto.setLevel2(depart1.getDepartName()); break; case "3": mdcEfficiencyListDto.setLevel3(depart1.getDepartName()); break; default: } }); if (orgCode.length() >= 6) { mdcEfficiencyListDto.setLevel2(sysDepartService.getOne(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(SysDepart::getOrgCode, orgCode.substring(0, 6))).getDepartName()); } if (orgCode.length() >= 9) { mdcEfficiencyListDto.setLevel3(sysDepartService.getOne(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(SysDepart::getOrgCode, orgCode.substring(0, 9))).getDepartName()); } } List<MdcEfficiencyResultDto> list = new ArrayList<>(); @@ -204,55 +178,22 @@ } else { // 产线å±çº§ List<MdcEquProDto> equipmentList = mdcEquipmentService.findEquProList(vo.getEquipmentIdList()); // æ¥è¯¢ææäº§çº¿ä¿¡æ¯ List<MdcProduction> productionList = mdcProductionService.list(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).orderByAsc(MdcProduction::getProductionOrder)); for (MdcEquProDto mdcEquProDto : equipmentList) { MdcEfficiencyListDto mdcEfficiencyListDto = new MdcEfficiencyListDto(); mdcEfficiencyListDto.setEquipmentId(mdcEquProDto.getEquipmentId()); mdcEfficiencyListDto.setEquipmentName(mdcEquProDto.getEquipmentName()); mdcEfficiencyListDto.setEquipmentType(mdcEquProDto.getEquipmentType()); switch (mdcEquProDto.getOrgType()) { case "1": mdcEfficiencyListDto.setLevel1(mdcEquProDto.getProductionName()); break; case "2": mdcEfficiencyListDto.setLevel2(mdcEquProDto.getProductionName()); break; case "3": mdcEfficiencyListDto.setLevel3(mdcEquProDto.getProductionName()); break; default: } MdcProduction mdcProduction = productionList.stream().filter(production -> production.getId().equals(mdcEquProDto.getParentId())).findAny().orElse(null); if (mdcProduction != null) { switch (mdcProduction.getOrgType()) { case "1": mdcEfficiencyListDto.setLevel1(mdcProduction.getProductionName()); break; case "2": mdcEfficiencyListDto.setLevel2(mdcProduction.getProductionName()); break; case "3": mdcEfficiencyListDto.setLevel3(mdcProduction.getProductionName()); break; default: String orgCode = mdcEquProDto.getOrgCode(); if (orgCode != null) { if (orgCode.length() >= 3) { mdcEfficiencyListDto.setLevel1(mdcProductionService.getOne(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(MdcProduction::getOrgCode, orgCode.substring(0, 3))).getProductionName()); } if (StringUtils.isNotEmpty(mdcProduction.getParentId())) { productionList.stream().filter(production -> production.getId().equals(mdcProduction.getParentId())).findAny().ifPresent(production1 -> { switch (production1.getOrgType()) { case "1": mdcEfficiencyListDto.setLevel1(production1.getProductionName()); break; case "2": mdcEfficiencyListDto.setLevel2(production1.getProductionName()); break; case "3": mdcEfficiencyListDto.setLevel3(production1.getProductionName()); break; default: } }); if (orgCode.length() >= 6) { mdcEfficiencyListDto.setLevel2(mdcProductionService.getOne(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(MdcProduction::getOrgCode, orgCode.substring(0, 6))).getProductionName()); } if (orgCode.length() >= 9) { mdcEfficiencyListDto.setLevel3(mdcProductionService.getOne(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(MdcProduction::getOrgCode, orgCode.substring(0, 9))).getProductionName()); } } List<MdcEfficiencyResultDto> list = new ArrayList<>(); @@ -448,7 +389,7 @@ if (vo.getEquipmentIdList() == null || vo.getEquipmentIdList().isEmpty()) { result.setMdcEfficiencyList(listDtos); } else { List<String> equipmentIdList = mdcEquipmentService.listEquipmentId(vo); if (equipmentIdList != null && !equipmentIdList.isEmpty()) { vo.setEquipmentIdList(equipmentIdList); @@ -463,56 +404,22 @@ if ("2".equals(vo.getTypeTree())) { // é¨é¨å±çº§ List<MdcEquDepDto> equipmentList = mdcEquipmentService.findEquDepList(vo.getEquipmentIdList()); // æ¥è¯¢ææé¨é¨ä¿¡æ¯ List<SysDepart> departList = sysDepartService.list(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).orderByAsc(SysDepart::getDepartOrder)); for (MdcEquDepDto mdcEquDepDto : equipmentList) { MdcEfficiencyListDto mdcEfficiencyListDto = new MdcEfficiencyListDto(); mdcEfficiencyListDto.setEquipmentId(mdcEquDepDto.getEquipmentId()); mdcEfficiencyListDto.setEquipmentName(mdcEquDepDto.getEquipmentName()); mdcEfficiencyListDto.setEquipmentType(mdcEquDepDto.getEquipmentType()); switch (mdcEquDepDto.getOrgType()) { case "1": mdcEfficiencyListDto.setLevel1(mdcEquDepDto.getDepartName()); break; case "2": mdcEfficiencyListDto.setLevel2(mdcEquDepDto.getDepartName()); break; case "3": mdcEfficiencyListDto.setLevel3(mdcEquDepDto.getDepartName()); break; default: } SysDepart sysDepart = departList.stream().filter(depart -> depart.getId().equals(mdcEquDepDto.getParentId())).findAny().orElse(null); if (sysDepart != null) { switch (sysDepart.getOrgType()) { case "1": mdcEfficiencyListDto.setLevel1(sysDepart.getDepartName()); break; case "2": mdcEfficiencyListDto.setLevel2(sysDepart.getDepartName()); break; case "3": mdcEfficiencyListDto.setLevel3(sysDepart.getDepartName()); break; default: String orgCode = mdcEquDepDto.getOrgCode(); if (orgCode != null) { if (orgCode.length() >= 3) { mdcEfficiencyListDto.setLevel1(sysDepartService.getOne(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(SysDepart::getOrgCode, orgCode.substring(0, 3))).getDepartName()); } if (StringUtils.isNotEmpty(sysDepart.getParentId())) { departList.stream().filter(depart -> depart.getId().equals(sysDepart.getParentId())).findAny().ifPresent(depart1 -> { switch (depart1.getOrgType()) { case "1": mdcEfficiencyListDto.setLevel1(depart1.getDepartName()); break; case "2": mdcEfficiencyListDto.setLevel2(depart1.getDepartName()); break; case "3": mdcEfficiencyListDto.setLevel3(depart1.getDepartName()); break; default: } }); if (orgCode.length() >= 6) { mdcEfficiencyListDto.setLevel2(sysDepartService.getOne(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(SysDepart::getOrgCode, orgCode.substring(0, 6))).getDepartName()); } if (orgCode.length() >= 9) { mdcEfficiencyListDto.setLevel3(sysDepartService.getOne(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(SysDepart::getOrgCode, orgCode.substring(0, 9))).getDepartName()); } } List<MdcEfficiencyResultDto> list = new ArrayList<>(); @@ -552,55 +459,22 @@ } else { // 产线å±çº§ List<MdcEquProDto> equipmentList = mdcEquipmentService.findEquProList(vo.getEquipmentIdList()); // æ¥è¯¢ææäº§çº¿ä¿¡æ¯ List<MdcProduction> productionList = mdcProductionService.list(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).orderByAsc(MdcProduction::getProductionOrder)); for (MdcEquProDto mdcEquProDto : equipmentList) { MdcEfficiencyListDto mdcEfficiencyListDto = new MdcEfficiencyListDto(); mdcEfficiencyListDto.setEquipmentId(mdcEquProDto.getEquipmentId()); mdcEfficiencyListDto.setEquipmentName(mdcEquProDto.getEquipmentName()); mdcEfficiencyListDto.setEquipmentType(mdcEquProDto.getEquipmentType()); switch (mdcEquProDto.getOrgType()) { case "1": mdcEfficiencyListDto.setLevel1(mdcEquProDto.getProductionName()); break; case "2": mdcEfficiencyListDto.setLevel2(mdcEquProDto.getProductionName()); break; case "3": mdcEfficiencyListDto.setLevel3(mdcEquProDto.getProductionName()); break; default: } MdcProduction mdcProduction = productionList.stream().filter(production -> production.getId().equals(mdcEquProDto.getParentId())).findAny().orElse(null); if (mdcProduction != null) { switch (mdcProduction.getOrgType()) { case "1": mdcEfficiencyListDto.setLevel1(mdcProduction.getProductionName()); break; case "2": mdcEfficiencyListDto.setLevel2(mdcProduction.getProductionName()); break; case "3": mdcEfficiencyListDto.setLevel3(mdcProduction.getProductionName()); break; default: String orgCode = mdcEquProDto.getOrgCode(); if (orgCode != null) { if (orgCode.length() >= 3) { mdcEfficiencyListDto.setLevel1(mdcProductionService.getOne(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(MdcProduction::getOrgCode, orgCode.substring(0, 3))).getProductionName()); } if (StringUtils.isNotEmpty(mdcProduction.getParentId())) { productionList.stream().filter(production -> production.getId().equals(mdcProduction.getParentId())).findAny().ifPresent(production1 -> { switch (production1.getOrgType()) { case "1": mdcEfficiencyListDto.setLevel1(production1.getProductionName()); break; case "2": mdcEfficiencyListDto.setLevel2(production1.getProductionName()); break; case "3": mdcEfficiencyListDto.setLevel3(production1.getProductionName()); break; default: } }); if (orgCode.length() >= 6) { mdcEfficiencyListDto.setLevel2(mdcProductionService.getOne(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(MdcProduction::getOrgCode, orgCode.substring(0, 6))).getProductionName()); } if (orgCode.length() >= 9) { mdcEfficiencyListDto.setLevel3(mdcProductionService.getOne(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(MdcProduction::getOrgCode, orgCode.substring(0, 9))).getProductionName()); } } List<MdcEfficiencyResultDto> list = new ArrayList<>(); @@ -813,8 +687,6 @@ if ("2".equals(vo.getTypeTree())) { // é¨é¨å±çº§ List<MdcEquDepDto> equipmentList = mdcEquipmentService.findEquDepList(vo.getEquipmentIdList()); // æ¥è¯¢ææé¨é¨ä¿¡æ¯ List<SysDepart> departList = sysDepartService.list(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).orderByAsc(SysDepart::getDepartOrder)); // çæ¬¡åç§°æ¾ç¤ºå¤ç String shiftSubName = ""; if (StringUtils.isBlank(vo.getShiftId())) { @@ -842,48 +714,16 @@ mdcEfficiencyShiftListDto.setEquipmentName(mdcEquDepDto.getEquipmentName()); mdcEfficiencyShiftListDto.setEquipmentType(mdcEquDepDto.getEquipmentType()); mdcEfficiencyShiftListDto.setShiftSubName(shiftSubName); switch (mdcEquDepDto.getOrgType()) { case "1": mdcEfficiencyShiftListDto.setLevel1(mdcEquDepDto.getDepartName()); break; case "2": mdcEfficiencyShiftListDto.setLevel2(mdcEquDepDto.getDepartName()); break; case "3": mdcEfficiencyShiftListDto.setLevel3(mdcEquDepDto.getDepartName()); break; default: } SysDepart sysDepart = departList.stream().filter(depart -> depart.getId().equals(mdcEquDepDto.getParentId())).findAny().orElse(null); if (sysDepart != null) { switch (sysDepart.getOrgType()) { case "1": mdcEfficiencyShiftListDto.setLevel1(sysDepart.getDepartName()); break; case "2": mdcEfficiencyShiftListDto.setLevel2(sysDepart.getDepartName()); break; case "3": mdcEfficiencyShiftListDto.setLevel3(sysDepart.getDepartName()); break; default: String orgCode = mdcEquDepDto.getOrgCode(); if (orgCode != null) { if (orgCode.length() >= 3) { mdcEfficiencyShiftListDto.setLevel1(sysDepartService.getOne(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(SysDepart::getOrgCode, orgCode.substring(0, 3))).getDepartName()); } if (StringUtils.isNotEmpty(sysDepart.getParentId())) { departList.stream().filter(depart -> depart.getId().equals(sysDepart.getParentId())).findAny().ifPresent(depart1 -> { switch (depart1.getOrgType()) { case "1": mdcEfficiencyShiftListDto.setLevel1(depart1.getDepartName()); break; case "2": mdcEfficiencyShiftListDto.setLevel2(depart1.getDepartName()); break; case "3": mdcEfficiencyShiftListDto.setLevel3(depart1.getDepartName()); break; default: } }); if (orgCode.length() >= 6) { mdcEfficiencyShiftListDto.setLevel2(sysDepartService.getOne(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(SysDepart::getOrgCode, orgCode.substring(0, 6))).getDepartName()); } if (orgCode.length() >= 9) { mdcEfficiencyShiftListDto.setLevel3(sysDepartService.getOne(new LambdaQueryWrapper<SysDepart>().ne(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(SysDepart::getOrgCode, orgCode.substring(0, 9))).getDepartName()); } } List<MdcEfficiencyShiftResultDto> list = new ArrayList<>(); @@ -923,8 +763,6 @@ } else { // 产线å±çº§ List<MdcEquProDto> equipmentList = mdcEquipmentService.findEquProList(vo.getEquipmentIdList()); // æ¥è¯¢ææäº§çº¿ä¿¡æ¯ List<MdcProduction> productionList = mdcProductionService.list(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).orderByAsc(MdcProduction::getProductionOrder)); // çæ¬¡åç§°æ¾ç¤ºå¤ç String shiftSubName = ""; @@ -953,47 +791,16 @@ mdcEfficiencyShiftListDto.setEquipmentName(mdcEquProDto.getEquipmentName()); mdcEfficiencyShiftListDto.setEquipmentType(mdcEquProDto.getEquipmentType()); mdcEfficiencyShiftListDto.setShiftSubName(shiftSubName); switch (mdcEquProDto.getOrgType()) { case "1": mdcEfficiencyShiftListDto.setLevel1(mdcEquProDto.getProductionName()); break; case "2": mdcEfficiencyShiftListDto.setLevel2(mdcEquProDto.getProductionName()); break; case "3": mdcEfficiencyShiftListDto.setLevel3(mdcEquProDto.getProductionName()); break; default: } MdcProduction mdcProduction = productionList.stream().filter(production -> production.getId().equals(mdcEquProDto.getParentId())).findAny().orElse(null); if (mdcProduction != null) { switch (mdcProduction.getOrgType()) { case "1": mdcEfficiencyShiftListDto.setLevel1(mdcProduction.getProductionName()); break; case "2": mdcEfficiencyShiftListDto.setLevel2(mdcProduction.getProductionName()); break; case "3": mdcEfficiencyShiftListDto.setLevel3(mdcProduction.getProductionName()); break; default: String orgCode = mdcEquProDto.getOrgCode(); if (orgCode != null) { if (orgCode.length() >= 3) { mdcEfficiencyShiftListDto.setLevel1(mdcProductionService.getOne(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(MdcProduction::getOrgCode, orgCode.substring(0, 3))).getProductionName()); } if (StringUtils.isNotEmpty(mdcProduction.getParentId())) { productionList.stream().filter(production -> production.getId().equals(mdcProduction.getParentId())).findAny().ifPresent(production1 -> { switch (production1.getOrgType()) { case "1": mdcEfficiencyShiftListDto.setLevel1(production1.getProductionName()); break; case "2": mdcEfficiencyShiftListDto.setLevel2(production1.getProductionName()); break; case "3": mdcEfficiencyShiftListDto.setLevel3(production1.getProductionName()); break; default: } }); if (orgCode.length() >= 6) { mdcEfficiencyShiftListDto.setLevel2(mdcProductionService.getOne(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(MdcProduction::getOrgCode, orgCode.substring(0, 6))).getProductionName()); } if (orgCode.length() >= 9) { mdcEfficiencyShiftListDto.setLevel3(mdcProductionService.getOne(new LambdaQueryWrapper<MdcProduction>().ne(MdcProduction::getDelFlag, CommonConstant.DEL_FLAG_1.toString()).eq(MdcProduction::getOrgCode, orgCode.substring(0, 9))).getProductionName()); } } List<MdcEfficiencyShiftResultDto> list = new ArrayList<>(); @@ -1151,19 +958,45 @@ if (date.equals(equipmentStatisticalShiftInfo.getTheDate()) && equipmentStatisticalShiftInfo.getEquipmentId().equals(equipmentId)) { mdcEfficiencyShiftResultDto.setTheDate(equipmentStatisticalShiftInfo.getTheDate()); mdcEfficiencyShiftResultDto.setProcessLong(equipmentStatisticalShiftInfo.getProcessLong()); if (equipmentStatisticalShiftInfo.getTotalLong().compareTo(BigDecimal.ZERO) == 0) { mdcEfficiencyShiftResultDto.setUtilizationRate(BigDecimal.ZERO); } else { mdcEfficiencyShiftResultDto.setUtilizationRate(equipmentStatisticalShiftInfo.getProcessLong().divide(equipmentStatisticalShiftInfo.getTotalLong(), 6, RoundingMode.HALF_UP)); } mdcEfficiencyShiftResultDto.setCloseLong(equipmentStatisticalShiftInfo.getCloseLong()); mdcEfficiencyShiftResultDto.setOpenLong(equipmentStatisticalShiftInfo.getOpenLong()); mdcEfficiencyShiftResultDto.setWaitLong(equipmentStatisticalShiftInfo.getWaitLong()); if (equipmentStatisticalShiftInfo.getTotalLong().compareTo(BigDecimal.ZERO) == 0) { mdcEfficiencyShiftResultDto.setOpenRate(BigDecimal.ZERO); Map<String, Object> variables = new HashMap<>(); variables.put("processLong", equipmentStatisticalShiftInfo.getProcessLong()); variables.put("openLong", equipmentStatisticalShiftInfo.getOpenLong()); variables.put("totalLong", equipmentStatisticalShiftInfo.getTotalLong()); MdcParameter shiftUtilizationRate = mdcParameterService.getOne(new LambdaQueryWrapper<MdcParameter>().eq(MdcParameter::getCode, "shiftUtilizationRate")); if (shiftUtilizationRate != null) { mdcEfficiencyShiftResultDto.setUtilizationRate(formulaCalculator.calculate(shiftUtilizationRate.getValue(), variables)); } else { mdcEfficiencyShiftResultDto.setOpenRate(equipmentStatisticalShiftInfo.getOpenLong().divide(equipmentStatisticalShiftInfo.getTotalLong(), 6, RoundingMode.HALF_UP)); if (equipmentStatisticalShiftInfo.getTotalLong().compareTo(BigDecimal.ZERO) == 0) { mdcEfficiencyShiftResultDto.setUtilizationRate(BigDecimal.ZERO); } else { mdcEfficiencyShiftResultDto.setUtilizationRate(equipmentStatisticalShiftInfo.getProcessLong().divide(equipmentStatisticalShiftInfo.getTotalLong(), 6, RoundingMode.HALF_UP)); } } MdcParameter shiftOpenRate = mdcParameterService.getOne(new LambdaQueryWrapper<MdcParameter>().eq(MdcParameter::getCode, "shiftOpenRate")); if (shiftOpenRate != null) { mdcEfficiencyShiftResultDto.setOpenRate(formulaCalculator.calculate(shiftOpenRate.getValue(), variables)); } else { if (equipmentStatisticalShiftInfo.getTotalLong().compareTo(BigDecimal.ZERO) == 0) { mdcEfficiencyShiftResultDto.setOpenRate(BigDecimal.ZERO); } else { mdcEfficiencyShiftResultDto.setOpenRate(equipmentStatisticalShiftInfo.getOpenLong().divide(equipmentStatisticalShiftInfo.getTotalLong(), 6, RoundingMode.HALF_UP)); } } MdcParameter startRate = mdcParameterService.getOne(new LambdaQueryWrapper<MdcParameter>().eq(MdcParameter::getCode, "startRate")); if (startRate != null) { mdcEfficiencyShiftResultDto.setStartRate(formulaCalculator.calculate(startRate.getValue(), variables)); } else { if (equipmentStatisticalShiftInfo.getOpenLong().compareTo(BigDecimal.ZERO) == 0) { mdcEfficiencyShiftResultDto.setStartRate(BigDecimal.ZERO); } else { mdcEfficiencyShiftResultDto.setStartRate(equipmentStatisticalShiftInfo.getProcessLong().divide(equipmentStatisticalShiftInfo.getOpenLong(), 6, RoundingMode.HALF_UP)); } } long rate = mdcEfficiencyShiftResultDto.getUtilizationRate().multiply(new BigDecimal("100")).longValue(); for (MdcUtilizationRate mdcUtilizationRate : mdcUtilizationRateList) { if (rate >= mdcUtilizationRate.getMinimumRange() && rate < mdcUtilizationRate.getMaximumRange()) { @@ -1792,12 +1625,31 @@ if (date.equals(efficiencyDto.getTheDate()) && efficiencyDto.getEquipmentId().equals(equipmentId)) { mdcEfficiencyResultDto.setTheDate(efficiencyDto.getTheDate()); mdcEfficiencyResultDto.setProcessLong(efficiencyDto.getProcessLong()); mdcEfficiencyResultDto.setUtilizationRate(efficiencyDto.getUtilizationRate()); mdcEfficiencyResultDto.setStartRate(efficiencyDto.getStartRate()); mdcEfficiencyResultDto.setOpenRate(efficiencyDto.getOpenRate()); mdcEfficiencyResultDto.setOpenLong(efficiencyDto.getOpenLong()); mdcEfficiencyResultDto.setWaitLong(efficiencyDto.getWaitLong()); mdcEfficiencyResultDto.setCloseLong(efficiencyDto.getCloseLong()); Map<String, Object> variables = new HashMap<>(); variables.put("processLong", efficiencyDto.getProcessLong()); variables.put("openLong", efficiencyDto.getOpenLong()); variables.put("measureTime", new BigDecimal("86400")); MdcParameter utilizationRate = mdcParameterService.getOne(new LambdaQueryWrapper<MdcParameter>().eq(MdcParameter::getCode, "utilizationRate")); if (utilizationRate != null) { mdcEfficiencyResultDto.setUtilizationRate(formulaCalculator.calculate(utilizationRate.getValue(), variables)); } else { mdcEfficiencyResultDto.setUtilizationRate(efficiencyDto.getUtilizationRate()); } MdcParameter openRate = mdcParameterService.getOne(new LambdaQueryWrapper<MdcParameter>().eq(MdcParameter::getCode, "openRate")); if (openRate != null) { mdcEfficiencyResultDto.setOpenRate(formulaCalculator.calculate(openRate.getValue(), variables)); } else { mdcEfficiencyResultDto.setOpenRate(efficiencyDto.getOpenRate()); } MdcParameter startRate = mdcParameterService.getOne(new LambdaQueryWrapper<MdcParameter>().eq(MdcParameter::getCode, "startRate")); if (startRate != null) { mdcEfficiencyResultDto.setStartRate(formulaCalculator.calculate(startRate.getValue(), variables)); } else { mdcEfficiencyResultDto.setStartRate(efficiencyDto.getStartRate()); } long rate = efficiencyDto.getUtilizationRate().multiply(new BigDecimal("100")).longValue(); for (MdcUtilizationRate mdcUtilizationRate : mdcUtilizationRateList) { if (rate >= mdcUtilizationRate.getMinimumRange() && rate < mdcUtilizationRate.getMaximumRange()) { lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentRunningSectionServiceImpl.java
@@ -519,9 +519,9 @@ //è·årunningè¿è¡çæ¥å¿è®°å½ List<MdcEquipmentRunningSection> list = this.equipmentRunningTracesLog(equipment.getEquipmentid()); if (list != null && !list.isEmpty()) { List<MdcEquipmentRunningSection> equipList = addSequenceNumber(list); //æ·»å ç¨åºå· this.ergodicTrim(equipList); super.saveBatch(equipList); // List<MdcEquipmentRunningSection> equipList = addSequenceNumber(list); //æ·»å ç¨åºå· this.ergodicTrim(list); super.saveBatch(list); } //è·åæ¥è¦çæ¥å¿è®°å½ List<MdcEquipmentRunningSection> errorList = this.equipmentRunningTracesErrorLog(equipment.getEquipmentid()); lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentStatisticalInfoServiceImpl.java
@@ -14,6 +14,7 @@ import javax.annotation.Resource; import java.math.BigDecimal; import java.math.RoundingMode; import java.util.*; /** @@ -299,4 +300,21 @@ } return equipmentStatisticalInfos; } /** * æ¥è¯¢è®¾å¤è¿è¡æ¶é´ * * @param equipmentId * @param validDate * @return */ @Override public Integer selectProcessLong(String equipmentId, String validDate) { Integer processLong = this.baseMapper.selectProcessLong(equipmentId, validDate); if (processLong == null) { return 0; } else { return Integer.parseInt(new BigDecimal(processLong).divide(new BigDecimal("60"), 0, RoundingMode.HALF_UP).toString()); } } } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcOeeInfoServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,253 @@ package org.jeecg.modules.mdc.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.lang.StringUtils; import org.apache.shiro.SecurityUtils; import org.jeecg.common.constant.CommonConstant; import org.jeecg.common.system.vo.LoginUser; import org.jeecg.modules.mdc.entity.MdcEquipment; import org.jeecg.modules.mdc.entity.MdcOeeInfo; import org.jeecg.modules.mdc.mapper.MdcOeeInfoMapper; import org.jeecg.modules.mdc.service.IMdcDowntimeService; import org.jeecg.modules.mdc.service.IMdcEquipmentService; import org.jeecg.modules.mdc.service.IMdcEquipmentStatisticalInfoService; import org.jeecg.modules.mdc.service.IMdcOeeInfoService; import org.jeecg.modules.mdc.util.DateUtils; import org.jeecg.modules.mdc.vo.MdcOeeComputeVo; import org.jeecg.modules.mdc.vo.MdcOeeInfoVo; import org.jeecgframework.poi.excel.def.NormalExcelConstants; import org.jeecgframework.poi.excel.entity.ExportParams; import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.servlet.ModelAndView; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.math.BigDecimal; import java.math.RoundingMode; import java.util.ArrayList; import java.util.Collections; import java.util.List; /** * @Description: OEE表 * @Author: lius * @Date: 2024-12-12 */ @Service public class MdcOeeInfoServiceImpl extends ServiceImpl<MdcOeeInfoMapper, MdcOeeInfo> implements IMdcOeeInfoService { @Resource private IMdcEquipmentService mdcEquipmentService; @Resource private IMdcDowntimeService mdcDowntimeService; @Resource private IMdcEquipmentStatisticalInfoService mdcEquipmentStatisticalInfoService; /** * å页å表 * * @param userId * @param page * @param mdcOeeInfoVo * @param req * @return */ @Override public IPage<MdcOeeInfo> pageList(String userId, Page<MdcOeeInfo> page, MdcOeeInfoVo mdcOeeInfoVo, HttpServletRequest req) { List<String> equipmentIds = new ArrayList<>(); if (StringUtils.isNotEmpty(mdcOeeInfoVo.getParentId()) && StringUtils.isEmpty(mdcOeeInfoVo.getEquipmentId())) { if ("2".equals(mdcOeeInfoVo.getTypeTree())) { //é¨é¨å±çº§ equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, mdcOeeInfoVo.getParentId()); } else { //产线å±çº§ equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, mdcOeeInfoVo.getParentId()); } } else if (StringUtils.isNotEmpty(mdcOeeInfoVo.getEquipmentId())) { //åå°è®¾å¤ä¿¡æ¯ mdcOeeInfoVo.setEquipmentIdList(Collections.singletonList(mdcOeeInfoVo.getEquipmentId())); } else { //æ¥è¯¢ç¨æ·æ¥æçææè®¾å¤ä¿¡æ¯ if ("2".equals(mdcOeeInfoVo.getTypeTree())) { //é¨é¨å±çº§ equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, null); } else { //产线å±çº§ equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, null); } } if (mdcOeeInfoVo.getEquipmentIdList() == null || mdcOeeInfoVo.getEquipmentIdList().isEmpty()) { mdcOeeInfoVo.setEquipmentIdList(equipmentIds); } if (mdcOeeInfoVo.getEquipmentIdList() == null || mdcOeeInfoVo.getEquipmentIdList().isEmpty()) { return null; } return this.baseMapper.pageList(page, mdcOeeInfoVo); } /** * å¯¼åº * * @param userId * @param mdcOeeInfoVo * @return */ @Override public ModelAndView exportXls(String userId, MdcOeeInfoVo mdcOeeInfoVo) { LambdaQueryWrapper<MdcOeeInfo> queryWrapper = new LambdaQueryWrapper<>(); List<String> equipmentIds = new ArrayList<>(); if (StringUtils.isNotEmpty(mdcOeeInfoVo.getParentId()) && StringUtils.isEmpty(mdcOeeInfoVo.getEquipmentId())) { if ("2".equals(mdcOeeInfoVo.getTypeTree())) { //é¨é¨å±çº§ equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, mdcOeeInfoVo.getParentId()); } else { //产线å±çº§ equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, mdcOeeInfoVo.getParentId()); } } else if (StringUtils.isNotEmpty(mdcOeeInfoVo.getEquipmentId())) { //åå°è®¾å¤ä¿¡æ¯ mdcOeeInfoVo.setEquipmentIdList(Collections.singletonList(mdcOeeInfoVo.getEquipmentId())); } else { //æ¥è¯¢ç¨æ·æ¥æçææè®¾å¤ä¿¡æ¯ if ("2".equals(mdcOeeInfoVo.getTypeTree())) { //é¨é¨å±çº§ equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, null); } else { //产线å±çº§ equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, null); } } if (mdcOeeInfoVo.getEquipmentIdList() == null || mdcOeeInfoVo.getEquipmentIdList().isEmpty()) { mdcOeeInfoVo.setEquipmentIdList(equipmentIds); } if (mdcOeeInfoVo.getEquipmentIdList() == null || mdcOeeInfoVo.getEquipmentIdList().isEmpty()) { return null; } else { queryWrapper.in(MdcOeeInfo::getEquipmentId, mdcOeeInfoVo.getEquipmentIdList()); } if (StringUtils.isNotEmpty(mdcOeeInfoVo.getEquipmentId())) { queryWrapper.eq(MdcOeeInfo::getEquipmentId, mdcOeeInfoVo.getEquipmentId()); } if (StringUtils.isNotEmpty(mdcOeeInfoVo.getStartTime()) && StringUtils.isNotEmpty(mdcOeeInfoVo.getEndTime())) { queryWrapper.between(MdcOeeInfo::getTheDate, mdcOeeInfoVo.getStartTime(), mdcOeeInfoVo.getEndTime()); } queryWrapper.orderByDesc(MdcOeeInfo::getTheDate).orderByDesc(MdcOeeInfo::getEquipmentId); ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); List<MdcOeeInfo> mdcOeeInfos = this.baseMapper.selectList(queryWrapper); // å¯¼åºæä»¶åç§° mv.addObject(NormalExcelConstants.FILE_NAME, "OEEæ°æ®å表"); mv.addObject(NormalExcelConstants.CLASS, MdcOeeInfo.class); LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("OEEæ°æ®åè¡¨æ°æ®", "导åºäºº:" + user.getRealname(), "OEEæ°æ®")); //update-end---author:wangshuai ---date:20211227 forï¼[JTC-116]导åºäººåæ»äº------------ mv.addObject(NormalExcelConstants.DATA_LIST, mdcOeeInfos); return mv; } /** * 计ç®OEE * * @param mdcOeeComputeVo */ @Override @Transactional(rollbackFor = Exception.class) public void computeOee(MdcOeeComputeVo mdcOeeComputeVo) { List<MdcOeeInfo> result = new ArrayList<>(); String startDate = mdcOeeComputeVo.getStartTime(); String endDate = mdcOeeComputeVo.getEndTime(); List<String> dateList = DateUtils.getDatesStringList(DateUtils.getShortDate(startDate), DateUtils.getShortDate(endDate)); if (!dateList.isEmpty()) { //è·å设å¤å表 List<MdcEquipment> equipmentList = mdcEquipmentService.list(); for (String validDate : dateList) { try { this.remove(new LambdaQueryWrapper<MdcOeeInfo>().eq(MdcOeeInfo::getTheDate, validDate)); } catch (Exception e) { log.error("åæ°æ ¼å¼ä¸å¯¹", e); } for (MdcEquipment mdcEquipment : equipmentList) { String equipmentId = mdcEquipment.getEquipmentId(); MdcOeeInfo mdcOeeInfo = new MdcOeeInfo(); // 设å¤ç¼å· mdcOeeInfo.setEquipmentId(equipmentId); // è®¡ç®æ¥æ mdcOeeInfo.setTheDate(validDate); // 工使¥åæ¶é´(min) --- ææ¯å¤©24å°æ¶ç® mdcOeeInfo.setCalendarLong(1440); // 计ååæºæ¶é´(min) --- æç»´æ¤æ°æ®ç»è®¡å½å¤©æ»æ¶é¿ Integer planCloseLong = mdcDowntimeService.findPlanTimeDuration(equipmentId, validDate, CommonConstant.CLOSE_TYPE_0); mdcOeeInfo.setPlanCloseLong(planCloseLong); // è´è·æ¶é´(min) --- æ¥å工使¶é´-计ååæºæ¶é´ Integer loadLong = mdcOeeInfo.getCalendarLong() - planCloseLong; mdcOeeInfo.setLoadLong(loadLong); // é计ååæºæ¶é´(min) --- æç»´æ¤æ°æ®ç»è®¡å½å¤©æ»æ¶é¿ Integer noPlanCloseLong = mdcDowntimeService.findPlanTimeDuration(equipmentId, validDate, CommonConstant.CLOSE_TYPE_1); mdcOeeInfo.setNoplanCloseLong(noPlanCloseLong); // å¼å¨æ¶é´(min) --- è´è·æ¶é´-é计ååæºæ¶é´ int actuateLong = loadLong - noPlanCloseLong; mdcOeeInfo.setActuateLong(actuateLong); // æ¶é´å¼å¨ç --- å¼å¨æ¶é´/è´è·æ¶é´ BigDecimal timeActuationRate = BigDecimal.ZERO; if (loadLong == 0) { mdcOeeInfo.setTimeActuationRate(timeActuationRate); } else { timeActuationRate = new BigDecimal(actuateLong).divide(new BigDecimal(loadLong), 4, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2, RoundingMode.HALF_UP); mdcOeeInfo.setTimeActuationRate(timeActuationRate.compareTo(new BigDecimal(100)) > 0 ? new BigDecimal(100) : timeActuationRate); } // ææè¿è¡æ¶é´ --- æéæ±ç»´æ¤é¶ä»¶å å·¥æ»æ¶é¿||ç³»ç»ä¸»è½´è´è½½æ¶é´ Integer effectiveRunLong = 0; //æ¥è¯¢è®¾å¤è¿è¡æ¶é´ effectiveRunLong = mdcEquipmentStatisticalInfoService.selectProcessLong(equipmentId, validDate.replace("-", "")); if (effectiveRunLong == null) { effectiveRunLong = 0; } mdcOeeInfo.setEffectiveRunLong(effectiveRunLong); // æ§è½å¼å¨ç --- ææè¿è¡æ¶é´/å¼å¨æ¶é´ BigDecimal performanceRate = BigDecimal.ZERO; if (effectiveRunLong != 0 && actuateLong != 0) { performanceRate = new BigDecimal(effectiveRunLong).divide(new BigDecimal(actuateLong), 4, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2, RoundingMode.HALF_UP); } mdcOeeInfo.setPerformanceRate(performanceRate.compareTo(new BigDecimal(100)) > 0 ? new BigDecimal(100) : performanceRate); // å å·¥é¶ä»¶æ°é --- æç»´æ¤æ°æ®ç»è®¡å½å¤© // å å·¥é¶ä»¶æ°é // TODO // Integer processCount = mdcJcRcJobreportService.selectTotalProcessCount(equipmentId, validDate); int processCount = 0; mdcOeeInfo.setProcessCount(processCount); // åæ ¼é¶ä»¶æ°é // TODO // Integer passCount = mdcJcRcJobreportService.selectTotalPassCount(equipmentId, validDate); int passCount = 0; mdcOeeInfo.setPassCount(passCount); // åæ ¼ç --- åæ ¼æ°/å å·¥æ° BigDecimal passRate = new BigDecimal("100"); if (processCount != 0 && passCount != 0) { passRate = new BigDecimal(passCount).divide(new BigDecimal(processCount), 4, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2, RoundingMode.HALF_UP); } mdcOeeInfo.setPassRate(passRate.compareTo(new BigDecimal(100)) > 0 ? new BigDecimal(100) : passRate); // OEE --- æ¶é´å¼å¨ç * æ§è½å¼å¨ç * 䏿¬¡åæ ¼ç BigDecimal oee = BigDecimal.ZERO; if (!timeActuationRate.equals(BigDecimal.ZERO) && !performanceRate.equals(BigDecimal.ZERO) && !passRate.equals(BigDecimal.ZERO)) { oee = timeActuationRate.multiply(performanceRate).multiply(passRate).divide(new BigDecimal("10000"), 4, RoundingMode.HALF_UP); } mdcOeeInfo.setOee(oee.compareTo(new BigDecimal(100)) > 0 ? new BigDecimal(100) : oee); result.add(mdcOeeInfo); } } } super.saveBatch(result); } } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcParameterServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,18 @@ package org.jeecg.modules.mdc.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.jeecg.modules.mdc.entity.MdcParameter; import org.jeecg.modules.mdc.mapper.MdcParameterMapper; import org.jeecg.modules.mdc.service.IMdcParameterService; import org.springframework.stereotype.Service; /** * @Description: mdcç®æ³å ¬å¼ * @Author: lius * @Date: 2025-08-13 * @Version: V1.0 */ @Service public class MdcParameterServiceImpl extends ServiceImpl<MdcParameterMapper, MdcParameter> implements IMdcParameterService { } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcPlanCloseServiceImpl.java
@@ -1,18 +1,10 @@ package org.jeecg.modules.mdc.service.impl; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.jeecg.modules.mdc.constant.MdcConstant; import org.jeecg.modules.mdc.entity.MdcPlanClose; import org.jeecg.modules.mdc.mapper.MdcPlanCloseMapper; import org.jeecg.modules.mdc.service.IMdcPlanCloseService; import org.springframework.stereotype.Service; import java.math.BigDecimal; import java.util.Arrays; import java.util.List; /** * @Description: mdc计ååæºç»´æ¤è¡¨ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/util/JexlFormulaCalculator.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,63 @@ package org.jeecg.modules.mdc.util; import org.apache.commons.jexl3.*; import org.springframework.stereotype.Component; import java.math.BigDecimal; import java.util.Map; /** * @Author: Lius * @CreateTime: 2025-08-19 * @Description: èªå®ä¹å ¬å¼è®¡ç®ç±» */ @Component public class JexlFormulaCalculator { // éè¿JexlBuilderå建JexlEngineå®ä¾ private static final JexlEngine jexl = new JexlBuilder().create(); /** * 计ç®èªå®ä¹å ¬å¼ï¼é¤æ°ä¸º0æ¶è¿å0 * @param formula å ¬å¼å符串ï¼å¦ "processLong/measureTime*1.0" * @param variables å ¬å¼ä¸çåéé®å¼å¯¹ * @return 计ç®ç»æï¼BigDecimalç±»åï¼é¤æ°ä¸º0æ¶è¿å0ï¼ */ public BigDecimal calculate(String formula, Map<String, Object> variables) { try { // è§£æå ¬å¼ JexlExpression expression = jexl.createExpression(formula); // å建ä¸ä¸æå¹¶æ³¨å ¥åé MapContext context = new MapContext(); for (Map.Entry<String, Object> entry : variables.entrySet()) { String varName = entry.getKey(); Object value = entry.getValue(); // ç¡®ä¿åé为æ°åç±»å if (value instanceof Number) { context.set(varName, value); } else { throw new IllegalArgumentException("åé" + varName + "å¿ é¡»æ¯æ°åç±»å"); } } // æ§è¡è®¡ç® Object result = expression.evaluate(context); // 转æ¢ä¸ºBigDecimalè¿å if (result instanceof Number) { return new BigDecimal(result.toString()); } else { throw new RuntimeException("å ¬å¼è®¡ç®ç»æä¸æ¯æ°å"); } } catch (JexlException e) { // å ³é®ï¼ä¸ä¾èµå é¨ç±»ï¼ç´æ¥éè¿å¼å¸¸æ¶æ¯å¤æé¤æ°ä¸º0 if (e.getMessage() != null && e.getMessage().contains("division by zero")) { return BigDecimal.ZERO; // 餿°ä¸º0è¿å0 } // å ¶ä»JEXLå¼å¸¸æ£å¸¸æåº throw new RuntimeException("å ¬å¼è®¡ç®å¤±è´¥: " + formula, e); } catch (Exception e) { throw new RuntimeException("å ¬å¼è®¡ç®å¤±è´¥: " + formula, e); } } } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/vo/MdcDowntimeVo.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,38 @@ package org.jeecg.modules.mdc.vo; import lombok.Data; import org.jeecg.modules.mdc.entity.MdcDowntime; import java.util.List; /** * @Author: Lius * @CreateTime: 2025-03-12 * @Description: */ @Data public class MdcDowntimeVo extends MdcDowntime { /** * å¼å§æ¶é´ -> 20220101 */ private String startTime; /** * ç»ææ¶é´ -> 20220101 */ private String endTime; private String effectiveDate; /** * æ ç±»å -> 1:车é´å±çº§ 2:é¨é¨å±çº§ */ private String typeTree; /** * å±çº§ID */ private String parentId; /** * 设å¤ids */ private List<String> equipmentIdList; private List<String> mdcSectionIds; } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/vo/MdcOeeComputeVo.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,13 @@ package org.jeecg.modules.mdc.vo; import lombok.Data; /** * @author Lius * @date 2025/1/20 14:41 */ @Data public class MdcOeeComputeVo { private String startTime; private String endTime; } lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/vo/MdcOeeInfoVo.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,20 @@ package org.jeecg.modules.mdc.vo; import lombok.Data; import org.jeecg.modules.mdc.entity.MdcOeeInfo; import java.util.List; /** * @author Lius * @date 2024/12/12 10:14 */ @Data public class MdcOeeInfoVo extends MdcOeeInfo { private String startTime; private String endTime; private String parentId; private String typeTree; private List<String> equipmentIdList; private String equipmentIds; } lxzn-module-system/lxzn-system-api/lxzn-system-local-api/src/main/java/org/jeecg/common/system/api/ISysBaseAPI.java
@@ -411,8 +411,6 @@ void delSysUploadRelaByBusIdAndBusType(String busId, String busType); String getUnitNameById(String unitId); String queryDictTextByKey(String dictCode, String key); String getVersionStatusByVersionAndBusinessType(Integer version, String businessType); @@ -422,8 +420,6 @@ DataVersion getDataVersionByBusinessId(String id); void removeDataVersionById(String id); String getEnterpriseNameById(String enterpriseId); List<DataVersion> getLastDataVersion(String businessType, String enterpriseId, String isLastusable); lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/ClientCategoryController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/ClientContactController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/ClientController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/ConstructorController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/DepartmentCategoryController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/EncodeRuleController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/EncodeRuleDepartController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/EncodeRuleDetailController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/EncodeRuleTableFieldRelateController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/EnterpriseAdministratorController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/EnterpriseController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/FactoryElementCategoryController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/FactoryModelController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/MaterialCategoryController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/MaterialController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/ProductionLineWarehouseController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/SupplierCategoryController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/SupplierContactController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/SupplierController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/UnitCategoryController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/UnitController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/UnitConversionController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/WarehouseAreaController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/WarehouseController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/WarehouseLocationController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/WorkCenterController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/WorkCenterEquipmentController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/controller/WorkCenterUserController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/Client.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/ClientCategory.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/ClientContact.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/Constructor.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/DepartmentCategory.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/EncodeRule.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/EncodeRuleDepart.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/EncodeRuleDetail.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/EncodeRuleTableFieldRelate.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/Enterprise.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/EnterpriseAdministrator.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/FactoryElementCategory.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/FactoryModel.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/FactoryModelDetail.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/Material.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/MaterialCategory.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/ProductionLineWarehouse.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/ProductionLineWarehouseClient.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/Supplier.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/SupplierCategory.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/SupplierContact.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/Unit.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/UnitCategory.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/UnitConversion.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/Warehouse.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/WarehouseArea.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/WarehouseClient.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/WarehouseLocation.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/WorkCenter.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/WorkCenterDetail.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/WorkCenterEquipment.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/entity/WorkCenterUser.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/ClientCategoryMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/ClientContactMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/ClientMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/ConstructorMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/DepartmentCategoryMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/EncodeRuleDepartMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/EncodeRuleDetailMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/EncodeRuleMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/EncodeRuleTableFieldRelateMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/EnterpriseAdministratorMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/EnterpriseMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/FactoryElementCategoryMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/FactoryModelMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/MaterialCategoryMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/MaterialMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/ProductionLineWarehouseClientMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/ProductionLineWarehouseMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/SupplierCategoryMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/SupplierContactMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/SupplierMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/UnitCategoryMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/UnitConversionMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/UnitMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/WarehouseAreaMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/WarehouseClientMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/WarehouseLocationMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/WarehouseMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/WorkCenterEquipmentMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/WorkCenterMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/WorkCenterUserMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/ClientMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/ConstructorMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/DepartmentCategoryMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/EncodeRuleDepartMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/EncodeRuleDetailMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/EncodeRuleMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/EncodeRuleTableFieldRelateMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/EnterpriseAdministratorMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/EnterpriseMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/FactoryElementCategoryMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/FactoryModelMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/MaterialCategoryMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/ProductionLineWarehouseClientMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/ProductionLineWarehouseMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/SupplierContactMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/SupplierMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/UnitCategoryMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/UnitConversionMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/UnitMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/WarehouseAreaMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/WarehouseClientMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/WarehouseLocationMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/WarehouseMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/WorkCenterEquipmentMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/WorkCenterMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/mapper/xml/WorkCenterUserMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IClientCategoryService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IClientContactService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IClientService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IConstructorService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IDepartmentCategoryService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IEncodeRuleDepartService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IEncodeRuleDetailService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IEncodeRuleService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IEncodeRuleTableFieldRelateService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IEnterpriseAdministratorService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IEnterpriseService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IFactoryElementCategoryService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IFactoryModelService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IMaterialCategoryService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IMaterialService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IProductionLineWarehouseClientService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IProductionLineWarehouseService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/ISupplierCategoryService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/ISupplierContactService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/ISupplierService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IUnitCategoryService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IUnitConversionService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IUnitService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IWarehouseAreaService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IWarehouseClientService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IWarehouseLocationService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IWarehouseService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IWorkCenterEquipmentService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IWorkCenterService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/IWorkCenterUserService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/ClientCategoryServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/ClientContactServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/ClientServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/ConstructorServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/DepartmentCategoryServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/EncodeRuleServiceDepartImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/EncodeRuleServiceDetailImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/EncodeRuleServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/EncodeRuleTableFieldRelateServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/EnterpriseAdministratorServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/EnterpriseServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/FactoryElementCategoryServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/FactoryModelServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/MaterialCategoryImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/MaterialServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/ProductionLineWarehouseClientServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/ProductionLineWarehouseServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/SupplierCategoryServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/SupplierContactServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/SupplierServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/UnitCategoryServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/UnitConversionServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/UnitServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/WarehouseAreaServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/WarehouseClientServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/WarehouseLocationServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/WarehouseServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/WorkCenterEquipmentServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/WorkCenterServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/base/service/impl/WorkCenterUserServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/controller/AdministratorController.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/entity/Administrator.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/AdministratorMapper.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/AdministratorMapper.xml
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/MdcProductionMapper.xml
@@ -4,31 +4,31 @@ <!--é彿¥è¯¢ææåèç¹--> <select id="recursionChildren" resultType="java.lang.String"> WITH temp ( id ) AS ( WITH RECURSIVE temp ( id ) AS ( SELECT id FROM mdc_production WHERE id = #{ productionId } UNION ALL id = #{productionId} UNION ALL SELECT a.id FROM mdc_production a INNER JOIN temp ON a.parent_id = temp.id INNER JOIN temp ON a.parent_id = temp.id ) SELECT * FROM temp FROM temp </select> <!--æ ¹æ®ç¨æ·idå车é´idè·åç¨æ·æ¥æç车é´id--> <select id="findFirstProduction" resultType="java.lang.String"> SELECT TOP 1 t2.id FROM mdc_user_production t1 LEFT JOIN mdc_production t2 ON t1.pro_id = t2.id WHERE t1.user_id = #{ userId } AND t2.parent_id = #{productionId} SELECT t2.id FROM mdc_user_production t1 LEFT JOIN mdc_production t2 ON t1.pro_id = t2.id WHERE t1.user_id = #{ userId } AND t2.parent_id = #{productionId} LIMIT 1 </select> <!--æ ¹æ®ç¨æ·idæ¥è¯¢ç¨æ·å·¥æ®µæé--> <select id="findThreeProductionId" resultType="java.lang.String"> SELECT TOP 1 t2.id id FROM mdc_user_production t1 LEFT JOIN mdc_production t2 ON t1.pro_id = t2.id WHERE t1.user_id = #{userId} AND t2.org_type = '3' SELECT t2.id id FROM mdc_user_production t1 LEFT JOIN mdc_production t2 ON t1.pro_id = t2.id WHERE t1.user_id = #{userId} AND t2.org_type = '3' LIMIT 1 </select> </mapper> lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/mapper/xml/SysAnnouncementSendMapper.xml
@@ -126,7 +126,7 @@ </select> <select id="findLastMessage" resultType="org.jeecg.modules.system.entity.SysAnnouncement"> SELECT TOP 1 * FROM sys_announcement WHERE msg_content = #{messageContent} ORDER BY create_time DESC; SELECT * FROM sys_announcement WHERE msg_content = #{messageContent} ORDER BY create_time DESC LIMIT 1 </select> </mapper> lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/IAdministratorService.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/AdministratorServiceImpl.java
ÎļþÒÑɾ³ý lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/system/service/impl/SysBaseApiImpl.java
@@ -29,9 +29,6 @@ import org.jeecg.common.system.vo.*; import org.jeecg.common.util.*; import org.jeecg.common.util.dynamic.db.FreemarkerParseFactory; import org.jeecg.modules.base.entity.Unit; import org.jeecg.modules.base.service.IEnterpriseService; import org.jeecg.modules.base.service.IUnitService; import org.jeecg.modules.message.entity.SysMessageTemplate; import org.jeecg.modules.message.handle.impl.DdSendMsgHandle; import org.jeecg.modules.message.handle.impl.EmailSendMsgHandle; @@ -125,12 +122,6 @@ @Autowired private IDataVersionService dataVersionService; @Autowired private IUnitService unitService; @Autowired private IEnterpriseService enterpriseService; @Autowired private IQuartzJobService quartzJobService; @@ -1382,16 +1373,6 @@ } @Override public String getUnitNameById(String unitId) { Unit unit = unitService.getById(unitId); String unitName = ""; if(unit != null){ unitName = unit.getName(); } return unitName; } @Override public String queryDictTextByKey(String dictCode, String key) { return sysDictService.queryDictTextByKey(dictCode, key); @@ -1416,18 +1397,6 @@ @Override public void removeDataVersionById(String id) { dataVersionService.removeById(id); } /** * æ ¹æ®ä¼ä¸IDè·åä¼ä¸åç§° * * @param enterpriseId * @return */ @Override public String getEnterpriseNameById(String enterpriseId) { String enterpriseName = enterpriseService.getById(enterpriseId).getName(); return enterpriseName; } @Override pom.xml
@@ -59,6 +59,8 @@ <!-- Log4j2çé·æ¼æ´ --> <log4j2.version>2.17.0</log4j2.version> <logback.version>1.2.9</logback.version> <!--jexl3--> <jexl.version>3.2.1</jexl.version> </properties> <modules>