Browse Source

Merge remote-tracking branch 'origin/master'

raojiaolong@163.com 2 years ago
parent
commit
9b7f3e25bf

+ 21 - 3
mhotel/src/com/happy/Model/weixin/Users.java

@@ -15,7 +15,9 @@ public class Users {
     public String remark;   // 备注
     public String remark;   // 备注
     public int identity_type;   // 用户分类
     public int identity_type;   // 用户分类
     private int contactId;   // 关联人id(用于常联系人关联)
     private int contactId;   // 关联人id(用于常联系人关联)
-    private int contactName;   // 关联人姓名(用于常联系人关联)
+    private String contactName;   // 关联人姓名(用于常联系人关联)
+    private String dataType; // 数据类型
+    private String headPhoto; // 用户头像地址
 
 
     public int getId() {
     public int getId() {
         return id;
         return id;
@@ -97,11 +99,27 @@ public class Users {
         this.contactId = contactId;
         this.contactId = contactId;
     }
     }
 
 
-    public int getContactName() {
+    public String getContactName() {
         return contactName;
         return contactName;
     }
     }
 
 
-    public void setContactName(int contactName) {
+    public void setContactName(String contactName) {
         this.contactName = contactName;
         this.contactName = contactName;
     }
     }
+
+    public String getDataType() {
+        return dataType;
+    }
+
+    public void setDataType(String dataType) {
+        this.dataType = dataType;
+    }
+
+    public String getHeadPhoto() {
+        return headPhoto;
+    }
+
+    public void setHeadPhoto(String headPhoto) {
+        this.headPhoto = headPhoto;
+    }
 }
 }

+ 5 - 0
mhotel/src/com/happy/Until/Enum/B.java

@@ -0,0 +1,5 @@
+package com.happy.Until.Enum;
+
+public enum B {
+    CODE, MESSAGE,DATA;
+}

+ 10 - 0
mhotel/src/com/happy/Until/Enum/DataType.java

@@ -0,0 +1,10 @@
+package com.happy.Until.Enum;
+
+
+/**
+ * 枚举类
+ */
+public enum DataType {
+    游客数据,关联数据;
+
+}

+ 46 - 0
mhotel/src/com/happy/Until/Func.java

@@ -652,6 +652,52 @@ public class Func {
     }
     }
 
 
     /**
     /**
+     * 检验手机号码格式
+     * @param phone
+     * @return
+     */
+    public static  boolean  checkPhone(String phone) {
+
+        String regex = "^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(17[013678])|(18[0,5-9]))\\d{8}$";
+        if (checkNull(phone))
+            return false;
+
+        if (phone.length() != 11)
+            return false;
+
+        Pattern p = Pattern.compile(regex);
+        Matcher m = p.matcher(phone);
+        return m.matches();
+    }
+
+    /**
+     * 验证身份证真假
+     * @param  carNumber 身份证号
+     * @return boolean*/
+    public static boolean isCard(String carNumber) {
+        //判断输入身份证号长度是否合法
+        if (carNumber.length() != 18) {
+//            throw new RuntimeException("身份证长度不合法");//不合法 抛出一个异常
+            return false;
+        }
+        //校验身份证真假
+        int sum = 0;
+        int[] weight = {7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2};//将加权因子定义为数组
+        //遍历weight数组 求身份证前17项系数和
+        for (int i = 0; i < weight.length; i++) {
+            int n = carNumber.charAt(i) - 48;//获取 身份证对应数
+            int w = weight[i];
+            sum += w * n;
+        }
+        //对11求余
+        int index = sum % 11;
+        //校验码
+        String m = "10X98765432";
+        //获取身份证最后一位进行比对
+        return m.charAt(index) == carNumber.charAt(17);
+    }
+
+    /**
      * 判断code编码是否在startCode和endCode之间
      * 判断code编码是否在startCode和endCode之间
      *
      *
      * @param code
      * @param code

+ 38 - 0
mhotel/src/com/happy/Until/ResponseUtil.java

@@ -1,10 +1,12 @@
 package com.happy.Until;
 package com.happy.Until;
 
 
+import net.sf.json.JSONObject;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.ss.usermodel.Workbook;
 
 
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpServletResponse;
 import java.io.OutputStream;
 import java.io.OutputStream;
 import java.io.PrintWriter;
 import java.io.PrintWriter;
+import java.util.List;
 
 
 public class ResponseUtil {
 public class ResponseUtil {
 
 
@@ -26,6 +28,42 @@ public class ResponseUtil {
 		out.close();
 		out.close();
 	}
 	}
 
 
+	public static void writeJsonPageData(HttpServletResponse respone, List listPage, int page, int rows, int total) {
+		respone.setContentType("application/json;charset=utf-8");
+
+		JSONObject resultJson = new JSONObject();
+		if (listPage == null || listPage.size() == 0) {
+			resultJson.put("rows", "");
+			resultJson.put("total", 0);
+		} else {
+			resultJson.put("code", 200);
+			resultJson.put("rows", listPage);
+			// int total = listAll.size();
+			resultJson.put("total", total);// 总记录数
+			int totalPage = total % rows == 0 ? (total / rows) : (total / rows) + 1;// 总页数
+			resultJson.put("totalPage", totalPage);
+			resultJson.put("currentPage", page);// 当前页
+			resultJson.put("numPerPage", rows);// 每页数
+			resultJson.put("nextPage", totalPage - page == 0 ? page : page + 1);// 下一页
+			resultJson.put("previousPage", page - 0 == 1 ? page : page - 1);// 上一页
+			resultJson.put("hasPreviousPage", true);// 有上一页
+			resultJson.put("hasNextPage", true);// 有下一页
+			resultJson.put("firstPage", true);// 首页
+			resultJson.put("lastPage", true);// 尾页
+		}
+
+		PrintWriter out;
+		try {
+			out = respone.getWriter();
+			out.print(resultJson.toString());
+			out.flush();
+			out.close();
+		} catch (Exception e) {
+			// //System.out.println("Comm_Util_writeJson---->" + e);
+		}
+	}
+
+
 	public static void writeJson(HttpServletResponse respone, String result) {
 	public static void writeJson(HttpServletResponse respone, String result) {
 		respone.setContentType("application/json;charset=utf-8");
 		respone.setContentType("application/json;charset=utf-8");
 		PrintWriter out;
 		PrintWriter out;

+ 3 - 1
mhotel/src/com/happy/action/AppBookingAction.java

@@ -11,7 +11,7 @@ import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpServletResponse;
 
 
 /**
 /**
- * 首页进去Action请求交互
+ * 订单进去Action请求交互
  */
  */
 public class AppBookingAction extends ActionSupport implements ServletRequestAware {
 public class AppBookingAction extends ActionSupport implements ServletRequestAware {
 
 
@@ -95,6 +95,8 @@ public class AppBookingAction extends ActionSupport implements ServletRequestAwa
      */
      */
     public String pay()
     public String pay()
     {
     {
+
+
         return null;
         return null;
     }
     }
 
 

+ 202 - 20
mhotel/src/com/happy/action/AppMePageAction.java

@@ -1,17 +1,30 @@
 package com.happy.action;
 package com.happy.action;
 
 
+import com.happy.Model.Booking;
+import com.happy.Model.weixin.Users;
+import com.happy.Until.Enum.B;
+import com.happy.Until.Enum.DataType;
+import com.happy.Until.Func;
+import com.happy.Until.ResponseUtil;
 import com.happy.common.util.CommonResult;
 import com.happy.common.util.CommonResult;
+import com.happy.common.util.ResponseStatusEnum;
 import com.happy.service.AppHomePageService;
 import com.happy.service.AppHomePageService;
 import com.happy.service.BookService;
 import com.happy.service.BookService;
+import com.happy.service.UserService;
 import com.opensymphony.xwork2.ActionSupport;
 import com.opensymphony.xwork2.ActionSupport;
+import net.sf.json.JSON;
+import net.sf.json.JSONObject;
+import org.apache.struts2.ServletActionContext;
 import org.apache.struts2.interceptor.ServletRequestAware;
 import org.apache.struts2.interceptor.ServletRequestAware;
 
 
 import javax.annotation.Resource;
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpServletResponse;
+import java.util.Date;
+import java.util.List;
 
 
 /**
 /**
- * 首页进去Action请求交互
+ * 我的进去Action请求交互
  */
  */
 public class AppMePageAction extends ActionSupport implements ServletRequestAware {
 public class AppMePageAction extends ActionSupport implements ServletRequestAware {
 
 
@@ -21,11 +34,18 @@ public class AppMePageAction extends ActionSupport implements ServletRequestAwar
     @Resource
     @Resource
     public BookService bookService;
     public BookService bookService;
     @Resource
     @Resource
-    public AppHomePageService appHomePageService;
+    public UserService userService;
 
 
-    public int page; // 当前页
-    public int rows;// 每页显示的行数rows
-    public Integer id;
+    private String contactUserName; // 常用联系人姓名
+    private String contactUserIdNum; // 常用联系人身份证
+    private String contactUserPhone; // 常用联系人电话
+
+
+    public int page = 1; // 当前页
+    public int rows = 5;// 每页显示的行数rows
+    private String userId; // 用户id
+    private String userName; // 用户姓名
+    private String contactId; // 相关联系人的id
     public String status;
     public String status;
 
 
     private String userCode; // 第一次进来获取用户的code
     private String userCode; // 第一次进来获取用户的code
@@ -67,14 +87,6 @@ public class AppMePageAction extends ActionSupport implements ServletRequestAwar
         this.rows = rows;
         this.rows = rows;
     }
     }
 
 
-    public Integer getId() {
-        return id;
-    }
-
-    public void setId(Integer id) {
-        this.id = id;
-    }
-
     public String getStatus() {
     public String getStatus() {
         return status;
         return status;
     }
     }
@@ -86,20 +98,142 @@ public class AppMePageAction extends ActionSupport implements ServletRequestAwar
 
 
 
 
     /**
     /**
-     * 进入首页
+     * 进入我的,查询订单列表
      * @return
      * @return
      */
      */
-    public CommonResult homePage()
+    public String getBookingList()
     {
     {
-        // 第一次进入首页,获取用户信息
-        //getUserInfo();
-
-        // 获取民宿列表
-       appHomePageService.getHotelList(queryValue,rows,page);
+        if (Func.checkNull(userId))
+            return null;
+        // 通过用户id查询所有订单列表数据
 
 
+        StringBuilder querySql = new StringBuilder("");
+        if (!Func.checkNull(userId)){
+            querySql.append(" and create_userid = '").append(userId).append("' ");
+        }
+        int total = bookService.queryBookTotal(querySql.toString()); // 查询表中的总记录数
+        List<Booking> listPage = bookService.queryBookPage(querySql.toString(), page, rows); // 查询分页
+        ResponseUtil.writeJsonPageData(ServletActionContext.getResponse(),listPage,this.page,this.rows,total);
         return null;
         return null;
     }
     }
 
 
+    /**
+     * 进入我的页面,跳转常用旅客列表
+     */
+    public void getUserContact()
+    {
+//        String userId = "15461"; // 用户id
+        // 通过用户id查询所有订单列表数据
+        if (Func.checkNull(userId))
+            return;
+
+        StringBuilder querySql = new StringBuilder("");
+        if (!Func.checkNull(userId)){
+            querySql.append(" and contact_id = '").append(userId).append("' ");
+        }
+        querySql.append(" and data_type = '").append(DataType.关联数据.toString()).append("' ");
+        int total = userService.queryUserTotal(querySql.toString()); // 查询表中的总记录数
+        List<Users> listPage = userService.queryUserPage(querySql.toString(), page, rows); // 查询分页
+        ResponseUtil.writeJsonPageData(ServletActionContext.getResponse(),listPage,this.page,this.rows,total);
+    }
+
+    /**
+     * 用户点击设置按钮,获取数据
+     */
+    public void queryUsers()
+    {
+        if (Func.checkNull(userId))
+            return;
+        Users users = userService.queryByUserId(userId);
+
+        JSONObject resultJson = new JSONObject();
+        resultJson.put(B.CODE,ResponseStatusEnum.SUCCESS.getStatus());
+        resultJson.put(B.MESSAGE,ResponseStatusEnum.SUCCESS.getMsg());
+        resultJson.put(B.DATA,users);
+        ResponseUtil.writeJson(ServletActionContext.getResponse(),resultJson.toString());
+
+    }
+
+    /**
+     * 通过UserId进行更改或添加数据
+     */
+    public void updateContact()
+    {
+        if (Func.checkNull(userId))
+            return;
+
+        JSONObject resultJson = new JSONObject();
+        Users users = new Users();
+        users.setUser_name(contactUserName);
+
+//        // 验证手机号码
+//        if ( !Func.checkPhone(contactUserPhone))
+//        {
+//            resultJson.put(B.CODE,ResponseStatusEnum.FAILED.getStatus());
+//            resultJson.put(B.MESSAGE,"请确认手机号码");
+//            ResponseUtil.writeJson(ServletActionContext.getResponse(),resultJson.toString());
+//            return;
+//        }
+//        // 验证身份证
+//        if (!Func.isCard(contactUserIdNum))
+//        {
+//            resultJson.put(B.CODE,ResponseStatusEnum.FAILED.getStatus());
+//            resultJson.put(B.MESSAGE,"请确认身份证");
+//            ResponseUtil.writeJson(ServletActionContext.getResponse(),resultJson.toString());
+//            return;
+//        }
+        users.setUser_phone(contactUserPhone);
+        users.setCard_number(contactUserIdNum);
+        userService.update(users);
+
+        resultJson.put(B.CODE,ResponseStatusEnum.SUCCESS.getStatus());
+        resultJson.put(B.MESSAGE,ResponseStatusEnum.SUCCESS.getMsg());
+        ResponseUtil.writeJson(ServletActionContext.getResponse(),resultJson.toString());
+    }
+
+    /**
+     * 添加常用联系人数据
+     */
+    public void AddContact()
+    {
+        if (Func.checkNullOrEmpty(userId))
+            return;
+
+        // 相关联系人
+        Users users = new Users();
+        users.setContactId(Func.parseInt(userId));
+        users.setContactName(userName);
+        users.setCreate_time(Func.parseStr(new Date()));
+        users.setDataType(DataType.关联数据.toString());
+        users.setUser_name(contactUserName);    // 相关联系人的名字
+        users.setUser_phone(contactUserPhone);  // 相关联系人的手机号码
+        users.setCard_number(contactUserIdNum); // 相关联系人的身份证
+        userService.insert(users);
+
+        JSONObject resultJson = new JSONObject();
+        resultJson.put(B.CODE,ResponseStatusEnum.SUCCESS.getStatus());
+        resultJson.put(B.MESSAGE,ResponseStatusEnum.SUCCESS.getMsg());
+        ResponseUtil.writeJson(ServletActionContext.getResponse(),resultJson.toString());
+    }
+
+    /**
+     * 用户可以删除自己相关联系人
+     */
+    public void delContact()
+    {
+        if (Func.checkNull(contactId))
+            return;
+
+        JSONObject resultJson = new JSONObject();
+        userService.del(Func.parseInt(contactId));
+
+        resultJson.put(B.CODE,ResponseStatusEnum.SUCCESS.getStatus());
+        resultJson.put(B.MESSAGE,ResponseStatusEnum.SUCCESS.getMsg());
+        ResponseUtil.writeJson(ServletActionContext.getResponse(), resultJson.toString());
+    }
+
+
+
 
 
     public String getUserCode() {
     public String getUserCode() {
         return userCode;
         return userCode;
@@ -116,4 +250,52 @@ public class AppMePageAction extends ActionSupport implements ServletRequestAwar
     public void setQueryValue(String queryValue) {
     public void setQueryValue(String queryValue) {
         this.queryValue = queryValue;
         this.queryValue = queryValue;
     }
     }
+
+    public String getContactUserName() {
+        return contactUserName;
+    }
+
+    public void setContactUserName(String contactUserName) {
+        this.contactUserName = contactUserName;
+    }
+
+    public String getContactUserIdNum() {
+        return contactUserIdNum;
+    }
+
+    public void setContactUserIdNum(String contactUserIdNum) {
+        this.contactUserIdNum = contactUserIdNum;
+    }
+
+    public String getContactUserPhone() {
+        return contactUserPhone;
+    }
+
+    public void setContactUserPhone(String contactUserPhone) {
+        this.contactUserPhone = contactUserPhone;
+    }
+
+    public String getUserId() {
+        return userId;
+    }
+
+    public void setUserId(String userId) {
+        this.userId = userId;
+    }
+
+    public String getUserName() {
+        return userName;
+    }
+
+    public void setUserName(String userName) {
+        this.userName = userName;
+    }
+
+    public String getContactId() {
+        return contactId;
+    }
+
+    public void setContactId(String contactId) {
+        this.contactId = contactId;
+    }
 }
 }

+ 2 - 0
mhotel/src/com/happy/common/util/Code.java

@@ -4,4 +4,6 @@ public interface Code {
     Integer getStatus();
     Integer getStatus();
     Boolean getSuccess();
     Boolean getSuccess();
     String getMsg();
     String getMsg();
+
 }
 }
+

+ 22 - 0
mhotel/src/com/happy/dao/UserDao.java

@@ -1,5 +1,6 @@
 package com.happy.dao;
 package com.happy.dao;
 
 
+import com.happy.Model.Booking;
 import com.happy.Model.weixin.Users;
 import com.happy.Model.weixin.Users;
 
 
 import java.util.List;
 import java.util.List;
@@ -11,12 +12,33 @@ public interface UserDao {
     // 修改信息
     // 修改信息
     public int update(Users users);
     public int update(Users users);
 
 
+    /**
+     * 修改信息通过用户参数
+      * @param users
+     * @return
+     */
+    public int updateUserByParam(Users users);
+
     public int del(int id);
     public int del(int id);
 
 
     public Users queryByNum(String card_number);
     public Users queryByNum(String card_number);
 
 
     public int updateOpenid(String openid,String card_number);
     public int updateOpenid(String openid,String card_number);
 
 
+    /**
+     * 通过用户的id查询用户表
+     * @param userId
+     * @return
+     */
+    public Users queryByUserId(String userId);
+
+    /**
+     * 通过用户的openid查询用户
+      * @param openid
+     * @return
+     */
     public Users queryByOpenid(String openid);
     public Users queryByOpenid(String openid);
 
 
+    public int queryUserTotal(String sqlStr);
+    public List<Users> queryUserPage(String sqlx, int page, int rows);
 }
 }

+ 2 - 1
mhotel/src/com/happy/dao/impl/BookImplDao.java

@@ -9,6 +9,7 @@ import org.springframework.jdbc.core.namedparam.MapSqlParameterSource;
 import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
 import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
 import org.springframework.stereotype.Repository;
 import org.springframework.stereotype.Repository;
 
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.List;
 
 
 @Repository("BookDao")
 @Repository("BookDao")
@@ -122,7 +123,7 @@ public class BookImplDao implements BookDao {
         if (list != null && list.size() > 0) {
         if (list != null && list.size() > 0) {
             return list;
             return list;
         }
         }
-        return null;
+        return new ArrayList<>();
     }
     }
 
 
     // 查询用户表中的总记录数
     // 查询用户表中的总记录数

+ 125 - 1
mhotel/src/com/happy/dao/impl/UserDaoImpl.java

@@ -1,6 +1,8 @@
 package com.happy.dao.impl;
 package com.happy.dao.impl;
 
 
+import com.happy.Model.Booking;
 import com.happy.Model.weixin.Users;
 import com.happy.Model.weixin.Users;
+import com.happy.Until.Func;
 import com.happy.dao.UserDao;
 import com.happy.dao.UserDao;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.jdbc.core.BeanPropertyRowMapper;
 import org.springframework.jdbc.core.BeanPropertyRowMapper;
@@ -8,6 +10,7 @@ import org.springframework.jdbc.core.namedparam.MapSqlParameterSource;
 import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
 import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
 import org.springframework.stereotype.Repository;
 import org.springframework.stereotype.Repository;
 
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.List;
 
 
 @Repository("UserDao")
 @Repository("UserDao")
@@ -26,7 +29,7 @@ public class UserDaoImpl implements UserDao {
     }
     }
 
 
     public int insert(Users users){
     public int insert(Users users){
-        String sql = "insert into `users`(card_number,user_name,user_phone,user_zz,openid,create_time,remark,identity_type) values(:card_number,:user_name,:user_phone,:user_zz,:openid,:create_time,:remark,:identity_type) ";
+        String sql = "insert into `users`(card_number,user_name,user_phone,user_zz,openid,create_time,remark,identity_type,contact_id,contact_name,data_type,head_photo) values(:card_number,:user_name,:user_phone,:user_zz,:openid,:create_time,:remark,:identity_typecontact_id,:contact_name,:data_type,:head_photo) ";
         MapSqlParameterSource sps = new MapSqlParameterSource();
         MapSqlParameterSource sps = new MapSqlParameterSource();
         sps.addValue("card_number", users.getCard_number());
         sps.addValue("card_number", users.getCard_number());
         sps.addValue("user_name", users.getUser_name());
         sps.addValue("user_name", users.getUser_name());
@@ -36,6 +39,10 @@ public class UserDaoImpl implements UserDao {
         sps.addValue("create_time", users.getCreate_time());
         sps.addValue("create_time", users.getCreate_time());
         sps.addValue("remark", users.getRemark());
         sps.addValue("remark", users.getRemark());
         sps.addValue("identity_type", users.getIdentity_type());
         sps.addValue("identity_type", users.getIdentity_type());
+        sps.addValue("contact_id", users.getContactId());
+        sps.addValue("contact_name", users.getContactName());
+        sps.addValue("data_type", users.getDataType());
+        sps.addValue("head_photo", users.getHeadPhoto());
         int num = 0;
         int num = 0;
         try{
         try{
             num = namedParameterJdbcTemplate.update(sql, sps);
             num = namedParameterJdbcTemplate.update(sql, sps);
@@ -65,6 +72,89 @@ public class UserDaoImpl implements UserDao {
         return num;
         return num;
     }
     }
 
 
+    // 修改信息
+    public int updateUserByParam(Users users){
+        StringBuffer stringBuffer =  new StringBuffer(" update `users` set  ");
+        MapSqlParameterSource msp = new MapSqlParameterSource();
+        // 将要修改的数据填充到查询语句中
+        appendValue(users,stringBuffer,msp);
+
+        stringBuffer.append("  where id=:id  ");
+        msp.addValue("id", users.getId());
+        int num = 0;
+        try{
+            num = namedParameterJdbcTemplate.update(stringBuffer.toString(), msp);
+        }
+        catch(Exception e){
+            e.printStackTrace();
+        }
+        return num;
+    }
+
+    public void appendValue(Users users, StringBuffer stringBuffer,MapSqlParameterSource msp)
+    {
+        if (!Func.checkNull(users.getUser_name()))
+        {
+            stringBuffer.append(" user_name=:user_name ");
+            msp.addValue("user_name", users.getUser_name());
+        }
+        if (!Func.checkNull(users.getCard_number()))
+        {
+            stringBuffer.append(" card_number=:card_number ");
+            msp.addValue("card_number", users.getCard_number());
+        }
+        if (!Func.checkNull(users.getUser_phone()))
+        {
+            stringBuffer.append(" user_phone=:user_phone ");
+            msp.addValue("user_phone", users.getUser_phone());
+        }
+        if (!Func.checkNull(users.getUser_zz()))
+        {
+            stringBuffer.append(" user_zz=:user_zz ");
+            msp.addValue("user_zz", users.getUser_zz());
+        }
+        if (!Func.checkNull(users.getOpenid()))
+        {
+            stringBuffer.append(" openid=:openid ");
+            msp.addValue("openid", users.getOpenid());
+        }
+        if (!Func.checkNull(users.getRemark()))
+        {
+            stringBuffer.append(" remark=:remark ");
+            msp.addValue("remark", users.getRemark());
+        }
+        if (!Func.checkDblZero(users.getIdentity_type()))
+        {
+            stringBuffer.append(" identity_type=:identity_type ");
+            msp.addValue("identity_type", users.getIdentity_type());
+        }
+        if (!Func.checkDblZero(users.getContactId()))
+        {
+            stringBuffer.append(" contact_id=:contact_id ");
+            msp.addValue("contact_id", users.getContactId());
+        }
+        if (!Func.checkNull(users.getContactName()))
+        {
+            stringBuffer.append(" contact_id=:contact_id ");
+            msp.addValue("contact_id", users.getContactId());
+        }
+        if (!Func.checkNull(users.getDataType()))
+        {
+            stringBuffer.append(" data_type=:data_type ");
+            msp.addValue("data_type", users.getDataType());
+        }
+        if (!Func.checkNull(users.getHeadPhoto()))
+        {
+            stringBuffer.append(" head_photo=:head_photo ");
+            msp.addValue("head_photo", users.getHeadPhoto());
+        }
+
+
+
+
+    }
+
+
     public int del(int id){
     public int del(int id){
         String sql = "delete from `users` where id=:id ";
         String sql = "delete from `users` where id=:id ";
         MapSqlParameterSource sps = new MapSqlParameterSource();
         MapSqlParameterSource sps = new MapSqlParameterSource();
@@ -118,4 +208,38 @@ public class UserDaoImpl implements UserDao {
         return null;
         return null;
     }
     }
 
 
+    public Users queryByUserId(String userId){
+        String sql = "select * from users where id=:id ";
+        MapSqlParameterSource sps = new MapSqlParameterSource();
+        sps.addValue("id", userId);
+        List<Users> list = namedParameterJdbcTemplate.query(sql, sps,
+                new BeanPropertyRowMapper<>(Users.class));
+        if (list != null && list.size() > 0) {
+            return list.get(0);
+        }
+        return null;
+    }
+
+    @Override
+    public int queryUserTotal(String sqlStr) {
+        String sql = "select count(*) from `users` where 1=1 "+sqlStr;
+        MapSqlParameterSource sps = new MapSqlParameterSource();
+        return namedParameterJdbcTemplate.queryForInt(sql, sps);
+    }
+
+    @Override
+    public List<Users> queryUserPage(String sqlx, int page, int rows) {
+        int start = (page - 1) * rows;// 每页的起始下标
+        String sql = "select * from `users` where 1=1 "+sqlx+" order by id desc limit :start,:rows ";
+        MapSqlParameterSource sps = new MapSqlParameterSource();
+        sps.addValue("start", start);
+        sps.addValue("rows", rows);
+        List<Users> list = namedParameterJdbcTemplate.query(sql, sps,
+                new BeanPropertyRowMapper<>(Users.class));
+        if (list != null && list.size() > 0) {
+            return list;
+        }
+        return new ArrayList<>();
+    }
+
 }
 }

+ 18 - 0
mhotel/src/com/happy/service/UserService.java

@@ -1,7 +1,10 @@
 package com.happy.service;
 package com.happy.service;
 
 
+import com.happy.Model.Booking;
 import com.happy.Model.weixin.Users;
 import com.happy.Model.weixin.Users;
 
 
+import java.util.List;
+
 public interface UserService {
 public interface UserService {
 
 
     public int insert(Users users);
     public int insert(Users users);
@@ -15,6 +18,21 @@ public interface UserService {
 
 
     public int updateOpenid(String openid,String card_number);
     public int updateOpenid(String openid,String card_number);
 
 
+    /**
+     * 通过openid查用户数据
+     * @param openid
+     * @return
+     */
     public Users queryByOpenid(String openid);
     public Users queryByOpenid(String openid);
 
 
+    /**
+     * 通过userId查用户数据
+     * @param userId
+     * @return
+     */
+    public Users queryByUserId(String userId);
+
+    public int queryUserTotal(String sqlStr);
+
+    public List<Users> queryUserPage(String sqlx, int page, int rows);
 }
 }

+ 19 - 0
mhotel/src/com/happy/service/impl/UserServiceImpl.java

@@ -1,11 +1,16 @@
 package com.happy.service.impl;
 package com.happy.service.impl;
 
 
+import com.happy.Model.Booking;
 import com.happy.Model.weixin.Users;
 import com.happy.Model.weixin.Users;
 import com.happy.dao.UserDao;
 import com.happy.dao.UserDao;
 import com.happy.service.UserService;
 import com.happy.service.UserService;
+import org.springframework.jdbc.core.BeanPropertyRowMapper;
+import org.springframework.jdbc.core.namedparam.MapSqlParameterSource;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
 import javax.annotation.Resource;
 import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.List;
 
 
 @Service("UserService")
 @Service("UserService")
 public class UserServiceImpl implements UserService {
 public class UserServiceImpl implements UserService {
@@ -38,4 +43,18 @@ public class UserServiceImpl implements UserService {
         return userDao.queryByOpenid(openid);
         return userDao.queryByOpenid(openid);
     }
     }
 
 
+    public Users queryByUserId(String userId){
+        return userDao.queryByUserId(userId);
+    }
+
+    // 查询用户表中的总记录数
+    public int queryUserTotal(String sqlStr){
+        return userDao.queryUserTotal(sqlStr);
+    }
+
+    public List<Users> queryUserPage(String sqlx, int page, int rows){
+
+            return userDao.queryUserPage(sqlx, page, rows);
+    }
+
 }
 }

+ 18 - 4
mhotel/src/test2.java

@@ -10,6 +10,10 @@ import javax.xml.transform.TransformerFactory;
 import javax.xml.transform.dom.DOMSource;
 import javax.xml.transform.dom.DOMSource;
 import javax.xml.transform.stream.StreamResult;
 import javax.xml.transform.stream.StreamResult;
 
 
+import com.happy.Model.weixin.Users;
+import com.happy.Until.Func;
+import com.happy.common.util.CommonResult;
+import net.sf.json.JSONObject;
 import org.w3c.dom.Document;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 import org.w3c.dom.Element;
 import org.w3c.dom.NamedNodeMap;
 import org.w3c.dom.NamedNodeMap;
@@ -23,9 +27,19 @@ import org.w3c.dom.Node;
  */
  */
 public class test2 {
 public class test2 {
     public static void main(String[] args) throws InterruptedException {
     public static void main(String[] args) throws InterruptedException {
-        for (int i = 0; i < 10; i++) {
-            Thread.sleep(1000);
-            System.out.println(i);
-        }
+
+        JSONObject obj = new JSONObject();
+        Users users = new Users();
+        users.setUser_phone("321");
+        users.setUser_name("321");
+        users.setContactId(3);
+        obj.put("map", users);
+        System.out.println(CommonResult.ok(obj));
+        System.out.println(CommonResult.ok("200","成功"));
+//        System.out.printf(Func.parseStr(new Date()));
+//        for (int i = 0; i < 10; i++) {
+//            Thread.sleep(1000);
+//            System.out.println(i);
+//        }
     }
     }
 }
 }