Просмотр исходного кода

[M端][新增]:月解单日总金额接口

release_toaliyun_real
hupeng 7 лет назад
Родитель
Сommit
bc50c62315
5 измененных файлов: 68 добавлений и 4 удалений
  1. +6
    -0
      mallinkAdmin/src/main/java/com/iformall/controller/WxMerchantTradeDailyController.java
  2. +1
    -0
      mallinkService/src/main/java/com/iformall/mapper/WxMerchantTradeDailyMapper.java
  3. +6
    -3
      mallinkService/src/main/java/com/iformall/service/WxMerchantTradeDailyService.java
  4. +35
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxMerchantTradeDailyServiceImpl.java
  5. +20
    -1
      mallinkService/src/main/resources/mapper/WxMerchantTradeDailyMapper.xml

+ 6
- 0
mallinkAdmin/src/main/java/com/iformall/controller/WxMerchantTradeDailyController.java Просмотреть файл

@@ -50,5 +50,11 @@ public class WxMerchantTradeDailyController extends BaseController {
return wxMerchantTradeDailyService.getVolumeOfMonth(merchantId);
}

@ApiOperation("获得昨日解单列表")
@GetMapping("/listMonth")
public ResultData listMonth() {
return wxMerchantTradeDailyService.getVolumeTotalOfMonth(getTenantId());
}


}

+ 1
- 0
mallinkService/src/main/java/com/iformall/mapper/WxMerchantTradeDailyMapper.java Просмотреть файл

@@ -15,4 +15,5 @@ public interface WxMerchantTradeDailyMapper extends CommonMapper<WxMerchantTrade

List<WxMerchantTradeDailyVo> findListVoOfMonth(WxMerchantTradeDaily wxMerchantTradeDaily);

List<WxMerchantTradeDaily> findTotalListOfMonth(WxMerchantTradeDaily wxMerchantTradeDaily);
}

+ 6
- 3
mallinkService/src/main/java/com/iformall/service/WxMerchantTradeDailyService.java Просмотреть файл

@@ -68,13 +68,16 @@ public interface WxMerchantTradeDailyService {
*/
ResultData getVolumeOfMonth(Long merchantId);


/**
* 获取近30日解单数据(总额) ADMIN 端
*/
ResultData getVolumeTotalOfMonth(String tenantId);
/**
* 根据实体查询分页列表
*
* @param record
* @param offset
* @param limit
* @param pageIndex
* @param pageSize
* @return
*/
PageInfo<WxMerchantTradeDailyVo> listAsPageVo(WxMerchantTradeDailyVo record, Integer pageIndex, Integer pageSize);


+ 35
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxMerchantTradeDailyServiceImpl.java Просмотреть файл

@@ -146,6 +146,9 @@ public class WxMerchantTradeDailyServiceImpl implements WxMerchantTradeDailyServ
WxMerchantTradeDailyVo trade = recordMap.get(fmt.format(cal.getTime()));
if (trade != null){
trade.setReportDate(fmtv.format(cal.getTime()));
trade.setTenantId(null);
trade.setMerchantId(null);
trade.setMerchantName(null);
tradeList.add(trade);
}else {
trade = new WxMerchantTradeDailyVo();
@@ -158,6 +161,38 @@ public class WxMerchantTradeDailyServiceImpl implements WxMerchantTradeDailyServ
return new ResultData(tradeList);
}

@Override
public ResultData getVolumeTotalOfMonth(String tenantId) {


WxMerchantTradeDaily wxMerchantTradeDaily = new WxMerchantTradeDaily();
wxMerchantTradeDaily.setTenantId(tenantId);

List<WxMerchantTradeDaily> recordList = wxMerchantTradeDailyMapper.findTotalListOfMonth(wxMerchantTradeDaily);
Map<String,WxMerchantTradeDaily> recordMap = recordList.stream().collect(Collectors.toMap(WxMerchantTradeDaily::getReportDate, r -> r));

List<WxMerchantTradeDaily> tradeList = new ArrayList<>();
Calendar cal = Calendar.getInstance();
SimpleDateFormat fmt = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat fmtv = new SimpleDateFormat("MM/dd");
cal.setTime(new Date());
for (int i = 0; i < 30; i++) {
cal.add(Calendar.DAY_OF_YEAR, -1);
WxMerchantTradeDaily trade = recordMap.get(fmt.format(cal.getTime()));
if (trade != null){
trade.setReportDate(fmtv.format(cal.getTime()));
tradeList.add(trade);
}else {
trade = new WxMerchantTradeDaily();
trade.setTradeAmt(0);
trade.setReportDate(fmtv.format(cal.getTime()));
tradeList.add(trade);
}
}

return new ResultData(tradeList);
}

@Override
public ResultData getVolume(Long userId) {



+ 20
- 1
mallinkService/src/main/resources/mapper/WxMerchantTradeDailyMapper.xml Просмотреть файл

@@ -151,6 +151,25 @@
</if>
order by mtd.create_date desc LIMIT 30
</select>


<resultMap id="BaseTotalResultMap" type="com.iformall.domain.po.WxMerchantTradeDaily">
<result column="trade_amt" jdbcType="DECIMAL" property="tradeAmt" />
<result column="report_date" jdbcType="VARCHAR" property="reportDate" />
</resultMap>

<select id="findTotalListOfMonth" parameterType="com.iformall.domain.po.WxMerchantTradeDaily" resultMap="BaseTotalResultMap">
select report_date, sum(mtd.trade_amt) as trade_amt
from wx_merchant_trade_daily mtd
where 1 = 1

<if test=" null != tenantId ">
and mtd.tenant_id = #{tenantId}
</if>

group by mtd.report_date
order by mtd.report_date desc
LIMIT 30
</select>
</mapper>

Загрузка…
Отмена
Сохранить