puzhibing
2023-12-08 f88cfa02e36752e4acad7adc4b045155e8e50f21
cloud-server-management/src/main/java/com/dsh/guns/modular/system/controller/code/TSiteController.java
@@ -1,7 +1,9 @@
package com.dsh.guns.modular.system.controller.code;
import java.math.BigDecimal;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.crypto.SecureUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -27,21 +29,28 @@
import com.dsh.guns.core.util.ToolUtil;
import com.dsh.guns.modular.system.model.*;
import com.dsh.guns.modular.system.service.*;
import com.dsh.guns.modular.system.util.HttpRequestUtil;
import com.dsh.guns.modular.system.util.ResultUtil;
import groovyjarjarpicocli.CommandLine;
import net.bytebuddy.asm.Advice;
import org.apache.http.HttpResponse;
import org.apache.poi.ss.formula.functions.T;
import org.aspectj.weaver.ast.Var;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpRequest;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.resource.HttpResource;
import javax.annotation.Resource;
import java.lang.reflect.Type;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.*;
/**
 * 车辆管理控制器
@@ -89,6 +98,17 @@
    /**
     *   选择市 返回场地列表
     */
    @ResponseBody
    @RequestMapping(value = "/getSiteByCity")
    public List<TSite> getSiteByCity(String oneId) {
        if (oneId.equals("")){
            return siteService.list(new QueryWrapper<TSite>());
        }
        return siteService.list(new QueryWrapper<TSite>().eq("cityCode",oneId));
    }
    /**
     * 跳转到场地管理首页
     */
    @RequestMapping("")
@@ -110,13 +130,28 @@
        QueryWrapper<TSiteType> wrapper = new QueryWrapper<>();
        wrapper.eq("state",1);
        List<TSiteType> siteType = siteTypeService.list(wrapper);
        model.addAttribute("list",set);
        List<TCity> list3 = cityService.list(new LambdaQueryWrapper<TCity>().eq(TCity::getParentId, 0));
        model.addAttribute("list",list3);
        model.addAttribute("siteType",siteType);
        String roleid = UserExt.getUser().getRoleid();
        model.addAttribute("role",roleid);
        model.addAttribute("objectType",objectType);
        model.addAttribute("objectId",objectId);
        model.addAttribute("type",1);
        List<TOperator> list5 = tOperatorService.list();
        model.addAttribute("list5",list5);
        return PREFIX + "TSite.html";
    }
    /**
@@ -170,13 +205,15 @@
    @RequestMapping("/addSiteLock")
    @ResponseBody
    public Object addSiteLock(@RequestBody TSiteLockDTO dto){
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
        try {
            dto.setStartTime(simpleDateFormat.parse(dto.getSsTime()));
            dto.setEndTime(simpleDateFormat.parse(dto.getEeTime()));
        } catch (ParseException e) {
            e.printStackTrace();
        }
//        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
//        try {
//            dto.setStartTime(simpleDateFormat.parse(dto.getSsTime()));
//            dto.setEndTime(simpleDateFormat.parse(dto.getEeTime()));
//        } catch (ParseException e) {
//            e.printStackTrace();
//        }
        System.out.println(dto);
        Object o = siteLockClient.addSiteLock(dto);
        return ResultUtil.success(o);
    }
@@ -217,6 +254,10 @@
        }
        Integer objectType = UserExt.getUser().getObjectType();
        Integer objectId = UserExt.getUser().getObjectId();
        List<TOperator> list = tOperatorService.list();
        model.addAttribute("yysList",list);
        model.addAttribute("userType",objectType);
        HashSet<String> set = new HashSet<String>(list1);
        QueryWrapper<TSiteType> wrapper = new QueryWrapper<>();
@@ -254,6 +295,36 @@
        model.addAttribute("objectType",objectType);
        model.addAttribute("objectId",objectId);
        model.addAttribute("stores",stores);
        String nextName = site.getNextName();
        ArrayList<String> strings1 = new ArrayList<>();
        for (String s : nextName.split(",")) {
            strings1.add(s);
        }
        if (!strings1.get(0).equals("")){
            System.out.println("=========执行nextNames====");
        model.addAttribute("nextNames",strings1);}
        ArrayList<String> strings3 = new ArrayList<>();
        strings3.add("普通场地");
        strings3.add("智慧场地");
        model.addAttribute("typeNames",strings3);
        String halfNames = site.getHalfName();
        ArrayList<String> strings2 = new ArrayList<>();
        String[] split = halfNames.split(",");
        String halfName=null;
        for (int i = 0; i < split.length; i++) {
            if(i==0){
               halfName = split[0];
            }else {
                strings2.add(split[i]);
            }
        }
        model.addAttribute("halfNames",strings2);
        model.addAttribute("halfName",halfName);
        return PREFIX + "TSite_edit.html";
    }
@@ -285,6 +356,8 @@
            list1.add(cityManager.getProvince());
        }
        Integer objectType = UserExt.getUser().getObjectType();
        List<TOperator> list = tOperatorService.list();
        model.addAttribute("yysList",list);
        Integer objectId = UserExt.getUser().getObjectId();
        model.addAttribute("userType",objectType);
        HashSet<String> set = new HashSet<String>(list1);
@@ -311,6 +384,41 @@
        }else{
            stores = storeClient.getStore(site.getCity());
        }
        ArrayList<String> strings3 = new ArrayList<>();
        strings3.add("普通场地");
        strings3.add("智慧场地");
        model.addAttribute("typeNames",strings3);
        String nextName = site.getNextName();
        ArrayList<String> strings1 = new ArrayList<>();
        for (String s : nextName.split(",")) {
            strings1.add(s);
        }
        System.out.println("========="+strings1);
        System.out.println("====000====="+strings1.get(0));
        if (CollectionUtil.isNotEmpty(strings1)) {
            System.out.println("====执行===");
            model.addAttribute("nextNames", strings1);
        }
        String halfNames = site.getHalfName();
        ArrayList<String> strings2 = new ArrayList<>();
        String[] split = halfNames.split(",");
        String halfName=null;
        for (int i = 0; i < split.length; i++) {
            if(i==0){
                halfName = split[0];
            }else {
                strings2.add(split[i]);
            }
        }
        model.addAttribute("halfNames",strings2);
        model.addAttribute("halfName",halfName);
        List<CityManager> accounts = cityManagerClient.getAccount(site.getCity());
        model.addAttribute("list",site);
        Date insuranceEndTime = site.getInsuranceEndTime();
@@ -343,6 +451,7 @@
        Region name = regionService.getOne(new QueryWrapper<Region>().eq("name", province));
        return regionService.list(new QueryWrapper<Region>().eq("parent_id", name.getId()));
    }
    /**
     *  添加场地管理
     */
@@ -362,7 +471,35 @@
        site.setCityManagerId(cityManagerId);
        site.setInsertTime(new Date());
        site.setState(1);
        siteClient.addSite(site);
        site.setOperatorId(UserExt.getUser().getObjectId());
        // 添加场地
        HashMap<String, String> map = new HashMap<>();
        map.put("sign","0DB011836143EEE2C2E072967C9F4E4B");
        map.put("name",site.getName());
        map.put("space_id",store.getId().toString());
        String s = HttpRequestUtil.postRequest
                ("https://try.daowepark.com/v7/user_api/general/addSpaceArea", map);
        // 添加门禁
        JSONObject jsonObject = JSONObject.parseObject(s);
        JSONObject data = jsonObject.getJSONObject("data");
        String area_id = data.getString("area_id");
        Integer integer = Integer.valueOf(area_id);
        site.setId(integer);
        Integer integer1 = siteClient.addSite(site);
//        Integer integer = Integer.valueOf(spaceId);
        if(StringUtils.hasLength( site.getIds())) {
            for (String s1 : site.getIds().split(",")) {
                HashMap<String, String> map1 = new HashMap<>();
                map1.put("sign", "0DB011836143EEE2C2E072967C9F4E4B");
                map1.put("space_id", store.getId().toString() + "");
                map1.put("device_id", s1);
                map1.put("region_id", integer1 + "");
                String s2 = HttpRequestUtil.postRequest("https://try.daowepark.com/v7/user_api/general/addDevice", map1);
                System.out.println("添加闸机:" + s2);
            }
        }
        return ResultUtil.success("添加成功");
    }
    /**
@@ -374,6 +511,9 @@
        if(site.getInsuranceImg().equals("")){
            site.setInsuranceImg(null);
        }
        TSite byId = siteService.getById(site.getId());
        Store store = storeClient.getStoreById(site.getStoreId());
        String province = store.getProvince();
@@ -391,6 +531,31 @@
        site.setInsertTime(new Date());
        site.setState(1);
        siteClient.addSite(site);
        String ids = byId.getIds();
        HashMap<String, String> map = new HashMap<>();
        map.put("sign","0DB011836143EEE2C2E072967C9F4E4B");
        if(StringUtils.hasLength(ids)) {
            for (String s : ids.split(",")) {
                String s1 = HttpRequestUtil.postRequest("https://try.daowepark.com/v7/user_api/general/deleteDevice/ids/" + s, map);
                System.out.println(s1);
            }
        }
        if(StringUtils.hasLength( site.getIds())) {
            for (String s : site.getIds().split(",")) {
                HashMap<String, String> map1 = new HashMap<>();
                map1.put("sign", "0DB011836143EEE2C2E072967C9F4E4B");
                map1.put("space_id", store.getId() + "");
                map1.put("device_id", s);
                map1.put("region_id", site.getId() + "");
                // 添加门禁
                String s1 = HttpRequestUtil.postRequest("https://try.daowepark.com/v7/user_api/general/addDevice", map1);
                System.out.println(s1);
            }
        }
        return ResultUtil.success();
    }
    /**
@@ -427,7 +592,7 @@
     */
    @RequestMapping(value= "/listExipre")
    @ResponseBody
    public List<TSiteDTO> listExipre(String province,String city,String storeName,Integer siteTypeId,String name) {
    public List<TSiteDTO> listExipre(String province,String city,String storeName,Integer siteTypeId,String name,Integer opId) {
        // 对象类型
        Integer type = UserExt.getUser().getObjectType();
        // 对象类型Id
@@ -440,6 +605,7 @@
        vo.setName(name);
        vo.setObjectType(type);
        vo.setObjectId(objectId);
        vo.setOpId(opId);
        return siteClient.listExipre(vo);
    }
@@ -452,6 +618,7 @@
    @RequestMapping("/add")
    public String tCompetitionAdd(Model model) {
        List<CityManager> province = cityManagerClient.listAll();
        System.out.println(province);
        // 已有城市管理的省
        ArrayList<String> list1 = new ArrayList<>();
        // 已有城市管理的市
@@ -464,9 +631,13 @@
        Integer objectId = UserExt.getUser().getObjectId();
        List<Store> stores = new ArrayList<>();
        if (objectType ==2 ){
             stores= storeClient.getStoreByCityManagerId(objectId);
            List<TStore> operatorId = storeService.list(new QueryWrapper<TStore>().eq("operatorId", objectId));
            model.addAttribute("stores",operatorId);
        }else if(objectType == 3){
             stores= storeClient.getStoreByStoreStaffId(objectId);;
            List<TStore> list = storeService.list(new LambdaQueryWrapper<TStore>().eq(TStore::getId, objectId));
            model.addAttribute("stores",list);
        }else {
            model.addAttribute("stores",storeService.list(new QueryWrapper<TStore>().eq("operatorId", 0)));
        }
        List<TOperator> list = tOperatorService.list();
        model.addAttribute("yysList",list);
@@ -482,8 +653,9 @@
        model.addAttribute("role",roleid);
        model.addAttribute("objectType",objectType);
        model.addAttribute("objectId",objectId);
        model.addAttribute("stores",stores);
        return PREFIX + "tSite_add.html";
        return PREFIX + "TSite_add.html";
    }
//    /**
@@ -537,6 +709,19 @@
        }
    }
    @RequestMapping(value = "/getChangeOne")
    @ResponseBody
    public Object getChangeOne(Integer oneId) {
        try {
            return storeService.list(new QueryWrapper<TStore>()
                    .eq("operatorId",oneId)
                    .eq("state",1));
        }catch (Exception e){
            e.printStackTrace();
            return ERROR;
        }
    }
    // 选择市后 获取对应账号
    @RequestMapping(value = "/accountChangeNext")
    @ResponseBody
@@ -545,6 +730,21 @@
        return cityManagerClient.getAccount(oneId);
    }
    // 选择账号 获取对应门店
    @RequestMapping(value = "/getStore")
    @ResponseBody
    public Object getStore(Integer oneId) {
        if (oneId == null){
            return null;
        }
        List<Store> list = storeClient.getStoreByCityManagerId(oneId);
        if (list.size()==0){
            return list;
        }
        return list;
    }
    // 选择市后 获取对应门店
    @RequestMapping(value = "/storeChangeNext")
    @ResponseBody