From 606c896c1b7c9d986cfb13d8464f3482160a1389 Mon Sep 17 00:00:00 2001
From: fengxiang <110431245@qq.com>
Date: Tue, 08 May 2018 09:47:40 +0800
Subject: [PATCH] 手机 设备 保存 api

---
 src/main/java/com/moral/controller/MobileController.java |  106 ++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 89 insertions(+), 17 deletions(-)

diff --git a/src/main/java/com/moral/controller/MobileController.java b/src/main/java/com/moral/controller/MobileController.java
index ba86189..9bc8e52 100644
--- a/src/main/java/com/moral/controller/MobileController.java
+++ b/src/main/java/com/moral/controller/MobileController.java
@@ -2,15 +2,18 @@
 
 import static com.moral.common.util.WebUtils.getParametersStartingWith;
 
+import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
 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 com.moral.common.bean.AppData;
@@ -68,20 +71,44 @@
 	 * @param newpassword the newpassword
 	 * @return the result bean
 	 */
-	@GetMapping("upPassword")
+	@PostMapping("upPassword")
 	public AppData<OperateUser> updatePassword(Integer uid, String password, String newpassword) {
 		OperateUser operateUser = operateUserService.updatePassword(uid,password,newpassword);
 		return new AppData<OperateUser>(operateUser); 
 	}
 
-	/**
-	 * Install device.������������
-	 *
-	 * @param device the device
-	 * @return the result bean
-	 */
-	@GetMapping("reportDevice")
-	public AppData<String> installDevice(Device device) {
+    /**
+     *
+     * @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);
 		return new AppData<String>("");
 	}
@@ -94,7 +121,7 @@
 	 * @param pageSize the page size
 	 * @return the install devices by operate user
 	 */
-	@GetMapping("myRelease")
+	@PostMapping("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);
@@ -108,9 +135,12 @@
 	 * @return the device by mac
 	 */
 	@GetMapping("getEquInfoByMac")
-	public AppData<Device> getDeviceByMac(@RequestParam(value="mac", required=true)String mac) {
-		Device device = deviceService.getDeviceByMac(mac);
-		return new AppData<Device>(device);
+	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);
 	}
 
 	/**
@@ -163,13 +193,13 @@
 			return  apiData;
 		}
 		//���������������
-		String code = String.valueOf((Math.random() * 9 + 1) * 100000);
-		user.setCode(code);
-		operateUserService.updateOperateUserCode(user);
+		int code = (int)((Math.random() * 9 + 1) * 100000);
+		user.setCode(String.valueOf(code));
+		operateUserService.updateOperateUser(user);
 
 		//���������������
 		try {
-			int state = MessageUtils.sendMsg(mobile, code);
+			int state = MessageUtils.sendMsg(mobile, String.valueOf(code));
 			if(state==0){
 				apiData.setErrno(0);
 				apiData.setMessage("���������������������");
@@ -187,4 +217,46 @@
 		}
 		return new AppData<String>("");
 	}
+
+	/**
+	 *
+	 * @param username
+	 * @param password
+	 * @param code
+	 * @return
+	 */
+	@PostMapping("password")
+	public AppData<String> password(String username, String password, String code){
+		AppData apiData = new AppData();
+
+		if (StringUtils.isBlank(code)){
+			apiData.setErrno(1);
+			apiData.setMessage("������������������������������������������");
+			apiData.setData("{}");
+			return  apiData;
+		}
+		OperateUser user = operateUserService.getOperateUserByMobile(username);
+		if (user==null){
+			apiData.setErrno(1);
+			apiData.setMessage("���������������������������");
+			apiData.setData("{}");
+			return  apiData;
+		}
+		if (user.getCode().equals(code)){
+			user.setPassword(Crypto.md5(password));
+			int new_code = (int)((Math.random() * 9 + 1) * 100000);
+			user.setCode(String.valueOf(new_code));
+			operateUserService.updateOperateUser(user);
+
+			apiData.setErrno(0);
+			apiData.setMessage("������������������");
+			apiData.setData("{}");
+			return  apiData;
+		} else {
+			apiData.setErrno(1);
+			apiData.setMessage("������������������������");
+			apiData.setData("{}");
+			return  apiData;
+		}
+	}
 }

--
Gitblit v1.8.0