From e85c1425f6152ff82687cdccf04869e57536b5ce Mon Sep 17 00:00:00 2001 From: lius <Lius2225@163.com> Date: 星期五, 01 九月 2023 16:14:56 +0800 Subject: [PATCH] 加班管理导出接口 --- lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcEquipmentOvertimeController.java | 4 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentOvertimeServiceImpl.java | 61 +++++++++++++++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentOvertimeMapper.xml | 38 +++++++++ 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/entity/MdcEquipmentOvertime.java | 60 +++++++------- lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentOvertimeService.java | 11 ++ lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentOvertimeMapper.java | 9 ++ 7 files changed, 154 insertions(+), 31 deletions(-) diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcEquipmentOvertimeController.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcEquipmentOvertimeController.java index 485e9b1..15326dc 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcEquipmentOvertimeController.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/controller/MdcEquipmentOvertimeController.java @@ -139,7 +139,9 @@ */ @RequestMapping(value = "/exportXls") public ModelAndView exportXls(HttpServletRequest request, MdcEquipmentOvertime mdcEquipmentOvertime) { - return super.exportXls(request, mdcEquipmentOvertime, MdcEquipmentOvertime.class, "璁惧鍔犵彮绠$悊"); + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + String userId = user.getId(); + return mdcEquipmentOvertimeService.exportXls(userId, mdcEquipmentOvertime); } /** diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcEquipmentOvertime.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcEquipmentOvertime.java index b7f506f..bf2d75d 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcEquipmentOvertime.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/entity/MdcEquipmentOvertime.java @@ -28,6 +28,37 @@ private static final long serialVersionUID = -7163039765166584824L; + @TableField(exist = false) + @Excel(name = "璁惧缂栧彿", width = 20) + private String equipmentId; + + @TableField(exist = false) + @Excel(name = "璁惧鍚嶇О", width = 20) + private String equipmentName; + + /** + * 鐢熸晥鏃ユ湡 + */ + @Excel(name = "鐢熸晥鏃ユ湡", width = 15) + @TableField(exist = false) + private String effectiveDate; + + /** + * 鐝寮�濮嬫椂闂� + */ + @Excel(name = "鐝寮�濮嬫椂闂�", width = 20) + @ApiModelProperty("鐝寮�濮嬫椂闂�") + @TableField(exist = false) + private String startDate; + + /** + * 鐝缁撴潫鏃堕棿 + */ + @Excel(name = "鐝缁撴潫鏃堕棿", width = 20) + @ApiModelProperty("鐝缁撴潫鏃堕棿") + @TableField(exist = false) + private String endDate; + /** * 宸ヤ綔鏃ュ巻id */ @@ -53,35 +84,6 @@ @Excel(name = "澶囨敞") @ApiModelProperty(value = "澶囨敞") private String remark; - - @TableField(exist = false) - private String equipmentId; - - @TableField(exist = false) - private String equipmentName; - - /** - * 鐢熸晥鏃ユ湡 - */ - @Excel(name = "鐢熸晥鏃ユ湡", width = 15) - @TableField(exist = false) - private String effectiveDate; - - /** - * 鐝寮�濮嬫椂闂� - */ - @Excel(name = "鐝寮�濮嬫椂闂�", width = 20, format = "HH:mm:ss") - @ApiModelProperty("鐝寮�濮嬫椂闂�") - @TableField(exist = false) - private String startDate; - - /** - * 鐝缁撴潫鏃堕棿 - */ - @Excel(name = "鐝缁撴潫鏃堕棿", width = 20, format = "HH:mm:ss") - @ApiModelProperty("鐝缁撴潫鏃堕棿") - @TableField(exist = false) - private String endDate; /** * 鍓嶅彴浼犲叆 鍒ゆ柇姣忎釜id diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentOvertimeMapper.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentOvertimeMapper.java index 14c933b..14f3a7c 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentOvertimeMapper.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/MdcEquipmentOvertimeMapper.java @@ -7,6 +7,8 @@ import org.apache.ibatis.annotations.Param; import org.jeecg.modules.mdc.entity.MdcEquipmentOvertime; +import java.util.List; + /** * @Description: 璁惧鍔犵彮绠$悊 * @Author: Lius @@ -24,4 +26,11 @@ */ IPage<MdcEquipmentOvertime> pageList(Page<MdcEquipmentOvertime> page, @Param("mdcEquipmentOvertime") MdcEquipmentOvertime mdcEquipmentOvertime); + /** + * list鍒楄〃 + * @param mdcEquipmentOvertime + * @return + */ + List<MdcEquipmentOvertime> list(@Param("mdcEquipmentOvertime") MdcEquipmentOvertime mdcEquipmentOvertime); + } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentOvertimeMapper.xml b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentOvertimeMapper.xml index c6e2f5a..65a66dd 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentOvertimeMapper.xml +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/mapper/xml/MdcEquipmentOvertimeMapper.xml @@ -39,4 +39,42 @@ </where> order by t2.effective_date asc </select> + + <!--list鍒楄〃--> + <select id="list" resultType="org.jeecg.modules.mdc.entity.MdcEquipmentOvertime"> + SELECT + t1.id, + t2.equipment_id equipmentId, + t4.equipment_name equipmentName, + t2.effective_date effectiveDate, + t3.start_date startDate, + t3.end_date endDate, + t1.start_time startTime, + t1.end_time endTime, + t1.remark remark, + t1.create_by createBy, + t1.create_time createTime, + t1.update_by updateBy, + t1.update_time updateTime + FROM + mdc_equipment_overtime t1 + LEFT JOIN mdc_device_calendar t2 ON t1.calendar_id = t2.id + LEFT JOIN mdc_shift_sub t3 ON t3.id = t2.shift_sub_id + LEFT JOIN mdc_equipment t4 ON t4.equipment_id = t2.equipment_id + <where> + <if test="mdcEquipmentOvertime.equipmentName != null and mdcEquipmentOvertime.equipmentName != '' "> + AND t4.equipment_name LIKE CONCAT(CONCAT('%',#{mdcEquipmentOvertime.equipmentName}),'%') + </if> + <if test="mdcEquipmentOvertime.equipmentId != null and mdcEquipmentOvertime.equipmentId != '' "> + AND t2.equipment_id LIKE CONCAT(CONCAT('%',#{mdcEquipmentOvertime.equipmentId}),'%') + </if> + <if test="mdcEquipmentOvertime.mdcSectionIds != null and mdcEquipmentOvertime.mdcSectionIds.size() > 0 "> + AND t2.equipment_id IN + <foreach collection="mdcEquipmentOvertime.mdcSectionIds" item="id" index="index" open="(" close=")" separator=","> + #{ id } + </foreach> + </if> + </where> + order by t2.effective_date asc + </select> </mapper> \ No newline at end of file diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentOvertimeService.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentOvertimeService.java index 964ed73..6282eac 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentOvertimeService.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/IMdcEquipmentOvertimeService.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.mdc.entity.MdcEquipmentOvertime; +import org.springframework.web.servlet.ModelAndView; import javax.servlet.http.HttpServletRequest; @@ -26,4 +27,14 @@ * @return */ IPage<MdcEquipmentOvertime> pageList(String userId, Page<MdcEquipmentOvertime> page, MdcEquipmentOvertime mdcEquipmentOvertime, HttpServletRequest req); + + /** + * 瀵煎嚭 + * + * @param userId + * @param mdcEquipmentOvertime + * @return + */ + ModelAndView exportXls(String userId, MdcEquipmentOvertime mdcEquipmentOvertime); + } diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentOvertimeServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentOvertimeServiceImpl.java index 06e7f9b..07d569a 100644 --- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentOvertimeServiceImpl.java +++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcEquipmentOvertimeServiceImpl.java @@ -5,11 +5,18 @@ 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.MdcEquipmentOvertime; +import org.jeecg.modules.mdc.entity.MdcNoplanClose; import org.jeecg.modules.mdc.mapper.MdcEquipmentOvertimeMapper; import org.jeecg.modules.mdc.service.IMdcEquipmentOvertimeService; import org.jeecg.modules.mdc.service.IMdcEquipmentService; +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; @@ -63,4 +70,58 @@ } return this.baseMapper.pageList(page, mdcEquipmentOvertime); } + + /** + * 瀵煎嚭 + * + * @param userId + * @param mdcEquipmentOvertime + * @return + */ + @Override + public ModelAndView exportXls(String userId, MdcEquipmentOvertime mdcEquipmentOvertime) { + List<String> equipmentIds = new ArrayList<>(); + if (StringUtils.isNotEmpty(mdcEquipmentOvertime.getParentId()) && StringUtils.isEmpty(mdcEquipmentOvertime.getEquipmentId())) { + if ("2".equals(mdcEquipmentOvertime.getTypeTree())) { + //閮ㄩ棬灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, mdcEquipmentOvertime.getParentId()); + } else { + //浜х嚎灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, mdcEquipmentOvertime.getParentId()); + } + } else if (StringUtils.isNotEmpty(mdcEquipmentOvertime.getEquipmentId())) { + //鍗曞彴璁惧淇℃伅 + mdcEquipmentOvertime.setMdcSectionIds(Collections.singletonList(mdcEquipmentOvertime.getEquipmentId())); + } else { + //鏌ヨ鐢ㄦ埛鎷ユ湁鐨勬墍鏈夎澶囦俊鎭� + if ("2".equals(mdcEquipmentOvertime.getTypeTree())) { + //閮ㄩ棬灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, null); + } else { + //浜х嚎灞傜骇 + equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, null); + } + } + + if (mdcEquipmentOvertime.getMdcSectionIds() == null || mdcEquipmentOvertime.getMdcSectionIds().isEmpty()) { + mdcEquipmentOvertime.setMdcSectionIds(equipmentIds); + } + + if (mdcEquipmentOvertime.getMdcSectionIds() == null || mdcEquipmentOvertime.getMdcSectionIds().isEmpty()) { + return null; + } + // Step.2 AutoPoi 瀵煎嚭Excel + ModelAndView mv = new ModelAndView(new JeecgEntityExcelView()); + List<MdcEquipmentOvertime> mdcEquipmentOvertimes = this.baseMapper.list(mdcEquipmentOvertime); + // 瀵煎嚭鏂囦欢鍚嶇О + mv.addObject(NormalExcelConstants.FILE_NAME, "鍔犵彮绠$悊鍒楄〃"); + mv.addObject(NormalExcelConstants.CLASS, MdcEquipmentOvertime.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, mdcEquipmentOvertimes); + return mv; + } } 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 699683d..6ca849d 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 @@ -312,7 +312,7 @@ //鑾峰彇褰撳墠鐧诲綍鐢ㄦ埛 //update-begin---author:wangshuai ---date:20211227 for锛歔JTC-116]瀵煎嚭浜哄啓姝讳簡------------ LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); - mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("闈炶鍒掑仠鏈虹淮鎶ゅ垪琛ㄦ暟鎹�", "瀵煎嚭浜�:"+user.getRealname(), "瀵煎嚭淇℃伅")); + mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("闈炶鍒掑仠鏈虹淮鎶ゅ垪琛ㄦ暟鎹�", "瀵煎嚭浜�:"+user.getRealname(), "闈炶鍒掑仠鏈虹淮鎶�")); //update-end---author:wangshuai ---date:20211227 for锛歔JTC-116]瀵煎嚭浜哄啓姝讳簡------------ mv.addObject(NormalExcelConstants.DATA_LIST, mdcNoplanCloses); return mv; -- Gitblit v1.9.3