| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- <?php
- /**
- * User: admin
- * Date Time: 2021/1/15 20:36
- */
- namespace ghs\controllers;
- use bizGhs\item\classes\ItemClass;
- use bizGhs\item\classes\ItemClassClass;
- use bizGhs\product\classes\ProductClass;
- use bizGhs\product\services\ProductService;
- use bizGhs\item\services\ItemService;
- use common\components\util;
- use Yii;
- class ProductController extends BaseController
- {
- //开单时获取所有的分类花材信息
- //库存预警
- public function actionIndex()
- {
- $py = Yii::$app->request->get('py','');
- $type = Yii::$app->request->get('type','');
- //获取所有当前供应商的分类 (全部、常用)
- //根据分类组装分类下的花材信息
- $classIds = ItemClassClass::getGhsItemClassAll($this->sjId);
- //获取供应商下所有花材ID (itemIds)
- $itemIdsInfo = ItemService::getGhsItemIds($this->sjId);
- $itemIds = array_column($itemIdsInfo,'itemId');
- if($py){
- $pyNameItemIds = ItemClass::getItemIdsByPyName($py);
- $itemIds = array_intersect($itemIds,$pyNameItemIds);
- }
- //库存预警
- if($type=='waring'){
- $waringItemIds = ProductClass::getItemIdsWarning($this->sjId,$this->shopId);
- $itemIds = array_intersect($itemIds,$waringItemIds);
- }
- $itemInfoData = ProductClass::getProductInfoByItemIds($itemIds);
- //常用的itemIds
- $oftenItemIds = ProductClass::getOftenItemIds($this->sjId);
- //组装数据: [{classId:'','className:'',child:[{itemInfoData}]}]
- $data = ProductService::assembleData($classIds,$itemIdsInfo,$itemInfoData,$oftenItemIds);
- util::success($data);
- }
- //弃用
- public function actionList()
- {
- $classId = Yii::$app->request->get('classId',0);
- $pyName = Yii::$app->request->get('py','');
- $itemIds = ItemClass::getItemIdsByClassId($classId);
- if($pyName){
- $pyNameItemIds = ItemClass::getItemIdsByPyName($pyName);
- $itemIds = array_intersect($itemIds,$pyNameItemIds);
- }
- $data = ProductClass::getProductInfoByItemIds($itemIds);
- util::success($data);
- }
- //改价
- public function actionChangePrice()
- {
- $productId = Yii::$app->request->post('productId',0);
- $price = Yii::$app->request->post('price');
- if(!is_numeric($price)){
- util::fail("请输入正确价格");
- }
- if($price <= 0 ){
- util::fail("价格不能小于0");
- }
- //判断是否有效
- $productData = ProductClass::getProductData($productId,$this->shopId,true);
- if(!$productData){
- util::fail("花材不存在");
- }
- $productData->price = $price;
- $productData->save();
- util::complete("改价成功");
- }
- //恢复自动调价
- public function actionAutoPrice()
- {
- $productId = Yii::$app->request->post('productId',0);
- $productData = ProductClass::getById($productId);
- if(!$productData){
- util::fail("花材不存在");
- }
- $itemId = $productData['itemId'];
- //获取该花材的每扎成本价和每扎加价
- //自动调价=每扎成本价+每扎加价
- $itemData = ItemClass::getItemData($itemId,$this->sjId);
- if(!$itemData){
- util::fail("出错拉");
- }
- $price = bcadd($itemData['unitCost'],$itemData['unitAddPrice'],2);
- ProductClass::changePrice($productId,$this->shopId,$price);
- util::complete("操作成功");
- }
- }
|