|
|
@@ -568,7 +568,7 @@ class CombinationOrder extends AuthController
|
|
|
if (!$product) return Json::fail('数据不存在!');
|
|
|
if ($product['paid'] == 1) {
|
|
|
$this->assign([
|
|
|
- 'title' => '退积分', 'rules' => $this->readIntegralBack($id)->getContent(),
|
|
|
+ 'title' => '退健康豆或健康币', 'rules' => $this->readIntegralBack($id)->getContent(),
|
|
|
'action' => Url::buildUrl('updateIntegralBack', array('id' => $id))
|
|
|
]);
|
|
|
} else {
|
|
|
@@ -595,28 +595,48 @@ class CombinationOrder extends AuthController
|
|
|
if (!$id) return $this->failed('数据不存在');
|
|
|
$product = StoreOrderModel::get($id);
|
|
|
if (!$product) return Json::fail('数据不存在!');
|
|
|
- if ($data['back_integral'] <= 0) return Json::fail('请输入积分');
|
|
|
- if ($product['use_integral'] == $product['back_integral']) return Json::fail('已退完积分!不能再积分了');
|
|
|
+ if ($data['back_integral'] <= 0) return Json::fail('请输入退还数额');
|
|
|
+ if ($product['use_integral'] == $product['back_integral']) return Json::fail('已全部退完!不能再退了');
|
|
|
$back_integral = $data['back_integral'];
|
|
|
$data['back_integral'] = bcadd($data['back_integral'], $product['back_integral'], 2);
|
|
|
$bj = bccomp((float)$product['use_integral'], (float)$data['back_integral'], 2);
|
|
|
- if ($bj < 0) return Json::fail('退积分大于支付积分,请修改退积分');
|
|
|
+ if ($bj < 0) return Json::fail('退健康币或健康豆大于支付部分,请修改数额');
|
|
|
BaseModel::beginTrans();
|
|
|
- $integral = User::where('uid', product['uid'])->value('integral');
|
|
|
- $res1 = User::bcInc($product['uid'], 'integral', $back_integral, 'uid');
|
|
|
- $res2 = UserBill::income('商品退积分', $product['uid'], 'integral', 'pay_product_integral_back', $back_integral, $product['id'], bcadd($integral, $back_integral, 2), '订单退积分' . floatval($back_integral) . '积分到用户积分');
|
|
|
- try {
|
|
|
- OrderRepository::storeOrderIntegralBack($product, $back_integral);
|
|
|
- } catch (\Exception $e) {
|
|
|
- BaseModel::rollbackTrans();
|
|
|
- return Json::fail($e->getMessage());
|
|
|
+ if ($product['is_brokerage']==1){
|
|
|
+ $brokerage_price = User::where('uid', $product['uid'])->value('brokerage_price');
|
|
|
+ $res1 = User::bcInc($product['uid'], 'brokerage_price', $back_integral, 'uid');
|
|
|
+ $res2 = UserBill::income('商品退健康币', $product['uid'], 'brokerage_price', 'pay_product_brokerage_price_back', $back_integral, $product['id'], bcadd($brokerage_price, $back_integral, 2), '订单退健康币' . floatval($back_integral) . '积分到用户健康币');
|
|
|
+ try {
|
|
|
+ OrderRepository::storeOrderBrokeragePriceBack($product, $back_integral);
|
|
|
+ } catch (\Exception $e) {
|
|
|
+ BaseModel::rollbackTrans();
|
|
|
+ return Json::fail($e->getMessage());
|
|
|
+ }
|
|
|
+ $res = $res1 && $res2;
|
|
|
+ BaseModel::checkTrans($res);
|
|
|
+ if (!$res) return Json::fail('退健康币失败!');
|
|
|
+ StoreOrderModel::edit($data, $id);
|
|
|
+ StoreOrderStatus::setStatus($id, 'brokerage_price_back', '商品退健康币:' . $data['back_integral']);
|
|
|
+ return Json::successful('退健康币成功!');
|
|
|
+ }else{
|
|
|
+ $integral = User::where('uid', $product['uid'])->value('integral');
|
|
|
+ $res1 = User::bcInc($product['uid'], 'integral', $back_integral, 'uid');
|
|
|
+ $res2 = UserBill::income('商品退健康豆', $product['uid'], 'integral', 'pay_product_integral_back', $back_integral, $product['id'], bcadd($integral, $back_integral, 2), '订单退健康豆' . floatval($back_integral) . '积分到用户健康豆');
|
|
|
+ try {
|
|
|
+ OrderRepository::storeOrderIntegralBack($product, $back_integral);
|
|
|
+ } catch (\Exception $e) {
|
|
|
+ BaseModel::rollbackTrans();
|
|
|
+ return Json::fail($e->getMessage());
|
|
|
+ }
|
|
|
+ $res = $res1 && $res2;
|
|
|
+ BaseModel::checkTrans($res);
|
|
|
+ if (!$res) return Json::fail('退健康豆失败!');
|
|
|
+ StoreOrderModel::edit($data, $id);
|
|
|
+ StoreOrderStatus::setStatus($id, 'integral_back', '商品退健康豆:' . $data['back_integral']);
|
|
|
+ return Json::successful('退健康豆成功!');
|
|
|
}
|
|
|
- $res = $res1 && $res2;
|
|
|
- BaseModel::checkTrans($res);
|
|
|
- if (!$res) return Json::fail('退积分失败!');
|
|
|
- StoreOrderModel::edit($data, $id);
|
|
|
- StoreOrderStatus::setStatus($id, 'integral_back', '商品退积分:' . $data['back_integral']);
|
|
|
- return Json::successful('退积分成功!');
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
|
|
|
public function remark()
|