Browse Source

1.更改第三方短信接口
2.新增更改手机接口

Antiloveg 9 years ago
parent
commit
73598de5bc

+ 4 - 0
src/main/java/com/goafanti/common/constant/ErrorConstants.java

@@ -32,6 +32,10 @@ public class ErrorConstants {
 	
 	public static final String MOBILE_SIZE_ERROR = "MOBILE_SIZE_ERROR";
 	
+	public static final String MOBILE_SAME_ERROR = "MOBILE_SAME_ERROR";
+	
+	public static final String MOBILE_EMPTY_ERROR = "MOBILE_EMPTY_ERROR";
+	
 	public static final String IDNUMBER_SIZE_ERROR = "IDNUMBER_SIZE_ERROR";
 	
 	public static final String IDNUMBER_PATTERN_ERROR = "IDNUMBER_PATTERN_ERROR";

+ 59 - 3
src/main/java/com/goafanti/common/controller/PublicController.java

@@ -8,16 +8,26 @@ import javax.servlet.http.HttpServletResponse;
 
 import org.apache.http.HttpResponse;
 import org.apache.http.util.EntityUtils;
+import org.junit.Test;
 import org.springframework.context.annotation.Scope;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.ResponseBody;
 
+import com.aliyuncs.DefaultAcsClient;
+import com.aliyuncs.IAcsClient;
+import com.aliyuncs.exceptions.ClientException;
+import com.aliyuncs.exceptions.ServerException;
+import com.aliyuncs.profile.DefaultProfile;
+import com.aliyuncs.profile.IClientProfile;
+import com.aliyuncs.sms.model.v20160927.SingleSendSmsRequest;
+import com.aliyuncs.sms.model.v20160927.SingleSendSmsResponse;
 import com.goafanti.common.bo.Result;
 import com.goafanti.common.constant.ErrorConstants;
 import com.goafanti.common.utils.HttpUtils;
 import com.goafanti.common.utils.LoggerUtils;
+import com.goafanti.common.utils.TimeUtils;
 import com.goafanti.common.utils.VerifyCodeUtils;
 import com.goafanti.core.shiro.token.TokenManager;
 
@@ -46,6 +56,7 @@ public class PublicController extends BaseController {
 			String verifyCode = VerifyCodeUtils.generateVerifyCode(4);
 			// 存入Shiro会话session
 			TokenManager.setVal2Session(VerifyCodeUtils.V_CODE, verifyCode.toLowerCase());
+			System.out.println(TokenManager.getSession().getAttribute(VerifyCodeUtils.V_CODE));
 			// 生成图片
 			int w = 146, h = 33;
 			VerifyCodeUtils.outputImage(w, h, response.getOutputStream(), verifyCode);
@@ -65,7 +76,7 @@ public class PublicController extends BaseController {
 		if(TokenManager.getSession().getAttribute(VerifyCodeUtils.M_CODE_TIME)==null
 		   ||TokenManager.getSession().getAttribute(VerifyCodeUtils.M_CODE_TIME)==""){
 		   sendMessage(mobile,res);
-		}else if(System.currentTimeMillis()-(Long) TokenManager.getSession().getAttribute(VerifyCodeUtils.M_CODE_TIME)>60000){
+		}else if(TimeUtils.checkOverTime("getMCode")){
 			TokenManager.getSession().removeAttribute(VerifyCodeUtils.M_CODE);
 			TokenManager.getSession().removeAttribute(VerifyCodeUtils.M_CODE_TIME);
 			sendMessage(mobile,res);
@@ -74,7 +85,12 @@ public class PublicController extends BaseController {
 		}
 		return res;
 	}
-	
+	/**
+	 * 阿里云短信服务
+	 * @param mobile
+	 * @param res
+	 * @return
+	 *//*
 	private   Result sendMessage(String mobile,Result res){
 		// 生成随机字串
 		String mobileVerifyCode = VerifyCodeUtils.generateMobileVerifyCode(6);
@@ -104,7 +120,47 @@ public class PublicController extends BaseController {
         	LoggerUtils.fmtError(getClass(), e, "获取手机验证码异常:%s", e.getMessage());
         }
         return res;
-	}
+	}*/
+	 
+	 /**
+	  * 
+	  * @param mobile
+	  * @param res
+	  * @return
+	  */
+	 private Result sendMessage(String mobile,Result res) {  
+		// 生成随机字串
+			String mobileVerifyCode = VerifyCodeUtils.generateMobileVerifyCode(6);
+			// 存入Shiro会话session
+		    TokenManager.setVal2Session(VerifyCodeUtils.M_CODE, mobileVerifyCode);
+		    TokenManager.setVal2Session(VerifyCodeUtils.M_CODE_TIME, System.currentTimeMillis());
+	        IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", "LTAIqTgQLLwz252Z", "ICGuiUnqzaar7urw4zecVcJrJ1MHg9");
+	         try {
+				DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", "Sms",  "sms.aliyuncs.com");
+			} catch (ClientException e1) {
+				res.getError().add(buildError(ErrorConstants.MCODE_ERROR,"获取手机验证码异常"));
+			}
+	        IAcsClient client = new DefaultAcsClient(profile);
+	        SingleSendSmsRequest request = new SingleSendSmsRequest();
+	        try {
+	            request.setSignName("阿凡提信息科技");//{\"code\":\""+mobileVerifyCode+"\"}
+	             request.setTemplateCode("SMS_37845022");
+	            request.setParamString("{\"code\":\""+mobileVerifyCode+"\",\"product\":\"阿凡提信息科技\"}");
+	            request.setRecNum(mobile);
+	            SingleSendSmsResponse httpResponse = client.getAcsResponse(request);
+	        } catch (ServerException e) {
+	            //e.printStackTrace();
+	        	res.getError().add(buildError(ErrorConstants.MCODE_ERROR,"获取手机验证码异常"));
+	        	LoggerUtils.fmtError(getClass(), e, "服务器端手机验证码异常:%s", e.getMessage());
+	        }
+	        catch (ClientException e) {
+	            //e.printStackTrace();
+	        	res.getError().add(buildError(ErrorConstants.MCODE_ERROR,"获取手机验证码异常"));
+	            LoggerUtils.fmtError(getClass(), e, "客户端手机验证码异常:%s", e.getMessage());
+	        }
+	        return res;
+	    }
+	 
 	
 
 }

+ 1 - 1
src/main/java/com/goafanti/common/dao/UserAbilityMapper.java

@@ -18,5 +18,5 @@ public interface UserAbilityMapper {
     
     
 
-	UserCareer selectUserAbilityByUserId(String userId);
+	UserAbility selectUserAbilityByUserId(String uid);
 }

+ 2 - 2
src/main/java/com/goafanti/common/mapper/OrganizationTechMapper.xml

@@ -5,8 +5,8 @@
     <id column="id" property="id" jdbcType="VARCHAR" />
     <result column="uid" property="uid" jdbcType="VARCHAR" />
     <result column="technical_people_num" property="technicalPeopleNum" jdbcType="VARCHAR" />
-    <result column="search_area_category" property="serchAreaCategory" jdbcType="VARCHAR" />
-    <result column="search_area_det" property="serchAreaDet" jdbcType="VARCHAR" />
+    <result column="search_area_category" property="searchAreaCategory" jdbcType="VARCHAR" />
+    <result column="search_area_det" property="searchAreaDet" jdbcType="VARCHAR" />
     <result column="specialty" property="specialty" jdbcType="VARCHAR" />
   </resultMap>
   <sql id="Base_Column_List" >

+ 4 - 16
src/main/java/com/goafanti/common/mapper/UserInfoMapper.xml

@@ -16,7 +16,6 @@
     <result column="qq" property="qq" jdbcType="VARCHAR" />
     <result column="postal_address" property="postalAddress" jdbcType="VARCHAR" />
     <result column="postcode" property="postcode" jdbcType="VARCHAR" />
-    <result column="work_unit" property="workUnit" jdbcType="VARCHAR" />
   </resultMap>
   
    <resultMap id="UserInfoBoMap" type="com.goafanti.user.bo.UserInfoBo" >
@@ -34,14 +33,13 @@
     <result column="qq" property="qq" jdbcType="VARCHAR" />
     <result column="postal_address" property="postalAddress" jdbcType="VARCHAR" />
     <result column="postcode" property="postcode" jdbcType="VARCHAR" />
-    <result column="work_unit" property="workUnit" jdbcType="VARCHAR" />
     <result column="email" property="email" jdbcType="VARCHAR" />
     <result column="nickname" property="nickname" jdbcType="VARCHAR" />
   </resultMap>
   
   <sql id="Base_Column_List" >
     id, uid, residence_province, residence_city, residence_area, person_portrait_url, life_photo_url, personal_profile, fixed_tel, qq, 
-    postal_address, postcode, work_unit
+    postal_address, postcode
   </sql>
   <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String" >
     select 
@@ -57,13 +55,13 @@
     insert into user_info (id, uid, residence_province, residence_city, residence_area,
       person_portrait_url, life_photo_url, personal_profile, 
       fixed_tel_area,fixed_tel,fixed_tel_extension, qq, postal_address, 
-      postcode,work_unit)
+      postcode)
     values (#{id,jdbcType=VARCHAR}, #{uid,jdbcType=VARCHAR}, #{residenceProvince,jdbcType=VARCHAR}, 
       #{residenceCity,jdbcType=VARCHAR}, #{residenceArea,jdbcType=VARCHAR},
       #{personPortraitUrl,jdbcType=VARCHAR}, #{lifePhotoUrl,jdbcType=VARCHAR}, #{personalProfile,jdbcType=VARCHAR}, 
       #{fixedTelArea,jdbcType=VARCHAR}, #{fixedTel,jdbcType=VARCHAR},#{fixedTelExtension,jdbcType=VARCHAR},
       #{qq,jdbcType=VARCHAR}, #{postalAddress,jdbcType=VARCHAR}, 
-      #{postcode,jdbcType=VARCHAR}, #{workUnit,jdbcType=VARCHAR}) 
+      #{postcode,jdbcType=VARCHAR}) 
   </insert>
   <insert id="insertSelective" parameterType="com.goafanti.common.model.UserInfo" >
     insert into user_info
@@ -110,9 +108,6 @@
       <if test="postcode != null" >
         postcode,
       </if>
-       <if test="workUnit != null" >
-        work_Unit,
-      </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides="," >
       <if test="id != null" >
@@ -157,9 +152,6 @@
       <if test="postcode != null" >
         #{postcode,jdbcType=VARCHAR},
       </if>
-       <if test="workUnit != null" >
-        #{workunit,jdbcType=VARCHAR},
-      </if>
     </trim>
   </insert>
   <update id="updateByPrimaryKeySelective" parameterType="com.goafanti.common.model.UserInfo" >
@@ -204,9 +196,6 @@
       <if test="postcode != null" >
         postcode = #{postcode,jdbcType=VARCHAR},
       </if>
-      <if test="workUnit != null" >
-        work_unit = #{workUnit,jdbcType=VARCHAR},
-      </if>
     </set>
     where id = #{id,jdbcType=VARCHAR}
   </update>
@@ -225,7 +214,6 @@
       qq = #{qq,jdbcType=VARCHAR},
       postal_address = #{postalAddress,jdbcType=VARCHAR},
       postcode = #{postcode,jdbcType=VARCHAR}
-      work_unit = #{workUnit,jdbcType=VARCHAR}
     where id = #{id,jdbcType=VARCHAR}
   </update>
   
@@ -240,7 +228,7 @@
   <select id="selectUserInfoBoByUserId" parameterType="java.lang.String" resultMap="UserInfoBoMap">
   	select t.id,t.uid,t.residence_province,t.residence_city,t.residence_area,
   	t.person_portrait_url,t.life_photo_url,t.personal_profile,t.fixed_tel_area,t.fixed_tel,t.fixed_tel_extension,
-  	t.qq,t.postal_address,t.postcode,t.work_unit,
+  	t.qq,t.postal_address,t.postcode,
     u.email,u.nickname from user u 
     left JOIN user_Info t
     on t.uid = u.id where t.uid = #{uid,jdbcType=VARCHAR}

+ 1 - 1
src/main/java/com/goafanti/common/model/UserIdentity.java

@@ -34,7 +34,7 @@ public class UserIdentity {
     * 身份证号码
     */
     @Size(min = 15, max = 18, message = "{" + ErrorConstants.IDNUMBER_SIZE_ERROR + "}")
-    @Pattern(regexp= "\\d{14}[0-9a-zA-Z])|(\\d{17}[0-9a-zA-Z])" , message = "{"
+    @Pattern(regexp= "\\d{14}[0-9X])|(\\d{17}[0-9X])" , message = "{"
 			+ ErrorConstants.IDNUMBER_PATTERN_ERROR + "}")
     private String idNumber;
 

+ 0 - 12
src/main/java/com/goafanti/common/model/UserInfo.java

@@ -68,11 +68,6 @@ public class UserInfo {
     */
     private String postcode;
     
-    /**
-     * 所在单位
-     * 
-     */
-    private String workUnit;
 
     public String getId() {
         return id;
@@ -186,12 +181,5 @@ public class UserInfo {
 		this.fixedTelExtension = fixedTelExtension;
 	}
 
-	public String getWorkUnit() {
-		return workUnit;
-	}
-
-	public void setWorkUnit(String workUnit) {
-		this.workUnit = workUnit;
-	}
 	
 }

+ 24 - 0
src/main/java/com/goafanti/common/utils/TimeUtils.java

@@ -0,0 +1,24 @@
+package com.goafanti.common.utils;
+
+import com.goafanti.core.shiro.token.TokenManager;
+
+public class TimeUtils {
+	//public  static final String NON_OVER_TIME = "NON_OVER_TIME";
+	
+	//public  static final String OVER_TIME = "OVER_TIME";
+	
+	    
+          public static  Boolean checkOverTime(String s){
+        	  Boolean flag=false;
+        	  if("getMCode".equals(s)){
+	        	  if(System.currentTimeMillis()-(Long) TokenManager.getSession().getAttribute(VerifyCodeUtils.M_CODE_TIME)>60000){
+	        		 flag=true;
+	        	  }
+        	  }else if("register".equals(s)){
+        		  if(System.currentTimeMillis()-(Long) TokenManager.getSession().getAttribute(VerifyCodeUtils.M_CODE_TIME)>90000){
+ 	        		 flag=true;
+ 	        	  }
+        	  }
+        	  return flag;
+          }
+}

+ 75 - 5
src/main/java/com/goafanti/user/controller/UserApiController.java

@@ -8,6 +8,7 @@ import java.util.UUID;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 
+import org.apache.commons.lang.StringUtils;
 import org.springframework.stereotype.Controller;
 import org.springframework.validation.BindingResult;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -29,6 +30,8 @@ import com.goafanti.common.model.UserIdentity;
 import com.goafanti.common.model.UserInfo;
 import com.goafanti.common.utils.LoggerUtils;
 import com.goafanti.common.utils.PasswordUtil;
+import com.goafanti.common.utils.TimeUtils;
+import com.goafanti.common.utils.VerifyCodeUtils;
 import com.goafanti.core.shiro.token.TokenManager;
 import com.goafanti.user.bo.OrgIdentityBo;
 import com.goafanti.user.bo.OrgProBo;
@@ -102,6 +105,40 @@ public class UserApiController extends BaseApiController {
 	}
 	
 	/**
+	 * 更换手机
+	 * @param mobile
+	 * @param mobileCode
+	 * @return
+	 */
+	@RequestMapping(value="/mobile" ,method=RequestMethod.POST)
+	public Result updateMobile(String mobile,String mobileCode){
+		Result res = new Result();
+		if(StringUtils.isBlank(mobile)){
+			res.getError().add(buildError(ErrorConstants.MOBILE_EMPTY_ERROR,"手机号不能为空!"));
+			return res;
+		}
+		//验证码15分钟有效
+		if(TimeUtils.checkOverTime("register")){
+			res.getError().add(buildError(ErrorConstants.MCODE_OVERTIME_ERROR,"手机验证码超时失效"));
+			return res;
+		}
+		if(!TokenManager.getSession().getAttribute(VerifyCodeUtils.M_CODE).equals(mobileCode)){
+			res.getError().add(buildError(ErrorConstants.MCODE_ERROR,"手机验证码错误"));					
+			return res;
+		}
+		User user = userService.selectByPrimaryKey(TokenManager.getUserId());
+		if(mobile.equals(user.getMobile())){
+			res.getError().add(buildError(ErrorConstants.MOBILE_SAME_ERROR,"新手机号必须和原手机号不同!"));
+			return res;
+		}
+		if(res.getError().isEmpty() && TokenManager.isLogin()){
+			user.setMobile(mobile);
+			res.setData(userService.updateByPrimaryKey(user));
+		}
+		return res;
+	}
+	
+	/**
 	 * 个人会员基本信息
 	 * @param userIdentity
 	 * @param bindingResult
@@ -198,7 +235,6 @@ public class UserApiController extends BaseApiController {
 		    userInfo.setQq(userInfoBo.getQq());
 		    userInfo.setPostalAddress(userInfoBo.getPostalAddress());
 		    userInfo.setPostcode(userInfoBo.getPostcode());
-		    userInfo.setWorkUnit(userInfoBo.getWorkUnit());
 			if(info == null){
 				userInfo.setId(UUID.randomUUID().toString());
 				userInfo.setUid(TokenManager.getUserId());
@@ -266,7 +302,7 @@ public class UserApiController extends BaseApiController {
 	@RequestMapping(value = "/userAbility", method = RequestMethod.POST)
 	public Result abilityLabel(UserAbility userAbility){
 		Result res = new Result();
-		UserCareer ability = userAbilityService.selectUserAbilityByUserId(TokenManager.getUserId());
+		UserAbility ability = userAbilityService.selectUserAbilityByUserId(TokenManager.getUserId());
 				if(ability == null){
 					userAbility.setId(UUID.randomUUID().toString());
 					userAbility.setUid(TokenManager.getUserId());
@@ -366,7 +402,10 @@ public class UserApiController extends BaseApiController {
 	
 	
 	
-	
+	/**
+	 * 个人会员基本信息/团体会员基本信息
+	 * @return
+	 */
 	@RequestMapping(value="/base",method = RequestMethod.POST)
 	public Result basic(){
 		Result res = new Result();
@@ -381,6 +420,10 @@ public class UserApiController extends BaseApiController {
 		return res;
 	}
 	
+	/**
+	 * 个人资料/团体会员资料
+	 * @return
+	 */
 	@RequestMapping(value="/member",method = RequestMethod.POST)
 	public Result member(){
 		Result res = new Result();
@@ -395,6 +438,10 @@ public class UserApiController extends BaseApiController {
 		return res;
 	}
 	
+	/**
+	 * 个人会员教育信息
+	 * @return
+	 */
 	@RequestMapping(value="/educate",method = RequestMethod.POST)
 	public Result educate(){
 		Result res = new Result();
@@ -404,6 +451,10 @@ public class UserApiController extends BaseApiController {
 		return res;
 	}
 	
+	/**
+	 * 个人会员职业信息/团体会员技术能力
+	 * @return
+	 */
 	@RequestMapping(value="/job",method = RequestMethod.POST)
 	public Result job(){
 		Result res = new Result();
@@ -418,17 +469,21 @@ public class UserApiController extends BaseApiController {
 		return res;
 	}
 	
+	/**
+	 * 个人/团体能力标签
+	 * @return
+	 */
 	@RequestMapping(value="/ability",method = RequestMethod.POST)
 	public Result ability(){
 		Result res = new Result();
-		UserCareer u = userAbilityService.selectUserAbilityByUserId(basicInfo(userService).getUid());
+		UserAbility u = userAbilityService.selectUserAbilityByUserId(basicInfo(userService).getUid());
 		res.setData(u);
 		return res;
 	}
 	
 	
 	
-	private static  UidAndTypeBo basicInfo(UserService userService){
+	private  UidAndTypeBo basicInfo(UserService userService){
 		User u = userService.selectByPrimaryKey(TokenManager.getUserId());
 		UidAndTypeBo ub = new UidAndTypeBo();
 		
@@ -437,6 +492,21 @@ public class UserApiController extends BaseApiController {
 		return ub;
 	}
 	
+	/**
+	 * 登陆后返回用户基本信息
+	 * @return
+	 */
+	@RequestMapping(value="/afterSignIn",method = RequestMethod.POST)
+	public Result afterSignIn(){
+		Result res = new Result();
+		if(TokenManager.isLogin()){
+			User u = userService.selectByPrimaryKey(TokenManager.getUserId());
+			u.setPassword("");
+			res.setData(u);
+		}
+		return res; 
+	}
+	
 	
 	
 		

+ 3 - 3
src/main/java/com/goafanti/user/controller/UserRegisterController.java

@@ -17,6 +17,7 @@ import com.goafanti.common.constant.ErrorConstants;
 import com.goafanti.common.controller.BaseController;
 import com.goafanti.common.model.User;
 import com.goafanti.common.utils.PasswordUtil;
+import com.goafanti.common.utils.TimeUtils;
 import com.goafanti.common.utils.VerifyCodeUtils;
 import com.goafanti.core.shiro.token.TokenManager;
 import com.goafanti.user.service.UserService;
@@ -38,13 +39,12 @@ public class UserRegisterController extends BaseController{
 			String companyName,String verificationCode,String contacts,
 			String mobileCode,BindingResult bindingResult){
 		Result res = new Result();
-		
 		if(!TokenManager.getSession().getAttribute(VerifyCodeUtils.V_CODE).equals(verificationCode)){
 			res.getError().add(buildError(ErrorConstants.VCODE_ERROR,"验证码错误"));
 			return res;
 		}
 		//验证码15分钟有效
-		if(System.currentTimeMillis()-(Long) TokenManager.getSession().getAttribute(VerifyCodeUtils.M_CODE_TIME)>900000){
+		if(TimeUtils.checkOverTime("register")){
 			res.getError().add(buildError(ErrorConstants.MCODE_OVERTIME_ERROR,"手机验证码超时失效"));
 			return res;
 		}
@@ -63,7 +63,7 @@ public class UserRegisterController extends BaseController{
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "必须指定", "密码"));
 		}else{
 		    User u = userService.selectByMobieAndType(user.getMobile(),user.getType());
-		    if(null!=u){
+		    if(null != u){
 				if(u.getMobile().equals(user.getMobile())&& u.getType() == user.getType()){
 					res.getError().add(buildError(ErrorConstants.USER_ALREADY_EXIST, "用户名已存在"));
 				}

+ 1 - 1
src/main/java/com/goafanti/user/service/UserAbilityService.java

@@ -5,7 +5,7 @@ import com.goafanti.common.model.UserCareer;
 
 public interface UserAbilityService {
 
-	UserCareer selectUserAbilityByUserId(String userId);
+	UserAbility selectUserAbilityByUserId(String userId);
 
 	UserAbility insert(UserAbility userAbility);
 

+ 2 - 3
src/main/java/com/goafanti/user/service/impl/UserAbilityServiceImpl.java

@@ -5,7 +5,6 @@ import org.springframework.stereotype.Service;
 
 import com.goafanti.common.dao.UserAbilityMapper;
 import com.goafanti.common.model.UserAbility;
-import com.goafanti.common.model.UserCareer;
 import com.goafanti.user.service.UserAbilityService;
 @Service
 public class UserAbilityServiceImpl implements UserAbilityService{
@@ -13,8 +12,8 @@ public class UserAbilityServiceImpl implements UserAbilityService{
 	UserAbilityMapper userAbilityMapper;
 
 	@Override
-	public UserCareer selectUserAbilityByUserId(String userId) {
-		return userAbilityMapper.selectUserAbilityByUserId(userId);
+	public UserAbility selectUserAbilityByUserId(String uid) {
+		return userAbilityMapper.selectUserAbilityByUserId(uid);
 	}
 
 	@Override

+ 6 - 3
src/main/webapp/WEB-INF/html/test.html

@@ -58,7 +58,7 @@
     </label>
     <label>
       <span>接口地址</span>
-      <input type="text" id="path" value="/open/getMCode">
+      <input type="text" id="path" value="/signin">
     </label>
     <label>
       <span>post or get</span>
@@ -73,8 +73,11 @@
       <textarea id="data" cols="30" rows="10">
       
 	{
-	"mobile": "18273127971"
-    }
+	"mobile": "13600000000",
+	"password": "123456",
+	"type"    :0,
+	"remember":false
+}
       </textarea>
     </label>
     <br>