刘帅
2026-09-30 4e8cadb13ebd6f01b8cf6d5cc89757cf8e960792
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TShopController.java
@@ -333,8 +333,8 @@
        String roleid = UserExt.getUser().getRoleid();
        model.addAttribute("role",roleid);
        model.addAttribute("time",byId.getStartTime()+" - "+byId.getEndTime());
        User byId1 = userMapper.selectById(byId.getStoreStaffId());
        model.addAttribute("city",byId1);
        model.addAttribute("managerName", byId.getManagerName());
        model.addAttribute("managerPhone", byId.getPhone());
        model.addAttribute("type",1);
        // 如果当前登陆人是运营商
        if (UserExt.getUser().getObjectType()==2){
@@ -414,8 +414,8 @@
        String roleid = UserExt.getUser().getRoleid();
        model.addAttribute("role",roleid);
        model.addAttribute("time",byId.getStartTime()+" - "+byId.getEndTime());
        User byId1 = userMapper.selectById(byId.getStoreStaffId());
        model.addAttribute("city",byId1);
        model.addAttribute("managerName", byId.getManagerName());
        model.addAttribute("managerPhone", byId.getPhone());
        model.addAttribute("type",0);
        return PREFIX + "TShop_edit.html";
@@ -469,18 +469,27 @@
    @ResponseBody
    public Object list(String provinceCode, String cityCode , String name, String phone,String shopName) {
        Page<TStoreListVo> page = new PageFactory<TStoreListVo>().defaultPage();
        String roleid = UserExt.getUser().getRoleid();
        List<TStoreListVo> list =new ArrayList<>();
        if("3".equals(roleid)){
            Integer objectId = UserExt.getUser().getObjectId();
            list = storeService.listAllStore(page,provinceCode,cityCode,name,phone,shopName,objectId);
        }else {
        Integer objectType = UserExt.getUser().getObjectType();
        if (Integer.valueOf(3).equals(objectType)) {
            // 门店员工按员工-门店中间表的数据范围查询;getStoreIdsByUserId 同时兼容
            // sys_user.objectId 和 t_store.storeStaffId 两种历史归属数据。
            List<Integer> storeIds = userMapper.getStoreIdsByUserId(UserExt.getUser().getId());
            if (!CollectionUtils.isEmpty(storeIds)) {
                list = storeService.listAllStoresByIds(page, provinceCode, cityCode, name, phone, shopName, storeIds);
            }
        } else if (Integer.valueOf(2).equals(objectType)) {
            Integer objectId = UserExt.getUser().getObjectId();
            list = storeService.listAll(page,provinceCode,cityCode,name,phone,shopName,objectId);
        } else {
            // 平台账号不带运营商条件,查询全部门店;数据范围由 objectType 决定,
            // 不能用 roleid(菜单权限)判断,避免员工被授予角色 1 后被误当成运营商。
            list = storeService.listAll(page, provinceCode, cityCode, name, phone, shopName, null);
        }
        page.setRecords(list);
        return  super.packForBT(page);
    }
    @RequestMapping(value = "/listOne")
    @ResponseBody
    public Object listOne(Integer id) {
@@ -501,15 +510,20 @@
    @ResponseBody
    public Object listTwo1(Integer id) {
        Page<TStoreOtherConfigTrue> page = new PageFactory<TStoreOtherConfigTrue>().defaultPage();
        List<TStoreOtherConfigTrue> list = tStoreOtherConfigTrueService.page(page,new LambdaQueryWrapper<TStoreOtherConfigTrue>().eq(TStoreOtherConfigTrue::getPid, id).eq(TStoreOtherConfigTrue::getState,1)).getRecords();
        List<TStoreOtherConfigTrue> list = tStoreOtherConfigTrueService.page(page,new LambdaQueryWrapper<TStoreOtherConfigTrue>().eq(TStoreOtherConfigTrue::getPid, id).eq(TStoreOtherConfigTrue::getState,1).orderByDesc(TStoreOtherConfigTrue::getId)).getRecords();
        page.setRecords(list);
        return  super.packForBT(page);
    }
    @RequestMapping(value = "/add")
    @ResponseBody
    public Object list(TStore tStore,String time,String userName,String userPhone,String ids,Integer type,Integer yyId,String lat,String lon,String pCode1,String cCode1) {
    public Object list(TStore tStore, String time, String ids, Integer type, Integer yyId, String lat, String lon,
                       String pCode1, String cCode1, String userName) {
        try {
            if (ToolUtil.isEmpty(userName) || ToolUtil.isEmpty(tStore.getPhone())) {
                return ERROR;
            }
            tStore.setManagerName(userName);
            if(yyId==null || type==1){
                yyId=0;
            }
@@ -569,20 +583,6 @@
            tStore.setOperatorId(yyId);
            tStore.setState(1);
            tStore.setCreateTime(new Date());
            User user = new User();
            List<User> users = userMapper.selectList(new LambdaQueryWrapper<User>().eq(User::getAccount, userPhone));
            if(users.size()>0){
                return "5001";
            }
            user.setAccount(userPhone);
            user.setName(userName);
            user.setRoleid("3");
            user.setPhone(userPhone);
            user.setPassword(SecureUtil.md5("a123456"));
            user.setObjectType(3);
            user.setStatus(1);
            userMapper.insert(user);
            tStore.setStoreStaffId(user.getId());
            tStore.setLon(lon);
            tStore.setLat(lat);
            if (yyId == null || yyId == 0){
@@ -602,7 +602,7 @@
            map1.put("location",tStore.getCity());
            map1.put("address",tStore.getAddress());
            map1.put("telephone",tStore.getPhone());
            map1.put("linkman",userName);
            map1.put("linkman",tStore.getName());
            map1.put("business_time","[{\"start_time\":\""+tStore.getStartTime()+"\",\"close_time\":\""+tStore.getEndTime()+"\"}]");
            map1.put("logo",tStore.getCoverDrawing());
            map1.put("remark",tStore.getIntroduce());
@@ -617,8 +617,6 @@
            Integer integer = Integer.valueOf(space_id);
            tStore.setId(integer);
            storeService.save(tStore);
            user.setObjectId(tStore.getId());
            userService.updateById(user);
            ArrayList<StoreConfig> storeConfigs = new ArrayList<>();
            for (int i = 1; i < 9; i++) {
                StoreConfig storeConfig = new StoreConfig();
@@ -655,9 +653,14 @@
    @RequestMapping(value = "/update")
    @ResponseBody
    public Object update(TStore tStore,String time,String userName,String userPhone,String ids,Integer type,Integer yyId,String lat,String lon,String pCode1,String cCode1) {
    public Object update(TStore tStore, String time, String ids, Integer type, Integer yyId, String lat, String lon,
                         String pCode1, String cCode1, String userName) {
        try {
            TStore byIdc = storeService.getById(tStore.getId());
            if (ToolUtil.isEmpty(userName) || ToolUtil.isEmpty(tStore.getPhone())) {
                return ERROR;
            }
            tStore.setManagerName(userName);
            if(yyId==null){
                yyId=0;
@@ -690,10 +693,17 @@
                        }
                    }
                }else {
                    TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getId, tStore.getProvinceCode()));
                    // 编辑页提交的是行政区划编码;按 id 查询会导致查不到省、市,随后访问名称时抛出 NPE。
                    TCity one = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, tStore.getProvinceCode()));
                    if (one == null) {
                        return ERROR;
                    }
                    tStore.setProvince(one.getName());
                    tStore.setProvinceCode(one.getCode());
                    TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getId, tStore.getCityCode()));
                    TCity one1 = cityService.getOne(new LambdaQueryWrapper<TCity>().eq(TCity::getCode, tStore.getCityCode()));
                    if (one1 == null) {
                        return ERROR;
                    }
                    tStore.setCity(one1.getName());
                    tStore.setCityCode(one1.getCode());
                }
@@ -714,15 +724,6 @@
            if(ToolUtil.isEmpty(tStore.getCoverDrawing())){
                tStore.setCoverDrawing(byIdc.getCoverDrawing());
            }
            User user = userMapper.selectById(byIdc.getStoreStaffId());
            List<User> users = userMapper.selectList(new LambdaQueryWrapper<User>().eq(User::getAccount, userPhone).ne(User::getId,tStore.getStoreStaffId()));
            if(users.size()>0){
                return "5001";
            }
            user.setAccount(userPhone);
            user.setName(userName);
            user.setPhone(userPhone);
            userMapper.updateById(user);
            tStore.setLon(lon);
            tStore.setLat(lat);
            // 运营商编辑
@@ -737,6 +738,7 @@
            return ERROR;
        }
    }
    @RequestMapping(value = "/onChange")
    @ResponseBody
    public Object onChange(Integer oneId) {
@@ -974,15 +976,9 @@
    @ResponseBody
    public Object freeze(Integer id) {
        try {
            // 查询门店 获取门店店长id
            TStore store = storeService.getById(id);
            // 冻结
            store.setState(2);
            storeService.updateById(store);
            Integer storeStaffId = store.getStoreStaffId();
            User user = userService.getById(storeStaffId);
            user.setStatus(2);
            userService.updateById(user);
            return SUCCESS_TIP;
        }catch (Exception e){
            e.printStackTrace();
@@ -993,15 +989,9 @@
    @ResponseBody
    public Object unfreeze(Integer id) {
        try {
            // 查询门店 获取门店店长id
            TStore store = storeService.getById(id);
            // 解冻
            store.setState(1);
            storeService.updateById(store);
            Integer storeStaffId = store.getStoreStaffId();
            User user = userService.getById(storeStaffId);
            user.setStatus(1);
            userService.updateById(user);
            return SUCCESS_TIP;
        }catch (Exception e){
            e.printStackTrace();
@@ -1028,7 +1018,13 @@
    public Object pwd(Integer id) {
        try {
            TStore byId = storeService.getById(id);
            if (byId == null || byId.getStoreStaffId() == null) {
                return ERROR;
            }
            User user = userMapper.selectById(byId.getStoreStaffId());
            if (user == null) {
                return ERROR;
            }
            user.setPassword(SecureUtil.md5("a123456"));
            userMapper.updateById(user);
            return SUCCESS_TIP;