| @@ -0,0 +1,30 @@ | |||
| package com.iformall.domain.po; | |||
| import java.io.Serializable; | |||
| import java.math.BigDecimal; | |||
| import java.util.Date; | |||
| import com.baomidou.mybatisplus.annotation.TableField; | |||
| import com.baomidou.mybatisplus.annotation.TableName; | |||
| import com.iformall.domain.po.base.BaseEntity; | |||
| import lombok.Data; | |||
| import lombok.EqualsAndHashCode; | |||
| import lombok.ToString; | |||
| @Data | |||
| @ToString(callSuper = true) | |||
| @EqualsAndHashCode(callSuper = true) | |||
| public class NeuPosOrderMasterExt extends BaseEntity{ | |||
| private Integer orgId; | |||
| private Integer shopId; | |||
| private BigDecimal totalAmount; | |||
| private BigDecimal rechargeAmount; | |||
| private Integer orderCount; | |||
| private Integer rechargeCount; | |||
| @TableField(exist = false) | |||
| private Date createBegin; | |||
| @TableField(exist = false) | |||
| private Date createEnd; | |||
| } | |||
| @@ -0,0 +1,22 @@ | |||
| package com.iformall.mapper; | |||
| import com.baomidou.mybatisplus.core.mapper.BaseMapper; | |||
| import com.iformall.domain.po.NeuPosOrderMasterExt; | |||
| import java.util.List; | |||
| import java.util.Map; | |||
| import org.apache.ibatis.annotations.Param; | |||
| public interface NeuPosOrderMasterExtMapper extends BaseMapper<NeuPosOrderMasterExt> { | |||
| List<Map> queryShopPayTypeTradeList(NeuPosOrderMasterExt example); | |||
| List<Map> queryShopPayOrderList(NeuPosOrderMasterExt example); | |||
| List<Map> selectShopList(@Param("orgId") Integer orgId); | |||
| List<Map> selectPayTypeList(); | |||
| } | |||
| @@ -0,0 +1,16 @@ | |||
| package com.iformall.service; | |||
| import java.util.*; | |||
| import com.github.pagehelper.PageInfo; | |||
| import com.iformall.domain.po.NeuPosOrderMasterExt; | |||
| import com.iformall.domain.po.PosOrder; | |||
| public interface NeuPosOrderService { | |||
| List<Map> queryShopPayTypeTradeList(NeuPosOrderMasterExt example); | |||
| List<Map> queryShopPayOrderList(NeuPosOrderMasterExt example); | |||
| List<Map> selectShopList(Integer orgId); | |||
| } | |||
| @@ -0,0 +1,58 @@ | |||
| package com.iformall.service.impl; | |||
| import com.iformall.domain.po.NeuPosOrderMasterExt; | |||
| import com.iformall.mapper.NeuPosOrderMasterExtMapper; | |||
| import com.iformall.service.NeuPosOrderService; | |||
| import java.math.BigDecimal; | |||
| import java.util.ArrayList; | |||
| import java.util.HashMap; | |||
| import java.util.List; | |||
| import java.util.Map; | |||
| import org.springframework.beans.factory.annotation.Autowired; | |||
| import org.springframework.stereotype.Service; | |||
| @Service | |||
| public class NeuPosOrderServiceImpl implements NeuPosOrderService { | |||
| @Autowired | |||
| NeuPosOrderMasterExtMapper posOrderMapper; | |||
| @Override | |||
| public List<Map> queryShopPayTypeTradeList(NeuPosOrderMasterExt example) { | |||
| return posOrderMapper.queryShopPayTypeTradeList(example); | |||
| } | |||
| @Override | |||
| public List<Map> selectShopList(Integer orgId) { | |||
| return posOrderMapper.selectShopList(orgId); | |||
| } | |||
| @Override | |||
| public List<Map> queryShopPayOrderList(NeuPosOrderMasterExt example) { | |||
| List<Map> payOrderList = posOrderMapper.queryShopPayOrderList(example); | |||
| List<Map> payTypeMap = posOrderMapper.selectPayTypeList(); | |||
| Map<Integer,String> typeMap = new HashMap<Integer,String>(); | |||
| for (Map payt:payTypeMap) { | |||
| typeMap.put((Integer)payt.get("pay_type"), (String)payt.get("name")); | |||
| } | |||
| List<Map> relist = new ArrayList<Map>(); | |||
| for (Map payOrder:payOrderList ) { | |||
| Integer payType = (Integer)payOrder.get("payType"); | |||
| if (null != payType && typeMap.containsKey(payType)) { | |||
| Map map = new HashMap(); | |||
| map.put("payType",typeMap.get(payType).toString()); | |||
| map.put("payAmount",BigDecimal.valueOf(Double.valueOf(payOrder.get("payAmount").toString()))); | |||
| map.put("payCount",Integer.parseInt(payOrder.get("payCount").toString())); | |||
| map.put("refundAmount",BigDecimal.valueOf(Double.valueOf(payOrder.get("refundAmount").toString()))); | |||
| map.put("refundCount",Integer.parseInt(payOrder.get("refundCount").toString())); | |||
| map.put("amount",BigDecimal.valueOf(Double.valueOf(payOrder.get("amount").toString()))); | |||
| map.put("discountAmount",BigDecimal.valueOf(Double.valueOf(payOrder.get("discountAmount").toString()))); | |||
| relist.add(map); | |||
| } | |||
| } | |||
| return relist; | |||
| } | |||
| } | |||
| @@ -0,0 +1,64 @@ | |||
| <?xml version="1.0" encoding="UTF-8"?> | |||
| <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | |||
| <mapper namespace="com.iformall.mapper.NeuPosOrderMasterExtMapper"> | |||
| <select id="queryShopPayTypeTradeList" parameterType="com.iformall.domain.po.NeuPosOrderMasterExt" resultType="java.util.Map"> | |||
| SELECT shop_id as shopId, | |||
| sum(real_pay_amount) as payAmount, | |||
| count(0) as payCount | |||
| from order_master | |||
| where order_status = 2 and order_type != '3' | |||
| <if test=" orgId != null"> | |||
| and org_id = #{orgId} | |||
| </if> | |||
| <if test=" shopId != null"> | |||
| and shop_id = #{shopId} | |||
| </if> | |||
| <if test=" createBegin != null"> | |||
| and created_at >= #{createBegin} | |||
| </if> | |||
| <if test=" createEnd != null"> | |||
| and created_at <= #{createEnd} | |||
| </if> | |||
| GROUP BY shop_id | |||
| ORDER BY shop_id asc | |||
| </select> | |||
| <select id="queryShopPayOrderList" parameterType="com.iformall.domain.po.NeuPosOrderMasterExt" resultType="java.util.Map"> | |||
| select ifnull(sum(order_amount),0) as payAmount, | |||
| ifnull(sum(discount_amount),0) as discountAmount, | |||
| count(order_amount) as payCount, | |||
| ifnull(sum(if(order_status=4,real_pay_amount,0)),0) refundAmount, | |||
| count(if(order_status=4,true,null)) refundCount, | |||
| ifnull(sum(if(order_status=2,real_pay_amount,0)),0) as amount, | |||
| pay_type as payType | |||
| from order_master | |||
| where pay_status = 2 and order_type != '3' | |||
| <if test=" orgId != null"> | |||
| and org_id = #{orgId} | |||
| </if> | |||
| <if test=" shopId != null"> | |||
| and shop_id = #{shopId} | |||
| </if> | |||
| <if test=" createBegin != null"> | |||
| and created_at >= #{createBegin} | |||
| </if> | |||
| <if test=" createEnd != null"> | |||
| and created_at <= #{createEnd} | |||
| </if> | |||
| GROUP BY pay_type | |||
| </select> | |||
| <select id="selectShopList" parameterType="Integer" resultType="java.util.Map"> | |||
| select id,name from `shop` where status = 1 | |||
| <if test=" orgId != null"> | |||
| and org_id = #{orgId} | |||
| </if> | |||
| order by name asc | |||
| </select> | |||
| <select id="selectPayTypeList" resultType="java.util.Map"> | |||
| select pay_type,name from `trade_pay_type_dict` | |||
| </select> | |||
| </mapper> | |||