From 58a518f8bc23ed382f4da2a86b09024b063a620c Mon Sep 17 00:00:00 2001
From: 黎星凯 <13949086503@163.com>
Date: 星期一, 13 五月 2024 15:40:47 +0800
Subject: [PATCH] 20240511修改: 分发单优化, 分类,物品,分发单明细,采购单明细数据导入

---
 consum-base/src/main/java/com/consum/base/controller/FinSysTenantDepartmentController.java |  136 +++++++++++++++++++++++++++++++++++----------
 1 files changed, 105 insertions(+), 31 deletions(-)

diff --git a/consum-base/src/main/java/com/consum/base/controller/FinSysTenantDepartmentController.java b/consum-base/src/main/java/com/consum/base/controller/FinSysTenantDepartmentController.java
index 76d3c26..1984228 100644
--- a/consum-base/src/main/java/com/consum/base/controller/FinSysTenantDepartmentController.java
+++ b/consum-base/src/main/java/com/consum/base/controller/FinSysTenantDepartmentController.java
@@ -1,59 +1,87 @@
 package com.consum.base.controller;
 
+import java.util.List;
+
+import cn.hutool.core.collection.CollectionUtil;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
 import com.consum.base.BaseController;
+import com.consum.base.core.type.StatesType;
+import com.consum.base.core.utils.CommonUtil;
 import com.consum.base.pojo.FinSysTenantDepartmentParam;
-import com.consum.base.service.FinSysTenantDepartmentServiceImpl;
-import com.consum.base.service.FinSysTenantServiceImpl;
-import com.consum.model.po.BaseCategory;
-import com.consum.model.po.FinSysTenant;
+import com.consum.base.service.FinSysTenantDepartmentService;
 import com.consum.model.po.FinSysTenantDepartment;
 import com.consum.model.po.FinSysTenantUser;
-import com.iplatform.model.po.S_user_core;
 import com.walker.db.page.GenericPager;
 import com.walker.infrastructure.utils.StringUtils;
 import com.walker.web.ResponseValue;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
 
 /**
  * @Description 閮ㄩ棬绠$悊
  * @Author 鍗㈠簡闃�
  * @Date 2023/10/26
  */
+@Api(value = "閮ㄩ棬绠$悊", tags = "閮ㄩ棬绠$悊")
 @RestController
 @RequestMapping("/pc/fin/sys/tenant/department")
 public class FinSysTenantDepartmentController extends BaseController {
 
     @Autowired
-    private FinSysTenantDepartmentServiceImpl departmentService;
-    @Autowired
-    private FinSysTenantServiceImpl finSysTenantService;
+    private FinSysTenantDepartmentService departmentService;
 
     /**
      * @Description 鏂板
      * @Author 鍗㈠簡闃�
      * @Date 2023/10/26
      */
+    @ApiOperation(value = "鏂板", notes = "鏂板")
+    @ApiImplicitParams(value = {
+        @ApiImplicitParam(name = "param", value = "閮ㄩ棬淇℃伅", required = true, dataType = "FinSysTenantDepartmentParam")})
     @PostMapping("/add")
-    public ResponseValue add(@RequestBody FinSysTenantDepartmentParam param) {
+    public ResponseValue add() {
+        FinSysTenantDepartmentParam param = CommonUtil.getObjFromReqBody(FinSysTenantDepartmentParam.class);
+        FinSysTenantDepartmentParam finSysTenantDepartmentParam = new FinSysTenantDepartmentParam();
+        CommonUtil.copyProperties(param, finSysTenantDepartmentParam);
+        param = finSysTenantDepartmentParam;
+
         if (StringUtils.isEmpty(param.getName())) {
             return ResponseValue.error("閮ㄩ棬鍚嶇О涓虹┖");
         }
         if (StringUtils.isEmpty(param.getCode())) {
             return ResponseValue.error("缂栧彿涓虹┖");
         }
-        FinSysTenantDepartment tenantDepartment = this.departmentService.selectByCode(param.getCode());
+        FinSysTenantDepartment tenantDepartment =
+            departmentService.getTenantDepartment(null, param.getTenantId(), param.getCode());
         if (tenantDepartment != null) {
             return ResponseValue.error("閮ㄩ棬缂栧彿宸插瓨鍦�");
         }
-        //鍒ゆ柇鍚屼竴鏈烘瀯id涓� 閮ㄩ棬鍚嶇О 鏄惁閲嶅
-        FinSysTenantDepartment department = this.departmentService.getByNameAndTenantId(param.getName(),param.getTenantId());
+        // 鍒ゆ柇鍚屼竴鏈烘瀯id涓� 閮ㄩ棬鍚嶇О 鏄惁閲嶅
+        FinSysTenantDepartment department =
+            departmentService.getTenantDepartment(param.getName(), param.getTenantId(), null);
         if (department != null) {
             return ResponseValue.error("閮ㄩ棬鍚嶇О宸插瓨鍦�");
         }
-
+        // 閮ㄩ棬缂栧彿
+        FinSysTenantDepartmentParam finSysTenantDepartmentParam1 = new FinSysTenantDepartmentParam();
+        finSysTenantDepartmentParam1.setCode(param.getCode());
+        List<FinSysTenantDepartment> datas = departmentService.queryDataList(finSysTenantDepartmentParam1);
+        if(!CollectionUtil.isEmpty(datas)){
+            return ResponseValue.error("姝ょ紪鍙峰凡瀛樺湪");
+        }
         int result = this.departmentService.add(param, this.getSysInfo());
-        if (result > 0) return ResponseValue.success(1);
+        if (result > 0) {
+            return ResponseValue.success();
+        }
         return ResponseValue.error("鏂板澶辫触锛�");
     }
 
@@ -62,9 +90,14 @@
      * @Author 鍗㈠簡闃�
      * @Date 2023/10/26
      */
-    //濡傛灉涓嶄紶鏈烘瀯id锛岄粯璁ゆ煡鐪佺骇鏈烘瀯鐨勯儴闂�
+    // 濡傛灉涓嶄紶鏈烘瀯id锛岄粯璁ゆ煡鐪佺骇鏈烘瀯鐨勯儴闂�
     @GetMapping("/list")
-    public ResponseValue queryList(FinSysTenantDepartmentParam param) {
+    public ResponseValue queryList() {
+        FinSysTenantDepartmentParam param = CommonUtil.getObjFromReq(FinSysTenantDepartmentParam.class);
+        FinSysTenantDepartmentParam param2 = new FinSysTenantDepartmentParam();
+        CommonUtil.copyProperties(param, param2);
+        param = param2;
+
         FinSysTenantUser sysInfo = this.getSysInfo();
         if (sysInfo == null) {
             return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�");
@@ -73,34 +106,70 @@
         return ResponseValue.success(pager);
     }
 
+    @ApiOperation(value = "鏍规嵁鏈烘瀯id鏌ヨ鎵�鏈夐儴闂ㄥ垪琛ㄤ俊鎭�", notes = "鏍规嵁鏈烘瀯id鏌ヨ鎵�鏈夐儴闂ㄥ垪琛ㄤ俊鎭�")
+    @ApiImplicitParams(value = {
+        @ApiImplicitParam(name = "param", value = "閮ㄩ棬淇℃伅", required = true, dataType = "FinSysTenantDepartmentParam")})
+    @GetMapping("/list/all")
+    public ResponseValue queryAllDepartment(Long tenantId) {
+        FinSysTenantUser sysInfo = this.getSysInfo();
+        if (sysInfo == null) {
+            return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�");
+        }
+        FinSysTenantDepartment finSysTenantDepartment = new FinSysTenantDepartment();
+        finSysTenantDepartment.setTenantId(tenantId);
+        finSysTenantDepartment.setStatus(StatesType.NORMAL.getValue());
+        List<FinSysTenantDepartment> finSysTenantDepartments = this.departmentService.select(finSysTenantDepartment);
+        return ResponseValue.success(finSysTenantDepartments);
+    }
+
     /**
      * @Description 缂栬緫(淇敼鐘舵��)
      * @Author 鍗㈠簡闃�
      * @Date 2023/10/26
      */
     @PostMapping("/edit")
-    public ResponseValue edit(@RequestBody FinSysTenantDepartment department) {
-        Long id = department.getId();
+    public ResponseValue edit() {
+        FinSysTenantDepartment param = CommonUtil.getObjFromReqBody(FinSysTenantDepartment.class);
+        FinSysTenantDepartment finSysTenantDepartment = new FinSysTenantDepartment();
+        CommonUtil.copyProperties(param, finSysTenantDepartment);
+        param = finSysTenantDepartment;
+
+        Long id = param.getId();
         if (id == null || id <= 0) {
             return ResponseValue.error("缂栬緫鐨勯儴闂ㄤ笉瀛樺湪");
         }
-        if (StringUtils.isEmpty(department.getName())) {
+        if (StringUtils.isEmpty(param.getName())) {
             return ResponseValue.error("閮ㄩ棬鍚嶇О涓虹┖");
         }
-        if (StringUtils.isEmpty(department.getCode())) {
+        if (StringUtils.isEmpty(param.getCode())) {
             return ResponseValue.error("閮ㄩ棬缂栧彿涓虹┖");
         }
         FinSysTenantUser sysInfo = this.getSysInfo();
         if (sysInfo == null) {
             return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�");
         }
-
-        int num = this.departmentService.updateFinSysTenantDepartment(department,sysInfo);
-        return num > 0 ? ResponseValue.success(1) : ResponseValue.error("缂栬緫澶辫触锛�");
+        FinSysTenantDepartment tenantDepartment =
+            this.departmentService.getTenantDepartment(null, param.getTenantId(), param.getCode());
+        if (tenantDepartment != null) {
+            //return ResponseValue.error("閮ㄩ棬缂栧彿宸插瓨鍦�");
+        }
+        // 閮ㄩ棬缂栧彿
+        FinSysTenantDepartmentParam finSysTenantDepartmentParam1 = new FinSysTenantDepartmentParam();
+        finSysTenantDepartmentParam1.setCode(param.getCode());
+        List<FinSysTenantDepartment> datas = departmentService.queryDataList(finSysTenantDepartmentParam1);
+        if(!CollectionUtil.isEmpty(datas)){
+            FinSysTenantDepartment finSysTenantDepartment1 = datas.get(0);
+            if(!finSysTenantDepartment1.getId().equals(param.getId())){
+                return ResponseValue.error("姝ょ紪鍙峰凡瀛樺湪");
+            }
+        }
+        int num = this.departmentService.updateFinSysTenantDepartment(param, sysInfo);
+        return num > 0 ? ResponseValue.success() : ResponseValue.error("缂栬緫澶辫触锛�");
     }
 
     /**
      * 鏍规嵁閮ㄩ棬id鏌ヨ閮ㄩ棬璇︽儏
+     *
      * @author 鍗㈠簡闃�
      * @Date 2023/10/26
      */
@@ -110,7 +179,9 @@
             return ResponseValue.error("閮ㄩ棬id涓虹┖");
         }
         FinSysTenantDepartment department = this.departmentService.getById(id);
-        if (department == null) return ResponseValue.error("鏌ヨ澶辫触锛�");
+        if (department == null) {
+            return ResponseValue.error("鏌ヨ澶辫触锛�");
+        }
         return ResponseValue.success("鏌ヨ鎴愬姛!", department);
     }
 
@@ -120,19 +191,22 @@
      * @Date 2023/10/26
      */
     @DeleteMapping("/del")
-    public ResponseValue updateById(@RequestBody FinSysTenantDepartment department) {
-        if (department.getId() == null) {
+    public ResponseValue updateById() {
+        FinSysTenantDepartment param = CommonUtil.getObjFromReqBody(FinSysTenantDepartment.class);
+        FinSysTenantDepartment finSysTenantDepartment = new FinSysTenantDepartment();
+        CommonUtil.copyProperties(param, finSysTenantDepartment);
+        param = finSysTenantDepartment;
+
+        if (param.getId() == null) {
             return ResponseValue.error("閮ㄩ棬id涓虹┖");
         }
         FinSysTenantUser sysInfo = this.getSysInfo();
         if (sysInfo == null) {
             return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�");
         }
-        int num = this.departmentService.updateById(department,sysInfo);
+        int num = this.departmentService.updateById(param, sysInfo);
 
         return num > 0 ? ResponseValue.success(1) : ResponseValue.error("鍒犻櫎澶辫触锛�");
     }
 
-
 }
-

--
Gitblit v1.9.1