This commit is contained in:
ds 2024-11-15 08:49:06 +08:00
parent b24bb99f21
commit 57e7654646
10 changed files with 104 additions and 51 deletions

View File

@ -198,7 +198,7 @@ export default {
start.setMinutes(0) start.setMinutes(0)
start.setSeconds(0) start.setSeconds(0)
start.setMilliseconds(0) start.setMilliseconds(0)
this.value2 = [start, new Date()]; this.value2 = [parseTime(start),parseTime(new Date())];
} else if (this.timeList[index] == '近一周') { } else if (this.timeList[index] == '近一周') {
let nowDate = new Date(); let nowDate = new Date();
let oneWeekAgo = new Date(nowDate.getTime() - 6 * 24 * 60 * 60 * 1000) let oneWeekAgo = new Date(nowDate.getTime() - 6 * 24 * 60 * 60 * 1000)

View File

@ -7,20 +7,20 @@
<el-select <el-select
v-model="queryParams.deptId" v-model="queryParams.deptId"
clearable clearable
placeholder="所属机构" placeholder="请选择所属机构"
> >
<el-option v-for="item in deptList" :key="item.id" :label="item.deptName" :value="item.deptId"> <el-option v-for="item in deptList" :key="item.id" :label="item.deptName" :value="item.deptId">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<!-- <el-form-item label="" style="width: 180px">--> <el-form-item label="" style="width: 180px">
<!-- <el-input placeholder="请输入商品名称" v-model="queryParams.orderNo"></el-input>--> <el-input placeholder="请输入商品名称" v-model="queryParams.giftName"></el-input>
<!-- </el-form-item>--> </el-form-item>
<el-form-item label="" prop="payChannel" style="width: 180px"> <el-form-item label="" prop="payChannel" style="width: 180px">
<el-select <el-select
v-model="queryParams.orderType" v-model="queryParams.orderType"
clearable clearable
placeholder="订单类型" placeholder="请选择订单类型"
> >
<el-option label="商城兑换" value="0"/> <el-option label="商城兑换" value="0"/>
<el-option label="收银台兑换" value="1"/> <el-option label="收银台兑换" value="1"/>
@ -30,7 +30,7 @@
<el-select <el-select
v-model="queryParams.paymentType" v-model="queryParams.paymentType"
clearable clearable
placeholder="支付方式" placeholder="请选择支付方式"
> >
<el-option label="现金" value="CASH"/> <el-option label="现金" value="CASH"/>
<el-option label="微信" value="WECHAT"/> <el-option label="微信" value="WECHAT"/>
@ -42,11 +42,11 @@
<el-select <el-select
v-model="queryParams.status" v-model="queryParams.status"
clearable clearable
placeholder="订单状态" placeholder="请选择订单状态"
> >
<el-option label="支付" value="paid"/> <el-option label="支付支付" value="paid"/>
<el-option label="支付" value="unpaid"/> <el-option label="支付失败" value="unpaid"/>
<el-option label="退款" value="refund"/> <el-option label="退款成功" value="refund"/>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label=""> <el-form-item label="">
@ -82,12 +82,12 @@
<el-table-column type="index" width="50" align="center" label="序号"/> <el-table-column type="index" width="50" align="center" label="序号"/>
<el-table-column prop="storeName" align="center" label="机构名称"> </el-table-column> <el-table-column prop="storeName" align="center" label="机构名称"> </el-table-column>
<el-table-column prop="orderNumber" align="center" label="订单号" > </el-table-column> <el-table-column prop="orderNumber" align="center" label="订单号" > </el-table-column>
<el-table-column prop="amount" align="center" label="订单金额(元)"> <!-- <el-table-column prop="amount" align="center" label="订单金额(元)">
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="scope.row.amount">{{scope.row.amount}}</span> <span v-if="scope.row.amount">{{scope.row.amount}}</span>
<span v-else>--</span> <span v-else>--</span>
</template> </template>
</el-table-column> </el-table-column> -->
<el-table-column prop="payChannel" align="center" label="订单类型"> <el-table-column prop="payChannel" align="center" label="订单类型">
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="scope.row.orderType=='1'">收银台兑换</span> <span v-if="scope.row.orderType=='1'">收银台兑换</span>
@ -112,20 +112,20 @@
</el-table-column> </el-table-column>
<el-table-column align="center" label="消费信息"> <el-table-column align="center" label="消费信息">
<el-table-column prop="giftName" align="center" label="商品名称" > </el-table-column> <el-table-column prop="giftName" align="center" label="商品名称" > </el-table-column>
<el-table-column prop="integral" align="center" label="消耗积分" > </el-table-column>
<el-table-column prop="exchangeQuantity" align="center" label="数量" > </el-table-column> <el-table-column prop="exchangeQuantity" align="center" label="数量" > </el-table-column>
<el-table-column prop="integral" align="center" label="消耗积分" > </el-table-column>
<el-table-column prop="amount" align="center" label="实付金额(元)">
<template slot-scope="scope">
<span v-if="scope.row.amount">{{scope.row.amount}}</span>
<span v-else>0</span>
</template>
</el-table-column>
</el-table-column> </el-table-column>
<el-table-column prop="mchntCd" align="center" label="支付通道"> <el-table-column prop="mchntCd" align="center" label="支付通道">
</el-table-column> </el-table-column>
<el-table-column prop="paymentChannel" align="center" label="商户号编码" width="150"> </el-table-column> <el-table-column prop="paymentChannel" align="center" label="商户号编" width="150"> </el-table-column>
<el-table-column prop="createTime" align="center" label="订单创建时间" > </el-table-column> <el-table-column prop="createTime" align="center" label="订单创建时间" > </el-table-column>
<!-- <el-table-column prop="payTime" align="center" label="订单完成时间" >--> <el-table-column prop="updateTime" align="center" label="订单完成时间" ></el-table-column>
<!-- <template slot-scope="scope">-->
<!-- <span v-if="scope.row.payTime">{{scope.row.payTime}}</span>-->
<!-- <span v-else>&#45;&#45;</span>-->
<!-- </template>-->
<!-- </el-table-column>-->
</el-table> </el-table>
</div> </div>
<pagination <pagination
@ -175,6 +175,7 @@ import {getDuiZhangIntegralListApi} from "@/api/financialStatement/jiaoyiduizhan
queryParams: { queryParams: {
page: 1, page: 1,
pageSize: 10, pageSize: 10,
giftName: '',
beginTime:"", beginTime:"",
endTime:"", endTime:"",
orderNo:"", orderNo:"",

View File

@ -196,7 +196,7 @@ export default {
start.setMinutes(0) start.setMinutes(0)
start.setSeconds(0) start.setSeconds(0)
start.setMilliseconds(0) start.setMilliseconds(0)
this.value2 = [start,new Date()]; this.value2 = [parseTime(start),parseTime(new Date())];
} else if (this.timeList[index]=='近一周'){ } else if (this.timeList[index]=='近一周'){
let nowDate = new Date(); let nowDate = new Date();
let oneWeekAgo = new Date(nowDate.getTime() - 6 * 24 * 60 * 60 * 1000) let oneWeekAgo = new Date(nowDate.getTime() - 6 * 24 * 60 * 60 * 1000)

View File

@ -233,7 +233,7 @@ import {parseTime} from "@/utils/fuint";
start.setMinutes(0) start.setMinutes(0)
start.setSeconds(0) start.setSeconds(0)
start.setMilliseconds(0) start.setMilliseconds(0)
this.value2 = [start,new Date()]; this.value2 = [parseTime(start),parseTime(new Date())];
} else if (this.timeList[index]=='近一周'){ } else if (this.timeList[index]=='近一周'){
let nowDate = new Date(); let nowDate = new Date();
let oneWeekAgo = new Date(nowDate.getTime() - 6 * 24 * 60 * 60 * 1000) let oneWeekAgo = new Date(nowDate.getTime() - 6 * 24 * 60 * 60 * 1000)

View File

@ -74,7 +74,7 @@
<el-table-column prop="counts" label="累计交易笔数" align="center"></el-table-column> <el-table-column prop="counts" label="累计交易笔数" align="center"></el-table-column>
<el-table-column prop="goodsNums" label="累计销售商品数量" align="center"></el-table-column> <el-table-column prop="goodsNums" label="累计销售商品数量" align="center"></el-table-column>
<el-table-column label="商品信息" align="center"> <el-table-column label="商品信息" align="center">
<el-table-column prop="cvgNum" label="品类数量" width="100" align="center"></el-table-column> <el-table-column prop="cvsNum" label="品类数量" width="100" align="center"></el-table-column>
<el-table-column prop="goodsNum" label="商品数量" width="100" align="center"></el-table-column> <el-table-column prop="goodsNum" label="商品数量" width="100" align="center"></el-table-column>
<el-table-column prop="payAmounts" label="累计交易金额 (元)" width="150" align="center"> <el-table-column prop="payAmounts" label="累计交易金额 (元)" width="150" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
@ -86,18 +86,20 @@
<el-table-column label="热销品类信息" align="center"> <el-table-column label="热销品类信息" align="center">
<el-table-column prop="cvgName" label="品类名称" width="100" align="center"></el-table-column> <el-table-column prop="cvgName" label="品类名称" width="100" align="center"></el-table-column>
<el-table-column prop="cvgNum" label="销售数量 (件)" width="100" align="center"></el-table-column> <el-table-column prop="cvgNumber" label="销售数量 (件)" width="100" align="center"></el-table-column>
<el-table-column prop="cvgAmount" label="销售金额 (元)" width="150" align="center"></el-table-column> <el-table-column prop="cvsAmount" label="销售金额 (元)" width="150" align="center"></el-table-column>
</el-table-column> </el-table-column>
<el-table-column label="热销商品信息" align="center"> <el-table-column label="热销商品信息" align="center">
<el-table-column prop="goodsName" label="商品名称" width="100" align="center"></el-table-column> <el-table-column prop="goodsName" label="商品名称" width="100" align="center"></el-table-column>
<el-table-column prop="goodsNum" label="销售数量" width="100" align="center"></el-table-column> <el-table-column prop="goodsNumber" label="销售数量" width="100" align="center"></el-table-column>
<el-table-column prop="goodsAmount" label="销售金额 (元)" width="100" align="center"></el-table-column> <el-table-column prop="goodsAmount" label="销售金额 (元)" width="100" align="center"></el-table-column>
<!-- <el-table-column prop="supplierName" label="供应商名称" width="100" align="center"></el-table-column>--> <!-- <el-table-column prop="supplierName" label="供应商名称" width="100" align="center"></el-table-column>-->
</el-table-column> </el-table-column>
<el-table-column prop="statDate" label="统计日期" width="200" align="center"> <el-table-column prop="statDate" label="统计日期" width="200" align="center">
<template>
{{this.value2[0]}} {{this.value2[1]}}
</template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -210,7 +212,7 @@ import {parseTime} from "@/utils/fuint";
start.setMinutes(0) start.setMinutes(0)
start.setSeconds(0) start.setSeconds(0)
start.setMilliseconds(0) start.setMilliseconds(0)
this.value2 = [start,new Date()]; this.value2 = [parseTime(start),parseTime(new Date())];
} else if (this.timeList[index]=='近一周'){ } else if (this.timeList[index]=='近一周'){
let nowDate = new Date(); let nowDate = new Date();
let oneWeekAgo = new Date(nowDate.getTime() - 6 * 24 * 60 * 60 * 1000) let oneWeekAgo = new Date(nowDate.getTime() - 6 * 24 * 60 * 60 * 1000)

View File

@ -38,12 +38,16 @@ public interface OrderGoodsMapper extends BaseMapper<OrderGoods> {
List<OrderGoodsVO> selectGoodsSalesRankYestoday(int i); List<OrderGoodsVO> selectGoodsSalesRankYestoday(int i);
OrderGoodsVO selectInfoByStoreId(LJOrderVo record); OrderGoodsVO selectInfoByStoreId(LJOrderVo record);
OrderGoodsVO selectInfoByStoreId1(LJOrderVo record); // OrderGoodsVO selectInfoByStoreId1(LJOrderVo record);
OrderGoodsVO selectInfoByStoreId2(LJOrderVo record); OrderGoodsVO selectInfoByStoreId1(@Param("record") LJOrderVo record, @Param("order")LJOrderVo order);
// OrderGoodsVO selectInfoByStoreId2(LJOrderVo record);
OrderGoodsVO selectInfoByStoreId2(@Param("record") LJOrderVo record, @Param("order")LJOrderVo order);
// 热销品类 // 热销品类
OrderGoodsVO selectInfoByStoreIdType(LJOrderVo record); // OrderGoodsVO selectInfoByStoreIdType(LJOrderVo record);
OrderGoodsVO selectInfoByStoreIdType(@Param("record") LJOrderVo record, @Param("order")LJOrderVo order);
// 热销商品 // 热销商品
OrderGoodsVO selectInfoByStoreIdGoods(LJOrderVo record); // OrderGoodsVO selectInfoByStoreIdGoods(LJOrderVo record);
OrderGoodsVO selectInfoByStoreIdGoods(@Param("record") LJOrderVo record, @Param("order")LJOrderVo order);
Map<Object,Object> selectOrderByBuySum( @Param("order") LJOrderVo order); Map<Object,Object> selectOrderByBuySum( @Param("order") LJOrderVo order);

View File

@ -302,8 +302,9 @@
sum(goods_num) goodsNums sum(goods_num) goodsNums
from mt_order from mt_order
<where> <where>
status = 'paid'
<if test="order.storeIds != null"> <if test="order.storeIds != null">
store_id in and store_id in
<foreach collection="order.storeIds" item="item" index="index" open="(" separator="," close=")"> <foreach collection="order.storeIds" item="item" index="index" open="(" separator="," close=")">
#{item} #{item}
</foreach> </foreach>
@ -325,8 +326,9 @@
sum(goods_num) goodsNum sum(goods_num) goodsNum
from mt_order from mt_order
<where> <where>
status = 'paid'
<if test="order.storeIds != null"> <if test="order.storeIds != null">
store_id in and store_id in
<foreach collection="order.storeIds" item="item" index="index" open="(" separator="," close=")"> <foreach collection="order.storeIds" item="item" index="index" open="(" separator="," close=")">
#{item} #{item}
</foreach> </foreach>
@ -344,11 +346,12 @@
select select
count(distinct mg.cvs_good_id) cvg count(distinct mg.cvs_good_id) cvg
from mt_order mo from mt_order mo
left join mt_order_goods mog on mog.goods_id = mo.id left join mt_order_goods mog on mog.order_id = mo.id
left join mt_goods mg on mog.goods_id = mg.id left join mt_goods mg on mg.id = mog.goods_id
<where> <where>
mo.status = 'paid'
<if test="order.storeIds != null"> <if test="order.storeIds != null">
mo.store_id in and mo.store_id in
<foreach collection="order.storeIds" item="item" index="index" open="(" separator="," close=")"> <foreach collection="order.storeIds" item="item" index="index" open="(" separator="," close=")">
#{item} #{item}
</foreach> </foreach>

View File

@ -44,15 +44,34 @@
</select> </select>
<select id="selectInfoByStoreId1" resultType="com.fuint.business.largeSscreen.vo.OrderGoodsVO"> <select id="selectInfoByStoreId1" resultType="com.fuint.business.largeSscreen.vo.OrderGoodsVO">
select count(distinct mg.cvs_good_id) cvsNum
select count(*) cvsNum from mt_order_goods mog
from cvs_goods where store_id = #{storeId} left join mt_order mo on mo.id = mog.order_id
left join mt_goods mg on mg.id = mog.goods_id
<where>
mo.store_id = #{record.storeId}
<if test="order.params.beginTime != null and order.params.beginTime != ''"><!-- 开始时间检索 -->
and date_format(mog.create_time,'%y%m%d') &gt;= date_format(#{order.params.beginTime},'%y%m%d')
</if>
<if test="order.params.endTime != null and order.params.endTime != ''"><!-- 结束时间检索 -->
and date_format(mog.create_time,'%y%m%d') &lt;= date_format(#{order.params.endTime},'%y%m%d')
</if>
</where>
</select> </select>
<select id="selectInfoByStoreId2" resultType="com.fuint.business.largeSscreen.vo.OrderGoodsVO"> <select id="selectInfoByStoreId2" resultType="com.fuint.business.largeSscreen.vo.OrderGoodsVO">
select count(*) goodsNum select count(distinct mog.goods_id) goodsNum
from cvs_goods where store_id = #{storeId} from mt_order_goods mog
left join mt_order mo on mo.id = mog.order_id
<where>
mo.store_id = #{record.storeId}
<if test="order.params.beginTime != null and order.params.beginTime != ''"><!-- 开始时间检索 -->
and date_format(mog.create_time,'%y%m%d') &gt;= date_format(#{order.params.beginTime},'%y%m%d')
</if>
<if test="order.params.endTime != null and order.params.endTime != ''"><!-- 结束时间检索 -->
and date_format(mog.create_time,'%y%m%d') &lt;= date_format(#{order.params.endTime},'%y%m%d')
</if>
</where>
</select> </select>
<select id="selectInfoByStoreIdType" resultType="com.fuint.business.largeSscreen.vo.OrderGoodsVO"> <select id="selectInfoByStoreIdType" resultType="com.fuint.business.largeSscreen.vo.OrderGoodsVO">
SELECT cg.name cvgName, SUM(mog.num) cvgNumber,sum(mog.pay_amount) cvsAmount SELECT cg.name cvgName, SUM(mog.num) cvgNumber,sum(mog.pay_amount) cvsAmount
@ -60,7 +79,15 @@ from cvs_goods where store_id = #{storeId}
left join mt_order mo on mo.id = mog.order_id left join mt_order mo on mo.id = mog.order_id
left join mt_goods mg on mog.goods_id = mg.id left join mt_goods mg on mog.goods_id = mg.id
left join cvs_goods cg on mg.cvs_good_id = cg.id left join cvs_goods cg on mg.cvs_good_id = cg.id
where mo.store_id = #{storeId} <where>
mo.store_id = #{record.storeId}
<if test="order.params.beginTime != null and order.params.beginTime != ''"><!-- 开始时间检索 -->
and date_format(mog.create_time,'%y%m%d') &gt;= date_format(#{order.params.beginTime},'%y%m%d')
</if>
<if test="order.params.endTime != null and order.params.endTime != ''"><!-- 结束时间检索 -->
and date_format(mog.create_time,'%y%m%d') &lt;= date_format(#{order.params.endTime},'%y%m%d')
</if>
</where>
group by cg.id group by cg.id
ORDER BY cvgNumber desc ORDER BY cvgNumber desc
limit 1 limit 1
@ -71,7 +98,15 @@ from cvs_goods where store_id = #{storeId}
from mt_order_goods mog from mt_order_goods mog
left join mt_order mo on mo.id = mog.order_id left join mt_order mo on mo.id = mog.order_id
left join mt_goods mg on mog.goods_id = mg.id left join mt_goods mg on mog.goods_id = mg.id
where mo.store_id = #{storeId} <where>
mo.store_id = #{record.storeId}
<if test="order.params.beginTime != null and order.params.beginTime != ''"><!-- 开始时间检索 -->
and date_format(mog.create_time,'%y%m%d') &gt;= date_format(#{order.params.beginTime},'%y%m%d')
</if>
<if test="order.params.endTime != null and order.params.endTime != ''"><!-- 结束时间检索 -->
and date_format(mog.create_time,'%y%m%d') &lt;= date_format(#{order.params.endTime},'%y%m%d')
</if>
</where>
group by mg.id group by mg.id
ORDER BY goodsNumber desc ORDER BY goodsNumber desc
limit 1 limit 1

View File

@ -115,10 +115,10 @@ public class LJOrderServiceImpl extends ServiceImpl<LJOrderMapper, LJOrder> impl
record.setStoreName(mtStore.getName()); record.setStoreName(mtStore.getName());
} }
// 商品信息 // 商品信息
OrderGoodsVO orderGoodsVO = orderGoodsMapper.selectInfoByStoreId1(record); OrderGoodsVO orderGoodsVO = orderGoodsMapper.selectInfoByStoreId1(record,order);
OrderGoodsVO orderGoodsVO1 = orderGoodsMapper.selectInfoByStoreId2(record); OrderGoodsVO orderGoodsVO1 = orderGoodsMapper.selectInfoByStoreId2(record,order);
OrderGoodsVO orderGoodsVO2 = orderGoodsMapper.selectInfoByStoreIdType(record);// 热销品类信息 OrderGoodsVO orderGoodsVO2 = orderGoodsMapper.selectInfoByStoreIdType(record,order);// 热销品类信息
OrderGoodsVO orderGoodsVO3 = orderGoodsMapper.selectInfoByStoreIdGoods(record);// 热销商品信息 OrderGoodsVO orderGoodsVO3 = orderGoodsMapper.selectInfoByStoreIdGoods(record,order);// 热销商品信息
if (ObjectUtil.isNotEmpty(orderGoodsVO)) { if (ObjectUtil.isNotEmpty(orderGoodsVO)) {
record.setCvsNum(orderGoodsVO.getCvsNum()); record.setCvsNum(orderGoodsVO.getCvsNum());

View File

@ -497,6 +497,14 @@ public class OilOrderServiceImpl extends ServiceImpl<OilOrderMapper, OilOrder> i
Map<String, Object> orders = new HashMap<>(); Map<String, Object> orders = new HashMap<>();
// 当订单中包含商品时若使用支付方式储值卡囤油卡车队卡时提示该订单含有商品,无法使用储值卡/囤油卡/车队卡支付
if (!goodsOrder.equals("[]")) {
if((payType.equals("card_value") || payType.equals("fule_card") || payType.equals("car_card_value"))){
orders.put("error", "该订单含有商品,无法使用储值卡/囤油卡/车队卡支付");
return orders;
}
}
String transactionType = null; String transactionType = null;
if (oilAmount > 0 && goodsAmount > 0) { if (oilAmount > 0 && goodsAmount > 0) {
transactionType = "5"; transactionType = "5";