Browse Source

1/22

master
wangpengfei 1 year ago
parent
commit
d574d625b1
  1. 2
      src/main/java/com/yxt/yythmall/api/appletgiftbag/AppletGiftBagVo.java
  2. 4
      src/main/java/com/yxt/yythmall/api/appletgiftbag/GiftBagGoodss.java
  3. 1
      src/main/java/com/yxt/yythmall/api/lpkreserveorder/LpkReserveOrderQuery.java
  4. 1
      src/main/java/com/yxt/yythmall/api/ordorder/OrdOrderDto.java
  5. 3
      src/main/java/com/yxt/yythmall/biz/appletgiftbag/AppletGiftBagMapper.java
  6. 36
      src/main/java/com/yxt/yythmall/biz/appletgiftbag/AppletGiftBagMapper.xml
  7. 22
      src/main/java/com/yxt/yythmall/biz/appletgiftbag/AppletGiftBagService.java
  8. 8
      src/main/java/com/yxt/yythmall/biz/lpkreserveorder/LpkReserveOrderMapper.java
  9. 462
      src/main/java/com/yxt/yythmall/biz/lpkreserveorder/LpkReserveOrderMapper.xml
  10. 36
      src/main/java/com/yxt/yythmall/biz/lpkreserveorder/LpkReserveOrderService.java
  11. 7
      src/main/java/com/yxt/yythmall/biz/ordorder/OrdOrderRest.java
  12. 101
      src/main/java/com/yxt/yythmall/biz/ordorder/OrdOrderService.java
  13. 1
      src/main/java/com/yxt/yythmall/config/SaTokenConfigure.java

2
src/main/java/com/yxt/yythmall/api/appletgiftbag/AppletGiftBagVo.java

@ -21,6 +21,7 @@ public class AppletGiftBagVo implements Vo {
private String dateStart;
private String dateEnd;
private String price;//礼包总价格
private String prefPrice;//优惠价格
private String iconUrl;//图片
private String isEnable;
private String isGrounding;
@ -28,6 +29,7 @@ public class AppletGiftBagVo implements Vo {
private String remarks;
private String count;//
private String goodsSid;
private String weight="0";//重量
private List<GiftBagGoods> giftBagGoods;
private List<recommendRecord> recordList;

4
src/main/java/com/yxt/yythmall/api/appletgiftbag/GiftBagGoodss.java

@ -20,12 +20,14 @@ public class GiftBagGoodss {
private String weight; //每份的重量
private String jPrice; //每斤单价
private String specificationUnit; //规格单位
private String prefPrice;//优惠价格
private String bagPrice;//礼包价格
private String totalValue; //总价值
private String spec; //总价值
private String count="0"; //总价值
private String mefenPrice="0";
private boolean showCart=false;
private String prefPrice;//优惠价格

1
src/main/java/com/yxt/yythmall/api/lpkreserveorder/LpkReserveOrderQuery.java

@ -18,4 +18,5 @@ public class LpkReserveOrderQuery implements Query {
private String bankSid;
private String bankName;
private String serialNumber;
private String cardType; //1 家庭 2 亲情卡 3 企业
}

1
src/main/java/com/yxt/yythmall/api/ordorder/OrdOrderDto.java

@ -33,6 +33,7 @@ public class OrdOrderDto implements Dto {
private String returnUrl;
private String customerSid;
private String brandId;
private String bagSid;
// private String receivablePrice;
private List<OrdOrderDetailVo> ordOrderDetailsVoList;

3
src/main/java/com/yxt/yythmall/biz/appletgiftbag/AppletGiftBagMapper.java

@ -23,6 +23,7 @@ public interface AppletGiftBagMapper extends BaseMapper<AppletGiftBag> {
IPage<AppletGiftBagVo> giftBagListPage(IPage<AppletGiftBag> page, @Param(Constants.WRAPPER) QueryWrapper<AppletGiftBag> qw);
List<AppletGiftBagVo> giftBagList();
List<GiftBagGoodss> giftBagGoodsList(@Param("sid")String sid );
List<AppletGiftBagVo> giftBagGoodsList();
List<GiftBagGoodss> getGoodsByBagSid(@Param("bagSid") String bagSid);
int saveBags(@Param("bags") List<AppletGiftBag> bags);
}

36
src/main/java/com/yxt/yythmall/biz/appletgiftbag/AppletGiftBagMapper.xml

@ -35,22 +35,28 @@
where isGrounding=1
order by isRecommend desc,createTime desc
</select>
<select id="giftBagGoodsList" resultType="com.yxt.yythmall.api.appletgiftbag.GiftBagGoodss">
<select id="giftBagGoodsList" resultType="com.yxt.yythmall.api.appletgiftbag.AppletGiftBagVo">
select
s.goodsNumber as goodsNumber,
d.`name` ,
d.unitName,
d.price as jPrice,
d.price as price,
d.picUrl as iconUrl,
d.specificationUnit,
d.isAppletGrounding,
d.content as remark,
d.weight,
d.sid as goodsSid
a.sid,
a.name ,
a.iconUrl,
a.price ,
a.preferentialPrice as prefPrice
from applet_giftbag a
left join applet_giftbag_goods s on s.giftbagSid=a.sid
left join lpk_goods d on d.sid=s.goodsSid
where a.sid=#{sid}
</select>
<select id="getGoodsByBagSid" resultType="com.yxt.yythmall.api.appletgiftbag.GiftBagGoodss">
select
a.preferentialPrice as prefPrice,
c.name as name,
c.sid as goodsSid,
c.specificationUnit as specificationUnit,
c.unitName as unitName,
b.goodsNumber as goodsNumber,
c.weight as weight
from applet_giftbag a
left join applet_giftbag_goods b on b.giftbagSid=a.sid
left join lpk_goods c on c.sid =b.goodsSid
where a.sid=#{bagSid}
</select>
</mapper>

22
src/main/java/com/yxt/yythmall/biz/appletgiftbag/AppletGiftBagService.java

@ -268,18 +268,22 @@ public class AppletGiftBagService extends MybatisBaseService<AppletGiftBagMapper
}
public ResultBean newUserQuota() {
ResultBean rb=new ResultBean().fail();
// List<GiftBagGoodss> giftBagGoodss=baseMapper.getAllGoodsApplets(query);
List<GiftBagGoodss> s=baseMapper.giftBagGoodsList("e49555f2-5370-45b0-9637-aa4d54c22e31");
for (GiftBagGoodss giftBagGoodss : s) {
giftBagGoodss.setIconUrl(fileUploadComponent.getUrlPrefix() +giftBagGoodss.getIconUrl());
giftBagGoodss.setMefenPrice(String.valueOf((int)(Double.valueOf(giftBagGoodss.getPrice())*Double.valueOf(giftBagGoodss.getWeight()))));
giftBagGoodss.setPrefPrice(String.valueOf((Integer.valueOf(giftBagGoodss.getMefenPrice())*0.5)));
giftBagGoodss.setPrefPrice(removeZeros(giftBagGoodss.getPrefPrice()));
List<AppletGiftBagVo> s=baseMapper.giftBagGoodsList();
for (AppletGiftBagVo appletGiftBagVo : s) {
List<AppletGiftBagGoods> giftBagGoods=appletGiftBagGoodsService.list(new QueryWrapper<AppletGiftBagGoods>().eq("giftbagSid",appletGiftBagVo.getSid()));
for(AppletGiftBagGoods goods:giftBagGoods){
LpkGoods lpkGoods=lpkGoodsService.getOne(new QueryWrapper<LpkGoods>().eq("sid",goods.getGoodsSid()));
appletGiftBagVo.setWeight(removeZeros(String.valueOf(Double.valueOf(lpkGoods.getWeight())*Double.valueOf(goods.getGoodsNumber())+Double.valueOf(appletGiftBagVo.getWeight()))));
}
appletGiftBagVo.setIconUrl(fileUploadComponent.getUrlPrefix() +appletGiftBagVo.getIconUrl());
}
return rb.success().setData(s);
}
public ResultBean<List<GiftBagGoodss>> getGoodsByBagSid(String bagSid) {
ResultBean rb=new ResultBean().fail();
List<GiftBagGoodss> s=baseMapper.getGoodsByBagSid(bagSid);
return rb.success().setData(s);
}
/**
* 去除多余.0
* @param num

8
src/main/java/com/yxt/yythmall/biz/lpkreserveorder/LpkReserveOrderMapper.java

@ -18,15 +18,21 @@ import java.util.List;
@Mapper
public interface LpkReserveOrderMapper extends BaseMapper<LpkReserveOrder> {
IPage<LpkReserveOrderVo> orderList(IPage<LpkReserveOrder> page,@Param("qw") LpkReserveOrderQuery qw);
IPage<LpkReserveOrderVo> orderList1(IPage<LpkReserveOrder> page,@Param("qw") LpkReserveOrderQuery qw);
IPage<LpkReserveOrderVo> orderList2(IPage<LpkReserveOrder> page,@Param("qw") LpkReserveOrderQuery qw);
IPage<LpkReserveOrderVo> orderList3(IPage<LpkReserveOrder> page,@Param("qw") LpkReserveOrderQuery qw);
IPage<LpkReserveOrderVo> orderListByStore(IPage<LpkReserveOrder> page, @Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrder> qw);
IPage<LpkReserveOrderVo> orderListByBank(IPage<LpkReserveOrder> page, @Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrder> qw);
IPage<LpkReserveOrderVo> orderListByZ(IPage<LpkReserveOrder> page, @Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrder> qw);
List<LpkReserveOrderCardVo> orderByCardSid(String sid);
// IPage<LpkReserveOrderCardVo> orderListByUserSid(IPage<LpkReserveOrder> page, @Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrder> qw);
// IPage<LpkReserveOrderCardVo> orderListByUserSid(IPage<LpkReserveOrder> page, @Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrder> qw);
IPage<LpkReserveOrderCardVo> orderListByUserSid(IPage<LpkReserveOrder> page, @Param("userSid")String userSid);
List<ReserveOrderExport> exportExcel(@Param("qw") LpkReserveOrderQuery qw);
List<ReserveOrderExport> exportExcel1(@Param("qw") LpkReserveOrderQuery qw);
List<ReserveOrderExport> exportExcel2(@Param("qw") LpkReserveOrderQuery qw);
List<ReserveOrderExport> exportExcel3(@Param("qw") LpkReserveOrderQuery qw);
List<ReserveOrderExportByStore> exportExcelByStore(@Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrderQuery> qw);
List<ReserveOrderExportByBank> exportExcelByBank(@Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrderQuery> qw);
List<ReserveOrderExportByZ> exportExcelByZ(@Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrderQuery> qw);

462
src/main/java/com/yxt/yythmall/biz/lpkreserveorder/LpkReserveOrderMapper.xml

@ -32,7 +32,7 @@
s.sid as ssid,
c.serialNumber,
case o.cardType
when 1 then '家庭'
when 1 then '家庭菜窖'
end cardType
FROM
lpk_reserve_order AS o
@ -42,9 +42,6 @@
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
<where>
o.cardType='1'
<if test="qw.bankSid !='' and qw.bankSid!=null">
and s.bankSid=#{qw.bankSid}
</if>
<if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store}
</if>
@ -69,7 +66,7 @@
s.sid as ssid,
c.serialNumber,
case o.cardType
when 2 then '亲情'
when 2 then '亲情菜窖'
end cardType
FROM
lpk_reserve_order AS o
@ -106,7 +103,7 @@
s.sid as ssid,
c.serialNumber,
case o.cardType
when 3 then '企业'
when 3 then '企业菜窖'
end cardType
FROM
lpk_reserve_order AS o
@ -114,7 +111,129 @@
LEFT JOIN emp_card AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
WHERE o.cardType='3'
<where>
o.cardType='3'
<if test="qw.bankSid !='' and qw.bankSid!=null">
and s.bankSid=#{qw.bankSid}
</if>
<if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store}
</if>
<if test="qw.startDate !='' and qw.startDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d')>=date_format(#{qw.startDate},'%Y-%m-%d')
</if>
<if test="qw.endDate !='' and qw.endDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if>
</where>
order by reserveDate asc,dsid desc,ssid desc,serialNumber asc
</select>
<select id="orderList1" resultType="com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderVo">
SELECT
o.sid,
date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
o.userName,
o.userPhone,
s.`name` AS store,
b.`name` AS bagName,
d.NAME AS bankName,
c.`code`,
d.sid as dsid,
s.sid as ssid,
c.serialNumber,
case o.cardType
when 1 then '家庭菜窖'
end cardType
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
<where>
o.cardType='1'
<if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store}
</if>
<if test="qw.startDate !='' and qw.startDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d')>=date_format(#{qw.startDate},'%Y-%m-%d')
</if>
<if test="qw.endDate !='' and qw.endDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if>
</where>
order by reserveDate asc,dsid desc,ssid desc,serialNumber asc
</select>
<select id="orderList2" resultType="com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderVo">
SELECT
o.sid,
date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
o.userName,
o.userPhone,
s.`name` AS store,
b.`name` AS bagName,
d.NAME AS bankName,
c.`code`,
d.sid as dsid,
s.sid as ssid,
c.serialNumber,
case o.cardType
when 2 then '亲情菜窖'
end cardType
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN emp_card_gift AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.sid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
<where>
o.cardType='2'
<if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store}
</if>
<if test="qw.startDate !='' and qw.startDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d')>=date_format(#{qw.startDate},'%Y-%m-%d')
</if>
<if test="qw.endDate !='' and qw.endDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if>
</where>
order by reserveDate asc,dsid desc,ssid desc,serialNumber asc
</select>
<select id="orderList3" resultType="com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderVo">
SELECT
o.sid,
date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
o.userName,
o.userPhone,
s.`name` AS store,
b.`name` AS bagName,
d.NAME AS bankName,
c.`code`,
d.sid as dsid,
s.sid as ssid,
c.serialNumber,
case o.cardType
when 3 then '企业菜窖'
end cardType
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN emp_card AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
<where>
o.cardType='3'
<if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store}
</if>
<if test="qw.startDate !='' and qw.startDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d')>=date_format(#{qw.startDate},'%Y-%m-%d')
</if>
<if test="qw.endDate !='' and qw.endDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if>
</where>
order by reserveDate asc,dsid desc,ssid desc,serialNumber asc
</select>
<select id="orderListByStore" resultType="com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderVo">
@ -131,15 +250,13 @@
s.address,
e.`name` as goodsName,
case o.cardType
when 1 then '家庭'
when 2 then '亲情'
when 3 then '企业'
when 1 then '家庭菜窖'
when 2 then '亲情菜窖'
when 3 then '企业菜窖'
end cardType
from lpk_reserve_order as o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
left join lpk_store as s on o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
left join lpk_bank as d on d.sid =s.bankSid
left join lpk_goods e on e.sid= t.goodsSid
<where>
@ -159,16 +276,14 @@
d.phone as linkPhone,
d.address,
case o.cardType
when 1 then '家庭'
when 2 then '亲情'
when 3 then '企业'
when 1 then '家庭菜窖'
when 2 then '亲情菜窖'
when 3 then '企业菜窖'
end cardType,
e.`name` as goodsName
from lpk_reserve_order as o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
left join lpk_store as s on o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
left join lpk_bank as d on d.sid =s.bankSid
left join lpk_goods e on e.sid= t.goodsSid
<where>
@ -185,17 +300,15 @@
t.goodsSid as goodsSid,
sum(t.goodsNumber) as goodsNumber,
case o.cardType
when 1 then '家庭'
when 2 then '亲情'
when 3 then '企业'
when 1 then '家庭菜窖'
when 2 then '亲情菜窖'
when 3 then '企业菜窖'
end cardType,
e.`name` as goodsName
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
LEFT JOIN lpk_goods e on e.sid =t.goodsSid
<where>
@ -215,41 +328,42 @@
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
WHERE o.cardSid = #{sid}
</select>
<!-- <select id="orderListByUserSid" resultType="com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderCardVo">-->
<!-- SELECT date_format(o.reserveDate, '%Y-%m-%d') as reserveDate,-->
<!-- c.`code`,-->
<!-- case-->
<!-- when o.reserveDate IS NOT NULL then 1-->
<!-- end as type,-->
<!-- s.`name` as store,-->
<!-- b.`name` as bagName,-->
<!-- o.cardSid as cardSid,-->
<!-- o.sid as orderSid,-->
<!-- o.userName,-->
<!-- o.userPhone,c.serialNumber as serialNumber,-->
<!-- o.sid-->
<!-- FROM lpk_reserve_order AS o-->
<!-- LEFT JOIN lpk_store AS s ON o.storeSid = s.sid-->
<!-- LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid-->
<!-- LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid-->
<!-- <where>-->
<!-- ${ew.sqlSegment}-->
<!-- </where>-->
<!-- ORDER BY reserveDate DESC-->
<!-- </select>-->
<!-- <select id="orderListByUserSid" resultType="com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderCardVo">-->
<!-- SELECT date_format(o.reserveDate, '%Y-%m-%d') as reserveDate,-->
<!-- c.`code`,-->
<!-- case-->
<!-- when o.reserveDate IS NOT NULL then 1-->
<!-- end as type,-->
<!-- s.`name` as store,-->
<!-- b.`name` as bagName,-->
<!-- o.cardSid as cardSid,-->
<!-- o.sid as orderSid,-->
<!-- o.userName,-->
<!-- o.userPhone,c.serialNumber as serialNumber,-->
<!-- o.sid-->
<!-- FROM lpk_reserve_order AS o-->
<!-- LEFT JOIN lpk_store AS s ON o.storeSid = s.sid-->
<!-- LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid-->
<!-- LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid-->
<!-- <where>-->
<!-- ${ew.sqlSegment}-->
<!-- </where>-->
<!-- ORDER BY reserveDate DESC-->
<!-- </select>-->
<select id="orderListByUserSid" resultType="com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderCardVo">
SELECT date_format(o.reserveDate, '%Y-%m-%d') as reserveDate,
c.`code`,
o.cardType as type,
s.`name` as store,
case
when o.sid is not null then '家庭菜窖'
when o.sid is not null then '家庭菜窖'
end as bagName,
o.cardSid as cardSid,
o.sid as orderSid,
o.userName,
o.userPhone,c.serialNumber as serialNumber,
o.sid
o.sid,
s.phone
FROM lpk_reserve_order AS o
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
@ -269,7 +383,8 @@
o.sid as orderSid,
o.userName,
o.userPhone,c.serialNumber as serialNumber,
o.sid
o.sid,
s.phone
FROM lpk_reserve_order AS o
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN emp_card_gift AS c ON o.cardSid = c.sid
@ -289,7 +404,8 @@
o.sid as orderSid,
o.userName,
o.userPhone,c.serialNumber as serialNumber,
o.sid
o.sid,
s.phone
FROM lpk_reserve_order AS o
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN emp_card AS c ON o.cardSid = c.sid
@ -300,30 +416,77 @@
ORDER BY reserveDate DESC
</select>
<select id="exportExcel" resultType="com.yxt.yythmall.api.lpkreserveorder.ReserveOrderExport">
select
SELECT
o.sid,
date_format(o.reserveDate, '%Y-%m-%d') as reserveDate,
date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
o.userName,
o.userPhone,
s.`name` AS store,
b.`name` AS bagName,
d.NAME AS bankName,
c.`code`,
d.sid as dsid,
s.sid as ssid,
s.`name` as store,
b.`name` as bagName,
d.name as bankName,
c.`code`,c.serialNumber,
c.serialNumber,
case o.cardType
when 1 then '家庭菜窖'
end cardType,
t.goodsSid as goodsSid,
t.goodsNumber as goodsNumber,
case o.cardType
when 1 then '家庭卡'
end cardType
from lpk_reserve_order as o
e.name as goodsName
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
left join lpk_store as s on o.storeSid = s.sid
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
left join lpk_bank as d on d.sid =s.bankSid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
left join lpk_goods e on e.sid= t.goodsSid
<where>
o.cardType='1'
1=1
and o.cardType='1'
<if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store}
</if>
<if test="qw.startDate !='' and qw.startDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d')>=date_format(#{qw.startDate},'%Y-%m-%d')
</if>
<if test="qw.endDate !='' and qw.endDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if>
</where>
union
SELECT
o.sid,
date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
o.userName,
o.userPhone,
s.`name` AS store,
b.`name` AS bagName,
d.NAME AS bankName,
c.`code`,
d.sid as dsid,
s.sid as ssid,
c.serialNumber,
case o.cardType
when 2 then '亲情菜窖'
end cardType,
t.goodsSid as goodsSid,
t.goodsNumber as goodsNumber,
e.name as goodsName
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN emp_card_gift AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.sid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
left join lpk_goods e on e.sid= t.goodsSid
<where>
1=1
and o.cardType='2'
<if test="qw.bankSid !='' and qw.bankSid!=null">
and s.bankSid=#{qw.bankSid}
</if>
@ -338,30 +501,127 @@
</if>
</where>
union
select
SELECT
o.sid,
date_format(o.reserveDate, '%Y-%m-%d') as reserveDate,
date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
o.userName,
o.userPhone,
s.`name` AS store,
b.`name` AS bagName,
d.NAME AS bankName,
c.`code`,
d.sid as dsid,
s.sid as ssid,
s.`name` as store,
b.`name` as bagName,
d.name as bankName,
c.`code`,c.serialNumber,
c.serialNumber,
case o.cardType
when 3 then '企业菜窖'
end cardType,
t.goodsSid as goodsSid,
t.goodsNumber as goodsNumber,
e.name as goodsName
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN emp_card AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
left join lpk_goods e on e.sid= t.goodsSid
<where>
1=1
and o.cardType='3'
<if test="qw.bankSid !='' and qw.bankSid!=null">
and s.bankSid=#{qw.bankSid}
</if>
<if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store}
</if>
<if test="qw.startDate !='' and qw.startDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d')>=date_format(#{qw.startDate},'%Y-%m-%d')
</if>
<if test="qw.endDate !='' and qw.endDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if>
</where>
order by reserveDate asc,dsid desc,ssid desc,serialNumber asc
</select>
<select id="exportExcel1" resultType="com.yxt.yythmall.api.lpkreserveorder.ReserveOrderExport">
SELECT
o.sid,
date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
o.userName,
o.userPhone,
s.`name` AS store,
b.`name` AS bagName,
d.NAME AS bankName,
c.`code`,
d.sid as dsid,
s.sid as ssid,
c.serialNumber,
case o.cardType
when 2 then '亲情卡'
end cardType
from lpk_reserve_order as o
when 1 then '家庭菜窖'
end cardType,
t.goodsSid as goodsSid,
t.goodsNumber as goodsNumber,
e.name as goodsName
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
left join lpk_store as s on o.storeSid = s.sid
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
left join lpk_goods e on e.sid= t.goodsSid
<where>
1=1
and o.cardType='1'
<if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store}
</if>
<if test="qw.startDate !='' and qw.startDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d')>=date_format(#{qw.startDate},'%Y-%m-%d')
</if>
<if test="qw.endDate !='' and qw.endDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if>
</where>
order by reserveDate asc,dsid desc,ssid desc,serialNumber asc
</select>
<select id="exportExcel2" resultType="com.yxt.yythmall.api.lpkreserveorder.ReserveOrderExport">
SELECT
o.sid,
date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
o.userName,
o.userPhone,
s.`name` AS store,
b.`name` AS bagName,
d.NAME AS bankName,
c.`code`,
d.sid as dsid,
s.sid as ssid,
c.serialNumber,
case o.cardType
when 2 then '亲情菜窖'
end cardType,
t.goodsSid as goodsSid,
t.goodsNumber as goodsNumber,
e.name as goodsName
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN emp_card_gift AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.sid = b.sid
left join lpk_bank as d on d.sid =s.bankSid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
left join lpk_goods e on e.sid= t.goodsSid
<where>
o.cardType='2'
1=1
and o.cardType='2'
<if test="qw.bankSid !='' and qw.bankSid!=null">
and s.bankSid=#{qw.bankSid}
</if>
@ -375,7 +635,9 @@
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if>
</where>
union
order by reserveDate asc,dsid desc,ssid desc,serialNumber asc
</select>
<select id="exportExcel3" resultType="com.yxt.yythmall.api.lpkreserveorder.ReserveOrderExport">
SELECT
o.sid,
date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
@ -389,15 +651,37 @@
s.sid as ssid,
c.serialNumber,
case o.cardType
when 3 then '企业卡'
end cardType
when 3 then '企业菜窖'
end cardType,
t.goodsSid as goodsSid,
t.goodsNumber as goodsNumber,
e.name as goodsName
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN emp_card AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
WHERE o.cardType='3'
left join lpk_goods e on e.sid= t.goodsSid
<where>
1=1
and o.cardType='3'
<if test="qw.bankSid !='' and qw.bankSid!=null">
and s.bankSid=#{qw.bankSid}
</if>
<if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store}
</if>
<if test="qw.startDate !='' and qw.startDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d')>=date_format(#{qw.startDate},'%Y-%m-%d')
</if>
<if test="qw.endDate !='' and qw.endDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if>
</where>
order by reserveDate asc,dsid desc,ssid desc,serialNumber asc
</select>
<select id="exportExcelByStore" resultType="com.yxt.yythmall.api.lpkreserveorder.ReserveOrderExportByStore">
@ -413,16 +697,14 @@
s.phone as linkPhone,
s.address,
case o.cardType
when 1 then '家庭'
when 2 then '亲情'
when 3 then '企业'
when 1 then '家庭菜窖'
when 2 then '亲情菜窖'
when 3 then '企业菜窖'
end cardType,
e.name as goodsName
from lpk_reserve_order as o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
left join lpk_store as s on o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
left join lpk_bank as d on d.sid =s.bankSid
left join lpk_goods e on e.sid= t.goodsSid
<where>
@ -442,16 +724,14 @@
d.phone as linkPhone,
d.address,
case o.cardType
when 1 then '家庭'
when 2 then '亲情'
when 3 then '企业'
when 1 then '家庭菜窖'
when 2 then '亲情菜窖'
when 3 then '企业菜窖'
end cardType,
e.name as goodsName
from lpk_reserve_order as o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
left join lpk_store as s on o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
left join lpk_bank as d on d.sid =s.bankSid
left join lpk_goods e on e.sid= t.goodsSid
<where>
@ -468,17 +748,15 @@
t.goodsSid as goodsSid,
sum(t.goodsNumber) as goodsNumber,
case o.cardType
when 1 then '家庭'
when 2 then '亲情'
when 3 then '企业'
when 1 then '家庭菜窖'
when 2 then '亲情菜窖'
when 3 then '企业菜窖'
end cardType,
e.name as goodsName
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
left join lpk_goods e on e.sid= t.goodsSid
<where>

36
src/main/java/com/yxt/yythmall/biz/lpkreserveorder/LpkReserveOrderService.java

@ -8,6 +8,7 @@ import com.alibaba.excel.write.metadata.style.WriteCellStyle;
import com.alibaba.excel.write.style.HorizontalCellStyleStrategy;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
@ -108,7 +109,16 @@ public class LpkReserveOrderService extends MybatisBaseService<LpkReserveOrderMa
ResultBean rb = ResultBean.fireFail();
LpkReserveOrderQuery query = pq.getParams();
IPage<LpkReserveOrder> page = PagerUtil.queryToPage(pq);
IPage<LpkReserveOrderVo> pagging = baseMapper.orderList(page, query);
IPage<LpkReserveOrderVo> pagging=new Page<>();
if(StringUtils.isBlank(query.getCardType())){
pagging= baseMapper.orderList(page, query);
}else if(query.getCardType().equals("1")){
pagging= baseMapper.orderList1(page, query);
}else if(query.getCardType().equals("2")){
pagging= baseMapper.orderList2(page, query);
}else if(query.getCardType().equals("3")){
pagging= baseMapper.orderList3(page, query);
}
List<LpkReserveOrderVo> records = pagging.getRecords();
if (!records.isEmpty()) {
records.forEach(s -> {
@ -354,12 +364,22 @@ public class LpkReserveOrderService extends MybatisBaseService<LpkReserveOrderMa
public void exportExcel(LpkReserveOrderQuery query) {
//得到所有要导出的数据
List<ReserveOrderExport> exportList = baseMapper.exportExcel(query);
List<ReserveOrderExport> exportList = new ArrayList<>();
List<ReserveOrderExport> exportList1 = new ArrayList<>();
if (!exportList.isEmpty()) {
exportList.forEach(s -> {
LpkGoods lpkGoods = lpkGoodsService.fetchBySid(s.getGoodsSid());
s.setGoodsName(lpkGoods.getName());
if(StringUtils.isBlank(query.getCardType())){
exportList= baseMapper.exportExcel( query);
}else if(query.getCardType().equals("1")){
exportList= baseMapper.exportExcel1( query);
}else if(query.getCardType().equals("2")){
exportList= baseMapper.exportExcel2( query);
}else if(query.getCardType().equals("3")){
exportList= baseMapper.exportExcel3( query);
}
// if (!exportList.isEmpty()) {
// exportList.forEach(s -> {
// LpkGoods lpkGoods = lpkGoodsService.fetchBySid(s.getGoodsSid());
// s.setGoodsName(lpkGoods.getName());
// if (StringUtils.isNotBlank(s.getUserPhone())) {
//// String phone = s.getUserPhone().substring(0, 3) + "****" + s.getUserPhone().substring(7);
// String phone = s.getUserPhone();
@ -398,8 +418,8 @@ public class LpkReserveOrderService extends MybatisBaseService<LpkReserveOrderMa
// }
// }
// }
});
}
// });
// }
//定义导出的excel名字
//定义导出的excel名字
String excelName = "订单明细.xlsx";

7
src/main/java/com/yxt/yythmall/biz/ordorder/OrdOrderRest.java

@ -25,8 +25,13 @@ public class OrdOrderRest {
return ordOrderService.createOrder(dto);
}
@PostMapping("/createVegeOrder")
@ApiOperation(value = "创建订单")
@ApiOperation(value = "创建菜窖账户订单")
public ResultBean createVegeOrder(@RequestBody OrdOrderDto dto) {
return ordOrderService.createVegeOrder(dto);
}
@PostMapping("/createNewUserBagOrder")
@ApiOperation(value = "创建新人限购礼包订单")
public ResultBean createNewUserBagOrder(@RequestBody OrdOrderDto dto) {
return ordOrderService.createNewUserBagOrder(dto);
}
}

101
src/main/java/com/yxt/yythmall/biz/ordorder/OrdOrderService.java

@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.core.result.ResultBean;
import com.yxt.yythmall.api.appletgiftbag.GiftBagGoodss;
import com.yxt.yythmall.api.lpkcustomer.LpkCustomerVo;
import com.yxt.yythmall.api.lpkgoods.LpkGoods;
import com.yxt.yythmall.api.ordorder.*;
@ -12,6 +13,7 @@ import com.yxt.yythmall.api.ordorderdetails.OrdOrderDetailVo;
import com.yxt.yythmall.api.shoppingcart.ShoppingCart;
import com.yxt.yythmall.api.shoppingcart.ShoppingCartQuery;
import com.yxt.yythmall.api.shoppingcart.ShoppingCartVo;
import com.yxt.yythmall.biz.appletgiftbag.AppletGiftBagService;
import com.yxt.yythmall.biz.lpkcustomer.LpkCustomerService;
import com.yxt.yythmall.biz.lpkgoods.LpkGoodsService;
import com.yxt.yythmall.biz.ordorderdetails.OrdOrderDetailService;
@ -41,6 +43,8 @@ public class OrdOrderService extends MybatisBaseService<OrdOrderMapper, OrdOrder
ShoppingCartService shoppingCartService;
@Autowired
LpkGoodsService lpkGoodsService;
@Autowired
AppletGiftBagService appletGiftBagService;
@Transactional(rollbackFor = Exception.class)
@ -221,6 +225,103 @@ public class OrdOrderService extends MybatisBaseService<OrdOrderMapper, OrdOrder
tradeParams.setMainSid(rb2.get("mainSid").toString());
tradeNoUrl.setParams(tradeParams);
// result.setOrder_url(orderUrl);
result.setPay_url(payUrl);
result.setTrade_no_url(tradeNoUrl);
String [] a =new String []{"pay"};
result.setBus(a);
return rb.success().setData(result);
}
@Transactional(rollbackFor = Exception.class)
public ResultBean createNewUserBagOrder(OrdOrderDto dto) {
ResultBean rb = ResultBean.fireFail();
PayResult result=new PayResult();
List<OrdOrderDetailVo> ordOrderDetailVos=new ArrayList<>();
List<GiftBagGoodss> vos=appletGiftBagService.getGoodsByBagSid(dto.getBagSid()).getData();
dto.setTotalTee(vos.get(0).getPrefPrice());
dto.setCardNumber(1);
for (GiftBagGoodss vo : vos) {
OrdOrderDetailVo vo1 =new OrdOrderDetailVo();
LpkGoods goods = lpkGoodsService.getOne(new QueryWrapper<LpkGoods>().eq("sid", vo.getGoodsSid()));
vo1.setGoodsSid(vo.getGoodsSid());
vo1.setGoodsName(vo.getName());
vo1.setPartNumber(Integer.parseInt(vo.getGoodsNumber()));
vo1.setNumofPart(Double.valueOf(vo.getWeight()));
vo1.setPriceUnit(Double.valueOf(goods.getPrice()));
vo1.setPricePart((Double.valueOf(goods.getPrice())*Double.valueOf(goods.getWeight())));
ordOrderDetailVos.add(vo1);
}
dto.setOrdOrderDetailsVoList(ordOrderDetailVos);
Map<String,Object>map =new HashMap<>();
LpkCustomerVo vo= lpkCustomerService.getCustomerInfo(dto.getCustomerSid()).getData();
Map<String, Object> sendBody=buildMessageBody( vo.getSid(), vo.getWxMpOpenid(),dto.getTotalTee(),dto.getOrdOrderDetailsVoList(),or);
ResponseEntity<ResultBean> postForEntity=new RestTemplate().postForEntity("https://supervise.yxtsoft.com/wxPay/order/createOrder", sendBody,ResultBean.class);
ResultBean<PayOrderVo> rb1= postForEntity.getBody();
LinkedHashMap rb2= (LinkedHashMap)postForEntity.getBody().getData();
if(!rb1.getCode().equals("200")){
return rb1;
}
OrdOrder order=new OrdOrder();
BeanUtil.copyProperties(dto, order, "id", "sid");
order.setMainSid(rb2.get("mainSid").toString());
order.setPayStatus(1);
order.setPayTime(new Date());
order.setCardNumber(dto.getCardNumber());
order.setSource(0);
order.setUserSid(vo.getSid());
order.setOpenId(vo.getWxMpOpenid());
order.setTotalTee(dto.getTotalTee());
if(dto.getOrdOrderDetailsVoList().size()>1){
order.setName(dto.getOrdOrderDetailsVoList().get(0).getGoodsName().toString()+"等"+(dto.getOrdOrderDetailsVoList().size()-1)+"件商品");
}else{
order.setName(dto.getOrdOrderDetailsVoList().get(0).getGoodsName().toString()+"商品");
}
// order.setName("商品");
order.setTimeRemarks(10);
order.setReturnUrl(or);
baseMapper.insert(order);
List<OrdOrderDetail> ordOrders=new ArrayList<>();
dto.getOrdOrderDetailsVoList().forEach(s->{
OrdOrderDetail ordOrderDetails=new OrdOrderDetail();
BeanUtil.copyProperties(s, ordOrderDetails, "id", "sid");
ordOrderDetails.setOrderSid(order.getSid());
ordOrders.add(ordOrderDetails);
});
ordOrderDetailsService.saveBatch(ordOrders);
//生成订单 删除购物车
if(dto.getOrdOrderDetailsVoList().size()>1){
result.setGoods(dto.getOrdOrderDetailsVoList().get(0).getGoodsName().toString()+"等"+(dto.getOrdOrderDetailsVoList().size()-1)+"件商品");
}else{
result.setGoods(dto.getOrdOrderDetailsVoList().get(0).getGoodsName().toString()+"商品");
}
result.setPrice(dto.getTotalTee());
// result.setOrderId(rbData.getOutTradeNo());
result.setOrderId(rb2.get("outTradeNo").toString());
result.setRemainder(String.valueOf(10*60));
PayUrl payUrl=new PayUrl();
payUrl.setUrl("https://supervise.yxtsoft.com/wxPay/order/pay");
PayParams aVoid=new PayParams();
aVoid.setMainSid(rb2.get("mainSid").toString());
payUrl.setParams(aVoid);
OrderUrl orderUrl=new OrderUrl();
OrderParams orderParams=new OrderParams();
orderParams.setMainSid("");
orderUrl.setParams(orderParams);
TradeNoUrl tradeNoUrl=new TradeNoUrl();
tradeNoUrl.setUrl("https://supervise.yxtsoft.com/wxPay/order/orderQuery");
TradeParams tradeParams=new TradeParams();
tradeParams.setMainSid(rb2.get("mainSid").toString());
tradeNoUrl.setParams(tradeParams);
// result.setOrder_url(orderUrl);
result.setPay_url(payUrl);
result.setTrade_no_url(tradeNoUrl);

1
src/main/java/com/yxt/yythmall/config/SaTokenConfigure.java

@ -35,6 +35,7 @@ public class SaTokenConfigure implements WebMvcConfigurer {
.excludePathPatterns("/lpkgiftcard/getReservationBySid/**")
.excludePathPatterns("/lpksreservoorder/submission")
.excludePathPatterns("/lpksreservoorder/exportExcelByStore")
.excludePathPatterns("/empsreservoorder/createNewUserBagOrder")
.excludePathPatterns("/lpksreservoorders/submission")
.excludePathPatterns("/empsreservoorder/submission")
.excludePathPatterns("/empsreservoorder/submissionEmp")

Loading…
Cancel
Save