From f84d9e69907cb678150eaa6393fd74cf042fcca4 Mon Sep 17 00:00:00 2001
From: zenglf <18502938215@163.com>
Date: 星期四, 28 九月 2023 14:39:03 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into develop

---
 lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcTorqueConfigServiceImpl.java |  134 ++++++++++++++++++++++++++++++++++++--------
 1 files changed, 108 insertions(+), 26 deletions(-)

diff --git a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcTorqueConfigServiceImpl.java b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcTorqueConfigServiceImpl.java
index 324ab6b..7c2348a 100644
--- a/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcTorqueConfigServiceImpl.java
+++ b/lxzn-module-mdc/src/main/java/org/jeecg/modules/mdc/service/impl/MdcTorqueConfigServiceImpl.java
@@ -1,25 +1,27 @@
 package org.jeecg.modules.mdc.service.impl;
 
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+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.IService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.apache.commons.lang3.StringUtils;
-import org.apache.poi.util.StringUtil;
+import org.apache.shiro.SecurityUtils;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.modules.mdc.entity.MdcEquipment;
 import org.jeecg.modules.mdc.entity.MdcTorqueConfig;
 import org.jeecg.modules.mdc.mapper.MdcTorqueConfigMapper;
 import org.jeecg.modules.mdc.service.IMdcEquipmentService;
 import org.jeecg.modules.mdc.service.IMdcTorqueConfigService;
+import org.jeecg.modules.quartz.entity.QuartzJob;
+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.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.web.servlet.ModelAndView;
 
 import javax.servlet.http.HttpServletRequest;
-import java.lang.reflect.Array;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
+import java.util.*;
 
 /**
  * @Description: 鎵煩閰嶇疆绠$悊
@@ -27,7 +29,7 @@
  * @Date: 2023-06-29
  */
 @Service
-public class MdcTorqueConfigServiceImpl extends ServiceImpl<MdcTorqueConfigMapper, MdcTorqueConfig> implements IMdcTorqueConfigService{
+public class MdcTorqueConfigServiceImpl extends ServiceImpl<MdcTorqueConfigMapper, MdcTorqueConfig> implements IMdcTorqueConfigService {
 
     @Autowired
     private IMdcEquipmentService mdcEquipmentService;
@@ -39,7 +41,22 @@
 
     @Override
     public Boolean addTorque(MdcTorqueConfig mdcTorqueConfig) {
-        return this.save(mdcTorqueConfig);
+        boolean result = false;
+        String[] equipmentIds = mdcTorqueConfig.getEquipmentIds().split(",");
+        for (String equipmentId : equipmentIds) {
+            MdcEquipment mdcEquipment = mdcEquipmentService.findEquipmentNameByEquipmentId(equipmentId);
+            MdcTorqueConfig torqueConfig = new MdcTorqueConfig();
+            torqueConfig.setEquipmentId(equipmentId);
+            torqueConfig.setEquipmentName(mdcEquipment.getEquipmentName());
+            torqueConfig.setTorqueDate(mdcTorqueConfig.getTorqueDate());
+            torqueConfig.setTorqueValue(mdcTorqueConfig.getTorqueValue());
+            torqueConfig.setNotes(mdcTorqueConfig.getNotes());
+            boolean b = super.save(torqueConfig);
+            if (b) {
+                result = true;
+            }
+        }
+        return result;
     }
 
     @Override
@@ -59,38 +76,103 @@
 
     @Override
     public List<MdcTorqueConfig> findSpindleRunningCurve(float torqueValue, String equipmentId) {
-        return this.baseMapper.findSpindleRunningCurve(torqueValue,equipmentId);
+        return this.baseMapper.findSpindleRunningCurve(torqueValue, equipmentId);
     }
 
     @Override
     public IPage<MdcTorqueConfig> pageList(String userId, Page page, HttpServletRequest req, MdcTorqueConfig mdcTorqueConfig) {
-        List<String> equipmentIds=new ArrayList<>();
-        if (StringUtils.isNotEmpty(mdcTorqueConfig.getParentId())&&StringUtils.isEmpty(mdcTorqueConfig.getEquipmentId())){
-            if ("2".equals(mdcTorqueConfig.getTypeTree())){
+        List<String> equipmentIds = new ArrayList<>();
+        if (StringUtils.isNotEmpty(mdcTorqueConfig.getParentId()) && StringUtils.isEmpty(mdcTorqueConfig.getEquipmentId())) {
+            if ("2".equals(mdcTorqueConfig.getTypeTree())) {
                 //閮ㄩ棬灞傜骇
-                equipmentIds=mdcEquipmentService.getEquipmentIdsByDepart(userId,mdcTorqueConfig.getParentId());
-            }else {
+                equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, mdcTorqueConfig.getParentId());
+            } else {
                 //浜х嚎灞傜骇
-                equipmentIds=mdcEquipmentService.getEquipmentIdsProduction(userId,mdcTorqueConfig.getParentId());
+                equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, mdcTorqueConfig.getParentId());
             }
-        }else if (StringUtils.isNotEmpty(mdcTorqueConfig.getEquipmentId())){
+        } else if (StringUtils.isNotEmpty(mdcTorqueConfig.getEquipmentId())) {
             //鍗曞彴璁惧淇℃伅
             mdcTorqueConfig.setMdcSectionIds(Collections.singletonList(mdcTorqueConfig.getEquipmentId()));
-        }else {
+        } else {
             //鏌ヨ鐢ㄦ埛鎵�鎷ユ湁鐨勬墍鏈夎澶囦俊鎭�
-            if ("2".equals(mdcTorqueConfig.getTypeTree())){
+            if ("2".equals(mdcTorqueConfig.getTypeTree())) {
                 //閮ㄩ棬灞傜骇
-                equipmentIds=mdcEquipmentService.getEquipmentIdsByDepart(userId,null);
-            }else {
-                equipmentIds=mdcEquipmentService.getEquipmentIdsProduction(userId,null);
+                equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, null);
+            } else {
+                equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, null);
             }
         }
-        if (mdcTorqueConfig.getMdcSectionIds()==null||mdcTorqueConfig.getMdcSectionIds().isEmpty()){
+        if (mdcTorqueConfig.getMdcSectionIds() == null || mdcTorqueConfig.getMdcSectionIds().isEmpty()) {
             mdcTorqueConfig.setMdcSectionIds(equipmentIds);
         }
-        if (mdcTorqueConfig.getMdcSectionIds()==null||mdcTorqueConfig.getMdcSectionIds().isEmpty()){
+        if (mdcTorqueConfig.getMdcSectionIds() == null || mdcTorqueConfig.getMdcSectionIds().isEmpty()) {
             return null;
         }
-        return this.baseMapper.pageList(page,mdcTorqueConfig);
+        return this.baseMapper.pageList(page, mdcTorqueConfig);
+    }
+
+    /**
+     * 瀵煎嚭
+     *
+     * @param userId
+     * @param mdcTorqueConfig
+     * @return
+     */
+    @Override
+    public ModelAndView exportXls(String userId, MdcTorqueConfig mdcTorqueConfig) {
+        // Step.1 缁勮鏌ヨ鏉′欢
+        LambdaQueryWrapper<MdcTorqueConfig> queryWrapper = new LambdaQueryWrapper<>();
+        List<String> equipmentIds = new ArrayList<>();
+        if (StringUtils.isNotEmpty(mdcTorqueConfig.getParentId()) && StringUtils.isEmpty(mdcTorqueConfig.getEquipmentId())) {
+            if ("2".equals(mdcTorqueConfig.getTypeTree())) {
+                //閮ㄩ棬灞傜骇
+                equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, mdcTorqueConfig.getParentId());
+            } else {
+                //浜х嚎灞傜骇
+                equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, mdcTorqueConfig.getParentId());
+            }
+        } else if (StringUtils.isNotEmpty(mdcTorqueConfig.getEquipmentId())) {
+            //鍗曞彴璁惧淇℃伅
+            mdcTorqueConfig.setMdcSectionIds(Collections.singletonList(mdcTorqueConfig.getEquipmentId()));
+        } else {
+            //鏌ヨ鐢ㄦ埛鎵�鎷ユ湁鐨勬墍鏈夎澶囦俊鎭�
+            if ("2".equals(mdcTorqueConfig.getTypeTree())) {
+                //閮ㄩ棬灞傜骇
+                equipmentIds = mdcEquipmentService.getEquipmentIdsByDepart(userId, null);
+            } else {
+                equipmentIds = mdcEquipmentService.getEquipmentIdsProduction(userId, null);
+            }
+        }
+        if (mdcTorqueConfig.getMdcSectionIds() == null || mdcTorqueConfig.getMdcSectionIds().isEmpty()) {
+            mdcTorqueConfig.setMdcSectionIds(equipmentIds);
+        }
+        if (mdcTorqueConfig.getMdcSectionIds() == null || mdcTorqueConfig.getMdcSectionIds().isEmpty()) {
+            return null;
+        } else {
+            queryWrapper.in(MdcTorqueConfig::getEquipmentId, mdcTorqueConfig.getMdcSectionIds());
+        }
+        if (StringUtils.isNotEmpty(mdcTorqueConfig.getEquipmentId())) {
+            queryWrapper.like(MdcTorqueConfig::getEquipmentId, mdcTorqueConfig.getEquipmentId());
+        }
+        if (StringUtils.isNotEmpty(mdcTorqueConfig.getEquipmentName())) {
+            queryWrapper.like(MdcTorqueConfig::getEquipmentId, mdcTorqueConfig.getEquipmentId());
+        }
+        if (StringUtils.isNotEmpty(mdcTorqueConfig.getStartTime()) && StringUtils.isNotEmpty(mdcTorqueConfig.getEndTime())) {
+            queryWrapper.between(MdcTorqueConfig::getTorqueDate, mdcTorqueConfig.getStartTime(), mdcTorqueConfig.getEndTime());
+        }
+        queryWrapper.orderByAsc(MdcTorqueConfig::getTorqueDate);
+        // Step.2 AutoPoi 瀵煎嚭Excel
+        ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
+        List<MdcTorqueConfig> mdcTorqueConfigs = this.baseMapper.selectList(queryWrapper);
+        // 瀵煎嚭鏂囦欢鍚嶇О
+        mv.addObject(NormalExcelConstants.FILE_NAME, "鎵煩閰嶇疆鍒楄〃");
+        mv.addObject(NormalExcelConstants.CLASS, MdcTorqueConfig.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, mdcTorqueConfigs);
+        return mv;
     }
 }

--
Gitblit v1.9.3