Browse Source

Merge branch 'ttxh' of http://git.huaml.com/zhh/huahuibao into ttxh

shish 4 năm trước cách đây
mục cha
commit
dde335cace

+ 4 - 2
app-ghs/controllers/ItemClassController.php

@@ -26,7 +26,8 @@ class ItemClassController extends BaseController
 
     public function actionGetAllClass()
     {
-        $list = ItemClassClass::getGhsItemClassAll($this->sjId);
+        //中央ID
+        $list = ItemClassClass::getGhsItemClassAll($this->mainId);
         util::success(['list' => $list]);
     }
 
@@ -91,7 +92,8 @@ class ItemClassController extends BaseController
     //开单: 获取所有分类
     public function actionAll()
     {
-        $data = ItemClassClass::getGhsItemClassAll($this->sjId);
+        //中央ID
+        $data = ItemClassClass::getGhsItemClassAll($this->mainId);
         util::success($data);
     }
 

+ 4 - 3
app-ghs/controllers/ProductController.php

@@ -35,7 +35,8 @@ class ProductController extends BaseController
 
         //获取所有当前供应商的分类 (全部、常用)
         //根据分类组装分类下的花材信息
-        $classIds = ItemClassClass::getGhsItemClassAll($this->sjId);
+        //中央ID
+        $classIds = ItemClassClass::getGhsItemClassAll($this->mainId);
 
         $where['mainId'] = $this->mainId;
         if ($py) {
@@ -702,7 +703,7 @@ class ProductController extends BaseController
     public function actionGeneratePriceTable()
     {
         $level = Yii::$app->request->get('level', 0);
-        $respond = ProductService::generatePriceTable($this->sjId, $this->shopId, $level);
+        $respond = ProductService::generatePriceTable($this->sjId, $this->shopId, $level,$this->mainId);
         $file = $respond['file'] ?? '';
         $shortFile = $respond['shortFile'] ?? '';
         $fileUrl = Yii::$app->params['ghsHost'] . $file;
@@ -712,7 +713,7 @@ class ProductController extends BaseController
     //下载条形码 linqh 20211227
     public function actionGenerateBarcodeTable()
     {
-        $respond = ProductService::generateBarcodeTable($this->sjId, $this->shopId);
+        $respond = ProductService::generateBarcodeTable($this->sjId, $this->shopId,$this->mainId);
         $file = $respond['file'] ?? '';
         $shortFile = $respond['shortFile'] ?? '';
         $fileUrl = Yii::$app->params['ghsHost'] . $file;

+ 3 - 2
app-ghs/controllers/StockController.php

@@ -19,10 +19,11 @@ class StockController extends BaseController
         $id = $get['id'] ?? 0;
 
         $product = ProductClass::getById($id, true);
-        if (isset($product->shopId) == false || $product->shopId != $this->shopId) {
+        if (isset($product->shopId) == false || $product->shopId != $this->shopId || $product->mainId != $this->mainId) {
             util::fail('没有权限');
         }
 
+
         $where = ['productId' => $id];
         $searchTime = $get['searchTime'] ?? '';
         if (!empty($searchTime)) {
@@ -35,4 +36,4 @@ class StockController extends BaseController
         util::success($list);
     }
 
-}
+}

+ 6 - 3
app-hd/controllers/GhsProductController.php

@@ -28,9 +28,12 @@ class GhsProductController extends BaseController
 
         //获取所有当前供应商的分类 (全部、常用)
         //根据分类组装分类下的花材信息
-        $classIds = ItemClassClass::getGhsItemClassAll($sjId);
-        $where['sjId'] = $sjId;
-        $where['shopId'] = $shopId;
+        //中央ID
+        $classIds = ItemClassClass::getGhsItemClassAll($this->mainId);
+//        $where['sjId'] = $sjId;
+//        $where['shopId'] = $shopId;
+
+        $where['mainId'] = $this->mainId;
         $where['delStatus'] = 0;
 
         $itemInfoData = ProductClass::getAllByCondition($where,['actualSold'=>SORT_DESC,'inTurn'=>SORT_DESC],"*");

+ 3 - 2
app-hd/controllers/ItemClassController.php

@@ -29,7 +29,8 @@ class ItemClassController extends BaseController
 
     public function actionGetAllClass()
     {
-        $list = ItemClassClass::getGhsItemClassAll($this->sjId);
+        //中央ID
+        $list = ItemClassClass::getGhsItemClassAll($this->mainId);
         util::success(['list' => $list]);
     }
 
@@ -77,7 +78,7 @@ class ItemClassController extends BaseController
     //开单: 获取所有分类
     public function actionAll()
     {
-        $data = ItemClassClass::getGhsItemClassAll($this->sjId);
+        $data = ItemClassClass::getGhsItemClassAll($this->mainId);
         util::success($data);
     }
 

+ 7 - 4
app-hd/controllers/ProductController.php

@@ -29,7 +29,8 @@ class ProductController extends BaseController
 
         //获取所有当前供应商的分类 (全部、常用)
         //根据分类组装分类下的花材信息
-        $classIds = ItemClassClass::getGhsItemClassAll($this->sjId);
+        //中央ID
+        $classIds = ItemClassClass::getGhsItemClassAll($this->mainId);
 
         $where['mainId'] = $this->mainId;
         if ($py) {
@@ -120,9 +121,11 @@ class ProductController extends BaseController
 
             //获取所有当前供应商的分类 (全部、常用)
             //根据分类组装分类下的花材信息
-            $classIds = ItemClassClass::getGhsItemClassAll($sjId);
-            $where['sjId'] = $sjId;
-            $where['shopId'] = $shopId;
+            //中央ID
+            $classIds = ItemClassClass::getGhsItemClassAll($this->mainId);
+//            $where['sjId'] = $sjId;
+//            $where['shopId'] = $shopId;
+            $where['mainId'] = $this->mainId;
             $where['delStatus'] = 0;
             $where['status'] = 1;
 

+ 4 - 2
biz-ghs/item/classes/ItemClassClass.php

@@ -94,9 +94,11 @@ class ItemClassClass extends BaseClass
     }
 
     //获取开单页所有的分类
-    public static function getGhsItemClassAll($sjId)
+    public static function getGhsItemClassAll($mainId)
     {
-        $where = ['sjId' => $sjId];
+        // $where = ['sjId' => $sjId];
+        // 中央ID
+        $where = ['mainId'=>$mainId];
         $data = self::getAllList('id,name', $where, 'inTurn desc');
         return $data;
     }

+ 12 - 8
biz-ghs/product/services/ProductService.php

@@ -109,16 +109,18 @@ class ProductService extends BaseService
     }
 
     //生成价格表 shish 20210922
-    public static function generatePriceTable($sjId, $shopId, $level)
+    public static function generatePriceTable($sjId, $shopId, $level,$mainId=0)
     {
         $status = 1;
 
         //获取所有当前供应商的分类
         //根据分类组装分类下的花材信息
-        $classIds = ItemClassClass::getGhsItemClassAll($sjId);
+        //中央ID
+        $classIds = ItemClassClass::getGhsItemClassAll($mainId);
 
-        $where['sjId'] = $sjId;
-        $where['shopId'] = $shopId;
+//        $where['sjId'] = $sjId;
+//        $where['shopId'] = $shopId;
+        $where['mainId'] = $mainId;
         $where['status'] = $status;
         $where['delStatus'] = 0;
 
@@ -241,11 +243,13 @@ class ProductService extends BaseService
     }
 
     //生成条形码 linqh 20211227
-    public static function generateBarcodeTable($sjId, $shopId)
+    public static function generateBarcodeTable($sjId, $shopId,$mainId=0)
     {
-        $classIds = ItemClassClass::getGhsItemClassAll($sjId);
-        $where['sjId'] = $sjId;
-        $where['shopId'] = $shopId;
+        //中央ID
+        $classIds = ItemClassClass::getGhsItemClassAll($mainId);
+//        $where['sjId'] = $sjId;
+//        $where['shopId'] = $shopId;
+        $where['mainId'] = $mainId;
         $where['delStatus'] = 0;
         $product = ProductClass::getAllByCondition($where, null, "*");
         $data = [];

+ 2 - 0
biz-ghs/stock/classes/StockRecordClass.php

@@ -96,6 +96,8 @@ class StockRecordClass extends BaseClass
             $itemNum = ProductClass::mergeItemNum($v['bigNum'], $v['smallNum'], $unitNum);
             $record['sjId'] = $orderData['sjId'];
             $record['shopId'] = $orderData['shopId'];
+            //增加mainId
+            $record['mainId'] = $productData[$productId]['mainId']??0;
             $record['orderSn'] = $orderData['orderSn'];
             $record['itemId'] = $itemId;
             $record['itemNum'] = $itemNum;

+ 53 - 0
biz/stock/classes/GoodsStockRecordClass.php

@@ -0,0 +1,53 @@
+<?php
+
+namespace biz\stock\classes;
+
+use biz\base\classes\BaseClass;
+class GoodsStockRecordClass extends BaseClass
+{
+
+    public static $baseFile = '\biz\stock\models\GoodsStockRecord';
+
+    //定义库存变更类型
+    const STOCK_RECORD_TYPE_PURCHASE = 1; //采购(制作成品)
+    const STOCK_RECORD_TYPE_OUT_STOCK = 2; //出库
+    const STOCK_RECORD_TYPE_IN_STOCK = 3; //入库
+    const STOCK_RECORD_TYPE_CHECK_STOCK = 4; //盘点
+    const STOCK_RECORD_TYPE_SELL_STOCK = 5; //销售(卖出)
+    const STOCK_RECORD_TYPE_OUT_STOCK_CANCEL = 6; //取消入库
+    const STOCK_RECORD_TYPE_IN_STOCK_CANCEL = 7; //取消出库
+    const STOCK_RECORD_TYPE_SELL_STOCK_CANCEL = 8;// 取消订单
+    const STOCK_RECORD_TYPE_WASTAGE = 9;// 报损
+    const STOCK_RECORD_TYPE_REFUND = 10;// 退款退货
+
+    public static $typeMap = [
+        self::STOCK_RECORD_TYPE_PURCHASE => '采购入库',
+        self::STOCK_RECORD_TYPE_IN_STOCK => '调拨入库',
+        self::STOCK_RECORD_TYPE_OUT_STOCK => '调拨出库',
+        self::STOCK_RECORD_TYPE_CHECK_STOCK => '盘点',
+        self::STOCK_RECORD_TYPE_SELL_STOCK => '开单',
+        self::STOCK_RECORD_TYPE_OUT_STOCK_CANCEL => '取消入库',
+        self::STOCK_RECORD_TYPE_IN_STOCK_CANCEL => '取消出库',
+        self::STOCK_RECORD_TYPE_SELL_STOCK_CANCEL => '取消订单',
+        self::STOCK_RECORD_TYPE_WASTAGE => '报损',
+        self::STOCK_RECORD_TYPE_REFUND => '退货',
+    ];
+
+    //采购or制作成品
+
+
+    //新增库存变更记录
+    public static function addRecord($data)
+    {
+        $respond = self::add($data);
+        return $respond;
+    }
+
+
+
+    //获取某个成品的库存变更记录 todo
+
+
+
+
+}

+ 12 - 0
biz/stock/models/GoodsStockRecord.php

@@ -0,0 +1,12 @@
+<?php
+
+namespace biz\stock\models;
+use biz\base\models\Base;
+
+class GoodsStockRecord extends Base
+{
+    public static function tableName()
+    {
+        return 'xhGoodsStockRecord';
+    }
+}

+ 4 - 1
console/controllers/InitController.php

@@ -20,6 +20,7 @@ use biz\stat\classes\StatOutMonthClass;
 use biz\stat\classes\StatSaleClass;
 use biz\stat\classes\StatSaleMonthClass;
 use bizGhs\item\classes\ItemClass;
+use bizGhs\item\classes\ItemClassClass;
 use bizGhs\order\classes\StockWastageOrderClass;
 use bizGhs\order\classes\StockWastageOrderItemClass;
 use bizGhs\stat\classes\StatYjClass;
@@ -118,6 +119,8 @@ class InitController extends Controller
 
             //花材中央化
             ItemClass::updateByCondition(['shopId' => $shopId], ['mainId' => $mainId]);
+            //花材分类
+            ItemClassClass::updateByCondition(['sjId' => $shop->sjId], ['mainId' => $mainId]);
 
 
             /********琦海 end ************/
@@ -162,4 +165,4 @@ class InitController extends Controller
 
     }
 
-}
+}

+ 33 - 0
sql.txt

@@ -326,6 +326,39 @@ ALTER TABLE `xhGhsItem`
 ADD COLUMN `mainId`  int(11) UNSIGNED NOT NULL DEFAULT 0 COMMENT '中央id' AFTER `shopId`,
 ADD INDEX `idx_mainId` (`mainId`) ;
 
+ALTER TABLE `xhGhsItemClass`
+ADD COLUMN `mainId`  int(11) UNSIGNED NOT NULL DEFAULT 0 COMMENT '中央ID' AFTER `sjId`,
+ADD INDEX `idx_mainId` (`mainId`) ;
+
+ALTER TABLE `xhGhsItemRank`
+ADD COLUMN `mainId`  int(11) UNSIGNED NOT NULL DEFAULT 0 COMMENT '中央ID' AFTER `sjId`,
+ADD INDEX `idx_mainId` (`mainId`) ;
+
+ALTER TABLE `xhGhsStockRecord`
+ADD COLUMN `mainId`  int(11) NOT NULL AFTER `shopId`,
+ADD INDEX `idx_mainId` (`mainId`) ;
+
+ALTER TABLE `xhGhsStockRecord`
+MODIFY COLUMN `mainId`  int(11) UNSIGNED NOT NULL DEFAULT 0 COMMENT '中央ID' AFTER `shopId`;
+
+
+CREATE TABLE `xhGoodsStockRecord` (
+  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
+  `sjId` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '商家ID',
+  `shopId` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '门店ID',
+  `mainId` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '中央ID',
+  `recordType` tinyint(2) unsigned NOT NULL DEFAULT '0' COMMENT '记录类型 1制作入口(采购),2出库,3入库,4盘点 5销售(开单)',
+  `orderSn` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '订单号',
+  `goodsId` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '成品ID',
+  `goodsNum` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '成品数量',
+  `oldStock` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '原库存数量',
+  `newStock` int(11) unsigned 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 '修改时间',
+  `extend` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '扩展字段',
+  PRIMARY KEY (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='成品库存记录表';
+
 
 
 ===============花材相关表结构变更end========