| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- <?php
- namespace ghs\controllers;
- use bizGhs\live\classes\LiveOrderClass;
- use bizGhs\product\classes\ProductClass;
- use common\components\util;
- use Yii;
- class LiveOrderController extends BaseController
- {
- //添加订单 ssh 20241003
- public function actionAddOrder()
- {
- $post = Yii::$app->request->post();
- $itemId = $post['itemId'] ?? 0;
- if(empty($itemId)){
- util::fail('请选花材');
- }
- $product = ProductClass::getById($itemId,true);
- if(empty($product)){
- util::fail('没有找到花材');
- }
- if($product->mainId != $this->mainId){
- util::fail('不是你的花材');
- }
- $selectCustom = $post['selectCustom']??'';
- if(empty($selectCustom)){
- util::fail('没有客户');
- }
- $arr = json_decode($selectCustom,true);
- if(empty($arr) || is_array($arr) == false){
- util::fail('没有客户信息');
- }
- $mainId = $this->mainId;
- $hasItem = LiveOrderClass::getByCondition(['mainId'=>$mainId,'itemId'=>$itemId,'switch'=>0],true);
- if(!empty($hasItem)){
- util::fail('这个花材已添加过');
- }
- $has = [];
- $customList = [];
- foreach($arr as $key => $info){
- $customId = $info['customId']??0;
- if(isset($has[$customId])){
- util::fail('重复的客户');
- }
- $has[$customId] =1;
- $customName = $info['customName']??'';
- $num = $info['num']??0;
- $price = $info['price']??0;
- $customList[] = ['customId'=>$customId,'customName'=>$customName,'num'=>$num,'price'=>$price];
- }
- $params = ['product'=>$product,'customList'=>$customList];
- $connection = Yii::$app->db;
- $transaction = $connection->beginTransaction();
- try {
- LiveOrderClass::addOrder($params,$mainId);
- $transaction->commit();
- util::complete('创建成功');
- } catch (\Exception $e) {
- Yii::info("操作失败原因:" . $e->getMessage());
- $transaction->rollBack();
- util::fail('操作失败');
- }
- }
- }
|