From e84e71bda390661a98d2f548d11f3721d2ec110c Mon Sep 17 00:00:00 2001
From: jyy <935090232@qq.com>
Date: Fri, 12 Mar 2021 17:30:00 +0800
Subject: [PATCH] 新增申请成为分销员接口10

---
 zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysProjServicesServiceImpl.java |   45 ++++++++++++++++++++++++++++++---------------
 1 files changed, 30 insertions(+), 15 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysProjServicesServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysProjServicesServiceImpl.java
index 3439d5c..cf0ae5a 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysProjServicesServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysProjServicesServiceImpl.java
@@ -1,12 +1,14 @@
 package com.matrix.system.hive.service.imp;
 
-import com.alibaba.fastjson.JSONObject;
 import com.matrix.component.rabbitmq.RabiitMqTemplate;
 import com.matrix.core.constance.MatrixConstance;
 import com.matrix.core.exception.GlobleException;
 import com.matrix.core.pojo.PaginationVO;
 import com.matrix.core.pojo.VerifyResult;
-import com.matrix.core.tools.*;
+import com.matrix.core.tools.DateUtil;
+import com.matrix.core.tools.LogUtil;
+import com.matrix.core.tools.StringUtils;
+import com.matrix.core.tools.WebUtil;
 import com.matrix.system.app.dto.ServiceOrderListDto;
 import com.matrix.system.app.vo.ServiceOrderListVo;
 import com.matrix.system.common.bean.SysUsers;
@@ -14,9 +16,7 @@
 import com.matrix.system.constance.Dictionary;
 import com.matrix.system.hive.bean.*;
 import com.matrix.system.hive.dao.*;
-import com.matrix.core.tools.DateUtil;
 import com.matrix.system.hive.plugin.util.MoneyUtil;
-import com.matrix.system.hive.pojo.MyBeauticianCount;
 import com.matrix.system.hive.service.*;
 import com.matrix.system.shopXcx.mqTask.MQTaskRouting;
 import com.matrix.system.wechart.templateMsg.UniformMsgParam;
@@ -299,15 +299,13 @@
      */
     @Override
     public VerifyResult checkArrears(SysProjServices sysProjServices) {
-        //检测欠款
-       /* for (SysBeauticianState sysBeauticianState : sysProjServices.getServiceItems()) {
-
+        // 检测欠款
+       for (SysBeauticianState sysBeauticianState : sysProjServices.getServiceItems()) {
             SysProjUse sysProjUse = projUseService.findById(sysBeauticianState.getPuseId());
 
-
-
             ShoppingGoods shoppingGoods = shoppingGoodsDao.selectById(sysProjUse.getProjId());
-            SysOrderItem orderItem = sysOrderItemService.findById(sysProjUse.getOrderItemId());
+           SysOrderItem item = sysOrderItemService.findById(sysProjUse.getOrderItemId());
+           SysOrder orderItem = sysOrderService.findById(item.getOrderId());
             if ("购买".equals(sysProjUse.getSource())) {
                 // 如果用户有欠款,服务单总价不能超过已付金额
                 if (orderItem!=null && orderItem.getArrears() > 0) {
@@ -323,17 +321,17 @@
                     double money = MoneyUtil.sub((bj - orderItem.getArrears()), (yxfje + bcxfje));
                     // 如果 已付金额  - (已消费金额+本次消费金额)<0 则不能再消费
                    if (money < 0) {
-                        return new VerifyResult(true, shoppingGoods.getName() + "存在欠款" + orderItem.getArrears() + "元 , 订单编号[ " + sysOrderService.findById(orderItem.getOrderId()).getOrderNo() + " ] ");
+                        return new VerifyResult(true, shoppingGoods.getName() + "存在欠款" + orderItem.getArrears() + "元 , 订单编号[ " + orderItem.getOrderNo() + " ] ");
                     }
 
 
                 }
             } else if ("赠送".equals(sysProjUse.getSource())) {
                 if (orderItem!=null &&orderItem.getArrears() > 0) {
-                    return new VerifyResult(true, shoppingGoods.getName() + "存在欠款" + orderItem.getArrears() + "元 , 不能消费赠送项目,订单编号[ " + sysOrderService.findById(orderItem.getOrderId()).getOrderNo() + " ] ");
+                    return new VerifyResult(true, shoppingGoods.getName() + "存在欠款" + orderItem.getArrears() + "元 , 不能消费赠送项目,订单编号[ " + orderItem.getOrderNo() + " ] ");
                 }
             }
-        }*/
+        }
         return new VerifyResult(false);
     }
 
@@ -660,7 +658,7 @@
                     double sum = stores.stream().mapToDouble(item2 -> item2.getStoreTotal()).sum();
                     Double needAmount = MoneyUtil.div(item.getAmount(), Double.valueOf(shoppingGoods.getVolume()));
                     if (sum < needAmount) {
-                        throw new GlobleException("出库失败:【" + shoppingGoods.getName() + "库存不足】");
+                        throw new GlobleException("出库失败:【" + shoppingGoods.getName()+"-"+shoppingGoods.getCode()+  "库存不足】");
                     }
                     //循环获取所有批次产品,并扣减库存
                     for (SysStoreInfo storeInfo : stores) {
@@ -692,12 +690,29 @@
             sysOutStoreItemDao.batchInsert(realOutStoreItemList);
         }
         // 设置服务单状态
-        projServices.setState(Dictionary.SERVICE_STATU_PLWC);
+//        projServices.setState(Dictionary.SERVICE_STATU_PLWC);
+
+        projServices.setState(Dictionary.SERVICE_STATU_FWWC);
         if(projServices.getDevisionId()==null){
             //如果没有设置配料师则默认为操作配料的人为配料师
             projServices.setDevisionId(sysUsers.getSuId());
 
         }
+
+        // 释放床位资源
+        SysBedState checkBedState = sysBedStateDao.selectBySerIdAndBedId(projServices.getBedId(), projServices.getId());
+        if (checkBedState != null) {
+            checkBedState.setBedState(Dictionary.BED_STATE_SYJS);
+            bedStateDao.update(checkBedState);
+        }
+        projServices.setStartTime(new Date());
+        projServices.setEndTime(new Date());
+        // 计算时差
+        long minspace = DateUtil.getDifTimeMin(projServices.getStartTime(), projServices.getEndTime())
+                - projServices.getTotalTime();
+        // 判断是服务超时还是服务提前结束,如果minspace大于0则是超时服务,小于0则是提前结束服务
+        projServices.setIsOverTime(minspace + "");
+        projServices.setState(Dictionary.SERVICE_STATU_FWWC);
         return sysProjServicesDao.update(projServices);
     }
 

--
Gitblit v1.9.1