$params['warehouse_id'], 'supplier_id'=>$params['supplier_id'], 'code'=>$params['code'], 'admin_id'=>$params['admin_id'], 'financial_pm'=>1, 'batch'=>0, 'mark'=>$params['remark'], 'total_price'=>$params['remark'], ]; $total_price=0; foreach($params['product_arr'] as $k=>$v){ $total_price+=$v['total_price']; } $arr['total_price']=$total_price; $res=WarehouseOrder::create($arr); foreach($params['product_arr'] as $k=>$v){ $data['admin_id']=$params['admin_id']; $data['store_id']=0; $data['oid']=$res['id']; $data['supplier_id']=$params['supplier_id']; $data['warehouse_id']=$params['warehouse_id']; $data['code']=$params['code']; $data['product_id']=$v['product_id']; $data['nums']=$v['nums']; $data['purchase']=$v['purchase']; $data['total_price']=$v['total_price']; $data['financial_pm']=1; if(!empty($v['manufacture'])){ $data['manufacture']=$v['manufacture']; } if(!empty($v['expiration_date'])){ $data['expiration_date']=$v['expiration_date']; } WarehouseProductLogic::add($data); } Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 编辑仓储商品单 * @param array $params * @return bool * @author admin * @date 2024/08/20 10:50 */ public static function edit(array $params): bool { Db::startTrans(); try { WarehouseOrder::where('id', $params['id'])->update([ 'warehouse_id' => $params['warehouse_id'], 'supplier_id' => $params['supplier_id'], 'store_id' => $params['store_id'], 'code' => $params['code'], 'financial_pm' => $params['financial_pm'], 'admin_id' => $params['admin_id'], 'batch' => $params['batch'], 'mark' => $params['mark'], 'purchase' => $params['purchase'], 'total_price' => $params['total_price'], 'status' => $params['status'] ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 删除仓储商品单 * @param array $params * @return bool * @author admin * @date 2024/08/20 10:50 */ public static function delete(array $params): bool { return WarehouseOrder::destroy($params['id']); } /** * @notes 获取仓储商品单详情 * @param $params * @return array * @author admin * @date 2024/08/20 10:50 */ public static function detail($params): array { return WarehouseOrder::findOrEmpty($params['id'])->toArray(); } }