Jelajahi Sumber

Merge branch 'v4.7.0dev' into v5.0.0dev

evoxwht 2 tahun lalu
induk
melakukan
d69a58899d

+ 2 - 1
crmeb/app/adminapi/controller/v1/export/ExportExcel.php

@@ -72,7 +72,8 @@ class ExportExcel extends AuthController
             ['label_id', ''],
             ['now_money', 'normal'],
             ['field_key', ''],
-            ['isMember', '']
+            ['isMember', ''],
+            ['ids', []]
         ]);
         return app('json')->success($this->service->exportUserList($where));
     }

+ 7 - 1
crmeb/app/adminapi/controller/v1/user/UserLabel.php

@@ -37,7 +37,11 @@ class UserLabel extends AuthController
 
     /**
      * 标签列表
+     * @param int $label_cate
      * @return mixed
+     * @throws \think\db\exception\DataNotFoundException
+     * @throws \think\db\exception\DbException
+     * @throws \think\db\exception\ModelNotFoundException
      */
     public function index($label_cate = 0)
     {
@@ -60,8 +64,10 @@ class UserLabel extends AuthController
 
     /**
      * 保存标签表单数据
-     * @param int $id
      * @return mixed
+     * @throws \think\db\exception\DataNotFoundException
+     * @throws \think\db\exception\DbException
+     * @throws \think\db\exception\ModelNotFoundException
      */
     public function save()
     {

+ 5 - 4
crmeb/app/api/controller/v1/admin/StoreOrderController.php

@@ -238,7 +238,7 @@ class StoreOrderController
             $start = $middle;
         }
         $space = bcsub($stop, $start, 0);//间隔时间段
-        $front = bcsub($start, $space, 0);//第一个时间段
+        $front = bcsub($start, $space, 0) - 1;//第一个时间段
         /** @var StoreOrderServices $orderService */
         $orderService = app()->make(StoreOrderServices::class);
         $order_where = [
@@ -246,10 +246,11 @@ class StoreOrderController
             'paid' => 1,
             'refund_status' => [0, 3],
             'is_del' => 0,
-            'is_system_del' => 0];
+            'is_system_del' => 0
+        ];
 
         if ($type == 1) {//销售额
-            $frontPrice = $orderService->sum($order_where + ['time' => [$front, $start]], 'pay_price', true);
+            $frontPrice = $orderService->sum($order_where + ['time' => [$front, $start - 1]], 'pay_price', true);
             $afterPrice = $orderService->sum($order_where + ['time' => [$start, $stop]], 'pay_price', true);
             $chartInfo = $orderService->chartTimePrice($start, $stop);
             $data['chart'] = $chartInfo;//营业额图表数据
@@ -262,7 +263,7 @@ class StoreOrderController
             $data['increase_time'] = abs($increase); //同比上个时间区间增长营业额
             $data['increase_time_status'] = $increase >= 0 ? 1 : 2; //同比上个时间区间增长营业额增长 1 减少 2
         } else {//订单数
-            $frontNumber = $orderService->count($order_where + ['time' => [$front, $start]]);
+            $frontNumber = $orderService->count($order_where + ['time' => [$front, $start - 1]]);
             $afterNumber = $orderService->count($order_where + ['time' => [$start, $stop]]);
             $chartInfo = $orderService->chartTimeNumber($start, $stop);
             $data['chart'] = $chartInfo;//订单数图表数据

+ 4 - 0
crmeb/app/dao/user/UserWechatUserDao.php

@@ -244,6 +244,10 @@ class UserWechatUserDao extends BaseDao
         if (isset($where['is_del'])) {
             $model->where($userAlias . 'is_del', $where['is_del']);
         }
+
+        if (isset($where['ids']) && count($where['ids'])) {
+            $model->whereIn($userAlias . 'uid', $where['ids']);
+        }
         return $field ? $model->field($field) : $model;
     }
 

+ 1 - 1
crmeb/app/services/order/StoreOrderRefundServices.php

@@ -245,7 +245,7 @@ class StoreOrderRefundServices extends BaseServices
             $this->storeOrderServices->update($splitOrderInfo['id'], [
                 'status' => -2,
                 'refund_status' => 2,
-                'refund_type' => $orderRefundInfo['refund_type'],
+                'refund_type' => 6,
                 'refund_express' => $orderRefundInfo['refund_express'],
                 'refund_express_name' => $orderRefundInfo['refund_express_name'],
                 'refund_reason_wap_img' => $orderRefundInfo['refund_img'],

+ 3 - 1
template/admin/src/pages/kefu/index.vue

@@ -548,7 +548,9 @@ a:link, a:visited, a:hover, a:active {
     background-position: left top !important;
     display: flex;
   }
-
+  .wrapper-box .foot-box {
+    text-align: center !important;
+  }
   .content {
     display: none;
   }

+ 10 - 6
template/admin/src/pages/marketing/live/add_goods.vue

@@ -24,7 +24,7 @@
               <div class="box">
                 <div class="box-item" v-for="(item, index) in goodsList" :key="index">
                   <img :src="item.image" alt="" />
-                  <Icon type="ios-close-circle" size="20" @click="bindDelete(index,item)" />
+                  <Icon type="ios-close-circle" size="20" @click="bindDelete(index, item)" />
                 </div>
                 <div class="upload-box" @click="selectGoods">
                   <Icon type="ios-camera-outline" size="36" />
@@ -155,7 +155,7 @@ export default {
       this.selectIds = this.goodsList.map((i) => {
         return i.product_id;
       });
-      console.log(this.selectIds,this.goodsList)
+      console.log(this.selectIds, this.goodsList);
     },
     // 生成直播商品
     liveGoods() {
@@ -182,17 +182,21 @@ export default {
         }, 300);
       });
     },
-    bindDelete(index,item) {
+    bindDelete(index, item) {
       this.goodsList.splice(index, 1);
-      if (this.tabList.length) {
-        let i = this.tabList.findIndex((e) => e.id == item.product_id);
-        this.tabList.splice(i, 1);
+      let i = this.tabList.findIndex((e) => e.id == item.product_id);
+      this.tabList.splice(i, 1);
+      if (!this.goodsList.length) {
+        this.isShowBox = false;
       }
     },
     del(row, index) {
       this.tabList.splice(index, 1);
       let i = this.goodsList.findIndex((e) => e.product_id == row.id);
       this.goodsList.splice(i, 1);
+      if (!this.tabList.length) {
+        this.isShowBox = false;
+      }
     },
     // 提交
     bindSub() {

+ 1 - 1
template/admin/src/pages/marketing/live/creat_live.vue

@@ -66,7 +66,7 @@
           </Col>
           <Col span="24">
             <div style="display: flex">
-              <FormItem label="分享图:">
+              <FormItem label="分享图:" prop="name">
                 <div @click="modalPicTap(1)" class="box">
                   <img :src="formValidate.share_img" alt="" v-if="formValidate.share_img" />
                   <div class="upload-box" v-else>

+ 14 - 10
template/admin/src/pages/user/list/index.vue

@@ -1048,6 +1048,9 @@ export default {
         });
         this.userFrom.label_id = activeIds.join(',');
       }
+      if (this.ids.length) {
+        this.userFrom.ids = this.ids;
+      }
       this.userFrom.user_type = this.userFrom.user_type || '';
       this.userFrom.status = this.userFrom.status || '';
       this.userFrom.sex = this.userFrom.sex || '';
@@ -1335,14 +1338,15 @@ img {
     color: #808695;
   }
 }
-.demo-drawer-footer{
-        width: 100%;
-        position: absolute;
-        bottom: 0;
-        left: 0;
-        border-top: 1px solid #e8e8e8;
-        padding: 10px 16px;
-        text-align: right;
-        background: #fff;
-    }
+
+.demo-drawer-footer {
+  width: 100%;
+  position: absolute;
+  bottom: 0;
+  left: 0;
+  border-top: 1px solid #e8e8e8;
+  padding: 10px 16px;
+  text-align: right;
+  background: #fff;
+}
 </style>

+ 1 - 1
template/uni-app/pages/activity/goods_bargain_details/index.vue

@@ -1,7 +1,7 @@
 <template>
 	<view style="background-color: var(--view-theme);padding-bottom: 50rpx;" :style="colorStyle">
 		<view class="bargain">
-			<!-- #ifndef APP-PLUS -->
+			<!-- #ifndef APP-PLUS || MP -->
 			<view class="iconfont icon-xiangzuo" v-if="retunTop" @tap="goBack" :style="'top:' + navH + 'px'"></view>
 			<!-- #endif -->
 			<view :style="'background-image: url('+(bargainUid != userInfo.uid ?picUrl.support:picUrl.barga)+');'"

+ 12 - 15
template/uni-app/pages/admin/delivery/index.vue

@@ -22,14 +22,14 @@
 			<view class="item acea-row row-between-wrapper">
 				<view>{{$t(`发货方式`)}}</view>
 				<view class="mode acea-row row-middle row-right">
-					<view class="goods" :class="active === item.key ? 'on' : ''" v-for="(item, index) in types"
+					<view class="goods" :class="active === index ? 'on' : ''" v-for="(item, index) in types"
 						:key="index" @click="changeType(item, index)">
 						{{ item.title }}<span class="iconfont icon-xuanzhong2"></span>
 					</view>
 				</view>
 			</view>
 			<block v-if="logistics.length>0">
-				<view class="list" v-show="active === 1">
+				<view class="list" v-show="active === 0">
 					<view class="item acea-row row-between-wrapper" v-if="delivery.config_export_open == 1">
 						<view>{{$t(`发货类型`)}}</view>
 						<view class="mode acea-row row-middle row-right">
@@ -101,7 +101,7 @@
 				</view>
 			</block>
 
-			<view class="list" v-show="active === 2">
+			<view class="list" v-show="active === 1">
 				<view class="item acea-row row-between-wrapper">
 					<view>{{$t(`送货人`)}}</view>
 					<view class="select-box" v-if="postPeople.length>0">
@@ -113,7 +113,7 @@
 					</view>
 				</view>
 			</view>
-			<textarea v-show="active === 3" v-model="fictitious_content" class="textarea" @blur="bindTextAreaBlur"
+			<textarea v-show="active === 2" v-model="fictitious_content" class="textarea" @blur="bindTextAreaBlur"
 				:placeholder="$t(`备注`)" :maxlength="500" auto-height />
 		</view>
 		<view style="height:1.2rem;"></view>
@@ -143,7 +143,11 @@
 						title: this.$t(`发货`),
 						key: 1
 					},
-
+					{
+						type: "send",
+						title: this.$t(`送货`),
+						key: 2
+					},
 					{
 						type: "fictitious",
 						title: this.$t(`无需物流`),
@@ -160,7 +164,7 @@
 					},
 				],
 				curExpress: 1,
-				active: 1,
+				active: 0,
 				order_id: "",
 				delivery: [],
 				logistics: [],
@@ -235,14 +239,7 @@
 			// 获取配送员列表
 			geTorderOrderDelivery() {
 				orderOrderDelivery().then(res => {
-					if (res.data.length) {
-						this.postPeople = res.data
-						this.types.push({
-							type: "send",
-							title: this.$t(`送货`),
-							key: 2
-						})
-					}
+					this.postPeople = res.data
 				})
 			},
 			// 配送员选择
@@ -255,7 +252,7 @@
 				this.getLogistics(index || '');
 			},
 			changeType: function(item, index) {
-				this.active = item.key;
+				this.active = index;
 				this.delivery_type = item.key;
 			},
 			getIndex: function() {

+ 24 - 16
template/uni-app/pages/goods/admin_order_detail/index.vue

@@ -3,7 +3,7 @@
 		<view class="header acea-row row-middle">
 			<view class="state">{{ $t(title) }}</view>
 			<view class="data">
-				<view class="order-num">{{$t(`订单`)}}:{{ orderInfo.order_id }}</view>
+				<view class="order-num">{{$t(`订单`)}}:{{ orderInfo.order_id }}</view>
 				<view>
 					<span class="time">{{ orderInfo._add_time }}</span>
 				</view>
@@ -44,7 +44,7 @@
 			</navigator>
 		</view>
 		<view class="public-total">
-			{{$t(`共`)}}{{ orderInfo.total_num }}{{$t(`件商品`)}}
+			{{$t(`共`)}}{{ orderInfo.total_num }}{{$t(`件商品,应支付`)}}
 			<span class="money">{{$t(`¥`)}}{{ orderInfo.pay_price }}</span> ( {{$t(`邮费`)}} {{$t(`¥`)}}{{
         orderInfo.pay_postage
       }}
@@ -52,7 +52,7 @@
 		</view>
 		<view class="wrapper">
 			<view class="item acea-row row-between">
-				<view>{{$t(`订单号`)}}:</view>
+				<view>{{$t(`订单号`)}}:</view>
 				<view class="conter acea-row row-middle row-right">
 					{{ orderInfo.order_id
           }}
@@ -90,25 +90,33 @@
 			</view>
 		</view>
 		<view class="wrapper">
-			<view class="item acea-row row-between">
-				<view>{{$t(`支付金额`)}}:</view>
-				<view class="conter">{{$t(`¥`)}}{{ orderInfo.total_price }}</view>
+			<view class='item acea-row row-between'>
+				<view>{{$t(`商品总价`)}}:</view>
+				<view class='conter'>
+					{{$t(`¥`)}}{{(parseFloat(orderInfo.total_price)+parseFloat(orderInfo.vip_true_price)).toFixed(2)}}
+				</view>
+			</view>
+			<view class='item acea-row row-between' v-if="orderInfo.pay_postage > 0">
+				<view>{{$t(`配送运费`)}}:</view>
+				<view class='conter'>{{$t(`¥`)}}{{parseFloat(orderInfo.pay_postage).toFixed(2)}}</view>
+			</view>
+			<view v-if="orderInfo.levelPrice > 0" class='item acea-row row-between'>
+				<view>{{$t(`用户等级优惠`)}}:</view>
+				<view class='conter'>-{{$t(`¥`)}}{{parseFloat(orderInfo.levelPrice).toFixed(2)}}</view>
 			</view>
-			<view class='item acea-row row-between' v-if='orderInfo.coupon_id'>
+			<view v-if="orderInfo.memberPrice > 0" class='item acea-row row-between'>
+				<view>{{$t(`付费会员优惠`)}}:</view>
+				<view class='conter'>-{{$t(`¥`)}}{{parseFloat(orderInfo.memberPrice).toFixed(2)}}</view>
+			</view>
+			<view class='item acea-row row-between' v-if='orderInfo.coupon_price > 0'>
 				<view>{{$t(`优惠券抵扣`)}}:</view>
-				<view class='conter'>-{{$t(`¥`)}}{{orderInfo.coupon_price}}</view>
+				<view class='conter'>-{{$t(`¥`)}}{{parseFloat(orderInfo.coupon_price).toFixed(2)}}</view>
 			</view>
 			<view class='item acea-row row-between' v-if="orderInfo.use_integral > 0">
 				<view>{{$t(`积分抵扣`)}}:</view>
-				<view class='conter'>-{{$t(`¥`)}}{{orderInfo.deduction_price}}</view>
-			</view>
-			<view class='item acea-row row-between' v-if="orderInfo.pay_postage > 0">
-				<view>{{$t(`运费`)}}:</view>
-				<view class='conter'>{{$t(`¥`)}}{{orderInfo.pay_postage}}</view>
-			</view>
-			<view class="actualPay acea-row row-right">
-				{{$t(`实际支付`)}}:<span class="money">{{$t(`¥`)}}{{ orderInfo.pay_price }}</span>
+				<view class='conter'>-{{$t(`¥`)}}{{parseFloat(orderInfo.deduction_price).toFixed(2)}}</view>
 			</view>
+			<view class='actualPay acea-row row-right'>{{$t(`实付款`)}}:<text class='money'>{{$t(`¥`)}}{{parseFloat(orderInfo.pay_price).toFixed(2)}}</text></view>
 		</view>
 		<view class="wrapper" v-if="
         orderInfo.delivery_type != 'fictitious' && orderInfo._status._type === 2

+ 1 - 1
template/uni-app/pages/goods/goods_comment_con/index.vue

@@ -9,7 +9,7 @@
 					<view class='text acea-row row-between'>
 						<view class='name line3'>{{productInfo.store_name}}</view>
 						<view class='money'>
-							<view>{{$t(`¥`)}}{{productInfo.price}}</view>
+							<view>{{$t(`¥`)}}{{productInfo.attrInfo.price}}</view>
 							<view class='num'>x{{cart_num}}</view>
 						</view>
 					</view>

+ 3 - 1
template/uni-app/pages/goods/lottery/grids/record.vue

@@ -122,7 +122,9 @@
 						title: this.$t(`领取成功`)
 					});
 					this.addressModel = false
-					this.where.page = 1
+					this.where.page = 1
+					this.loadend = false;
+					this.lotteryList = [];
 					this.getLotteryList()
 				}).catch(err => {
 					this.$util.Tips({

+ 3 - 3
template/uni-app/pages/users/user_invoice_order/index.vue

@@ -145,9 +145,9 @@
 			<view class='wrapper'>
 				<view class='item acea-row row-between'>
 					<view>{{$t(`支付金额`)}}:</view>
-					<view class='conter'>{{$t(`¥`)}}{{orderInfo.total_price}}</view>
+					<view class='conter'>{{$t(`¥`)}}{{orderInfo.pay_price}}</view>
 				</view>
-				<view class='item acea-row row-between' v-if='orderInfo.coupon_id'>
+				<!-- <view class='item acea-row row-between' v-if='orderInfo.coupon_id'>
 					<view>{{$t(`优惠券抵扣`)}}:</view>
 					<view class='conter'>-{{$t(`¥`)}}{{orderInfo.coupon_price}}</view>
 				</view>
@@ -158,7 +158,7 @@
 				<view class='item acea-row row-between' v-if="orderInfo.pay_postage > 0">
 					<view>{{$t(`运费`)}}:</view>
 					<view class='conter'>{{$t(`¥`)}}{{orderInfo.pay_postage}}</view>
-				</view>
+				</view> -->
 			</view>
 		</view>
 		<!-- #ifndef MP -->