From 90b911dc30523c8511a8fb15695e1e78d1cce151 Mon Sep 17 00:00:00 2001
From: mrzhssss <pro6@qq.com>
Date: 星期二, 06 九月 2022 08:41:44 +0800
Subject: [PATCH] #

---
 src/main/java/zy/cloud/wms/manager/controller/ItemController.java |  153 +++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 137 insertions(+), 16 deletions(-)

diff --git a/src/main/java/zy/cloud/wms/manager/controller/ItemController.java b/src/main/java/zy/cloud/wms/manager/controller/ItemController.java
index 854eceb..20bfcff 100644
--- a/src/main/java/zy/cloud/wms/manager/controller/ItemController.java
+++ b/src/main/java/zy/cloud/wms/manager/controller/ItemController.java
@@ -11,18 +11,14 @@
 import com.core.common.DateUtils;
 import com.core.common.R;
 import com.core.exception.CoolException;
+import lombok.val;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import zy.cloud.wms.common.web.BaseController;
-import zy.cloud.wms.manager.entity.Cstmr;
-import zy.cloud.wms.manager.entity.Item;
-import zy.cloud.wms.manager.entity.ProjectPlan;
-import zy.cloud.wms.manager.entity.ProjectType;
-import zy.cloud.wms.manager.service.CstmrService;
-import zy.cloud.wms.manager.service.ItemService;
-import zy.cloud.wms.manager.service.ProjectPlanService;
-import zy.cloud.wms.manager.service.ProjectTypeService;
+import zy.cloud.wms.manager.entity.*;
+import zy.cloud.wms.manager.service.*;
 
+import java.text.SimpleDateFormat;
 import java.util.*;
 
 @RestController
@@ -32,6 +28,12 @@
     private ItemService itemService;
     @Autowired
     private ProjectPlanService planService;
+    @Autowired
+    private FlowStatusService flowStatusService;
+    @Autowired
+    private CstmrService cstmrService;
+    @Autowired
+    private ProjectStatusService projectStatusService;
 
     @RequestMapping(value = "/item/{id}/auth")
     @ManagerAuth
@@ -45,10 +47,12 @@
                   @RequestParam(defaultValue = "10")Integer limit,
                   @RequestParam(required = false)String orderByField,
                   @RequestParam(required = false)String orderByType,
+                  @RequestParam(required = false)String condition,
                   @RequestParam Map<String, Object> param){
         EntityWrapper<Item> wrapper = new EntityWrapper<>();
         HashSet<String> excludeField = new HashSet<>();
 
+        allLike(Item.class, param.keySet(), wrapper, condition);
 //        allLike(Item.class,excludeField,wrapper, (String) param.get("id"));
         excludeTrash(param);
         convert(param, wrapper);
@@ -72,17 +76,56 @@
         }
     }
 
+    @RequestMapping(value = "/item/list/chaoPirce")
+    @ManagerAuth
+    public R list1(@RequestParam(defaultValue = "1")Integer curr,
+                  @RequestParam(defaultValue = "10")Integer limit,
+                  @RequestParam(required = false)String orderByField,
+                  @RequestParam(required = false)String orderByType,
+                  @RequestParam Map<String, Object> param){
+        val id = param.get("id");
+        String uuid=null;
+        if(id!=null){
+            uuid = id.toString();
+        }
+        Page<Item> projectPlanPage = itemService.chaoPirce(toPage(curr,limit,param,Item.class),uuid);
+        return R.ok(projectPlanPage);
+    }
+
+    @RequestMapping(value = "/item/list/chaoTime")
+    @ManagerAuth
+    public R list2(@RequestParam(defaultValue = "1")Integer curr,
+                   @RequestParam(defaultValue = "10")Integer limit,
+                   @RequestParam(required = false)String orderByField,
+                   @RequestParam(required = false)String orderByType,
+                   @RequestParam Map<String, Object> param){
+        val id = param.get("id");
+        String uuid=null;
+        if(id!=null){
+            uuid = id.toString();
+        }
+
+        Page<Item> projectPlanPage = itemService.chaoTime(toPage(curr,limit,param,Item.class),uuid);
+        return R.ok(projectPlanPage);
+    }
+
     @RequestMapping(value = "/item/add/auth")
     @ManagerAuth
     public R add(Item item) {
-
+        /**
+         * 鎺х
+         */
+        if (Cools.isEmpty(item.getHostId()) || item.getHostId() == 0){
+            item.setHostId(1L);
+        }
         if (Cools.isEmpty(item)) {
             return R.error("鍙傛暟涓虹┖,璇疯仈绯荤鐞嗗憳");
         }
 
-        if (!item.getType().equals("1")) {
-            throw new CoolException("鐩墠浠呮敮鎸侀泦鎴愰」鐩�");
-        }
+        //item.setType("1");
+//        if (!item.getType().equals("1")) {
+//            throw new CoolException("鐩墠浠呮敮鎸侀泦鎴愰」鐩�");
+//        }
         Item name = itemService.selectOne(new EntityWrapper<Item>()
                 .eq("name", item.getName()));
         if (!Cools.isEmpty(name)) {
@@ -91,7 +134,19 @@
         if (item.getRealMonth() < 0){
             throw new CoolException("瀹炴柦鍛ㄦ湡涓嶅彲涓鸿礋鏁�");
         }
+        if (Cools.isEmpty(item.getCstmrUuid())) {
+            throw new CoolException("璇烽�夋嫨瀹㈡埛");
+        }
+        Cstmr cstmr = cstmrService.selectOne(new EntityWrapper<Cstmr>()
+                .eq("id",Long.parseLong(item.getCstmrUuid())));
+        if (Cools.isEmpty(cstmr)) {
+            throw new CoolException("鎵句笉鍒拌瀹㈡埛,璇锋鏌�");
+        }
 
+
+        item.setCustMan(cstmr.getName());
+        item.setCustMobile(cstmr.getTel());
+        item.setCustAdress(cstmr.getAddr());
         item.setHostId(getHostId());
         item.setCreateBy(getUserId());
         item.setCreateTime(new Date());
@@ -105,15 +160,35 @@
 	@RequestMapping(value = "/item/update/auth")
 	@ManagerAuth
     public R update(Item item){
+        EntityWrapper<Item> wapper = new EntityWrapper<Item>();
+        Item newitem = itemService.selectOne(wapper.eq("id", item.getId()));
         if (Cools.isEmpty(item)) {
             return R.error("鍙傛暟涓虹┖,璇疯仈绯荤鐞嗗憳");
         }
 
-        if (!item.getType().equals("1")) {
-            throw new CoolException("鐩墠浠呮敮鎸侀泦鎴愰」鐩�");
+//        item.setType("1");
+//        if (!item.getType().equals("1")) {
+//            throw new CoolException("鐩墠浠呮敮鎸侀泦鎴愰」鐩�");
+//        }
+//        item.setRealMonth(1);
+//        if (item.getRealMonth() < 0){
+//            throw new CoolException("瀹炴柦鍛ㄦ湡涓嶅彲涓鸿礋鏁�");
+//        }
+        if(!(newitem.getStartTime()==null || newitem.getEndTime()==null || newitem.getRealStartTime()==null || newitem.getRealEndTime()==null)){
+            item.setStartTime(newitem.getStartTime());
+            item.setEndTime(newitem.getEndTime());
+            item.setRealEndTime(newitem.getRealEndTime());
+            item.setRealStartTime(newitem.getRealStartTime());
         }
-        if (item.getRealMonth() < 0){
-            throw new CoolException("瀹炴柦鍛ㄦ湡涓嶅彲涓鸿礋鏁�");
+        //瓒呭嚭杩愯垂
+        if(item.getPlandeAmt()!=null && item.getRealdeAmt()!=null){
+            item.setExcessAmount(item.getRealdeAmt()-item.getPlandeAmt());
+        }
+        //瓒呭嚭澶╂暟
+        if(item.getRealinDate()!=null && item.getPlaninDate()!=null){
+            Double days = (double) ((item.getRealinDate().getTime() - item.getPlaninDate().getTime()) / (1000*3600*24));      
+            Integer day= (int) Math.ceil(days);
+            item.setExcessTime(day);
         }
         item.setUpdateBy(getUserId());
         item.setUpdateTime(new Date());
@@ -185,4 +260,50 @@
         return R.ok();
     }
 
+    /**
+     * 鍒濆鍖栫敓鎴愰」鐩妭鐐�
+     * @param param
+     * @return
+     */
+    @RequestMapping(value = "/item/initPlan/auth")
+    @ManagerAuth
+    public R initPlan(@RequestParam("id") String param){
+        if (param != null){
+            List<ProjectPlan> projectPlans = planService.selectList(new EntityWrapper<ProjectPlan>().eq("item_id",param));
+            if(!Cools.isEmpty(projectPlans) && projectPlans.size()>0){
+                return R.error("璇ラ」鐩凡鏈夎妭鐐硅鍒�");
+            }
+            List<FlowStatus> flowStatuses = flowStatusService.selectList(new EntityWrapper<FlowStatus>());
+            if(!Cools.isEmpty(flowStatuses) && flowStatuses.size()>0){
+                for(FlowStatus flowStatus : flowStatuses){
+                    ProjectPlan projectPlan = new ProjectPlan();
+                    projectPlan.setItemId(Long.parseLong(param));
+                    projectPlan.setWeightNum(flowStatus.getWeightNum());
+                    projectPlan.setFlowId(flowStatus.getId());
+                    planService.insert(projectPlan);
+                }
+            } else {
+                return R.error("椤圭洰璁″垝鑺傜偣鍩虹鏁版嵁涓虹┖");
+            }
+        } else {
+            return R.error("椤圭洰鍙傛暟閿欒");
+        }
+
+        return R.ok();
+    }
+    @RequestMapping(value = "/progressRate/auth")
+    @ManagerAuth
+    public R queryProgressRate(String condition) {
+        List<Map<String, Object>> result = new ArrayList<>();
+        List<ProjectStatus> projectStatuses = projectStatusService.selectList(null);
+        for (ProjectStatus projectStatus : projectStatuses) {
+            Map<String, Object> map = new HashMap<>();
+            map.put("id", projectStatus.getId());
+            map.put("value", projectStatus.getStatusName());
+            result.add(map);
+        }
+
+        return R.ok(result);
+    }
+
 }

--
Gitblit v1.9.1