diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxAllBill.java b/mallinkService/src/main/java/com/iformall/domain/po/WxAllBill.java index 56094114e..9453638a6 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxAllBill.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxAllBill.java @@ -415,13 +415,15 @@ public class WxAllBill extends TenantEntity { @TableField(exist = false) private String energyFeesIdStr; @TableField(exist = false) - private String merchantLinkPerson; + private String cusLinkPerson; @TableField(exist = false) - private String merchantPhone; + private String cusPhone; @TableField(exist = false) private String queryShopNumber; @TableField(exist = false) - private String rentName; - @TableField(exist = false) private Date receiveDateEnd; + @TableField(exist = false) + private List shopIdList; + @TableField(exist = false) + private List cusNameShopIdList; } diff --git a/mallinkService/src/main/java/com/iformall/service/WxShopService.java b/mallinkService/src/main/java/com/iformall/service/WxShopService.java index dc934c088..99c72d9ae 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxShopService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxShopService.java @@ -122,8 +122,6 @@ public interface WxShopService { Map getMerchantShopNumberMap(TenantEntity tenantEntity,List merchantIds,Integer isDel); - List getFloorBuildShopIds(TenantEntity tenantEntity,String floorRule,Long building,Long floor,Integer shopDel) ; - List getMerchantIds(WxShop wxShop); List getShopNumberList(WxShop wxShop); @@ -146,5 +144,7 @@ public interface WxShopService { Map getShopUserMap(WxShopUsers wxShopUsers); WxShopUsers getCurrentShopUser(TenantEntity tenantEntity,Long shopId); + + List getFloorBuildShopIds(TenantEntity tenantEntity,String floorRule,Long building,Long floor,Integer shopDel ,String shopNumber) ; } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxAllBillServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxAllBillServiceImpl.java index 0ab0e4708..1ac58b9c2 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxAllBillServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxAllBillServiceImpl.java @@ -18,6 +18,8 @@ import com.iformall.domain.po.WxMerchant; import com.iformall.domain.po.WxMerchantBUser; import com.iformall.domain.po.WxPropertyContract; import com.iformall.domain.po.WxRentContract; +import com.iformall.domain.po.WxShop; +import com.iformall.domain.po.WxShopUsers; import com.iformall.domain.po.base.TenantEntity; import com.iformall.domain.vo.RatioVo; import com.iformall.domain.vo.WxBillHotNotify; @@ -27,6 +29,7 @@ import com.iformall.enums.EnumBillAction; import com.iformall.enums.EnumBillAllType; import com.iformall.enums.EnumBillStatus; import com.iformall.enums.EnumRentShopType; +import com.iformall.enums.EnumShopUsersStatus; import com.iformall.enums.EnumYesOrNo; import com.iformall.exception.MallinkException; import com.iformall.mapper.WxAllBillMapper; @@ -118,31 +121,21 @@ public class WxAllBillServiceImpl extends WxBillBaseService implements WxAllBill private void updateQueryParam(WxAllBill wxBillRent) { if (StringUtils.isNotBlank(wxBillRent.getShopNumber()) || null != wxBillRent.getFloorForRule() || null != wxBillRent.getFloor() || null != wxBillRent.getBuilding()) { - List merchantIds = wxMerchantService.getFloorBuildMerchantIds(wxBillRent, wxBillRent.getFloorForRule(), wxBillRent.getBuilding(), wxBillRent.getFloor(),wxBillRent.getShopTypeForRule(), 0, 0,wxBillRent.getShopNumber()); - if (null != merchantIds) { - wxBillRent.setMerchantIdList(merchantIds); + List shopIds = wxShopService.getFloorBuildShopIds(wxBillRent, wxBillRent.getFloorForRule(), wxBillRent.getBuilding(), wxBillRent.getFloor(), 0,wxBillRent.getShopNumber()); + if (null != shopIds && shopIds.size() > 0 ) { + wxBillRent.setShopIdList(shopIds); }else { wxBillRent.setId(-1L); } } - - if (StringUtils.isNotBlank(wxBillRent.getMerchantName()) || StringUtils.isNotBlank(wxBillRent.getShopTypeForRule())) { - WxMerchant mq = new WxMerchant(); - mq.updateTenantInfo(wxBillRent); - mq.setName(StringUtils.trimToNull(wxBillRent.getMerchantName())); - mq.setShopTypeForRule(wxBillRent.getShopTypeForRule()); - List mids = wxMerchantService.findIdList(mq); - if (null != mids && mids.size() > 0 ) { - if (null != wxBillRent.getMerchantIdList()) { - List _mids = (List) CollectionUtils.intersection(mids, wxBillRent.getMerchantIdList()); - if (null == _mids || _mids.size() <= 0) { - wxBillRent.setId(-1L); - }else { - wxBillRent.setMerchantIdList(_mids); - } - }else { - wxBillRent.setMerchantIdList(mids); - } + //List _sids = (List) CollectionUtils.intersection(shopIds, wxBillRent.getShopIdList()); + if (StringUtils.isNotBlank(wxBillRent.getCusName())) { + WxShopUsers suq = new WxShopUsers(); + suq.updateTenantInfo(wxBillRent); + suq.setName(wxBillRent.getCusName()); + List shopIds = wxShopService.getUserShopIds(suq); + if (null != shopIds && shopIds.size() > 0 ) { + wxBillRent.setCusNameShopIdList(shopIds);; }else { wxBillRent.setId(-1L); } @@ -170,36 +163,52 @@ public class WxAllBillServiceImpl extends WxBillBaseService implements WxAllBill } if (null != page.getList() && page.getList().size() > 0 ) { - List merchantIds = new ArrayList(); + List shopIds = new ArrayList(); for (int i = 0 ; i < page.getList().size() ; i ++) { WxAllBill ab = page.getList().get(i); - merchantIds.add(ab.getMerchantId()); + if (null != ab.getShopId()) { + shopIds.add(ab.getShopId()); + } } - Map shopNumberMap = wxShopService.getMerchantShopNumberMap(record, merchantIds, null); - WxMerchant mq = new WxMerchant(); - mq.updateTenantInfo(record); - mq.setIds(merchantIds); - Map merchantMap = wxMerchantService.findMerchantMap(mq); + Map shopMap = null; + Map shopUserMap = null; + if (shopIds.size() > 0 ) { + WxShop sq = new WxShop(); + sq.updateTenantInfo(record); + sq.setIds(shopIds); + shopMap = wxShopService.findShopMap(sq); + + WxShopUsers suq = new WxShopUsers(); + suq.updateTenantInfo(record); + suq.setShopIds(shopIds); + suq.setStatus(EnumShopUsersStatus.LIVE.getCode()); + shopUserMap = wxShopService.getShopUserMap(suq); + } WxEnergyFees fq = new WxEnergyFees(); fq.updateTenantInfo(record); Map feesMap = wxEnergyService.getFeesMap(fq); for (int i = 0 ; i < page.getList().size() ; i ++) { WxAllBill e = page.getList().get(i); - if (StringUtils.isBlank(e.getShopNumber())) { - if (null != shopNumberMap) { - e.setShopNumber(shopNumberMap.get(e.getMerchantId())); - } - } - if (null != merchantMap) { - WxMerchant m = merchantMap.get(e.getMerchantId()); - if (null != m) { - e.setMerchantName(m.getName()); - e.setMerchantLinkPerson(m.getLinkPerson()); - e.setMerchantPhone(m.getLinkPhone()); - e.setRentName(wxShopService.getRentName(m)); - } + if (null != e.getShopId()) { + if (null != shopMap) { + WxShop shop = shopMap.get(e.getShopId()); + if (null != shop) { + e.setShopNumber(shop.getShopNumber()); + } + } + + if (null != shopUserMap) { + WxShopUsers wsu = shopUserMap.get(e.getShopId()); + if (null != wsu) { + if (StringUtils.isBlank(e.getCusName())) { + e.setCusName(wsu.getName()); + } + e.setCusLinkPerson(wsu.getLinkPerson()); + e.setCusPhone(wsu.getPhone()); + } + } } if (null != feesMap) { WxEnergyFees f = feesMap.get(e.getEnergyFeesId()); @@ -227,12 +236,22 @@ public class WxAllBillServiceImpl extends WxBillBaseService implements WxAllBill @Override public WxAllBill getById(TenantEntity tenantEntity,Long id) { WxAllBill bill = wxAllBillMapper.selectById(id, tenantEntity.getTenantId()); - if (null != bill) { - WxMerchant merchant = wxMerchantService.selectById(bill.getMerchantId()); - if (null != merchant) { - bill.setMerchantName(merchant.getName()); - bill.setMerchantLinkPerson(merchant.getLinkPerson()); - bill.setMerchantPhone(merchant.getLinkPhone()); + if (null != bill && null != bill.getShopId()) { + WxShop shop = wxShopService.getById(bill.getShopId()); + WxShopUsers suq = new WxShopUsers(); + suq.updateTenantInfo(tenantEntity); + suq.setShopId(bill.getShopId()); + suq.setStatus(EnumShopUsersStatus.LIVE.getCode()); + WxShopUsers su = wxShopService.getOneShopUsers(suq); + if (null != shop) { + bill.setShopNumber(shop.getShopNumber()); + } + if (null != su) { + if (StringUtils.isBlank(bill.getCusName())) { + bill.setCusName(su.getName()); + } + bill.setCusLinkPerson(su.getLinkPerson()); + bill.setCusPhone(su.getPhone()); } } return bill; diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java index d6818c7a2..fc97f0b3f 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxShopServiceImpl.java @@ -1006,29 +1006,6 @@ public class WxShopServiceImpl implements WxShopService { return null; } - @Override - public List getFloorBuildShopIds(TenantEntity tenantEntity, String floorRule, Long building, Long floor,Integer shopDel) { - if (null != floorRule || null != building || null != floor) { - WxShop shopQ = new WxShop(); - if (null != shopDel) { - shopQ.setIsDel(shopDel); - } - shopQ.updateTenantInfo(tenantEntity); - if (null != floorRule) { - shopQ.setFloorForRule(floorRule); - } - if (null != building) { - shopQ.setBuilding(building); - } - if (null != floor) { - shopQ.setFloor(floor); - } - List shopIds = wxShopMapper.findIdList(shopQ); - return shopIds; - } - return null; - } - @Override public List getMerchantIds(WxShop wxShop) { List shopIds = this.getShopIds(wxShop); @@ -1049,6 +1026,7 @@ public class WxShopServiceImpl implements WxShopService { @Override public WxShopUsers getOneShopUsers(WxShopUsers wxShopUsers) { + wxShopUsers.setSortColumn(" status asc, type desc"); List list = wxShopUsersMapper.findList(wxShopUsers); if (null != list && list.size() > 0) { return list.get(0); @@ -1148,4 +1126,29 @@ public class WxShopServiceImpl implements WxShopService { }; return list.get(0); } + + @Override + public List getFloorBuildShopIds(TenantEntity tenantEntity, String floorRule, Long building, Long floor, + Integer shopDel, String shopNumber) { + WxShop shopQ = new WxShop(); + if (null != shopDel) { + shopQ.setIsDel(shopDel); + } + shopQ.updateTenantInfo(tenantEntity); + if (null != floorRule) { + shopQ.setFloorForRule(floorRule); + } + if (null != building) { + shopQ.setBuilding(building); + } + if (null != floor) { + shopQ.setFloor(floor); + } + if (StringUtils.isNotBlank(shopNumber)) { + shopQ.setShopNumber(shopNumber); + } + + List shopIds = wxShopMapper.findIdList(shopQ); + return shopIds; + } } diff --git a/mallinkService/src/main/resources/mapper/WxAllBillMapper.xml b/mallinkService/src/main/resources/mapper/WxAllBillMapper.xml index 770158147..35a2307d7 100644 --- a/mallinkService/src/main/resources/mapper/WxAllBillMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxAllBillMapper.xml @@ -61,6 +61,7 @@ where `tenant_id` = #{tenantId} and `id` = #{id} and `parent_tenant_id` = #{parentTenantId} + and `shop_id` = #{shopId} and `create_by` = #{createBy} and `create_by_name` like concat('%',#{createByName},'%') and `bill_type` = #{billType} @@ -132,6 +133,23 @@ and `parent_bill_id` is null and `energy_reading_calcuteId` = #{energyReadingCalcuteId} and `energy_reading_id` = #{energyReadingId} + + and ( cus_name like concat('%',#{cusName},'%') + + or `shop_id` in + + #{cusShopidItem} + + + ) + + + + and `shop_id` in + + #{shopidItem} + + and `energy_fees_id` in