getItemInfo($param['item_id']); if (!$itemInfo['flag']){ return $itemInfo; } try{ //设置入参 $data = [ "order_id" => $orderId, //附加项目 "item_id"=>$itemInfo['data']['id'], "item_type"=>$itemInfo['data']['item_type'], "item_name"=>$itemInfo['data']['item_name'], "item_memo"=>$itemInfo['data']['item_memo'], "item_unit"=>$itemInfo['data']['item_unit'], "area_name" => $itemInfo['data']['area_name'], "province_name" => $itemInfo['data']['province_name'], "city_name" => $itemInfo['data']['city_name'], "detail_address" => $itemInfo['data']['detail_address'], //其他 "check_in_date" => $param['check_in_date'], "confirm_status" => $param['confirm_status'], "confirm_no" => $param['confirm_no'], "customer_name" => $param['customer_name'], "customer_comments" => empty($param['customer_comments'])?"":$param['customer_comments'], "trade_order_number" => $param['trade_order_number'], "purchase_user_id" => $param['purchase_user_id'], "purchase_user" => $param['purchase_user'], "supplier_id" => $param['supplier_id'], "supplier_name" => $param['supplier_name'], "del_flag"=>0 ]; $model = new OrderItem(); if (empty($param['id'])) { $data["create_id"]= $param['create_id']; $data["group_id"]= $param['group_id']; $id = $model->insertGetId($data); return Util::returnArrSu("",$id); }else { $model->save($data,["id"=>$param['id']]); return Util::returnArrSu("",$param['id']); } }catch (Exception $e){ return Util::returnArrEr("更新附加项目子订单失败:".$e->getMessage()); } } /** * 获取附加项目信息 * @param $id * @return array */ public function getItemInfo($id) { try { $model = new CfItem(); $result = $model->where(["id" => $id])->find(); if ($result == null) { return Util::returnArrEr("获取附加项目信息失败:" . $id); } return Util::returnArrSu("",$result->toArray()); } catch (Exception $e) { return Util::returnArrEr("获取附加项目信息失败:" . $id); } } /** * 设置子订单金额 * @param int $subOrderId * @return array */ public function setSubOrderAmount( int $subOrderId) { try{ $purchaseModel = new Purchase(); $purchaseList = $purchaseModel->where(["order_detail_id"=>$subOrderId,"del_flag"=>0])->select()->toArray(); $cost = 0; $amount = 0; $count = 0; foreach ($purchaseList as $purchase) { $cost += $purchase['total_cost']; $amount += $purchase['total_price']; $count += $purchase['count']; } //更新数据 $oderItem = new OrderItem(); $oderItem->save(["total_price"=>$amount,"total_cost"=>$cost,"prod_num"=>$count,"profit"=>$amount-$cost],["id"=>$subOrderId]); return Util::returnArrSu(); }catch (Exception $e){ return Util::returnArrEr("更新附加项目订单子表金额失败:".$subOrderId); } } /** * 获取详情 * @param $id * @return array */ public function getInfoById($id) { try { $model = new OrderItem(); $result = $model->where(["id" => $id])->find(); if ($result == null) { return Util::returnArrEr("获取子订单信息失败:" . $id); } return Util::returnArrSu("", $result->toArray()); } catch (Exception $e) { return Util::returnArrEr("获取子订单信息失败:" . $id); } } /** * 删除记录 * @param $order_id */ public function delete($order_id){ $model = new OrderItem(); $model->save(["del_flag"=>1],["order_id"=>$order_id]); } /** * 删除记录 * @param $id */ public function delById($id) { $model = new OrderItem(); $model->save(["del_flag"=>1],["id"=>$id]); } /** * 获取附加项目子订单列表 * @param $orderId * @return array */ public function getListByOrderId($orderId){ $subOrderModel = new OrderItem(); try { $subOrderList = $subOrderModel->where(["order_id" => $orderId, "del_flag" => 0])->select()->toArray(); if (null == $subOrderList) { return Util::returnArrSu("",[]); } return Util::returnArrSu("", $subOrderList); }catch (Exception $e) { return Util::returnArrEr("获取附加项目订单列表异常".$e->getMessage()); } } /**=====================================**/ /** * 更新付款单下的状态 * @param $paymentOrderId * @param $status * @return array */ public function setPaymentOrderStatus($paymentOrderId, $status){ try{ $model = new OrderItem(); $model->save(['payment_order_status'=>$status],['payment_order_id'=>$paymentOrderId]); return Util::returnArrSu(); }catch (Exception $e){ return Util::returnArrEr("更新收款单下的附加项目订单状态失败".$e->getMessage()); } } /** * 添加附加项目订单到付款单下 * @param $paymentOrder * @param $orderIds * @return array */ public function addSubOrderInPayment($paymentOrder,$orderIds){ try{ $data = [ "payment_order_id"=>$paymentOrder['id'], "payment_order_status"=>$paymentOrder['status'], "payment_order_name"=>$paymentOrder['name'] ]; $model = new OrderItem(); $model->save($data,["id"=>["in",$orderIds]]); return Util::returnArrSu(); }catch (Exception $e){ return Util::returnArrEr("添加附加项目订单到付款单下失败".$e->getMessage()); } } /** * 将附加项目订单从付款单下移除 * @param $orderIds * @return array */ public function removeSubOrderFormPayment($orderIds){ try{ $data = [ "payment_order_id"=>0, "payment_order_status"=>0, "payment_order_name"=>"" ]; $model = new OrderItem(); $model->save($data,["id"=>["in",$orderIds]]); return Util::returnArrSu(); }catch (Exception $e){ return Util::returnArrEr("将附加项目订单从付款单下移除失败".$e->getMessage()); } } /** * 删除采购单 * @param $id * @return array */ public function delPaymentOrder($id){ try{ $data = [ "payment_order_id"=>0, "payment_order_status"=>0, "payment_order_name"=>"" ]; $model = new OrderItem(); $model->save($data,["payment_order_id"=>$id]); return Util::returnArrSu(); }catch (Exception $e){ return Util::returnArrEr("将附加项目订单从付款单下移除失败".$e->getMessage()); } } /** * 获取主订单ID * @param $payment_order_id * @return array */ public function getOrderMainIdByPayment($payment_order_id){ $subOrderModel = new OrderItem(); try { $subOrderList = $subOrderModel->where(["payment_order_id" => $payment_order_id, "del_flag" => 0])->select()->toArray(); if (null == $subOrderList) { return []; } $id = []; foreach ($subOrderList as $val){ $id[] = $val['order_id']; } return array_unique($id); }catch (Exception $e) { return []; } } /** * 获取订单列表 * @param $orderIds * @return array */ public function getOrderListByOrderIds($orderIds){ $subOrderModel = new OrderItem(); try { $subOrderList = $subOrderModel->where(["order_id" => ["in",$orderIds], "del_flag" => 0])->select()->toArray(); if (null == $subOrderList) { return []; } return $subOrderList; }catch (Exception $e) { return []; } } }