From 3bf4a89e8470abf09ca61db5a5e8e8e84f45455b Mon Sep 17 00:00:00 2001
From: kaiyu <404897439@qq.com>
Date: Wed, 30 Sep 2020 14:12:56 +0800
Subject: [PATCH] 添加标识符

---
 src/main/java/com/moral/controller/MobileController.java |  215 +++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 165 insertions(+), 50 deletions(-)

diff --git a/src/main/java/com/moral/controller/MobileController.java b/src/main/java/com/moral/controller/MobileController.java
index 9bc8e52..23a1a9c 100644
--- a/src/main/java/com/moral/controller/MobileController.java
+++ b/src/main/java/com/moral/controller/MobileController.java
@@ -9,22 +9,40 @@
 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.PostMapping;
+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.
@@ -32,6 +50,7 @@
 @RestController
 @RequestMapping("mobile")
 @CrossOrigin(origins = "*", maxAge = 3600)
+@Api(tags = "Mobile", description = "APP������") 
 public class MobileController {
 
 	/** The operate user service. */
@@ -50,6 +69,15 @@
 	@Resource
 	private MonitorPointService monitorPointService;
 
+	@Resource
+	private ProfessionService professionService;
+
+	@Resource
+	private AccountService accountService;
+
+	@Resource
+	private HistoryService historyService;
+
 	/**
 	 * Mobile login.������
 	 *
@@ -57,7 +85,7 @@
 	 * @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); 
@@ -71,45 +99,28 @@
 	 * @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());
+		deviceService.saveOrUpdate4Mobile(equDeviceAdapter.toDevice(), equDeviceAdapter.getDeviceProperty());
 		return new AppData<String>("");
 	}
 
@@ -121,7 +132,7 @@
 	 * @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);
@@ -134,13 +145,17 @@
 	 * @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);
+		}
 	}
 
 	/**
@@ -149,7 +164,7 @@
 	 * @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);
@@ -162,7 +177,7 @@
 	 * @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);
@@ -175,7 +190,7 @@
 	 * @param mobile
 	 * @return
 	 */
-	@PostMapping("sendSms")
+	@RequestMapping("sendSms")
 	public AppData<String> sendSms(String mobile) {
 		AppData apiData = new AppData();
 
@@ -225,7 +240,7 @@
 	 * @param code
 	 * @return
 	 */
-	@PostMapping("password")
+	@RequestMapping("password")
 	public AppData<String> password(String username, String password, String code){
 		AppData apiData = new AppData();
 
@@ -259,4 +274,104 @@
 			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);
+	}
+	
+	@GetMapping("profession-provincecode")
+	@ApiOperation(value = "���������code������������������", notes = "���������code������������������")
+	@ApiImplicitParams(value = {
+			@ApiImplicitParam(name = "provinceCode", value = "���code", required = true, paramType = "query", dataType = "String")
+	})
+	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);
+	}
+
+	@PostMapping("update-maintenance")
+	@ApiOperation(value = "������������������������������������", notes = "������������������������������������")
+	@ApiImplicitParams(value = {
+			@ApiImplicitParam(name = "id", value = "������ID", required = true, paramType = "query", dataType = "int") ,
+			@ApiImplicitParam(name = "old_state", value = "������������������", required = true, paramType = "query", dataType = "String"),
+			@ApiImplicitParam(name = "new_state", value = "������������������", required = true, paramType = "query", dataType = "String") 
+			
+	})
+	public ResultBean offLinToMaintenance(HttpServletRequest request) {
+		Map<String, Object> parameters = getParametersStartingWith(request, null);
+		deviceService.offLinToMaintenance(parameters);
+		ResultBean resultBean = new ResultBean(parameters);
+		return resultBean;
+	}
+	
+	@GetMapping("mointorPointRank")
+	@ApiOperation(value = "������������������", notes = "������������������")
+	@ApiImplicitParams(value = {
+			@ApiImplicitParam(name = "accountId", value = "������id", required = true, paramType = "query", dataType = "String"),
+			@ApiImplicitParam(name = "sensor", value = "������", required = true, paramType = "query", dataType = "String")
+	})
+	public ResultBean<List<Map<String, Object>>> getMointorPointRank(HttpServletRequest request){
+		Map<String, Object> parameters = WebUtils.getParametersStartingWith(request, null);
+		String id = parameters.get("accountId").toString();
+		String sensor = parameters.get("sensor").toString();
+		Map<String, Object> account = accountService.getOrganizationIdByAccountId(id);
+		//������������id������������������������������
+		account.put("sensor", sensor);
+		List<Map<String, Object>> returnList = historyService.getMointorPointRankByOrganizationId(account);
+		return new ResultBean<List<Map<String, Object>>>(returnList);
+	}
+
 }

--
Gitblit v1.8.0