| | |
| | | import javax.annotation.Resource;
|
| | | import javax.servlet.http.HttpServletRequest;
|
| | |
|
| | | import com.moral.common.util.Crypto;
|
| | | import com.moral.util.MessageUtils;
|
| | | import com.taobao.api.ApiException;
|
| | | import org.apache.commons.lang3.StringUtils;
|
| | | import org.springframework.cglib.beans.BeanMap;
|
| | | import org.springframework.web.bind.annotation.*;
|
| | | import org.springframework.web.bind.annotation.CrossOrigin;
|
| | | import org.springframework.web.bind.annotation.GetMapping;
|
| | | import org.springframework.web.bind.annotation.RequestMapping;
|
| | | import org.springframework.web.bind.annotation.RequestParam;
|
| | | import org.springframework.web.bind.annotation.RestController;
|
| | |
|
| | | import com.moral.common.bean.AppData;
|
| | | import com.moral.common.bean.ResultBean;
|
| | | import com.moral.common.util.Crypto;
|
| | | import com.moral.common.util.WebUtils;
|
| | | import com.moral.entity.Account;
|
| | | import com.moral.entity.Device;
|
| | | import com.moral.entity.MonitorPoint;
|
| | | import com.moral.entity.OperateUser;
|
| | | import com.moral.entity.Organization;
|
| | | import com.moral.entity.Profession;
|
| | | import com.moral.entity.adapter.EquDeviceAdapter;
|
| | | import com.moral.service.AccountService;
|
| | | import com.moral.service.DeviceService;
|
| | | import com.moral.service.HistoryService;
|
| | | import com.moral.service.MonitorPointService;
|
| | | import com.moral.service.OperateUserService;
|
| | | import com.moral.service.OrganizationService;
|
| | | import com.moral.service.ProfessionService;
|
| | | import com.moral.util.MessageUtils;
|
| | | import com.taobao.api.ApiException;
|
| | |
|
| | | import io.swagger.annotations.Api;
|
| | | import io.swagger.annotations.ApiImplicitParam;
|
| | | import io.swagger.annotations.ApiImplicitParams;
|
| | | import io.swagger.annotations.ApiOperation;
|
| | |
|
| | | /**
|
| | | * The Class MobileController.
|
| | |
| | | @RestController
|
| | | @RequestMapping("mobile")
|
| | | @CrossOrigin(origins = "*", maxAge = 3600)
|
| | | @Api(tags = "Mobile", description = "APP接口") |
| | | public class MobileController {
|
| | |
|
| | | /** The operate user service. */
|
| | |
| | | @Resource
|
| | | private MonitorPointService monitorPointService;
|
| | |
|
| | | @Resource
|
| | | private ProfessionService professionService;
|
| | |
|
| | | @Resource
|
| | | private AccountService accountService;
|
| | |
|
| | | @Resource
|
| | | private HistoryService historyService;
|
| | |
|
| | | /**
|
| | | * Mobile login.登录
|
| | | *
|
| | |
| | | * @param password the password
|
| | | * @return the result bean
|
| | | */
|
| | | @PostMapping("accountlogin")
|
| | | @RequestMapping("accountlogin")
|
| | | public AppData<OperateUser> mobileLogin(String username, String password) {
|
| | | OperateUser operateUser = operateUserService.mobileLogin(username,password);
|
| | | return new AppData<OperateUser>(operateUser);
|
| | |
| | | * @param newpassword the newpassword
|
| | | * @return the result bean
|
| | | */
|
| | | @PostMapping("upPassword")
|
| | | @RequestMapping("upPassword")
|
| | | public AppData<OperateUser> updatePassword(Integer uid, String password, String newpassword) {
|
| | | OperateUser operateUser = operateUserService.updatePassword(uid,password,newpassword);
|
| | | return new AppData<OperateUser>(operateUser);
|
| | | }
|
| | |
|
| | | /**
|
| | | *
|
| | | * @param request
|
| | | * @param uid
|
| | | * @param deviceName
|
| | | * @param address
|
| | | * @param longitude
|
| | | * @param latitude
|
| | | * @param mac
|
| | | * @param monitorpoint
|
| | | * @return
|
| | | */
|
| | | @PostMapping("reportDevice")
|
| | | public AppData<String> installDevice(
|
| | | HttpServletRequest request ,
|
| | | @RequestParam(value ="uid") Integer uid,
|
| | | @RequestParam(value ="device_name") String deviceName,
|
| | | @RequestParam(value ="address") String address,
|
| | | @RequestParam(value ="longitude") double longitude,
|
| | | @RequestParam(value ="latitude") double latitude,
|
| | | @RequestParam(value ="mac") String mac,
|
| | | @RequestParam(value ="monitorpoint") Integer monitorpoint
|
| | | ) {
|
| | | // device 适配
|
| | | Device device = new Device();
|
| | | device.setOperateUserId(uid);
|
| | | device.setName(deviceName);
|
| | | device.setAddress(address);
|
| | | device.setLongitude(longitude);
|
| | | device.setLatitude(latitude);
|
| | | device.setMac(mac);
|
| | | device.setMonitorPointId(monitorpoint);
|
| | | deviceService.saveOrUpdateDevice(device);
|
| | | /**
|
| | | * 根据 设备id 来获取设备信息
|
| | | */
|
| | | @RequestMapping("deviceInfo")
|
| | | public AppData<Device> deviceInfo(Integer id){
|
| | | Device device = deviceService.queryById(id);
|
| | | return new AppData<Device>(device);
|
| | | }
|
| | | /**
|
| | | *
|
| | | * @param equDeviceAdapter
|
| | | * @return
|
| | | */
|
| | | @RequestMapping("reportDevice")
|
| | | public AppData<String> installDevice(EquDeviceAdapter equDeviceAdapter) {
|
| | | deviceService.addOrModify(equDeviceAdapter.toDevice());
|
| | | return new AppData<String>("");
|
| | | }
|
| | |
|
| | |
| | | * @param pageSize the page size
|
| | | * @return the install devices by operate user
|
| | | */
|
| | | @PostMapping("myRelease")
|
| | | @RequestMapping("myRelease")
|
| | | public AppData<List<Device>> getInstallDevicesByOperateUser(@RequestParam(value="uid", required=true)Integer uid,
|
| | | @RequestParam(defaultValue="0")Integer pageIndex, @RequestParam(defaultValue="0")Integer pageSize) {
|
| | | List<Device> devices = deviceService.getInstallDevicesByOperateUser(uid, pageIndex, pageSize);
|
| | |
| | | * @param mac the mac
|
| | | * @return the device by mac
|
| | | */
|
| | | @GetMapping("getEquInfoByMac")
|
| | | @RequestMapping("getEquInfoByMac")
|
| | | public AppData<Map> getDeviceByMac(@RequestParam(value="mac", required=true)String mac) {
|
| | | Device device = deviceService.getDeviceByMac(mac,false);//不从缓存取
|
| | | Map<String,Object> deviceMap = new HashMap<>(BeanMap.create(device));
|
| | | deviceMap.put("monitorpointDetail",deviceMap.get("monitorPoint"));
|
| | | deviceMap.remove("monitorPoint");
|
| | | return new AppData<Map>(deviceMap);
|
| | | if(device!=null){
|
| | | Map<String,Object> deviceMap = new HashMap<>(BeanMap.create(device));
|
| | | deviceMap.put("monitorpointDetail",deviceMap.get("monitorPoint"));
|
| | | deviceMap.remove("monitorPoint");
|
| | | return new AppData<Map>(deviceMap);
|
| | | }else{
|
| | | return new AppData("mac地址不存在",AppData.FAIL);
|
| | | }
|
| | | }
|
| | |
|
| | | /**
|
| | |
| | | * @param request the area name
|
| | | * @return the monitor points by area name
|
| | | */
|
| | | @GetMapping("getMpointsByAreaName")
|
| | | @RequestMapping("getMpointsByAreaName")
|
| | | public AppData<List<MonitorPoint>> getMonitorPointsByAreaName(HttpServletRequest request) {
|
| | | Map<String, Object> parameters = getParametersStartingWith(request, null);
|
| | | List<MonitorPoint> monitorPoints = monitorPointService.getMonitorPointsByAreaName(parameters);
|
| | |
| | | * @param request the area name
|
| | | * @return the organizations by area name
|
| | | */
|
| | | @GetMapping("getOrgsByAreaName")
|
| | | @RequestMapping("getOrgsByAreaName")
|
| | | public AppData<List<Organization>> getOrganizationsByAreaName(HttpServletRequest request) {
|
| | | Map<String, Object> parameters = getParametersStartingWith(request, null);
|
| | | List<Organization> organizations = organizationService.getOrganizationsByAreaName(parameters);
|
| | |
| | | * @param mobile
|
| | | * @return
|
| | | */
|
| | | @PostMapping("sendSms")
|
| | | @RequestMapping("sendSms")
|
| | | public AppData<String> sendSms(String mobile) {
|
| | | AppData apiData = new AppData();
|
| | |
|
| | |
| | | * @param code
|
| | | * @return
|
| | | */
|
| | | @PostMapping("password")
|
| | | @RequestMapping("password")
|
| | | public AppData<String> password(String username, String password, String code){
|
| | | AppData apiData = new AppData();
|
| | |
|
| | |
| | | return apiData;
|
| | | }
|
| | | }
|
| | |
|
| | | @RequestMapping("profession")
|
| | | public AppData<List<Profession>> profession(){
|
| | |
|
| | | List<Profession> professions = professionService.getProfessiontList();
|
| | | return new AppData<List<Profession>>(professions);
|
| | | }
|
| | |
|
| | | @GetMapping("login")
|
| | | @ApiOperation(value = "公司用户登录", notes = "公司用户登录")
|
| | | @ApiImplicitParams(value = {
|
| | | @ApiImplicitParam(name = "account", value = "账号", required = true, paramType = "query", dataType = "String"),
|
| | | @ApiImplicitParam(name = "password", value = "密码", required = true, paramType = "query", dataType = "String")
|
| | | })
|
| | | public ResultBean<Account> companyLogin(HttpServletRequest request){
|
| | | Map<String, Object> parameters = getParametersStartingWith(request, null);
|
| | | Account account = accountService.companyLogin(parameters);
|
| | | return new ResultBean<Account>(account);
|
| | | }
|
| | |
|
| | | @GetMapping("devices")
|
| | | @ApiOperation(value = "获取设备信息")
|
| | | @ApiImplicitParams(value = {
|
| | | @ApiImplicitParam(name = "organizationId", value = "组织Id", required = true, paramType = "query", dataType = "String"),
|
| | | })
|
| | | public ResultBean<List<Device>> getDevicesByOrganizationId(HttpServletRequest request){
|
| | | Map<String, Object> parameters = getParametersStartingWith(request, null);
|
| | | List<Device> devices = deviceService.getDevicesByOrganizationId(parameters);
|
| | | return new ResultBean<List<Device>>(devices);
|
| | | }
|
| | |
|
| | | @GetMapping("sensors")
|
| | | @ApiOperation(value = "获取设备传感器信息")
|
| | | @ApiImplicitParams(value = {
|
| | | @ApiImplicitParam(name = "deviceVersionId", value = "设备版本Id", required = true, paramType = "query", dataType = "int"),
|
| | | @ApiImplicitParam(name = "mac", value = "设备mac", required = true, paramType = "query", dataType = "String"),
|
| | | @ApiImplicitParam(name = "deviceId", value = "设备id", required = true, paramType = "query", dataType = "int"),
|
| | | })
|
| | | public ResultBean<List<Map<String, Object>>> getSensorsDataByDevice(HttpServletRequest request){
|
| | | Map<String, Object> parameters = getParametersStartingWith(request, null);
|
| | | List<Map<String, Object>> sensors = historyService.getSensorsDataByDevice(parameters);
|
| | | return new ResultBean<List<Map<String, Object>>>(sensors);
|
| | | }
|
| | |
|
| | | @GetMapping("sensor")
|
| | | @ApiOperation(value = "获取单一传感器数据")
|
| | | @ApiImplicitParams(value = {
|
| | | @ApiImplicitParam(name = "mac", value = "设备mac", required = true, paramType = "query", dataType = "String"),
|
| | | @ApiImplicitParam(name = "sensorKey", value = "传感器key", required = true, paramType = "query", dataType = "String"),
|
| | | @ApiImplicitParam(name = "size", value = "获取数据条数", required = true, paramType = "query", dataType = "int"),
|
| | | })
|
| | | public ResultBean<List<Map<String, Object>>> getSensorDataBySensorKey(HttpServletRequest request){
|
| | | Map<String, Object> parameters = getParametersStartingWith(request, null);
|
| | | List<Map<String, Object>> sensors = historyService.getSensorDataBySensorKey(parameters);
|
| | | return new ResultBean<List<Map<String, Object>>>(sensors);
|
| | | }
|
| | | |
| | | @RequestMapping("profession-provincecode")
|
| | | public ResultBean<List<Profession>> getProfessionByProvinceCode(HttpServletRequest request){
|
| | | Map<String, Object> parameters = WebUtils.getParametersStartingWith(request, null);
|
| | | List<Profession> professions = professionService.getProfessiontList(parameters);
|
| | | return new ResultBean<List<Profession>>(professions);
|
| | | }
|
| | |
|
| | | }
|