记得上下班打卡 | git大法好,push需谨慎

Commit 29a25bf6 authored by 胡佳晨's avatar 胡佳晨

Merge branch 'master' into dev_gjy_now_order_detals_paycode

# Conflicts:
#	liquidnet-bus-api/liquidnet-service-goblin-api/src/main/java/com/liquidnet/service/goblin/service/IGoblinExportService.java
#	liquidnet-bus-do/liquidnet-service-goblin-do/src/main/resources/com.liquidnet.service.goblin.mapper/GoblinStoreOrderMapper.xml
parents e0aece96 2355f74e
...@@ -13,13 +13,12 @@ public interface IGoblinExportService { ...@@ -13,13 +13,12 @@ public interface IGoblinExportService {
List<GoblinZhengzaiMarketOrderExcelDto> exportZhengzaiMarketOrder(Map<String, Object> paramMap); List<GoblinZhengzaiMarketOrderExcelDto> exportZhengzaiMarketOrder(Map<String, Object> paramMap);
List<GoblinMarketGoodsExcelDto> exportMarketGoods(Map<String, Object> paramMap);
List<GoblinMarketGoodsUnDateExcelDto> exportMarketGoodsUnDate(Map<String, Object> paramMap);
//导出商城订单信息 //导出商城订单信息
ResponseDto<String> exportMallOrder(HttpServletResponse response, String beginTime, String endTime, String state, Integer mailType,String storeId); ResponseDto<String> exportMallOrder(HttpServletResponse response, String beginTime, String endTime, String state, Integer mailType,String storeId);
List<GoblinMarketGoodsExcelDto> exportMarketGoods(Map<String, Object> paramMap);
List<GoblinMarketGoodsUnDateExcelDto> exportMarketGoodsUnDate(Map<String, Object> paramMap);
} }
...@@ -30,29 +30,29 @@ ...@@ -30,29 +30,29 @@
<select id="exportMallOrder" resultMap="exportMallOrderDaoResult"> <select id="exportMallOrder" resultMap="exportMallOrderDaoResult">
select select
gso.order_id as order_id, gso.order_id as order_id,
gso.order_code as order_code, gso.order_code as order_code,
gso.user_mobile as user_mobile, gso.user_mobile as user_mobile,
gso.price_express as price_express, gso.price_express as price_express,
gso.price_coupon as price_coupon, gso.price_coupon as price_coupon,
gso.store_price_coupon as store_price_coupon, gso.store_price_coupon as store_price_coupon,
goa.express_contacts as express_contacts, goa.express_contacts as express_contacts,
goa.express_phone as express_phone, goa.express_phone as express_phone,
CONCAT(goa.express_address,' ',goa.express_address_detail) as express_detail_address, CONCAT(goa.express_address,' ',goa.express_address_detail) as express_detail_address,
gso.pay_type as pay_type, gso.pay_type as pay_type,
gso.pay_time as pay_time, gso.pay_time as pay_time,
gso.created_at as created_at, gso.created_at as created_at,
gm.logistics_company as logistics_company, gm.logistics_company as logistics_company,
gm.mail_no as mail_no, gm.mail_no as mail_no,
gos.spu_id as spu_id, gos.spu_id as spu_id,
gg.name as name, gg.name as name,
gg.cate1_name as cate1_name, gg.cate1_name as cate1_name,
gg.cate2_name as cate2_name, gg.cate2_name as cate2_name,
gos.sku_name as sku_name, gos.sku_name as sku_name,
gos.num as num, gos.num as num,
gos.sku_price as sku_price, gos.sku_price as sku_price,
gos.sku_price_actual as sku_price_actual, gos.sku_price_actual as sku_price_actual,
gos.order_sku_id as order_sku_id gos.order_sku_id as order_sku_id
from goblin_store_order as gso from goblin_store_order as gso
inner join goblin_order_sku as gos on gos.order_id = gso.order_id inner join goblin_order_sku as gos on gos.order_id = gso.order_id
inner join (select spu_id, gg.name, gsgc1.name as cate1_name, gsgc2.name as cate2_name inner join (select spu_id, gg.name, gsgc1.name as cate1_name, gsgc2.name as cate2_name
...@@ -63,7 +63,7 @@ ...@@ -63,7 +63,7 @@
inner join goblin_order_attr as goa on goa.order_id = gso.order_id inner join goblin_order_attr as goa on goa.order_id = gso.order_id
left join goblin_mail as gm on gm.order_id = gso.order_id left join goblin_mail as gm on gm.order_id = gso.order_id
<where> <where>
and gso.store_id = #{storeId} and gso.store_id = #{storeId}
<if test="beginTime != null and endTime != null"> <if test="beginTime != null and endTime != null">
and gso.created_at between #{beginTime} and #{endTime} and gso.created_at between #{beginTime} and #{endTime}
</if> </if>
...@@ -82,35 +82,33 @@ ...@@ -82,35 +82,33 @@
</where> </where>
group by gos.order_sku_id group by gos.order_sku_id
</select> </select>
<select id="exportZhengzaiMarketOrder" <select id="exportZhengzaiMarketOrder" resultType="com.liquidnet.service.goblin.dto.GoblinZhengzaiMarketOrderExcelDto">
resultType="com.liquidnet.service.goblin.dto.GoblinZhengzaiMarketOrderExcelDto"> select gos.spu_name spuName,
select gos.spu_name spuName, gsm.name marketName,
gsm.name marketName, gsi.store_name storeName,
gsi.store_name storeName, gso.order_code orderCode,
gso.order_code orderCode, gso.pay_code payCode,
gso.pay_code payCode, if(gso.status in (2, 3, 4), '已付款', '已退款') orderStatus,
if(gso.status in (2, 3, 4), '已付款', '已退款') orderStatus, gso.created_at createdAt,
gso.created_at createdAt, gos.push_time pushTime,
gos.push_time pushTime, if(gso.device_from = 'micropay', 'pos机订单', '线上订单') deviceFrom,
if(gso.device_from = 'micropay', 'pos机订单', '线上订单') deviceFrom, (case gso.pay_type
(case gso.pay_type when 'wepay' then '微信支付'
when 'wepay' then '微信支付' when 'alipay' then '支付宝支付'
when 'alipay' then '支付宝支付' when 'huifu' then '汇付'
when 'huifu' then '汇付' when 'unionpay' then '云闪付'
when 'unionpay' then '云闪付' when 'pos_crash' then '现金支付'
when 'pos_crash' then '现金支付' else '0元付' end) payType,
else '0元付' end) payType, gos.num nums,
gos.num nums, gos.sku_price skuPrice,
gos.sku_price skuPrice, gos.sku_price_actual priceActual,
gos.sku_price_actual priceActual, gos.price_voucher priceVoucher
gos.price_voucher priceVoucher
from goblin_store_order gso from goblin_store_order gso
inner join goblin_order_sku gos on gos.order_id = gso.order_id inner join goblin_order_sku gos on gos.order_id = gso.order_id
inner join goblin_store_info gsi on gsi.store_id = gso.store_id inner join goblin_store_info gsi on gsi.store_id = gso.store_id
inner join goblin_self_marketing gsm on gsm.self_market_id = SUBSTRING_INDEX(gso.market_id, 'ZZ', -1) inner join goblin_self_marketing gsm on gsm.self_market_id = SUBSTRING_INDEX(gso.market_id, 'ZZ', -1)
<where> <where>
gso.status not in (0, 5) and gso.store_id = #{storeId,jdbcType=VARCHAR} and gso.market_id = gso.status not in (0, 5) and gso.store_id = #{storeId,jdbcType=VARCHAR} and gso.market_id = #{marketId,jdbcType=VARCHAR}
#{marketId,jdbcType=VARCHAR}
<if test="beginTime != null"> <if test="beginTime != null">
and gso.created_at <![CDATA[>=]]> #{beginTime,jdbcType=TIMESTAMP} and gso.created_at <![CDATA[>=]]> #{beginTime,jdbcType=TIMESTAMP}
</if> </if>
...@@ -247,5 +245,4 @@ ...@@ -247,5 +245,4 @@
b.sku_id; b.sku_id;
</select> </select>
</mapper> </mapper>
...@@ -242,4 +242,119 @@ public class GoblinExportDataController { ...@@ -242,4 +242,119 @@ public class GoblinExportDataController {
} }
} }
} }
/**
* excel正在下单根据日期导出
*
* @return
*/
@GetMapping("/exportMarketGoods")
@ApiOperation(value = "正在下单-商品根据日期")
@ResponseBody
@ApiImplicitParams({
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "storeId", value = "店铺ID"),
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "marketId", value = "活动ID"),
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "bDate", value = "开始时间[yyyy-MM-dd]"),
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "eDate", value = "结束时间[yyyy-MM-dd]"),
})
public void exportMarketGoods(@RequestParam(required = true, name = "bDate") @Pattern(regexp = LnsRegex.Valid.DATETIME_YMD, message = "开始日期格式有误") String beginDate,
@RequestParam(required = true, name = "eDate") @Pattern(regexp = LnsRegex.Valid.DATETIME_YMD, message = "结束日期格式有误") String endDate,
@RequestParam String marketId, @RequestParam String storeId, HttpServletResponse response) {
String currentUid = CurrentUtil.getCurrentUid();
ServletOutputStream servletOutputStream = null;
try {
log.debug("数据导出:正在下单-商品根据日期导出:[uid:{},storeId:{},marketId:{},date:{}~{}]", currentUid, storeId, marketId, beginDate, endDate);
String fileName = DateUtil.Formatter.yyyyMMddHHmmssTrim.format(LocalDateTime.now())
.concat(new String(("正在下单-商品根据日期导出").getBytes("gb2312"), StandardCharsets.ISO_8859_1));
response.setHeader(HttpHeaders.CONTENT_DISPOSITION, "attachment;filename=".concat(fileName).concat(ExcelTypeEnum.XLSX.getValue()));
response.setContentType(MediaType.MULTIPART_FORM_DATA_VALUE);
response.setCharacterEncoding(StandardCharsets.UTF_8.name());
servletOutputStream = response.getOutputStream();
HashMap<String, Object> paramMap = CollectionUtil.mapStringObject();
paramMap.put("storeId", storeId);
paramMap.put("marketId", GoblinStatusConst.MarketPreStatus.MARKET_PRE_ZHENGZAI.getValue() + marketId);
LocalDate beginLocalDate = DateUtil.Formatter.yyyy_MM_dd.parse2LocalDate(beginDate);
LocalDate endLocalDate = DateUtil.Formatter.yyyy_MM_dd.parse2LocalDate(endDate);
paramMap.put("beginTime", null == beginLocalDate ? beginLocalDate : LocalDateTime.of(beginLocalDate, LocalTime.MIN));
paramMap.put("endTime", null == endLocalDate ? endLocalDate : LocalDateTime.of(endLocalDate, LocalTime.MAX));
if (log.isDebugEnabled()) {
log.debug("数据导出:正在下单-商品根据日期导出:[uid:{},paramMap:{}]", currentUid, JsonUtils.toJson(paramMap));
}
List<GoblinMarketGoodsExcelDto> excelDtos = iGoblinExportService.exportMarketGoods(paramMap);
if (CollectionUtils.isEmpty(excelDtos)) {
log.warn("数据导出:正在下单-商品根据日期导出:无数据,请核实:[uid:{},paramMap:{}]", currentUid, JsonUtils.toJson(paramMap));
return;
}
EasyExcel.write(servletOutputStream, GoblinMarketGoodsExcelDto.class).sheet("销售数据").doWrite(excelDtos);
} catch (IOException e) {
log.error("数据导出:正在下单-商品根据日期导出:异常[uid:{},storeId:{},marketId:{},date:{}~{},ex.msg={}]",
currentUid, storeId, marketId, beginDate, endDate, e.getLocalizedMessage());
throw new LiquidnetServiceException("-1", "导出失败,请联系网站管理员");
} finally {
if (null != servletOutputStream) {
try {
servletOutputStream.close();
} catch (Exception ignored) {
}
}
}
}
/**
* excel正在下单根据导出
*/
@GetMapping("/exportMarketGoodsUnDate")
@ApiOperation(value = "正在下单-商品导出")
@ResponseBody
@ApiImplicitParams({
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "storeId", value = "店铺ID"),
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "marketId", value = "活动ID"),
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "bDate", value = "开始时间[yyyy-MM-dd HH:mm:ss]"),
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "eDate", value = "结束时间[yyyy-MM-dd HH:mm:ss]"),
})
public void exportMarketGoodsUnDate(@RequestParam(required = true, name = "bDate") @Pattern(regexp = LnsRegex.Valid.DATETIME_FULL, message = "开始日期格式有误") String beginDate,
@RequestParam(required = true, name = "eDate") @Pattern(regexp = LnsRegex.Valid.DATETIME_FULL, message = "结束日期格式有误") String endDate,
@RequestParam String marketId, @RequestParam String storeId, HttpServletResponse response) {
String currentUid = CurrentUtil.getCurrentUid();
ServletOutputStream servletOutputStream = null;
try {
log.debug("数据导出:正在下单-商品导出:[uid:{},storeId:{},marketId:{},date:{}~{}]", currentUid, storeId, marketId, beginDate, endDate);
String fileName = DateUtil.Formatter.yyyyMMddHHmmssTrim.format(LocalDateTime.now())
.concat(new String(("正在下单-商品导出").getBytes("gb2312"), StandardCharsets.ISO_8859_1));
response.setHeader(HttpHeaders.CONTENT_DISPOSITION, "attachment;filename=".concat(fileName).concat(ExcelTypeEnum.XLSX.getValue()));
response.setContentType(MediaType.MULTIPART_FORM_DATA_VALUE);
response.setCharacterEncoding(StandardCharsets.UTF_8.name());
servletOutputStream = response.getOutputStream();
HashMap<String, Object> paramMap = CollectionUtil.mapStringObject();
paramMap.put("storeId", storeId);
paramMap.put("marketId", GoblinStatusConst.MarketPreStatus.MARKET_PRE_ZHENGZAI.getValue() + marketId);
paramMap.put("beginTime", beginDate);
paramMap.put("endTime", endDate);
if (log.isDebugEnabled()) {
log.debug("数据导出:正在下单-商品导出:[uid:{},paramMap:{}]", currentUid, JsonUtils.toJson(paramMap));
}
List<GoblinMarketGoodsUnDateExcelDto> excelDtos = iGoblinExportService.exportMarketGoodsUnDate(paramMap);
if (CollectionUtils.isEmpty(excelDtos)) {
log.warn("数据导出:正在下单-商品导出:无数据,请核实:[uid:{},paramMap:{}]", currentUid, JsonUtils.toJson(paramMap));
return;
}
EasyExcel.write(servletOutputStream, GoblinMarketGoodsUnDateExcelDto.class).sheet("销售数据").doWrite(excelDtos);
} catch (IOException e) {
log.error("数据导出:正在下单-商品导出:异常[uid:{},storeId:{},marketId:{},date:{}~{},ex.msg={}]",
currentUid, storeId, marketId, beginDate, endDate, e.getLocalizedMessage());
throw new LiquidnetServiceException("-1", "导出失败,请联系网站管理员");
} finally {
if (null != servletOutputStream) {
try {
servletOutputStream.close();
} catch (Exception ignored) {
}
}
}
}
} }
...@@ -32,6 +32,17 @@ public class GoblinExportServiceImpl implements IGoblinExportService { ...@@ -32,6 +32,17 @@ public class GoblinExportServiceImpl implements IGoblinExportService {
@Autowired @Autowired
GoblinStoreOrderMapper goblinStoreOrderMapper; GoblinStoreOrderMapper goblinStoreOrderMapper;
@Override
public List<GoblinMarketGoodsExcelDto> exportMarketGoods(Map<String, Object> paramMap) {
return goblinStoreOrderMapper.exportMarketGoods(paramMap);
}
@Override
public List<GoblinMarketGoodsUnDateExcelDto> exportMarketGoodsUnDate(Map<String, Object> paramMap) {
return goblinStoreOrderMapper.exportMarketGoodsUnDate(paramMap);
}
@Override @Override
public List<GoblinZhengzaiMarketOrderExcelDto> exportZhengzaiMarketOrder(Map<String, Object> paramMap) { public List<GoblinZhengzaiMarketOrderExcelDto> exportZhengzaiMarketOrder(Map<String, Object> paramMap) {
return goblinStoreOrderMapper.exportZhengzaiMarketOrder(paramMap); return goblinStoreOrderMapper.exportZhengzaiMarketOrder(paramMap);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment