plf 3 роки тому
батько
коміт
9a0cf39760

+ 11 - 2
src/main/java/com/caimei/modules/user/dao/CmUserbeanshistoryDao.java

@@ -1,15 +1,24 @@
 package com.caimei.modules.user.dao;
 
+import com.caimei.modules.user.entity.CmUser;
+import com.caimei.modules.user.entity.UserBeansHistory;
 import com.thinkgem.jeesite.common.persistence.CrudDao;
 import com.thinkgem.jeesite.common.persistence.annotation.MyBatisDao;
 import com.caimei.modules.user.entity.CmUserbeanshistory;
 
+import java.util.List;
+
 /**
  * 采美豆记录DAO接口
  * @author zcp
  * @version 2017-10-19
  */
 @MyBatisDao
-public interface CmUserbeanshistoryDao extends CrudDao<CmUserbeanshistory> {
-	
+public interface CmUserbeanshistoryDao{
+
+    List<CmUser> findUserBeansList(CmUser cmuser);
+
+    List<UserBeansHistory> findBeansHistoryList(UserBeansHistory userBeansHistory);
+
+    Integer findOrderReceiptId(Integer orderId);
 }

+ 3 - 0
src/main/java/com/caimei/modules/user/dao/NewCmClubDao.java

@@ -1,6 +1,7 @@
 package com.caimei.modules.user.dao;
 
 import com.caimei.modules.user.entity.NewCmClub;
+import com.caimei.modules.user.entity.UserBeansHistory;
 import com.thinkgem.jeesite.common.persistence.CrudDao;
 import com.thinkgem.jeesite.common.persistence.annotation.MyBatisDao;
 
@@ -20,4 +21,6 @@ public interface NewCmClubDao extends CrudDao<NewCmClub> {
     NewCmClub getclubByUserId(Integer userId);
 
     Integer findSpId(Integer spID);
+
+    void insertBeansHistory(UserBeansHistory beansHistory);
 }

+ 803 - 806
src/main/java/com/caimei/modules/user/entity/CmUser.java

@@ -1,822 +1,819 @@
 package com.caimei.modules.user.entity;
 
-import com.caimei.modules.miniprogram.utils.UrlEncoderUtils;
 import com.thinkgem.jeesite.common.persistence.DataEntity;
-import com.thinkgem.jeesite.common.utils.StringUtils;
 import org.hibernate.validator.constraints.Length;
 
 import javax.validation.constraints.NotNull;
 import java.beans.Transient;
-import java.io.UnsupportedEncodingException;
-import java.net.URLDecoder;
-import java.util.List;
 
 /**
  * 用户Entity
+ *
  * @author ZCP
  * @version 2017-10-10
  */
 public class CmUser extends DataEntity<CmUser> {
 
-	private static final long serialVersionUID = 1L;
-	private Integer userID;		// userID
-	private Integer userOrganizeID;//用户组织ID
-	private String mobile;		// 手机号码
-	private Integer userPermission;		// 用户权限
-	private String email;		// 邮箱
-	private String userName;		// 用户名
-	private String image;		// image
-	private String password;		// 密码
-	private String userLevelID;		// 用户会员等级,见表c_userlevel或枚举UserLevel
-	private String name;		// 组织名称
-	private String nick;		// 昵称
-	private String sex;		// 性别
-	private String registerUserTypeID;		// 用户类型,见表c_usertype或枚举UserType
-	private String manufacturerFlag;		// 已废弃 是否是供应商,1是 空或0否
-	private String manufacturerStatus;		// 供应商状态,见表c_shopstatus或枚举ShopStatus
-	private String shopID;		// 供应商Id
-	private String serviceProviderFlag;		// 已废弃  是否创客,1是 空或0否
-	private String clubFlag;		//已废弃  是否会所,1是 空或0否
-	private String masterFlag;		//已废弃  masterFlag
-	private String normalFlag;		//已废弃  normalFlag
-	private String auditStatus;		// auditStatus
-	private String auditTime;		// auditTime
-	private String auditNote;		// auditNote
-	private String registerTime;		// 注册时间
-	private String registerIP;		// 注册ip
-	private String loginTime;		// 登录时间
-	private String loginFailTime;		// 登录失败次数
-	private String loginIP;		// 登录ip
-	private String validFlag;		// 用户状态,1正常,0冻结
-	private String emailCheckFlag;		// emailCheckFlag
-	private String mobileCheckFlag;		// mobileCheckFlag
-	private String clubStatus;		// 会所状态,见表c_clubstatus或枚举ClubStatus
-	private String clubID;		// 会所Id
-	private String agreeFlag;		// agreeFlag
-	private String activationCode;		// activationCode
-	private String activationDate;		// activationDate
-	private String serviceProviderStatus;		// 创客状态
-	private String serviceProviderID;		// 创客Id
-	private String masterStatus;		// masterStatus
-	private String masterID;		// masterID
-	private Double userMoney;		// 账户余额
-	private Double ableUserMoney;		//账户可用余额
-	private String point;		// point
-	private String shopERPFlag;		// shopERPFlag
-	private String fromUserID;		// 邀请人Id
-	private String fromUserName;		// 邀请人名称
-	private String logoffTime;		// logoffTime
-	private String appKey;		// appKey
-	private String appSecret;		// appSecret
-	private String sampleFlag;		// sampleFlag
-	private String scanFlag;		// 扫描标志(4 CRM拉上来的会所)
-	private String sysroleid;		// sysroleid
-	private String gender;		// gender
-	private String age;		// 年龄
-	private String salerbuyer;		// salerbuyer
-	private String position;		// position
-	private String skill;		// skill
-	private String workage;		// workage
-	private String wechat;		// 微信号
-	private String qq;		// QQ号
-	private String smsFlag;		// 短信是否发送成功
-	private String userBeans;		// 采美豆数量
-	private String privateShopFlag;		// 平台商标志位  0非平台商 1平台商
-	private String privateClubFlag;		// 平台会所标志位  0非平台会所 1平台会所
-	private String isMeiDaoAuthorized;		// isMeiDaoAuthorized
-	private String guideFlag;		// 引导层弹出  0需要弹出  1不需要弹出
-	private String nickName;        // 微信昵称
-	private String startTime;     //注册时间开始 查询条件
-	private String endTime;		//注册时间结束  查询条件
-	private String operatorMobile; //
-
-
-
-	/**
-	 *  用户模块重构
-	 */
-	private String account;//账号名: 企业账号登录使用
-	private Integer userIdentity;//用户身份
-	private String realName;//真实姓名
-	private Integer companyUserID;//企业用户id
-	private String openID;//微信openID
-	private String bindMobile;//企业绑定手机号
-	private String tipStatus;//弹窗提示状态
-	private String identityDisplay; //前台身份展示
-	private String linkMan;//联系人
-
-	//会所用户信息
-	private String town; // 区
-	private String city; // 市
-	private String province; //省
-	private String address;		// 详细地址
-
-	public CmUser() {
-		super();
-	}
-
-	public CmUser(String id){
-		super(id);
-	}
-
-	@NotNull(message="userID不能为空")
-	public Integer getUserID() {
-		return userID;
-	}
-
-	public void setUserID(Integer userID) {
-		this.userID = userID;
-	}
-
-	public String getMobile() {
-		return mobile;
-	}
-
-	public void setMobile(String mobile) {
-		this.mobile = mobile;
-	}
-
-	public Integer getUserPermission() {
-		return userPermission;
-	}
-
-	public void setUserPermission(Integer userPermission) {
-		this.userPermission = userPermission;
-	}
-
-	public String getEmail() {
-		return email;
-	}
-
-	public void setEmail(String email) {
-		this.email = email;
-	}
-
-	public String getUserName() {
-		return userName;
-	}
-
-	public void setUserName(String userName) {
-		this.userName = userName;
-	}
-
-	public String getImage() {
-		return image;
-	}
-
-	public void setImage(String image) {
-		this.image = image;
-	}
-
-	public String getPassword() {
-		return password;
-	}
-
-	public void setPassword(String password) {
-		this.password = password;
-	}
-
-	public String getUserLevelID() {
-		return userLevelID;
-	}
-
-	public void setUserLevelID(String userLevelID) {
-		this.userLevelID = userLevelID;
-	}
-
-	public String getName() {
-		return name;
-	}
-
-	public void setName(String name) {
-		this.name = name;
-	}
-
-	public String getNick() {
-		return nick;
-	}
-
-	public void setNick(String nick) {
-		this.nick = nick;
-	}
-
-	public String getSex() {
-		return sex;
-	}
-
-	public void setSex(String sex) {
-		this.sex = sex;
-	}
-
-	public String getRegisterUserTypeID() {
-		return registerUserTypeID;
-	}
-
-	public void setRegisterUserTypeID(String registerUserTypeID) {
-		this.registerUserTypeID = registerUserTypeID;
-	}
-
-	@Length(min=0, max=1, message="是否是供应商,1是 空或0否长度必须介于 0 和 1 之间")
-	public String getManufacturerFlag() {
-		return manufacturerFlag;
-	}
-
-	public void setManufacturerFlag(String manufacturerFlag) {
-		this.manufacturerFlag = manufacturerFlag;
-	}
-
-	@Length(min=0, max=11, message="供应商状态,见表c_shopstatus或枚举ShopStatus长度必须介于 0 和 11 之间")
-	public String getManufacturerStatus() {
-		return manufacturerStatus;
-	}
-
-	public void setManufacturerStatus(String manufacturerStatus) {
-		this.manufacturerStatus = manufacturerStatus;
-	}
-
-	@Length(min=0, max=11, message="供应商Id长度必须介于 0 和 11 之间")
-	public String getShopID() {
-		return shopID;
-	}
-
-	public void setShopID(String shopID) {
-		this.shopID = shopID;
-	}
-
-	@Length(min=0, max=1, message="是否创客,1是 空或0否长度必须介于 0 和 1 之间")
-	public String getServiceProviderFlag() {
-		return serviceProviderFlag;
-	}
-
-	public void setServiceProviderFlag(String serviceProviderFlag) {
-		this.serviceProviderFlag = serviceProviderFlag;
-	}
-
-	@Length(min=0, max=1, message="是否会所,1是 空或0否长度必须介于 0 和 1 之间")
-	public String getClubFlag() {
-		return clubFlag;
-	}
-
-	public void setClubFlag(String clubFlag) {
-		this.clubFlag = clubFlag;
-	}
-
-	@Length(min=0, max=1, message="masterFlag长度必须介于 0 和 1 之间")
-	public String getMasterFlag() {
-		return masterFlag;
-	}
-
-	public void setMasterFlag(String masterFlag) {
-		this.masterFlag = masterFlag;
-	}
-
-	@Length(min=0, max=1, message="normalFlag长度必须介于 0 和 1 之间")
-	public String getNormalFlag() {
-		return normalFlag;
-	}
-
-	public void setNormalFlag(String normalFlag) {
-		this.normalFlag = normalFlag;
-	}
-
-	@Length(min=0, max=1, message="auditStatus长度必须介于 0 和 1 之间")
-	public String getAuditStatus() {
-		return auditStatus;
-	}
-
-	public void setAuditStatus(String auditStatus) {
-		this.auditStatus = auditStatus;
-	}
-
-	@Length(min=0, max=19, message="auditTime长度必须介于 0 和 19 之间")
-	public String getAuditTime() {
-		return auditTime;
-	}
-
-	public void setAuditTime(String auditTime) {
-		this.auditTime = auditTime;
-	}
-
-	@Length(min=0, max=100, message="auditNote长度必须介于 0 和 100 之间")
-	public String getAuditNote() {
-		return auditNote;
-	}
-
-	public void setAuditNote(String auditNote) {
-		this.auditNote = auditNote;
-	}
-
-	public String getRegisterTime() {
-		return registerTime;
-	}
-
-	public void setRegisterTime(String registerTime) {
-		this.registerTime = registerTime;
-	}
-
-	public String getRegisterIP() {
-		return registerIP;
-	}
-
-	public void setRegisterIP(String registerIP) {
-		this.registerIP = registerIP;
-	}
-
-	public String getLoginTime() {
-		return loginTime;
-	}
-
-	public void setLoginTime(String loginTime) {
-		this.loginTime = loginTime;
-	}
-
-	public String getLoginFailTime() {
-		return loginFailTime;
-	}
-
-	public void setLoginFailTime(String loginFailTime) {
-		this.loginFailTime = loginFailTime;
-	}
-
-	public String getLoginIP() {
-		return loginIP;
-	}
-
-	public void setLoginIP(String loginIP) {
-		this.loginIP = loginIP;
-	}
-
-	public String getValidFlag() {
-		return validFlag;
-	}
-
-	public void setValidFlag(String validFlag) {
-		this.validFlag = validFlag;
-	}
-
-	public String getEmailCheckFlag() {
-		return emailCheckFlag;
-	}
-
-	public void setEmailCheckFlag(String emailCheckFlag) {
-		this.emailCheckFlag = emailCheckFlag;
-	}
-
-	public String getMobileCheckFlag() {
-		return mobileCheckFlag;
-	}
-
-	public void setMobileCheckFlag(String mobileCheckFlag) {
-		this.mobileCheckFlag = mobileCheckFlag;
-	}
-
-	public String getClubStatus() {
-		return clubStatus;
-	}
-
-	public void setClubStatus(String clubStatus) {
-		this.clubStatus = clubStatus;
-	}
-
-	public String getClubID() {
-		return clubID;
-	}
-
-	public void setClubID(String clubID) {
-		this.clubID = clubID;
-	}
-
-	public String getAgreeFlag() {
-		return agreeFlag;
-	}
-
-	public void setAgreeFlag(String agreeFlag) {
-		this.agreeFlag = agreeFlag;
-	}
-
-	public String getActivationCode() {
-		return activationCode;
-	}
-
-	public void setActivationCode(String activationCode) {
-		this.activationCode = activationCode;
-	}
-
-	public String getActivationDate() {
-		return activationDate;
-	}
-
-	public void setActivationDate(String activationDate) {
-		this.activationDate = activationDate;
-	}
-
-	@Length(min=0, max=11, message="创客状态长度必须介于 0 和 11 之间")
-	public String getServiceProviderStatus() {
-		return serviceProviderStatus;
-	}
-
-	public void setServiceProviderStatus(String serviceProviderStatus) {
-		this.serviceProviderStatus = serviceProviderStatus;
-	}
-
-	@Length(min=0, max=11, message="创客Id长度必须介于 0 和 11 之间")
-	public String getServiceProviderID() {
-		return serviceProviderID;
-	}
-
-	public void setServiceProviderID(String serviceProviderID) {
-		this.serviceProviderID = serviceProviderID;
-	}
-
-	@Length(min=0, max=11, message="masterStatus长度必须介于 0 和 11 之间")
-	public String getMasterStatus() {
-		return masterStatus;
-	}
-
-	public void setMasterStatus(String masterStatus) {
-		this.masterStatus = masterStatus;
-	}
-
-	@Length(min=0, max=11, message="masterID长度必须介于 0 和 11 之间")
-	public String getMasterID() {
-		return masterID;
-	}
-
-	public void setMasterID(String masterID) {
-		this.masterID = masterID;
-	}
-
-	public Double getUserMoney() {
-		return userMoney;
-	}
-
-	public void setUserMoney(Double userMoney) {
-		this.userMoney = userMoney;
-	}
-
-	public Double getAbleUserMoney() {
-		return ableUserMoney;
-	}
-
-	public void setAbleUserMoney(Double ableUserMoney) {
-		this.ableUserMoney = ableUserMoney;
-	}
-
-	@Length(min=0, max=11, message="point长度必须介于 0 和 11 之间")
-	public String getPoint() {
-		return point;
-	}
-
-	public void setPoint(String point) {
-		this.point = point;
-	}
-
-	@Length(min=0, max=1, message="shopERPFlag长度必须介于 0 和 1 之间")
-	public String getShopERPFlag() {
-		return shopERPFlag;
-	}
-
-	public void setShopERPFlag(String shopERPFlag) {
-		this.shopERPFlag = shopERPFlag;
-	}
-
-	@Length(min=0, max=11, message="邀请人Id长度必须介于 0 和 11 之间")
-	public String getFromUserID() {
-		return fromUserID;
-	}
-
-	public void setFromUserID(String fromUserID) {
-		this.fromUserID = fromUserID;
-	}
-
-	public String getFromUserName() {
-		return fromUserName;
-	}
-
-	public void setFromUserName(String fromUserName) {
-		this.fromUserName = fromUserName;
-	}
-
-	public String getLogoffTime() {
-		return logoffTime;
-	}
-
-	public void setLogoffTime(String logoffTime) {
-		this.logoffTime = logoffTime;
-	}
-
-	@Length(min=0, max=20, message="appKey长度必须介于 0 和 20 之间")
-	public String getAppKey() {
-		return appKey;
-	}
-
-	public void setAppKey(String appKey) {
-		this.appKey = appKey;
-	}
-
-	@Length(min=0, max=25, message="appSecret长度必须介于 0 和 25 之间")
-	public String getAppSecret() {
-		return appSecret;
-	}
-
-	public void setAppSecret(String appSecret) {
-		this.appSecret = appSecret;
-	}
-
-	@Length(min=0, max=1, message="sampleFlag长度必须介于 0 和 1 之间")
-	public String getSampleFlag() {
-		return sampleFlag;
-	}
-
-	public void setSampleFlag(String sampleFlag) {
-		this.sampleFlag = sampleFlag;
-	}
-
-	@Length(min=0, max=11, message="扫描标志(4 CRM拉上来的会所)长度必须介于 0 和 11 之间")
-	public String getScanFlag() {
-		return scanFlag;
-	}
-
-	public void setScanFlag(String scanFlag) {
-		this.scanFlag = scanFlag;
-	}
-
-	@Length(min=0, max=11, message="sysroleid长度必须介于 0 和 11 之间")
-	public String getSysroleid() {
-		return sysroleid;
-	}
-
-	public void setSysroleid(String sysroleid) {
-		this.sysroleid = sysroleid;
-	}
-
-	@Length(min=0, max=2, message="gender长度必须介于 0 和 2 之间")
-	public String getGender() {
-		return gender;
-	}
-
-	public void setGender(String gender) {
-		this.gender = gender;
-	}
-
-	@Length(min=0, max=11, message="年龄长度必须介于 0 和 11 之间")
-	public String getAge() {
-		return age;
-	}
-
-	public void setAge(String age) {
-		this.age = age;
-	}
-
-	@Length(min=0, max=11, message="salerbuyer长度必须介于 0 和 11 之间")
-	public String getSalerbuyer() {
-		return salerbuyer;
-	}
-
-	public void setSalerbuyer(String salerbuyer) {
-		this.salerbuyer = salerbuyer;
-	}
-
-	@Length(min=0, max=128, message="position长度必须介于 0 和 128 之间")
-	public String getPosition() {
-		return position;
-	}
-
-	public void setPosition(String position) {
-		this.position = position;
-	}
-
-	@Length(min=0, max=128, message="skill长度必须介于 0 和 128 之间")
-	public String getSkill() {
-		return skill;
-	}
-
-	public void setSkill(String skill) {
-		this.skill = skill;
-	}
-
-	public String getWorkage() {
-		return workage;
-	}
-
-	public void setWorkage(String workage) {
-		this.workage = workage;
-	}
-
-	@Length(min=0, max=64, message="微信号长度必须介于 0 和 64 之间")
-	public String getWechat() {
-		return wechat;
-	}
-
-	public void setWechat(String wechat) {
-		this.wechat = wechat;
-	}
-
-	@Length(min=0, max=32, message="QQ号长度必须介于 0 和 32 之间")
-	public String getQq() {
-		return qq;
-	}
-
-	public void setQq(String qq) {
-		this.qq = qq;
-	}
-
-	@Length(min=0, max=1, message="短信是否发送成功长度必须介于 0 和 1 之间")
-	public String getSmsFlag() {
-		return smsFlag;
-	}
-
-	public void setSmsFlag(String smsFlag) {
-		this.smsFlag = smsFlag;
-	}
-
-	@Length(min=0, max=11, message="采美豆数量长度必须介于 0 和 11 之间")
-	public String getUserBeans() {
-		return userBeans;
-	}
-
-	public void setUserBeans(String userBeans) {
-		this.userBeans = userBeans;
-	}
-
-	@Length(min=0, max=11, message="平台商标志位  0非平台商 1平台商长度必须介于 0 和 11 之间")
-	public String getPrivateShopFlag() {
-		return privateShopFlag;
-	}
-
-	public void setPrivateShopFlag(String privateShopFlag) {
-		this.privateShopFlag = privateShopFlag;
-	}
-
-	@Length(min=0, max=11, message="平台会所标志位  0非平台会所 1平台会所长度必须介于 0 和 11 之间")
-	public String getPrivateClubFlag() {
-		return privateClubFlag;
-	}
-
-	public void setPrivateClubFlag(String privateClubFlag) {
-		this.privateClubFlag = privateClubFlag;
-	}
-
-	@Length(min=0, max=11, message="isMeiDaoAuthorized长度必须介于 0 和 11 之间")
-	public String getIsMeiDaoAuthorized() {
-		return isMeiDaoAuthorized;
-	}
-
-	public void setIsMeiDaoAuthorized(String isMeiDaoAuthorized) {
-		this.isMeiDaoAuthorized = isMeiDaoAuthorized;
-	}
-
-	@Length(min=0, max=1, message="引导层弹出  0需要弹出  1不需要弹出长度必须介于 0 和 1 之间")
-	public String getGuideFlag() {
-		return guideFlag;
-	}
-
-	public void setGuideFlag(String guideFlag) {
-		this.guideFlag = guideFlag;
-	}
-
-	public String getNickName() {
-		return nickName;
-	}
-
-	public void setNickName(String nickName) {
-		this.nickName = nickName;
-	}
-
-	public String getAccount() {
-		return account;
-	}
-
-	public void setAccount(String account) {
-		this.account = account;
-	}
-
-	public Integer getUserIdentity() {
-		return userIdentity;
-	}
-
-	public void setUserIdentity(Integer userIdentity) {
-		this.userIdentity = userIdentity;
-	}
-
-	public String getRealName() {
-		return realName;
-	}
-
-	public void setRealName(String realName) {
-		this.realName = realName;
-	}
-
-	public Integer getCompanyUserID() {
-		return companyUserID;
-	}
-
-	public void setCompanyUserID(Integer companyUserID) {
-		this.companyUserID = companyUserID;
-	}
-
-	public String getOpenID() {
-		return openID;
-	}
-
-	public void setOpenID(String openID) {
-		this.openID = openID;
-	}
-
-	public String getBindMobile() {
-		return bindMobile;
-	}
-
-	public void setBindMobile(String bindMobile) {
-		this.bindMobile = bindMobile;
-	}
-
-	public String getTipStatus() {
-		return tipStatus;
-	}
-
-	public void setTipStatus(String tipStatus) {
-		this.tipStatus = tipStatus;
-	}
-
-	@Transient
-	public String getIdentityDisplay() {
-		return identityDisplay;
-	}
-
-	public void setIdentityDisplay(String identityDisplay) {
-		this.identityDisplay = identityDisplay;
-	}
-	@Transient
-	public String getStartTime() {
-		return startTime;
-	}
-
-	public void setStartTime(String startTime) {
-		this.startTime = startTime;
-	}
-	@Transient
-	public String getEndTime() {
-		return endTime;
-	}
-
-	public void setEndTime(String endTime) {
-		this.endTime = endTime;
-	}
-
-	public Integer getUserOrganizeID() {
-		return userOrganizeID;
-	}
-
-	public void setUserOrganizeID(Integer userOrganizeID) {
-		this.userOrganizeID = userOrganizeID;
-	}
-
-	public String getLinkMan() {
-		return linkMan;
-	}
-
-	public void setLinkMan(String linkMan) {
-		this.linkMan = linkMan;
-	}
-
-	public String getTown() {
-		return town;
-	}
-
-	public void setTown(String town) {
-		this.town = town;
-	}
-
-	public String getCity() {
-		return city;
-	}
-
-	public void setCity(String city) {
-		this.city = city;
-	}
-
-	public String getProvince() {
-		return province;
-	}
-
-	public void setProvince(String province) {
-		this.province = province;
-	}
-
-	public String getAddress() {
-		return address;
-	}
-
-	public void setAddress(String address) {
-		this.address = address;
-	}
-
-	public String getOperatorMobile() {
-		return operatorMobile;
-	}
-
-	public void setOperatorMobile(String operatorMobile) {
-		this.operatorMobile = operatorMobile;
-	}
+    private static final long serialVersionUID = 1L;
+    private Integer userID;        // userID
+    private Integer userOrganizeID;//用户组织ID
+    private String mobile;        // 手机号码
+    private Integer userPermission;        // 用户权限
+    private String email;        // 邮箱
+    private String userName;        // 用户名
+    private String image;        // image
+    private String password;        // 密码
+    private String userLevelID;        // 用户会员等级,见表c_userlevel或枚举UserLevel
+    private String name;        // 组织名称
+    private String nick;        // 昵称
+    private String sex;        // 性别
+    private String registerUserTypeID;        // 用户类型,见表c_usertype或枚举UserType
+    private String manufacturerFlag;        // 已废弃 是否是供应商,1是 空或0否
+    private String manufacturerStatus;        // 供应商状态,见表c_shopstatus或枚举ShopStatus
+    private String shopID;        // 供应商Id
+    private String serviceProviderFlag;        // 已废弃  是否创客,1是 空或0否
+    private String clubFlag;        //已废弃  是否会所,1是 空或0否
+    private String masterFlag;        //已废弃  masterFlag
+    private String normalFlag;        //已废弃  normalFlag
+    private String auditStatus;        // auditStatus
+    private String auditTime;        // auditTime
+    private String auditNote;        // auditNote
+    private String registerTime;        // 注册时间
+    private String registerIP;        // 注册ip
+    private String loginTime;        // 登录时间
+    private String loginFailTime;        // 登录失败次数
+    private String loginIP;        // 登录ip
+    private String validFlag;        // 用户状态,1正常,0冻结
+    private String emailCheckFlag;        // emailCheckFlag
+    private String mobileCheckFlag;        // mobileCheckFlag
+    private String clubStatus;        // 会所状态,见表c_clubstatus或枚举ClubStatus
+    private String clubID;        // 会所Id
+    private String agreeFlag;        // agreeFlag
+    private String activationCode;        // activationCode
+    private String activationDate;        // activationDate
+    private String serviceProviderStatus;        // 创客状态
+    private String serviceProviderID;        // 创客Id
+    private String masterStatus;        // masterStatus
+    private String masterID;        // masterID
+    private Double userMoney;        // 账户余额
+    private Double ableUserMoney;        //账户可用余额
+    private String point;        // point
+    private String shopERPFlag;        // shopERPFlag
+    private String fromUserID;        // 邀请人Id
+    private String fromUserName;        // 邀请人名称
+    private String logoffTime;        // logoffTime
+    private String appKey;        // appKey
+    private String appSecret;        // appSecret
+    private String sampleFlag;        // sampleFlag
+    private String scanFlag;        // 扫描标志(4 CRM拉上来的会所)
+    private String sysroleid;        // sysroleid
+    private String gender;        // gender
+    private String age;        // 年龄
+    private String salerbuyer;        // salerbuyer
+    private String position;        // position
+    private String skill;        // skill
+    private String workage;        // workage
+    private String wechat;        // 微信号
+    private String qq;        // QQ号
+    private String smsFlag;        // 短信是否发送成功
+    private Integer userBeans;        // 采美豆数量
+    private String privateShopFlag;        // 平台商标志位  0非平台商 1平台商
+    private String privateClubFlag;        // 平台会所标志位  0非平台会所 1平台会所
+    private String isMeiDaoAuthorized;        // isMeiDaoAuthorized
+    private String guideFlag;        // 引导层弹出  0需要弹出  1不需要弹出
+    private String nickName;        // 微信昵称
+    private String startTime;     //注册时间开始 查询条件
+    private String endTime;        //注册时间结束  查询条件
+    private String operatorMobile; //
+
+
+    /**
+     * 用户模块重构
+     */
+    private String account;//账号名: 企业账号登录使用
+    private Integer userIdentity;//用户身份
+    private String realName;//真实姓名
+    private Integer companyUserID;//企业用户id
+    private String openID;//微信openID
+    private String bindMobile;//企业绑定手机号
+    private String tipStatus;//弹窗提示状态
+    private String identityDisplay; //前台身份展示
+    private String linkMan;//联系人
+
+    //会所用户信息
+    private String town; // 区
+    private String city; // 市
+    private String province; //省
+    private String address;        // 详细地址
+
+    public CmUser() {
+        super();
+    }
+
+    public CmUser(String id) {
+        super(id);
+    }
+
+    @NotNull(message = "userID不能为空")
+    public Integer getUserID() {
+        return userID;
+    }
+
+    public void setUserID(Integer userID) {
+        this.userID = userID;
+    }
+
+    public String getMobile() {
+        return mobile;
+    }
+
+    public void setMobile(String mobile) {
+        this.mobile = mobile;
+    }
+
+    public Integer getUserPermission() {
+        return userPermission;
+    }
+
+    public void setUserPermission(Integer userPermission) {
+        this.userPermission = userPermission;
+    }
+
+    public String getEmail() {
+        return email;
+    }
+
+    public void setEmail(String email) {
+        this.email = email;
+    }
+
+    public String getUserName() {
+        return userName;
+    }
+
+    public void setUserName(String userName) {
+        this.userName = userName;
+    }
+
+    public String getImage() {
+        return image;
+    }
+
+    public void setImage(String image) {
+        this.image = image;
+    }
+
+    public String getPassword() {
+        return password;
+    }
+
+    public void setPassword(String password) {
+        this.password = password;
+    }
+
+    public String getUserLevelID() {
+        return userLevelID;
+    }
+
+    public void setUserLevelID(String userLevelID) {
+        this.userLevelID = userLevelID;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getNick() {
+        return nick;
+    }
+
+    public void setNick(String nick) {
+        this.nick = nick;
+    }
+
+    public String getSex() {
+        return sex;
+    }
+
+    public void setSex(String sex) {
+        this.sex = sex;
+    }
+
+    public String getRegisterUserTypeID() {
+        return registerUserTypeID;
+    }
+
+    public void setRegisterUserTypeID(String registerUserTypeID) {
+        this.registerUserTypeID = registerUserTypeID;
+    }
+
+    @Length(min = 0, max = 1, message = "是否是供应商,1是 空或0否长度必须介于 0 和 1 之间")
+    public String getManufacturerFlag() {
+        return manufacturerFlag;
+    }
+
+    public void setManufacturerFlag(String manufacturerFlag) {
+        this.manufacturerFlag = manufacturerFlag;
+    }
+
+    @Length(min = 0, max = 11, message = "供应商状态,见表c_shopstatus或枚举ShopStatus长度必须介于 0 和 11 之间")
+    public String getManufacturerStatus() {
+        return manufacturerStatus;
+    }
+
+    public void setManufacturerStatus(String manufacturerStatus) {
+        this.manufacturerStatus = manufacturerStatus;
+    }
+
+    @Length(min = 0, max = 11, message = "供应商Id长度必须介于 0 和 11 之间")
+    public String getShopID() {
+        return shopID;
+    }
+
+    public void setShopID(String shopID) {
+        this.shopID = shopID;
+    }
+
+    @Length(min = 0, max = 1, message = "是否创客,1是 空或0否长度必须介于 0 和 1 之间")
+    public String getServiceProviderFlag() {
+        return serviceProviderFlag;
+    }
+
+    public void setServiceProviderFlag(String serviceProviderFlag) {
+        this.serviceProviderFlag = serviceProviderFlag;
+    }
+
+    @Length(min = 0, max = 1, message = "是否会所,1是 空或0否长度必须介于 0 和 1 之间")
+    public String getClubFlag() {
+        return clubFlag;
+    }
+
+    public void setClubFlag(String clubFlag) {
+        this.clubFlag = clubFlag;
+    }
+
+    @Length(min = 0, max = 1, message = "masterFlag长度必须介于 0 和 1 之间")
+    public String getMasterFlag() {
+        return masterFlag;
+    }
+
+    public void setMasterFlag(String masterFlag) {
+        this.masterFlag = masterFlag;
+    }
+
+    @Length(min = 0, max = 1, message = "normalFlag长度必须介于 0 和 1 之间")
+    public String getNormalFlag() {
+        return normalFlag;
+    }
+
+    public void setNormalFlag(String normalFlag) {
+        this.normalFlag = normalFlag;
+    }
+
+    @Length(min = 0, max = 1, message = "auditStatus长度必须介于 0 和 1 之间")
+    public String getAuditStatus() {
+        return auditStatus;
+    }
+
+    public void setAuditStatus(String auditStatus) {
+        this.auditStatus = auditStatus;
+    }
+
+    @Length(min = 0, max = 19, message = "auditTime长度必须介于 0 和 19 之间")
+    public String getAuditTime() {
+        return auditTime;
+    }
+
+    public void setAuditTime(String auditTime) {
+        this.auditTime = auditTime;
+    }
+
+    @Length(min = 0, max = 100, message = "auditNote长度必须介于 0 和 100 之间")
+    public String getAuditNote() {
+        return auditNote;
+    }
+
+    public void setAuditNote(String auditNote) {
+        this.auditNote = auditNote;
+    }
+
+    public String getRegisterTime() {
+        return registerTime;
+    }
+
+    public void setRegisterTime(String registerTime) {
+        this.registerTime = registerTime;
+    }
+
+    public String getRegisterIP() {
+        return registerIP;
+    }
+
+    public void setRegisterIP(String registerIP) {
+        this.registerIP = registerIP;
+    }
+
+    public String getLoginTime() {
+        return loginTime;
+    }
+
+    public void setLoginTime(String loginTime) {
+        this.loginTime = loginTime;
+    }
+
+    public String getLoginFailTime() {
+        return loginFailTime;
+    }
+
+    public void setLoginFailTime(String loginFailTime) {
+        this.loginFailTime = loginFailTime;
+    }
+
+    public String getLoginIP() {
+        return loginIP;
+    }
+
+    public void setLoginIP(String loginIP) {
+        this.loginIP = loginIP;
+    }
+
+    public String getValidFlag() {
+        return validFlag;
+    }
+
+    public void setValidFlag(String validFlag) {
+        this.validFlag = validFlag;
+    }
+
+    public String getEmailCheckFlag() {
+        return emailCheckFlag;
+    }
+
+    public void setEmailCheckFlag(String emailCheckFlag) {
+        this.emailCheckFlag = emailCheckFlag;
+    }
+
+    public String getMobileCheckFlag() {
+        return mobileCheckFlag;
+    }
+
+    public void setMobileCheckFlag(String mobileCheckFlag) {
+        this.mobileCheckFlag = mobileCheckFlag;
+    }
+
+    public String getClubStatus() {
+        return clubStatus;
+    }
+
+    public void setClubStatus(String clubStatus) {
+        this.clubStatus = clubStatus;
+    }
+
+    public String getClubID() {
+        return clubID;
+    }
+
+    public void setClubID(String clubID) {
+        this.clubID = clubID;
+    }
+
+    public String getAgreeFlag() {
+        return agreeFlag;
+    }
+
+    public void setAgreeFlag(String agreeFlag) {
+        this.agreeFlag = agreeFlag;
+    }
+
+    public String getActivationCode() {
+        return activationCode;
+    }
+
+    public void setActivationCode(String activationCode) {
+        this.activationCode = activationCode;
+    }
+
+    public String getActivationDate() {
+        return activationDate;
+    }
+
+    public void setActivationDate(String activationDate) {
+        this.activationDate = activationDate;
+    }
+
+    @Length(min = 0, max = 11, message = "创客状态长度必须介于 0 和 11 之间")
+    public String getServiceProviderStatus() {
+        return serviceProviderStatus;
+    }
+
+    public void setServiceProviderStatus(String serviceProviderStatus) {
+        this.serviceProviderStatus = serviceProviderStatus;
+    }
+
+    @Length(min = 0, max = 11, message = "创客Id长度必须介于 0 和 11 之间")
+    public String getServiceProviderID() {
+        return serviceProviderID;
+    }
+
+    public void setServiceProviderID(String serviceProviderID) {
+        this.serviceProviderID = serviceProviderID;
+    }
+
+    @Length(min = 0, max = 11, message = "masterStatus长度必须介于 0 和 11 之间")
+    public String getMasterStatus() {
+        return masterStatus;
+    }
+
+    public void setMasterStatus(String masterStatus) {
+        this.masterStatus = masterStatus;
+    }
+
+    @Length(min = 0, max = 11, message = "masterID长度必须介于 0 和 11 之间")
+    public String getMasterID() {
+        return masterID;
+    }
+
+    public void setMasterID(String masterID) {
+        this.masterID = masterID;
+    }
+
+    public Double getUserMoney() {
+        return userMoney;
+    }
+
+    public void setUserMoney(Double userMoney) {
+        this.userMoney = userMoney;
+    }
+
+    public Double getAbleUserMoney() {
+        return ableUserMoney;
+    }
+
+    public void setAbleUserMoney(Double ableUserMoney) {
+        this.ableUserMoney = ableUserMoney;
+    }
+
+    @Length(min = 0, max = 11, message = "point长度必须介于 0 和 11 之间")
+    public String getPoint() {
+        return point;
+    }
+
+    public void setPoint(String point) {
+        this.point = point;
+    }
+
+    @Length(min = 0, max = 1, message = "shopERPFlag长度必须介于 0 和 1 之间")
+    public String getShopERPFlag() {
+        return shopERPFlag;
+    }
+
+    public void setShopERPFlag(String shopERPFlag) {
+        this.shopERPFlag = shopERPFlag;
+    }
+
+    @Length(min = 0, max = 11, message = "邀请人Id长度必须介于 0 和 11 之间")
+    public String getFromUserID() {
+        return fromUserID;
+    }
+
+    public void setFromUserID(String fromUserID) {
+        this.fromUserID = fromUserID;
+    }
+
+    public String getFromUserName() {
+        return fromUserName;
+    }
+
+    public void setFromUserName(String fromUserName) {
+        this.fromUserName = fromUserName;
+    }
+
+    public String getLogoffTime() {
+        return logoffTime;
+    }
+
+    public void setLogoffTime(String logoffTime) {
+        this.logoffTime = logoffTime;
+    }
+
+    @Length(min = 0, max = 20, message = "appKey长度必须介于 0 和 20 之间")
+    public String getAppKey() {
+        return appKey;
+    }
+
+    public void setAppKey(String appKey) {
+        this.appKey = appKey;
+    }
+
+    @Length(min = 0, max = 25, message = "appSecret长度必须介于 0 和 25 之间")
+    public String getAppSecret() {
+        return appSecret;
+    }
+
+    public void setAppSecret(String appSecret) {
+        this.appSecret = appSecret;
+    }
+
+    @Length(min = 0, max = 1, message = "sampleFlag长度必须介于 0 和 1 之间")
+    public String getSampleFlag() {
+        return sampleFlag;
+    }
+
+    public void setSampleFlag(String sampleFlag) {
+        this.sampleFlag = sampleFlag;
+    }
+
+    @Length(min = 0, max = 11, message = "扫描标志(4 CRM拉上来的会所)长度必须介于 0 和 11 之间")
+    public String getScanFlag() {
+        return scanFlag;
+    }
+
+    public void setScanFlag(String scanFlag) {
+        this.scanFlag = scanFlag;
+    }
+
+    @Length(min = 0, max = 11, message = "sysroleid长度必须介于 0 和 11 之间")
+    public String getSysroleid() {
+        return sysroleid;
+    }
+
+    public void setSysroleid(String sysroleid) {
+        this.sysroleid = sysroleid;
+    }
+
+    @Length(min = 0, max = 2, message = "gender长度必须介于 0 和 2 之间")
+    public String getGender() {
+        return gender;
+    }
+
+    public void setGender(String gender) {
+        this.gender = gender;
+    }
+
+    @Length(min = 0, max = 11, message = "年龄长度必须介于 0 和 11 之间")
+    public String getAge() {
+        return age;
+    }
+
+    public void setAge(String age) {
+        this.age = age;
+    }
+
+    @Length(min = 0, max = 11, message = "salerbuyer长度必须介于 0 和 11 之间")
+    public String getSalerbuyer() {
+        return salerbuyer;
+    }
+
+    public void setSalerbuyer(String salerbuyer) {
+        this.salerbuyer = salerbuyer;
+    }
+
+    @Length(min = 0, max = 128, message = "position长度必须介于 0 和 128 之间")
+    public String getPosition() {
+        return position;
+    }
+
+    public void setPosition(String position) {
+        this.position = position;
+    }
+
+    @Length(min = 0, max = 128, message = "skill长度必须介于 0 和 128 之间")
+    public String getSkill() {
+        return skill;
+    }
+
+    public void setSkill(String skill) {
+        this.skill = skill;
+    }
+
+    public String getWorkage() {
+        return workage;
+    }
+
+    public void setWorkage(String workage) {
+        this.workage = workage;
+    }
+
+    @Length(min = 0, max = 64, message = "微信号长度必须介于 0 和 64 之间")
+    public String getWechat() {
+        return wechat;
+    }
+
+    public void setWechat(String wechat) {
+        this.wechat = wechat;
+    }
+
+    @Length(min = 0, max = 32, message = "QQ号长度必须介于 0 和 32 之间")
+    public String getQq() {
+        return qq;
+    }
+
+    public void setQq(String qq) {
+        this.qq = qq;
+    }
+
+    @Length(min = 0, max = 1, message = "短信是否发送成功长度必须介于 0 和 1 之间")
+    public String getSmsFlag() {
+        return smsFlag;
+    }
+
+    public void setSmsFlag(String smsFlag) {
+        this.smsFlag = smsFlag;
+    }
+
+    @Length(min = 0, max = 11, message = "采美豆数量长度必须介于 0 和 11 之间")
+    public Integer getUserBeans() {
+        return userBeans;
+    }
+
+    public void setUserBeans(Integer userBeans) {
+        this.userBeans = userBeans;
+    }
+
+    @Length(min = 0, max = 11, message = "平台商标志位  0非平台商 1平台商长度必须介于 0 和 11 之间")
+    public String getPrivateShopFlag() {
+        return privateShopFlag;
+    }
+
+    public void setPrivateShopFlag(String privateShopFlag) {
+        this.privateShopFlag = privateShopFlag;
+    }
+
+    @Length(min = 0, max = 11, message = "平台会所标志位  0非平台会所 1平台会所长度必须介于 0 和 11 之间")
+    public String getPrivateClubFlag() {
+        return privateClubFlag;
+    }
+
+    public void setPrivateClubFlag(String privateClubFlag) {
+        this.privateClubFlag = privateClubFlag;
+    }
+
+    @Length(min = 0, max = 11, message = "isMeiDaoAuthorized长度必须介于 0 和 11 之间")
+    public String getIsMeiDaoAuthorized() {
+        return isMeiDaoAuthorized;
+    }
+
+    public void setIsMeiDaoAuthorized(String isMeiDaoAuthorized) {
+        this.isMeiDaoAuthorized = isMeiDaoAuthorized;
+    }
+
+    @Length(min = 0, max = 1, message = "引导层弹出  0需要弹出  1不需要弹出长度必须介于 0 和 1 之间")
+    public String getGuideFlag() {
+        return guideFlag;
+    }
+
+    public void setGuideFlag(String guideFlag) {
+        this.guideFlag = guideFlag;
+    }
+
+    public String getNickName() {
+        return nickName;
+    }
+
+    public void setNickName(String nickName) {
+        this.nickName = nickName;
+    }
+
+    public String getAccount() {
+        return account;
+    }
+
+    public void setAccount(String account) {
+        this.account = account;
+    }
+
+    public Integer getUserIdentity() {
+        return userIdentity;
+    }
+
+    public void setUserIdentity(Integer userIdentity) {
+        this.userIdentity = userIdentity;
+    }
+
+    public String getRealName() {
+        return realName;
+    }
+
+    public void setRealName(String realName) {
+        this.realName = realName;
+    }
+
+    public Integer getCompanyUserID() {
+        return companyUserID;
+    }
+
+    public void setCompanyUserID(Integer companyUserID) {
+        this.companyUserID = companyUserID;
+    }
+
+    public String getOpenID() {
+        return openID;
+    }
+
+    public void setOpenID(String openID) {
+        this.openID = openID;
+    }
+
+    public String getBindMobile() {
+        return bindMobile;
+    }
+
+    public void setBindMobile(String bindMobile) {
+        this.bindMobile = bindMobile;
+    }
+
+    public String getTipStatus() {
+        return tipStatus;
+    }
+
+    public void setTipStatus(String tipStatus) {
+        this.tipStatus = tipStatus;
+    }
+
+    @Transient
+    public String getIdentityDisplay() {
+        return identityDisplay;
+    }
+
+    public void setIdentityDisplay(String identityDisplay) {
+        this.identityDisplay = identityDisplay;
+    }
+
+    @Transient
+    public String getStartTime() {
+        return startTime;
+    }
+
+    public void setStartTime(String startTime) {
+        this.startTime = startTime;
+    }
+
+    @Transient
+    public String getEndTime() {
+        return endTime;
+    }
+
+    public void setEndTime(String endTime) {
+        this.endTime = endTime;
+    }
+
+    public Integer getUserOrganizeID() {
+        return userOrganizeID;
+    }
+
+    public void setUserOrganizeID(Integer userOrganizeID) {
+        this.userOrganizeID = userOrganizeID;
+    }
+
+    public String getLinkMan() {
+        return linkMan;
+    }
+
+    public void setLinkMan(String linkMan) {
+        this.linkMan = linkMan;
+    }
+
+    public String getTown() {
+        return town;
+    }
+
+    public void setTown(String town) {
+        this.town = town;
+    }
+
+    public String getCity() {
+        return city;
+    }
+
+    public void setCity(String city) {
+        this.city = city;
+    }
+
+    public String getProvince() {
+        return province;
+    }
+
+    public void setProvince(String province) {
+        this.province = province;
+    }
+
+    public String getAddress() {
+        return address;
+    }
+
+    public void setAddress(String address) {
+        this.address = address;
+    }
+
+    public String getOperatorMobile() {
+        return operatorMobile;
+    }
+
+    public void setOperatorMobile(String operatorMobile) {
+        this.operatorMobile = operatorMobile;
+    }
 }

+ 132 - 0
src/main/java/com/caimei/modules/user/entity/UserBeansHistory.java

@@ -0,0 +1,132 @@
+package com.caimei.modules.user.entity;
+
+import com.thinkgem.jeesite.common.persistence.DataEntity;
+
+import java.util.Date;
+
+/**
+ * user_beans_history
+ *
+ * @author
+ */
+public class UserBeansHistory extends DataEntity<UserBeansHistory> {
+    /**
+     * 用户id
+     */
+    private Integer userId;
+
+    /**
+     * 收支类型:1收入,2支出
+     */
+    private Integer type;
+
+    /**
+     * 采美豆类型:1注册机构,2升级会员机构,3普通机构完善资料,4会员机构完善资料,5下单,
+     * 6线上支付订单,7确认收货,8系统发放,9抵用退回,10抵用运费,11退款回收
+     */
+    private Integer beansType;
+
+    /**
+     * 主订单id
+     */
+    private Integer orderId;
+
+    /**
+     * 采美豆数量
+     */
+    private Integer num;
+
+    /**
+     * 推送状态:0未推送,1已推送
+     */
+    private Integer pushStatus;
+
+    /**
+     * 添加时间
+     */
+    private Date addTime;
+
+    /**
+     * 机构id
+     */
+    private Integer clubId;
+
+    /**
+     * 收款id
+     */
+    private Integer receiptId;
+
+    private static final long serialVersionUID = 1L;
+
+    public Integer getUserId() {
+        return userId;
+    }
+
+    public void setUserId(Integer userId) {
+        this.userId = userId;
+    }
+
+    public Integer getType() {
+        return type;
+    }
+
+    public void setType(Integer type) {
+        this.type = type;
+    }
+
+    public Integer getBeansType() {
+        return beansType;
+    }
+
+    public void setBeansType(Integer beansType) {
+        this.beansType = beansType;
+    }
+
+    public Integer getOrderId() {
+        return orderId;
+    }
+
+    public void setOrderId(Integer orderId) {
+        this.orderId = orderId;
+    }
+
+    public Integer getNum() {
+        return num;
+    }
+
+    public void setNum(Integer num) {
+        this.num = num;
+    }
+
+    public Integer getPushStatus() {
+        return pushStatus;
+    }
+
+    public void setPushStatus(Integer pushStatus) {
+        this.pushStatus = pushStatus;
+    }
+
+    public Date getAddTime() {
+        return addTime;
+    }
+
+    public void setAddTime(Date addTime) {
+        this.addTime = addTime;
+    }
+
+    public Integer getClubId() {
+        return clubId;
+    }
+
+    public void setClubId(Integer clubId) {
+        this.clubId = clubId;
+    }
+
+    public Integer getReceiptId() {
+        return receiptId;
+    }
+
+    public void setReceiptId(Integer receiptId) {
+        this.receiptId = receiptId;
+    }
+}

+ 32 - 29
src/main/java/com/caimei/modules/user/service/CmUserbeanshistoryService.java

@@ -1,44 +1,47 @@
 package com.caimei.modules.user.service;
 
-import java.util.List;
-
+import com.caimei.modules.user.dao.CmUserDao;
+import com.caimei.modules.user.dao.CmUserbeanshistoryDao;
+import com.caimei.modules.user.entity.CmUser;
+import com.caimei.modules.user.entity.UserBeansHistory;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import com.thinkgem.jeesite.common.persistence.Page;
-import com.thinkgem.jeesite.common.service.CrudService;
-import com.caimei.modules.user.entity.CmUserbeanshistory;
-import com.caimei.modules.user.dao.CmUserbeanshistoryDao;
+import java.util.List;
 
 /**
  * 采美豆记录Service
+ *
  * @author zcp
  * @version 2017-10-19
  */
 @Service
 @Transactional(readOnly = true)
-public class CmUserbeanshistoryService extends CrudService<CmUserbeanshistoryDao, CmUserbeanshistory> {
+public class CmUserbeanshistoryService {
+    @Autowired
+    private CmUserbeanshistoryDao cmUserbeanshistoryDao;
+    @Autowired
+    private CmUserDao cmUserDao;
+
+    public List<CmUser> findUserBeansList(CmUser cmuser) {
+        return cmUserbeanshistoryDao.findUserBeansList(cmuser);
+    }
+
+    public List<UserBeansHistory> findBeansHistoryList(UserBeansHistory userBeansHistory) {
+        List<UserBeansHistory> historyList = cmUserbeanshistoryDao.findBeansHistoryList(userBeansHistory);
+        if (historyList != null && historyList.size() > 0) {
+            for (UserBeansHistory history : historyList) {
+                CmUser user = cmUserDao.get(history.getUserId().toString());
+                history.setClubId(Integer.valueOf(user.getClubID()));
+                if (6 == history.getBeansType()) {
+                    //收款id
+                    Integer receiptId = cmUserbeanshistoryDao.findOrderReceiptId(history.getOrderId());
+                    history.setReceiptId(receiptId);
+                }
 
-	public CmUserbeanshistory get(String id) {
-		return super.get(id);
-	}
-	
-	public List<CmUserbeanshistory> findList(CmUserbeanshistory cmUserbeanshistory) {
-		return super.findList(cmUserbeanshistory);
-	}
-	
-	public Page<CmUserbeanshistory> findPage(Page<CmUserbeanshistory> page, CmUserbeanshistory cmUserbeanshistory) {
-		return super.findPage(page, cmUserbeanshistory);
-	}
-	
-	@Transactional(readOnly = false)
-	public void save(CmUserbeanshistory cmUserbeanshistory) {
-		super.save(cmUserbeanshistory);
-	}
-	
-	@Transactional(readOnly = false)
-	public void delete(CmUserbeanshistory cmUserbeanshistory) {
-		super.delete(cmUserbeanshistory);
-	}
-	
+            }
+        }
+        return historyList;
+    }
 }

+ 5 - 0
src/main/java/com/caimei/modules/user/service/NewCmClubService.java

@@ -2,6 +2,7 @@ package com.caimei.modules.user.service;
 
 import java.util.List;
 
+import com.caimei.modules.user.entity.UserBeansHistory;
 import org.apache.commons.collections.CollectionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -70,4 +71,8 @@ public class NewCmClubService extends CrudService<NewCmClubDao, NewCmClub> {
         }
     }
 
+    @Transactional(readOnly = false)
+    public void insertBeansHistory(UserBeansHistory beansHistory) {
+        newCmClubDao.insertBeansHistory(beansHistory);
+    }
 }

+ 0 - 10
src/main/java/com/caimei/modules/user/web/CmUserBalanceRecordController.java

@@ -107,19 +107,9 @@ public class CmUserBalanceRecordController extends BaseController {
         return "modules/user/cmUserBalanceList";
     }
 
-//	@RequiresPermissions("user:cmUserBalanceRecord:view")
-//	@RequestMapping(value = "form")
-//	public String form(CmUserBalanceRecord cmUserBalanceRecord, Model model) {
-//		model.addAttribute("cmUserBalanceRecord", cmUserBalanceRecord);
-//		return "modules/user/cmUserBalanceRecordForm";
-//	}
-
     @RequiresPermissions("user:cmUserBalanceRecord:edit")
     @RequestMapping(value = "save")
     public String save(CmUserBalanceRecord cmUserBalanceRecord, Model model, RedirectAttributes redirectAttributes) {
-//		if (!beanValidator(model, cmUserBalanceRecord)){
-//			return form(cmUserBalanceRecord, model);
-//		}
         cmUserBalanceRecordService.save(cmUserBalanceRecord);
         addMessage(redirectAttributes, "保存用户余额收支记录成功");
         return "redirect:" + Global.getAdminPath() + "/user/cmUserBalanceRecord/?repage";

+ 1 - 1
src/main/java/com/caimei/modules/user/web/CmUserOrganizeController.java

@@ -400,7 +400,7 @@ public class CmUserOrganizeController extends BaseController {
         cmUser.setAbleUserMoney(0d);
         cmUser.setPoint("0");
         cmUser.setShopERPFlag("0");
-        cmUser.setUserBeans("0");
+        cmUser.setUserBeans(0);
         cmUser.setValidFlag("1");
         cmUser.setAgreeFlag("1");
         cmUser.setLoginFailTime("0");

+ 41 - 62
src/main/java/com/caimei/modules/user/web/CmUserbeanshistoryController.java

@@ -1,26 +1,21 @@
 package com.caimei.modules.user.web;
 
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-
-import org.apache.shiro.authz.annotation.RequiresPermissions;
+import com.caimei.modules.user.entity.CmUser;
+import com.caimei.modules.user.entity.UserBeansHistory;
+import com.caimei.modules.user.service.CmUserService;
+import com.caimei.modules.user.service.CmUserbeanshistoryService;
+import com.thinkgem.jeesite.common.persistence.Page;
+import com.thinkgem.jeesite.common.web.BaseController;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
-import org.springframework.web.bind.annotation.ModelAttribute;
 import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.servlet.mvc.support.RedirectAttributes;
 
-import com.thinkgem.jeesite.common.config.Global;
-import com.thinkgem.jeesite.common.persistence.Page;
-import com.thinkgem.jeesite.common.web.BaseController;
-import com.thinkgem.jeesite.common.utils.StringUtils;
-import com.caimei.modules.user.entity.CmUserbeanshistory;
-import com.caimei.modules.user.service.CmUserbeanshistoryService;
+import java.util.List;
 
 /**
  * 采美豆记录Controller
+ *
  * @author zcp
  * @version 2017-10-19
  */
@@ -28,53 +23,37 @@ import com.caimei.modules.user.service.CmUserbeanshistoryService;
 @RequestMapping(value = "${adminPath}/user/cmUserbeanshistory")
 public class CmUserbeanshistoryController extends BaseController {
 
-	@Autowired
-	private CmUserbeanshistoryService cmUserbeanshistoryService;
-	
-	@ModelAttribute
-	public CmUserbeanshistory get(@RequestParam(required=false) String id) {
-		CmUserbeanshistory entity = null;
-		if (StringUtils.isNotBlank(id)){
-			entity = cmUserbeanshistoryService.get(id);
-		}
-		if (entity == null){
-			entity = new CmUserbeanshistory();
-		}
-		return entity;
-	}
-	
-	@RequiresPermissions("user:cmUserbeanshistory:view")
-	@RequestMapping(value = {"list", ""})
-	public String list(CmUserbeanshistory cmUserbeanshistory, HttpServletRequest request, HttpServletResponse response, Model model) {
-		Page<CmUserbeanshistory> page = cmUserbeanshistoryService.findPage(new Page<CmUserbeanshistory>(request, response), cmUserbeanshistory); 
-		model.addAttribute("page", page);
-		return "modules/user/cmUserbeanshistoryList";
-	}
-
-	@RequiresPermissions("user:cmUserbeanshistory:view")
-	@RequestMapping(value = "form")
-	public String form(CmUserbeanshistory cmUserbeanshistory, Model model) {
-		model.addAttribute("cmUserbeanshistory", cmUserbeanshistory);
-		return "modules/user/cmUserbeanshistoryForm";
-	}
-
-	@RequiresPermissions("user:cmUserbeanshistory:edit")
-	@RequestMapping(value = "save")
-	public String save(CmUserbeanshistory cmUserbeanshistory, Model model, RedirectAttributes redirectAttributes) {
-		if (!beanValidator(model, cmUserbeanshistory)){
-			return form(cmUserbeanshistory, model);
-		}
-		cmUserbeanshistoryService.save(cmUserbeanshistory);
-		addMessage(redirectAttributes, "保存采美豆记录成功");
-		return "redirect:"+Global.getAdminPath()+"/user/cmUserbeanshistory/?repage";
-	}
-	
-	@RequiresPermissions("user:cmUserbeanshistory:delete")
-	@RequestMapping(value = "delete")
-	public String delete(CmUserbeanshistory cmUserbeanshistory, RedirectAttributes redirectAttributes) {
-		cmUserbeanshistoryService.delete(cmUserbeanshistory);
-		addMessage(redirectAttributes, "删除采美豆记录成功");
-		return "redirect:"+Global.getAdminPath()+"/user/cmUserbeanshistory/?repage";
-	}
-
+    @Autowired
+    private CmUserbeanshistoryService cmUserbeanshistoryService;
+    @Autowired
+    private CmUserService cmUserService;
+
+
+    /**
+     * 采美豆列表
+     */
+    @RequestMapping(value = "userBeansList")
+    public String userBeansList(CmUser cmuser, Page page, Model model) {
+        page.setPageSize(30);
+        cmuser.setPage(page);
+        List<CmUser> userBalanceList = cmUserbeanshistoryService.findUserBeansList(cmuser);
+        page.setList(userBalanceList);
+        model.addAttribute("page", page);
+        return "modules/user/cmUserBeansList";
+    }
+
+    /**
+     * 采美豆详情
+     */
+    @RequestMapping(value = "beansHistoryList")
+    public String beansHistoryList(UserBeansHistory userBeansHistory, Page page, Model model) {
+        page.setPageSize(30);
+        userBeansHistory.setPage(page);
+        List<UserBeansHistory> historyList = cmUserbeanshistoryService.findBeansHistoryList(userBeansHistory);
+        page.setList(historyList);
+        CmUser user = cmUserService.get(userBeansHistory.getUserId().toString());
+        model.addAttribute("page", page);
+        model.addAttribute("user", user);
+        return "modules/user/cmUserbeanshistoryList";
+    }
 }

+ 7 - 8
src/main/java/com/caimei/modules/user/web/NewCmClubController.java

@@ -1,7 +1,6 @@
 package com.caimei.modules.user.web;
 
 import com.caimei.constants.ClubStatus;
-import com.caimei.constants.UserBeanHistoryType;
 import com.caimei.modules.product.service.CmShoporderService;
 import com.caimei.modules.sys.utils.CmMsgUtils;
 import com.caimei.modules.sys.utils.SMSUtils;
@@ -279,7 +278,7 @@ public class NewCmClubController extends BaseController {
      * @param response
      * @return
      */
-    @RequiresPermissions("user:newCmClub:edit")
+   /* @RequiresPermissions("user:newCmClub:edit")
     @ResponseBody
     @RequestMapping(value = "auditClub")
     public Map<String, Object> auditClub(String auditStatus, String auditNote, String id, HttpServletRequest request, HttpServletResponse response) {
@@ -305,7 +304,7 @@ public class NewCmClubController extends BaseController {
             // 2、个人用户升级成为企业会所
             //获取企业会所下级用户
             List<CmUser> cmUsers = cmUserService.findByCompanyUserID(companyUserID);
-            /**审核处理*/
+            *//**审核处理*//*
             //审核通过
             if (StringUtils.equals("1", auditStatus)) {
                 userPermission = 2;
@@ -328,7 +327,7 @@ public class NewCmClubController extends BaseController {
                 }
                 companyUser.setUserPermission(userPermission);
                 //审核通过 采美豆+5000
-                if (StringUtils.isBlank(companyUser.getUserBeans())) {
+                *//*if (StringUtils.isBlank(companyUser.getUserBeans())) {
                     companyUser.setUserBeans("5000");
                 } else {
                     companyUser.setUserBeans(5000 + Integer.parseInt(companyUser.getUserBeans()) + "");
@@ -340,7 +339,7 @@ public class NewCmClubController extends BaseController {
                 cmUserbeanshistory.setPayBeans("5000");
                 cmUserbeanshistory.setInfo("审核上线赠送");
                 cmUserbeanshistory.setAddTime(DateUtils.getDateTime());
-                cmUserbeanshistoryService.save(cmUserbeanshistory);
+                cmUserbeanshistoryService.save(cmUserbeanshistory);*//*
                 if (upByUser)
                     smsMessage = "您申请的企业账号已成功通过资料审核,您现有的账号身份已升级为企业员工身份。";
                 else
@@ -378,9 +377,9 @@ public class NewCmClubController extends BaseController {
             } else {
                 messageContent = title + "【未通过】,原因:" + auditNote;
             }
-            /**发送采美消息*/
+            *//**发送采美消息*//*
             sendMessage("1", companyUser.getUserID(), title, messageContent);
-            /**发送短信*/
+            *//**发送短信*//*
             if (StringUtils.isNotEmpty(mobile)) {
                 SMSUtils.sendSms(mobile, smsMessage);
             }
@@ -392,7 +391,7 @@ public class NewCmClubController extends BaseController {
             map.put("msg", "操作失败");
         }
         return map;
-    }
+    }*/
 
     /**
      * 检查微信注册的用户是否需要发送短信 checkAndSendSMS:(这里用一句话描述这个方法的作用). <br/>

+ 12 - 2
src/main/java/com/caimei/modules/user/web/newUser/AgencyController.java

@@ -529,6 +529,7 @@ public class AgencyController extends BaseController {
                 //审核通过升级为会员机构
                 companyUser.setUserIdentity(2);
                 smsMessage = "恭喜您成功升级为会员机构!立马登录采美365网享受享受更多更好的服务吧~";
+                companyUser.setUserBeans(companyUser.getUserBeans() + 20);
             } else {
                 //审核未通过,普通机构权限
                 userPermission = 5;
@@ -559,6 +560,15 @@ public class AgencyController extends BaseController {
             String messageContent = "";
             if (auditStatus.equals("1")) {
                 messageContent = "恭喜您," + title + "【已通过】,恭喜您成功加入采美,祝您开启愉快的采购之旅。";
+                //升级为机构成功,送20采美豆
+                UserBeansHistory beansHistory = new UserBeansHistory();
+                beansHistory.setUserId(companyUser.getUserID());
+                beansHistory.setBeansType(2);
+                beansHistory.setType(1);
+                beansHistory.setNum(20);
+                beansHistory.setPushStatus(0);
+                beansHistory.setAddTime(new Date());
+                newCmClubService.insertBeansHistory(beansHistory);
             } else {
                 messageContent = title + "【未通过】,原因:" + auditNote;
             }
@@ -676,7 +686,7 @@ public class AgencyController extends BaseController {
      */
     @RequestMapping("checkMobile")
     @ResponseBody
-    public Map<String,String> checkMobile(String bindMobile,Integer userID){
-        return cmUserService.checkMobile(bindMobile,userID,"crm");
+    public Map<String, String> checkMobile(String bindMobile, Integer userID) {
+        return cmUserService.checkMobile(bindMobile, userID, "crm");
     }
 }

+ 4 - 4
src/main/resources/config/dev/caimei.properties

@@ -40,10 +40,10 @@ jdbc.pool.maxActive=20
 jdbc.testSql=SELECT 'x' FROM DUAL
 
 #redis settings
-redis.keyPrefix=caimei-manager
-redis.host=119.29.0.46
-redis.port=6380
-redis.pass=6#xsI%b4o@5c3RoE
+#redis.keyPrefix=caimei-manager
+redis.host=192.168.2.100
+redis.port=6379
+redis.pass=123456
 redis.timeout=100000
 #\u6700\u5927\u8FDE\u63A5\u6570
 redis.pool.maxActive=300

+ 51 - 92
src/main/resources/mappings/modules/user/CmUserbeanshistoryMapper.xml

@@ -1,102 +1,61 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.caimei.modules.user.dao.CmUserbeanshistoryDao">
-    
-	<sql id="cmUserbeanshistoryColumns">
-		a.userBeansHistoryID AS "id",
-		a.userBeanHistoryTypeID AS "userBeanHistoryTypeID",
-		a.userID AS "userID",
-		a.relatedID AS "relatedID",
-		a.payBeans AS "payBeans",
-		a.info AS "info",
-		a.addTime AS "addTime"
-	</sql>
-	
-	<sql id="cmUserbeanshistoryJoins">
-	</sql>
-    
-	<select id="get" resultType="CmUserbeanshistory">
-		SELECT 
-			<include refid="cmUserbeanshistoryColumns"/>
-		FROM userbeanshistory a
-		<include refid="cmUserbeanshistoryJoins"/>
-		WHERE a.userBeansHistoryID = #{id}
-	</select>
-	
-	<select id="findList" resultType="CmUserbeanshistory">
-		SELECT 
-			<include refid="cmUserbeanshistoryColumns"/>
-		FROM userbeanshistory a
-		<include refid="cmUserbeanshistoryJoins"/>
+	<select id="findUserBeansList" resultType="com.caimei.modules.user.entity.CmUser">
+		SELECT
+			userID,
+			userName,
+			name,
+			userBeans
+		FROM user
 		<where>
-			
-			<if test="userBeansHistoryID != null and userBeansHistoryID != ''">
-				AND a.userBeansHistoryID = #{id}
-			</if>
-			<if test="userID != null and userID != ''">
-				AND a.userID = #{userID}
+			<if test="name != null and name != ''">
+				and name LIKE concat('%',#{name},'%')
 			</if>
+			and userIdentity in (2,4)
+			AND validFlag = 1
+			AND clubStatus in (90,1,92)
 		</where>
-		<choose>
-			<when test="page !=null and page.orderBy != null and page.orderBy != ''">
-				ORDER BY ${page.orderBy}
-			</when>
-			<otherwise>
-			</otherwise>
-		</choose>
+		ORDER BY userBeans DESC
 	</select>
-	
-	<select id="findAllList" resultType="CmUserbeanshistory">
-		SELECT 
-			<include refid="cmUserbeanshistoryColumns"/>
-		FROM userbeanshistory a
-		<include refid="cmUserbeanshistoryJoins"/>
-		<where>
-			
-		</where>		
-		<choose>
-			<when test="page !=null and page.orderBy != null and page.orderBy != ''">
-				ORDER BY ${page.orderBy}
-			</when>
-			<otherwise>
-			</otherwise>
-		</choose>
+
+	<select id="findBeansHistoryList" resultType="com.caimei.modules.user.entity.UserBeansHistory">
+		SELECT
+		  `id`,
+		  `userId`,
+		  `type`,
+		  `beansType`,
+		  `orderId`,
+		  `num`,
+		  `pushStatus`,
+		  `addTime`
+		FROM
+		  `user_beans_history`
+		WHERE
+		  userId = #{userId}
+		<if test="type != null">
+			AND type = #{type}
+		</if>
+		<if test="beansType != null and beansType != 3">
+			AND beansType = #{beansType}
+		</if>
+		<if test="beansType == 3">
+			AND beansType IN (3,4)
+		</if>
+		ORDER BY addTime DESC
+	</select>
+
+	<select id="findOrderReceiptId" resultType="integer">
+		SELECT
+		  receiptID
+		FROM
+		  cm_receipt_order_relation cror
+		  LEFT JOIN cm_discern_receipt cdr ON cdr.id = cror.receiptID
+		WHERE
+		  cror.relationType = 2
+		  AND cror.delFlag = 0
+		  AND cdr.receiptStatus = 3
+		  AND cror.orderID = #{orderId}
 	</select>
-	
-	<insert id="insert" parameterType="CmUserbeanshistory"  keyProperty="id" useGeneratedKeys="true">
-		INSERT INTO userbeanshistory(
-			userBeansHistoryID,
-			userBeanHistoryTypeID,
-			userID,
-			relatedID,
-			payBeans,
-			info,
-			addTime
-		) VALUES (
-			#{userBeansHistoryID},
-			#{userBeanHistoryTypeID},
-			#{userID},
-			#{relatedID},
-			#{payBeans},
-			#{info},
-			#{addTime}
-		)
-	</insert>
-	
-	<update id="update">
-		UPDATE userbeanshistory SET 	
-			userBeanHistoryTypeID = #{userBeanHistoryTypeID},
-			userID = #{userID},
-			relatedID = #{relatedID},
-			payBeans = #{payBeans},
-			info = #{info},
-			addTime = #{addTime}
-		WHERE userBeansHistoryID = #{id}
-	</update>
-	
-	<delete id="delete">
-		DELETE FROM userbeanshistory
-		WHERE userBeansHistoryID = #{id}
-	</delete>
 	
 </mapper>

+ 13 - 0
src/main/resources/mappings/modules/user/NewCmClubMapper.xml

@@ -606,8 +606,21 @@
 		JOIN province d ON c.`provinceID` =d.`provinceID`
 		WHERE  a.clubID=#{clubID}
 	</select>
+
 	<select id="findSpId" resultType="java.lang.Integer">
 		select serviceProviderID from serviceprovider where serviceProviderID = #{spID} and status = 90
 	</select>
 
+	<insert id="insertBeansHistory">
+        INSERT INTO `user_beans_history` (
+          `userId`, `type`, `beansType`, `orderId`,
+          `num`, `pushStatus`, `addTime`
+        )
+        VALUES
+          (
+            #{userId}, #{type}, #{beansType}, #{orderId},
+            #{num}, #{pushStatus}, #{addTime}
+          )
+    </insert>
+
 </mapper>

+ 68 - 0
src/main/webapp/WEB-INF/views/modules/user/cmUserBeansList.jsp

@@ -0,0 +1,68 @@
+<%@ page contentType="text/html;charset=UTF-8" %>
+<%@ include file="/WEB-INF/views/include/taglib.jsp"%>
+<html>
+<head>
+    <title>采美豆</title>
+    <meta name="decorator" content="default"/>
+    <style type="text/css">
+        .table th{text-align: center;}
+        .table td{text-align: center;}
+    </style>
+    <script type="text/javascript">
+        $(document).ready(function() {
+
+        });
+        function page(n,s){
+            $("#pageNo").val(n);
+            $("#pageSize").val(s);
+            $("#searchForm").submit();
+            return false;
+        }
+    </script>
+</head>
+<body>
+<ul class="nav nav-tabs">
+    <li class="active"><a href="${ctx}/user/cmUserbeanshistory/userBeansList">采美豆列表</a></li>
+</ul>
+<form:form id="searchForm" modelAttribute="cmUser" action="${ctx}/user/cmUserbeanshistory/userBeansList" method="post" class="breadcrumb form-search">
+    <input id="pageNo" name="pageNo" type="hidden" value="${page.pageNo}"/>
+    <input id="pageSize" name="pageSize" type="hidden" value="${page.pageSize}"/>
+    <div class="ul-form">
+        <label>机构名称:</label>
+        <form:input path="name" htmlEscape="false" maxlength="20" class="input-medium"/>
+        <input id="btnSubmit" class="btn btn-primary" type="submit" value="查询"/>
+        <div class="clearfix"></div>
+    </div>
+</form:form>
+<sys:message content="${message}"/>
+<table id="contentTable" class="table table-striped table-bordered table-condensed" >
+    <thead>
+    <tr>
+        <th>序号</th>
+        <th>机构名称</th>
+        <th>采美豆</th>
+        <th>操作</th>
+    </tr>
+    </thead>
+    <tbody>
+    <c:forEach items="${page.list}" var="cmUser" varStatus="index">
+        <tr>
+            <td>
+                    ${(page.pageNo-1)*page.pageSize+index.index+1}
+            </td>
+            <td>
+                    ${cmUser.name}
+            </td>
+            <td>
+                ${empty cmUser.userBeans ? 0:cmUser.userBeans}
+            </td>
+            <td>
+                <a href="${ctx}/user/cmUserbeanshistory/beansHistoryList?userId=${cmUser.userID}" >查看详情</a>
+            </td>
+        </tr>
+    </c:forEach>
+    </tbody>
+</table>
+<div class="pagination">${page}</div>
+</body>
+</html>

+ 0 - 84
src/main/webapp/WEB-INF/views/modules/user/cmUserbeanshistoryForm.jsp

@@ -1,84 +0,0 @@
-<%@ page contentType="text/html;charset=UTF-8" %>
-<%@ include file="/WEB-INF/views/include/taglib.jsp"%>
-<html>
-<head>
-	<title>采美豆记录管理</title>
-	<meta name="decorator" content="default"/>
-	<script type="text/javascript">
-		$(document).ready(function() {
-			//$("#name").focus();
-			$("#inputForm").validate({
-				submitHandler: function(form){
-					loading('正在提交,请稍等...');
-					form.submit();
-				},
-				errorContainer: "#messageBox",
-				errorPlacement: function(error, element) {
-					$("#messageBox").text("输入有误,请先更正。");
-					if (element.is(":checkbox")||element.is(":radio")||element.parent().is(".input-append")){
-						error.appendTo(element.parent().parent());
-					} else {
-						error.insertAfter(element);
-					}
-				}
-			});
-		});
-	</script>
-</head>
-<body>
-	<ul class="nav nav-tabs">
-		<li><a href="${ctx}/user/cmUserbeanshistory/">采美豆记录列表</a></li>
-		<li class="active"><a href="${ctx}/user/cmUserbeanshistory/form?id=${cmUserbeanshistory.id}">采美豆记录<shiro:hasPermission name="user:cmUserbeanshistory:edit">${not empty cmUserbeanshistory.id?'编辑':'添加'}</shiro:hasPermission><shiro:lacksPermission name="user:cmUserbeanshistory:edit">查看</shiro:lacksPermission></a></li>
-	</ul><br/>
-	<form:form id="inputForm" modelAttribute="cmUserbeanshistory" action="${ctx}/user/cmUserbeanshistory/save" method="post" class="form-horizontal">
-		<form:hidden path="id"/>
-		<sys:message content="${message}"/>		
-		<div class="control-group">
-			<label class="control-label"><span class="help-inline"><font color="red">*</font> </span>userBeansHistoryID:</label>
-			<div class="controls">
-				<form:input path="userBeansHistoryID" htmlEscape="false" maxlength="11" class="input-xlarge required digits"/>
-			</div>
-		</div>
-		<div class="control-group">
-			<label class="control-label">类型,见表c_userbeanhistorytype或枚举UserBeanHistoryType:</label>
-			<div class="controls">
-				<form:input path="userBeanHistoryTypeID" htmlEscape="false" maxlength="11" class="input-xlarge "/>
-			</div>
-		</div>
-		<div class="control-group">
-			<label class="control-label">对应用户Id:</label>
-			<div class="controls">
-				<form:input path="userID" htmlEscape="false" maxlength="11" class="input-xlarge  digits"/>
-			</div>
-		</div>
-		<div class="control-group">
-			<label class="control-label">相关订单Id:</label>
-			<div class="controls">
-				<form:input path="relatedID" htmlEscape="false" maxlength="11" class="input-xlarge "/>
-			</div>
-		</div>
-		<div class="control-group">
-			<label class="control-label">数量:</label>
-			<div class="controls">
-				<form:input path="payBeans" htmlEscape="false" class="input-xlarge "/>
-			</div>
-		</div>
-		<div class="control-group">
-			<label class="control-label">备注:</label>
-			<div class="controls">
-				<form:input path="info" htmlEscape="false" maxlength="64" class="input-xlarge "/>
-			</div>
-		</div>
-		<div class="control-group">
-			<label class="control-label">添加时间:</label>
-			<div class="controls">
-				<form:input path="addTime" htmlEscape="false" maxlength="19" class="input-xlarge "/>
-			</div>
-		</div>
-		<div class="form-actions">
-			<shiro:hasPermission name="user:cmUserbeanshistory:edit"><input id="btnSubmit" class="btn btn-primary" type="submit" value="保 存"/>&nbsp;</shiro:hasPermission>
-			<input id="btnCancel" class="btn" type="button" value="返 回" onclick="history.go(-1)"/>
-		</div>
-	</form:form>
-</body>
-</html>

+ 67 - 16
src/main/webapp/WEB-INF/views/modules/user/cmUserbeanshistoryList.jsp

@@ -1,8 +1,9 @@
+<%@ taglib prefix="for" uri="/struts-tags" %>
 <%@ page contentType="text/html;charset=UTF-8" %>
 <%@ include file="/WEB-INF/views/include/taglib.jsp"%>
 <html>
 <head>
-	<title>采美豆记录管理</title>
+	<title>采美豆记录</title>
 	<meta name="decorator" content="default"/>
 	<style type="text/css">
 		.table th{text-align: center;}
@@ -22,37 +23,87 @@
 </head>
 <body>
 	<ul class="nav nav-tabs">
-		<li class="active"><a href="${ctx}/user/cmUserbeanshistory/">采美豆记录列表</a></li>
-		<shiro:hasPermission name="user:cmUserbeanshistory:edit"><li><a href="${ctx}/user/cmUserbeanshistory/form">采美豆记录添加</a></li></shiro:hasPermission>
+		<li><a href="${ctx}/user/cmUserbeanshistory/userBeansList">采美豆列表</a></li>
+		<li class="active"><a href="${ctx}/user/cmUserbeanshistory/beansHistoryList?userId=${user.userID}">采美豆详情</a></li>
 	</ul>
-	<form:form id="searchForm" modelAttribute="cmUserbeanshistory" action="${ctx}/user/cmUserbeanshistory/" method="post" class="breadcrumb form-search">
+	<form:form id="searchForm" modelAttribute="userBeansHistory" action="${ctx}/user/cmUserbeanshistory/beansHistoryList" method="post" class="breadcrumb form-search">
 		<input id="pageNo" name="pageNo" type="hidden" value="${page.pageNo}"/>
 		<input id="pageSize" name="pageSize" type="hidden" value="${page.pageSize}"/>
+		<input name="userId" type="hidden" value="${user.userID}"/>
 		<div class="ul-form">
-			 <label>userBeansHistoryID:</label>
-				<form:input path="userBeansHistoryID" htmlEscape="false" maxlength="11" class="input-medium"/>
-			 <label>对应用户Id:</label>
-				<form:input path="userID" htmlEscape="false" maxlength="11" class="input-medium"/>
+			 <label>收支类型:</label>
+			<form:select path="type" class="select-ele input-medium required">
+				<form:option value="" label="请选择"/>
+				<form:option value="1" label="获取"/>
+				<form:option value="2" label="消耗"/>
+			</form:select>
+			 <label>采美豆类型:</label>
+			<form:select path="beansType" class="select-ele input-medium required">
+				<form:option value="" label="全部"/>
+				<form:option value="1" label="注册机构"/>
+				<form:option value="2" label="升级会员机构"/>
+				<form:option value="3" label="完善资料"/>
+				<form:option value="5" label="下单"/>
+				<form:option value="6" label="线上支付订单"/>
+				<form:option value="7" label="确认收货"/>
+				<form:option value="8" label="系统发放"/>
+				<form:option value="9" label="抵用退回"/>
+				<form:option value="10" label="抵用运费"/>
+				<form:option value="11" label="退款回收"/>
+			</form:select>
 			&nbsp;&nbsp;<input id="btnSubmit" class="btn btn-primary" type="submit" value="查询"/>
 			<div class="clearfix"></div>
 		</div>
 	</form:form>
 	<sys:message content="${message}"/>
+	<b>机构名称:${user.name}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;可用数量:${user.userBeans}</b>
 	<table id="contentTable" class="table table-striped table-bordered table-condensed">
 		<thead>
 			<tr>
-				<shiro:hasPermission name="user:cmUserbeanshistory:edit"><th>操作</th></shiro:hasPermission>
+				<th>时间</th>
+				<th>收支类型</th>
+				<th>数量</th>
+				<th>采美豆类型</th>
 			</tr>
 		</thead>
 		<tbody>
-		<c:forEach items="${page.list}" var="cmUserbeanshistory">
+		<c:forEach items="${page.list}" var="userBeansHistory">
 			<tr>
-				<shiro:hasPermission name="user:cmUserbeanshistory:edit"><td>
-    				<a href="${ctx}/user/cmUserbeanshistory/form?id=${cmUserbeanshistory.id}">编辑</a>
-    				<shiro:hasPermission name="user:cmUserbeanshistory:delete">
-					<a href="${ctx}/user/cmUserbeanshistory/delete?id=${cmUserbeanshistory.id}" onclick="return confirmx('确认要删除该采美豆记录吗?', this.href)">删除</a>
-					</shiro:hasPermission>
-				</td></shiro:hasPermission>
+				<td><fmt:formatDate value="${userBeansHistory.addTime}" pattern="yyyy-MM-dd HH:mm:ss"/></td>
+				<td>${userBeansHistory.type eq 1 ? "获取":"消耗"}</td>
+				<td>${userBeansHistory.num}</td>
+				<td>
+					<c:if test="${userBeansHistory.beansType eq 1}">
+						注册机构
+					</c:if>
+					<c:if test="${userBeansHistory.beansType eq 2}">
+						<a href="${ctx}/new/user/agency/form?id=${userBeansHistory.clubId}&source=1">升级会员机构</a>
+					</c:if>
+					<c:if test="${userBeansHistory.beansType eq 3 || userBeansHistory.beansType eq 4}">
+						完善资料
+					</c:if>
+					<c:if test="${userBeansHistory.beansType eq 5}">
+						<a href="${ctx}/hehe/new/order/detail?id=${userBeansHistory.orderId}">下单</a>
+					</c:if>
+					<c:if test="${userBeansHistory.beansType eq 6}">
+						<a href="${ctx}/order/cmDiscernReceipt/detail?id=${userBeansHistory.receiptId}">线上支付订单</a>
+					</c:if>
+					<c:if test="${userBeansHistory.beansType eq 7}">
+						<a href="${ctx}/hehe/new/order/detail?id=${userBeansHistory.orderId}">确认收货</a>
+					</c:if>
+					<c:if test="${userBeansHistory.beansType eq 8}">
+						系统发放
+					</c:if>
+					<c:if test="${userBeansHistory.beansType eq 9}">
+						抵用退回
+					</c:if>
+					<c:if test="${userBeansHistory.beansType eq 10}">
+						抵用运费
+					</c:if>
+					<c:if test="${userBeansHistory.beansType eq 11}">
+						退款回收
+					</c:if>
+				</td>
 			</tr>
 		</c:forEach>
 		</tbody>