修改医生账户

This commit is contained in:
wucongxing8150 2024-03-18 14:59:25 +08:00
parent 9d39922b00
commit 9b7020a4e9
3 changed files with 16 additions and 14 deletions

View File

@ -182,7 +182,7 @@ class AutoFinishInquiryDelayDirectConsumer extends ConsumerMessage
Db::commit(); Db::commit();
Log::getInstance("queue-AutoFinishInquiry")->info("成功"); Log::getInstance("queue-AutoFinishInquiry")->info("成功");
} catch (\Exception $e) { } catch (\Throwable $e) {
Db::rollBack(); Db::rollBack();
Log::getInstance("queue-AutoFinishInquiry")->error("错误:" . $e->getMessage()); Log::getInstance("queue-AutoFinishInquiry")->error("错误:" . $e->getMessage());
return Result::REQUEUE; // 重回队列 return Result::REQUEUE; // 重回队列
@ -207,7 +207,7 @@ class AutoFinishInquiryDelayDirectConsumer extends ConsumerMessage
*/ */
protected function handleDoctorAccount(array|object $order_inquiry): bool protected function handleDoctorAccount(array|object $order_inquiry): bool
{ {
$amount_total = bcmul($order_inquiry['amount_total'],0.75,8); $amount_total = bcmul((string)$order_inquiry['amount_total'],"0.75",8);
$params = array(); $params = array();
$params['doctor_id'] = $order_inquiry['doctor_id']; $params['doctor_id'] = $order_inquiry['doctor_id'];
@ -228,7 +228,6 @@ class AutoFinishInquiryDelayDirectConsumer extends ConsumerMessage
} else { } else {
// 非首次 // 非首次
// 总金额(已结束订单的总金额) // 总金额(已结束订单的总金额)
$params = array(); $params = array();
$params['account_id'] = $doctor_account['account_id']; $params['account_id'] = $doctor_account['account_id'];
DoctorAccount::inc($params, 'total_amount', (float)$amount_total); DoctorAccount::inc($params, 'total_amount', (float)$amount_total);
@ -236,6 +235,7 @@ class AutoFinishInquiryDelayDirectConsumer extends ConsumerMessage
// 账户余额 // 账户余额
DoctorAccount::inc($params, 'balance_account', (float)$amount_total); DoctorAccount::inc($params, 'balance_account', (float)$amount_total);
} }
return true; return true;
} }
@ -246,7 +246,7 @@ class AutoFinishInquiryDelayDirectConsumer extends ConsumerMessage
*/ */
protected function handleDoctorAccountDay(array|object $order_inquiry): bool protected function handleDoctorAccountDay(array|object $order_inquiry): bool
{ {
$amount_total = bcmul($order_inquiry['amount_total'],0.75,8); $amount_total = bcmul((string)$order_inquiry['amount_total'],"0.75",8);
$params = array(); $params = array();
$params['doctor_id'] = $order_inquiry['doctor_id']; $params['doctor_id'] = $order_inquiry['doctor_id'];

View File

@ -86,7 +86,7 @@ class DoctorAccountService extends BaseService
if (!empty($doctor_account_days)) { if (!empty($doctor_account_days)) {
foreach ($doctor_account_days as $doctor_account_day) { foreach ($doctor_account_days as $doctor_account_day) {
$data = array(); $data = array();
$data['total_amount'] = bcmul($doctor_account_day['total_amount'],1,2); $data['total_amount'] = bcmul((string)$doctor_account_day['total_amount'],1,2);
$data['month'] = $doctor_account_day['month']; $data['month'] = $doctor_account_day['month'];
$bill[] = $data; $bill[] = $data;
} }
@ -94,9 +94,9 @@ class DoctorAccountService extends BaseService
} }
$result = array(); $result = array();
$result['doctor_today_inquiry_total'] = bcmul($doctor_today_inquiry_total,0.75,2); // 今日接诊收入 $result['doctor_today_inquiry_total'] = bcmul((string)$doctor_today_inquiry_total,"0.75",2); // 今日接诊收入
$result['doctor_day_completed_amount_total'] = bcmul($doctor_day_completed_amount_total ,0.75,2); // 今日已完成收入 $result['doctor_day_completed_amount_total'] = bcmul((string)$doctor_day_completed_amount_total ,"0.75",2); // 今日已完成收入
$result['balance_account'] = bcmul($balance_account ,1,2); // 账户余额 $result['balance_account'] = bcmul((string)$balance_account ,"1",2); // 账户余额
$result['bill'] = $bill; // 账单 $result['bill'] = $bill; // 账单
return success($result); return success($result);
@ -162,7 +162,7 @@ class DoctorAccountService extends BaseService
} }
if (!empty($order_inquiry['data'])) { if (!empty($order_inquiry['data'])) {
foreach ($order_inquiry['data'] as &$item) { foreach ($order_inquiry['data'] as &$item) {
$item['estimate_income'] = bcmul($item['amount_total'],0.75,2); $item['estimate_income'] = bcmul((string)$item['amount_total'],"0.75",2);
// 入账状态 // 入账状态
if ($item['inquiry_status'] == 4 || $item['inquiry_status'] == 5){ if ($item['inquiry_status'] == 4 || $item['inquiry_status'] == 5){
@ -259,7 +259,7 @@ class DoctorAccountService extends BaseService
$order_inquiry = OrderInquiry::getInList($params,$in_params); $order_inquiry = OrderInquiry::getInList($params,$in_params);
if (!empty($order_inquiry)){ if (!empty($order_inquiry)){
foreach ($order_inquiry as $value){ foreach ($order_inquiry as $value){
$amount_total = bcadd($amount_total,$value["amount_total"],2); $amount_total = bcadd((string)$amount_total,(string)$value["amount_total"],2);
} }
} }
@ -274,13 +274,13 @@ class DoctorAccountService extends BaseService
if (!empty($order_inquiry)){ if (!empty($order_inquiry)){
foreach ($order_inquiry as $value){ foreach ($order_inquiry as $value){
$amount_total = bcadd($amount_total,$value["amount_total"],2); $amount_total = bcadd((string)$amount_total,(string)$value["amount_total"],2);
} }
$order_inquiry_id_array = array_column($order_inquiry,'order_inquiry_id'); $order_inquiry_id_array = array_column($order_inquiry,'order_inquiry_id');
} }
} }
$amount_total = bcmul($amount_total,0.75,2); $amount_total = bcmul((string)$amount_total,"0.75",2);
// 计算医生个人所得税 // 计算医生个人所得税

View File

@ -1126,13 +1126,14 @@ class InquiryService extends BaseService
$data = array(); $data = array();
$data['order_inquiry_id'] = $order_inquiry['order_inquiry_id']; $data['order_inquiry_id'] = $order_inquiry['order_inquiry_id'];
$message = new AutoFinishInquiryDelayDirectProducer($data);
$time = 60 * 60 * 24 * 3; $time = 60 * 60 * 24 * 3;
if (\Hyperf\Config\config("app_env") == "dev"){ if (\Hyperf\Config\config("app_env") == "dev"){
$time = 60 * 1; $time = 10;
} }
$message = new AutoFinishInquiryDelayDirectProducer($data);
$message->setDelayMs(1000 * $time); $message->setDelayMs(1000 * $time);
$producer = $this->container->get(Producer::class); $producer = $this->container->get(Producer::class);
$res = $producer->produce($message); $res = $producer->produce($message);
@ -1147,6 +1148,7 @@ class InquiryService extends BaseService
return fail(HttpEnumCode::SERVER_ERROR, $e->getMessage()); return fail(HttpEnumCode::SERVER_ERROR, $e->getMessage());
} }
dump("已添加至队列");
try { try {
// 发送IM消息-问诊已完成 // 发送IM消息-问诊已完成
$imService = new ImService(); $imService = new ImService();