测试API发货
This commit is contained in:
@@ -182,321 +182,13 @@ class ServerController extends BaseAdminController
|
||||
}
|
||||
|
||||
# 后面可能回做一个结算重试
|
||||
// public function actionServiceLedger()
|
||||
// {
|
||||
// //门店可提现及累计金额更新
|
||||
// $supplierId = 1;
|
||||
//
|
||||
// $time = time();
|
||||
// /******************************************** 供应商 ********************************************** */
|
||||
// $storeTotal = Ledger::find()->where(['order_id' => -1, 'user_id' => $supplierId, 'user_type' => 3, 'order_type' => 1, 'fee_type' => 1])->sum('money'); // 该订单供应商分佣总金额
|
||||
// $storeTotal = round($storeTotal, 6)?? '20.01';//4舍5入
|
||||
// //增加供应商分佣
|
||||
// $log = new LedgerLog();
|
||||
// $log->order_id = -1;
|
||||
// $log->user_id = $supplierId;
|
||||
// $log->user_type = 3;// 供应商
|
||||
// $log->order_type = 1; //产品订单
|
||||
// $log->fee_type = 1; //药品费用
|
||||
// $log->type = 1;// 增加
|
||||
// $log->amount = $storeTotal;
|
||||
// $log->content = '订单结算后增加药品分佣金额';
|
||||
// $log->created_at = $time;
|
||||
// $log->updated_at = $time;
|
||||
// $log->saveOrFail();
|
||||
//
|
||||
//
|
||||
// //门店可提现及累计金额更新
|
||||
// AccountBalanceModel::updateAllCounters([
|
||||
// 'total' => $storeTotal,
|
||||
// 'frozen' => $storeTotal,
|
||||
// ], [
|
||||
// 'user_id' => $supplierId,
|
||||
// 'type' => 3
|
||||
// ]);
|
||||
// return ['分账成功'];
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
//
|
||||
// $t = \Yii::$app->db->beginTransaction();
|
||||
// $orderId = 314;
|
||||
// try {
|
||||
// $productOrder = ProductOrder::find()->with(['orderItems'])->where(['id' => $orderId])->one();
|
||||
// if (!$productOrder) {
|
||||
// throw new Exception('产品订单不存在');
|
||||
// }
|
||||
// $store = Store::findOne(['id' => $productOrder->store_id]);
|
||||
// if (!$store) {
|
||||
// throw new Exception('仓库不存在');
|
||||
// }
|
||||
// $isLegder = Ledger::find()->where(['order_id' => $orderId])->andWhere(['order_type' => 1])->one();
|
||||
// if (!empty($isLegder)) {
|
||||
// throw new Exception('该订单已增加待结算记录');
|
||||
// }
|
||||
// $time = time();
|
||||
// $ledgerData = [];
|
||||
// if ($productOrder->decoct_price > 0) {
|
||||
// $ledgerData[] = [
|
||||
// 'order_id' => $orderId,
|
||||
// 'user_id' => 0,
|
||||
// 'user_type' => 2, //平台
|
||||
// 'order_type' => 1,//产品订单
|
||||
// 'fee_type' => 4,//代煎费用
|
||||
// 'su_id' => $productOrder->su_id,
|
||||
// 'drugstore_id' => $productOrder->store_id,
|
||||
// 'drug_id' => 0,
|
||||
// 'xd_time' => $productOrder->created_at,
|
||||
// 'number' => 1,
|
||||
// 'money' => $productOrder->decoct_price,
|
||||
// 'status' => 0,
|
||||
// 'created_at' => $time,
|
||||
// 'updated_at' => $time
|
||||
// ];
|
||||
// }
|
||||
// if ($productOrder->process_price > 0) {
|
||||
// $ledgerData[] = [
|
||||
// 'order_id' => $orderId,
|
||||
// 'user_id' => 0,
|
||||
// 'user_type' => 2, //供应商
|
||||
// 'order_type' => 1,//产品订单
|
||||
// 'fee_type' => 5,//加工费用
|
||||
// 'su_id' => $productOrder->su_id,
|
||||
// 'drugstore_id' => $productOrder->store_id,
|
||||
// 'drug_id' => 0,
|
||||
// 'xd_time' => $productOrder->created_at,
|
||||
// 'number' => 1,
|
||||
// 'money' => $productOrder->process_price,
|
||||
// 'status' => 0,
|
||||
// 'created_at' => $time,
|
||||
// 'updated_at' => $time
|
||||
// ];
|
||||
// }
|
||||
// if ($productOrder->treatement_price > 0) {
|
||||
// $ledgerData[] = [
|
||||
// 'order_id' => $orderId,
|
||||
// 'user_id' => $store->id,
|
||||
// 'user_type' => 1, //门店
|
||||
// 'order_type' => 1,//产品订单
|
||||
// 'fee_type' => 6,//诊疗费用
|
||||
// 'su_id' => $productOrder->su_id,
|
||||
// 'drugstore_id' => $productOrder->store_id,
|
||||
// 'drug_id' => 0,
|
||||
// 'xd_time' => $productOrder->created_at,
|
||||
// 'number' => 1,
|
||||
// 'money' => $productOrder->treatement_price,
|
||||
// 'status' => 0,
|
||||
// 'created_at' => $time,
|
||||
// 'updated_at' => $time
|
||||
// ];
|
||||
// }
|
||||
// if ($productOrder->trans_expenses > 0) {
|
||||
// $ledgerData[] = [
|
||||
// 'order_id' => $orderId,
|
||||
// 'user_id' => 0,
|
||||
// 'user_type' => 2, //平台
|
||||
// 'order_type' => 1,//产品订单
|
||||
// 'fee_type' => 3,//快递费用
|
||||
// 'su_id' => $productOrder->su_id,
|
||||
// 'drugstore_id' => $productOrder->store_id,
|
||||
// 'drug_id' => 0,
|
||||
// 'xd_time' => $productOrder->created_at,
|
||||
// 'number' => 1,
|
||||
// 'money' => $productOrder->trans_expenses,
|
||||
// 'status' => 0,
|
||||
// 'created_at' => $time,
|
||||
// 'updated_at' => $time
|
||||
// ];
|
||||
// }
|
||||
// if (!empty($ledgerData)) {
|
||||
// \Yii::$app->db->createCommand()->batchInsert(Ledger::tableName(), [
|
||||
// 'order_id', 'user_id', 'user_type', 'order_type', 'fee_type', 'su_id', 'drugstore_id',
|
||||
// 'drug_id', 'xd_time', 'number', 'money', 'status', 'created_at', 'updated_at'
|
||||
// ], $ledgerData)->execute();
|
||||
// }
|
||||
// $productOrderItems = ProductOrderItems::find()->with(['drug.supplier'])->where(['product_order_id' => $productOrder->id])->asArray()->all();
|
||||
//
|
||||
// switch ($productOrder->prescription_type) {
|
||||
// case '1':
|
||||
// case '3': //中药/颗粒药分佣
|
||||
// foreach ($productOrderItems as $v) {
|
||||
// $ledger = [];
|
||||
// $number = $v['number'];
|
||||
// $totalPrice = round($number * $v['price'], 4);
|
||||
// $totalBuyPrice = round($number * $v['buy_price'], 4);
|
||||
//
|
||||
// $ledger[] = [
|
||||
// 'order_id' => $orderId,
|
||||
// 'user_id' => $store->id,
|
||||
// 'user_type' => 1, //门店
|
||||
// 'order_type' => 1,//产品订单
|
||||
// 'fee_type' => 1,//药品费用
|
||||
// 'su_id' => $productOrder->su_id,
|
||||
// 'drugstore_id' => $productOrder->store_id,
|
||||
// 'drug_id' => $v['drug_id'],
|
||||
// 'xd_time' => $productOrder->created_at,
|
||||
// 'number' => $number,
|
||||
// 'money' => $totalPrice - $totalBuyPrice,
|
||||
// 'status' => 0,
|
||||
// 'created_at' => $time,
|
||||
// 'updated_at' => $time
|
||||
// ];
|
||||
//
|
||||
// $ledger[] = [
|
||||
// 'order_id' => $orderId,
|
||||
// 'user_id' => 0,
|
||||
// 'user_type' => 2, //平台
|
||||
// 'order_type' => 1,//产品订单
|
||||
// 'fee_type' => 1,//药品费用
|
||||
// 'su_id' => $productOrder->su_id,
|
||||
// 'drugstore_id' => $productOrder->store_id,
|
||||
// 'drug_id' => $v['drug_id'],
|
||||
// 'xd_time' => $productOrder->created_at,
|
||||
// 'number' => $number,
|
||||
// 'money' => $totalBuyPrice,
|
||||
// 'status' => 0,
|
||||
// 'created_at' => $time,
|
||||
// 'updated_at' => $time
|
||||
// ];
|
||||
// \Yii::$app->db->createCommand()->batchInsert(Ledger::tableName(), [
|
||||
// 'order_id', 'user_id', 'user_type', 'order_type', 'fee_type', 'su_id', 'drugstore_id',
|
||||
// 'drug_id', 'xd_time', 'number', 'money', 'status', 'created_at', 'updated_at'
|
||||
// ], $ledger)->execute();
|
||||
// }
|
||||
// break;
|
||||
// case '2': //西药分佣
|
||||
// $ledger = [];
|
||||
// foreach ($productOrderItems as $v) {
|
||||
// $totalPrice = round($v['number'] * $v['price'], 4);
|
||||
// $totalBuyPrice = round($v['number'] * $v['buy_price'], 4);
|
||||
// $ledger[] = [
|
||||
// 'order_id' => $orderId,
|
||||
// 'user_id' => $store->id,
|
||||
// 'user_type' => 1, //门店
|
||||
// 'order_type' => 1,//产品订单
|
||||
// 'fee_type' => 1,//药品费用
|
||||
// 'su_id' => $productOrder->su_id,
|
||||
// 'drugstore_id' => $productOrder->store_id,
|
||||
// 'xd_time' => $productOrder->created_at,
|
||||
// 'drug_id' => $v['drug_id'],
|
||||
// 'number' => $v['number'],
|
||||
// 'money' => $totalPrice - $totalBuyPrice,
|
||||
// 'status' => 0,
|
||||
// 'created_at' => $time,
|
||||
// 'updated_at' => $time
|
||||
// ];
|
||||
//
|
||||
// $ledger[] = [
|
||||
// 'order_id' => $orderId,
|
||||
// 'user_id' => 0,
|
||||
// 'user_type' => 2, //平台
|
||||
// 'order_type' => 1,//产品订单
|
||||
// 'fee_type' => 1,//药品费用
|
||||
// 'su_id' => $productOrder->su_id,
|
||||
// 'drugstore_id' => $productOrder->store_id,
|
||||
// 'drug_id' => $v['drug_id'],
|
||||
// 'xd_time' => $productOrder->created_at,
|
||||
// 'number' => $v['number'],
|
||||
// 'money' => $totalBuyPrice,
|
||||
// 'status' => 0,
|
||||
// 'created_at' => $time,
|
||||
// 'updated_at' => $time
|
||||
// ];
|
||||
// \Yii::$app->db->createCommand()->batchInsert(Ledger::tableName(), [
|
||||
// 'order_id', 'user_id', 'user_type', 'order_type', 'fee_type', 'su_id', 'drugstore_id',
|
||||
// 'drug_id', 'xd_time', 'number', 'money', 'status', 'created_at', 'updated_at'
|
||||
// ], $ledger)->execute();
|
||||
// }
|
||||
//
|
||||
// break;
|
||||
// case '5':
|
||||
// //产品服务包分成
|
||||
// $ledger = [];
|
||||
// foreach ($productOrderItems as $v) {
|
||||
// $totalPrice = bcmul($v['number'], $v['price'], 4);
|
||||
// $platformMoney = bcmul($totalPrice, $v['drug']['platform_ledger'] / 100, 4);
|
||||
// $storeMoney = bcmul($totalPrice, $v['drug']['store_ledger'] / 100, 4);
|
||||
// $supplierMoney = bcmul($totalPrice, $v['drug']['supplier_ledger'] / 100, 4);
|
||||
// $ledger[] = [
|
||||
// 'order_id' => $orderId,
|
||||
// 'user_id' => $store->id,
|
||||
// 'user_type' => 1, //门店
|
||||
// 'order_type' => 1,//产品订单
|
||||
// 'fee_type' => 1,//药品费用
|
||||
// 'su_id' => $productOrder->su_id,
|
||||
// 'drugstore_id' => $productOrder->store_id,
|
||||
// 'xd_time' => $productOrder->created_at,
|
||||
// 'drug_id' => $v['drug_id'],
|
||||
// 'number' => $v['number'],
|
||||
// 'money' => $storeMoney,
|
||||
// 'status' => 0,
|
||||
// 'created_at' => $time,
|
||||
// 'updated_at' => $time
|
||||
// ];
|
||||
//
|
||||
// $ledger[] = [
|
||||
// 'order_id' => $orderId,
|
||||
// 'user_id' => 0,
|
||||
// 'user_type' => 2, //平台
|
||||
// 'order_type' => 1,//产品订单
|
||||
// 'fee_type' => 1,//药品费用
|
||||
// 'su_id' => $productOrder->su_id,
|
||||
// 'drugstore_id' => $productOrder->store_id,
|
||||
// 'drug_id' => $v['drug_id'],
|
||||
// 'xd_time' => $productOrder->created_at,
|
||||
// 'number' => $v['number'],
|
||||
// 'money' => $platformMoney,
|
||||
// 'status' => 0,
|
||||
// 'created_at' => $time,
|
||||
// 'updated_at' => $time
|
||||
// ];
|
||||
//
|
||||
// $ledger[] = [
|
||||
// 'order_id' => $orderId,
|
||||
// 'user_id' => $v['drug']['supplier']['id'],
|
||||
// 'user_type' => 3, //平台
|
||||
// 'order_type' => 1,//产品订单
|
||||
// 'fee_type' => 1,//药品费用
|
||||
// 'su_id' => $productOrder->su_id,
|
||||
// 'drugstore_id' => $productOrder->store_id,
|
||||
// 'drug_id' => $v['drug_id'],
|
||||
// 'xd_time' => $productOrder->created_at,
|
||||
// 'number' => $v['number'],
|
||||
// 'money' => $supplierMoney,
|
||||
// 'status' => 0,
|
||||
// 'created_at' => $time,
|
||||
// 'updated_at' => $time
|
||||
// ];
|
||||
// ds($ledger);
|
||||
// \Yii::$app->db->createCommand()->batchInsert(Ledger::tableName(), [
|
||||
// 'order_id', 'user_id', 'user_type', 'order_type', 'fee_type', 'su_id', 'drugstore_id',
|
||||
// 'drug_id', 'xd_time', 'number', 'money', 'status', 'created_at', 'updated_at'
|
||||
// ], $ledger)->execute();
|
||||
// }
|
||||
// break;
|
||||
// default:
|
||||
// throw new Exception('错误的处方类型');
|
||||
// break;
|
||||
// }
|
||||
//// $t->commit();
|
||||
//
|
||||
//// $ledgerForm = new LedgerForm();
|
||||
//// $ledgerForm->order_id = $orderId;
|
||||
//// $ledgerForm->status = 1; // 已结算
|
||||
//// $ledgerForm->update();
|
||||
// } catch (\Exception $e) {
|
||||
// $t->rollBack();
|
||||
// throw $e;
|
||||
// }
|
||||
// return ['重试成功'];
|
||||
// }
|
||||
public function actionServiceLedger()
|
||||
{
|
||||
$leaderNoMoney = Ledger::find()->where(['status' => 0])->sum('money');
|
||||
ds($leaderNoMoney);
|
||||
$ledgerForm = new LedgerForm();
|
||||
$ledgerForm->order_id = 339;
|
||||
$ledgerForm->status = 1; // 已结算
|
||||
$ledgerForm->update();
|
||||
}
|
||||
}
|
||||
@@ -605,7 +605,7 @@ class WareController extends BaseAdminController
|
||||
{
|
||||
$order = \Yii::$app->request->post('order_id');
|
||||
if (empty($order)) {
|
||||
throw new Exception('订单id不能为空');
|
||||
throw new Exception('订单id不能为空'. $order);
|
||||
}
|
||||
$orderAutoReceivedTime = isset($config['product_order']['received_time']) ? $config['product_order']['received_time'] : 7*24*3600;
|
||||
\Yii::$app->queue->delay($orderAutoReceivedTime)->push(new ProductOrderAutoReceivedJob([
|
||||
|
||||
@@ -490,28 +490,30 @@ class LedgerForm extends BaseModel
|
||||
/******************************************** 供应商 ********************************************** */
|
||||
$storeTotal = Ledger::find()->where(['order_id' => $this->order_id, 'user_id' => $v['drug']['source'], 'user_type' => 3, 'order_type' => 1, 'fee_type' => 1])->sum('money'); // 该订单供应商分佣总金额
|
||||
$storeTotal = round($storeTotal, 6);//4舍5入
|
||||
//增加供应商分佣
|
||||
$log = clone $model;
|
||||
$log->order_id = $this->order_id;
|
||||
$log->user_id = $v['drug']['source'];
|
||||
$log->user_type = 3;// 供应商
|
||||
$log->order_type = 1; //产品订单
|
||||
$log->fee_type = 1; //药品费用
|
||||
$log->type = 1;// 增加
|
||||
$log->amount = $storeTotal;
|
||||
$log->content = '订单结算后增加供应商佣金额';
|
||||
$log->created_at = $time;
|
||||
$log->updated_at = $time;
|
||||
$log->saveOrFail();
|
||||
if ($storeTotal > 0) {
|
||||
//增加供应商分佣
|
||||
$log = clone $model;
|
||||
$log->order_id = $this->order_id;
|
||||
$log->user_id = $v['drug']['source'];
|
||||
$log->user_type = 3;// 供应商
|
||||
$log->order_type = 1; //产品订单
|
||||
$log->fee_type = 1; //药品费用
|
||||
$log->type = 1;// 增加
|
||||
$log->amount = $storeTotal;
|
||||
$log->content = '订单结算后增加供应商佣金额';
|
||||
$log->created_at = $time;
|
||||
$log->updated_at = $time;
|
||||
$log->saveOrFail();
|
||||
|
||||
//供应商冻结金额及累计金额更新
|
||||
AccountBalanceModel::updateAllCounters([
|
||||
'total' => $storeTotal,
|
||||
'frozen' => $storeTotal,
|
||||
], [
|
||||
'user_id' => $v['drug']['source'],
|
||||
'type' => 3
|
||||
]);
|
||||
//供应商冻结金额及累计金额更新
|
||||
AccountBalanceModel::updateAllCounters([
|
||||
'total' => $storeTotal,
|
||||
'frozen' => $storeTotal,
|
||||
], [
|
||||
'user_id' => $v['drug']['source'],
|
||||
'type' => 3
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
//分账表批量更新状态为已结算
|
||||
|
||||
Reference in New Issue
Block a user