Bläddra i källkod

充值订单导出

moonsflyer 7 månader sedan
förälder
incheckning
5a6f3ea0f1

+ 9 - 1
addon/memberrecharge/model/MemberrechargeOrder.php

@@ -107,7 +107,15 @@ class MemberrechargeOrder extends BaseModel
                     }
                     $coupon_name = ltrim($coupon_name, ',');
                 }
-                $list[ 'list' ][ $k ][ 'coupon_name' ] = $coupon_name;
+                if (!empty($v[ 'member_id' ])) {
+
+                    $store_id_value = model('member')->getValue([ [ 'member_id', '=', $v[ 'member_id' ] ] ], 'store_id');
+                    $store_name = model('store')->getValue([ [ 'store_id', '=',$store_id_value] ], 'store_name');
+
+                }
+                $list[ 'list' ][ $k ][ 'store_id' ] = $store_id_value;
+                $list[ 'list' ][ $k ][ 'store_name' ] = $store_name;
+
             }
         }
         return $this->success($list);

+ 28 - 1
addon/memberrecharge/shop/controller/Memberrecharge.php

@@ -57,6 +57,7 @@ class Memberrecharge extends BaseShop
                 $condition[] = [ 'status', '=', $status ];
             }
             $condition[] = [ 'site_id', '=', $this->site_id ];
+
             $page = input('page', 1);
             $page_size = input('page_size', PAGE_LIST_ROWS);
             $list = $model->getMemberRechargePageList($condition, $page, $page_size, 'recharge_id desc', $this->field);
@@ -286,14 +287,23 @@ class Memberrecharge extends BaseShop
             $start_time = input('start_time', '');
             $end_time = input('end_time', '');
             $order_no = input('order_no', '');
-
+            $store_id = input('store_id', '');
             $condition[] = [ 'status', '=', 2 ];
             if ($nickname) {
                 $condition[] = [ 'nickname', 'like', '%' . $nickname . '%' ];
             }
+
             if ($order_no) {
                 $condition[] = [ 'order_no', '=', $order_no ];
             }
+
+            if($store_id){
+
+//                $store_id = model('store')->getValue([ [ 'store_name', '=',$store_name] ], 'store_id');
+////                $member_id_arr = model('member')->getList([ 'store_id', '=',$store_id]);
+                $member_info = model('member')->getColumn([ [ 'store_id', '=', $store_id] ],'member_id');
+                $condition[] = [ 'member_id', 'in',$member_info ];
+            }
             //支付时间
             if (!empty($start_time) && empty($end_time)) {
                 $condition[] = [ "pay_time", ">=", date_to_time($start_time) ];
@@ -303,6 +313,7 @@ class Memberrecharge extends BaseShop
                 $condition[] = [ 'pay_time', 'between', [ date_to_time($start_time), date_to_time($end_time) ] ];
             }
             $list = $model->getMemberRechargeOrderPageList($condition, $page, $page_size, 'order_id desc', $this->order_field);
+
             return $list;
         } else {
             $this->assign('recharge_id', $recharge_id);
@@ -310,6 +321,22 @@ class Memberrecharge extends BaseShop
             $this->assign('order_num', $order_num);
             $order_money = $model->getOrderSum([ [ 'site_id', '=', $this->site_id ], [ 'status', '=', 2 ] ], 'price')[ 'data' ];
             $this->assign('order_money', $order_money);
+
+            $date_time = date('Y-m-d');
+
+            $end_time= date("Y-m-d 23:59:59", strtotime("$date_time Sunday"));//结束时间(2024-09-25 23:59:59)
+            $start_time = date("Y-m-d 00:00:00", strtotime("$end_time - 6 days"));//开始时间(2025-09-19 00:00:00)
+
+            $week_order_money = $model->getOrderSum([ [ 'site_id', '=', $this->site_id ], [ 'status', '=', 2 ],['pay_time','between',[strtotime($start_time),strtotime($end_time)]] ], 'price')[ 'data' ];
+            $this->assign('week_order_money', $week_order_money);
+            $month = date('Y-m',time());
+            $month_start_day = $month.'-01 00:00:00';
+
+            $month_order_money= $model->getOrderSum([ [ 'site_id', '=', $this->site_id ], [ 'status', '=', 2 ],['pay_time','>=',strtotime($month_start_day)] ], 'price')[ 'data' ];
+            $this->assign('month_order_money', $month_order_money);
+
+            $store_list =  $store_id = model('store')->getList([[ 'status', '=', 1 ]],'store_id,store_name');
+            $this->assign('store_list', $store_list);
             return $this->fetch('memberrecharge/order_lists', [], $this->replace);
         }
     }

+ 42 - 3
addon/memberrecharge/shop/view/memberrecharge/order_lists.html

@@ -10,11 +10,20 @@
 		</div>
 	</div>
 	<div class="layui-card-body">
-		<div class="content">
+
+		<div class="content" style="width:20%">
+			<p class="title">当周充值金额</p>
+			<p class="money">{$week_order_money}</p>
+		</div>
+		<div class="content" style="width:20%">
+			<p class="title">当月充值金额</p>
+			<p class="money">{$month_order_money}</p>
+		</div>
+		<div class="content" style="width:20%">
 			<p class="title">累计充值金额</p>
 			<p class="money">{$order_money}</p>
 		</div>
-		<div class="content">
+		<div class="content" style="width:20%">
 			<p class="title">累计充值次数</p>
 			<p class="money">{$order_num}</p>
 		</div>
@@ -38,6 +47,17 @@
 						<input type="text" class="layui-input" name="nickname">
 					</div>
 				</div>
+				<div class="layui-inline">
+					<label class="layui-form-label">门店</label>
+					<div class="layui-input-inline">
+						<select name="store_id" >
+							<option value="">请选择门店</option>
+							{foreach $store_list as $k => $v}
+							<option value="{$v.store_id}">{$v.store_name}</option>
+							{/foreach}
+						</select>
+					</div>
+				</div>
 			</div>
 
 			<div class="layui-form-item">
@@ -60,6 +80,7 @@
 			<div class="form-row">
 				<button class="layui-btn" lay-submit lay-filter="search">筛选</button>
 				<button type="reset" class="layui-btn layui-btn-primary">重置</button>
+				<button class="layui-btn layui-btn-primary" lay-submit lay-filter="batch_export_order" >导出订单2</button>
 			</div>
 		</form>
 	</div>
@@ -79,7 +100,7 @@
 
 	var form,laypage,element,laydate;
 	var is_refresh = false;
-
+	var orderIdAll=[];
 	layui.use(['laypage','laydate','form', 'element'], function(){
 		form = layui.form;
 		laypage = layui.laypage;
@@ -117,6 +138,24 @@
 			setHashOrderList(data.field);
 			return false;
 		});
+
+
+		//批量导出(订单)
+		form.on('submit(batch_export_order)', function(data){
+			data.field.order_ids = orderIdAll.toString(); // 选择要导出的订单
+
+			$.ajax({
+				type: 'post',
+				dataType: 'json',
+				url: ns.url("shop/order/exportRechargeorder"),
+				data: data.field,
+				success: function (res) {
+					console.log(2026)
+				}
+			});
+			window.open(ns.url("shop/order/export",{}));
+			return false;
+		});
 		getHashData();
 		getOrderList();//筛选
 	});

+ 16 - 3
addon/memberrecharge/shop/view/public/js/order_list.js

@@ -94,6 +94,7 @@ Order.prototype.cols = [
 			return h;
 		}
 	},
+
 	{
 		title: "买家",
 		width: "10%",
@@ -101,13 +102,25 @@ Order.prototype.cols = [
 		className: "member",
 		template: function (orderitem, order) {
 			var h = '<div style="text-align: center;">';
-				h += '<a href="' + ns.url("shop/member/editmember", {member_id: orderitem.member_id}) + '" target="_blank" class="multi-line-hiding text-color-sub text-color">' +orderitem.nickname + '</a>';
-				h += '';
+			h += '<a href="' + ns.url("shop/member/editmember", {member_id: orderitem.member_id}) + '" target="_blank" class="multi-line-hiding text-color-sub text-color">' +orderitem.nickname + '</a>';
+			h += '';
+			h += '</div>';
+			return h;
+		}
+	},
+	{
+		title: "门店",
+		width: "10%",
+		align: "center",
+		className: "store",
+		template: function (orderitem, order) {
+			var h = '<div style="text-align: center;">';
+			h += orderitem.store_name ;
+			h += '';
 			h += '</div>';
 			return h;
 		}
 	},
-
 	{
 		title: "支付状态",
 		width: "10%",