Browse Source

/。 baobiao 1

release_toaliyun_real
xhxu 4 years ago
parent
commit
8e2bf9e1b3
30 changed files with 537 additions and 459 deletions
  1. +0
    -10
      mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCUserDataController.java
  2. +30
    -31
      mallinkSchedule/src/main/java/com/iformall/schedule/ChartDataSchedule.java
  3. +6
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxChartDataEntity.java
  4. +47
    -6
      mallinkService/src/main/java/com/iformall/enums/EnumCarCmd.java
  5. +2
    -1
      mallinkService/src/main/java/com/iformall/enums/EnumChartType.java
  6. +4
    -4
      mallinkService/src/main/java/com/iformall/mapper/WxCarCmdLogMapper.java
  7. +5
    -0
      mallinkService/src/main/java/com/iformall/mapper/WxChartDataMapper.java
  8. +2
    -3
      mallinkService/src/main/java/com/iformall/mapper/WxRentContractMapper.java
  9. +1
    -0
      mallinkService/src/main/java/com/iformall/mapper/WxShopMapper.java
  10. +2
    -2
      mallinkService/src/main/java/com/iformall/service/DataTowerService.java
  11. +1
    -1
      mallinkService/src/main/java/com/iformall/service/WxCouponChannelService.java
  12. +1
    -1
      mallinkService/src/main/java/com/iformall/service/WxCouponOrderService.java
  13. +2
    -0
      mallinkService/src/main/java/com/iformall/service/WxRentContractService.java
  14. +3
    -1
      mallinkService/src/main/java/com/iformall/service/WxShopService.java
  15. +15
    -1
      mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java
  16. +14
    -0
      mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java
  17. +220
    -308
      mallinkService/src/main/java/com/iformall/service/impl/DataTowerServiceImpl.java
  18. +3
    -5
      mallinkService/src/main/java/com/iformall/service/impl/MarkingDataReportServiceImpl.java
  19. +21
    -31
      mallinkService/src/main/java/com/iformall/service/impl/WxChartServiceImpl.java
  20. +11
    -7
      mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java
  21. +12
    -8
      mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java
  22. +5
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxMallServiceImpl.java
  23. +15
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java
  24. +21
    -6
      mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java
  25. +24
    -22
      mallinkService/src/main/resources/mapper/WxCarCmdLogMapper.xml
  26. +1
    -1
      mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml
  27. +1
    -7
      mallinkService/src/main/resources/mapper/WxMallMapper.xml
  28. +7
    -3
      mallinkService/src/main/resources/mapper/WxRentContractMapper.xml
  29. +7
    -0
      mallinkService/src/main/resources/mapper/WxShopMapper.xml
  30. +54
    -0
      mallinkService/src/main/resources/mapper/wxChartDataMapper.xml

+ 0
- 10
mallinkAdmin/src/main/java/com/iformall/controller/mem/WxCUserDataController.java View File

@@ -145,11 +145,6 @@ public class WxCUserDataController extends BaseController {
plat = EnumAppPlat.WX.getCode(); plat = EnumAppPlat.WX.getCode();
} }
TenantEntity tenantEntity = getTenantInfo(); TenantEntity tenantEntity = getTenantInfo();
if(StringUtils.isBlank(tenantEntity.getTenantId())){
//todo 集团版查询数据待重构
return new ResultData("集团版查询数据待重构");
}
// List<TenantEntity> tenantEntitys = wxMallService.getTenantEntitys(tenantEntity);
WxCUserBasicInfoDto dto = new WxCUserBasicInfoDto(); WxCUserBasicInfoDto dto = new WxCUserBasicInfoDto();
dto.updateTenantInfo(tenantEntity); dto.updateTenantInfo(tenantEntity);
long allCount = cuserFactory.getCUserService(EnumAppPlat.getByCode(plat)).findCount(dto); long allCount = cuserFactory.getCUserService(EnumAppPlat.getByCode(plat)).findCount(dto);
@@ -176,11 +171,6 @@ public class WxCUserDataController extends BaseController {
public ResultData findBasicUserAddCount() { public ResultData findBasicUserAddCount() {
logger.debug("[" + getIpAddr() + "] WxCUserDataController::findBasicUserAddCount"); logger.debug("[" + getIpAddr() + "] WxCUserDataController::findBasicUserAddCount");
TenantEntity tenantEntity = getTenantInfo(); TenantEntity tenantEntity = getTenantInfo();
if(StringUtils.isBlank(tenantEntity.getTenantId())){
//todo 集团版查询数据待重构
return new ResultData("集团版查询数据待重构");
}
// List<TenantEntity> tenantEntitys = wxMallService.getTenantEntitys(tenantEntity);
WxCUserBasicInfoDto dto = new WxCUserBasicInfoDto(); WxCUserBasicInfoDto dto = new WxCUserBasicInfoDto();
dto.updateTenantInfo(tenantEntity); dto.updateTenantInfo(tenantEntity);
long allCount = wxCUserBasicInfoService.findCount(dto); long allCount = wxCUserBasicInfoService.findCount(dto);


+ 30
- 31
mallinkSchedule/src/main/java/com/iformall/schedule/ChartDataSchedule.java View File

@@ -70,7 +70,6 @@ public class ChartDataSchedule {
*/ */
public void createCarData() { public void createCarData() {
HashMap<String, Object> params = new HashMap<>(); HashMap<String, Object> params = new HashMap<>();
params.put("cmdType", EnumCarCmd.CAR_ETCP_CALLBACK_PARK_OUT.getCode());
Date createtime = new Date(); Date createtime = new Date();
String startdate = DateUtils.getTimeBefore(1, createtime); String startdate = DateUtils.getTimeBefore(1, createtime);
Date date = DateUtils.stringToDate(startdate); Date date = DateUtils.stringToDate(startdate);
@@ -85,35 +84,41 @@ public class ChartDataSchedule {
TenantEntity tenantEntity = wxMall.getTenantInfo(); TenantEntity tenantEntity = wxMall.getTenantInfo();
params.put("tenantId", tenantEntity.getTenantId()); params.put("tenantId", tenantEntity.getTenantId());
params.put("finalTenantId", tenantEntity.getFinalTenantId()); params.put("finalTenantId", tenantEntity.getFinalTenantId());
if (StringUtils.isNotBlank(tenantEntity.getParentTenantId())) {
params.put("parentTenantId", wxMall.getTenantId());
}
wxChartDataEntity.updateTenantInfo(tenantEntity); wxChartDataEntity.updateTenantInfo(tenantEntity);
wxChartDataEntity.setType(EnumChartType.CAR_OUT.getCode());
wxChartDataEntity.setType(EnumChartType.CAR_IN.getCode());
int count = wxChartDataMapper.selectCount(new QueryWrapper(wxChartDataEntity)); int count = wxChartDataMapper.selectCount(new QueryWrapper(wxChartDataEntity));
if (count == 0) {
logger.info("入场车数>>>>>>>>>>>>>>>>>>>>>>>>>>");
params.put("cmdTypes",EnumCarCmd.getCarIn());
carInData(params, createtime, date, tenantEntity);
}
wxChartDataEntity.setType(EnumChartType.CAR_OUT.getCode());
count = wxChartDataMapper.selectCount(new QueryWrapper(wxChartDataEntity));
if (count == 0) { if (count == 0) {
logger.info("出场车数>>>>>>>>>>>>>>>>>>>>>>>>>>"); logger.info("出场车数>>>>>>>>>>>>>>>>>>>>>>>>>>");
params.put("cmdTypes",EnumCarCmd.getCarOut());
carOutData(params, createtime, date, tenantEntity); carOutData(params, createtime, date, tenantEntity);
} }
wxChartDataEntity.setType(EnumChartType.CAR_PAID.getCode()); wxChartDataEntity.setType(EnumChartType.CAR_PAID.getCode());
count = wxChartDataMapper.selectCount(new QueryWrapper(wxChartDataEntity)); count = wxChartDataMapper.selectCount(new QueryWrapper(wxChartDataEntity));
if (count == 0) { if (count == 0) {
params.put("cmdType", EnumCarCmd.CAR_ETCP_CALLBACK_PAY_MANUAL.getCode());
logger.info("缴费车辆>>>>>>>>>>>>>>>>>>>>>>>>>>"); logger.info("缴费车辆>>>>>>>>>>>>>>>>>>>>>>>>>>");
params.put("cmdTypes", EnumCarCmd.getCarPay());
carPaidData(params, createtime, date, tenantEntity); carPaidData(params, createtime, date, tenantEntity);
} }
wxChartDataEntity.setType(EnumChartType.CAR_PAY_FEE.getCode()); wxChartDataEntity.setType(EnumChartType.CAR_PAY_FEE.getCode());
count = wxChartDataMapper.selectCount(new QueryWrapper(wxChartDataEntity)); count = wxChartDataMapper.selectCount(new QueryWrapper(wxChartDataEntity));
if (count == 0) { if (count == 0) {
logger.info("缴费金额>>>>>>>>>>>>>>>>>>>>>>>>>>"); logger.info("缴费金额>>>>>>>>>>>>>>>>>>>>>>>>>>");
params.put("cmdTypes", EnumCarCmd.getCarPay());
carPayFeeData(params, createtime, date, tenantEntity); carPayFeeData(params, createtime, date, tenantEntity);
} }
wxChartDataEntity.setType(EnumChartType.CAR_MEMBER.getCode());
count = wxChartDataMapper.selectCount(new QueryWrapper(wxChartDataEntity));
if (count == 0) {
logger.info("新增会员>>>>>>>>>>>>>>>>>>>>>>>>>>");
carMemberData(params, createtime, date, tenantEntity);
}
// wxChartDataEntity.setType(EnumChartType.CAR_MEMBER.getCode());
// count = wxChartDataMapper.selectCount(new QueryWrapper(wxChartDataEntity));
// if (count == 0) {
// logger.info("新增会员>>>>>>>>>>>>>>>>>>>>>>>>>>");
// carMemberData(params, createtime, date, tenantEntity);
// }
wxChartDataEntity.setType(EnumChartType.CAR_NEW_MEMBER.getCode()); wxChartDataEntity.setType(EnumChartType.CAR_NEW_MEMBER.getCode());
count = wxChartDataMapper.selectCount(new QueryWrapper(wxChartDataEntity)); count = wxChartDataMapper.selectCount(new QueryWrapper(wxChartDataEntity));
if (count == 0) { if (count == 0) {
@@ -210,46 +215,40 @@ public class ChartDataSchedule {
} }


public void carNewMemberData(Date createtime, Date date, TenantEntity tenantEntity) { public void carNewMemberData(Date createtime, Date date, TenantEntity tenantEntity) {
// List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(tenantEntity);
WxCUserBasicInfoDto wxCUserBasicInfoDto = new WxCUserBasicInfoDto(); WxCUserBasicInfoDto wxCUserBasicInfoDto = new WxCUserBasicInfoDto();
wxCUserBasicInfoDto.updateTenantInfo(tenantEntity); wxCUserBasicInfoDto.updateTenantInfo(tenantEntity);
wxCUserBasicInfoDto.setFinalTenantId(tenantEntity.getFinalTenantId());
wxCUserBasicInfoDto.setStartTime(date); wxCUserBasicInfoDto.setStartTime(date);
wxCUserBasicInfoDto.setEndTime(date); wxCUserBasicInfoDto.setEndTime(date);
Integer carUserCount = wxCUserCarService.countUser(wxCUserBasicInfoDto); Integer carUserCount = wxCUserCarService.countUser(wxCUserBasicInfoDto);
addChartData(tenantEntity, carUserCount.toString(), EnumChartType.CAR_NEW_MEMBER.getCode(), date, createtime); addChartData(tenantEntity, carUserCount.toString(), EnumChartType.CAR_NEW_MEMBER.getCode(), date, createtime);
} }


public void carMemberData(HashMap<String, Object> params, Date createtime, Date date, TenantEntity tenantEntity) {
params.put("finalTenantId",tenantEntity.getFinalTenantId());
List<Map<String, Object>> carCountHistory = wxCUserCarMapper.queryCarCountHistory(params);
Long userCount = carCountHistory.isEmpty() ? 0L : (Long) carCountHistory.get(0).get("count");
addChartData(tenantEntity, userCount.toString(), EnumChartType.CAR_MEMBER.getCode(), date, createtime);
}
// public void carMemberData(HashMap<String, Object> params, Date createtime, Date date, TenantEntity tenantEntity) {
// List<Map<String, Object>> carCountHistory = wxCUserCarMapper.queryCarCountHistory(params);
// Long userCount = carCountHistory.isEmpty() ? 0L : (Long) carCountHistory.get(0).get("count");
// addChartData(tenantEntity, userCount.toString(), EnumChartType.CAR_MEMBER.getCode(), date, createtime);
// }


public void carPayFeeData(HashMap<String, Object> params, Date createtime, Date date, TenantEntity tenantEntity) { public void carPayFeeData(HashMap<String, Object> params, Date createtime, Date date, TenantEntity tenantEntity) {
List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(tenantEntity);
params.put("tenantEntitys",tenantEntitys);
List<Map<String, Object>> weekCarPayHistoryList = wxCarCmdLogMapper.queryWeekCarPay(params);
BigDecimal fee = weekCarPayHistoryList.isEmpty() ? new BigDecimal(0) : (BigDecimal) weekCarPayHistoryList.get(0).get("fee");
BigDecimal fee = wxCarCmdLogMapper.queryCarPay(params);
addChartData(tenantEntity, fee.toString(), EnumChartType.CAR_PAY_FEE.getCode(), date, createtime); addChartData(tenantEntity, fee.toString(), EnumChartType.CAR_PAY_FEE.getCode(), date, createtime);
} }


public void carPaidData(HashMap<String, Object> params, Date createtime, Date date, TenantEntity tenantEntity) { public void carPaidData(HashMap<String, Object> params, Date createtime, Date date, TenantEntity tenantEntity) {
List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(tenantEntity);
params.put("tenantEntitys",tenantEntitys);
Long carPayFeeCount = wxCarCmdLogMapper.queryWeekCarPayCount(params);
Long carPayFeeCount = wxCarCmdLogMapper.queryHistoryCount(params);
addChartData(tenantEntity, carPayFeeCount.toString(), EnumChartType.CAR_PAID.getCode(), date, createtime); addChartData(tenantEntity, carPayFeeCount.toString(), EnumChartType.CAR_PAID.getCode(), date, createtime);
} }


public void carOutData(HashMap<String, Object> params, Date createtime, Date date, TenantEntity tenantEntity) { public void carOutData(HashMap<String, Object> params, Date createtime, Date date, TenantEntity tenantEntity) {
List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(tenantEntity);
params.put("tenantEntitys",tenantEntitys);
List<Map<String, Object>> historylist = wxCarCmdLogMapper.queryHistory(params);
Long carOutCount = historylist.isEmpty() ? 0L : (Long) historylist.get(0).get("carcount");
Long carOutCount = wxCarCmdLogMapper.queryHistoryCount(params);
addChartData(tenantEntity, carOutCount.toString(), EnumChartType.CAR_OUT.getCode(), date, createtime); addChartData(tenantEntity, carOutCount.toString(), EnumChartType.CAR_OUT.getCode(), date, createtime);
} }


public void carInData(HashMap<String, Object> params, Date createtime, Date date, TenantEntity tenantEntity) {
Long carOutCount = wxCarCmdLogMapper.queryHistoryCount(params);
addChartData(tenantEntity, carOutCount.toString(), EnumChartType.CAR_IN.getCode(), date, createtime);
}

private void addChartData(TenantEntity tenantEntity, String result, Integer type, Date querytime, Date createtime) { private void addChartData(TenantEntity tenantEntity, String result, Integer type, Date querytime, Date createtime) {
logger.info("即将插入数据>>>>>>>>>>>>>>>>>>>>>>>"); logger.info("即将插入数据>>>>>>>>>>>>>>>>>>>>>>>");
final IdWorker idWorker = IdWorker.get(); final IdWorker idWorker = IdWorker.get();


+ 6
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxChartDataEntity.java View File

@@ -1,5 +1,6 @@
package com.iformall.domain.po; package com.iformall.domain.po;


import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName; import com.baomidou.mybatisplus.annotation.TableName;
import com.iformall.domain.po.base.TenantEntity; import com.iformall.domain.po.base.TenantEntity;
import lombok.Data; import lombok.Data;
@@ -34,4 +35,9 @@ public class WxChartDataEntity extends TenantEntity {
.append('}'); .append('}');
return sb.toString(); return sb.toString();
} }

@TableField(exist = false)
private Date startTime;
@TableField(exist = false)
private Date endTime;
} }

+ 47
- 6
mallinkService/src/main/java/com/iformall/enums/EnumCarCmd.java View File

@@ -1,5 +1,8 @@
package com.iformall.enums; package com.iformall.enums;


import java.util.ArrayList;
import java.util.List;

/** /**
* Created by Stormeye on 2018/08/09. * Created by Stormeye on 2018/08/09.
*/ */
@@ -11,23 +14,27 @@ public enum EnumCarCmd {
CAR_ETCP_CALLBACK_UNBIND(603, "ETCP车辆解绑通知"), CAR_ETCP_CALLBACK_UNBIND(603, "ETCP车辆解绑通知"),
CAR_ETCP_CALLBACK_PAY_MANUAL(604, "ETCP支付结果通知"), CAR_ETCP_CALLBACK_PAY_MANUAL(604, "ETCP支付结果通知"),
CAR_ETCP_CALLBACK_UNPAY(605, "ETCP停车费获取"), CAR_ETCP_CALLBACK_UNPAY(605, "ETCP停车费获取"),

CAR_TJD_CALLBACK_REGISTER(610, "停简单注册车牌"), CAR_TJD_CALLBACK_REGISTER(610, "停简单注册车牌"),
CAR_TJD_CALLBACK_PARK_IN(611, "停简单进场通知"), CAR_TJD_CALLBACK_PARK_IN(611, "停简单进场通知"),
CAR_TJD_CALLBACK_PARK_OUT(612, "停简单离场通知"), CAR_TJD_CALLBACK_PARK_OUT(612, "停简单离场通知"),
CAR_TJD_CALLBACK_PAID(613, "停简单支付通知"), CAR_TJD_CALLBACK_PAID(613, "停简单支付通知"),
CAR_TJD_CALLBACK_REFUND(614, "停简单退款通知"), CAR_TJD_CALLBACK_REFUND(614, "停简单退款通知"),

CAR_CYF_CALLBACK_PARK_IN(620,"车易付进场通知"), CAR_CYF_CALLBACK_PARK_IN(620,"车易付进场通知"),
CAR_CYF_CALLBACK_PARK_OUT(621,"车易付场通知"),
CAR_CYF_CALLBACK_PARK_OUT(621,"车易付场通知"),
CAR_CYF_CALLBACK_UNBIND(622,"车易付解绑车牌通知"), CAR_CYF_CALLBACK_UNBIND(622,"车易付解绑车牌通知"),
CAR_CYF_CALLBACK_PAID(623,"车易付支付通知"), CAR_CYF_CALLBACK_PAID(623,"车易付支付通知"),

CAR_JIESHUN_CALLBACK_PARK_IN(624,"捷顺进场通知"), CAR_JIESHUN_CALLBACK_PARK_IN(624,"捷顺进场通知"),
CAR_JIESHUN_CALLBACK_PARK_OUT(625,"捷顺场通知"),
CAR_JIESHUN_CALLBACK_PARK_OUT(625,"捷顺场通知"),
CAR_JIESHUN_CALLBACK_UNBIND(626,"捷顺解绑车牌通知"), CAR_JIESHUN_CALLBACK_UNBIND(626,"捷顺解绑车牌通知"),
CAR_JIESHUN_CALLBACK_PAID(627,"捷顺支付通知"), CAR_JIESHUN_CALLBACK_PAID(627,"捷顺支付通知"),
CAR_HAIKANGWEISHI_CALLBACK_PARK_IN(628,"捷顺进场通知"),
CAR_HAIKANGWEISHI_CALLBACK_PARK_OUT(629,"捷顺进场通知"),
CAR_HAIKANGWEISHI_CALLBACK_UNBIND(630,"捷顺解绑车牌通知"),
CAR_HAIKANGWEISHI_CALLBACK_PAID(631,"捷顺支付通知")

CAR_HAIKANGWEISHI_CALLBACK_PARK_IN(628,"海康进场通知"),
CAR_HAIKANGWEISHI_CALLBACK_PARK_OUT(629,"海康出场通知"),
CAR_HAIKANGWEISHI_CALLBACK_UNBIND(630,"海康解绑车牌通知"),
CAR_HAIKANGWEISHI_CALLBACK_PAID(631,"海康支付通知")
; ;


public static EnumCarCmd getEnum(Integer code) { public static EnumCarCmd getEnum(Integer code) {
@@ -39,6 +46,39 @@ public enum EnumCarCmd {
return null; return null;
} }


//获取入场标识
public static List<Integer> getCarIn(){
List<Integer> list = new ArrayList<>();
list.add(CAR_ETCP_CALLBACK_PARK_IN.getCode());
list.add(CAR_TJD_CALLBACK_PARK_IN.getCode());
list.add(CAR_CYF_CALLBACK_PARK_IN.getCode());
list.add(CAR_JIESHUN_CALLBACK_PARK_IN.getCode());
list.add(CAR_HAIKANGWEISHI_CALLBACK_PARK_IN.getCode());
return list;
}

//获取出场标识
public static List<Integer> getCarOut(){
List<Integer> list = new ArrayList<>();
list.add(CAR_ETCP_CALLBACK_PARK_OUT.getCode());
list.add(CAR_TJD_CALLBACK_PARK_OUT.getCode());
list.add(CAR_CYF_CALLBACK_PARK_OUT.getCode());
list.add(CAR_JIESHUN_CALLBACK_PARK_OUT.getCode());
list.add(CAR_HAIKANGWEISHI_CALLBACK_PARK_OUT.getCode());
return list;
}

//获取支付标识
public static List<Integer> getCarPay(){
List<Integer> list = new ArrayList<>();
list.add(CAR_ETCP_CALLBACK_PAY_MANUAL.getCode());
list.add(CAR_TJD_CALLBACK_PAID.getCode());
list.add(CAR_CYF_CALLBACK_PAID.getCode());
list.add(CAR_JIESHUN_CALLBACK_PAID.getCode());
list.add(CAR_HAIKANGWEISHI_CALLBACK_PAID.getCode());
return list;
}

private Integer code; private Integer code;
private String message; private String message;


@@ -54,4 +94,5 @@ public enum EnumCarCmd {
public String getMessage() { public String getMessage() {
return message; return message;
} }

} }

+ 2
- 1
mallinkService/src/main/java/com/iformall/enums/EnumChartType.java View File

@@ -4,10 +4,11 @@ package com.iformall.enums;
* Created by Stormeye on 2018/08/09. * Created by Stormeye on 2018/08/09.
*/ */
public enum EnumChartType { public enum EnumChartType {
CAR_IN(10,"入场车辆"),
CAR_OUT(1, "出场车辆"), CAR_OUT(1, "出场车辆"),
CAR_PAID(2, "缴费车辆"), CAR_PAID(2, "缴费车辆"),
CAR_PAY_FEE(3, "缴费金额"), CAR_PAY_FEE(3, "缴费金额"),
CAR_MEMBER(4, "新增会员"),
// CAR_MEMBER(4, "新增会员"),
CAR_NEW_MEMBER(5, "新增停车会员"), CAR_NEW_MEMBER(5, "新增停车会员"),
CAR_BIND(6, "已绑车辆"), CAR_BIND(6, "已绑车辆"),
SALE_COUPON_PRICE(8, "销售总交易额"), SALE_COUPON_PRICE(8, "销售总交易额"),


+ 4
- 4
mallinkService/src/main/java/com/iformall/mapper/WxCarCmdLogMapper.java View File

@@ -3,6 +3,8 @@ package com.iformall.mapper;
import com.iformall.common.CommonMapper; import com.iformall.common.CommonMapper;
import com.iformall.domain.po.WxCarCmdLog; import com.iformall.domain.po.WxCarCmdLog;
import com.iformall.domain.vo.MarkingSceneDataVo; import com.iformall.domain.vo.MarkingSceneDataVo;

import java.math.BigDecimal;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@@ -19,19 +21,17 @@ public interface WxCarCmdLogMapper extends CommonMapper<WxCarCmdLog, Long> {
List<WxCarCmdLog> findList(WxCarCmdLog wxCarCmdLog); List<WxCarCmdLog> findList(WxCarCmdLog wxCarCmdLog);


List<Map<String, Object>> queryHistory(HashMap<String, Object> params); List<Map<String, Object>> queryHistory(HashMap<String, Object> params);
long queryHistoryCount(HashMap<String, Object> params);


List<Map<String, Object>> queryTodayCar(HashMap<String, Object> params); List<Map<String, Object>> queryTodayCar(HashMap<String, Object> params);


List<Map<String, Object>> queryWeekCarPay(HashMap<String,Object> params); List<Map<String, Object>> queryWeekCarPay(HashMap<String,Object> params);
BigDecimal queryCarPay(HashMap<String,Object> params);


List<MarkingSceneDataVo> queryForSceneRepotyHistoryCar(HashMap<String,Object> params); List<MarkingSceneDataVo> queryForSceneRepotyHistoryCar(HashMap<String,Object> params);


List<Map<String,Object>> queryPlateNumberList(Map<String,Object> carParams);

List<WxCarCmdLog> queryTenantInfoBySynId(WxCarCmdLog wxCarCmdLog); List<WxCarCmdLog> queryTenantInfoBySynId(WxCarCmdLog wxCarCmdLog);


Long queryWeekCarPayCount(HashMap<String,Object> params);

WxCarCmdLog queryByOrderId(WxCarCmdLog carCmdLog); WxCarCmdLog queryByOrderId(WxCarCmdLog carCmdLog);


WxCarCmdLog queryBySynId(HashMap<String,Object> params); WxCarCmdLog queryBySynId(HashMap<String,Object> params);


+ 5
- 0
mallinkService/src/main/java/com/iformall/mapper/WxChartDataMapper.java View File

@@ -3,5 +3,10 @@ package com.iformall.mapper;
import com.iformall.common.CommonMapper; import com.iformall.common.CommonMapper;
import com.iformall.domain.po.WxChartDataEntity; import com.iformall.domain.po.WxChartDataEntity;


import java.util.List;

public interface WxChartDataMapper extends CommonMapper<WxChartDataEntity, Long> { public interface WxChartDataMapper extends CommonMapper<WxChartDataEntity, Long> {

List<WxChartDataEntity> findList(WxChartDataEntity chartData);

} }

+ 2
- 3
mallinkService/src/main/java/com/iformall/mapper/WxRentContractMapper.java View File

@@ -16,8 +16,6 @@ public interface WxRentContractMapper extends CommonMapper<WxRentContract, Long>


List<WxRentContract> findList(WxRentContract wxRentContract); List<WxRentContract> findList(WxRentContract wxRentContract);


int queryRentContractCountByStatus(WxRentContract wxRentContract);

void updateStatusForUnsign(WxRentContract wxRentContract); void updateStatusForUnsign(WxRentContract wxRentContract);


void updateApplyStatus(WxRentContract wxRentContract); void updateApplyStatus(WxRentContract wxRentContract);
@@ -60,5 +58,6 @@ public interface WxRentContractMapper extends CommonMapper<WxRentContract, Long>
List<Map<String, Object>> currentValidByMerchantId(WxRentContract rentContract); List<Map<String, Object>> currentValidByMerchantId(WxRentContract rentContract);
List<Long> getUsedRentShopIds(WxRentContract wxRentContract); List<Long> getUsedRentShopIds(WxRentContract wxRentContract);

long findCount(WxRentContract wxRentContract);
} }

+ 1
- 0
mallinkService/src/main/java/com/iformall/mapper/WxShopMapper.java View File

@@ -47,4 +47,5 @@ public interface WxShopMapper extends CommonMapper<WxShop, String> {


List<WxShopVo> newFindShopVoList(@Param("tenantId")String tenantId, @Param("shopIds")List<Long> shopIds); List<WxShopVo> newFindShopVoList(@Param("tenantId")String tenantId, @Param("shopIds")List<Long> shopIds);


long findCount(WxShop wxShop);
} }

+ 2
- 2
mallinkService/src/main/java/com/iformall/service/DataTowerService.java View File

@@ -13,10 +13,10 @@ public interface DataTowerService {


/** /**
* 把这个接口拆开 * 把这个接口拆开
* @param tenantEntity
* @param
* @return * @return
*/ */
Map<String,Object> queryRunning(TenantEntity tenantEntity);
// Map<String,Object> queryRunning(TenantEntity tenantEntity);
Map<String, Object> queryOccupancyRate(TenantEntity tenantInfo); Map<String, Object> queryOccupancyRate(TenantEntity tenantInfo);
Map<String, Object> queryRentCollectionRate(TenantEntity tenantInfo); Map<String, Object> queryRentCollectionRate(TenantEntity tenantInfo);
Map<String, Object> queryDeclarationRate(TenantEntity tenantInfo); Map<String, Object> queryDeclarationRate(TenantEntity tenantInfo);


+ 1
- 1
mallinkService/src/main/java/com/iformall/service/WxCouponChannelService.java View File

@@ -54,7 +54,7 @@ public interface WxCouponChannelService {


ResultData change(WxCouponChannel wxCouponChannel); ResultData change(WxCouponChannel wxCouponChannel);


int countCoupon(WxCouponChannel wxCouponChannel, List<TenantEntity> tenantEntitys);
int countCoupon(WxCouponChannel wxCouponChannel);


List<WxCouponChannelVo> newfindListVo(WxCouponChannel wxCouponChannel); List<WxCouponChannelVo> newfindListVo(WxCouponChannel wxCouponChannel);




+ 1
- 1
mallinkService/src/main/java/com/iformall/service/WxCouponOrderService.java View File

@@ -212,7 +212,7 @@ public interface WxCouponOrderService {
*/ */
Integer shangAnVerify(Long couponOrderId,TenantEntity tenantinfo); Integer shangAnVerify(Long couponOrderId,TenantEntity tenantinfo);


int findCount(WxCouponOrder wxCouponOrder,List<TenantEntity> tenantEntitys);
int findCount(WxCouponOrder wxCouponOrder);


void statisticsWriteOff(WxCouponOrder wxCouponOrder, Map<String, Object> resultMap); void statisticsWriteOff(WxCouponOrder wxCouponOrder, Map<String, Object> resultMap);




+ 2
- 0
mallinkService/src/main/java/com/iformall/service/WxRentContractService.java View File

@@ -129,4 +129,6 @@ public interface WxRentContractService {
Map<String, Object> findRentByShop(Long shopId); Map<String, Object> findRentByShop(Long shopId);


Map<String, Object> currentValidByMerchantId(TenantEntity tenantInfo, Long merchantId,String shopNumber); Map<String, Object> currentValidByMerchantId(TenantEntity tenantInfo, Long merchantId,String shopNumber);

long findCount(WxRentContract wxRentContract);
} }

+ 3
- 1
mallinkService/src/main/java/com/iformall/service/WxShopService.java View File

@@ -31,6 +31,8 @@ public interface WxShopService {
PageInfo<Map<String,Object>> listMapAsPage(WxShop record, Integer pageIndex, Integer pageSize); PageInfo<Map<String,Object>> listMapAsPage(WxShop record, Integer pageIndex, Integer pageSize);


PageInfo<Map<String,Object>> notRentListMapAsPage(WxShop record,Integer pageIndex,Integer pageSize); PageInfo<Map<String,Object>> notRentListMapAsPage(WxShop record,Integer pageIndex,Integer pageSize);

long findCount(WxShop wxShop);
List<WxShopVo> findListWithMerchantMap(WxShop record); List<WxShopVo> findListWithMerchantMap(WxShop record);


@@ -101,5 +103,5 @@ public interface WxShopService {
*/ */
Map<Long,List<WxShopVo>> findMerchantShopVoListMap(TenantEntity tenantEntity, List<Long> merchantIds); Map<Long,List<WxShopVo>> findMerchantShopVoListMap(TenantEntity tenantEntity, List<Long> merchantIds);
List<WxShopVo> findMerchantShopVoList(TenantEntity tenantEntity,Long merchantId); List<WxShopVo> findMerchantShopVoList(TenantEntity tenantEntity,Long merchantId);
} }

+ 15
- 1
mallinkService/src/main/java/com/iformall/service/cuser/tt/TtCUserServiceAdapter.java View File

@@ -19,6 +19,7 @@ import com.iformall.enums.EnumAssignTagsTrigger;
import com.iformall.enums.EnumYesOrNo; import com.iformall.enums.EnumYesOrNo;
import com.iformall.exception.MallinkException; import com.iformall.exception.MallinkException;
import com.iformall.mapper.TtCUserMapper; import com.iformall.mapper.TtCUserMapper;
import com.iformall.mapper.WxMallMapper;
import com.iformall.service.WxAppinfoService; import com.iformall.service.WxAppinfoService;
import com.iformall.service.WxCUserBasicInfoService; import com.iformall.service.WxCUserBasicInfoService;
import com.iformall.service.WxCUserTagsService; import com.iformall.service.WxCUserTagsService;
@@ -53,7 +54,10 @@ public class TtCUserServiceAdapter extends BasicCUserService implements CUserSer
private WxAppinfoService wxAppinfoService; private WxAppinfoService wxAppinfoService;


@Autowired @Autowired
TtCUserMapper ttCUserMapper;
private TtCUserMapper ttCUserMapper;

@Autowired
private WxMallMapper wxMallMapper;


@Autowired @Autowired
MaUtil maUtil; MaUtil maUtil;
@@ -302,6 +306,16 @@ public class TtCUserServiceAdapter extends BasicCUserService implements CUserSer


@Override @Override
public long findCount(WxCUserBasicInfoDto dto) { public long findCount(WxCUserBasicInfoDto dto) {
if(StringUtils.isBlank(dto.getTenantId())
&& StringUtils.isNotBlank(dto.getParentTenantId())){
List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(dto);
long count = 0l;
for (TenantEntity tenantEntity:tenantEntitys) {
dto.updateTenantInfo(tenantEntity);
count += ttCUserMapper.findCount(dto);
}
return count;
}
return ttCUserMapper.findCount(dto); return ttCUserMapper.findCount(dto);
} }




+ 14
- 0
mallinkService/src/main/java/com/iformall/service/cuser/wx/WxCUserServiceAdapter.java View File

@@ -15,6 +15,7 @@ import com.iformall.domain.vo.UserStructureVo;
import com.iformall.enums.EnumAppPlat; import com.iformall.enums.EnumAppPlat;
import com.iformall.enums.EnumAssignTagsTrigger; import com.iformall.enums.EnumAssignTagsTrigger;
import com.iformall.enums.EnumYesOrNo; import com.iformall.enums.EnumYesOrNo;
import com.iformall.mapper.WxMallMapper;
import com.iformall.service.WxAppinfoService; import com.iformall.service.WxAppinfoService;
import com.iformall.service.WxCUserBasicInfoService; import com.iformall.service.WxCUserBasicInfoService;
import com.iformall.service.WxCUserTagsService; import com.iformall.service.WxCUserTagsService;
@@ -60,6 +61,9 @@ public class WxCUserServiceAdapter extends BasicCUserService implements CUserSer
@Autowired @Autowired
private WxCUserMapper wxCUserMapper; private WxCUserMapper wxCUserMapper;


@Autowired
private WxMallMapper wxMallMapper;

@Autowired @Autowired
MaUtil maUtil; MaUtil maUtil;
@@ -310,6 +314,16 @@ public class WxCUserServiceAdapter extends BasicCUserService implements CUserSer


@Override @Override
public long findCount(WxCUserBasicInfoDto dto) { public long findCount(WxCUserBasicInfoDto dto) {
if(StringUtils.isBlank(dto.getTenantId())
&& StringUtils.isNotBlank(dto.getParentTenantId())){
List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(dto);
long count = 0l;
for (TenantEntity tenantEntity:tenantEntitys) {
dto.updateTenantInfo(tenantEntity);
count += wxCUserMapper.findCount(dto);
}
return count;
}
return wxCUserMapper.findCount(dto); return wxCUserMapper.findCount(dto);
} }




+ 220
- 308
mallinkService/src/main/java/com/iformall/service/impl/DataTowerServiceImpl.java View File

@@ -13,10 +13,7 @@ import com.iformall.domain.vo.WxBillAll;
import com.iformall.enums.*; import com.iformall.enums.*;
import com.iformall.exception.MallinkException; import com.iformall.exception.MallinkException;
import com.iformall.mapper.*; import com.iformall.mapper.*;
import com.iformall.service.DataTowerService;
import com.iformall.service.WxCUserCarService;
import com.iformall.service.WxCouponChannelService;
import com.iformall.service.WxCouponOrderService;
import com.iformall.service.*;
import com.iformall.sms.wiwide.WiwideEntry; import com.iformall.sms.wiwide.WiwideEntry;
import com.iformall.sms.wiwide.WiwideSercret; import com.iformall.sms.wiwide.WiwideSercret;
import com.iformall.sms.wiwide.WiwideUtil; import com.iformall.sms.wiwide.WiwideUtil;
@@ -43,7 +40,7 @@ public class DataTowerServiceImpl implements DataTowerService {
private final Logger logger = LoggerFactory.getLogger(this.getClass()); private final Logger logger = LoggerFactory.getLogger(this.getClass());


@Autowired @Autowired
WxShopMapper wxShopMapper;
WxShopService wxShopService;


@Autowired @Autowired
WxMerchantMapper wxMerchantMapper; WxMerchantMapper wxMerchantMapper;
@@ -67,7 +64,7 @@ public class DataTowerServiceImpl implements DataTowerService {
WxCouponChannelMapper wxCouponChannelMapper; WxCouponChannelMapper wxCouponChannelMapper;


@Autowired @Autowired
WxRentContractMapper wxRentContractMapper;
WxRentContractService wxRentContractService;


@Autowired @Autowired
WxBillAllMapper wxBillAllMapper; WxBillAllMapper wxBillAllMapper;
@@ -84,6 +81,9 @@ public class DataTowerServiceImpl implements DataTowerService {
@Autowired @Autowired
private WxMallMapper wxMallMapper; private WxMallMapper wxMallMapper;


@Autowired
private WxChartDataMapper wxChartDataMapper;

@Autowired @Autowired
private WxCouponOrderService wxCouponOrderService; private WxCouponOrderService wxCouponOrderService;


@@ -100,14 +100,12 @@ public class DataTowerServiceImpl implements DataTowerService {
WxShop wxShop = new WxShop(); WxShop wxShop = new WxShop();
wxShop.updateTenantInfo(tenantEntity); wxShop.updateTenantInfo(tenantEntity);
wxShop.setStatus(EnumShopStatus.RENT.getCode()); wxShop.setStatus(EnumShopStatus.RENT.getCode());
List<WxShop> rentedList = wxShopMapper.findList(wxShop);
long rentedCount = wxShopService.findCount(wxShop);
wxShop.setStatus(EnumShopStatus.NOT_RENT.getCode()); wxShop.setStatus(EnumShopStatus.NOT_RENT.getCode());
List<WxShop> unrentedList = wxShopMapper.findList(wxShop);
long unrentedCount = wxShopService.findCount(wxShop);


HashMap<String, Object> shopMap = new HashMap<>(); HashMap<String, Object> shopMap = new HashMap<>();
int rentedCount = rentedList.size();
int unrentedCount = unrentedList.size();
int total = rentedCount + unrentedCount;
long total = rentedCount + unrentedCount;
if (total == 0) { if (total == 0) {
shopMap.put("rentedCount", 0); shopMap.put("rentedCount", 0);
shopMap.put("unrentedCount", 0); shopMap.put("unrentedCount", 0);
@@ -198,68 +196,18 @@ public class DataTowerServiceImpl implements DataTowerService {
} }




//日车流量***********************************************
//日车流量***********************************************
private Map<String, Object> carRunning(TenantEntity tenantEntity) { private Map<String, Object> carRunning(TenantEntity tenantEntity) {
HashMap<String, Object> carMap = new HashMap<>();
// List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(tenantEntity);
HashMap<String, Object> paramsCar = new HashMap<>();
// paramsCar.put("tenantEntitys",tenantEntitys);
paramsCar.put("tenantId", tenantEntity.getTenantId());
if (StringUtils.isNotBlank(tenantEntity.getParentTenantId())) {
paramsCar.put("parentTenantId", tenantEntity.getParentTenantId());
}
paramsCar.put("cmdType", EnumCarCmd.CAR_ETCP_CALLBACK_PARK_IN.getCode());
String startdate = DateUtils.getTimeBefore(30, new Date());
String systemTime = DateUtils.getSystemTime("yyyy-MM-dd");

List<String> tjTimeList = DateUtils.getTjTimeList(startdate, systemTime, "0");

paramsCar.put("startdate", startdate + " 00:00:00");
paramsCar.put("enddate", systemTime + " 23:59:59");

List<Map<String, Object>> historylist = wxCarCmdLogMapper.queryHistory(paramsCar);

Map<Object, Object> collect = historylist.stream().collect(Collectors.toMap(m -> {
return m.get("create_date");
}, m -> {
return m.get("carcount");
}));

TreeMap<Object, Object> historymap = new TreeMap<>();
for (String date : tjTimeList) {
Object o = collect.get(date);
if (o == null) {
historymap.put(date.substring(5).replace("-", "/"), 0L);
} else {
historymap.put(date.substring(5).replace("-", "/"), o);
}
}

long todaycar = (long) historymap.get(DateUtils.getSystemTime("MM/dd"));
carMap.put("carCount", todaycar);

//环比
String yesterday = DateUtils.getTimeBefore(1, new Date());
long yesterdaycar = (long) historymap.get(yesterday.substring(5).replace("-", "/"));
if (yesterdaycar > 0) {
double hbd = (double) (todaycar - yesterdaycar) / yesterdaycar * 100;
double hb = new BigDecimal(hbd).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
carMap.put("increasedPercent", hb+"%");
} else {
carMap.put("increasedPercent", "--");
}

//上周同期
String lastweek = DateUtils.getTimeBefore(7, new Date());
long last = (long) historymap.get(lastweek.substring(5).replace("-", "/"));
if (last > 0) {
double lasthbd = (double) (todaycar - last) / last * 100;
double lasthb = new BigDecimal(lasthbd).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
carMap.put("increasedPercentWeek", lasthb+"%");
} else {
carMap.put("increasedPercentWeek", "--");
}
WxChartDataEntity chartDataQ = new WxChartDataEntity();
chartDataQ.updateTenantInfo(tenantEntity);
chartDataQ.setType(EnumChartType.CAR_OUT.getCode());
//昨日
String date = DateUtils.getTimeBefore(1, new Date());
chartDataQ.setQuerytime(DateUtils.stringToDate(date));
WxChartDataEntity wxChartDataEntity = wxChartDataMapper.selectOne(new QueryWrapper<>(chartDataQ));


HashMap<String, Object> carMap = new HashMap<>();
carMap.put("carCount", wxChartDataEntity==null?0:wxChartDataEntity.getResult());
return carMap; return carMap;
} }


@@ -277,20 +225,19 @@ public class DataTowerServiceImpl implements DataTowerService {
cal.add(Calendar.DAY_OF_YEAR, 1); cal.add(Calendar.DAY_OF_YEAR, 1);
Date endTime = cal.getTime(); Date endTime = cal.getTime();


List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(tenantEntity);
WxCouponOrder wxCouponOrder = new WxCouponOrder(); WxCouponOrder wxCouponOrder = new WxCouponOrder();
//wxCouponOrder.updateTenantInfo(tenantEntity);
wxCouponOrder.updateTenantInfo(tenantEntity);
wxCouponOrder.setStartTime(startTime); wxCouponOrder.setStartTime(startTime);
wxCouponOrder.setEndTime(endTime); wxCouponOrder.setEndTime(endTime);
long orderedCount = wxCouponOrderService.findCount(wxCouponOrder,tenantEntitys);
long orderedCount = wxCouponOrderService.findCount(wxCouponOrder);
wxCouponOrder.setCouponOrderStatus(EnumCouponOrderStatus.COUPON_ORDER_USED.getCode()); wxCouponOrder.setCouponOrderStatus(EnumCouponOrderStatus.COUPON_ORDER_USED.getCode());
long verifiedCount = wxCouponOrderService.findCount(wxCouponOrder,tenantEntitys);
long verifiedCount = wxCouponOrderService.findCount(wxCouponOrder);
couponMap.put("verifiedCount", verifiedCount); couponMap.put("verifiedCount", verifiedCount);
couponMap.put("orderedCount", orderedCount); couponMap.put("orderedCount", orderedCount);
WxCouponChannel wxCouponChannel = new WxCouponChannel(); WxCouponChannel wxCouponChannel = new WxCouponChannel();
// wxCouponChannel.updateTenantInfo(tenantEntity);
wxCouponChannel.updateTenantInfo(tenantEntity);
wxCouponChannel.setStatus(EnumCouponChannelStatus.STATUS_THROW_IN.getCode()); wxCouponChannel.setStatus(EnumCouponChannelStatus.STATUS_THROW_IN.getCode());
long couponCount = wxCouponChannelService.countCoupon(wxCouponChannel,tenantEntitys);
long couponCount = wxCouponChannelService.countCoupon(wxCouponChannel);
couponMap.put("couponCount", couponCount); couponMap.put("couponCount", couponCount);


return couponMap; return couponMap;
@@ -316,22 +263,22 @@ public class DataTowerServiceImpl implements DataTowerService {
//wxRentContract.setStatus(EnumRentContractStatus.WAIT_SIGN.getCode()); //wxRentContract.setStatus(EnumRentContractStatus.WAIT_SIGN.getCode());
//int waitSignCount = wxRentContractMapper.queryRentContractWaitSignStatus(wxRentContract); //int waitSignCount = wxRentContractMapper.queryRentContractWaitSignStatus(wxRentContract);
//contractMap.put("waitSignCount", waitSignCount); //contractMap.put("waitSignCount", waitSignCount);
contractMap.put("waitSignCount", 0);
//contractMap.put("waitSignCount", 0);


//计租中 //计租中
wxRentContract.setStatus(EnumRentContractStatus.PAING.getCode()); wxRentContract.setStatus(EnumRentContractStatus.PAING.getCode());
int rendPaidCount = wxRentContractMapper.queryRentContractCountByStatus(wxRentContract);
long rendPaidCount = wxRentContractService.findCount(wxRentContract);
contractMap.put("rendPaidCount", rendPaidCount); contractMap.put("rendPaidCount", rendPaidCount);


//将到期 //将到期
//wxRentContract.setStatus(EnumRentContractStatus.CONTRACT_END_SOON.getCode()); //wxRentContract.setStatus(EnumRentContractStatus.CONTRACT_END_SOON.getCode());
//int endSoonCount = wxRentContractMapper.queryRentContractEndSoonStatus(wxRentContract); //int endSoonCount = wxRentContractMapper.queryRentContractEndSoonStatus(wxRentContract);
//contractMap.put("endSoonCount", endSoonCount); //contractMap.put("endSoonCount", endSoonCount);
contractMap.put("endSoonCount", 0);
//contractMap.put("endSoonCount", 0);


//到期 //到期
wxRentContract.setStatus(EnumRentContractStatus.OUT_DATE.getCode()); wxRentContract.setStatus(EnumRentContractStatus.OUT_DATE.getCode());
int endCount = wxRentContractMapper.queryRentContractCountByStatus(wxRentContract);
long endCount = wxRentContractService.findCount(wxRentContract);
contractMap.put("endCount", endCount); contractMap.put("endCount", endCount);


return contractMap; return contractMap;
@@ -345,15 +292,9 @@ public class DataTowerServiceImpl implements DataTowerService {
wxMsgConfig.updateTenantInfo(tenantEntity); wxMsgConfig.updateTenantInfo(tenantEntity);
List<WxMsgConfig> wxMsgConfigs = wxMsgConfigMapper.findList(wxMsgConfig); List<WxMsgConfig> wxMsgConfigs = wxMsgConfigMapper.findList(wxMsgConfig);


long usedCount = 0;
long remainsCount = 0;
long totalCount = 0;
if (wxMsgConfigs.size() > 0) {
wxMsgConfig = wxMsgConfigs.get(0);
totalCount = wxMsgConfig.getTotal();
remainsCount = wxMsgConfig.getRemains();
usedCount = totalCount - remainsCount;
}
long totalCount = wxMsgConfigs.stream().map(mc -> mc.getTotal()).reduce(Long::sum).get();
long remainsCount = wxMsgConfigs.stream().map(mc -> mc.getRemains()).reduce(Long::sum).get();
long usedCount = totalCount - remainsCount;


messageMap.put("usedCount", usedCount); messageMap.put("usedCount", usedCount);
messageMap.put("totalCount", totalCount); messageMap.put("totalCount", totalCount);
@@ -422,128 +363,104 @@ public class DataTowerServiceImpl implements DataTowerService {
} }




@Override
public Map<String, Object> queryRunning(TenantEntity tenantEntity) {
WxShop wxShop = new WxShop();
wxShop.updateTenantInfo(tenantEntity);
wxShop.setStatus(EnumShopStatus.RENT.getCode());
List<WxShop> yczlist = wxShopMapper.findList(wxShop);
wxShop.setStatus(EnumShopStatus.NOT_RENT.getCode());
List<WxShop> wczlist = wxShopMapper.findList(wxShop);
//出租与未出租
HashMap<String, Object> datamap = new HashMap<>();
int yczsize = yczlist.size();
int wczsize = wczlist.size();
int size = yczsize + wczsize;
if (size == 0) {
datamap.put("yczsl", 0);
datamap.put("wczsl", 0);
datamap.put("yczl", 0);
datamap.put("wczl", 0);
} else {
datamap.put("yczsl", yczsize);
datamap.put("wczsl", wczsize);
double yczld = ((double) yczsize / size) * 100;
double dczl = new BigDecimal(yczld).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
double wczld = ((double) wczsize / size) * 100;
double wczl = new BigDecimal(wczld).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
datamap.put("yczl", dczl);
datamap.put("wczl", wczl);
}
//租金
Map<String, Object> params = new HashMap<>();
params.put("tenantId", tenantEntity.getTenantId());
if (StringUtils.isNotBlank(tenantEntity.getParentTenantId())) {
params.put("parentTenantId", tenantEntity.getParentTenantId());
}
Calendar instance = Calendar.getInstance();
instance.set(Calendar.DAY_OF_YEAR, 1);
instance.set(Calendar.HOUR_OF_DAY, 0);
instance.set(Calendar.MINUTE, 0);
instance.set(Calendar.SECOND, 0);
String startdate = DateUtils.date2String(instance);
instance.clear();
String enddate = DateUtils.getSystemTime("yyyy-MM-dd HH:mm:ss");
params.put("startdate", startdate);
params.put("enddate", enddate);
Map<String, Object> payinfo = wxBillRentMapper.queryPayInfo(params);
if (payinfo != null) {
BigDecimal receivepay = (BigDecimal) payinfo.get("receivepay");
BigDecimal pay = (BigDecimal) payinfo.get("pay");
if (receivepay.doubleValue() > 0) {
BigDecimal divide = pay.divide(receivepay, 2, BigDecimal.ROUND_HALF_UP);
double zjcjl = divide.multiply(new BigDecimal(100)).doubleValue();
datamap.put("ysje", receivepay);
datamap.put("ssje", pay);
datamap.put("zjsjl", zjcjl);
} else {
datamap.put("ysje", 0);
datamap.put("ssje", 0);
datamap.put("zjsjl", 0);
}
} else {
datamap.put("ysje", 0);
datamap.put("ssje", 0);
datamap.put("zjsjl", 0);
}
//上报
WxMerchant wxMerchant = new WxMerchant();
wxMerchant.updateTenantInfo(tenantEntity);
wxMerchant.setStatus(1);
List<WxMerchant> merchants = wxMerchantMapper.findList(wxMerchant);
WxMerchantTradeDaily wxMerchantTradeDaily = new WxMerchantTradeDaily();
wxMerchantTradeDaily.updateTenantInfo(tenantEntity);
String reportdate = DateUtils.getTimeBefore(1, new Date());
wxMerchantTradeDaily.setReportDate(reportdate);
List<WxMerchantTradeDaily> tradelist = wxMerchantTradeDailyMapper.findList(wxMerchantTradeDaily);
int merchantsize = merchants.size();
int tradesize = tradelist.size();
if (merchantsize > 0 && tradesize > 0) {
double shsbld = ((double) tradesize / merchantsize) * 100;
double shsbl = new BigDecimal(shsbld).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
datamap.put("shsbl", shsbl);
} else {
datamap.put("shsbl", 0);
}
int shsbjg = tradelist.stream().mapToInt(WxMerchantTradeDaily::getTradeAmtInteger).sum();
datamap.put("shsbjg", shsbjg);
return datamap;
}
// @Override
// public Map<String, Object> queryRunning(TenantEntity tenantEntity) {
// WxShop wxShop = new WxShop();
// wxShop.updateTenantInfo(tenantEntity);
// wxShop.setStatus(EnumShopStatus.RENT.getCode());
// List<WxShop> yczlist = wxShopMapper.findList(wxShop);
// wxShop.setStatus(EnumShopStatus.NOT_RENT.getCode());
// List<WxShop> wczlist = wxShopMapper.findList(wxShop);
//
// //出租与未出租
// HashMap<String, Object> datamap = new HashMap<>();
// int yczsize = yczlist.size();
// int wczsize = wczlist.size();
// int size = yczsize + wczsize;
// if (size == 0) {
// datamap.put("yczsl", 0);
// datamap.put("wczsl", 0);
// datamap.put("yczl", 0);
// datamap.put("wczl", 0);
// } else {
// datamap.put("yczsl", yczsize);
// datamap.put("wczsl", wczsize);
// double yczld = ((double) yczsize / size) * 100;
// double dczl = new BigDecimal(yczld).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
// double wczld = ((double) wczsize / size) * 100;
// double wczl = new BigDecimal(wczld).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
// datamap.put("yczl", dczl);
// datamap.put("wczl", wczl);
// }
//
// //租金
// Map<String, Object> params = new HashMap<>();
// params.put("tenantId", tenantEntity.getTenantId());
// if (StringUtils.isNotBlank(tenantEntity.getParentTenantId())) {
// params.put("parentTenantId", tenantEntity.getParentTenantId());
// }
// Calendar instance = Calendar.getInstance();
// instance.set(Calendar.DAY_OF_YEAR, 1);
// instance.set(Calendar.HOUR_OF_DAY, 0);
// instance.set(Calendar.MINUTE, 0);
// instance.set(Calendar.SECOND, 0);
// String startdate = DateUtils.date2String(instance);
// instance.clear();
// String enddate = DateUtils.getSystemTime("yyyy-MM-dd HH:mm:ss");
// params.put("startdate", startdate);
// params.put("enddate", enddate);
// Map<String, Object> payinfo = wxBillRentMapper.queryPayInfo(params);
// if (payinfo != null) {
// BigDecimal receivepay = (BigDecimal) payinfo.get("receivepay");
// BigDecimal pay = (BigDecimal) payinfo.get("pay");
// if (receivepay.doubleValue() > 0) {
// BigDecimal divide = pay.divide(receivepay, 2, BigDecimal.ROUND_HALF_UP);
// double zjcjl = divide.multiply(new BigDecimal(100)).doubleValue();
// datamap.put("ysje", receivepay);
// datamap.put("ssje", pay);
// datamap.put("zjsjl", zjcjl);
// } else {
// datamap.put("ysje", 0);
// datamap.put("ssje", 0);
// datamap.put("zjsjl", 0);
// }
// } else {
// datamap.put("ysje", 0);
// datamap.put("ssje", 0);
// datamap.put("zjsjl", 0);
// }
//
// //上报
// WxMerchant wxMerchant = new WxMerchant();
// wxMerchant.updateTenantInfo(tenantEntity);
// wxMerchant.setStatus(1);
// List<WxMerchant> merchants = wxMerchantMapper.findList(wxMerchant);
//
// WxMerchantTradeDaily wxMerchantTradeDaily = new WxMerchantTradeDaily();
// wxMerchantTradeDaily.updateTenantInfo(tenantEntity);
// String reportdate = DateUtils.getTimeBefore(1, new Date());
// wxMerchantTradeDaily.setReportDate(reportdate);
// List<WxMerchantTradeDaily> tradelist = wxMerchantTradeDailyMapper.findList(wxMerchantTradeDaily);
// int merchantsize = merchants.size();
// int tradesize = tradelist.size();
// if (merchantsize > 0 && tradesize > 0) {
// double shsbld = ((double) tradesize / merchantsize) * 100;
// double shsbl = new BigDecimal(shsbld).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
// datamap.put("shsbl", shsbl);
// } else {
// datamap.put("shsbl", 0);
// }
//
// int shsbjg = tradelist.stream().mapToInt(WxMerchantTradeDaily::getTradeAmtInteger).sum();
// datamap.put("shsbjg", shsbjg);
//
// return datamap;
// }


//出租率 //出租率
@Override @Override
public Map<String, Object> queryOccupancyRate(TenantEntity tenantEntity) { public Map<String, Object> queryOccupancyRate(TenantEntity tenantEntity) {
WxShop wxShop = new WxShop();
wxShop.updateTenantInfo(tenantEntity);
wxShop.setStatus(EnumShopStatus.RENT.getCode());
Integer yczsize = wxShopMapper.selectCount(new QueryWrapper<>(wxShop));
wxShop.setStatus(EnumShopStatus.NOT_RENT.getCode());
Integer wczsize = wxShopMapper.selectCount(new QueryWrapper<>(wxShop));

HashMap<String, Object> datamap = new HashMap<>();
int size = yczsize + wczsize;
if (size == 0) {
datamap.put("yczsl", 0);
datamap.put("wczsl", 0);
datamap.put("yczl", 0);
datamap.put("wczl", 0);
} else {
datamap.put("yczsl", yczsize);
datamap.put("wczsl", wczsize);
double yczld = ((double) yczsize / size) * 100;
double dczl = new BigDecimal(yczld).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
double wczld = ((double) wczsize / size) * 100;
double wczl = new BigDecimal(wczld).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
datamap.put("yczl", dczl);
datamap.put("wczl", wczl);
}
return datamap;
return shopRunning(tenantEntity);
} }


//租金收缴率 //租金收缴率
@@ -611,29 +528,21 @@ public class DataTowerServiceImpl implements DataTowerService {
@Override @Override
public Map<String, Object> queryCar(TenantEntity tenantEntity) { public Map<String, Object> queryCar(TenantEntity tenantEntity) {
logger.info("停车-月统计-开始"); logger.info("停车-月统计-开始");
List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(tenantEntity);

HashMap<String, Object> params = new HashMap<>();
params.put("tenantEntitys",tenantEntitys);
params.put("tenantId", tenantEntity.getTenantId());
if (StringUtils.isNotBlank(tenantEntity.getParentTenantId())) {
params.put("parentTenantId", tenantEntity.getParentTenantId());
}
params.put("cmdType", EnumCarCmd.CAR_ETCP_CALLBACK_PARK_IN.getCode());
String startdate = DateUtils.getTimeBefore(30, new Date()); String startdate = DateUtils.getTimeBefore(30, new Date());
String systemTime = DateUtils.getSystemTime("yyyy-MM-dd");

List<String> tjTimeList = DateUtils.getTjTimeList(startdate, systemTime, "0");

params.put("startdate", startdate + " 00:00:00");
params.put("enddate", systemTime + " 23:59:59");

List<Map<String, Object>> historylist = wxCarCmdLogMapper.queryHistory(params);

Map<Object, Object> collect = historylist.stream().collect(Collectors.toMap(m -> {
return m.get("create_date");
String enddate = DateUtils.getSystemTime("yyyy-MM-dd");

List<String> tjTimeList = DateUtils.getTjTimeList(startdate, enddate, "0");

WxChartDataEntity chartData = new WxChartDataEntity();
chartData.updateTenantInfo(tenantEntity);
chartData.setType(EnumChartType.CAR_IN.getCode());
chartData.setStartTime(DateUtils.stringToDate(startdate));
chartData.setEndTime(DateUtils.stringToDate(enddate));
List<WxChartDataEntity> list = wxChartDataMapper.findList(chartData);
Map<String, String> collect = list.stream().collect(Collectors.toMap(m -> {
return new SimpleDateFormat("yyyy-MM-dd").format(m.getQuerytime());
}, m -> { }, m -> {
return m.get("carcount");
return m.getResult();
})); }));


Map<Object, Object> historymap = new LinkedHashMap<>(); Map<Object, Object> historymap = new LinkedHashMap<>();
@@ -651,30 +560,29 @@ public class DataTowerServiceImpl implements DataTowerService {


// 查询近一周的缴费车辆----start------ // 查询近一周的缴费车辆----start------
logger.info("停车-查询近一周的缴费车辆-开始"); logger.info("停车-查询近一周的缴费车辆-开始");
HashMap<String, Object> weekParams = new HashMap<>();
weekParams.put("tenantEntitys",tenantEntitys);
weekParams.put("tenantId", tenantEntity.getTenantId());
weekParams.put("finalTenantId", tenantEntity.getFinalTenantId());
if (StringUtils.isNotBlank(tenantEntity.getParentTenantId())) {
weekParams.put("parentTenantId", tenantEntity.getParentTenantId());
}
String oneWeekStartdate = DateUtils.getTimeBefore(7, new Date()); String oneWeekStartdate = DateUtils.getTimeBefore(7, new Date());
String oneWeekEndDate = DateUtils.getTimeBefore(1, new Date()); String oneWeekEndDate = DateUtils.getTimeBefore(1, new Date());
weekParams.put("startdate", oneWeekStartdate + " 00:00:00");
weekParams.put("enddate", oneWeekEndDate + " 23:59:59");
weekParams.put("cmdType", EnumCarCmd.CAR_ETCP_CALLBACK_PAY_MANUAL.getCode());
chartData.setType(EnumChartType.CAR_PAID.getCode());
chartData.setStartTime(DateUtils.stringToDate(oneWeekStartdate));
chartData.setEndTime(DateUtils.stringToDate(oneWeekEndDate));
List<WxChartDataEntity> list1 = wxChartDataMapper.findList(chartData);
Map<String, String> collect1 = list1.stream().collect(Collectors.toMap(m -> {
return new SimpleDateFormat("yyyy-MM-dd").format(m.getQuerytime());
}, m -> {
return m.getResult();
}));


datamap.put("oneWeekCarPayCount",wxCarCmdLogMapper.queryWeekCarPayCount(weekParams));
datamap.put("oneWeekCarPayCount",collect1);
logger.info("停车-查询近一周的缴费车辆-结束"); logger.info("停车-查询近一周的缴费车辆-结束");


// 近一周缴费金额 // 近一周缴费金额
logger.info("停车-查询近一周的缴费金额-开始"); logger.info("停车-查询近一周的缴费金额-开始");
weekParams.put("cmdType", EnumCarCmd.CAR_ETCP_CALLBACK_PAY_MANUAL.getCode());
List<Map<String, Object>> weekCarPayHistoryList = wxCarCmdLogMapper.queryWeekCarPay(weekParams);
Map<String, Object> weekCollect = weekCarPayHistoryList.stream().collect(Collectors.toMap(m -> {
return (String)m.get("create_time");
chartData.setType(EnumChartType.CAR_PAY_FEE.getCode());
List<WxChartDataEntity> list2 = wxChartDataMapper.findList(chartData);
Map<String, String> weekCollect = list2.stream().collect(Collectors.toMap(m -> {
return new SimpleDateFormat("yyyy-MM-dd").format(m.getQuerytime());
}, m -> { }, m -> {
return m.get("fee");
return m.getResult();
})); }));
List<String> days = DateUtils.getTjTimeList(oneWeekStartdate, oneWeekEndDate, "0"); List<String> days = DateUtils.getTjTimeList(oneWeekStartdate, oneWeekEndDate, "0");


@@ -693,11 +601,12 @@ public class DataTowerServiceImpl implements DataTowerService {


// 近一周新增会员历史 // 近一周新增会员历史
logger.info("停车-近一周新增会员历史-开始"); logger.info("停车-近一周新增会员历史-开始");
List<Map<String, Object>> carCountHistory = wxCUserCarMapper.queryCarCountHistory(weekParams);
Map<String, Object> weekCarCollect = carCountHistory.stream().collect(Collectors.toMap(m -> {
return (String)m.get("create_time");
chartData.setType(EnumChartType.CAR_NEW_MEMBER.getCode());
List<WxChartDataEntity> list3 = wxChartDataMapper.findList(chartData);
Map<String, String> weekCarCollect = list2.stream().collect(Collectors.toMap(m -> {
return new SimpleDateFormat("yyyy-MM-dd").format(m.getQuerytime());
}, m -> { }, m -> {
return m.get("count");
return m.getResult();
})); }));
TreeMap<String, Object> weekCarMap = new TreeMap<>(); TreeMap<String, Object> weekCarMap = new TreeMap<>();
for (String date:days) { for (String date:days) {
@@ -765,66 +674,69 @@ public class DataTowerServiceImpl implements DataTowerService {
} }
logger.info("停车-上周同期-结束"); logger.info("停车-上周同期-结束");


// 今日
logger.info("停车-今日停车数据-开始");
params.put("startdate", systemTime + " 05:00:00");
params.put("enddate", DateUtils.getSystemTime("yyyy-MM-dd HH:mm:ss"));


List<Map<String, Object>> todayCarlist = wxCarCmdLogMapper.queryTodayCar(params);
Map<Object, Object> todaycollect = todayCarlist.stream().collect(Collectors.toMap(m -> {
return m.get("create_time");
}, m -> {
return m.get("carcount");
}));

Calendar instance = Calendar.getInstance();
instance.add(Calendar.HOUR_OF_DAY, 1);
int hour = instance.get(Calendar.HOUR_OF_DAY);
TreeMap<Object, Object> hourMap = new TreeMap<>();
int startHour = 6;
int endHour = 24;
for (int i = startHour; i < endHour; i++) {
if (i <= hour) {
hourMap.put(i < 10 ? "0" + i + ":00" : i + ":00", 0);
} else {
hourMap.put(i < 10 ? "0" + i + ":00" : i + ":00", "");
}
}
hourMap.putAll(todaycollect);

datamap.put("todaycardata", hourMap);
logger.info("停车-今日停车数据-结束");

// 昨日
logger.info("停车-昨日停车数据-开始");
params.put("startdate", yesterday + " 05:00:00");
params.put("enddate", yesterday + " 22:59:59");
List<Map<String, Object>> yesterdayCarlist = wxCarCmdLogMapper.queryTodayCar(params);
Map<Object, Object> yesterdaycollect = yesterdayCarlist.stream().collect(Collectors.toMap(m -> {
return m.get("create_time");
}, m -> {
return m.get("carcount");
}));
TreeMap yesterdaytreemap = getTimeTreeMap();
yesterdaytreemap.putAll(yesterdaycollect);

datamap.put("yesterdaycardata", yesterdaytreemap);
logger.info("停车-昨日停车数据-结束");

// 上周同期
logger.info("停车-上周同期停车数据-开始");
params.put("startdate", lastweek + " 05:00:00");
params.put("enddate", lastweek + " 22:59:59");
List<Map<String, Object>> lastweekCarlist = wxCarCmdLogMapper.queryTodayCar(params);
Map<Object, Object> lastweekcollect = lastweekCarlist.stream().collect(Collectors.toMap(m -> {
return m.get("create_time");
}, m -> {
return m.get("carcount");
}));
TreeMap lastweektreemap = getTimeTreeMap();
lastweektreemap.putAll(lastweekcollect);
datamap.put("lastdaycardata", lastweektreemap);
logger.info("停车-上周同期停车数据-结束");
// 今日
// logger.info("停车-今日停车数据-开始");
// params.put("startdate", systemTime + " 05:00:00");
// params.put("enddate", DateUtils.getSystemTime("yyyy-MM-dd HH:mm:ss"));
//
// List<Map<String, Object>> todayCarlist = wxCarCmdLogMapper.queryTodayCar(params);
// Map<Object, Object> todaycollect = todayCarlist.stream().collect(Collectors.toMap(m -> {
// return m.get("create_time");
// }, m -> {
// return m.get("carcount");
// }));
//
// Calendar instance = Calendar.getInstance();
// instance.add(Calendar.HOUR_OF_DAY, 1);
// int hour = instance.get(Calendar.HOUR_OF_DAY);
// TreeMap<Object, Object> hourMap = new TreeMap<>();
// int startHour = 6;
// int endHour = 24;
// for (int i = startHour; i < endHour; i++) {
// if (i <= hour) {
// hourMap.put(i < 10 ? "0" + i + ":00" : i + ":00", 0);
// } else {
// hourMap.put(i < 10 ? "0" + i + ":00" : i + ":00", "");
// }
// }
// hourMap.putAll(todaycollect);
//
// datamap.put("todaycardata", hourMap);
// logger.info("停车-今日停车数据-结束");
//
//
// // 昨日
// logger.info("停车-昨日停车数据-开始");
// params.put("startdate", yesterday + " 05:00:00");
// params.put("enddate", yesterday + " 22:59:59");
// List<Map<String, Object>> yesterdayCarlist = wxCarCmdLogMapper.queryTodayCar(params);
// Map<Object, Object> yesterdaycollect = yesterdayCarlist.stream().collect(Collectors.toMap(m -> {
// return m.get("create_time");
// }, m -> {
// return m.get("carcount");
// }));
// TreeMap yesterdaytreemap = getTimeTreeMap();
// yesterdaytreemap.putAll(yesterdaycollect);
//
// datamap.put("yesterdaycardata", yesterdaytreemap);
// logger.info("停车-昨日停车数据-结束");
//
// // 上周同期
// logger.info("停车-上周同期停车数据-开始");
// params.put("startdate", lastweek + " 05:00:00");
// params.put("enddate", lastweek + " 22:59:59");
// List<Map<String, Object>> lastweekCarlist = wxCarCmdLogMapper.queryTodayCar(params);
// Map<Object, Object> lastweekcollect = lastweekCarlist.stream().collect(Collectors.toMap(m -> {
// return m.get("create_time");
// }, m -> {
// return m.get("carcount");
// }));
// TreeMap lastweektreemap = getTimeTreeMap();
// lastweektreemap.putAll(lastweekcollect);
// datamap.put("lastdaycardata", lastweektreemap);
// logger.info("停车-上周同期停车数据-结束");


//绑定车牌 //绑定车牌
logger.info("停车-绑定车牌-开始"); logger.info("停车-绑定车牌-开始");


+ 3
- 5
mallinkService/src/main/java/com/iformall/service/impl/MarkingDataReportServiceImpl.java View File

@@ -95,20 +95,18 @@ public class MarkingDataReportServiceImpl implements MarkingDataReportService {
//取的当月券数据 //取的当月券数据
@Override @Override
public Map<String, Object> getCouponData(TenantEntity tenantEntity) { public Map<String, Object> getCouponData(TenantEntity tenantEntity) {

List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(tenantEntity);
//今日领取券数 //今日领取券数
//查询coupon order表 //查询coupon order表
WxCouponOrder wxCouponOrder = new WxCouponOrder(); WxCouponOrder wxCouponOrder = new WxCouponOrder();
wxCouponOrder.setStartTime(addDay(0)); wxCouponOrder.setStartTime(addDay(0));
wxCouponOrder.setEndTime(addDay(1)); wxCouponOrder.setEndTime(addDay(1));
int todayCouponCount = wxCouponOrderService.findCount(wxCouponOrder,tenantEntitys);
int todayCouponCount = wxCouponOrderService.findCount(wxCouponOrder);
wxCouponOrder.setStartTime(addDay(-1)); wxCouponOrder.setStartTime(addDay(-1));
wxCouponOrder.setEndTime(addDay(0)); wxCouponOrder.setEndTime(addDay(0));
int yesterdayCount = wxCouponOrderService.findCount(wxCouponOrder,tenantEntitys);
int yesterdayCount = wxCouponOrderService.findCount(wxCouponOrder);
wxCouponOrder.setStartTime(addDay(-7)); wxCouponOrder.setStartTime(addDay(-7));
wxCouponOrder.setEndTime(addDay(-6)); wxCouponOrder.setEndTime(addDay(-6));
int lastWeekCount = wxCouponOrderService.findCount(wxCouponOrder,tenantEntitys);
int lastWeekCount = wxCouponOrderService.findCount(wxCouponOrder);


NumberFormat nf = NumberFormat.getPercentInstance(); NumberFormat nf = NumberFormat.getPercentInstance();
nf.setMinimumFractionDigits(2);//控制保留小数点后几位,2:表示保留2位小数点 nf.setMinimumFractionDigits(2);//控制保留小数点后几位,2:表示保留2位小数点


+ 21
- 31
mallinkService/src/main/java/com/iformall/service/impl/WxChartServiceImpl.java View File

@@ -92,6 +92,8 @@ public class WxChartServiceImpl implements WxChartDataService {
WxBillOtherMapper wxBillOtherMapper; WxBillOtherMapper wxBillOtherMapper;
@Autowired @Autowired
WxBillAllMapper wxBillAllMapper; WxBillAllMapper wxBillAllMapper;
@Autowired
WxChartDataMapper wxChartDataMapper;
@Lazy @Lazy
@Autowired @Autowired
@@ -922,33 +924,22 @@ public class WxChartServiceImpl implements WxChartDataService {
* @return * @return
*/ */
private ResultData getCarHistoryAndTodayAndHB(TenantEntity tenantEntity, boolean withOthers ) { private ResultData getCarHistoryAndTodayAndHB(TenantEntity tenantEntity, boolean withOthers ) {
String startdate;
HashMap<String, Object> datamap = new HashMap<>(); HashMap<String, Object> datamap = new HashMap<>();
HashMap<String, Object> params = new HashMap<>();
params.put("tenantId", tenantEntity.getTenantId());
if (StringUtils.isNotBlank(tenantEntity.getParentTenantId())) {
params.put("parentTenantId", tenantEntity.getParentTenantId());
}
params.put("cmdType", EnumCarCmd.CAR_ETCP_CALLBACK_PARK_IN.getCode());
startdate = DateUtils.getTimeBefore(30, new Date());
String systemTime = DateUtils.getSystemTime("yyyy-MM-dd");

List<String> tjTimeList = DateUtils.getTjTimeList(startdate, systemTime, "0");

params.put("startdate", startdate + " 00:00:00");
params.put("enddate", systemTime + " 23:59:59");

List<Map<String, Object>> historylist = wxCarCmdLogMapper.queryHistory(params);
if (true) {
return new ResultData();
}

Map<Object, Object> collect = historylist.stream().collect(Collectors.toMap(m -> {
return m.get("create_date");
String startdate = DateUtils.getTimeBefore(30, new Date());
String enddate = DateUtils.getSystemTime("yyyy-MM-dd");

WxChartDataEntity chartData = new WxChartDataEntity();
chartData.updateTenantInfo(tenantEntity);
chartData.setType(EnumChartType.CAR_IN.getCode());
chartData.setStartTime(DateUtils.stringToDate(startdate));
chartData.setEndTime(DateUtils.stringToDate(enddate));
List<WxChartDataEntity> list = wxChartDataMapper.findList(chartData);
Map<String, String> collect = list.stream().collect(Collectors.toMap(m -> {
return new SimpleDateFormat("yyyy-MM-dd").format(m.getQuerytime());
}, m -> { }, m -> {
return m.get("carcount");
return m.getResult();
})); }));
List<String> tjTimeList = DateUtils.getTjTimeList(startdate, enddate, "0");
List<String> timeList = new ArrayList<>(); List<String> timeList = new ArrayList<>();
List<Object> valList = new ArrayList<>(); List<Object> valList = new ArrayList<>();
for (String date : tjTimeList) { for (String date : tjTimeList) {
@@ -1015,8 +1006,8 @@ public class WxChartServiceImpl implements WxChartDataService {
String oneWeekEndDate = DateUtils.getTimeBefore(1, new Date()); String oneWeekEndDate = DateUtils.getTimeBefore(1, new Date());
weekParams.put("startdate", oneWeekStartdate + " 00:00:00"); weekParams.put("startdate", oneWeekStartdate + " 00:00:00");
weekParams.put("enddate", oneWeekEndDate + " 23:59:59"); weekParams.put("enddate", oneWeekEndDate + " 23:59:59");
weekParams.put("cmdType", EnumCarCmd.CAR_ETCP_CALLBACK_PAY_MANUAL.getCode());
datamap.put("oneWeekCarPayCount", wxCarCmdLogMapper.queryWeekCarPayCount(weekParams));
weekParams.put("cmdTypes", EnumCarCmd.getCarPay());
datamap.put("oneWeekCarPayCount", wxCarCmdLogMapper.queryHistoryCount(weekParams));
return new ResultData(datamap); return new ResultData(datamap);
} }


@@ -1183,20 +1174,19 @@ public class WxChartServiceImpl implements WxChartDataService {
*/ */
private ResultData getTodayCouponCount(TenantEntity tenantEntity) { private ResultData getTodayCouponCount(TenantEntity tenantEntity) {
HashMap<String, Object> datamap = new HashMap<>(); HashMap<String, Object> datamap = new HashMap<>();
List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(tenantEntity);
//今日领取券数 //今日领取券数
//查询coupon order表 //查询coupon order表
WxCouponOrder wxCouponOrder = new WxCouponOrder(); WxCouponOrder wxCouponOrder = new WxCouponOrder();
// wxCouponOrder.updateTenantInfo(tenantEntity);
wxCouponOrder.updateTenantInfo(tenantEntity);
wxCouponOrder.setStartTime(addDay(0)); wxCouponOrder.setStartTime(addDay(0));
wxCouponOrder.setEndTime(addDay(1)); wxCouponOrder.setEndTime(addDay(1));
int todayCouponCount = wxCouponOrderService.findCount(wxCouponOrder,tenantEntitys);
int todayCouponCount = wxCouponOrderService.findCount(wxCouponOrder);
wxCouponOrder.setStartTime(addDay(-1)); wxCouponOrder.setStartTime(addDay(-1));
wxCouponOrder.setEndTime( addDay(0)); wxCouponOrder.setEndTime( addDay(0));
int yesterdayCount = wxCouponOrderService.findCount(wxCouponOrder,tenantEntitys);
int yesterdayCount = wxCouponOrderService.findCount(wxCouponOrder);
wxCouponOrder.setStartTime(addDay(-7)); wxCouponOrder.setStartTime(addDay(-7));
wxCouponOrder.setEndTime( addDay(-6)); wxCouponOrder.setEndTime( addDay(-6));
int lastWeekCount = wxCouponOrderService.findCount(wxCouponOrder,tenantEntitys);
int lastWeekCount = wxCouponOrderService.findCount(wxCouponOrder);
NumberFormat nf = NumberFormat.getPercentInstance(); NumberFormat nf = NumberFormat.getPercentInstance();
nf.setMinimumFractionDigits(2);//控制保留小数点后几位,2:表示保留2位小数点 nf.setMinimumFractionDigits(2);//控制保留小数点后几位,2:表示保留2位小数点
String couponUpDay = "--"; String couponUpDay = "--";


+ 11
- 7
mallinkService/src/main/java/com/iformall/service/impl/WxCouponChannelServiceImpl.java View File

@@ -301,14 +301,18 @@ public class WxCouponChannelServiceImpl implements WxCouponChannelService {
} }


@Override @Override
public int countCoupon(WxCouponChannel wxCouponChannel, List<TenantEntity> tenantEntitys) {
int count = 0;
for (TenantEntity tenantEntity:tenantEntitys) {
wxCouponChannel.updateTenantInfo(tenantEntity);
int count1 = wxCouponChannelMapper.countCoupon(wxCouponChannel);
count += count1;
public int countCoupon(WxCouponChannel wxCouponChannel) {
if(StringUtils.isBlank(wxCouponChannel.getTenantId())
&& StringUtils.isNotBlank(wxCouponChannel.getParentTenantId())){
List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(wxCouponChannel);
int count = 0;
for (TenantEntity tenantEntity:tenantEntitys) {
wxCouponChannel.updateTenantInfo(tenantEntity);
count += wxCouponChannelMapper.countCoupon(wxCouponChannel);
}
return count;
} }
return count;
return wxCouponChannelMapper.countCoupon(wxCouponChannel);
} }


/** /**


+ 12
- 8
mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java View File

@@ -2724,14 +2724,18 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {
return 0; return 0;
} }


public int findCount(WxCouponOrder wxCouponOrder,List<TenantEntity> tenantEntitys){
int count = 0;
for (TenantEntity tenantEntity:tenantEntitys) {
wxCouponOrder.updateTenantInfo(tenantEntity);
int count1 = wxCouponOrderMapper.findCount(wxCouponOrder);
count += count1;
}
return count;
public int findCount(WxCouponOrder wxCouponOrder){
if(StringUtils.isBlank(wxCouponOrder.getTenantId())
&& StringUtils.isNotBlank(wxCouponOrder.getParentTenantId())){
List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(wxCouponOrder);
int count = 0;
for (TenantEntity tenantEntity:tenantEntitys) {
wxCouponOrder.updateTenantInfo(tenantEntity);
count += wxCouponOrderMapper.findCount(wxCouponOrder);
}
return count;
}
return wxCouponOrderMapper.findCount(wxCouponOrder);
} }


@Override @Override


+ 5
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxMallServiceImpl.java View File

@@ -247,6 +247,11 @@ public class WxMallServiceImpl implements WxMallService {
return wxMallMapper.listAsSelectMall(id); return wxMallMapper.listAsSelectMall(id);
} }


/**
* 根据parentTenantId获取子广场列表
* @param tenantEntity
* @return
*/
@Override @Override
public List<TenantEntity> getTenantEntitys(TenantEntity tenantEntity) { public List<TenantEntity> getTenantEntitys(TenantEntity tenantEntity) {
return wxMallMapper.getTenantEntitys(tenantEntity); return wxMallMapper.getTenantEntitys(tenantEntity);


+ 15
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxRentContractServiceImpl.java View File

@@ -3247,6 +3247,21 @@ public class WxRentContractServiceImpl implements WxRentContractService {
return null; return null;
} }


@Override
public long findCount(WxRentContract wxRentContract) {
if(StringUtils.isBlank(wxRentContract.getTenantId())
&& StringUtils.isNotBlank(wxRentContract.getParentTenantId())){
List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(wxRentContract);
long count = 0l;
for (TenantEntity tenantEntity:tenantEntitys) {
wxRentContract.updateTenantInfo(tenantEntity);
count += wxRentContractMapper.findCount(wxRentContract);
}
return count;
}
return wxRentContractMapper.findCount(wxRentContract);
}



public static void main(String[] args) { public static void main(String[] args) {
String s = "{\"siteMoney\":\"2\",\"facilityMoney\":\"3\",\"administratorMoney\":\"4\"}"; String s = "{\"siteMoney\":\"2\",\"facilityMoney\":\"3\",\"administratorMoney\":\"4\"}";


+ 21
- 6
mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java View File

@@ -12,6 +12,7 @@ import java.util.Map;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;


import com.iformall.mapper.*;
import org.apache.commons.beanutils.BeanUtils; import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
@@ -42,10 +43,6 @@ import com.iformall.enums.EnumRentContractStatus;
import com.iformall.enums.EnumRentShopType; import com.iformall.enums.EnumRentShopType;
import com.iformall.enums.EnumShopStatus; import com.iformall.enums.EnumShopStatus;
import com.iformall.enums.EnumUserAdmin; import com.iformall.enums.EnumUserAdmin;
import com.iformall.mapper.WxMerchantMapper;
import com.iformall.mapper.WxMerchantShopMapper;
import com.iformall.mapper.WxRentContractMapper;
import com.iformall.mapper.WxShopMapper;
import com.iformall.service.ExcelService; import com.iformall.service.ExcelService;
import com.iformall.service.WxBrandService; import com.iformall.service.WxBrandService;
import com.iformall.service.WxBusinessService; import com.iformall.service.WxBusinessService;
@@ -56,6 +53,9 @@ import com.iformall.service.WxShopService;
@Service @Service
public class WxShopServiceImpl implements WxShopService { public class WxShopServiceImpl implements WxShopService {
private final Logger logger = LoggerFactory.getLogger(this.getClass()); private final Logger logger = LoggerFactory.getLogger(this.getClass());

@Autowired
WxMallMapper wxMallMapper;
@Autowired @Autowired
WxShopMapper wxShopMapper; WxShopMapper wxShopMapper;
@@ -171,8 +171,23 @@ public class WxShopServiceImpl implements WxShopService {
} }
return pageInfo; return pageInfo;
} }
private Map<Long,WxMerchant> getMerchantMap(TenantEntity tenantEntity,List<Long> merchantIds,Map<Long,WxMerchant> merchantMap) {

@Override
public long findCount(WxShop wxShop) {
if(StringUtils.isBlank(wxShop.getTenantId())
&& StringUtils.isNotBlank(wxShop.getParentTenantId())){
List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(wxShop);
long count = 0l;
for (TenantEntity tenantEntity:tenantEntitys) {
wxShop.updateTenantInfo(tenantEntity);
count += wxShopMapper.findCount(wxShop);
}
return count;
}
return wxShopMapper.findCount(wxShop);
}

private Map<Long,WxMerchant> getMerchantMap(TenantEntity tenantEntity,List<Long> merchantIds,Map<Long,WxMerchant> merchantMap) {
if (null == merchantMap) { if (null == merchantMap) {
merchantMap = new HashMap<Long,WxMerchant>(); merchantMap = new HashMap<Long,WxMerchant>();
} }


+ 24
- 22
mallinkService/src/main/resources/mapper/WxCarCmdLogMapper.xml View File

@@ -87,6 +87,22 @@
) c ) c
group by c.create_date group by c.create_date
</select> </select>

<select id="queryHistoryCount" resultType="long" parameterType="hashmap">
select count(id)
from wx_car_cmd_log
where cmd_type in
<foreach collection="cmdTypes" index="index" item="cmdTypeItem" open="(" separator="," close=")">
#{cmdTypeItem}
</foreach>
<if test=" null != tenantId and '' != tenantId">
and `tenant_id` = #{tenantId}
</if>
<if test=" null != parentTenantId and '' != parentTenantId">
and `parent_tenant_id` = #{parentTenantId}
</if>
and create_date BETWEEN #{startdate} and #{enddate}
</select>
<select id="queryTodayCar" resultType="hashmap" parameterType="hashmap"> <select id="queryTodayCar" resultType="hashmap" parameterType="hashmap">
select count(c.id) carcount,c.create_time from ( select count(c.id) carcount,c.create_time from (
@@ -104,18 +120,20 @@
) c group by c.create_time order by c.create_time ) c group by c.create_time order by c.create_time
</select> </select>


<select id="queryWeekCarPayCount" resultType="Long" parameterType="hashmap">
select count(id)
from (<foreach collection="tenantEntitys" item="tenantEntity" index="index" separator="union all">
SELECT * from wx_car_cmd_log${tenantEntity.shardTableSuffix}
</foreach>) wx_car_cmd_log where cmd_type=#{cmdType}
<select id="queryCarPay" resultType="BigDecimal" parameterType="hashmap">
select sum(fee) fee
from wx_car_cmd_log
where cmd_type in
<foreach collection="cmdTypes" index="index" item="cmdTypeItem" open="(" separator="," close=")">
#{cmdTypeItem}
</foreach>
<if test=" null != tenantId and '' != tenantId"> <if test=" null != tenantId and '' != tenantId">
and `tenant_id` = #{tenantId} and `tenant_id` = #{tenantId}
</if> </if>
<if test=" null != parentTenantId and '' != parentTenantId"> <if test=" null != parentTenantId and '' != parentTenantId">
and `parent_tenant_id` = #{parentTenantId} and `parent_tenant_id` = #{parentTenantId}
</if> </if>
and create_date BETWEEN #{startdate} and #{enddate}
and REPLACE (JSON_EXTRACT(cmd_json,'$.time'),'"','') BETWEEN #{startdate} and #{enddate}
</select> </select>


<select id="queryWeekCarPay" resultType="hashmap" parameterType="hashmap"> <select id="queryWeekCarPay" resultType="hashmap" parameterType="hashmap">
@@ -154,22 +172,6 @@
</if> </if>
group by xTime group by xTime
</select> </select>
<select id="queryPlateNumberList" parameterType="hashmap" resultType="hashmap">
select json_unquote(JSON_EXTRACT(cmd_json,'$.plateNumber')) plateNumber from wx_car_cmd_log where 1=1
<if test=" null != tenantId and '' != tenantId">
and `tenant_id` = #{tenantId}
</if>
<if test=" null != parentTenantId and '' != parentTenantId">
and `parent_tenant_id` = #{parentTenantId}
</if>
<if test=" null != startdate and null != enddate">
and create_date BETWEEN #{startdate} and #{enddate}
</if>
and json_unquote(JSON_EXTRACT(cmd_json,'$.plateNumber')) is not null
group by plateNumber
</select>


<select id="queryTenantInfoBySynId" parameterType="com.iformall.domain.po.WxCarCmdLog" resultType="com.iformall.domain.po.WxCarCmdLog"> <select id="queryTenantInfoBySynId" parameterType="com.iformall.domain.po.WxCarCmdLog" resultType="com.iformall.domain.po.WxCarCmdLog">
select `tenant_id`,`parent_tenant_id` from wx_car_cmd_log select `tenant_id`,`parent_tenant_id` from wx_car_cmd_log


+ 1
- 1
mallinkService/src/main/resources/mapper/WxCouponOrderMapper.xml View File

@@ -466,7 +466,7 @@
</select> </select>


<select id="findCount" parameterType="com.iformall.domain.po.WxCouponOrder" resultType="java.lang.Integer"> <select id="findCount" parameterType="com.iformall.domain.po.WxCouponOrder" resultType="java.lang.Integer">
select COUNT(1) FROM wx_coupon_order co
select COUNT(co.id) FROM wx_coupon_order co
where co.`tenant_id` = #{tenantId} where co.`tenant_id` = #{tenantId}
<if test=" null != parentTenantId and '' != parentTenantId"> <if test=" null != parentTenantId and '' != parentTenantId">
and co.`parent_tenant_id` = #{parentTenantId} and co.`parent_tenant_id` = #{parentTenantId}


+ 1
- 7
mallinkService/src/main/resources/mapper/WxMallMapper.xml View File

@@ -221,13 +221,7 @@




<select id="getTenantEntitys" parameterType="com.iformall.domain.po.base.TenantEntity" resultType="com.iformall.domain.po.base.TenantEntity"> <select id="getTenantEntitys" parameterType="com.iformall.domain.po.base.TenantEntity" resultType="com.iformall.domain.po.base.TenantEntity">
select `tenant_id`,`parent_tenant_id` from wx_mall where 1=1
<if test=" null != tenantId and '' != tenantId">
and `tenant_id` = #{tenantId}
</if>
<if test=" null != parentTenantId and '' != parentTenantId">
and `parent_tenant_id` = #{parentTenantId}
</if>
select `tenant_id`,`parent_tenant_id` from wx_mall where `parent_tenant_id` = #{parentTenantId}
</select> </select>


<select id="findListAadmin" parameterType="com.iformall.domain.po.WxMall" resultMap="BaseResultMap"> <select id="findListAadmin" parameterType="com.iformall.domain.po.WxMall" resultMap="BaseResultMap">


+ 7
- 3
mallinkService/src/main/resources/mapper/WxRentContractMapper.xml View File

@@ -222,15 +222,19 @@
<include refid="dynamicWhereConditions"/> <include refid="dynamicWhereConditions"/>
</select> </select>


<select id="queryRentContractCountByStatus" resultType="int" parameterType="com.iformall.domain.po.WxRentContract">
select count(1) from wx_rent_contract where status=#{status}
<select id="findCount" parameterType="com.iformall.domain.po.WxRentContract" resultType="java.lang.Long">
select count(id)
from wx_rent_contract
where status=#{status}
<if test=" null != tenantId and '' != tenantId"> <if test=" null != tenantId and '' != tenantId">
and `tenant_id` = #{tenantId} and `tenant_id` = #{tenantId}
</if> </if>
<if test=" null != parentTenantId and '' != parentTenantId"> <if test=" null != parentTenantId and '' != parentTenantId">
and `parent_tenant_id` = #{parentTenantId} and `parent_tenant_id` = #{parentTenantId}
</if> </if>
<if test=" null != rentShopType ">and rent_shop_type = #{rentShopType}</if>
<if test=" null != rentShopType ">
and rent_shop_type = #{rentShopType}
</if>


</select> </select>




+ 7
- 0
mallinkService/src/main/resources/mapper/WxShopMapper.xml View File

@@ -150,6 +150,13 @@
<include refid="dynamicWhereConditions"/> <include refid="dynamicWhereConditions"/>
</select> </select>


<select id="findCount" parameterType="com.iformall.domain.po.WxShop" resultType="java.lang.Long">
select count(id)
from wx_shop
<include refid="dynamicWhereConditions"/>

</select>

<select id="findIdList" parameterType="com.iformall.domain.po.WxShop" resultType="Long"> <select id="findIdList" parameterType="com.iformall.domain.po.WxShop" resultType="Long">
select id select id
from wx_shop from wx_shop


+ 54
- 0
mallinkService/src/main/resources/mapper/wxChartDataMapper.xml View File

@@ -0,0 +1,54 @@
<?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.WxChartDataMapper">
<resultMap id="BaseResultMap" type="com.iformall.domain.po.WxChartDataEntity">
<id column="id" jdbcType="BIGINT" property="id"/>
<result column="tenant_id" jdbcType="VARCHAR" property="tenantId"/>
<result column="parent_tenant_id" jdbcType="VARCHAR" property="parentTenantId" />
<result column="type" jdbcType="INTEGER" property="type"/>
<result column="result" jdbcType="VARCHAR" property="result"/>
<result column="querytime" jdbcType="TIMESTAMP" property="querytime"/>
<result column="createtime" jdbcType="TIMESTAMP" property="createtime"/>
</resultMap>

<sql id="allColumns">
`id`,`tenant_id`,`parent_tenant_id`,`type`,`result`,`querytime`,`createtime`
</sql>
<sql id="dynamicWhereConditions">
where 1 = 1
<if test=" null != id ">
and `id` = #{id}
</if>

<if test=" null != tenantId and '' != tenantId">
and `tenant_id` = #{tenantId}
</if>
<if test=" null != parentTenantId and '' != parentTenantId">
and `parent_tenant_id` = #{parentTenantId}
</if>
<if test=" null != type ">
and `type` = #{type}
</if>

<if test=" null != startTime ">
and `querytime` &gt;= #{startTime}
</if>
<if test=" null != endTime ">
and `querytime` &lt;= #{endTime}
</if>

order by querytime

</sql>
<select id="findList" parameterType="com.iformall.domain.po.WxChartDataEntity" resultMap="BaseResultMap">
select
<include refid="allColumns"/>
from wx_chart_data
<include refid="dynamicWhereConditions"/>
</select>

</mapper>

Loading…
Cancel
Save