From eb0bf159dad42be8878cbf6d819df87fbd50eff2 Mon Sep 17 00:00:00 2001
From: 沈斌 <bluelazysb@hotmail.com>
Date: Mon, 07 May 2018 16:41:59 +0800
Subject: [PATCH] 运维app

---
 src/main/java/com/moral/controller/MobileController.java |  146 +++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 118 insertions(+), 28 deletions(-)

diff --git a/src/main/java/com/moral/controller/MobileController.java b/src/main/java/com/moral/controller/MobileController.java
index 09b9c68..67cf364 100644
--- a/src/main/java/com/moral/controller/MobileController.java
+++ b/src/main/java/com/moral/controller/MobileController.java
@@ -8,13 +8,13 @@
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 
-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.util.Crypto;
+import com.moral.util.MessageUtils;
+import com.taobao.api.ApiException;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.web.bind.annotation.*;
 
-import com.moral.common.bean.ResultBean;
+import com.moral.common.bean.AppData;
 import com.moral.entity.Device;
 import com.moral.entity.MonitorPoint;
 import com.moral.entity.OperateUser;
@@ -55,10 +55,10 @@
 	 * @param password the password
 	 * @return the result bean
 	 */
-	@GetMapping("accountlogin")
-	public ResultBean<OperateUser> mobileLogin(String username, String password) {
+	@PostMapping("accountlogin")
+	public AppData<OperateUser> mobileLogin(String username, String password) {
 		OperateUser operateUser = operateUserService.mobileLogin(username,password);
-		return new ResultBean<OperateUser>(operateUser); 
+		return new AppData<OperateUser>(operateUser); 
 	}
 	
 	/**
@@ -69,10 +69,10 @@
 	 * @param newpassword the newpassword
 	 * @return the result bean
 	 */
-	@GetMapping("upPassword")
-	public ResultBean<OperateUser> updatePassword(Integer uid, String password, String newpassword) {
+	@PostMapping("upPassword")
+	public AppData<OperateUser> updatePassword(Integer uid, String password, String newpassword) {
 		OperateUser operateUser = operateUserService.updatePassword(uid,password,newpassword);
-		return new ResultBean<OperateUser>(operateUser); 
+		return new AppData<OperateUser>(operateUser); 
 	}
 
 	/**
@@ -81,10 +81,10 @@
 	 * @param device the device
 	 * @return the result bean
 	 */
-	@GetMapping("reportDevice")
-	public ResultBean<String> installDevice(Device device) {
+	@PostMapping("reportDevice")
+	public AppData<String> installDevice(Device device) {
 		deviceService.saveOrUpdateDevice(device);
-		return new ResultBean<String>("");
+		return new AppData<String>("");
 	}
 
 	/**
@@ -95,11 +95,11 @@
 	 * @param pageSize the page size
 	 * @return the install devices by operate user
 	 */
-	@GetMapping("myRelease")
-	public ResultBean<List<Device>> getInstallDevicesByOperateUser(@RequestParam(value="uid", required=true)Integer uid, 
+	@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);
-		return new ResultBean<List<Device>>(devices);
+		return new AppData<List<Device>>(devices);
 	}
 
 	/**
@@ -109,34 +109,124 @@
 	 * @return the device by mac
 	 */
 	@GetMapping("getEquInfoByMac")
-	public ResultBean<Device> getDeviceByMac(@RequestParam(value="mac", required=true)String mac) {
+	public AppData<Device> getDeviceByMac(@RequestParam(value="mac", required=true)String mac) {
 		Device device = deviceService.getDeviceByMac(mac);
-		return new ResultBean<Device>(device);
+		return new AppData<Device>(device);
 	}
 
 	/**
 	 * Gets the monitor points by area name.
 	 *
-	 * @param areaName the area name
+	 * @param request the area name
 	 * @return the monitor points by area name
 	 */
-	@GetMapping("getMpointsByAreaName")
-	public ResultBean<List<MonitorPoint>> getMonitorPointsByAreaName(HttpServletRequest request) {
+	@PostMapping("getMpointsByAreaName")
+	public AppData<List<MonitorPoint>> getMonitorPointsByAreaName(HttpServletRequest request) {
 		Map<String, Object> parameters = getParametersStartingWith(request, null);
 		List<MonitorPoint> monitorPoints = monitorPointService.getMonitorPointsByAreaName(parameters);
-		return new ResultBean<List<MonitorPoint>>(monitorPoints);
+		return new AppData<List<MonitorPoint>>(monitorPoints);
 	}
 
 	/**
 	 * Gets the organizations by area name.
 	 *
-	 * @param areaName the area name
+	 * @param request the area name
 	 * @return the organizations by area name
 	 */
-	@GetMapping("getOrgsByAreaName")
-	public ResultBean<List<Organization>> getOrganizationsByAreaName(HttpServletRequest request) {
+	@PostMapping("getOrgsByAreaName")
+	public AppData<List<Organization>> getOrganizationsByAreaName(HttpServletRequest request) {
 		Map<String, Object> parameters = getParametersStartingWith(request, null);
 		List<Organization> organizations = organizationService.getOrganizationsByAreaName(parameters);
-		return new ResultBean<List<Organization>>(organizations);
+		return new AppData<List<Organization>>(organizations);
+	}
+
+	/**
+	 * Send SMS
+	 *
+	 * @param mobile
+	 * @return
+	 */
+	@PostMapping("sendSms")
+	public AppData<String> sendSms(String mobile) {
+		AppData apiData = new AppData();
+
+		if (StringUtils.isBlank(mobile)){
+			apiData.setErrno(1);
+			apiData.setMessage("������������������������");
+			apiData.setData("{}");
+			return  apiData;
+		}
+		OperateUser user = operateUserService.getOperateUserByMobile(mobile);
+		if (user==null){
+			apiData.setErrno(1);
+			apiData.setMessage("���������������������������");
+			apiData.setData("{}");
+			return  apiData;
+		}
+		//���������������
+		int code = (int)((Math.random() * 9 + 1) * 100000);
+		user.setCode(String.valueOf(code));
+		operateUserService.updateOperateUser(user);
+
+		//���������������
+		try {
+			int state = MessageUtils.sendMsg(mobile, String.valueOf(code));
+			if(state==0){
+				apiData.setErrno(0);
+				apiData.setMessage("���������������������");
+				apiData.setData("{}");
+				return  apiData;
+			}
+			if(state==1){
+				apiData.setErrno(1);
+				apiData.setMessage("���������������������");
+				apiData.setData("{}");
+				return  apiData;
+			}
+		} catch (ApiException e) {
+			e.printStackTrace();
+		}
+		return new AppData<String>("");
+	}
+
+	/**
+	 * Send SMS
+	 *
+	 * @param mobile
+	 * @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