From 6df2d854ea7d8b0d8200dd6572f1c3b5aabecc16 Mon Sep 17 00:00:00 2001
From: buhuazhen <hua100783@gmail.com>
Date: 星期一, 27 四月 2026 13:36:29 +0800
Subject: [PATCH] feat(productionPrintOrderExcel) 生产工单查询添加排序

---
 src/main/java/com/ruoyi/basic/service/impl/ProductModelServiceImpl.java |   56 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 55 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/ruoyi/basic/service/impl/ProductModelServiceImpl.java b/src/main/java/com/ruoyi/basic/service/impl/ProductModelServiceImpl.java
index 6d291f8..99c2c17 100644
--- a/src/main/java/com/ruoyi/basic/service/impl/ProductModelServiceImpl.java
+++ b/src/main/java/com/ruoyi/basic/service/impl/ProductModelServiceImpl.java
@@ -4,9 +4,11 @@
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.basic.dto.ProductDto;
+import com.ruoyi.basic.dto.ProductModelAnticlockwiseDto;
 import com.ruoyi.basic.dto.ProductModelDto;
 import com.ruoyi.basic.mapper.ProductMapper;
 import com.ruoyi.basic.mapper.ProductModelMapper;
@@ -14,6 +16,7 @@
 import com.ruoyi.basic.pojo.ProductModel;
 import com.ruoyi.basic.service.IProductModelService;
 import com.ruoyi.common.exception.ServiceException;
+import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.utils.bean.BeanUtils;
 import com.ruoyi.common.utils.poi.ExcelUtil;
@@ -73,7 +76,9 @@
         queryWrapper.eq(ProductModel::getProductId, productDto.getId());
         queryWrapper.eq(productDto.getCreateUser() != null, ProductModel::getCreateUser, productDto.getCreateUser());
         queryWrapper.eq(productDto.getDeptId() != null, ProductModel::getDeptId, productDto.getDeptId());
-        queryWrapper.in(productDto.getDeptIds() != null && productDto.getDeptIds().length > 0, ProductModel::getDeptId, Arrays.asList(productDto.getDeptIds()));
+        if (ObjectUtils.isNotEmpty(productDto.getDeptIds())) {
+            queryWrapper.in( ProductModel::getDeptId, Arrays.asList(productDto.getDeptIds()));
+        }
         return productModelMapper.selectList(queryWrapper);
     }
 
@@ -160,4 +165,53 @@
             throw new ServiceException("瀵煎叆澶辫触");
         }
     }
+
+    //鍙嶅悜鏂板鎴愬搧浜у搧锛屽彧鏈夐攢鍞叧鑱旀柊澧炵殑鏃跺�欒皟鐢�
+    @Override
+    public Long productModelAnticlockwise(ProductModelAnticlockwiseDto productModelDto) {
+        ProductModel oldProductModel = new ProductModel();
+        if (ObjectUtils.isNotEmpty(productModelDto.getId())) {
+             oldProductModel = productModelMapper.selectById(productModelDto.getId());
+        }else {
+             oldProductModel = productModelMapper.selectOldProductModel(productModelDto.getModel(), productModelDto.getProductName());
+        }
+        //瀛樺湪灏辨洿鏂�
+        if (oldProductModel != null) {
+            oldProductModel.setModel(productModelDto.getModel());
+            oldProductModel.setUnit(productModelDto.getUnit());
+            oldProductModel.setSubUnit(productModelDto.getSubUnit());
+            oldProductModel.setDeptId(SecurityUtils.getDeptId()[0]);
+            productModelMapper.updateById(oldProductModel);
+            Product product = productMapper.selectById(oldProductModel.getProductId());
+            product.setProductName(productModelDto.getProductName());
+            productMapper.updateById(product);
+            return oldProductModel.getId();
+        }else {
+            //鎵惧埌鐖惰妭鐐�
+            Product productParent = productMapper.selectOne(new QueryWrapper<Product>().lambda().eq(Product::getProductName, "鎴愬搧").last("limit 1"));
+            if (ObjectUtils.isEmpty(productParent)) {
+                Product product = new Product();
+                product.setProductName("鎴愬搧");
+                product.setDeptId(SecurityUtils.getDeptId()[0]);
+                productMapper.insert(product);
+                productParent.setId(product.getId());
+            }
+            //鏂板浜у搧澶х被
+            Product product = new Product();
+            product.setProductName(productModelDto.getProductName());
+            product.setParentId(productParent.getId());
+            product.setDeptId(SecurityUtils.getDeptId()[0]);
+            productMapper.insert( product);
+            //鏂板浜у搧瑙勬牸
+            ProductModel productModel = new ProductModel();
+            productModel.setProductId(product.getId());
+            productModel.setModel(productModelDto.getModel());
+            productModel.setUnit(productModelDto.getUnit());
+            productModel.setSubUnit(productModelDto.getSubUnit());
+            productModel.setDeptId(SecurityUtils.getDeptId()[0]);
+            productModelMapper.insert(productModel);
+            return productModel.getId();
+
+        }
+    }
 }

--
Gitblit v1.9.3