Kaynağa Gözat

[统计][修改][修改业态分析列表]

release_toaliyun_real
luozukai 6 yıl önce
ebeveyn
işleme
5760b1e1e5
4 değiştirilmiş dosya ile 44 ekleme ve 7 silme
  1. +5
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxBusiness.java
  2. +0
    -4
      mallinkService/src/main/java/com/iformall/service/WxBusinessService.java
  3. +33
    -1
      mallinkService/src/main/java/com/iformall/service/impl/WxBusinessServiceImpl.java
  4. +6
    -2
      mallinkService/src/main/resources/mapper/WxBusinessMapper.xml

+ 5
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxBusiness.java Dosyayı Görüntüle

@@ -41,6 +41,11 @@ public class WxBusiness implements Serializable {
@Transient @Transient
private String tenantId; private String tenantId;


@Transient
private Integer limitStart;
@Transient
private Integer limitEnd;

public static enum Field public static enum Field
{ {
Id_ASC("`id` ASC"),Id_DESC("`id` DESC") Id_ASC("`id` ASC"),Id_DESC("`id` DESC")


+ 0
- 4
mallinkService/src/main/java/com/iformall/service/WxBusinessService.java Dosyayı Görüntüle

@@ -3,10 +3,6 @@ package com.iformall.service;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.iformall.common.ResultData; import com.iformall.common.ResultData;
import com.iformall.domain.po.WxBusiness; import com.iformall.domain.po.WxBusiness;
import org.springframework.web.bind.annotation.ModelAttribute;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List; import java.util.List;


public interface WxBusinessService { public interface WxBusinessService {


+ 33
- 1
mallinkService/src/main/java/com/iformall/service/impl/WxBusinessServiceImpl.java Dosyayı Görüntüle

@@ -4,9 +4,11 @@ import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.iformall.common.ResultData; import com.iformall.common.ResultData;
import com.iformall.domain.po.WxBusiness; import com.iformall.domain.po.WxBusiness;
import com.iformall.domain.po.WxCoupon;
import com.iformall.enums.EnumBusinessFilter; import com.iformall.enums.EnumBusinessFilter;
import com.iformall.mapper.WxBusinessMapper; import com.iformall.mapper.WxBusinessMapper;
import com.iformall.service.WxBusinessService; import com.iformall.service.WxBusinessService;
import org.apache.commons.collections.CollectionUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@@ -14,7 +16,9 @@ import org.springframework.stereotype.Service;


import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map;


@Service @Service
public class WxBusinessServiceImpl implements WxBusinessService { public class WxBusinessServiceImpl implements WxBusinessService {
@@ -59,7 +63,35 @@ public class WxBusinessServiceImpl implements WxBusinessService {


@Override @Override
public ResultData devoteList(WxBusiness wxBusiness, Integer pageNum, Integer pageSize) { public ResultData devoteList(WxBusiness wxBusiness, Integer pageNum, Integer pageSize) {
return new ResultData(PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> wxBusinessMapper.devoteList(wxBusiness)));
wxBusiness.setLimitStart(0);
wxBusiness.setLimitEnd(Integer.MAX_VALUE);
List totalList = wxBusinessMapper.devoteList(wxBusiness);
if(CollectionUtils.isEmpty(totalList)){
PageHelper.startPage(pageNum, pageSize);
PageInfo<List<Map<String,Object>>> pageInfo = new PageInfo(new ArrayList());
pageInfo.setPages(0);
pageInfo.setTotal(0);
PageHelper.clearPage();
return new ResultData(pageInfo);
}

int total = totalList.size();
int pages;
if(total % pageSize == 0){
pages = total / pageSize;
}else{
pages = total / pageSize +1;
}
wxBusiness.setLimitStart((pageNum -1) * pageSize);
wxBusiness.setLimitEnd(pageSize);
List<Map<String,Object>> list = wxBusinessMapper.devoteList(wxBusiness);

PageHelper.startPage(pageNum, pageSize);
PageInfo<List<Map<String,Object>>> pageInfo = new PageInfo(list);
pageInfo.setPages(pages);
pageInfo.setTotal(total);
PageHelper.clearPage();
return new ResultData(pageInfo);
} }


} }

+ 6
- 2
mallinkService/src/main/resources/mapper/WxBusinessMapper.xml Dosyayı Görüntüle

@@ -163,7 +163,7 @@
round( round(
(select if(sum(mtd.trade_amt) is null,0,sum(mtd.trade_amt)) (select if(sum(mtd.trade_amt) is null,0,sum(mtd.trade_amt))
from wx_merchant m from wx_merchant m
left join wx_merchant_trade_daily mtd on mtd.merchant_id = m.id where m.business_id = 9 and m.tenant_id=#{tenantId} and mtd.create_date between #{startdate} and #{enddate})
left join wx_merchant_trade_daily mtd on mtd.merchant_id = m.id where m.business_id = #{id} and m.tenant_id=#{tenantId} and mtd.create_date between #{startdate} and #{enddate})
/ /
(select if(sum(ws.operation_area) is null,0,sum(ws.operation_area)) (select if(sum(ws.operation_area) is null,0,sum(ws.operation_area))
from wx_merchant m from wx_merchant m
@@ -178,7 +178,7 @@
round( round(
(select if(sum(mtd.trade_amt) is null,0,sum(mtd.trade_amt)) (select if(sum(mtd.trade_amt) is null,0,sum(mtd.trade_amt))
from wx_merchant m from wx_merchant m
left join wx_merchant_trade_daily mtd on mtd.merchant_id = m.id where m.business_id = 9 and m.tenant_id=#{tenantId} and mtd.create_date between #{startdate} and #{enddate})
left join wx_merchant_trade_daily mtd on mtd.merchant_id = m.id where m.business_id = #{id} and m.tenant_id=#{tenantId} and mtd.create_date between #{startdate} and #{enddate})
/ /
(select if(sum(ws.operation_area) is null,0,sum(ws.operation_area)) (select if(sum(ws.operation_area) is null,0,sum(ws.operation_area))
from wx_merchant m from wx_merchant m
@@ -198,6 +198,10 @@
and mtd.create_date between #{startdate} and #{enddate} and mtd.create_date between #{startdate} and #{enddate}
group by m.id group by m.id
order by devoteRate desc order by devoteRate desc

<if test="null != limitStart and null != limitEnd">
limit #{limitStart},#{limitEnd}
</if>
</select> </select>


</mapper> </mapper>

Yükleniyor…
İptal
Kaydet