From 1f48d7750efe7a37a7f51d83656553af69a324e0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=90=B4=E6=98=8A=E5=A4=A9?= <442384644@qq.com>
Date: Thu, 2 Mar 2023 09:40:21 +0800
Subject: [PATCH 1/7] =?UTF-8?q?=E7=A0=8D=E4=BB=B7=E5=88=97=E8=A1=A8?=
=?UTF-8?q?=E6=88=90=E5=8A=9F=E6=97=B6=E9=97=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
template/uni-app/pages/activity/bargain/index.vue | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/template/uni-app/pages/activity/bargain/index.vue b/template/uni-app/pages/activity/bargain/index.vue
index 09f383572..337775b5c 100644
--- a/template/uni-app/pages/activity/bargain/index.vue
+++ b/template/uni-app/pages/activity/bargain/index.vue
@@ -21,8 +21,8 @@
{{$t(`活动进行中`)}}
-
{{$t(`砍价成功`)}}
-
{{$t(`活动已结束`)}}
+
{{$t(`砍价成功`)}}
+
{{$t(`活动已结束`)}}
@@ -31,7 +31,9 @@
{{$t(`继续砍价`)}}
-
+
+
+ {{item.success_time}}
From 3b4c3be5ca7869464b13df45ea745f369dba3043 Mon Sep 17 00:00:00 2001
From: liaofei <136327134@qq.com>
Date: Thu, 2 Mar 2023 10:37:55 +0800
Subject: [PATCH 2/7] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=88=A4=E6=96=AD?=
=?UTF-8?q?=E6=8F=90=E7=8E=B0=E9=87=91=E9=A2=9D=E5=AE=9E=E5=90=8D=E8=AE=A4?=
=?UTF-8?q?=E8=AF=81=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
crmeb/crmeb/services/easywechat/v3pay/PayClient.php | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/crmeb/crmeb/services/easywechat/v3pay/PayClient.php b/crmeb/crmeb/services/easywechat/v3pay/PayClient.php
index 834733c1b..a9dd78bdd 100644
--- a/crmeb/crmeb/services/easywechat/v3pay/PayClient.php
+++ b/crmeb/crmeb/services/easywechat/v3pay/PayClient.php
@@ -212,7 +212,7 @@ class PayClient extends BaseClient
$totalFee = '0';
$amount = bcadd($amount, '0', 2);
foreach ($transferDetailList as &$item) {
- if ($item['transfer_amount'] >= 2000 && !empty($item['user_name'])) {
+ if ($item['transfer_amount'] >= 2000 && empty($item['user_name'])) {
throw new PayException('明细金额大于等于2000时,收款人姓名必须填写');
}
$totalFee = bcadd($totalFee, $item['transfer_amount'], 2);
From 76ecfb5aa7eba712042bf9a5e014580f73d9b28a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=90=B4=E6=98=8A=E5=A4=A9?= <442384644@qq.com>
Date: Thu, 2 Mar 2023 14:06:46 +0800
Subject: [PATCH 3/7] =?UTF-8?q?=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1?=
=?UTF-8?q?=E4=BC=98=E5=8C=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../crontab/SystemCrontabListener.php | 6 ++----
.../system/crontab/CrontabRunServices.php | 16 +++++++++++++++
.../system/crontab/SystemCrontabServices.php | 20 ++-----------------
crmeb/public/install/crmeb.sql | 18 ++++++++---------
4 files changed, 29 insertions(+), 31 deletions(-)
diff --git a/crmeb/app/listener/crontab/SystemCrontabListener.php b/crmeb/app/listener/crontab/SystemCrontabListener.php
index 5242c815f..76acf2be1 100644
--- a/crmeb/app/listener/crontab/SystemCrontabListener.php
+++ b/crmeb/app/listener/crontab/SystemCrontabListener.php
@@ -36,7 +36,8 @@ class SystemCrontabListener implements ListenerInterface
}
/**
- * 0 1 2 3 4 5
+ * 获取定时任务时间表达式
+ * 0 1 2 3 4 5
* | | | | | |
* | | | | | +------ day of week (0 - 6) (Sunday=0)
* | | | | +------ month (1 - 12)
@@ -44,9 +45,6 @@ class SystemCrontabListener implements ListenerInterface
* | | +---------- hour (0 - 23)
* | +------------ min (0 - 59)
* +-------------- sec (0-59)[可省略,如果没有0位,则最小时间粒度是分钟]
- */
- /**
- * 获取定时任务时间表达式
* @param $data
* @return string
*/
diff --git a/crmeb/app/services/system/crontab/CrontabRunServices.php b/crmeb/app/services/system/crontab/CrontabRunServices.php
index fe1d52be6..96356874f 100644
--- a/crmeb/app/services/system/crontab/CrontabRunServices.php
+++ b/crmeb/app/services/system/crontab/CrontabRunServices.php
@@ -20,6 +20,22 @@ use think\facade\Log;
*/
class CrontabRunServices
{
+ /**
+ * 定时任务类型 每一个定义的类型会对应CrontabRunServices类中的一个方法
+ * @var string[]
+ */
+ public $markList = [
+ 'orderCancel' => '未支付自动取消订单',
+ 'pinkExpiration' => '拼团到期订单处理',
+ 'agentUnbind' => '到期自动解绑上级',
+ 'liveProductStatus' => '自动更新直播商品状态',
+ 'liveRoomStatus' => '自动更新直播间状态',
+ 'takeDelivery' => '订单自动收货',
+ 'advanceOff' => '预售商品到期自动下架',
+ 'productReplay' => '订单商品自动好评',
+ 'clearPoster' => '清除昨日海报',
+ ];
+
/**
* 调用不存在的方法
* @param $name
diff --git a/crmeb/app/services/system/crontab/SystemCrontabServices.php b/crmeb/app/services/system/crontab/SystemCrontabServices.php
index 8b7102fba..b80704fa7 100644
--- a/crmeb/app/services/system/crontab/SystemCrontabServices.php
+++ b/crmeb/app/services/system/crontab/SystemCrontabServices.php
@@ -18,22 +18,6 @@ use think\helper\Str;
class SystemCrontabServices extends BaseServices
{
- /**
- * 定时任务类型 每一个定义的类型会对应CrontabRunServices类中的一个方法
- * @var string[]
- */
- private $markList = [
- 'order_cancel' => '未支付自动取消订单',
- 'pink_expiration' => '拼团到期订单处理',
- 'agent_unbind' => '到期自动解绑上级',
- 'live_product_status' => '自动更新直播商品状态',
- 'live_room_status' => '自动更新直播间状态',
- 'take_delivery' => '订单自动收货',
- 'advance_off' => '预售商品到期自动下架',
- 'product_replay' => '订单商品自动好评',
- 'clear_poster' => '清除昨日海报',
- ];
-
public function __construct(SystemCrontabDao $dao)
{
$this->dao = $dao;
@@ -80,7 +64,7 @@ class SystemCrontabServices extends BaseServices
*/
public function getMarkList(): array
{
- return $this->markList;
+ return app()->make(CrontabRunServices::class)->markList;
}
/**
@@ -93,7 +77,7 @@ class SystemCrontabServices extends BaseServices
if (!$data['id'] && $this->dao->getCount(['mark' => $data['mark'], 'is_del' => 0])) {
throw new AdminException('该定时任务已存在,请勿重复添加');
}
- $data['name'] = $this->markList[$data['mark']];
+ $data['name'] = $this->getMarkList()[$data['mark']];
$data['add_time'] = time();
if (!$data['id']) {
unset($data['id']);
diff --git a/crmeb/public/install/crmeb.sql b/crmeb/public/install/crmeb.sql
index 9a08732f0..b65e4309f 100755
--- a/crmeb/public/install/crmeb.sql
+++ b/crmeb/public/install/crmeb.sql
@@ -34875,15 +34875,15 @@ CREATE TABLE IF NOT EXISTS `eb_system_timer` (
--
INSERT INTO `eb_system_timer` (`id`, `name`, `mark`, `content`, `type`, `week`, `day`, `hour`, `minute`, `second`, `last_execution_time`, `next_execution_time`, `add_time`, `is_del`, `is_open`) VALUES
-(1, '未支付自动取消订单', 'order_cancel', '每隔30秒执行自动取消到期未支付的订单', 1, 1, 1, 1, 30, 30, 0, 1670642407, 1670642377, 0, 1),
-(2, '拼团到期订单处理', 'pink_expiration', '每隔1分钟拼团到期之后的操作', 2, 1, 1, 1, 1, 0, 0, 1670642487, 1670642427, 0, 1),
-(3, '到期自动解绑上级', 'agent_unbind', '每隔1分钟执行到期的绑定关系的解除', 2, 1, 1, 1, 1, 0, 0, 1670642534, 1670642474, 0, 1),
-(4, '自动更新直播商品状态', 'live_product_status', '每隔3分钟执行更新直播商品状态', 2, 1, 1, 1, 3, 0, 0, 1670642694, 1670642514, 0, 1),
-(5, '自动更新直播间状态', 'live_room_status', '每隔3分钟执行更新直播间状态', 2, 1, 1, 1, 3, 0, 0, 1670642709, 1670642529, 0, 1),
-(6, '订单自动收货', 'take_delivery', '每隔5分钟执行订单到期自动收货', 2, 1, 1, 1, 5, 0, 0, 1670642891, 1670642591, 0, 1),
-(7, '预售商品到期自动下架', 'advance_off', '每隔5分钟执行预售商品到期下架', 2, 1, 1, 1, 5, 0, 0, 1670642913, 1670642613, 0, 1),
-(8, '订单商品自动好评', 'product_replay', '每隔5分钟执行订单到期商品好评', 2, 1, 1, 1, 5, 0, 0, 1670642933, 1670642633, 0, 1),
-(9, '清除昨日海报', 'clear_poster', '每天0时30分0秒执行一次清除昨日海报', 5, 1, 1, 0, 30, 0, 0, 1670862600, 1670815378, 0, 1);
+(1, '未支付自动取消订单', 'orderCancel', '每隔30秒执行自动取消到期未支付的订单', 1, 1, 1, 1, 30, 30, 0, 1670642407, 1670642377, 0, 1),
+(2, '拼团到期订单处理', 'pinkExpiration', '每隔1分钟拼团到期之后的操作', 2, 1, 1, 1, 1, 0, 0, 1670642487, 1670642427, 0, 1),
+(3, '到期自动解绑上级', 'agentUnbind', '每隔1分钟执行到期的绑定关系的解除', 2, 1, 1, 1, 1, 0, 0, 1670642534, 1670642474, 0, 1),
+(4, '自动更新直播商品状态', 'liveProductStatus', '每隔3分钟执行更新直播商品状态', 2, 1, 1, 1, 3, 0, 0, 1670642694, 1670642514, 0, 1),
+(5, '自动更新直播间状态', 'liveRoomStatus', '每隔3分钟执行更新直播间状态', 2, 1, 1, 1, 3, 0, 0, 1670642709, 1670642529, 0, 1),
+(6, '订单自动收货', 'takeDelivery', '每隔5分钟执行订单到期自动收货', 2, 1, 1, 1, 5, 0, 0, 1670642891, 1670642591, 0, 1),
+(7, '预售商品到期自动下架', 'advanceOff', '每隔5分钟执行预售商品到期下架', 2, 1, 1, 1, 5, 0, 0, 1670642913, 1670642613, 0, 1),
+(8, '订单商品自动好评', 'productReplay', '每隔5分钟执行订单到期商品好评', 2, 1, 1, 1, 5, 0, 0, 1670642933, 1670642633, 0, 1),
+(9, '清除昨日海报', 'clearPoster', '每天0时30分0秒执行一次清除昨日海报', 5, 1, 1, 0, 30, 0, 0, 1670862600, 1670815378, 0, 1);
-- --------------------------------------------------------
From 239d143a716623f4a0d98fa001acc0d8cd946e77 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=90=B4=E6=98=8A=E5=A4=A9?= <442384644@qq.com>
Date: Thu, 2 Mar 2023 14:11:55 +0800
Subject: [PATCH 4/7] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=BD=BF=E7=94=A8?=
=?UTF-8?q?=E5=AE=9E=E9=99=85=E9=87=91=E9=A2=9D=E8=BF=94=E4=BD=A3=E7=9A=84?=
=?UTF-8?q?=E5=BC=80=E5=85=B3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../order/StoreOrderCreateServices.php | 21 ++++++++++++++-----
1 file changed, 16 insertions(+), 5 deletions(-)
diff --git a/crmeb/app/services/order/StoreOrderCreateServices.php b/crmeb/app/services/order/StoreOrderCreateServices.php
index 31d55dcf5..40d6edcf4 100644
--- a/crmeb/app/services/order/StoreOrderCreateServices.php
+++ b/crmeb/app/services/order/StoreOrderCreateServices.php
@@ -488,10 +488,8 @@ class StoreOrderCreateServices extends BaseServices
$cart['coupon_price'] = 0.00;
}
try {
- [$cartInfo, $spread_ids] = $this->computeOrderProductBrokerage($uid, $cartInfo, $orderInfo);
$cartInfo = $this->computeOrderProductCoupon($cartInfo, $priceData);
$cartInfo = $this->computeOrderProductIntegral($cartInfo, $priceData);
-// $cartInfo = $this->computeOrderProductPostage($cartInfo, $priceData, $addressId);
} catch (\Throwable $e) {
Log::error('订单商品结算失败,File:' . $e->getFile() . ',Line:' . $e->getLine() . ',Message:' . $e->getMessage());
throw new ApiException(410248);
@@ -513,6 +511,12 @@ class StoreOrderCreateServices extends BaseServices
$cart['truePrice'] = $cart['truePrice'] > $uni_integral_price ? bcsub((string)$cart['truePrice'], $uni_integral_price, 2) : 0;
}
}
+ try {
+ [$cartInfo, $spread_ids] = $this->computeOrderProductBrokerage($uid, $cartInfo, $orderInfo);
+ } catch (\Throwable $e) {
+ Log::error('订单商品结算失败,File:' . $e->getFile() . ',Line:' . $e->getLine() . ',Message:' . $e->getMessage());
+ throw new ApiException(410248);
+ }
return [$cartInfo, $spread_ids];
}
@@ -794,12 +798,19 @@ class StoreOrderCreateServices extends BaseServices
$productInfo = $cart['productInfo'];
//计算商品金额
- if (isset($productInfo['attrInfo'])) {
- $price = bcmul((string)($productInfo['attrInfo']['price'] ?? '0'), $cartNum, 4);
+ if (sys_config('user_brokerage_type') == 1) {
+ //按照实际支付价格返佣
+ $price = bcmul((string)$cart['truePrice'], $cartNum, 4);
} else {
- $price = bcmul((string)($productInfo['price'] ?? '0'), $cartNum, 4);
+ //按照商品价格返佣
+ if (isset($productInfo['attrInfo'])) {
+ $price = bcmul((string)($productInfo['attrInfo']['price'] ?? '0'), $cartNum, 4);
+ } else {
+ $price = bcmul((string)($productInfo['price'] ?? '0'), $cartNum, 4);
+ }
}
+
$staffBrokerage = bcmul((string)$price, (string)bcdiv($staffPercent, 100, 4), 2);
$agentBrokerage = bcmul((string)$price, (string)bcdiv($agentPercent, 100, 4), 2);
$divisionBrokerage = bcmul((string)$price, (string)bcdiv($divisionPercent, 100, 4), 2);
From 0ee12b48947aa1781589d037dbd852cf6c73bffa Mon Sep 17 00:00:00 2001
From: sugar1569
Date: Thu, 2 Mar 2023 14:35:26 +0800
Subject: [PATCH 5/7] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E5=88=86=E7=B1=BB?=
=?UTF-8?q?=E5=88=97=E8=A1=A8=E9=A1=B5=E9=9D=A2=E6=A0=B7=E5=BC=8F=E4=BC=98?=
=?UTF-8?q?=E5=8C=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
template/admin/src/pages/system/configTab/index.vue | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/template/admin/src/pages/system/configTab/index.vue b/template/admin/src/pages/system/configTab/index.vue
index 49b7bba94..38e301948 100644
--- a/template/admin/src/pages/system/configTab/index.vue
+++ b/template/admin/src/pages/system/configTab/index.vue
@@ -46,7 +46,7 @@
:data="classList"
row-id="id"
>
-
+
From 21e0723cfd9f766e57bf35b38b3db4f6f86d63cd Mon Sep 17 00:00:00 2001
From: sugar1569
Date: Thu, 2 Mar 2023 14:37:09 +0800
Subject: [PATCH 6/7] =?UTF-8?q?=E5=88=86=E9=94=80=E6=97=B6=E9=97=B4?=
=?UTF-8?q?=E6=90=9C=E7=B4=A2=E5=8F=AF=E4=BB=A5=E6=B8=85=E7=A9=BA=EF=BC=8C?=
=?UTF-8?q?=E5=8F=AF=E4=BB=A5=E8=87=AA=E5=AE=9A=E4=B9=89=E8=BE=93=E5=85=A5?=
=?UTF-8?q?=E6=97=B6=E9=97=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
template/admin/src/pages/agent/agentManage.vue | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/template/admin/src/pages/agent/agentManage.vue b/template/admin/src/pages/agent/agentManage.vue
index 9683bf8ab..5de403170 100644
--- a/template/admin/src/pages/agent/agentManage.vue
+++ b/template/admin/src/pages/agent/agentManage.vue
@@ -20,7 +20,8 @@
{{ item.text }}
Date: Thu, 2 Mar 2023 14:40:26 +0800
Subject: [PATCH 7/7] =?UTF-8?q?0=E5=85=83=E9=80=80=E6=AC=BE=E6=8A=A5?=
=?UTF-8?q?=E9=94=99=E9=97=AE=E9=A2=98=E4=BF=AE=E5=A4=8D?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../controller/v1/order/RefundOrder.php | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
diff --git a/crmeb/app/adminapi/controller/v1/order/RefundOrder.php b/crmeb/app/adminapi/controller/v1/order/RefundOrder.php
index 2db5cb2ac..0c4cd2936 100644
--- a/crmeb/app/adminapi/controller/v1/order/RefundOrder.php
+++ b/crmeb/app/adminapi/controller/v1/order/RefundOrder.php
@@ -57,7 +57,13 @@ class RefundOrder extends AuthController
/**
* 订单详情
* @param $uni
- * @return mixed
+ * @return \think\Response
+ * @throws \think\db\exception\DataNotFoundException
+ * @throws \think\db\exception\DbException
+ * @throws \think\db\exception\ModelNotFoundException
+ * @author 吴汐
+ * @email 442384644@qq.com
+ * @date 2023/03/02
*/
public function getRefundInfo($uni)
{
@@ -163,12 +169,12 @@ class RefundOrder extends AuthController
return app('json')->fail(400147);
}
$refund_price = $data['refund_price'];
+ }
- $data['refunded_price'] = bcadd($data['refund_price'], $orderRefund['refunded_price'], 2);
- $bj = bccomp((string)$orderRefund['refund_price'], (string)$data['refunded_price'], 2);
- if ($bj < 0) {
- return app('json')->fail(400148);
- }
+ $data['refunded_price'] = bcadd($data['refund_price'], $orderRefund['refunded_price'], 2);
+ $bj = bccomp((string)$orderRefund['refund_price'], (string)$data['refunded_price'], 2);
+ if ($bj < 0) {
+ return app('json')->fail(400148);
}
unset($data['type']);