Browse Source

2017年12月26日代码提交

maamin1 7 years ago
parent
commit
77bf0f2143

+ 23 - 9
ccb_fund_trusteeship/pom.xml

@@ -223,18 +223,32 @@
 		</dependency>
 		<!-- excel jar end…… -->
 		<!-- https://mvnrepository.com/artifact/org.quartz-scheduler/quartz -->
-<!-- https://mvnrepository.com/artifact/org.quartz-scheduler/quartz -->
-<dependency>
-    <groupId>org.quartz-scheduler</groupId>
-    <artifactId>quartz</artifactId>
-    <version>2.3.0</version>
-</dependency>
-
-<dependency>    
+		<dependency>
+		    <groupId>org.quartz-scheduler</groupId>
+		    <artifactId>quartz</artifactId>
+		    <version>2.3.0</version>
+		</dependency>
+		<dependency>    
             <groupId>org.quartz-scheduler</groupId>    
             <artifactId>quartz</artifactId>    
             <version>2.2.1</version>    
-        </dependency> 
+	    </dependency>
+	    <!-- hibernate validator 参数校验 -->
+	    <dependency>
+		   <groupId>org.hibernate</groupId>
+		   <artifactId>hibernate-validator</artifactId>
+		   <version>5.3.4.Final</version>
+		</dependency>
+		<dependency>
+		   <groupId>javax.el</groupId>
+		   <artifactId>javax.el-api</artifactId>
+		   <version>2.2.4</version>
+		</dependency>
+		<dependency>
+		   <groupId>org.glassfish.web</groupId>
+		   <artifactId>javax.el</artifactId>
+		   <version>2.2.4</version>
+		</dependency>
 	</dependencies>
   <build>
     <finalName>ccb_fund_trusteeship</finalName>

+ 22 - 5
ccb_fund_trusteeship/src/main/java/com/fuzamei/dao/UserDao.java

@@ -1,9 +1,26 @@
 package com.fuzamei.dao;
-/**
- * 
- * @author dell
- *
- */
+
+import java.util.List;
+
+import javax.annotation.Resource;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Repository;
+
+import com.fuzamei.entity.User;
+import com.fuzamei.mapperInterface.UserInterface;
+
+@Repository(value = "userDao")
 public class UserDao {
+	@Autowired
+	private UserInterface userMapper;
+	public int getUserCount(User user) {
+		// TODO 获取该用户的count
+		return userMapper.getUserCount(user);
+	}
+	public int insertUsers(List<User> listUsers) {
+		// TODO Auto-generated method stub
+		return userMapper.insertUsers(listUsers);
+	}
 
 }

+ 21 - 2
ccb_fund_trusteeship/src/main/java/com/fuzamei/entity/User.java

@@ -1,15 +1,26 @@
 package com.fuzamei.entity;
 
-public class User {
+
+import java.io.Serializable;
+
+import javax.validation.constraints.Size;
+
+import org.hibernate.validator.constraints.NotEmpty;
+
+
+public class User implements Serializable{
 	private int id;	//主键
 	private int user_id;	//用户id
+	@NotEmpty(message = "用户名不能为空")
 	private String user_name;	//用户名称
+	@Size(min = 6,max = 8,message = "密码必须为6到8位的数字")
 	private String password;	//用户密码
 	private String random;		//随机数
 	private String public_key;	//公钥
 	private String private_key;	//私钥
 	private String organization_name;	//机构名称
 	private String person_name;			//人员名称
+	private int role_id;				//角色id
 	public int getId() {
 		return id;
 	}
@@ -64,11 +75,19 @@ public class User {
 	public void setPerson_name(String person_name) {
 		this.person_name = person_name;
 	}
+	public int getRole_id() {
+		return role_id;
+	}
+	public void setRole_id(int role_id) {
+		this.role_id = role_id;
+	}
 	@Override
 	public String toString() {
 		return "User [id=" + id + ", user_id=" + user_id + ", user_name=" + user_name + ", password=" + password
 				+ ", random=" + random + ", public_key=" + public_key + ", private_key=" + private_key
-				+ ", organization_name=" + organization_name + ", person_name=" + person_name + "]";
+				+ ", organization_name=" + organization_name + ", person_name=" + person_name + ", role_id=" + role_id
+				+ "]";
 	}
 	
+	
 }

+ 0 - 5
ccb_fund_trusteeship/src/main/java/com/fuzamei/mapper/UserMapper.java

@@ -1,5 +0,0 @@
-package com.fuzamei.mapper;
-
-public class UserMapper {
-
-}

+ 8 - 1
ccb_fund_trusteeship/src/main/java/com/fuzamei/mapperInterface/UserInterface.java

@@ -1,5 +1,12 @@
 package com.fuzamei.mapperInterface;
 
-public class UserInterface {
+import java.util.List;
 
+import org.apache.ibatis.annotations.Param;
+
+import com.fuzamei.entity.User;
+public interface UserInterface {
+	public int getUserCount(User user);
+
+	public int insertUsers(List<User> listUsers);
 }

+ 74 - 1
ccb_fund_trusteeship/src/main/java/com/fuzamei/service/UserService.java

@@ -1,5 +1,78 @@
 package com.fuzamei.service;
 
-public class UserService {
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+import javax.annotation.Resource;
 
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import com.fuzamei.dao.UserDao;
+import com.fuzamei.entity.User;
+import com.fuzamei.utils.JSONUtil;
+import com.fuzamei.utils.UserUtil;
+/**
+ * 
+* <b>Description:用户登录的service层</b><br> 
+* @Note
+* <b>Author:maamin
+* @version 1.0
+* @Note
+* <b>ProjectName:</b> ccb_fund_trusteeship
+* <br><b>PackageName:</b> com.fuzamei.service
+* <br><b>ClassName:</b> UserService
+* <br><b>Date:</b> 2017年12月25日 上午10:37:17
+ */
+@Service(value = "userService")
+public class UserService {
+	@Resource(name = "userDao")
+	private UserDao userDao;
+	/**
+	 * 
+	* <b>Description:用户登录方法</b><br> 
+	* @param user--用户实体类
+	* @return
+	* @Note
+	* <b>Author:maamin
+	* <br><b>Date:</b> 2017年12月25日 上午10:36:10
+	* <br><b>Version:</b> 1.0
+	 */
+	public Map<String, Object> login(User user) {
+		// TODO 检查用户的用户名、密码和随机数,能不能对应得上
+		Map<String,Object> resultMap = new LinkedHashMap<String,Object>();
+		int count = userDao.getUserCount(user);
+		resultMap = JSONUtil.getJsonMap(12431, false, "用户登录失败", null);
+		if(count == 1){
+			resultMap = JSONUtil.getJsonMap(200, true, "用户登录成功", null);
+		}
+		return resultMap;
+	}
+	/**
+	 * 
+	* <b>Description:初始化所有用户信息(后台维护人员为了防止在数据库中添加设计,后期废弃掉)</b><br> 
+	* @return
+	* @Note
+	* <b>Author:maamin
+	* <br><b>Date:</b> 2017年12月25日 上午10:37:46
+	* <br><b>Version:</b> 1.0
+	 */
+	@Transactional
+	public Map<String, Object> initUserList() {
+		// TODO Auto-generated method stub
+		//封装用户信息到listUsers中
+		List<User> listUsers = UserUtil.getUserList();	
+		List<Map<String,Object>> list = UserUtil.getUserRoleList();
+		//将用户信息插入到t_user表中
+		int insertUserCount = userDao.insertUsers(listUsers);
+		if(insertUserCount == 18){	//一共有18个角色
+			
+		}
+		
+		
+		//
+		return null;
+	}
 }

+ 109 - 27
ccb_fund_trusteeship/src/main/java/com/fuzamei/web/UserAction.java

@@ -1,49 +1,131 @@
 package com.fuzamei.web;
 
+import java.io.IOException;
+import java.util.HashMap;
 import java.util.LinkedHashMap;
+import java.util.List;
 import java.util.Map;
 
+import javax.annotation.Resource;
+import javax.validation.Valid;
+
+import org.springframework.validation.BindingResult;
+import org.springframework.validation.FieldError;
+import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RestController;
 
+import com.fasterxml.jackson.core.JsonParseException;
+import com.fasterxml.jackson.databind.JsonMappingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fuzamei.entity.User;
+import com.fuzamei.service.UserService;
 import com.fuzamei.utils.JSONUtil;
 
+/**
+ * 
+* <b>Description:用户模块Action层</b><br> 
+* @Note
+* <b>Author:maamin
+* @version 1.0
+* @Note
+* <b>ProjectName:</b> ccb_fund_trusteeship
+* <br><b>PackageName:</b> com.fuzamei.web
+* <br><b>ClassName:</b> UserAction
+* <br><b>Date:</b> 2017年12月25日 上午10:16:00
+ */
 @RestController
 @RequestMapping(value = "/user")
 public class UserAction {
-//	@RequestMapping(value = "/login",method = RequestMethod.POST)
-	/*public Map<String,Object> login(@RequestBody String data){
-		Map<String,Object> map = new LinkedHashMap<String,Object>();
-		Map<String, Object> jso = JSONUtil.jsonToMap(data); // 参数
-		String phone = "";	//用户名
-		String password = "";	//密码
-		if(jso.get("phone") != null){
-			phone = jso.get("phone").toString();
-		}
-		if(jso.get("password")!=null){
-			password = jso.get("password").toString();
-		}
-		if ((phone == null) || ("".equals(phone))) { // 用户名为空
-			map = JSONUtil.getJsonMap(12431, false, "账号为空", null);
-			return map;
-		} else if ((password == null) || ("".equals(password))) { // 密码为空
-			map = JSONUtil.getJsonMap(20061, false, "账号密码为空", null);
-			return map;
-		}
-		User user = new User();
-		user.setUsername(phone);
-//		user.setPassword(EncryptUtil.stringMD5(password));
-		user.setPassword(password);
+	@Resource(name = "userService")
+	private UserService userService;
+	/**
+	 * 
+	* <b>Description:用户登录方法</b><br> 
+	* @param data
+	* @return
+	* @Note
+	* <b>Author:maamin
+	* <br><b>Date:</b> 2017年12月25日 上午10:18:07
+	* <br><b>Version:</b> 1.0
+	 */
+	@RequestMapping(value = "/login",method = RequestMethod.POST)
+	public Map<String,Object> login(@Validated @RequestBody User user,BindingResult result){
+		System.out.println("进入用户登录login方法……"+user.getUser_name());
+		Map<String,Object> resultMap = new LinkedHashMap<String,Object>();	//存放最终返回结果
 		try {
-			map = userService.login(user);
+			if(result.hasErrors()){
+				List<FieldError> errors = result.getFieldErrors();
+				for(FieldError fe : errors){
+					String errorField = fe.getField();	//得到出错的字段
+					String errorMessage = fe.getDefaultMessage();
+					System.out.println("----出错的字段:"+errorField+">>>字段错误信息:"+errorMessage);
+				}
+				System.out.println("未通过校验……"+result.getErrorCount());
+			}
+			resultMap = userService.login(user);
 		} catch (Exception e) {
 			// TODO: handle exception
 			e.printStackTrace();
-			return JSONUtil.getJsonMap(12431, false, "登录失败", null);
+			resultMap = JSONUtil.getJsonMap(12431, false, "用户登录失败", null);
 		}
+		System.out.println("用户登录login方式结束……");
+		return resultMap;
+	}
+	/**
+	 * 
+	* <b>Description:初始化创建所有用户信息</b><br> 
+	* @return
+	* @Note
+	* <b>Author:maamin
+	* <br><b>Date:</b> 2017年12月25日 上午10:25:24
+	* <br><b>Version:</b> 1.0
+	 */
+	@RequestMapping(value = "/initUserList",method = RequestMethod.GET)
+	public Map<String,Object> initUserList(){
+		System.out.println("初始化创建用户列表……");
+		return userService.initUserList();
+	}
+	/**
+	 * 
+	* <b>Description:添加用户信息</b><br> 
+	* @param data
+	* @return
+	* @Note
+	* <b>Author:maamin
+	* <br><b>Date:</b> 2017年12月25日 下午2:58:44
+	* <br><b>Version:</b> 1.0
+	 */
+	@RequestMapping(value = "/addUser",method = RequestMethod.POST)
+	public Map<String,Object> addUser(@RequestBody String data){
+		System.out.println("添加用户……");
+		Map<String,Object> resultMap = new HashMap<String,Object>();
+		Map<String,Object> paramMap = new HashMap<String,Object>();
+		User user = null;
+		ObjectMapper objMapper = new ObjectMapper();
+		try {
+			user = objMapper.readValue(data, User.class);
+		} catch (JsonParseException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+			resultMap = JSONUtil.getJsonMap(12431, false, "json解析错误", null);
+		} catch (JsonMappingException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+			resultMap = JSONUtil.getJsonMap(12431, false, "参数错误", null);
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+		//参数判断
+//		if(()||()){
+//			
+//		}
+		
+		
 		
-		return map;
-	}*/
+		return resultMap;
+	}
 }

+ 32 - 24
ccb_fund_trusteeship/src/main/resources/spring-mvc.xml

@@ -1,33 +1,41 @@
-<?xml version="1.0" encoding="UTF-8"?>  
-<beans xmlns="http://www.springframework.org/schema/beans"  
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
-    xmlns:p="http://www.springframework.org/schema/p"  
-    xmlns:tx="http://www.springframework.org/schema/tx"
-    xmlns:mvc="http://www.springframework.org/schema/mvc"  
-    xmlns:context="http://www.springframework.org/schema/context"  
-    xsi:schemaLocation="http://www.springframework.org/schema/beans  
+<?xml version="1.0" encoding="UTF-8"?>
+<beans xmlns="http://www.springframework.org/schema/beans"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
+	xmlns:tx="http://www.springframework.org/schema/tx" xmlns:mvc="http://www.springframework.org/schema/mvc"
+	xmlns:context="http://www.springframework.org/schema/context"
+	xsi:schemaLocation="http://www.springframework.org/schema/beans  
                         http://www.springframework.org/schema/beans/spring-beans.xsd  
                         http://www.springframework.org/schema/tx  
                         http://www.springframework.org/schema/tx/spring-tx.xsd  
                         http://www.springframework.org/schema/mvc  
                         http://www.springframework.org/schema/mvc/spring-mvc.xsd  
                         http://www.springframework.org/schema/context  
-                        http://www.springframework.org/schema/context/spring-context.xsd">  
-	
-	 <mvc:annotation-driven></mvc:annotation-driven>
+                        http://www.springframework.org/schema/context/spring-context.xsd">
+
+	<mvc:annotation-driven validator="validator"></mvc:annotation-driven>
+	<!-- hibernate validator参数校验 -->
+	<bean id="validator"
+		class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean">
+		<property name="providerClass" value="org.hibernate.validator.HibernateValidator" />
+	</bean>
+	<!-- 方法级别的校验 要校验的方法所在类必须添加@Validated注解 -->
+	<bean
+		class="org.springframework.validation.beanvalidation.MethodValidationPostProcessor">
+		<!-- 可以引用自己的 validator 配置,在本文中(下面)可以找到 validator 的参考配置,如果不指定则系统使用默认的 -->
+		<property name="validator" ref="validator" />
+	</bean>
 	<context:component-scan base-package="com.fuzamei" />
 	<!-- 配置事务 -->
-    <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
-      <!--  加载数据源 -->
-      <property name="dataSource" ref="dataSource"></property>
-    </bean>
-    	<!-- 开启事务扫描 -->
-    <tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true"/>
-    <!-- 对token拦截验证 (为方便测试,测试环境给注释掉)-->
-    <!-- <mvc:interceptors>
-		<mvc:interceptor>
-			<mvc:mapping path="/*/api/*" />
-			<bean class="com.fuzamei.interceptor.TokenInterceptor" />
-		</mvc:interceptor>
-	</mvc:interceptors> -->
+	<bean id="transactionManager"
+		class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
+		<!-- 加载数据源 -->
+		<property name="dataSource" ref="dataSource"></property>
+	</bean>
+	<!-- 开启事务扫描 -->
+	<tx:annotation-driven transaction-manager="transactionManager"
+		proxy-target-class="true" />
+	<!-- 对token拦截验证 (为方便测试,测试环境给注释掉) -->
+	<!-- <mvc:interceptors> <mvc:interceptor> <mvc:mapping path="/*/api/*" /> 
+		<bean class="com.fuzamei.interceptor.TokenInterceptor" /> </mvc:interceptor> 
+		</mvc:interceptors> -->
 </beans>