shish vor 5 Jahren
Ursprung
Commit
49ee1e310c

+ 18 - 9
app/ghs/controllers/OrderController.php

@@ -100,7 +100,13 @@ class OrderController extends BaseController
     public function actionDebt()
     {
         $get = Yii::$app->request->get();
-        $orderId = $get['orderId'] ?? 0;
+        util::complete();
+    }
+
+    //已经支付
+    public function actionHasPay()
+    {
+        $get = Yii::$app->request->get();
         util::complete();
     }
 
@@ -177,12 +183,6 @@ class OrderController extends BaseController
         util::success($newParams);
     }
 
-    //已经支付
-    public function actionHasPay()
-    {
-        util::complete();
-    }
-
     //获取订单详情 shish 2021.1.21
     public function actionDetail()
     {
@@ -194,7 +194,7 @@ class OrderController extends BaseController
     }
 
     //重选花材 shish 2021.1.22
-    public function actionReplaceProduct()
+    public function actionChooseProduct()
     {
         $post = Yii::$app->request->post();
         $id = $post['id'] ?? 0;
@@ -206,7 +206,16 @@ class OrderController extends BaseController
         $info = OrderClass::getOrderInfo($id);
         OrderClass::valid($info, $this->shopId);
 
-        OrderItemService::replaceProduct($info, $product);
+        //添加修改花材
+        OrderItemService::replace($info, $product);
+        util::complete();
+    }
+
+    //自取 shish 2021.1.22
+    public function actionSelfGet()
+    {
+        $get = Yii::$app->request->get();
+        $id = $get['id'] ?? 0;
         util::complete();
     }
 

+ 0 - 23
biz-ghs/check/classes/CheckOrderClass.php

@@ -1,23 +0,0 @@
-<?php
-
-namespace bizGhs\check\classes;
-
-use bizGhs\base\classes\BaseClass;
-
-class CheckOrderClass extends BaseClass
-{
-	
-	public static $baseFile = '\bizGhs\check\models\CheckOrder';
-	
-	//盘点单列表 shish 2021.1.14
-	public static function getOrderList($where)
-	{
-		$data = self::getList('*', $where, 'addTime DESC');
-		$list = isset($data['list']) && !empty($data['list']) ? $data['list'] : [];
-		if (empty($list)) {
-			return $data;
-		}
-		return $data;
-	}
-	
-}

+ 0 - 15
biz-ghs/check/models/CheckOrder.php

@@ -1,15 +0,0 @@
-<?php
-
-namespace bizGhs\check\models;
-
-use bizGhs\base\models\Base;
-
-class CheckOrder extends Base
-{
-	
-	public static function tableName()
-	{
-		return 'xhGhsCheckOrder';
-	}
-	
-}

+ 0 - 11
biz-ghs/check/services/CheckOrderService.php

@@ -1,11 +0,0 @@
-<?php
-
-namespace bizGhs\check\services;
-
-use bizGhs\base\services\BaseService;
-use common\components\util;
-
-class CheckOrderService extends BaseService
-{
-
-}

+ 0 - 3
biz-ghs/order/classes/OrderItemClass.php

@@ -14,9 +14,6 @@ class OrderItemClass extends BaseClass
     //添加和修改花材
     public static function replace($orderSn, $product)
     {
-        if (empty($product)) {
-            util::fail('没有花材');
-        }
         self::deleteByCondition(['orderSn' => $orderSn]);
         foreach ($product as $key => $val) {
             $product[$key]['orderSn'] = $orderSn;

+ 95 - 0
biz-ghs/order/classes/OrderSendClass.php

@@ -0,0 +1,95 @@
+<?php
+
+namespace bizGhs\order\classes;
+
+use bizGhs\base\classes\BaseClass;
+
+class OrderSendClass extends BaseClass
+{
+
+    public static $baseFile = '\bizGhs\order\models\OrderSend';
+
+    //流程id与名称
+    public static $actionId = ['placeOrder' => 10, 'deliver' => 30, 'reach' => 40];
+    public static $action = [
+        10 => ['name' => '下单', 'sign' => 'placeOrder'],
+        30 => ['name' => '发货', 'sign' => 'deliver'],
+        40 => ['name' => '送达', 'sign' => 'reach']
+    ];
+
+    //下单操作完成 shish 2019.12.13
+    public static function placeOrder($data)
+    {
+        //下单完成
+        $orderId = $data['orderId'];
+        $payTime = $data['payTime'];
+        $actionId = self::$actionId;
+        $placeOrderId = $actionId['placeOrder'];
+        $time = time();
+        $data = ['actionId' => $placeOrderId, 'orderId' => $orderId, 'finishTime' => $payTime, 'addTime' => $time, 'inTurn' => $placeOrderId];
+        self::add($data);
+
+        OrderClass::updateById($orderId, ['currentFlow' => 1]);
+
+        //制单未开始
+        $printOrderId = $actionId['printOrder'];
+        $data = ['actionId' => $printOrderId, 'orderId' => $orderId, 'finishTime' => 0, 'addTime' => $time, 'inTurn' => $printOrderId];
+        self::add($data);
+    }
+
+    //当前待执行的动作 shish 2019.12.16
+    public static function toDoActionId($id)
+    {
+        $action = self::getByCondition(['orderId' => $id], false, 'inTurn DESC');
+        $actionId = 0;
+        if (empty($action['finishTime'])) {
+            $actionId = $action['actionId'];
+        }
+        return $actionId;
+    }
+
+    //免发货流程的处理 shish 2020.3.12
+    public static function withoutSend($order)
+    {
+        $id = $order['id'];
+        if ($order['status'] == OrderClass::ORDER_STATUS_COMPLETE) {
+            util::fail('订单已完成');
+        }
+        self::deleteByCondition(['orderId' => $id]);
+        //订单状态变更
+        OrderClass::updateById($id, ['sendType' => 1, 'totalFlow' => OrderClass::ORDER_TOTAL_FLOW, 'currentFlow' => OrderClass::ORDER_TOTAL_FLOW]);
+        OrderClass::complete($order, OrderClass::ORDER_TOTAL_FLOW);
+
+        //待发货订单-1,完成订单+1
+        $merchantId = $order['merchantId'];
+        $asset = MerchantAssetClass::getByMerchantId($merchantId, true);
+        $asset->finishOrder += 1;
+        $asset->unSendOrder -= 1;
+        $asset->save();
+
+        return OrderClass::ORDER_TOTAL_FLOW;
+    }
+
+    //送达 shish 2020.6.1
+    public static function reach($order)
+    {
+        $id = $order['id'];
+        //1 确认送达
+        $option = 1;
+        $time = time();
+        $actionIdList = self::$actionId;
+        $reachId = $actionIdList['reach'];
+        OrderSendClass::updateByCondition(['orderId' => $id, 'actionId' => $reachId], ['option' => $option, 'finishTime' => $time]);
+
+        $userId = $order['userId'];
+        $user = UserClass::getById($userId);
+        $merchantId = $order['merchantId'];
+        $merchant = MerchantClass::getById($merchantId);
+        //完成通知客户
+        InformUserClass::sendComplete($user, $order, $merchant);
+        //完成通知管理员
+        InformAdminClass::sendComplete($order);
+    }
+
+
+}

+ 15 - 0
biz-ghs/order/models/OrderSend.php

@@ -0,0 +1,15 @@
+<?php
+
+namespace bizGhs\order\models;
+
+use bizGhs\base\models\Base;
+
+class OrderSend extends Base
+{
+
+    public static function tableName()
+    {
+        return 'xhGhsOrderSend';
+    }
+
+}

+ 2 - 1
biz-ghs/order/services/OrderItemService.php

@@ -26,7 +26,8 @@ class OrderItemService extends BaseService
         $orderSn = $info['orderSn'];
         OrderItemClass::replace($orderSn, $product);
 
-        //价格还要进行修改 todo @lqh
+        //未发货前可以修改花材。未发货前未付款的总金额要变化,未发货前已付款的,只改变成本,成本超过总金额的,则不允许修改。  todo @lqh
+        //修改价格
 
     }
 

+ 13 - 0
biz-ghs/order/services/OrderSendService.php

@@ -0,0 +1,13 @@
+<?php
+
+namespace bizGhs\order\services;
+
+use bizGhs\base\services\BaseService;
+use Yii;
+
+class OrderSendService extends BaseService
+{
+
+    public static $baseFile = '\bizGhs\order\classes\OrderSendClass';
+
+}

+ 13 - 0
sql.sql

@@ -791,3 +791,16 @@ ALTER TABLE xhPurchase MODIFY `orderSn` CHAR(20) NOT NULL DEFAULT '' COMMENT '
 ALTER TABLE xhGhsStockOrder MODIFY `orderSn` CHAR(20) NOT NULL DEFAULT '' COMMENT '订单编号';
 ALTER TABLE xhGhsStockOrderItem MODIFY `orderSn` CHAR(20) NOT NULL DEFAULT '' COMMENT '订单编号';
 ALTER TABLE `xhGhsOrder` ADD outTime DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '出库时间' AFTER `payTime`;
+CREATE TABLE `xhGhsOrderSend` (
+`id` INT(11) NOT NULL AUTO_INCREMENT,
+`orderSn` CHAR(20) NOT NULL DEFAULT '' COMMENT '订单编号',
+`actionId` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '动作id',
+`option` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '动作的选项',
+`finishTime` INT(11) NOT NULL DEFAULT '0' COMMENT '完成时间',
+`inTurn` INT(11) NOT NULL DEFAULT '0' COMMENT '排序',
+`addTime` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '添加时间',
+`updateTime` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
+PRIMARY KEY (`id`)
+) COMMENT='供货商发货管理';
+ALTER TABLE xhGhsOrder ADD `totalFlow` TINYINT(4) NOT NULL DEFAULT '5' COMMENT '总流程数' AFTER `printStatus`;
+ALTER TABLE xhGhsOrder ADD `currentFlow` TINYINT(4) NOT NULL DEFAULT '0' COMMENT '完成流程数,当前流程数' AFTER `totalFlow`;