店铺对应的推广用户

master
wangweijia 6 years ago
parent 86319bfa1f
commit adafa57e55

@ -17,6 +17,7 @@ import com.kiisoo.ic.customer.entity.OpVip;
import com.kiisoo.ic.customer.mapper.OpCustomerDOMapper;
import com.kiisoo.ic.customer.mapper.OpSellerCustomerRelationDOMapper;
import com.kiisoo.ic.customer.mapper.OpVipDOMapper;
import com.kiisoo.ic.customer.service.CustomerViewService;
import com.kiisoo.ic.domain.service.PrivilageDomainService;
import com.kiisoo.ic.generalize.service.RetailCompanyService;
import com.kiisoo.ic.store.entity.PoiStore;
@ -73,6 +74,8 @@ public class CustomerService {
@Autowired
private RetailCompanyService retailCompanyService;
@Autowired
private CustomerViewService customerViewService;
/**
* token
@ -372,10 +375,8 @@ public class CustomerService {
shopIds.retainAll(userAllShops);
}else if(companyId != null){
//如果有公司则查公司店铺
List<PoiStore> shops = retailCompanyService.selectShopByCompany(companyId);
shopIds = shops.stream().map(p -> p.getId()).collect(Collectors.toSet());
List<Long> userAllShops = privilageDomainService.listUserDatePermission(userId);
shopIds.retainAll(userAllShops);
Set<Long> sp = customerViewService.getCompanyShop(companyId, userId);
shopIds.addAll(sp);
}else{
//查询用户权限店铺
shopIds = new HashSet<>(privilageDomainService.listUserDatePermission(userId));

@ -398,7 +398,7 @@ public class CustomerViewService {
//找到公司店铺
List<PoiStore> shops = new ArrayList<>();
minCompany.forEach(item -> {
shops.addAll(retailCompanyService.selectShopByCompany(item));
shops.addAll(retailCompanyService.selectCustomerShopByCompany(item));
});
//公司店铺和权限做交集
Set<Long> shopIds = shops.stream().map(p -> p.getId()).collect(Collectors.toSet());

@ -201,6 +201,16 @@ public class RetailCompanyService {
return poiStoreDOMapper.selectShopByCustomerIds(new ArrayList<>(customerIds));
}
/**
*
* @param orgId id
* @return
*/
public List<PoiStore> selectCustomerShopByCompany(Long orgId){
return poiStoreDOMapper.selectCustomerShopByCompany(orgId);
}
/**
*
* @param shopId id

@ -37,6 +37,8 @@ public interface PoiStoreDOMapper extends BaseMapper<PoiStore> {
List<PoiStore> selectShopByCompany(Long orgId);
List<PoiStore> selectCustomerShopByCompany(Long orgId);
List<PrivilageUserDO> selectSellerByShop(Long shopId);
String selectStoreQrCode(@Param("shopId")Long shopId);

@ -1,5 +1,6 @@
package com.kiisoo.ic.store.service;
import com.kiisoo.ic.customer.service.CustomerViewService;
import com.kiisoo.ic.domain.service.PrivilageDomainService;
import com.kiisoo.ic.generalize.service.RetailCompanyService;
import com.kiisoo.ic.store.bean.PoiStoreStaffDTO;
@ -11,6 +12,7 @@ import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
/**
@ -29,7 +31,7 @@ public class PoiSellerService {
private PrivilageDomainService privilageDomainService;
@Autowired
private RetailCompanyService retailCompanyService;
private CustomerViewService customerViewService;
/**
* id
* @param shopId id
@ -56,10 +58,7 @@ public class PoiSellerService {
shopIds.retainAll(regionShopIds);
}else if(companyId != null){
//有公司就查公司店铺
shopIds = privilageDomainService.listUserDatePermission(userId);
List<PoiStore> stores = retailCompanyService.selectShopByCompany(companyId);
List<Long> regionShopIds = stores.stream().map(i -> i.getId()).collect(Collectors.toList());
shopIds.retainAll(regionShopIds);
shopIds.addAll(customerViewService.getCompanyShop(companyId,userId));
}else{
//什么都没有就全查
shopIds = privilageDomainService.listUserDatePermission(userId);

@ -1,6 +1,7 @@
package com.kiisoo.ic.store.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.kiisoo.ic.customer.service.CustomerViewService;
import com.kiisoo.ic.domain.service.PrivilageDomainService;
import com.kiisoo.ic.generalize.service.RetailCompanyService;
import com.kiisoo.ic.store.bean.PoiStoreStaffDTO;
@ -13,6 +14,7 @@ import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
/**
*
@ -28,6 +30,9 @@ public class PoiStoreService {
@Autowired
private RetailCompanyService retailCompanyService;
@Autowired
private CustomerViewService customerViewService;
/**
* id
* @param regionId
@ -41,24 +46,27 @@ public class PoiStoreService {
* id
* @param regionId
*/
public List<PoiStore> getRegionShop(long userId,Long bigRegionId, Long companyId){
public List<PoiStore> getRegionShop(long userId,Long regionId, Long companyId){
List<PoiStore> poiStores = new ArrayList<>();
//找到店铺集合
List<Long> shopsIds = privilageDomainService.listUserDatePermission(userId);
if(companyId != null){
List<PoiStore> regionPoiStores = retailCompanyService.selectShopByCompany(companyId);
if(null != regionId){
List<PoiStore> regionPoiStores = poiStoreDOMapper.selectRegionShop(regionId);
for(PoiStore item : regionPoiStores){
if(shopsIds.contains(item.getId())){
poiStores.add(item);
}
}
}else if(null != bigRegionId){
List<PoiStore> regionPoiStores = retailCompanyService.selectShopByBigRegion(bigRegionId);
}else if(companyId != null){
Set<Long> shops = customerViewService.getCompanyShop(companyId,userId);
if(shops.size() > 0){
List<PoiStore> regionPoiStores = poiStoreDOMapper.selectBatchIds(shops);
for(PoiStore item : regionPoiStores){
if(shopsIds.contains(item.getId())){
poiStores.add(item);
}
}
}
}else{
poiStores = poiStoreDOMapper.selectBatchIds(shopsIds);
}

@ -8,7 +8,7 @@ mybatis:
spring:
datasource:
url: jdbc:mysql://192.168.0.215:3306/ic?characterEncoding=utf8&allowMultiQueries=true&autoReconnect=true
url: jdbc:mysql://192.168.0.215:3306/ic1?characterEncoding=utf8&allowMultiQueries=true&autoReconnect=true
username: p2p
password: p2p
driver-class-name: com.mysql.jdbc.Driver

@ -45,6 +45,23 @@
and t2.entity_id = t3.id
and t2.type = 3
</select>
<select id="selectCustomerShopByCompany" resultType="com.kiisoo.ic.store.entity.PoiStore">
select t3.id,t3.name
from privilage_organizational t,
privilage_organizational_domain t1,
privilage_domain_entity t2,
poi_store t3
where 1 = 1
and t.id = #{orgId}
and t.level = 3
and t.id = t1.org_id
and t1.domain_id = t2.domain_id
and t2.entity_id = t3.id
and t2.type = 3
</select>
<select id="selectShopByCustomerIds" resultType="com.kiisoo.ic.store.entity.PoiStore">
select t3.id,t3.name
from privilage_organizational_domain t1,

Loading…
Cancel
Save