diff --git a/src/main/java/com/kiisoo/ic/customer/CustomerService.java b/src/main/java/com/kiisoo/ic/customer/CustomerService.java index 42dbc67..2e1ca2c 100644 --- a/src/main/java/com/kiisoo/ic/customer/CustomerService.java +++ b/src/main/java/com/kiisoo/ic/customer/CustomerService.java @@ -352,17 +352,42 @@ public class CustomerService { * @date 2020/05/24 13:46 */ private void handleDelCustomer (TurnBackDTO turnBackDTOS) { + String customerUserId = turnBackDTOS.getWxData().getUserId(); + if (StringUtils.isBlank(customerUserId)){ + return; + } + privilageCpUserDOMapper.deleteCount(customerUserId,turnBackDTOS.getUserId()); + QueryWrapper customerQw = new QueryWrapper<>(); + customerQw.eq("external_userid",customerUserId).last("limit 1"); + OpCustomer customer = opCustomerDOMapper.selectOne(customerQw); + if (customer == null){ + return; + } //店铺信息 PrivilageCpUserStoreDO poiStore = privilageCpUserStoreDOMapper.selectOneCpUser(turnBackDTOS.getUserId()); if (null == poiStore) { - //无店铺数据处理 - log.error("无店铺数据处理 no store data : " + turnBackDTOS.toString()); - return; - } - - - + QueryWrapper cpUserQw = new QueryWrapper<>(); + cpUserQw.eq("cp_user_id",turnBackDTOS.getUserId()).last("limit 1"); + PrivilageCpUserDO privilageCpUserDO = privilageCpUserDOMapper.selectOne(cpUserQw); + QueryWrapper relationQw = new QueryWrapper<>(); + relationQw.eq("customer_id",customer.getId()).eq("user_id",privilageCpUserDO.getId()).eq("type",3); + privilageCpUserStoreDOMapper.delete(relationQw); + }else{ + String eaCode = turnBackDTOS.getEaCode(); + PoiStoreStaff staff; + QueryWrapper staffQw = new QueryWrapper<>(); + if (StringUtils.isNotBlank(eaCode) && !"0".equals(eaCode)){ + staffQw.eq("staff_code",eaCode).eq("type",4).eq("store_id",poiStore.getStoreId()).last("limit 1"); + staff = poiStoreStaffDOMapper.selectOne(staffQw); + }else{ + staffQw.eq("staff_code",turnBackDTOS.getUserId()).eq("type",1).eq("store_id",poiStore.getStoreId()).last("limit 1"); + staff = poiStoreStaffDOMapper.selectOne(staffQw); + } + QueryWrapper relationQw = new QueryWrapper<>(); + relationQw.eq("customer_id",customer.getId()).eq("user_id",staff.getId()); + privilageCpUserStoreDOMapper.delete(relationQw); + } } /** diff --git a/src/main/java/com/kiisoo/ic/employee/mapper/PrivilageCpUserDOMapper.java b/src/main/java/com/kiisoo/ic/employee/mapper/PrivilageCpUserDOMapper.java index f5936eb..492f78d 100644 --- a/src/main/java/com/kiisoo/ic/employee/mapper/PrivilageCpUserDOMapper.java +++ b/src/main/java/com/kiisoo/ic/employee/mapper/PrivilageCpUserDOMapper.java @@ -31,4 +31,6 @@ public interface PrivilageCpUserDOMapper extends BaseMapper { Long selectDistinctStoresCount(@Param("cpUserIds")List cpUserIds); + int deleteCount(@Param("customerUserId")String customerUserId, @Param("cpUserId")String cpUserId); + } diff --git a/src/main/resources/mapper/PrivilageCpUserDOMapper.xml b/src/main/resources/mapper/PrivilageCpUserDOMapper.xml index 0253e24..541e36a 100644 --- a/src/main/resources/mapper/PrivilageCpUserDOMapper.xml +++ b/src/main/resources/mapper/PrivilageCpUserDOMapper.xml @@ -53,4 +53,8 @@ select distinct customer_user_id from op_cp_user_customer_relation where cp_user_id = #{cpUserId} + + delete from op_cp_user_customer_relation where customer_user_id = #{customerUserId} and cp_user_id = #{cpUserId} + +