From 13552d0d5da5c990e037825f43cde55cbf00aa67 Mon Sep 17 00:00:00 2001 From: Lius <Lius2225@163.com> Date: 星期三, 11 十二月 2024 16:18:22 +0800 Subject: [PATCH] 零件加工数据维护功能 --- lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcPartProcessInfoMapper.xml | 36 ++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcPartProcessInfoController.java | 165 ++++++++++++++++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcPartProcessInfoService.java | 47 +++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcPartProcessInfoServiceImpl.java | 153 +++++++++++++++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcPartProcessInfoMapper.java | 25 ++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcPartProcessInfo.java | 71 +++++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/vo/MdcPartProcessInfoVo.java | 20 ++ 7 files changed, 517 insertions(+), 0 deletions(-) diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcPartProcessInfoController.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcPartProcessInfoController.java new file mode 100644 index 0000000..22087e5 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcPartProcessInfoController.java @@ -0,0 +1,165 @@ +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.apache.commons.lang.StringUtils; +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.query.QueryGenerator; +import org.jeecg.common.system.vo.LoginUser; +import org.jeecg.modules.mdc.entity.MdcPartProcessInfo; +import org.jeecg.modules.mdc.service.IMdcPartProcessInfoService; +import org.jeecg.modules.mdc.vo.MdcPartProcessInfoVo; +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: 2024-12-11 + */ +@Slf4j +@Api(tags = "闆朵欢鍔犲伐鏁版嵁琛�") +@RestController +@RequestMapping("/mdc/mdcPartProcessInfo") +public class MdcPartProcessInfoController extends JeecgController<MdcPartProcessInfo, IMdcPartProcessInfoService> { + + @Resource + private IMdcPartProcessInfoService mdcPartProcessInfoService; + + /** + * 鍒嗛〉鍒楄〃鏌ヨ + * + * @param mdcPartProcessInfo + * @param pageNo + * @param pageSize + * @param req + * @return + */ + @AutoLog(value = "闆朵欢鍔犲伐鏁版嵁琛�-鍒嗛〉鍒楄〃鏌ヨ") + @ApiOperation(value = "闆朵欢鍔犲伐鏁版嵁琛�-鍒嗛〉鍒楄〃鏌ヨ", notes = "闆朵欢鍔犲伐鏁版嵁琛�-鍒嗛〉鍒楄〃鏌ヨ") + @GetMapping(value = "/list") + public Result<?> queryPageList(MdcPartProcessInfoVo mdcPartProcessInfo, + @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<MdcPartProcessInfo> page = new Page<MdcPartProcessInfo>(pageNo, pageSize); + IPage<MdcPartProcessInfo> pageList = mdcPartProcessInfoService.pageList(userId, page, mdcPartProcessInfo, req); + return Result.OK(pageList); + } + + /** + * 娣诲姞 + * + * @param mdcPartProcessInfo + * @return + */ + @AutoLog(value = "闆朵欢鍔犲伐鏁版嵁琛�-娣诲姞") + @ApiOperation(value = "闆朵欢鍔犲伐鏁版嵁琛�-娣诲姞", notes = "闆朵欢鍔犲伐鏁版嵁琛�-娣诲姞") + @PostMapping(value = "/add") + public Result<?> add(@RequestBody MdcPartProcessInfoVo mdcPartProcessInfo) { + if (StringUtils.isBlank(mdcPartProcessInfo.getEquipmentIds())) { + return Result.error("鏈�夋嫨璁惧锛岃鎺掓煡锛�"); + } + boolean result = mdcPartProcessInfoService.addPartProcess(mdcPartProcessInfo); + if (!result) { + return Result.error("娣诲姞澶辫触锛�"); + } + return Result.OK("娣诲姞鎴愬姛锛�"); + } + + /** + * 缂栬緫 + * + * @param mdcPartProcessInfo + * @return + */ + @AutoLog(value = "闆朵欢鍔犲伐鏁版嵁琛�-缂栬緫") + @ApiOperation(value = "闆朵欢鍔犲伐鏁版嵁琛�-缂栬緫", notes = "闆朵欢鍔犲伐鏁版嵁琛�-缂栬緫") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) + public Result<?> edit(@RequestBody MdcPartProcessInfo mdcPartProcessInfo) { + mdcPartProcessInfoService.updateById(mdcPartProcessInfo); + 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) { + mdcPartProcessInfoService.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.mdcPartProcessInfoService.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) { + MdcPartProcessInfo mdcPartProcessInfo = mdcPartProcessInfoService.getById(id); + return Result.OK(mdcPartProcessInfo); + } + + /** + * 瀵煎嚭excel + * + * @param request + * @param mdcPartProcessInfo + */ + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, MdcPartProcessInfoVo mdcPartProcessInfo) { + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + String userId = user.getId(); + return mdcPartProcessInfoService.exportXls(userId, mdcPartProcessInfo); + } + + /** + * 閫氳繃excel瀵煎叆鏁版嵁 + * + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { + return super.importExcel(request, response, MdcPartProcessInfo.class); + } + +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcPartProcessInfo.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcPartProcessInfo.java new file mode 100644 index 0000000..79e971f --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcPartProcessInfo.java @@ -0,0 +1,71 @@ +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: 闆朵欢鍔犲伐鏁版嵁琛� + * @Author: lius + * @Date: 2024-12-11 + */ +@Data +@TableName("mdc_part_process_info") +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@ApiModel(value = "mdc_part_process_info瀵硅薄", description = "闆朵欢鍔犲伐鏁版嵁琛�") +public class MdcPartProcessInfo extends JeecgEntity implements Serializable { + + private static final long serialVersionUID = -5287766951707976335L; + + /** + * 鏃ユ湡 + */ + @Excel(name = "鏃ユ湡", width = 15) + @ApiModelProperty(value = "鏃ユ湡") + private String theDate; + /** + * 璁惧缂栧彿 + */ + @Excel(name = "璁惧缂栧彿", width = 15) + @ApiModelProperty(value = "璁惧缂栧彿") + private String equipmentId; + /** + * 闆朵欢鍙� + */ + @Excel(name = "闆朵欢鍙�", width = 15) + @ApiModelProperty(value = "闆朵欢鍙�") + private String partId; + /** + * 鏍囧噯鍔犲伐鏃堕暱锛坢in锛� + */ + @Excel(name = "鏍囧噯鍔犲伐鏃堕暱锛坢in锛�", width = 15) + @ApiModelProperty(value = "鏍囧噯鍔犲伐鏃堕暱锛坢in锛�") + private Integer standardProcessLong; + /** + * 鍔犲伐闆朵欢鏁伴噺 + */ + @Excel(name = "鍔犲伐闆朵欢鏁伴噺", width = 15) + @ApiModelProperty(value = "鍔犲伐闆朵欢鏁伴噺") + private Integer processCount; + /** + * 鍚堟牸闆朵欢鏁伴噺 + */ + @Excel(name = "鍚堟牸闆朵欢鏁伴噺", width = 15) + @ApiModelProperty(value = "鍚堟牸闆朵欢鏁伴噺") + private Integer passCount; + /** + * 鍔犲伐鎬绘椂闀�(min) + */ + @Excel(name = "鍔犲伐鎬绘椂闀�(min)", width = 15) + @ApiModelProperty(value = "鍔犲伐鎬绘椂闀�(min)") + private Integer totalProcessLong; + +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcPartProcessInfoMapper.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcPartProcessInfoMapper.java new file mode 100644 index 0000000..19bec11 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcPartProcessInfoMapper.java @@ -0,0 +1,25 @@ +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.MdcPartProcessInfo; +import org.jeecg.modules.mdc.vo.MdcPartProcessInfoVo; + +/** + * @Description: 闆朵欢鍔犲伐鏁版嵁琛� + * @Author: lius + * @Date: 2024-12-11 + */ +public interface MdcPartProcessInfoMapper extends BaseMapper<MdcPartProcessInfo> { + + /** + * 鍒嗛〉鍒楄〃 + * + * @param page + * @param mdcPartProcessInfo + * @return + */ + IPage<MdcPartProcessInfo> pageList(Page<MdcPartProcessInfo> page, @Param("mdcPartProcessInfo") MdcPartProcessInfoVo mdcPartProcessInfo); +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcPartProcessInfoMapper.xml b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcPartProcessInfoMapper.xml new file mode 100644 index 0000000..b2ceba1 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcPartProcessInfoMapper.xml @@ -0,0 +1,36 @@ +<?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.MdcPartProcessInfoMapper"> + + <select id="pageList" resultType="org.jeecg.modules.mdc.entity.MdcPartProcessInfo"> + SELECT + * + FROM + mdc_part_process_info + <where> + <if test="mdcPartProcessInfo.equipmentId != null and mdcPartProcessInfo.equipmentId != ''"> + AND equipment_id = #{ mdcPartProcessInfo.equipmentId } + </if> + <if test="mdcPartProcessInfo.partId != null and mdcPartProcessInfo.partId != ''"> + AND part_id = #{ mdcPartProcessInfo.partId } + </if> + <if test="mdcPartProcessInfo.theDate != null and mdcPartProcessInfo.theDate != ''"> + AND the_date LIKE CONCAT('%',#{ mdcPartProcessInfo.theDate },'%') + </if> + <if test="mdcPartProcessInfo.startTime != null and mdcPartProcessInfo.startTime != ''"> + AND the_date >= #{ mdcPartProcessInfo.startTime } + </if> + <if test="mdcPartProcessInfo.endTime != null and mdcPartProcessInfo.endTime != ''"> + AND the_date <= #{mdcPartProcessInfo.endTime } + </if> + <if test="mdcPartProcessInfo.equipmentIdList != null and mdcPartProcessInfo.equipmentIdList.size() > 0 "> + AND equipment_id IN + <foreach collection="mdcPartProcessInfo.equipmentIdList" item="id" index="index" open="(" close=")" separator=","> + #{ id } + </foreach> + </if> + </where> + ORDER BY the_date DESC, equipment_id ASC + </select> + +</mapper> \ No newline at end of file diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcPartProcessInfoService.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcPartProcessInfoService.java new file mode 100644 index 0000000..f88c2a3 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcPartProcessInfoService.java @@ -0,0 +1,47 @@ +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.MdcPartProcessInfo; +import org.jeecg.modules.mdc.vo.MdcPartProcessInfoVo; +import org.springframework.web.servlet.ModelAndView; + +import javax.servlet.http.HttpServletRequest; + +/** + * @Description: 闆朵欢鍔犲伐鏁版嵁琛� + * @Author: lius + * @Date: 2024-12-11 + */ +public interface IMdcPartProcessInfoService extends IService<MdcPartProcessInfo> { + + /** + * 鍒嗛〉鏌ヨ + * + * @param userId + * @param page + * @param mdcPartProcessInfo + * @param req + * @return + */ + IPage<MdcPartProcessInfo> pageList(String userId, Page<MdcPartProcessInfo> page, MdcPartProcessInfoVo mdcPartProcessInfo, HttpServletRequest req); + + /** + * 娣诲姞 + * + * @param mdcPartProcessInfo + * @return + */ + boolean addPartProcess(MdcPartProcessInfoVo mdcPartProcessInfo); + + /** + * 瀵煎嚭 + * + * @param userId + * @param mdcPartProcessInfo + * @return + */ + ModelAndView exportXls(String userId, MdcPartProcessInfoVo mdcPartProcessInfo); + +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcPartProcessInfoServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcPartProcessInfoServiceImpl.java new file mode 100644 index 0000000..eaccb68 --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcPartProcessInfoServiceImpl.java @@ -0,0 +1,153 @@ +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.MdcPartProcessInfo; +import org.jeecg.modules.mdc.mapper.MdcPartProcessInfoMapper; +import org.jeecg.modules.mdc.service.IMdcEquipmentService; +import org.jeecg.modules.mdc.service.IMdcPartProcessInfoService; +import org.jeecg.modules.mdc.vo.MdcPartProcessInfoVo; +import org.jeecgframework.poi.excel.def.NormalExcelConstants; +import org.jeecgframework.poi.excel.entity.ExportParams; +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; +import org.springframework.beans.BeanUtils; +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: 2024-12-11 + */ +@Service +public class MdcPartProcessInfoServiceImpl extends ServiceImpl<MdcPartProcessInfoMapper, MdcPartProcessInfo> implements IMdcPartProcessInfoService { + + @Resource + private IMdcEquipmentService mdcEquipmentService; + + /** + * 鍒嗛〉鏌ヨ + * + * @param userId + * @param page + * @param mdcPartProcessInfo + * @param req + * @return + */ + @Override + public IPage<MdcPartProcessInfo> pageList(String userId, Page<MdcPartProcessInfo> page, MdcPartProcessInfoVo mdcPartProcessInfo, HttpServletRequest req) { + List<String> equipmentIds = new ArrayList<>(); + if (StringUtils.isNotEmpty(mdcPartProcessInfo.getParentId()) && StringUtils.isEmpty(mdcPartProcessInfo.getEquipmentId())) { + if ("2".equals(mdcPartProcessInfo.getTypeTree())) { + //閮ㄩ棬灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, mdcPartProcessInfo.getParentId()); + } else { + //浜х嚎灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, mdcPartProcessInfo.getParentId()); + } + } else if (StringUtils.isNotEmpty(mdcPartProcessInfo.getEquipmentId())) { + //鍗曞彴璁惧淇℃伅 + mdcPartProcessInfo.setEquipmentIdList(Collections.singletonList(mdcPartProcessInfo.getEquipmentId())); + } else { + //鏌ヨ鐢ㄦ埛鎷ユ湁鐨勬墍鏈夎澶囦俊鎭� + if ("2".equals(mdcPartProcessInfo.getTypeTree())) { + //閮ㄩ棬灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, null); + } else { + //浜х嚎灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, null); + } + } + + if (mdcPartProcessInfo.getEquipmentIdList() == null || mdcPartProcessInfo.getEquipmentIdList().isEmpty()) { + mdcPartProcessInfo.setEquipmentIdList(equipmentIds); + } + + if (mdcPartProcessInfo.getEquipmentIdList() == null || mdcPartProcessInfo.getEquipmentIdList().isEmpty()) { + return null; + } + return this.baseMapper.pageList(page, mdcPartProcessInfo); + } + + @Override + public boolean addPartProcess(MdcPartProcessInfoVo mdcPartProcessInfo) { + String[] equipmentIdList = mdcPartProcessInfo.getEquipmentIds().split(","); + List<MdcPartProcessInfo> partProcessInfoList = new ArrayList<>(); + for (String equipmentId : equipmentIdList) { + MdcPartProcessInfo mppi = new MdcPartProcessInfo(); + BeanUtils.copyProperties(mdcPartProcessInfo, mppi); + mppi.setEquipmentId(equipmentId); + partProcessInfoList.add(mppi); + } + this.saveBatch(partProcessInfoList); + return true; + } + + @Override + public ModelAndView exportXls(String userId, MdcPartProcessInfoVo mdcPartProcessInfo) { + LambdaQueryWrapper<MdcPartProcessInfo> queryWrapper = new LambdaQueryWrapper<>(); + List<String> equipmentIds = new ArrayList<>(); + if (StringUtils.isNotEmpty(mdcPartProcessInfo.getParentId()) && StringUtils.isEmpty(mdcPartProcessInfo.getEquipmentId())) { + if ("2".equals(mdcPartProcessInfo.getTypeTree())) { + //閮ㄩ棬灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, mdcPartProcessInfo.getParentId()); + } else { + //浜х嚎灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, mdcPartProcessInfo.getParentId()); + } + } else if (StringUtils.isNotEmpty(mdcPartProcessInfo.getEquipmentId())) { + //鍗曞彴璁惧淇℃伅 + mdcPartProcessInfo.setEquipmentIdList(Collections.singletonList(mdcPartProcessInfo.getEquipmentId())); + } else { + //鏌ヨ鐢ㄦ埛鎷ユ湁鐨勬墍鏈夎澶囦俊鎭� + if ("2".equals(mdcPartProcessInfo.getTypeTree())) { + //閮ㄩ棬灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, null); + } else { + //浜х嚎灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, null); + } + } + + if (mdcPartProcessInfo.getEquipmentIdList() == null || mdcPartProcessInfo.getEquipmentIdList().isEmpty()) { + mdcPartProcessInfo.setEquipmentIdList(equipmentIds); + } + + if (mdcPartProcessInfo.getEquipmentIdList() == null || mdcPartProcessInfo.getEquipmentIdList().isEmpty()) { + return null; + } else { + queryWrapper.in(MdcPartProcessInfo::getEquipmentId, mdcPartProcessInfo.getEquipmentIdList()); + } + if (StringUtils.isNotEmpty(mdcPartProcessInfo.getEquipmentId())) { + queryWrapper.eq(MdcPartProcessInfo::getEquipmentId, mdcPartProcessInfo.getEquipmentId()); + } + if (StringUtils.isNotEmpty(mdcPartProcessInfo.getPartId())) { + queryWrapper.eq(MdcPartProcessInfo::getPartId, mdcPartProcessInfo.getPartId()); + } + if (StringUtils.isNotEmpty(mdcPartProcessInfo.getStartTime()) && StringUtils.isNotEmpty(mdcPartProcessInfo.getEndTime())) { + queryWrapper.between(MdcPartProcessInfo::getTheDate, mdcPartProcessInfo.getStartTime(), mdcPartProcessInfo.getEndTime()); + } + queryWrapper.orderByDesc(MdcPartProcessInfo::getTheDate).orderByDesc(MdcPartProcessInfo::getEquipmentId); + ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); + List<MdcPartProcessInfo> mdcPartProcessInfos = this.baseMapper.selectList(queryWrapper); + // 瀵煎嚭鏂囦欢鍚嶇О + mv.addObject(NormalExcelConstants.FILE_NAME, "闆朵欢鍔犲伐鏁版嵁鍒楄〃"); + mv.addObject(NormalExcelConstants.CLASS, MdcPartProcessInfo.class); + 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, mdcPartProcessInfos); + return mv; + } +} diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/vo/MdcPartProcessInfoVo.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/vo/MdcPartProcessInfoVo.java new file mode 100644 index 0000000..9992b3b --- /dev/null +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/vo/MdcPartProcessInfoVo.java @@ -0,0 +1,20 @@ +package org.jeecg.modules.mdc.vo; + +import lombok.Data; +import org.jeecg.modules.mdc.entity.MdcPartProcessInfo; + +import java.util.List; + +/** + * @author Lius + * @date 2024/12/11 15:47 + */ +@Data +public class MdcPartProcessInfoVo extends MdcPartProcessInfo { + private String startTime; + private String endTime; + private String parentId; + private String typeTree; + private List<String> equipmentIdList; + private String equipmentIds; +} -- Gitblit v1.9.3