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