From 409696535bdc86f09b57582a355087a2120cb74c Mon Sep 17 00:00:00 2001
From: xufenglei <xufenglei>
Date: Tue, 19 Dec 2017 11:33:57 +0800
Subject: [PATCH] update

---
 src/main/java/com/moral/common/bean/AppData.java                     |   44 +++++++++++
 src/main/java/com/moral/controller/MachineActivateController.java    |   26 ++++++
 src/main/java/com/moral/common/aop/ControllerAOP.java                |   15 ++-
 src/main/java/com/moral/common/bean/ResultBean.java                  |   32 ++++---
 src/main/java/com/moral/controller/MobileController.java             |   30 +++---
 src/main/java/com/moral/controller/ScreenController.java             |   11 +-
 src/main/java/com/moral/service/impl/MachineActivateServiceImpl.java |   51 ++++++++----
 src/main/java/com/moral/service/MachineActivateService.java          |    6 +
 8 files changed, 156 insertions(+), 59 deletions(-)

diff --git a/src/main/java/com/moral/common/aop/ControllerAOP.java b/src/main/java/com/moral/common/aop/ControllerAOP.java
index a30d404..8c90a0b 100644
--- a/src/main/java/com/moral/common/aop/ControllerAOP.java
+++ b/src/main/java/com/moral/common/aop/ControllerAOP.java
@@ -13,6 +13,7 @@
 import org.aspectj.lang.reflect.MethodSignature;
 import org.springframework.stereotype.Component;
 
+import com.moral.common.bean.AppData;
 import com.moral.common.bean.ResultBean;
 import com.moral.common.exception.BusinessException;
 import com.moral.common.exception.ValidateException;
@@ -63,14 +64,14 @@
 
 		if (type instanceof ParameterizedType) {
 			Type rawType = ((ParameterizedType) type).getRawType();
-			if (rawType == ResultBean.class) {
-				ResultBean<?> resultBean = new ResultBean(ResultBean.FAIL);
-				resultBean.setMessage(message);
-				return resultBean;
+			if (rawType == AppData.class) {
+				return new AppData(message,AppData.FAIL);
+			} else if (rawType == ResultBean.class) {
+				return new ResultBean(message,ResultBean.FAIL);
 			} else if (rawType == Map.class) {
-				Map<String, Object> result = new HashMap<String, Object>();
-				result.put("msg",message);
-				return result;
+				Map<String, Object> resultMap = new HashMap<String, Object>();
+				resultMap.put("msg", message);
+				return resultMap;
 			}
 		}
 		return null;
diff --git a/src/main/java/com/moral/common/bean/AppData.java b/src/main/java/com/moral/common/bean/AppData.java
new file mode 100644
index 0000000..a1d12d0
--- /dev/null
+++ b/src/main/java/com/moral/common/bean/AppData.java
@@ -0,0 +1,44 @@
+package com.moral.common.bean;
+
+import java.io.Serializable;
+
+import lombok.Data;
+
+@Data
+public class AppData<T>implements Serializable {
+
+	private static final long serialVersionUID = 1L;
+	
+	public static final int SUCCESS = 0;
+	public static final int FAIL = 1;
+	public static final int NO_PERMISSION = 2;
+	private String message = "success";
+	private int errno = SUCCESS;
+	private T data;
+
+	public AppData() {
+		super();
+	}
+
+	public AppData(int errno) {
+		super();
+		this.errno = errno;
+	}
+
+	public AppData(Throwable e) {
+		super();
+		this.message = e.toString();
+		this.errno = FAIL;
+	}
+
+	public AppData(T data) {
+		super();
+		this.data = data;
+	}
+	
+	public AppData(String message, int errno) {
+		super();
+		this.message = message;
+		this.errno = errno;
+	}
+}
diff --git a/src/main/java/com/moral/common/bean/ResultBean.java b/src/main/java/com/moral/common/bean/ResultBean.java
index 7e74ecb..96ad875 100644
--- a/src/main/java/com/moral/common/bean/ResultBean.java
+++ b/src/main/java/com/moral/common/bean/ResultBean.java
@@ -9,32 +9,36 @@
 
 	private static final long serialVersionUID = 1L;
 	
-	public static final int SUCCESS = 0;
-	public static final int FAIL = 1;
+	public static final int FAIL = 0;
+	public static final int SUCCESS = 1;
 	public static final int NO_PERMISSION = 2;
 	private String message = "success";
-	private int errno = SUCCESS;
+	private int code = SUCCESS;
 	private T data;
+
 	public ResultBean() {
 		super();
 	}
+
+	public ResultBean(int code) {
+		super();
+		this.code = code;
+	}
+
+	public ResultBean(Throwable e) {
+		super();
+		this.message = e.toString();
+		this.code = FAIL;
+	}
+
 	public ResultBean(T data) {
 		super();
 		this.data = data;
 	}
 	
-	public ResultBean(Throwable e) {
-		super();
-		this.message = e.toString();
-		this.errno = FAIL;
-	}
-	public ResultBean(String message, int errno) {
+	public ResultBean(String message, int code) {
 		super();
 		this.message = message;
-		this.errno = errno;
-	}
-	public ResultBean(int errno) {
-		super();
-		this.errno = errno;
+		this.code = code;
 	}
 }
diff --git a/src/main/java/com/moral/controller/MachineActivateController.java b/src/main/java/com/moral/controller/MachineActivateController.java
new file mode 100644
index 0000000..87f1f00
--- /dev/null
+++ b/src/main/java/com/moral/controller/MachineActivateController.java
@@ -0,0 +1,26 @@
+package com.moral.controller;
+
+import javax.annotation.Resource;
+
+import org.springframework.web.bind.annotation.CrossOrigin;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.moral.common.bean.ResultBean;
+import com.moral.service.MachineActivateService;
+
+@RestController
+@RequestMapping("machineactivate")
+@CrossOrigin(origins = "*", maxAge = 3600)
+public class MachineActivateController {
+	@Resource
+	private MachineActivateService machineActivateService;
+
+	@PostMapping("machine")
+	public ResultBean<Integer> activateMachine(Integer organizationId,String expireDate) {
+		Integer code = machineActivateService.createMachineActivate(organizationId,expireDate);
+		return new ResultBean<Integer>(code);
+	}
+
+}
diff --git a/src/main/java/com/moral/controller/MobileController.java b/src/main/java/com/moral/controller/MobileController.java
index 09b9c68..ff56619 100644
--- a/src/main/java/com/moral/controller/MobileController.java
+++ b/src/main/java/com/moral/controller/MobileController.java
@@ -14,7 +14,7 @@
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
-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;
@@ -56,9 +56,9 @@
 	 * @return the result bean
 	 */
 	@GetMapping("accountlogin")
-	public ResultBean<OperateUser> mobileLogin(String username, String password) {
+	public AppData<OperateUser> mobileLogin(String username, String password) {
 		OperateUser operateUser = operateUserService.mobileLogin(username,password);
-		return new ResultBean<OperateUser>(operateUser); 
+		return new AppData<OperateUser>(operateUser); 
 	}
 	
 	/**
@@ -70,9 +70,9 @@
 	 * @return the result bean
 	 */
 	@GetMapping("upPassword")
-	public ResultBean<OperateUser> updatePassword(Integer uid, String password, String newpassword) {
+	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); 
 	}
 
 	/**
@@ -82,9 +82,9 @@
 	 * @return the result bean
 	 */
 	@GetMapping("reportDevice")
-	public ResultBean<String> installDevice(Device device) {
+	public AppData<String> installDevice(Device device) {
 		deviceService.saveOrUpdateDevice(device);
-		return new ResultBean<String>("");
+		return new AppData<String>("");
 	}
 
 	/**
@@ -96,10 +96,10 @@
 	 * @return the install devices by operate user
 	 */
 	@GetMapping("myRelease")
-	public ResultBean<List<Device>> getInstallDevicesByOperateUser(@RequestParam(value="uid", required=true)Integer uid, 
+	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,9 +109,9 @@
 	 * @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);
 	}
 
 	/**
@@ -121,10 +121,10 @@
 	 * @return the monitor points by area name
 	 */
 	@GetMapping("getMpointsByAreaName")
-	public ResultBean<List<MonitorPoint>> getMonitorPointsByAreaName(HttpServletRequest request) {
+	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);
 	}
 
 	/**
@@ -134,9 +134,9 @@
 	 * @return the organizations by area name
 	 */
 	@GetMapping("getOrgsByAreaName")
-	public ResultBean<List<Organization>> getOrganizationsByAreaName(HttpServletRequest request) {
+	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);
 	}
 }
diff --git a/src/main/java/com/moral/controller/ScreenController.java b/src/main/java/com/moral/controller/ScreenController.java
index f101ce2..ad5b59f 100644
--- a/src/main/java/com/moral/controller/ScreenController.java
+++ b/src/main/java/com/moral/controller/ScreenController.java
@@ -26,6 +26,7 @@
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONReader;
 import com.alibaba.fastjson.TypeReference;
+import com.moral.common.bean.ResultBean;
 import com.moral.common.util.ValidateUtil;
 import com.moral.service.AccountService;
 import com.moral.service.DeviceService;
@@ -196,14 +197,16 @@
 	}
 
 	@GetMapping("check-activate")
-	public Map<String, Object> checkActivate(String macCpuCode) {
-		return machineActivateService.checkActivate(macCpuCode);
+	public ResultBean<Integer> checkActivate(String macCpuCode) {
+		Integer result = machineActivateService.checkActivate(macCpuCode);
+		return new ResultBean<Integer>(result);
 	}
 
 	@PostMapping("activate-machine")
-	public Map<String, Object> activateMachine(HttpServletRequest request) {
+	public ResultBean<Integer> activateMachine(HttpServletRequest request) {
 		Map<String, Object> parameters = getParametersStartingWith(request, null);
-		return machineActivateService.activateMachine(parameters);
+		Integer result = machineActivateService.activateMachine(parameters);
+		return new ResultBean<Integer>(result);
 	}
 
 }
diff --git a/src/main/java/com/moral/service/MachineActivateService.java b/src/main/java/com/moral/service/MachineActivateService.java
index edfe810..4312794 100644
--- a/src/main/java/com/moral/service/MachineActivateService.java
+++ b/src/main/java/com/moral/service/MachineActivateService.java
@@ -4,8 +4,10 @@
 
 public interface MachineActivateService {
 
-	Map<String, Object> checkActivate(String macCpuCode);
+	Integer checkActivate(String macCpuCode);
 
-	Map<String, Object> activateMachine(Map<String, Object> parameters);
+	Integer activateMachine(Map<String, Object> parameters);
+
+	Integer createMachineActivate(Integer organizationId, String expireDate);
 
 }
diff --git a/src/main/java/com/moral/service/impl/MachineActivateServiceImpl.java b/src/main/java/com/moral/service/impl/MachineActivateServiceImpl.java
index e49e743..4a15fbb 100644
--- a/src/main/java/com/moral/service/impl/MachineActivateServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/MachineActivateServiceImpl.java
@@ -2,14 +2,16 @@
 
 import static org.apache.commons.lang3.time.DateUtils.truncate;
 
+import java.text.ParseException;
 import java.util.Calendar;
 import java.util.Date;
-import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.UUID;
 
 import javax.annotation.Resource;
 
+import org.apache.commons.lang3.time.DateUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.ObjectUtils;
@@ -31,29 +33,19 @@
 	private MachineActivateMapper machineActivateMapper;
 
 	@Override
-	public Map<String, Object> checkActivate(String macCpuCode) {
+	public Integer checkActivate(String macCpuCode) {
 		ValidateUtil.notEmpty(macCpuCode, "param.is.null");
 
-		Map<String, Object> map = new HashMap<String, Object>();
-		String result = "1";
 		MachineActivate machineActivate = new MachineActivate();
 		machineActivate.setMacCpuCode(macCpuCode);
-		machineActivate = machineActivateMapper.selectOne(machineActivate);
-		if (ObjectUtils.isEmpty(machineActivate)) {
-			result = "0";
-		}
-		map.put("result", result);
-
-		return map;
+		return machineActivateMapper.selectCount(machineActivate);
 	}
 
 	@Override
 	@Transactional
-	public Map<String, Object> activateMachine(Map<String, Object> parameters) {
+	public Integer activateMachine(Map<String, Object> parameters) {
 		ValidateUtil.notNull(parameters.get("macCpuCode"), "param.is.null");
 		ValidateUtil.notNull(parameters.get("activationCode"), "param.is.null");
-
-		Map<String, Object> map = new HashMap<String, Object>();
 
 		Example example = new Example(MachineActivate.class);
 		Criteria criteria = example.createCriteria();
@@ -67,9 +59,34 @@
 		MachineActivate machineActivate = machineActivates.get(0);
 		machineActivate.setIsUsed(Constants.IS_DELETE_TRUE);
 		machineActivate.setMacCpuCode((String) parameters.get("macCpuCode"));
-		int updateCount = machineActivateMapper.updateByPrimaryKeySelective(machineActivate);
-		map.put("result", updateCount);
-		return map;	
+
+		return machineActivateMapper.updateByPrimaryKeySelective(machineActivate);	
 	}
 
+	@Override
+	@Transactional
+	public Integer createMachineActivate(Integer organizationId,String expireDate) {
+		ValidateUtil.notNull(organizationId, "param.is.null");
+		ValidateUtil.notNull(expireDate, "param.is.null");
+
+		MachineActivate machineActivate = new MachineActivate();
+		String activationCode = "";
+		Integer count = 0;
+		do {
+			activationCode = UUID.randomUUID().toString().replaceAll("-", "").substring(0, 16).toUpperCase();
+			machineActivate.setActivationCode(activationCode);
+			count = machineActivateMapper.selectCount(machineActivate);
+		} while (count > 1);
+		machineActivate.setCreateTime(new Date());
+		machineActivate.setIsUsed(Constants.IS_USED_FALSE);
+		machineActivate.setOrganizationId(organizationId);
+		try {
+			machineActivate.setExpireDate(DateUtils.parseDate(expireDate, "yyyy-MM-dd"));
+		} catch (ParseException e) {
+			e.printStackTrace();
+			throw new BusinessException("expireDate���������������������");
+		}
+
+		return machineActivateMapper.insertSelective(machineActivate);
+	}
 }

--
Gitblit v1.8.0