| @@ -145,11 +145,6 @@ public class WxCUserDataController extends BaseController { | |||
| plat = EnumAppPlat.WX.getCode(); | |||
| } | |||
| TenantEntity tenantEntity = getTenantInfo(); | |||
| if(StringUtils.isBlank(tenantEntity.getTenantId())){ | |||
| //todo 集团版查询数据待重构 | |||
| return new ResultData("集团版查询数据待重构"); | |||
| } | |||
| // List<TenantEntity> tenantEntitys = wxMallService.getTenantEntitys(tenantEntity); | |||
| WxCUserBasicInfoDto dto = new WxCUserBasicInfoDto(); | |||
| dto.updateTenantInfo(tenantEntity); | |||
| long allCount = cuserFactory.getCUserService(EnumAppPlat.getByCode(plat)).findCount(dto); | |||
| @@ -176,11 +171,6 @@ public class WxCUserDataController extends BaseController { | |||
| public ResultData findBasicUserAddCount() { | |||
| logger.debug("[" + getIpAddr() + "] WxCUserDataController::findBasicUserAddCount"); | |||
| TenantEntity tenantEntity = getTenantInfo(); | |||
| if(StringUtils.isBlank(tenantEntity.getTenantId())){ | |||
| //todo 集团版查询数据待重构 | |||
| return new ResultData("集团版查询数据待重构"); | |||
| } | |||
| // List<TenantEntity> tenantEntitys = wxMallService.getTenantEntitys(tenantEntity); | |||
| WxCUserBasicInfoDto dto = new WxCUserBasicInfoDto(); | |||
| dto.updateTenantInfo(tenantEntity); | |||
| long allCount = wxCUserBasicInfoService.findCount(dto); | |||
| @@ -70,7 +70,6 @@ public class ChartDataSchedule { | |||
| */ | |||
| public void createCarData() { | |||
| HashMap<String, Object> params = new HashMap<>(); | |||
| params.put("cmdType", EnumCarCmd.CAR_ETCP_CALLBACK_PARK_OUT.getCode()); | |||
| Date createtime = new Date(); | |||
| String startdate = DateUtils.getTimeBefore(1, createtime); | |||
| Date date = DateUtils.stringToDate(startdate); | |||
| @@ -85,35 +84,41 @@ public class ChartDataSchedule { | |||
| TenantEntity tenantEntity = wxMall.getTenantInfo(); | |||
| params.put("tenantId", tenantEntity.getTenantId()); | |||
| params.put("finalTenantId", tenantEntity.getFinalTenantId()); | |||
| if (StringUtils.isNotBlank(tenantEntity.getParentTenantId())) { | |||
| params.put("parentTenantId", wxMall.getTenantId()); | |||
| } | |||
| wxChartDataEntity.updateTenantInfo(tenantEntity); | |||
| wxChartDataEntity.setType(EnumChartType.CAR_OUT.getCode()); | |||
| wxChartDataEntity.setType(EnumChartType.CAR_IN.getCode()); | |||
| 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) { | |||
| logger.info("出场车数>>>>>>>>>>>>>>>>>>>>>>>>>>"); | |||
| params.put("cmdTypes",EnumCarCmd.getCarOut()); | |||
| carOutData(params, createtime, date, tenantEntity); | |||
| } | |||
| wxChartDataEntity.setType(EnumChartType.CAR_PAID.getCode()); | |||
| count = wxChartDataMapper.selectCount(new QueryWrapper(wxChartDataEntity)); | |||
| if (count == 0) { | |||
| params.put("cmdType", EnumCarCmd.CAR_ETCP_CALLBACK_PAY_MANUAL.getCode()); | |||
| logger.info("缴费车辆>>>>>>>>>>>>>>>>>>>>>>>>>>"); | |||
| params.put("cmdTypes", EnumCarCmd.getCarPay()); | |||
| carPaidData(params, createtime, date, tenantEntity); | |||
| } | |||
| wxChartDataEntity.setType(EnumChartType.CAR_PAY_FEE.getCode()); | |||
| count = wxChartDataMapper.selectCount(new QueryWrapper(wxChartDataEntity)); | |||
| if (count == 0) { | |||
| logger.info("缴费金额>>>>>>>>>>>>>>>>>>>>>>>>>>"); | |||
| params.put("cmdTypes", EnumCarCmd.getCarPay()); | |||
| 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()); | |||
| count = wxChartDataMapper.selectCount(new QueryWrapper(wxChartDataEntity)); | |||
| if (count == 0) { | |||
| @@ -210,46 +215,40 @@ public class ChartDataSchedule { | |||
| } | |||
| public void carNewMemberData(Date createtime, Date date, TenantEntity tenantEntity) { | |||
| // List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(tenantEntity); | |||
| WxCUserBasicInfoDto wxCUserBasicInfoDto = new WxCUserBasicInfoDto(); | |||
| wxCUserBasicInfoDto.updateTenantInfo(tenantEntity); | |||
| wxCUserBasicInfoDto.setFinalTenantId(tenantEntity.getFinalTenantId()); | |||
| wxCUserBasicInfoDto.setStartTime(date); | |||
| wxCUserBasicInfoDto.setEndTime(date); | |||
| Integer carUserCount = wxCUserCarService.countUser(wxCUserBasicInfoDto); | |||
| 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) { | |||
| 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); | |||
| } | |||
| 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); | |||
| } | |||
| 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); | |||
| } | |||
| 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) { | |||
| logger.info("即将插入数据>>>>>>>>>>>>>>>>>>>>>>>"); | |||
| final IdWorker idWorker = IdWorker.get(); | |||
| @@ -1,5 +1,6 @@ | |||
| package com.iformall.domain.po; | |||
| import com.baomidou.mybatisplus.annotation.TableField; | |||
| import com.baomidou.mybatisplus.annotation.TableName; | |||
| import com.iformall.domain.po.base.TenantEntity; | |||
| import lombok.Data; | |||
| @@ -34,4 +35,9 @@ public class WxChartDataEntity extends TenantEntity { | |||
| .append('}'); | |||
| return sb.toString(); | |||
| } | |||
| @TableField(exist = false) | |||
| private Date startTime; | |||
| @TableField(exist = false) | |||
| private Date endTime; | |||
| } | |||
| @@ -1,5 +1,8 @@ | |||
| package com.iformall.enums; | |||
| import java.util.ArrayList; | |||
| import java.util.List; | |||
| /** | |||
| * Created by Stormeye on 2018/08/09. | |||
| */ | |||
| @@ -11,23 +14,27 @@ public enum EnumCarCmd { | |||
| CAR_ETCP_CALLBACK_UNBIND(603, "ETCP车辆解绑通知"), | |||
| CAR_ETCP_CALLBACK_PAY_MANUAL(604, "ETCP支付结果通知"), | |||
| CAR_ETCP_CALLBACK_UNPAY(605, "ETCP停车费获取"), | |||
| CAR_TJD_CALLBACK_REGISTER(610, "停简单注册车牌"), | |||
| CAR_TJD_CALLBACK_PARK_IN(611, "停简单进场通知"), | |||
| CAR_TJD_CALLBACK_PARK_OUT(612, "停简单离场通知"), | |||
| CAR_TJD_CALLBACK_PAID(613, "停简单支付通知"), | |||
| CAR_TJD_CALLBACK_REFUND(614, "停简单退款通知"), | |||
| 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_PAID(623,"车易付支付通知"), | |||
| 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_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) { | |||
| @@ -39,6 +46,39 @@ public enum EnumCarCmd { | |||
| 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 String message; | |||
| @@ -54,4 +94,5 @@ public enum EnumCarCmd { | |||
| public String getMessage() { | |||
| return message; | |||
| } | |||
| } | |||
| @@ -4,10 +4,11 @@ package com.iformall.enums; | |||
| * Created by Stormeye on 2018/08/09. | |||
| */ | |||
| public enum EnumChartType { | |||
| CAR_IN(10,"入场车辆"), | |||
| CAR_OUT(1, "出场车辆"), | |||
| CAR_PAID(2, "缴费车辆"), | |||
| CAR_PAY_FEE(3, "缴费金额"), | |||
| CAR_MEMBER(4, "新增会员"), | |||
| // CAR_MEMBER(4, "新增会员"), | |||
| CAR_NEW_MEMBER(5, "新增停车会员"), | |||
| CAR_BIND(6, "已绑车辆"), | |||
| SALE_COUPON_PRICE(8, "销售总交易额"), | |||
| @@ -3,6 +3,8 @@ package com.iformall.mapper; | |||
| import com.iformall.common.CommonMapper; | |||
| import com.iformall.domain.po.WxCarCmdLog; | |||
| import com.iformall.domain.vo.MarkingSceneDataVo; | |||
| import java.math.BigDecimal; | |||
| import java.util.HashMap; | |||
| import java.util.List; | |||
| import java.util.Map; | |||
| @@ -19,19 +21,17 @@ public interface WxCarCmdLogMapper extends CommonMapper<WxCarCmdLog, Long> { | |||
| List<WxCarCmdLog> findList(WxCarCmdLog wxCarCmdLog); | |||
| 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>> queryWeekCarPay(HashMap<String,Object> params); | |||
| BigDecimal queryCarPay(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); | |||
| Long queryWeekCarPayCount(HashMap<String,Object> params); | |||
| WxCarCmdLog queryByOrderId(WxCarCmdLog carCmdLog); | |||
| WxCarCmdLog queryBySynId(HashMap<String,Object> params); | |||
| @@ -3,5 +3,10 @@ package com.iformall.mapper; | |||
| import com.iformall.common.CommonMapper; | |||
| import com.iformall.domain.po.WxChartDataEntity; | |||
| import java.util.List; | |||
| public interface WxChartDataMapper extends CommonMapper<WxChartDataEntity, Long> { | |||
| List<WxChartDataEntity> findList(WxChartDataEntity chartData); | |||
| } | |||
| @@ -16,8 +16,6 @@ public interface WxRentContractMapper extends CommonMapper<WxRentContract, Long> | |||
| List<WxRentContract> findList(WxRentContract wxRentContract); | |||
| int queryRentContractCountByStatus(WxRentContract wxRentContract); | |||
| void updateStatusForUnsign(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<Long> getUsedRentShopIds(WxRentContract wxRentContract); | |||
| long findCount(WxRentContract wxRentContract); | |||
| } | |||
| @@ -47,4 +47,5 @@ public interface WxShopMapper extends CommonMapper<WxShop, String> { | |||
| List<WxShopVo> newFindShopVoList(@Param("tenantId")String tenantId, @Param("shopIds")List<Long> shopIds); | |||
| long findCount(WxShop wxShop); | |||
| } | |||
| @@ -13,10 +13,10 @@ public interface DataTowerService { | |||
| /** | |||
| * 把这个接口拆开 | |||
| * @param tenantEntity | |||
| * @param | |||
| * @return | |||
| */ | |||
| Map<String,Object> queryRunning(TenantEntity tenantEntity); | |||
| // Map<String,Object> queryRunning(TenantEntity tenantEntity); | |||
| Map<String, Object> queryOccupancyRate(TenantEntity tenantInfo); | |||
| Map<String, Object> queryRentCollectionRate(TenantEntity tenantInfo); | |||
| Map<String, Object> queryDeclarationRate(TenantEntity tenantInfo); | |||
| @@ -54,7 +54,7 @@ public interface WxCouponChannelService { | |||
| ResultData change(WxCouponChannel wxCouponChannel); | |||
| int countCoupon(WxCouponChannel wxCouponChannel, List<TenantEntity> tenantEntitys); | |||
| int countCoupon(WxCouponChannel wxCouponChannel); | |||
| List<WxCouponChannelVo> newfindListVo(WxCouponChannel wxCouponChannel); | |||
| @@ -212,7 +212,7 @@ public interface WxCouponOrderService { | |||
| */ | |||
| 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); | |||
| @@ -129,4 +129,6 @@ public interface WxRentContractService { | |||
| Map<String, Object> findRentByShop(Long shopId); | |||
| Map<String, Object> currentValidByMerchantId(TenantEntity tenantInfo, Long merchantId,String shopNumber); | |||
| long findCount(WxRentContract wxRentContract); | |||
| } | |||
| @@ -31,6 +31,8 @@ public interface WxShopService { | |||
| PageInfo<Map<String,Object>> listMapAsPage(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); | |||
| @@ -101,5 +103,5 @@ public interface WxShopService { | |||
| */ | |||
| Map<Long,List<WxShopVo>> findMerchantShopVoListMap(TenantEntity tenantEntity, List<Long> merchantIds); | |||
| List<WxShopVo> findMerchantShopVoList(TenantEntity tenantEntity,Long merchantId); | |||
| } | |||
| @@ -19,6 +19,7 @@ import com.iformall.enums.EnumAssignTagsTrigger; | |||
| import com.iformall.enums.EnumYesOrNo; | |||
| import com.iformall.exception.MallinkException; | |||
| import com.iformall.mapper.TtCUserMapper; | |||
| import com.iformall.mapper.WxMallMapper; | |||
| import com.iformall.service.WxAppinfoService; | |||
| import com.iformall.service.WxCUserBasicInfoService; | |||
| import com.iformall.service.WxCUserTagsService; | |||
| @@ -53,7 +54,10 @@ public class TtCUserServiceAdapter extends BasicCUserService implements CUserSer | |||
| private WxAppinfoService wxAppinfoService; | |||
| @Autowired | |||
| TtCUserMapper ttCUserMapper; | |||
| private TtCUserMapper ttCUserMapper; | |||
| @Autowired | |||
| private WxMallMapper wxMallMapper; | |||
| @Autowired | |||
| MaUtil maUtil; | |||
| @@ -302,6 +306,16 @@ public class TtCUserServiceAdapter extends BasicCUserService implements CUserSer | |||
| @Override | |||
| 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); | |||
| } | |||
| @@ -15,6 +15,7 @@ import com.iformall.domain.vo.UserStructureVo; | |||
| import com.iformall.enums.EnumAppPlat; | |||
| import com.iformall.enums.EnumAssignTagsTrigger; | |||
| import com.iformall.enums.EnumYesOrNo; | |||
| import com.iformall.mapper.WxMallMapper; | |||
| import com.iformall.service.WxAppinfoService; | |||
| import com.iformall.service.WxCUserBasicInfoService; | |||
| import com.iformall.service.WxCUserTagsService; | |||
| @@ -60,6 +61,9 @@ public class WxCUserServiceAdapter extends BasicCUserService implements CUserSer | |||
| @Autowired | |||
| private WxCUserMapper wxCUserMapper; | |||
| @Autowired | |||
| private WxMallMapper wxMallMapper; | |||
| @Autowired | |||
| MaUtil maUtil; | |||
| @@ -310,6 +314,16 @@ public class WxCUserServiceAdapter extends BasicCUserService implements CUserSer | |||
| @Override | |||
| 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); | |||
| } | |||
| @@ -13,10 +13,7 @@ import com.iformall.domain.vo.WxBillAll; | |||
| import com.iformall.enums.*; | |||
| import com.iformall.exception.MallinkException; | |||
| 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.WiwideSercret; | |||
| import com.iformall.sms.wiwide.WiwideUtil; | |||
| @@ -43,7 +40,7 @@ public class DataTowerServiceImpl implements DataTowerService { | |||
| private final Logger logger = LoggerFactory.getLogger(this.getClass()); | |||
| @Autowired | |||
| WxShopMapper wxShopMapper; | |||
| WxShopService wxShopService; | |||
| @Autowired | |||
| WxMerchantMapper wxMerchantMapper; | |||
| @@ -67,7 +64,7 @@ public class DataTowerServiceImpl implements DataTowerService { | |||
| WxCouponChannelMapper wxCouponChannelMapper; | |||
| @Autowired | |||
| WxRentContractMapper wxRentContractMapper; | |||
| WxRentContractService wxRentContractService; | |||
| @Autowired | |||
| WxBillAllMapper wxBillAllMapper; | |||
| @@ -84,6 +81,9 @@ public class DataTowerServiceImpl implements DataTowerService { | |||
| @Autowired | |||
| private WxMallMapper wxMallMapper; | |||
| @Autowired | |||
| private WxChartDataMapper wxChartDataMapper; | |||
| @Autowired | |||
| private WxCouponOrderService wxCouponOrderService; | |||
| @@ -100,14 +100,12 @@ public class DataTowerServiceImpl implements DataTowerService { | |||
| WxShop wxShop = new WxShop(); | |||
| wxShop.updateTenantInfo(tenantEntity); | |||
| wxShop.setStatus(EnumShopStatus.RENT.getCode()); | |||
| List<WxShop> rentedList = wxShopMapper.findList(wxShop); | |||
| long rentedCount = wxShopService.findCount(wxShop); | |||
| wxShop.setStatus(EnumShopStatus.NOT_RENT.getCode()); | |||
| List<WxShop> unrentedList = wxShopMapper.findList(wxShop); | |||
| long unrentedCount = wxShopService.findCount(wxShop); | |||
| 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) { | |||
| shopMap.put("rentedCount", 0); | |||
| shopMap.put("unrentedCount", 0); | |||
| @@ -198,68 +196,18 @@ public class DataTowerServiceImpl implements DataTowerService { | |||
| } | |||
| //今日车流量*********************************************** | |||
| //昨日车流量*********************************************** | |||
| 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; | |||
| } | |||
| @@ -277,20 +225,19 @@ public class DataTowerServiceImpl implements DataTowerService { | |||
| cal.add(Calendar.DAY_OF_YEAR, 1); | |||
| Date endTime = cal.getTime(); | |||
| List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(tenantEntity); | |||
| WxCouponOrder wxCouponOrder = new WxCouponOrder(); | |||
| //wxCouponOrder.updateTenantInfo(tenantEntity); | |||
| wxCouponOrder.updateTenantInfo(tenantEntity); | |||
| wxCouponOrder.setStartTime(startTime); | |||
| wxCouponOrder.setEndTime(endTime); | |||
| long orderedCount = wxCouponOrderService.findCount(wxCouponOrder,tenantEntitys); | |||
| long orderedCount = wxCouponOrderService.findCount(wxCouponOrder); | |||
| wxCouponOrder.setCouponOrderStatus(EnumCouponOrderStatus.COUPON_ORDER_USED.getCode()); | |||
| long verifiedCount = wxCouponOrderService.findCount(wxCouponOrder,tenantEntitys); | |||
| long verifiedCount = wxCouponOrderService.findCount(wxCouponOrder); | |||
| couponMap.put("verifiedCount", verifiedCount); | |||
| couponMap.put("orderedCount", orderedCount); | |||
| WxCouponChannel wxCouponChannel = new WxCouponChannel(); | |||
| // wxCouponChannel.updateTenantInfo(tenantEntity); | |||
| wxCouponChannel.updateTenantInfo(tenantEntity); | |||
| wxCouponChannel.setStatus(EnumCouponChannelStatus.STATUS_THROW_IN.getCode()); | |||
| long couponCount = wxCouponChannelService.countCoupon(wxCouponChannel,tenantEntitys); | |||
| long couponCount = wxCouponChannelService.countCoupon(wxCouponChannel); | |||
| couponMap.put("couponCount", couponCount); | |||
| return couponMap; | |||
| @@ -316,22 +263,22 @@ public class DataTowerServiceImpl implements DataTowerService { | |||
| //wxRentContract.setStatus(EnumRentContractStatus.WAIT_SIGN.getCode()); | |||
| //int waitSignCount = wxRentContractMapper.queryRentContractWaitSignStatus(wxRentContract); | |||
| //contractMap.put("waitSignCount", waitSignCount); | |||
| contractMap.put("waitSignCount", 0); | |||
| //contractMap.put("waitSignCount", 0); | |||
| //计租中 | |||
| wxRentContract.setStatus(EnumRentContractStatus.PAING.getCode()); | |||
| int rendPaidCount = wxRentContractMapper.queryRentContractCountByStatus(wxRentContract); | |||
| long rendPaidCount = wxRentContractService.findCount(wxRentContract); | |||
| contractMap.put("rendPaidCount", rendPaidCount); | |||
| //将到期 | |||
| //wxRentContract.setStatus(EnumRentContractStatus.CONTRACT_END_SOON.getCode()); | |||
| //int endSoonCount = wxRentContractMapper.queryRentContractEndSoonStatus(wxRentContract); | |||
| //contractMap.put("endSoonCount", endSoonCount); | |||
| contractMap.put("endSoonCount", 0); | |||
| //contractMap.put("endSoonCount", 0); | |||
| //到期 | |||
| wxRentContract.setStatus(EnumRentContractStatus.OUT_DATE.getCode()); | |||
| int endCount = wxRentContractMapper.queryRentContractCountByStatus(wxRentContract); | |||
| long endCount = wxRentContractService.findCount(wxRentContract); | |||
| contractMap.put("endCount", endCount); | |||
| return contractMap; | |||
| @@ -345,15 +292,9 @@ public class DataTowerServiceImpl implements DataTowerService { | |||
| wxMsgConfig.updateTenantInfo(tenantEntity); | |||
| 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("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 | |||
| 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 | |||
| public Map<String, Object> queryCar(TenantEntity tenantEntity) { | |||
| 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 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 -> { | |||
| return m.get("carcount"); | |||
| return m.getResult(); | |||
| })); | |||
| Map<Object, Object> historymap = new LinkedHashMap<>(); | |||
| @@ -651,30 +560,29 @@ public class DataTowerServiceImpl implements DataTowerService { | |||
| // 查询近一周的缴费车辆----start------ | |||
| 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 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("停车-查询近一周的缴费金额-开始"); | |||
| 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 -> { | |||
| return m.get("fee"); | |||
| return m.getResult(); | |||
| })); | |||
| List<String> days = DateUtils.getTjTimeList(oneWeekStartdate, oneWeekEndDate, "0"); | |||
| @@ -693,11 +601,12 @@ public class DataTowerServiceImpl implements DataTowerService { | |||
| // 近一周新增会员历史 | |||
| 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 -> { | |||
| return m.get("count"); | |||
| return m.getResult(); | |||
| })); | |||
| TreeMap<String, Object> weekCarMap = new TreeMap<>(); | |||
| for (String date:days) { | |||
| @@ -765,66 +674,69 @@ public class DataTowerServiceImpl implements DataTowerService { | |||
| } | |||
| 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("停车-绑定车牌-开始"); | |||
| @@ -95,20 +95,18 @@ public class MarkingDataReportServiceImpl implements MarkingDataReportService { | |||
| //取的当月券数据 | |||
| @Override | |||
| public Map<String, Object> getCouponData(TenantEntity tenantEntity) { | |||
| List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(tenantEntity); | |||
| //今日领取券数 | |||
| //查询coupon order表 | |||
| WxCouponOrder wxCouponOrder = new WxCouponOrder(); | |||
| wxCouponOrder.setStartTime(addDay(0)); | |||
| wxCouponOrder.setEndTime(addDay(1)); | |||
| int todayCouponCount = wxCouponOrderService.findCount(wxCouponOrder,tenantEntitys); | |||
| int todayCouponCount = wxCouponOrderService.findCount(wxCouponOrder); | |||
| wxCouponOrder.setStartTime(addDay(-1)); | |||
| wxCouponOrder.setEndTime(addDay(0)); | |||
| int yesterdayCount = wxCouponOrderService.findCount(wxCouponOrder,tenantEntitys); | |||
| int yesterdayCount = wxCouponOrderService.findCount(wxCouponOrder); | |||
| wxCouponOrder.setStartTime(addDay(-7)); | |||
| wxCouponOrder.setEndTime(addDay(-6)); | |||
| int lastWeekCount = wxCouponOrderService.findCount(wxCouponOrder,tenantEntitys); | |||
| int lastWeekCount = wxCouponOrderService.findCount(wxCouponOrder); | |||
| NumberFormat nf = NumberFormat.getPercentInstance(); | |||
| nf.setMinimumFractionDigits(2);//控制保留小数点后几位,2:表示保留2位小数点 | |||
| @@ -92,6 +92,8 @@ public class WxChartServiceImpl implements WxChartDataService { | |||
| WxBillOtherMapper wxBillOtherMapper; | |||
| @Autowired | |||
| WxBillAllMapper wxBillAllMapper; | |||
| @Autowired | |||
| WxChartDataMapper wxChartDataMapper; | |||
| @Lazy | |||
| @Autowired | |||
| @@ -922,33 +924,22 @@ public class WxChartServiceImpl implements WxChartDataService { | |||
| * @return | |||
| */ | |||
| private ResultData getCarHistoryAndTodayAndHB(TenantEntity tenantEntity, boolean withOthers ) { | |||
| String startdate; | |||
| 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 -> { | |||
| return m.get("carcount"); | |||
| return m.getResult(); | |||
| })); | |||
| List<String> tjTimeList = DateUtils.getTjTimeList(startdate, enddate, "0"); | |||
| List<String> timeList = new ArrayList<>(); | |||
| List<Object> valList = new ArrayList<>(); | |||
| for (String date : tjTimeList) { | |||
| @@ -1015,8 +1006,8 @@ public class WxChartServiceImpl implements WxChartDataService { | |||
| 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()); | |||
| datamap.put("oneWeekCarPayCount", wxCarCmdLogMapper.queryWeekCarPayCount(weekParams)); | |||
| weekParams.put("cmdTypes", EnumCarCmd.getCarPay()); | |||
| datamap.put("oneWeekCarPayCount", wxCarCmdLogMapper.queryHistoryCount(weekParams)); | |||
| return new ResultData(datamap); | |||
| } | |||
| @@ -1183,20 +1174,19 @@ public class WxChartServiceImpl implements WxChartDataService { | |||
| */ | |||
| private ResultData getTodayCouponCount(TenantEntity tenantEntity) { | |||
| HashMap<String, Object> datamap = new HashMap<>(); | |||
| List<TenantEntity> tenantEntitys = wxMallMapper.getTenantEntitys(tenantEntity); | |||
| //今日领取券数 | |||
| //查询coupon order表 | |||
| WxCouponOrder wxCouponOrder = new WxCouponOrder(); | |||
| // wxCouponOrder.updateTenantInfo(tenantEntity); | |||
| wxCouponOrder.updateTenantInfo(tenantEntity); | |||
| wxCouponOrder.setStartTime(addDay(0)); | |||
| wxCouponOrder.setEndTime(addDay(1)); | |||
| int todayCouponCount = wxCouponOrderService.findCount(wxCouponOrder,tenantEntitys); | |||
| int todayCouponCount = wxCouponOrderService.findCount(wxCouponOrder); | |||
| wxCouponOrder.setStartTime(addDay(-1)); | |||
| wxCouponOrder.setEndTime( addDay(0)); | |||
| int yesterdayCount = wxCouponOrderService.findCount(wxCouponOrder,tenantEntitys); | |||
| int yesterdayCount = wxCouponOrderService.findCount(wxCouponOrder); | |||
| wxCouponOrder.setStartTime(addDay(-7)); | |||
| wxCouponOrder.setEndTime( addDay(-6)); | |||
| int lastWeekCount = wxCouponOrderService.findCount(wxCouponOrder,tenantEntitys); | |||
| int lastWeekCount = wxCouponOrderService.findCount(wxCouponOrder); | |||
| NumberFormat nf = NumberFormat.getPercentInstance(); | |||
| nf.setMinimumFractionDigits(2);//控制保留小数点后几位,2:表示保留2位小数点 | |||
| String couponUpDay = "--"; | |||
| @@ -301,14 +301,18 @@ public class WxCouponChannelServiceImpl implements WxCouponChannelService { | |||
| } | |||
| @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); | |||
| } | |||
| /** | |||
| @@ -2724,14 +2724,18 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { | |||
| 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 | |||
| @@ -247,6 +247,11 @@ public class WxMallServiceImpl implements WxMallService { | |||
| return wxMallMapper.listAsSelectMall(id); | |||
| } | |||
| /** | |||
| * 根据parentTenantId获取子广场列表 | |||
| * @param tenantEntity | |||
| * @return | |||
| */ | |||
| @Override | |||
| public List<TenantEntity> getTenantEntitys(TenantEntity tenantEntity) { | |||
| return wxMallMapper.getTenantEntitys(tenantEntity); | |||
| @@ -3247,6 +3247,21 @@ public class WxRentContractServiceImpl implements WxRentContractService { | |||
| 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) { | |||
| String s = "{\"siteMoney\":\"2\",\"facilityMoney\":\"3\",\"administratorMoney\":\"4\"}"; | |||
| @@ -12,6 +12,7 @@ import java.util.Map; | |||
| import javax.servlet.http.HttpServletRequest; | |||
| import javax.servlet.http.HttpServletResponse; | |||
| import com.iformall.mapper.*; | |||
| import org.apache.commons.beanutils.BeanUtils; | |||
| import org.apache.commons.collections.CollectionUtils; | |||
| import org.apache.commons.lang3.StringUtils; | |||
| @@ -42,10 +43,6 @@ import com.iformall.enums.EnumRentContractStatus; | |||
| import com.iformall.enums.EnumRentShopType; | |||
| import com.iformall.enums.EnumShopStatus; | |||
| 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.WxBrandService; | |||
| import com.iformall.service.WxBusinessService; | |||
| @@ -56,6 +53,9 @@ import com.iformall.service.WxShopService; | |||
| @Service | |||
| public class WxShopServiceImpl implements WxShopService { | |||
| private final Logger logger = LoggerFactory.getLogger(this.getClass()); | |||
| @Autowired | |||
| WxMallMapper wxMallMapper; | |||
| @Autowired | |||
| WxShopMapper wxShopMapper; | |||
| @@ -171,8 +171,23 @@ public class WxShopServiceImpl implements WxShopService { | |||
| } | |||
| 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) { | |||
| merchantMap = new HashMap<Long,WxMerchant>(); | |||
| } | |||
| @@ -87,6 +87,22 @@ | |||
| ) c | |||
| group by c.create_date | |||
| </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 count(c.id) carcount,c.create_time from ( | |||
| @@ -104,18 +120,20 @@ | |||
| ) c group by c.create_time order by c.create_time | |||
| </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"> | |||
| and `tenant_id` = #{tenantId} | |||
| </if> | |||
| <if test=" null != parentTenantId and '' != parentTenantId"> | |||
| and `parent_tenant_id` = #{parentTenantId} | |||
| </if> | |||
| and create_date BETWEEN #{startdate} and #{enddate} | |||
| and REPLACE (JSON_EXTRACT(cmd_json,'$.time'),'"','') BETWEEN #{startdate} and #{enddate} | |||
| </select> | |||
| <select id="queryWeekCarPay" resultType="hashmap" parameterType="hashmap"> | |||
| @@ -154,22 +172,6 @@ | |||
| </if> | |||
| group by xTime | |||
| </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 `tenant_id`,`parent_tenant_id` from wx_car_cmd_log | |||
| @@ -466,7 +466,7 @@ | |||
| </select> | |||
| <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} | |||
| <if test=" null != parentTenantId and '' != parentTenantId"> | |||
| and co.`parent_tenant_id` = #{parentTenantId} | |||
| @@ -221,13 +221,7 @@ | |||
| <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 id="findListAadmin" parameterType="com.iformall.domain.po.WxMall" resultMap="BaseResultMap"> | |||
| @@ -222,15 +222,19 @@ | |||
| <include refid="dynamicWhereConditions"/> | |||
| </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"> | |||
| and `tenant_id` = #{tenantId} | |||
| </if> | |||
| <if test=" null != parentTenantId and '' != parentTenantId"> | |||
| and `parent_tenant_id` = #{parentTenantId} | |||
| </if> | |||
| <if test=" null != rentShopType ">and rent_shop_type = #{rentShopType}</if> | |||
| <if test=" null != rentShopType "> | |||
| and rent_shop_type = #{rentShopType} | |||
| </if> | |||
| </select> | |||
| @@ -150,6 +150,13 @@ | |||
| <include refid="dynamicWhereConditions"/> | |||
| </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 | |||
| from wx_shop | |||
| @@ -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` >= #{startTime} | |||
| </if> | |||
| <if test=" null != endTime "> | |||
| and `querytime` <= #{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> | |||