沈斌
2018-02-02 a40c4e1df1931cd3bf25b28a60be5526f74d916d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
package com.moral.controller;
 
 
import com.alibaba.fastjson.JSONObject;
import com.moral.common.bean.Constants;
import com.moral.common.bean.PageBean;
import com.moral.common.bean.PageResult;
import com.moral.common.bean.ResultBean;
import com.moral.entity.Account;
import com.moral.entity.Device;
import com.moral.entity.MapBounds;
import com.moral.entity.MonitorPoint;
import com.moral.service.*;
import lombok.extern.log4j.Log4j;
import org.apache.log4j.Logger;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.servlet.ModelAndView;
 
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
 
/**
 *  所有地图接口都放在此处
 */
@Controller
@RequestMapping("map")
public class MapController {
    public  static Logger log = Logger.getLogger(MapController.class);
    @Resource
    DeviceService deviceService;
    @Resource
    AreaService areaService;
    @Resource
    AccountService accountService;
    @Resource
    SensorService sensorService;
    @Resource
    MonitorPointService monitorPointService;
 
    @RequestMapping(value = "/main-page", method = RequestMethod.GET)
    public String map(Model model,@RequestParam("areaCode")int code,@RequestParam("accountId")int accountId){
        Account account = accountService.getAccountById(accountId);
        String regionName = areaService.selectFullNameByCode(code);
        if(account!=null&&regionName!=null){
            Object sensors = sensorService.queryAll();
            JSONObject params = new JSONObject();
            params.put("regionCode",code);
            params.put("regionName",regionName);
            params.put("accountId", accountId);
            params.put("orgId", account.getOrganizationId());
            params.put("sensors", sensors);
            String paramsJson = params.toJSONString();
            model.addAttribute("mapParams",paramsJson);
            return "map";
        } else {
            StringBuilder msg = new StringBuilder();
            msg.append(" param[0] areaCode:");
            msg.append(code);
            msg.append(" param[0] accountId:");
            msg.append(accountId);
            log.warn(msg);
            return "401";
        }
    }
    @RequestMapping(value="/get-monitorpoints",method = RequestMethod.GET)
    @ResponseBody
    public ResultBean getMonitorpointList(@RequestParam("orgId")String orgId,MapBounds mapBounds){
        ResultBean< List<MonitorPoint>> resultBean = new ResultBean();
        Map<String,Object> paramMap = new HashMap<String, Object>();
        paramMap.put("orgId", orgId);
        paramMap.put("mapBounds",mapBounds);
        List<MonitorPoint> list = monitorPointService.queryWithStateByMap(paramMap);
        resultBean.setData(list);
        resultBean.setCode(ResultBean.SUCCESS);
        return resultBean;
    }
    @RequestMapping(value = "get-devices-for-popup",method = RequestMethod.GET)
    @ResponseBody
    public PageResult getDevicesForPopup(
            @RequestParam("orgId")Integer orgId,
            String name,
            Integer pageSize,
            Integer pageNo
    ){
        return  deviceService.query(orgId,name,pageSize,pageNo);
    }
}