From c9d0d76139630252573cdea63fd741d04fad6571 Mon Sep 17 00:00:00 2001 From: lius <Lius2225@163.com> Date: 星期一, 17 七月 2023 14:14:04 +0800 Subject: [PATCH] 标准时间加工管理 --- lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcNoplanCloseMapper.xml | 2 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcTorqueConfig.java | 2 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcStandardProcessDurationMapper.xml | 33 +++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcStandardProcessDurationServiceImpl.java | 154 +++++++++++++++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcStandardProcessDurationService.java | 40 ++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcNoplanCloseServiceImpl.java | 2 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcStandardProcessDurationController.java | 164 ++++++++++++++++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcStandardProcessDurationMapper.java | 27 +++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcNoplanCloseController.java | 5 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcStandardProcessDuration.java | 96 ++++++++++ 10 files changed, 518 insertions(+), 7 deletions(-) diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcNoplanCloseController.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcNoplanCloseController.java index f2db157..6431b82 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcNoplanCloseController.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcNoplanCloseController.java @@ -6,20 +6,17 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -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.apache.commons.lang3.StringUtils; import org.apache.shiro.SecurityUtils; import org.jeecg.common.api.vo.Result; import org.jeecg.common.system.base.controller.JeecgController; -import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.common.aspect.annotation.AutoLog; import lombok.extern.slf4j.Slf4j; import org.jeecg.common.system.vo.LoginUser; -import org.jeecg.modules.mdc.entity.MdcEquipmentRepair; import org.jeecg.modules.mdc.entity.MdcNoplanClose; import org.jeecg.modules.mdc.service.IMdcNoplanCloseService; @@ -167,7 +164,7 @@ public ModelAndView exportXls(HttpServletRequest request, MdcNoplanClose mdcNoplanClose) { LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); String userId = user.getId(); - return this.mdcNoplanCloseService.exportXls(userId, mdcNoplanClose); + return mdcNoplanCloseService.exportXls(userId, mdcNoplanClose); } /** diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcStandardProcessDurationController.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcStandardProcessDurationController.java new file mode 100644 index 0000000..853d093 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcStandardProcessDurationController.java @@ -0,0 +1,164 @@ +package org.jeecg.modules.mdc.controller; + +import java.util.Arrays; + +import javax.annotation.Resource; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +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.apache.shiro.SecurityUtils; +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.base.controller.JeecgController; +import org.jeecg.common.system.query.QueryGenerator; +import org.jeecg.common.aspect.annotation.AutoLog; + +import lombok.extern.slf4j.Slf4j; +import org.jeecg.common.system.vo.LoginUser; +import org.jeecg.modules.mdc.entity.MdcNoplanClose; +import org.jeecg.modules.mdc.entity.MdcStandardProcessDuration; + + +import org.jeecg.modules.mdc.service.IMdcStandardProcessDurationService; +import org.springframework.web.bind.annotation.*; + +import org.springframework.web.servlet.ModelAndView; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; + +/** + * @Description: 鏍囧噯鍔犲伐鏃堕棿琛� + * @Author: Lius + * @Date: 2023-07-17 + * @Version: V1.0 + */ +@Slf4j +@Api(tags = "鏍囧噯鍔犲伐鏃堕棿琛�") +@RestController +@RequestMapping("/mdc/mdcStandardProcessDuration") +public class MdcStandardProcessDurationController extends JeecgController<MdcStandardProcessDuration, IMdcStandardProcessDurationService> { + + @Resource + private IMdcStandardProcessDurationService mdcStandardProcessDurationService; + + /** + * 鍒嗛〉鍒楄〃鏌ヨ + * + * @param mdcStandardProcessDuration + * @param pageNo + * @param pageSize + * @param req + * @return + */ + @AutoLog(value = "鏍囧噯鍔犲伐鏃堕棿琛�-鍒嗛〉鍒楄〃鏌ヨ") + @ApiOperation(value = "鏍囧噯鍔犲伐鏃堕棿琛�-鍒嗛〉鍒楄〃鏌ヨ", notes = "鏍囧噯鍔犲伐鏃堕棿琛�-鍒嗛〉鍒楄〃鏌ヨ") + @GetMapping(value = "/list") + public Result<?> queryPageList(MdcStandardProcessDuration mdcStandardProcessDuration, + @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<MdcStandardProcessDuration> page = new Page<MdcStandardProcessDuration>(pageNo, pageSize); + IPage<MdcStandardProcessDuration> pageList = mdcStandardProcessDurationService.pageList(userId, page, mdcStandardProcessDuration, req); + return Result.OK(pageList); + } + + /** + * 娣诲姞 + * + * @param mdcStandardProcessDuration + * @return + */ + @AutoLog(value = "鏍囧噯鍔犲伐鏃堕棿琛�-娣诲姞") + @ApiOperation(value = "鏍囧噯鍔犲伐鏃堕棿琛�-娣诲姞", notes = "鏍囧噯鍔犲伐鏃堕棿琛�-娣诲姞") + @PostMapping(value = "/add") + public Result<?> add(@RequestBody MdcStandardProcessDuration mdcStandardProcessDuration) { + mdcStandardProcessDurationService.save(mdcStandardProcessDuration); + return Result.OK("娣诲姞鎴愬姛锛�"); + } + + /** + * 缂栬緫 + * + * @param mdcStandardProcessDuration + * @return + */ + @AutoLog(value = "鏍囧噯鍔犲伐鏃堕棿琛�-缂栬緫") + @ApiOperation(value = "鏍囧噯鍔犲伐鏃堕棿琛�-缂栬緫", notes = "鏍囧噯鍔犲伐鏃堕棿琛�-缂栬緫") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) + public Result<?> edit(@RequestBody MdcStandardProcessDuration mdcStandardProcessDuration) { + mdcStandardProcessDurationService.updateById(mdcStandardProcessDuration); + 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) { + mdcStandardProcessDurationService.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.mdcStandardProcessDurationService.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) { + MdcStandardProcessDuration mdcStandardProcessDuration = mdcStandardProcessDurationService.getById(id); + return Result.OK(mdcStandardProcessDuration); + } + + /** + * 瀵煎嚭excel + * + * @param request + * @param mdcStandardProcessDuration + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, MdcStandardProcessDuration mdcStandardProcessDuration) { + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + String userId = user.getId(); + return mdcStandardProcessDurationService.exportXls(userId, mdcStandardProcessDuration); + } + + /** + * 閫氳繃excel瀵煎叆鏁版嵁 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, MdcStandardProcessDuration.class); + } + +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcStandardProcessDuration.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcStandardProcessDuration.java new file mode 100644 index 0000000..a08388f --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcStandardProcessDuration.java @@ -0,0 +1,96 @@ +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: 2023-07-17 + * @Version: V1.0 + */ +@Data +@TableName("mdc_standard_process_duration") +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@ApiModel(value = "mdc_standard_process_duration瀵硅薄", description = "鏍囧噯鍔犲伐鏃堕棿琛�") +public class MdcStandardProcessDuration extends JeecgEntity implements Serializable { + + private static final long serialVersionUID = -4120597972937450875L; + + /** + * 璁惧缂栧彿 + */ + @Excel(name = "璁惧缂栧彿", width = 15) + @ApiModelProperty(value = "璁惧缂栧彿") + private String equipmentId; + /** + * 璁惧鍚嶇О + */ + @Excel(name = "璁惧鍚嶇О", width = 15) + @ApiModelProperty(value = "璁惧鍚嶇О") + private String equipmentName; + /** + * 闆朵欢鍙� + */ + @Excel(name = "闆朵欢鍙�", width = 15) + @ApiModelProperty(value = "闆朵欢鍙�") + private String partsCode; + /** + * 鎵规鍙� + */ + @Excel(name = "鎵规鍙�", width = 15) + @ApiModelProperty(value = "鎵规鍙�") + private String batchCode; + /** + * 绋嬪簭鍙� + */ + @Excel(name = "绋嬪簭鍙�", width = 15) + @ApiModelProperty(value = "绋嬪簭鍙�") + private String sequenceNumber; + /** + * 鏃堕暱 + */ + @Excel(name = "鏃堕暱", width = 15) + @ApiModelProperty(value = "鏃堕暱") + private Integer duration; + /** + * 澶囨敞 + */ + @Excel(name = "澶囨敞", width = 15) + @ApiModelProperty(value = "澶囨敞") + private String remark; + + /** + * 鍓嶅彴浼犲叆 鍒ゆ柇姣忎釜id + */ + @TableField(exist = false) + private String parentId; + + /** + * 鍓嶅彴浼犲叆 杞﹂棿灞傜骇:1 閮ㄩ棬灞傜骇:2 + */ + @TableField(exist = false) + private String typeTree; + + /** + * 閮ㄩ棬parentId 鍏宠仈瀛愰泦id + */ + @TableField(exist = false) + private List<String> mdcSectionIds; + + @TableField(exist = false) + private String equipmentIds; + +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcTorqueConfig.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcTorqueConfig.java index 5162f82..1346b7a 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcTorqueConfig.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcTorqueConfig.java @@ -29,7 +29,7 @@ @TableName("mdc_torque_config") @ApiModel(value = "mdc_torque_config瀵硅薄", description = "鎵煩閰嶇疆绠$悊") public class MdcTorqueConfig implements Serializable { - private static final long serialVersionUID = 1L; + private static final long serialVersionUID = -8646261637017242975L; /** * 涓婚敭 diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcStandardProcessDurationMapper.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcStandardProcessDurationMapper.java new file mode 100644 index 0000000..c48000a --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcStandardProcessDurationMapper.java @@ -0,0 +1,27 @@ +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.MdcStandardProcessDuration; + +/** + * @Description: 鏍囧噯鍔犲伐鏃堕棿琛� + * @Author: Lius + * @Date: 2023-07-17 + * @Version: V1.0 + */ +public interface MdcStandardProcessDurationMapper extends BaseMapper<MdcStandardProcessDuration> { + + /** + * 鍒嗛〉鏌ヨ + * + * @param page + * @param mdcStandardProcessDuration + * @return + */ + IPage<MdcStandardProcessDuration> pageList(Page<MdcStandardProcessDuration> page, @Param("mdcStandardProcessDuration") MdcStandardProcessDuration mdcStandardProcessDuration); + +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcNoplanCloseMapper.xml b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcNoplanCloseMapper.xml index cc323de..2a4548c 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcNoplanCloseMapper.xml +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcNoplanCloseMapper.xml @@ -27,7 +27,7 @@ #{ id } </foreach> </if> - ORDER BY start_time ASC </where> + ORDER BY start_time ASC </select> </mapper> \ No newline at end of file diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcStandardProcessDurationMapper.xml b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcStandardProcessDurationMapper.xml new file mode 100644 index 0000000..e6a576c --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcStandardProcessDurationMapper.xml @@ -0,0 +1,33 @@ +<?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.MdcStandardProcessDurationMapper"> + + <!--鍒嗛〉鏌ヨ--> + <select id="pageList" resultType="org.jeecg.modules.mdc.entity.MdcStandardProcessDuration"> + SELECT * FROM mdc_standard_process_duration + <where> + <if test="mdcStandardProcessDuration.equipmentId != null and mdcStandardProcessDuration.equipmentId != ''"> + AND equipment_id LIKE CONCAT(CONCAT('%',#{ mdcStandardProcessDuration.equipmentId }),'%') + </if> + <if test="mdcStandardProcessDuration.equipmentName != null and mdcStandardProcessDuration.equipmentName != ''"> + AND equipment_name LIKE CONCAT(CONCAT('%',#{ mdcStandardProcessDuration.equipmentName }),'%') + </if> + <if test="mdcStandardProcessDuration.partsCode != null and mdcStandardProcessDuration.partsCode != ''"> + AND parts_code LIKE CONCAT(CONCAT('%',#{ mdcStandardProcessDuration.partsCode }),'%') + </if> + <if test="mdcStandardProcessDuration.batchCode != null and mdcStandardProcessDuration.batchCode != ''"> + AND batch_code LIKE CONCAT(CONCAT('%',#{ mdcStandardProcessDuration.batchCode }),'%') + </if> + <if test="mdcStandardProcessDuration.sequenceNumber != null and mdcStandardProcessDuration.sequenceNumber != ''"> + AND sequence_number LIKE CONCAT(CONCAT('%',#{ mdcStandardProcessDuration.sequenceNumber }),'%') + </if> + <if test="mdcStandardProcessDuration.mdcSectionIds != null and mdcStandardProcessDuration.mdcSectionIds.size() > 0 "> + AND equipment_id IN + <foreach collection="mdcStandardProcessDuration.mdcSectionIds" item="id" index="index" open="(" close=")" separator=","> + #{ id } + </foreach> + </if> + </where> + ORDER BY equipment_name ASC + </select> +</mapper> \ No newline at end of file diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcStandardProcessDurationService.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcStandardProcessDurationService.java new file mode 100644 index 0000000..065ac93 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcStandardProcessDurationService.java @@ -0,0 +1,40 @@ +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.MdcStandardProcessDuration; +import org.springframework.web.servlet.ModelAndView; + +import javax.servlet.http.HttpServletRequest; + +/** + * @Description: 鏍囧噯鍔犲伐鏃堕棿琛� + * @Author: Lius + * @Date: 2023-07-17 + * @Version: V1.0 + */ +public interface IMdcStandardProcessDurationService extends IService<MdcStandardProcessDuration> { + + /** + * 鍒嗛〉鏌ヨ + * + * @param userId + * @param page + * @param mdcStandardProcessDuration + * @param req + * @return + */ + IPage<MdcStandardProcessDuration> pageList(String userId, Page<MdcStandardProcessDuration> page, MdcStandardProcessDuration mdcStandardProcessDuration, HttpServletRequest req); + + /** + * 瀵煎嚭 + * + * @param userId + * @param mdcStandardProcessDuration + * @return + */ + ModelAndView exportXls(String userId, MdcStandardProcessDuration mdcStandardProcessDuration); + +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcNoplanCloseServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcNoplanCloseServiceImpl.java index 4da0d4c..699683d 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcNoplanCloseServiceImpl.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcNoplanCloseServiceImpl.java @@ -294,7 +294,7 @@ queryWrapper.like(MdcNoplanClose::getEquipmentId, mdcNoplanClose.getEquipmentId()); } if (StringUtils.isNotEmpty(mdcNoplanClose.getEquipmentName())) { - queryWrapper.like(MdcNoplanClose::getEquipmentId, mdcNoplanClose.getEquipmentId()); + queryWrapper.like(MdcNoplanClose::getEquipmentName, mdcNoplanClose.getEquipmentName()); } if (mdcNoplanClose.getEndTime() != null) { queryWrapper.le(MdcNoplanClose::getStartTime, mdcNoplanClose.getEndTime()); diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcStandardProcessDurationServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcStandardProcessDurationServiceImpl.java new file mode 100644 index 0000000..4242de2 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcStandardProcessDurationServiceImpl.java @@ -0,0 +1,154 @@ +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.system.vo.LoginUser; +import org.jeecg.modules.mdc.entity.MdcNoplanClose; +import org.jeecg.modules.mdc.entity.MdcStandardProcessDuration; +import org.jeecg.modules.mdc.mapper.MdcStandardProcessDurationMapper; +import org.jeecg.modules.mdc.service.IMdcEquipmentService; +import org.jeecg.modules.mdc.service.IMdcStandardProcessDurationService; +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.web.servlet.ModelAndView; + +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: 2023-07-17 + * @Version: V1.0 + */ +@Service +public class MdcStandardProcessDurationServiceImpl extends ServiceImpl<MdcStandardProcessDurationMapper, MdcStandardProcessDuration> implements IMdcStandardProcessDurationService { + + @Resource + private IMdcEquipmentService mdcEquipmentService; + + /** + * 鍒嗛〉鏌ヨ + * + * @param userId + * @param page + * @param mdcStandardProcessDuration + * @param req + * @return + */ + @Override + public IPage<MdcStandardProcessDuration> pageList(String userId, Page<MdcStandardProcessDuration> page, MdcStandardProcessDuration mdcStandardProcessDuration, HttpServletRequest req) { + List<String> equipmentIds = new ArrayList<>(); + if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getParentId()) && StringUtils.isEmpty(mdcStandardProcessDuration.getEquipmentId())) { + if ("2".equals(mdcStandardProcessDuration.getTypeTree())) { + //閮ㄩ棬灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, mdcStandardProcessDuration.getParentId()); + } else { + //浜х嚎灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, mdcStandardProcessDuration.getParentId()); + } + } else if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getEquipmentId())) { + //鍗曞彴璁惧淇℃伅 + mdcStandardProcessDuration.setMdcSectionIds(Collections.singletonList(mdcStandardProcessDuration.getEquipmentId())); + } else { + //鏌ヨ鐢ㄦ埛鎷ユ湁鐨勬墍鏈夎澶囦俊鎭� + if ("2".equals(mdcStandardProcessDuration.getTypeTree())) { + //閮ㄩ棬灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, null); + } else { + //浜х嚎灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, null); + } + } + + if (mdcStandardProcessDuration.getMdcSectionIds() == null || mdcStandardProcessDuration.getMdcSectionIds().isEmpty()) { + mdcStandardProcessDuration.setMdcSectionIds(equipmentIds); + } + + if (mdcStandardProcessDuration.getMdcSectionIds() == null || mdcStandardProcessDuration.getMdcSectionIds().isEmpty()) { + return null; + } + return this.baseMapper.pageList(page, mdcStandardProcessDuration); + } + + /** + * 瀵煎嚭 + * + * @param userId + * @param mdcStandardProcessDuration + * @return + */ + @Override + public ModelAndView exportXls(String userId, MdcStandardProcessDuration mdcStandardProcessDuration) { + LambdaQueryWrapper<MdcStandardProcessDuration> queryWrapper = new LambdaQueryWrapper<>(); + List<String> equipmentIds = new ArrayList<>(); + if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getParentId()) && StringUtils.isEmpty(mdcStandardProcessDuration.getEquipmentId())) { + if ("2".equals(mdcStandardProcessDuration.getTypeTree())) { + //閮ㄩ棬灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, mdcStandardProcessDuration.getParentId()); + } else { + //浜х嚎灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, mdcStandardProcessDuration.getParentId()); + } + } else if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getEquipmentId())) { + //鍗曞彴璁惧淇℃伅 + mdcStandardProcessDuration.setMdcSectionIds(Collections.singletonList(mdcStandardProcessDuration.getEquipmentId())); + } else { + //鏌ヨ鐢ㄦ埛鎵�鎷ユ湁鐨勬墍鏈夎澶囦俊鎭� + if ("2".equals(mdcStandardProcessDuration.getTypeTree())) { + //閮ㄩ棬灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, null); + } else { + equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, null); + } + } + if (mdcStandardProcessDuration.getMdcSectionIds() == null || mdcStandardProcessDuration.getMdcSectionIds().isEmpty()) { + mdcStandardProcessDuration.setMdcSectionIds(equipmentIds); + } + if (mdcStandardProcessDuration.getMdcSectionIds() == null || mdcStandardProcessDuration.getMdcSectionIds().isEmpty()) { + return null; + } else { + queryWrapper.in(MdcStandardProcessDuration::getEquipmentId, mdcStandardProcessDuration.getMdcSectionIds()); + } + if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getEquipmentId())) { + queryWrapper.like(MdcStandardProcessDuration::getEquipmentId, mdcStandardProcessDuration.getEquipmentId()); + } + if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getEquipmentName())) { + queryWrapper.like(MdcStandardProcessDuration::getEquipmentName, mdcStandardProcessDuration.getEquipmentName()); + } + if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getPartsCode())) { + queryWrapper.like(MdcStandardProcessDuration::getPartsCode, mdcStandardProcessDuration.getPartsCode()); + } + if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getBatchCode())) { + queryWrapper.like(MdcStandardProcessDuration::getBatchCode, mdcStandardProcessDuration.getBatchCode()); + } + if (StringUtils.isNotEmpty(mdcStandardProcessDuration.getSequenceNumber())) { + queryWrapper.like(MdcStandardProcessDuration::getSequenceNumber, mdcStandardProcessDuration.getSequenceNumber()); + } + queryWrapper.orderByAsc(MdcStandardProcessDuration::getEquipmentName); + // Step.2 AutoPoi 瀵煎嚭Excel + ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); + List<MdcStandardProcessDuration> mdcStandardProcessDurations = this.baseMapper.selectList(queryWrapper); + // 瀵煎嚭鏂囦欢鍚嶇О + mv.addObject(NormalExcelConstants.FILE_NAME, "鏍囧噯鍔犲伐鏃堕棿鍒楄〃"); + mv.addObject(NormalExcelConstants.CLASS, MdcNoplanClose.class); + //鑾峰彇褰撳墠鐧诲綍鐢ㄦ埛 + //update-begin---author:wangshuai ---date:20211227 for锛歔JTC-116]瀵煎嚭浜哄啓姝讳簡------------ + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("鏍囧噯鍔犲伐鏃堕棿鍒楄〃鏁版嵁", "瀵煎嚭浜�:"+user.getRealname(), "瀵煎嚭淇℃伅")); + //update-end---author:wangshuai ---date:20211227 for锛歔JTC-116]瀵煎嚭浜哄啓姝讳簡------------ + mv.addObject(NormalExcelConstants.DATA_LIST, mdcStandardProcessDurations); + return mv; + } +} -- Gitblit v1.9.3