From 66e6a2a354d6810841431095886d3c79d5bb83d8 Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Sat, 9 May 2020 09:27:47 +0800 Subject: [PATCH] =?UTF-8?q?[=E6=94=B6=E9=93=B6=E5=8F=B0][=E5=BC=82?= =?UTF-8?q?=E5=B8=B8]:=E5=BC=82=E5=B8=B8=E8=AE=A2=E5=8D=95=E6=9F=A5?= =?UTF-8?q?=E8=AF=A2=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/WxMicroPayController.java | 11 +++ .../iformall/domain/vo/WxOrderPayExpVo.java | 67 +++++++++++++++++++ .../com/iformall/domain/vo/WxOrderPayVo.java | 14 ++-- .../com/iformall/mapper/WxOrderMapper.java | 2 + .../com/iformall/service/WxOrderService.java | 8 +++ .../service/impl/WxOrderServiceImpl.java | 62 +++++++++++++++++ .../main/resources/mapper/WxOrderMapper.xml | 63 +++++++++++++++++ 7 files changed, 220 insertions(+), 7 deletions(-) create mode 100644 mallinkService/src/main/java/com/iformall/domain/vo/WxOrderPayExpVo.java diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxMicroPayController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxMicroPayController.java index 9ae335659..280f294eb 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxMicroPayController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxMicroPayController.java @@ -226,6 +226,7 @@ public class WxMicroPayController extends BaseController { } } + @RedisCache @ApiOperation("付款码支付交易流水分页列表接口") @GetMapping("listMicroPay") @ApiImplicitParams({ @@ -245,6 +246,16 @@ public class WxMicroPayController extends BaseController { return wxOrderService.microPayListOnDateAsPage(getUser().getId(), EnumOrderType.MICROPAY.getCode(), date, null, null); } + @ApiOperation("付款码支付某日异常交易分页列表接口") + @GetMapping("listMicroPayExp") + @ApiImplicitParams({ + @ApiImplicitParam(name = "date", value = "日期yyyy-MM-dd", dataType = "string", paramType = "query"), + @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query",required = true), + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query",required = true)}) + public ResultData listMicroPayExp(String date, Integer pageNum, Integer pageSize) { + return wxOrderService.microPayExpListOnDateAsPage(getUser().getId(), EnumOrderType.MICROPAY.getCode(), date, pageNum, pageSize); + } + @ApiOperation(value = "付款码支付退款", notes = "{\"orderId\":\"string\"}") @PostMapping("/microPayRefund") diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxOrderPayExpVo.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxOrderPayExpVo.java new file mode 100644 index 000000000..0c727dd52 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxOrderPayExpVo.java @@ -0,0 +1,67 @@ +package com.iformall.domain.vo; + +import com.iformall.domain.po.WxOrder; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; + +@Data +@ToString(callSuper = true) +@EqualsAndHashCode(callSuper = true) +public class WxOrderPayExpVo extends WxOrder { + + /** 发券商户信息 */ + @ApiModelProperty(value="商户名",name="merchantName") + private String merchantName; + @ApiModelProperty(value="b端用户姓名",name="bUserName") + private String bUserName; + @ApiModelProperty(value="b端用户手机号",name="bUserPhone") + private String bUserPhone; + + /** c端用户信息 */ + @ApiModelProperty(value="c用户绑定的手机号",name="cUserPhone") + private String cUserPhone; + @ApiModelProperty(value="c用户昵称",name="nickName") + private String nickName; + @ApiModelProperty(value="c用户名",name="cUserName") + private String cUserName; + + @ApiModelProperty(value ="支付订单ID", name = "payOrderId") + private Long payOrderId; + @ApiModelProperty(value ="微信支付订单ID", name = "transactionId") + private String transactionId; + + public static enum Field + { + Id_ASC("`id` ASC"),Id_DESC("`id` DESC") + ,OrderNumber_ASC("`order_number` ASC"),OrderNumber_DESC("`order_number` DESC") + ,TenantId_ASC("`tenant_id` ASC"),TenantId_DESC("`tenant_id` DESC") + ,CUserId_ASC("`c_user_id` ASC"),CUserId_DESC("`c_user_id` DESC") + ,CouponId_ASC("`product_id` ASC"),CouponId_DESC("`product_id` DESC") + ,PaymentType_ASC("`payment_type` ASC"),PaymentType_DESC("`payment_type` DESC") + ,Payment_ASC("`payment` ASC"),Payment_DESC("`payment` DESC") + ,PaymentTime_ASC("`payment_time` ASC"),PaymentTime_DESC("`payment_time` DESC") + ,OrderStatus_ASC("`order_status` ASC"),OrderStatus_DESC("`order_status` DESC") + ,CreateDate_ASC("`create_date` ASC"),CreateDate_DESC("`create_date` DESC") + ,UpdateDate_ASC("`update_date` ASC"),UpdateDate_DESC("`update_date` DESC") + ,Detail_ASC("`detail` ASC"),Detail_DESC("`detail` DESC") + ; + private String value; + Field(String value){ + this.value = value; + } + public String getValue() { + return value; + } + public void setCol(String value) { + this.value = value; + } + @Override + public String toString() { + return this.getValue(); + } + } + + +} diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/WxOrderPayVo.java b/mallinkService/src/main/java/com/iformall/domain/vo/WxOrderPayVo.java index 461fa4235..e281c1bfa 100644 --- a/mallinkService/src/main/java/com/iformall/domain/vo/WxOrderPayVo.java +++ b/mallinkService/src/main/java/com/iformall/domain/vo/WxOrderPayVo.java @@ -1,6 +1,7 @@ package com.iformall.domain.vo; import com.iformall.domain.po.WxOrder; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.EqualsAndHashCode; import lombok.ToString; @@ -13,20 +14,19 @@ import java.util.List; public class WxOrderPayVo extends WxOrder { /**发券商户信息*/ - @io.swagger.annotations.ApiModelProperty(value="商户名",name="merchantName") + @ApiModelProperty(value="商户名",name="merchantName") private String merchantName; - @io.swagger.annotations.ApiModelProperty(value="b端用户姓名",name="bUserName") + @ApiModelProperty(value="b端用户姓名",name="bUserName") private String bUserName; - @io.swagger.annotations.ApiModelProperty(value="b端用户手机号",name="bUserPhone") + @ApiModelProperty(value="b端用户手机号",name="bUserPhone") private String bUserPhone; - @io.swagger.annotations.ApiModelProperty(value="c用户绑定的手机号",name="cUserPhone") + @ApiModelProperty(value="c用户绑定的手机号",name="cUserPhone") private String cUserPhone; - - @io.swagger.annotations.ApiModelProperty(value="c用户昵称",name="nickName") + @ApiModelProperty(value="c用户昵称",name="nickName") private String nickName; - @io.swagger.annotations.ApiModelProperty(value="c用户名",name="cUserName") + @ApiModelProperty(value="c用户名",name="cUserName") private String cUserName; public static enum Field diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxOrderMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxOrderMapper.java index f2566be8c..4dbc72579 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxOrderMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxOrderMapper.java @@ -24,8 +24,10 @@ public interface WxOrderMapper extends CommonMapper { List findListOfCUser(WxOrder wxOrder); List selectDetailOfCUser(WxOrder wxOrder); + /** B端收银台(收款码支付) */ Map dayMicroPayAmountList(Map dateMap); List findListOfMicroPayOrderByDate(Map dateMap); + List findListOfExpMicroPayOrderByDate(Map dateMap); List queryForSceneRepotyHistory(HashMap params); diff --git a/mallinkService/src/main/java/com/iformall/service/WxOrderService.java b/mallinkService/src/main/java/com/iformall/service/WxOrderService.java index 109325204..b11673021 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxOrderService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxOrderService.java @@ -37,6 +37,14 @@ public interface WxOrderService { ResultData microPayListOnDateAsPage(Long bUserId, Integer type, String date, Integer pageIndex, Integer pageSize); + /** + * 根据日期 b用户查刷卡异常支付list + * + * @param bUserId B端用户) + */ + + ResultData microPayExpListOnDateAsPage(Long bUserId, Integer type, String date, Integer pageIndex, Integer pageSize); + /** * 付款码支付 * @param user diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java index e1839f4b0..ee01b9ef2 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOrderServiceImpl.java @@ -201,6 +201,68 @@ public class WxOrderServiceImpl implements WxOrderService { return new ResultData(resultMap); } + @Override + public ResultData microPayExpListOnDateAsPage(Long bUserId, Integer type, String date, Integer pageIndex, Integer pageSize) { + WxMerchantBUser wxMerchantBUser = wxMerchantBUserMapper.selectById(bUserId.longValue()); + if (wxMerchantBUser == null) { + logger.error("B端用户不存在:" + bUserId); + throw new MallinkException(ErrorCode.MERCHANT_INFO_NOT_FOUND); + } + + WxMerchant wxMerchant = wxMerchantMapper.selectById(wxMerchantBUser.getMerchantId()); + if (wxMerchant == null) { + logger.error("商户不存在:" + bUserId); + throw new MallinkException(ErrorCode.MERCHANT_INFO_NOT_FOUND); + } + + SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd"); + String dateString; + Date startDate; + Date endDate; + + if (date == null) { + endDate = new Date(); + dateString = fmt.format(new Date()); + try { + startDate = fmt.parse(dateString); + } catch (ParseException e) { + return new ResultData(ErrorCode.SYS_PARAMETER_CAST_ERROR); + } + } else { + try { + startDate = fmt.parse(date); + } catch (ParseException e) { + return new ResultData(ErrorCode.SYS_PARAMETER_CAST_ERROR); + } + Calendar cal = Calendar.getInstance(); + cal.setTime(startDate); + cal.add(Calendar.DATE, 1); + endDate = cal.getTime(); + } + + Map dateMap = new HashMap(); + dateMap.put("startDate", startDate); + dateMap.put("endDate", endDate); + dateMap.put("merchantId", wxMerchant.getId()); + dateMap.put("type", type); + + Map resultMap = new HashMap(); + + if (pageIndex == null || pageSize == null) { + List list; + list = wxOrderMapper.findListOfExpMicroPayOrderByDate(dateMap); + logger.info("find " + list.size() + " order from " + startDate + " to " + new Date()); + int total_price = 0; + for (WxOrder order : list) { + total_price = total_price + order.getPayment(); + } + resultMap.put("amount", total_price); + } else { + resultMap.put("list", PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> wxOrderMapper.findListOfExpMicroPayOrderByDate(dateMap))); + } + return new ResultData(resultMap); + } + /** * 拼团数量 * diff --git a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml index 82bdaa62c..7e0e59b89 100644 --- a/mallinkService/src/main/resources/mapper/WxOrderMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxOrderMapper.xml @@ -430,6 +430,69 @@ order by o.create_date desc + + + + + + + + + + + + + + + + + + + + + + + + + + + + + o.`id`,o.`order_number`,o.`tenant_id`,o.`c_user_id`,o.`coupon_channel_id`,o.`product_id`,o.`type`, + o.`payment_type`,o.`payment`,o.`payment_time`,o.`order_status`,o.`create_date`,o.`update_date`,o.`detail`, + m.name as merchant_name, bu.name, bu.phone as bphone, + cu.phone, cu.nick_name, cubi.name c_user_name, + po.id as pay_order_id, po.transaction_id + + + +