|  |  |  | 
|---|
|  |  |  | import com.baomidou.mybatisplus.core.metadata.IPage; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.extension.api.R; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | 
|---|
|  |  |  | import com.dsh.course.feignClient.account.AppUserClient; | 
|---|
|  |  |  | import com.dsh.course.feignClient.account.StudentClient; | 
|---|
|  |  |  | import com.dsh.course.feignClient.account.model.TAppUser; | 
|---|
|  |  |  | import com.dsh.course.feignClient.activity.HuiminCardClient; | 
|---|
|  |  |  | import com.dsh.course.feignClient.activity.model.THuiminCard; | 
|---|
|  |  |  | import com.dsh.guns.config.UserExt; | 
|---|
|  |  |  | 
|---|
|  |  |  | import java.util.stream.Collectors; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 惠民卡控制器 | 
|---|
|  |  |  | * 玩湃惠民卡控制器 | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @author fengshuonan | 
|---|
|  |  |  | * @Date 2025-03-29 17:41:25 | 
|---|
|  |  |  | 
|---|
|  |  |  | private TOperatorService operatorService; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private ITSiteService tSiteService; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private AppUserClient appUserClient; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private StudentClient studentClient; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 跳转到惠民卡首页 | 
|---|
|  |  |  | * 跳转到玩湃惠民卡首页 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @RequestMapping("") | 
|---|
|  |  |  | public String index() { | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 跳转到添加惠民卡 | 
|---|
|  |  |  | * 跳转到添加玩湃惠民卡 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @RequestMapping("/tHuiminCard_add") | 
|---|
|  |  |  | public String tHuiminCardAdd(Model model) { | 
|---|
|  |  |  | 
|---|
|  |  |  | model.addAttribute("objectType", user.getObjectType()); | 
|---|
|  |  |  | return PREFIX + "tHuiminCard_detail.html"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取惠民卡详情 | 
|---|
|  |  |  | * 跳转到订单录入页面 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @RequestMapping("/tHuiminCardAddOrder") | 
|---|
|  |  |  | public String tHuiminCardAddOrder(Model model) { | 
|---|
|  |  |  | Integer objectType = UserExt.getUser().getObjectType(); | 
|---|
|  |  |  | Integer objectId = UserExt.getUser().getObjectId(); | 
|---|
|  |  |  | model.addAttribute("role", objectType); | 
|---|
|  |  |  | if (objectType==1){ | 
|---|
|  |  |  | List<TOperator> list = operatorService.list(new LambdaQueryWrapper<TOperator>() | 
|---|
|  |  |  | .eq(TOperator::getState, 1)); | 
|---|
|  |  |  | model.addAttribute("operators", list); | 
|---|
|  |  |  | }else if (objectType==2){ | 
|---|
|  |  |  | List<TStore> list = storeService.list(new LambdaQueryWrapper<TStore>() | 
|---|
|  |  |  | .eq(TStore::getOperatorId, objectId)); | 
|---|
|  |  |  | model.addAttribute("stores", list); | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | List<THuiminCard> cards = huiminCardClient.getCards(objectId + ""); | 
|---|
|  |  |  | model.addAttribute("cards", cards); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return PREFIX + "tHuiminCard_addOrder.html"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | @RequestMapping("/addPayHuiMing") | 
|---|
|  |  |  | @ResponseBody | 
|---|
|  |  |  | public Object addPayHuiMing(Integer studentId,Integer cardId) { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | huiminCardClient.addPayHuiMing(studentId ,cardId); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return 200; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | @RequestMapping(value = "/checkUser") | 
|---|
|  |  |  | @ResponseBody | 
|---|
|  |  |  | public Object checkUser(String phone) { | 
|---|
|  |  |  | TAppUser appUserByPhone = appUserClient.getAppUserByPhone(phone); | 
|---|
|  |  |  | if (appUserByPhone==null){ | 
|---|
|  |  |  | return 500; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | List<TStudent> tStudents = studentClient.queryStudentList(appUserByPhone.getId()); | 
|---|
|  |  |  | if (tStudents.isEmpty()){ | 
|---|
|  |  |  | return 501; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return tStudents; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | @RequestMapping(value = "/getStores") | 
|---|
|  |  |  | @ResponseBody | 
|---|
|  |  |  | public Object getStores(String operatorId) { | 
|---|
|  |  |  | if (operatorId.isEmpty()){ | 
|---|
|  |  |  | return  new ArrayList<>(); | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | List<TStore> list = storeService.lambdaQuery().eq(TStore::getOperatorId, operatorId).list(); | 
|---|
|  |  |  | return list; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | @RequestMapping(value = "/getCards") | 
|---|
|  |  |  | @ResponseBody | 
|---|
|  |  |  | public Object getCards(String storeId) { | 
|---|
|  |  |  | List<THuiminCard> list = huiminCardClient.getCards(storeId); | 
|---|
|  |  |  | return list; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取玩湃惠民卡详情 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @RequestMapping("/getDetail") | 
|---|
|  |  |  | @ResponseBody | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 获取惠民卡列表 | 
|---|
|  |  |  | * 获取玩湃惠民卡列表 | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @RequestMapping(value = "/list") | 
|---|
|  |  |  | 
|---|
|  |  |  | storeIds.addAll(storeIdsByName); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 收集operatorId条件的storeIds(不提前返回null) | 
|---|
|  |  |  | Integer operatorId = query.getOperatorId(); | 
|---|
|  |  |  | if (operatorId != null) { | 
|---|
|  |  |  | List<String> storeIdsByOperatorId = storeService.listObjs( | 
|---|
|  |  |  | new LambdaQueryWrapper<TStore>() | 
|---|
|  |  |  | .select(TStore::getId) | 
|---|
|  |  |  | .eq(TStore::getOperatorId, operatorId), | 
|---|
|  |  |  | String::valueOf); | 
|---|
|  |  |  | storeIds.addAll(storeIdsByOperatorId); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // 处理用户权限过滤(objectType为2) | 
|---|
|  |  |  | Integer operatorId = query.getOperatorId(); | 
|---|
|  |  |  | User user = UserExt.getUser(); | 
|---|
|  |  |  | if (user != null && user.getObjectType() == 2) { | 
|---|
|  |  |  | List<String> authorizedStoreIds = storeService.listObjs( | 
|---|
|  |  |  | new LambdaQueryWrapper<TStore>() | 
|---|
|  |  |  | .select(TStore::getId) | 
|---|
|  |  |  | .eq(TStore::getOperatorId, user.getObjectId()), | 
|---|
|  |  |  | String::valueOf); | 
|---|
|  |  |  | if (authorizedStoreIds.isEmpty()) { | 
|---|
|  |  |  | new Page(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (storeIds.isEmpty()){ | 
|---|
|  |  |  | storeIds.addAll(authorizedStoreIds); | 
|---|
|  |  |  | }else { | 
|---|
|  |  |  | storeIds.retainAll(new HashSet<>(authorizedStoreIds)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | operatorId =  user.getObjectId(); | 
|---|
|  |  |  | }else if (user != null && user.getObjectType() == 3){ | 
|---|
|  |  |  | storeIds = new ArrayList<>(); | 
|---|
|  |  |  | storeIds.add(String.valueOf(user.getObjectId())); | 
|---|
|  |  |  | 
|---|
|  |  |  | Page<TSite> sitePage = tSiteService.page(page, | 
|---|
|  |  |  | new LambdaQueryWrapper<TSite>() | 
|---|
|  |  |  | .eq(!StringUtils.isEmpty(query.getProvinceCode()), TSite::getProvinceCode, query.getProvinceCode()) | 
|---|
|  |  |  | .eq(operatorId != null, TSite::getOperatorId, operatorId) | 
|---|
|  |  |  | .ne(TSite::getState,3) | 
|---|
|  |  |  | .eq(TSite::getSign,0) | 
|---|
|  |  |  | .eq(!StringUtils.isEmpty(query.getCityCode()), TSite::getCityCode, query.getCityCode()) | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /*  *//** | 
|---|
|  |  |  | * 跳转到修改惠民卡 | 
|---|
|  |  |  | * 跳转到修改玩湃惠民卡 | 
|---|
|  |  |  | *//* | 
|---|
|  |  |  | @RequestMapping("/tHuiminCard_update/{tHuiminCardId}") | 
|---|
|  |  |  | public String tHuiminCardUpdate(@PathVariable Integer tHuiminCardId, Model model) { | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | *//** | 
|---|
|  |  |  | * 获取惠民卡列表 | 
|---|
|  |  |  | * 获取玩湃惠民卡列表 | 
|---|
|  |  |  | *//* | 
|---|
|  |  |  | @RequestMapping(value = "/list") | 
|---|
|  |  |  | @ResponseBody | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | *//** | 
|---|
|  |  |  | * 修改惠民卡 | 
|---|
|  |  |  | * 修改玩湃惠民卡 | 
|---|
|  |  |  | *//* | 
|---|
|  |  |  | @RequestMapping(value = "/update") | 
|---|
|  |  |  | @ResponseBody | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | *//** | 
|---|
|  |  |  | * 惠民卡详情 | 
|---|
|  |  |  | * 玩湃惠民卡详情 | 
|---|
|  |  |  | *//* | 
|---|
|  |  |  | @RequestMapping(value = "/detail/{tHuiminCardId}") | 
|---|
|  |  |  | @ResponseBody | 
|---|