会员卡管理系统技术解析(九)会员卡挂失恢复查询
2015-06-02 19:39
435 查看
会员卡管理系统技术解析(九)会员卡挂失恢复查询
5.2.1会员卡挂失恢复记录查询
会员卡挂失恢复记录查询界面效果图如下:5.2.1(图1)
从界面所看到的控件有:
搜索框(easyui-searchbox) | 第一、要对每个空间设置一个id;第二、data-options是数据操作,可以设置空间的属性和事件;第三、可以设置大小,不设置也有默认;也可以通过CSS代码来进行控制 |
表格(easyui-datagrid) |
数据库中表与表的关系图如下:
5.2.1(图2)
表1:挂失恢复记录表(Pw_MembershipCardLossRecovery)
列名 | 数据类型 | 主键/外键 | 说明 |
MembershipCardLossRecoveryID | int | 主键 | 挂失记录自动编号 |
VerifierID | int | 外键 | 员工表,审核人 |
MembershipCardIssuedDetailsID | int | 外键 | 发放明细表,审核状态 |
BookerID | int | 外键 | 员工表,登记人 |
BookTime | date | | 登记时间 |
VerifyTime | date | | 审核时间 |
IsVerify | bit | | 审核否 |
Summary | nchar(20) | | 摘要 |
RecordNumber | nchar(20) | | 记录编号 |
列名 | 数据类型 | 主键/外键 | 说明 |
MembershipCardIssuedDetailsID | int | 主键 | 发放明细ID |
MembershipCardIssuedID | int | 外键 | 发放记录ID |
MembershipCardRecipientsDetailsID | int | 外键 | 领卡明细ID |
MemberProfileID | int | 外键 | 会员档案ID |
CardType | int | 外键 | 会员卡类型ID |
WindowStateID | int | 外键 | 启动状态ID |
StateOfTheMembershipCardID | int | 外键 | 会员卡状态ID |
ChangeTheMembershipCardID | int | 外键 | 会员卡变更状态ID |
FormerRecipientsDetailsID | int | 外键 | 原领卡明细ID |
Money | money | | 金额 |
Integral | nchar(20) | | 积分 |
SingleKakaFee | money | | 单卡卡费 |
ActualStartComputingTime | date | | 实际开始时间 |
ActualEndTime | date | | 实际结束时间 |
Summary | nchar(50) | | 摘要 |
Invalid | bit | | 作废否 |
AllowedToReportTheLossOf | bit | | 挂失否 |
InternalIssue | bit | | 内部发放否 |
列名 | 数据类型 | 主键/外键 | 说明 |
MembershipCardRecipientsDetailsID | int | 主键 | 领卡明细ID |
MembershipCardRecipientsID | int | 外键 | 领卡记录ID |
MembershipCardDetailsID | int | 外键 | 建卡明细ID |
ChangeTheMembershipCardID | int | 外键 | 变更会员卡状态ID |
RecipientsWhoID | int | 外键 | 领用人ID |
列名 | 数据类型 | 主键/外键 | 说明 |
MembershipCardDetailsID | int | 主键 | 建卡明细ID |
MembershipCardID | int | 外键 | 建卡记录ID |
MembershipCardTypeID | int | 外键 | 会员卡种类ID |
MembershipCardStorageLocationID | int | 外键 | 保管地点ID |
StateOfTheMembershipCardID | int | 外键 | 会员卡状态ID |
ChangeTheMembershipCardID | int | 外键 | 变更会员卡状态ID |
UpdateRankID | int | 外键 | 会员卡级别ID |
KeeperID | int | 外键 | 保管人ID |
Remarks | nchar(200) | | 备注 |
MembershipCardCardNumber | nchar(50) | | 会员卡卡号 |
SpecifyTheValidityTime | date | | 有效期指定时间 |
ValidityTime | date | | 有效期时间 |
WriteCardStatus | nchar(10) | | 写卡状态 |
WriteTime | date | | 写卡时间 |
NominalAmount | money | | 面值金额 |
列名 | 数据类型 | 主键/外键 | 说明 |
MembershipCardTypeID | int | 主键 | 会员卡类型ID |
MembersKakaKindID | int | 外键 | 会员卡卡种ID |
MembershipCardLevelID | int | 外键 | 会员卡级别ID |
MembershipCardIssuanceID | int | 外键 | 会员卡发行方式ID |
UseObjectID | int | 外键 | 使用对象ID |
DailyManagementFormID | int | 外键 | 日常管理形式ID |
TrackMediumID | int | 外键 | 磁道介质ID |
PreferentialWayID | int | 外键 | 优惠方式ID |
CardValidityPeriodSpecifiedID | int | 外键 | 卡有效期指定方式ID |
HairpinWithFaceValue | bit | | 发卡时有面值否 |
StoredValueCoupons | bit | | 储值优惠券标记否 |
ParticipateInTheScore | bit | | 参与消费积分否 |
leadCode | nchar(10) | | 前导码 |
PostpositionCode | nchar(10) | | 后置码 |
RequireTheSystemToMakeCard | bit | | 需要系统制卡否 |
NeedCompulsoryInspectionCard | bit | | 需要强制验卡否 |
LengthOfThePeriodOfValidity | nchar(10) | | 有效期长度 |
TrackContentEncryption | bit | | 磁道内容加密否 |
Invalid | bit | | 作废否 |
MembershipCardTypeCode | nchar(10) | | 会员卡类型代码 |
MembershipCardTypeName | nchar(30) | | 会员卡类型名称 |
KeepRecordsOfConsumption | bit | | 保存消费记录否 |
TotalLengthCardNumber | int | | 卡号总长度 |
OpenTheCouponAccount | bit | | 开通优惠券账户否 |
列名 | 数据类型 | 主键/外键 | 说明 |
MembersKakaKindID | int | 主键 | 会员卡卡种ID |
MembersKakaCode | nchar(10) | | 会员卡卡种代码 |
MembersKakaKindsOfNames | nchar(30) | | 会员卡卡种名称 |
Invalid | bit | | 作废否 |
列名 | 数据类型 | 主键/外键 | 说明 |
StaffID | int | 主键 | 员工ID |
MembershipCardStorageLocationID | int | 外键 | 会员卡保管地点ID |
ZoneID | int | 外键 | 区域ID |
IDTypeID | int | 外键 | 证件类型ID |
IDNumber | nchar(20) | | 证件号码 |
Birthday | date | | 出生日期 |
MailingAddress | nchar(30) | | 通讯地址 |
Email | nchar(20) | | E-mail |
PrivateCallNumber | nchar(20) | | 私人电话 |
MobileNumber | nchar(20) | | 手机号码 |
StaffDegree | nchar(20) | | 员工学历 |
Vehicle | nchar(20) | | 交通工具 |
FamilyMembers | int | | 家庭成员数量 |
HobbiesAndInterests | nchar(30) | | 兴趣爱好 |
StaffName | nchar(20) | | 员工姓名 |
ESEX | nchar(10) | | 员工性别 |
列名 | 数据类型 | 主键/外键 | 说明 |
MemberProfileID | int | 主键 | 会员档案ID |
MemberAgeID | int | 外键 | 会员年龄段ID |
AreaID | int | 外键 | 区域ID |
IDTypeID | int | 外键 | 证件类型ID |
BookerID | int | 外键 | 登记人ID |
MemberOfTheProfessionalID | int | 外键 | 会员职业ID |
ClientNatureID | int | 外键 | 客户性质ID |
UpdateManID | int | 外键 | 更新人ID |
Mail | nchar(30) | | 邮箱 |
MailingAddress | nchar(50) | | 通讯地址 |
OfficePhone | nchar(20) | | 办公电话 |
PrivateCallNumber | nchar(20) | | 私人电话 |
MobileNumber | nchar(20) | | 手机号码 |
TimeToMarket | date | | 至商场时间 |
MembershipDegree | nchar(20) | | 会员学历 |
MemberOfTheFamilyIncome | nchar(20) | | 会员家庭收入 |
Vehicle | nchar(20) | | 交通工具 |
FamilyMembers | nchar(10) | | 家庭成员数量 |
HobbiesAndInterests | nchar(30) | | 兴趣爱好 |
Linkman | nchar(20) | | 联系人 |
UpdateTime | date | | 更新时间 |
BookTime | date | | 登记时间 |
Invalid | bit | | 作废否 |
MenberName | nchar(20) | | 会员姓名 |
USEX | nchar(10) | | 会员性别 |
IDNumber | nchar(20) | | 证件号码 |
Birthday | date | | 出生日期 |
作用:可以通过记录编号对单据进行模糊筛选查询
搜索框控件截图:
5.2.1(图3)
创建搜索框控件界面代码:
<input class="easyui-searchbox"id="shSouSuo" data-options="prompt:'请输入单号查询',searcher:doSearch" />
获取搜索控件值的代码:
functiondoSearch(value){ alert("搜索框的值:"+value); } //注:可通过点击搜索图标或回车执行搜索框的搜索功能
第二步:服务层接口(IService)
5.2.1(图4)
public ListQueryMembershipCardLossRecovery();//查询所有会员卡挂失恢复信息 public ListQueryMembershipCardLossRecoveryMoHu(StringrecordNumber);//模糊查询会员卡挂失恢复信息 public booleanQueryMembershipCardLossRecoveryDelete(intmembershipCardLossRecoveryId);//删除会员卡挂失恢复信息 public List<PwMembershipCardLossRecovery> QueryMembershipCardLossRecoveryChaXun(int membershipCardLossRecoveryId);//条件查询会员卡挂失恢复信息 public List<PwMembershipCardIssuedDetails> QueryFaFangChaXun(intfafangId);//查询发放明细 publicbooleanQueryFaFangEdit(PwMembershipCardIssuedDetails entity);//修改发放明细 publicbooleanQueryMembershipCardLossRecoveryEdit(PwMembershipCardLossRecovery entity);//修改会员卡挂失恢复信息
第三步:服务层(Service)
5.2.1(图5)
//查询所有会员卡挂失恢复信息 @Override public ListQueryMembershipCardLossRecovery(){ try {//尝试运行代码 StringBufferqueryString = new StringBuffer();/*实例化StringBuffer*/ queryString.append("SELECTGuaShiHuiFu.membershipCardLossRecoveryId,GuaShiHuiFu.recordNumber,GuaShiHuiFu.bookTime,ShenHeRen.staffName," + "GuaShiHuiFu.verifyTime,GuaShiHuiFu.isVerify,GuaShiHuiFu.summary,DenJiRen.staffName,HuiYuanXingMing.menberName," + "JianKaMingXi.membershipCardCardNumber,JianKaMingXi.nominalAmount,LeiXing.membershipCardTypeName,KaZhong.membersKakaKindsOfNames");//拼接需要查询的字段 queryString.append("FROMPwMembershipCardLossRecovery AS GuaShiHuiFu,SysStaff AS DenJiRen,SysStaff ASShenHeRen," + "PwMembershipCardIssuedDetailsAS FaFangMingXi,SysMemberProfile AS HuiYuanXingMing," + "PwMembershipCardRecipientsDetailsAS LingYongMingXi,PwMembershipCardDetails AS JianKaMingXi," + "SysMembershipCardTypeAS LeiXing,SysMembersKakaKind AS KaZhong " );/*实例化表*/ queryString.append("WHEREGuaShiHuiFu.bookerId = DenJiRen.staffId " + "ANDGuaShiHuiFu.verifierId = ShenHeRen.staffId " + "ANDGuaShiHuiFu.membershipCardIssuedDetailsId =FaFangMingXi.membershipCardIssuedDetailsId " + "ANDFaFangMingXi.memberProfileId = HuiYuanXingMing.memberProfileId " + "ANDFaFangMingXi.membershipCardRecipientsDetailsId =LingYongMingXi.membershipCardRecipientsDetailsId " + "ANDLingYongMingXi.membershipCardDetailsId = JianKaMingXi.membershipCardDetailsId" + "ANDJianKaMingXi.membershipCardTypeId = LeiXing.membershipCardTypeId " + "ANDLeiXing.membersKakaKindId = KaZhong.membersKakaKindId ");/*满足条件*/ return dao.findByHql(queryString.toString()); }catch (Exception e) {/*尝试运行代码出现错误,执行异常处理*/ return null; } } /*模糊查询会员卡挂失恢复信息 * recordNumber 记录编号 * */ @Override public ListQueryMembershipCardLossRecoveryMoHu(StringrecordNumber){ try {//尝试运行代码 StringBufferqueryString = new StringBuffer();/*实例化StringBuffer*/ queryString.append("SELECTGuaShiHuiFu.membershipCardLossRecoveryId,GuaShiHuiFu.recordNumber,GuaShiHuiFu.bookTime,ShenHeRen.staffName," + "GuaShiHuiFu.verifyTime,GuaShiHuiFu.isVerify,GuaShiHuiFu.summary,DenJiRen.staffName,HuiYuanXingMing.menberName," + "JianKaMingXi.membershipCardCardNumber,JianKaMingXi.nominalAmount,LeiXing.membershipCardTypeName,KaZhong.membersKakaKindsOfNames");//拼接需要查询的字段 queryString.append("FROMPwMembershipCardLossRecovery AS GuaShiHuiFu,SysStaff AS DenJiRen,SysStaff ASShenHeRen," + "PwMembershipCardIssuedDetailsAS FaFangMingXi,SysMemberProfile AS HuiYuanXingMing," + "PwMembershipCardRecipientsDetailsAS LingYongMingXi,PwMembershipCardDetails AS JianKaMingXi," + "SysMembershipCardTypeAS LeiXing,SysMembersKakaKind AS KaZhong " );/*实例化表*/ queryString.append("WHEREGuaShiHuiFu.bookerId = DenJiRen.staffId " + "ANDGuaShiHuiFu.verifierId = ShenHeRen.staffId " + "ANDGuaShiHuiFu.membershipCardIssuedDetailsId =FaFangMingXi.membershipCardIssuedDetailsId " + "ANDFaFangMingXi.memberProfileId = HuiYuanXingMing.memberProfileId " + "ANDFaFangMingXi.membershipCardRecipientsDetailsId = LingYongMingXi.membershipCardRecipientsDetailsId" + "ANDLingYongMingXi.membershipCardDetailsId = JianKaMingXi.membershipCardDetailsId" + "ANDJianKaMingXi.membershipCardTypeId = LeiXing.membershipCardTypeId " + "ANDLeiXing.membersKakaKindId = KaZhong.membersKakaKindId " + "ANDGuaShiHuiFu.recordNumber like '%' + ? + '%' ");/*满足条件*/ return dao.findByHql(queryString.toString(),new Object[]{recordNumber}); }catch (Exception e) {/*尝试运行代码出现错误,执行异常处理*/ return null; } } /*删除挂失恢复信息 * membershipCardLossRecoveryId 会员卡挂失恢复id * */ @Override public booleanQueryMembershipCardLossRecoveryDelete(intmembershipCardLossRecoveryId){ PwMembershipCardLossRecoveryGuaShiHuiFu; try {//尝试运行代码 GuaShiHuiFu= dao.getById(PwMembershipCardLossRecovery.class,membershipCardLossRecoveryId); return dao.remove(GuaShiHuiFu); }catch (Exception e) {/*尝试运行代码出现错误,执行异常处理*/ return false; } } /*条件查询会员卡挂失恢复所有信息 * membershipCardLossRecoveryId 会员卡挂失恢复id * */ @Override publicList<PwMembershipCardLossRecovery>QueryMembershipCardLossRecoveryChaXun(intmembershipCardLossRecoveryId) { try {//尝试运行代码 StringBufferqueryString = new StringBuffer();/*实例化StringBuffer*/ queryString.append("FROMPwMembershipCardLossRecovery AS GuaShiHuiFu ");/*实例化表*/ queryString.append("WHEREGuaShiHuiFu.membershipCardLossRecoveryId = ?");/*满足条件*/ return dao.findByHql(queryString.toString(),new Object[]{membershipCardLossRecoveryId}); }catch (Exception e) {/*尝试运行代码出现错误,执行异常处理*/ return null; } } /*查询发放明细 * fafangId 发放id * */ @Override publicList<PwMembershipCardIssuedDetails> QueryFaFangChaXun(intfafangId){ try {//尝试运行代码 StringBufferqueryString = new StringBuffer();/*实例化StringBuffer*/ queryString.append("FROMPwMembershipCardIssuedDetails AS fafang ");/*实例化表*/ queryString.append("WHEREfafang.membershipCardIssuedDetailsId=?");/*满足条件*/ return dao.findByHql(queryString.toString(),new Object[]{fafangId}); }catch (Exception e) {/*尝试运行代码出现错误,执行异常处理*/ return null; } } //修改会员卡发放明细 @Override public boolean QueryFaFangEdit(PwMembershipCardIssuedDetailsentity){ try {//尝试运行代码 return dao.edit(entity); }catch (Exception e) {/*尝试运行代码出现错误,执行异常处理*/ return false; } } //审核挂失恢复信息 @Override public boolean QueryMembershipCardLossRecoveryEdit(PwMembershipCardLossRecoveryentity){ try {//尝试运行代码 return dao.edit(entity); }catch (Exception e) {/*尝试运行代码出现错误,执行异常处理*/ return false; } }
第四步:方法层(Action)
5.2.1(图6)
//查询所有会员卡挂失信息 public StringgetHuiYuanKaGuaShiHuiFuXinXiSelect() { JSONArrayjsArr = new JSONArray();/*实例化一个Array数组*/ JSONObjectjsObj = new JSONObject();/*实例化一个Object数组*/ List lsGuaShi = this.guaShiYuZuoFeiService.QueryMembershipCardLossRecovery();/*调用服务层方法*/ for (int i =0; i < lsGuaShi.size(); i++) {/*循环遍历服务层返回的结果集*/ Object[]obj = (Object[])lsGuaShi.get(i); jsObj.clear();/*清空jsObj数组*/ jsObj.put("HuiYuanKaGuaShiHuiFuID",obj[0]); jsObj.put("JiLuBianHao",obj[1]); jsObj.put("DengJiShiJian",obj[2]); jsObj.put("ZhaiYao",obj[6]); jsObj.put("DengJiRen",obj[7]); jsObj.put("XingMing",obj[8]); jsObj.put("KaoHao",obj[9]); jsObj.put("JinE",obj[10]); jsObj.put("HuiYuanKaLeiXing",obj[12].toString()+"、"+obj[11].toString()); if(obj[5].toString().equals("true")) { jsObj.put("ShenHeRen",obj[3]); jsObj.put("ShenHeShiJian",obj[4]); jsObj.put("ShenHeZhuangTai", "已审核"); }else { jsObj.put("ShenHeRen", ""); jsObj.put("ShenHeShiJian", ""); jsObj.put("ShenHeZhuangTai", "未审核"); } jsArr.add(jsObj); } HashMap<String, Object>jsMap = new HashMap<String, Object>();/*实例化一个哈希表*/ jsMap.put("rows",jsArr);/*将jsArr数组写入到jsMap中*/ JSObj=JSONObject.fromObject(jsMap);/*转换数组类型,并返回数组*/ return SUCCESS;/*返回*/ } //模糊查询会员卡挂失信息 public StringgetHuiYuanKaGuaShiHuiFuXinXiMoHuSelect() { JSONArrayjsArr = new JSONArray();/*实例化一个Array数组*/ JSONObjectjsObj = new JSONObject();/*实例化一个Object数组*/ StringJiLuBianHao = this.getRequest().getParameter("JiLuBianHao");/*从视图层传来的参数*/ List lsGuaShi = this.guaShiYuZuoFeiService.QueryMembershipCardLossRecoveryMoHu(JiLuBianHao);/*调用服务层方法*/ for (int i =0; i < lsGuaShi.size(); i++) {/*循环遍历服务层返回的结果集*/ Object[]obj = (Object[])lsGuaShi.get(i); jsObj.clear();/*清空jsObj数组*/ jsObj.put("HuiYuanKaGuaShiHuiFuID",obj[0]); jsObj.put("JiLuBianHao",obj[1]); jsObj.put("DengJiShiJian", obj[2]); jsObj.put("ZhaiYao",obj[6]); jsObj.put("DengJiRen",obj[7]); jsObj.put("XingMing",obj[8]); jsObj.put("KaoHao",obj[9]); jsObj.put("JinE",obj[10]); jsObj.put("HuiYuanKaLeiXing",obj[12].toString()+"、"+obj[11].toString()); if(obj[5].toString().equals("true")) { jsObj.put("ShenHeShiJian",obj[4]); jsObj.put("ShenHeZhuangTai", "已审核"); jsObj.put("ShenHeRen",obj[3]); }else { jsObj.put("ShenHeShiJian", ""); jsObj.put("ShenHeRen", ""); jsObj.put("ShenHeZhuangTai", "未审核"); } jsArr.add(jsObj); } HashMap<String, Object>jsMap = new HashMap<String, Object>();/*实例化一个哈希表*/ jsMap.put("rows",jsArr);/*将jsArr数组写入到jsMap中*/ JSObj=JSONObject.fromObject(jsMap);/*转换数组类型,并返回数组*/ return SUCCESS;/*返回*/ } //删除挂失恢复信息 public StringgetGuaShiHuiFuShanChu() { if (this.guaShiYuZuoFeiService.QueryMembershipCardLossRecoveryDelete(Integer.parseInt(getRequest().getParameter("GuaShiHuiFuID")))){/*调用服务层方法*/ MSG = "OK"; }else { MSG = "NO"; } return SUCCESS; } //审核挂失恢复信息 public StringgetGuaShiHuiFuShenHe() { Stringparam = encodingFunction.getMethodEncoding(this.getRequest().getParameter("param"));/*从视图层传来的参数*/ String[]params = param.split("<<");/*分解参数*/ List<PwMembershipCardLossRecovery>lsGuaShiHuiFu = this.guaShiYuZuoFeiService.QueryMembershipCardLossRecoveryChaXun(Integer.parseInt(params[2].trim()));/*调用服务层方法*/ PwMembershipCardLossRecovery str= lsGuaShiHuiFu.get(0); PwMembershipCardLossRecoveryGuaShiHuiFu = new PwMembershipCardLossRecovery();//实例化会员卡挂失表 GuaShiHuiFu.setBookerId(str.getBookerId()); GuaShiHuiFu.setBookTime(str.getBookTime()); GuaShiHuiFu.setIsVerify(true); GuaShiHuiFu.setMembershipCardIssuedDetailsId(str.getMembershipCardIssuedDetailsId()); GuaShiHuiFu.setMembershipCardLossRecoveryId(Integer.parseInt(params[2].trim())); GuaShiHuiFu.setRecordNumber(str.getRecordNumber()); GuaShiHuiFu.setSummary(str.getSummary()); GuaShiHuiFu.setVerifierId(Integer.parseInt(params[0].trim())); GuaShiHuiFu.setVerifyTime(params[1].trim()); MSG = this.guaShiYuZuoFeiService.QueryMembershipCardLossRecoveryEdit(GuaShiHuiFu)+""; /*调用服务层方法*/ return SUCCESS; } //挂失恢复新增、审核、删除时,修改会员卡的状态 public StringgetGuaShiHuiFuEdit(){ intGuaShiHuiFuId = Integer.parseInt(this.getRequest().getParameter("GuaShiHuiFuID"));/*从视图层传来的参数*/ StringPaiXu = this.getRequest().getParameter("PaiXu");/*从视图层传来的参数*/ List<PwMembershipCardLossRecovery>lsGuaShiHuiFu = this.guaShiYuZuoFeiService.QueryMembershipCardLossRecoveryChaXun(GuaShiHuiFuId); /*调用服务层方法*/ PwMembershipCardLossRecovery str= lsGuaShiHuiFu.get(0); List<PwMembershipCardIssuedDetails>lsFaFang = this.guaShiYuZuoFeiService.QueryFaFangChaXun(str.getMembershipCardIssuedDetailsId());/*调用服务层方法*/ PwMembershipCardIssuedDetails obj= lsFaFang.get(0); PwMembershipCardIssuedDetailsFaFangMingXi = new PwMembershipCardIssuedDetails();//实例化发放明细表 FaFangMingXi.setMembershipCardIssuedDetailsId(obj.getMembershipCardIssuedDetailsId()); FaFangMingXi.setMembershipCardIssuedId(obj.getMembershipCardIssuedId()); FaFangMingXi.setMembershipCardRecipientsDetailsId(obj.getMembershipCardRecipientsDetailsId()); FaFangMingXi.setMemberProfileId(obj.getMemberProfileId()); FaFangMingXi.setSingleKakaFee(obj.getSingleKakaFee()); FaFangMingXi.setCardType(obj.getCardType()); FaFangMingXi.setInternalIssue(obj.getInternalIssue()); FaFangMingXi.setWindowStateId(obj.getWindowStateId()); FaFangMingXi.setActualStartComputingTime(obj.getActualStartComputingTime()); FaFangMingXi.setActualEndTime(obj.getActualEndTime()); FaFangMingXi.setSummary(obj.getSummary()); FaFangMingXi.setInvalid(obj.getInvalid()); FaFangMingXi.setStateOfTheMembershipCardId(obj.getStateOfTheMembershipCardId()); FaFangMingXi.setFormerRecipientsDetailsId(obj.getFormerRecipientsDetailsId()); FaFangMingXi.setIntegral(obj.getIntegral()); FaFangMingXi.setMoney(obj.getMoney()); //PaiXu为0时,新增;PaiXu为1时,删除;PaiXu为2时,审核; if(PaiXu.toString().equals("0")) {//判断PaiXu的值 if(str.getIsVerify().toString().equals("true")) { FaFangMingXi.setChangeTheMembershipCardId(obj.getStateOfTheMembershipCardId()); FaFangMingXi.setAllowedToReportTheLossOf(false); }else { FaFangMingXi.setChangeTheMembershipCardId(68); FaFangMingXi.setAllowedToReportTheLossOf(obj.getAllowedToReportTheLossOf()); } }else if(PaiXu.toString().equals("1")) { FaFangMingXi.setChangeTheMembershipCardId(60); FaFangMingXi.setAllowedToReportTheLossOf(obj.getAllowedToReportTheLossOf()); }else if(PaiXu.toString().equals("2")) { FaFangMingXi.setChangeTheMembershipCardId(obj.getStateOfTheMembershipCardId()); FaFangMingXi.setAllowedToReportTheLossOf(false); } MSG = this.guaShiYuZuoFeiService.QueryFaFangEdit(FaFangMingXi)+""; /*调用服务层方法*/ return SUCCESS; }
第五步:配置struts
5.2.1(图8)
<span style="font-weight: normal;"><action name="getHuiYuanKaGuaShiHuiFuXinXiSelect"class="GuaShiYuZuoFeiAction" method="getHuiYuanKaGuaShiHuiFuXinXiSelect"> <result type="json"> <param name="root">JSObj</param>//返回的数据类型 </result> </action> <action name="getHuiYuanKaGuaShiHuiFuXinXiMoHuSelect"class="GuaShiYuZuoFeiAction" method="getHuiYuanKaGuaShiHuiFuXinXiMoHuSelect"> <result type="json"> <param name="root">JSObj</param>//返回的数据类型 </result> </action> <action name="getGuaShiHuiFuShanChu" class="GuaShiYuZuoFeiAction" method="getGuaShiHuiFuShanChu"> <result type="json"> <param name="root">MSG</param>//返回的数据类型 </result> </action> <action name="getGuaShiHuiFuShenHe" class="GuaShiYuZuoFeiAction" method="getGuaShiHuiFuShenHe"> <result type="json"> <param name="root">MSG</param>//返回的数据类型 </result> </action> <action name="getGuaShiHuiFuEdit" class="GuaShiYuZuoFeiAction" method="getGuaShiHuiFuEdit"> <result type="json"> <param name="root">MSG</param>//返回的数据类型 </result> </action></span>
第六步:视图层JSP
会员卡挂失恢复记录:
5.2.1(图9)
HTML代码:
<table id="dgGuaShiHuiFu"class="easyui-datagrid" title="会员卡挂失恢复记录" style="height:530px" data-options="singleSelect:true,rownumbers:true,loadMsg:'加载中,请稍后...',url:'getHuiYuanKaGuaShiHuiFuXinXiSelect',idField:'HuiYuanKaGuaShiHuiFuID'"> <thead> <tr> <th data-options="field:'JiLuBianHao',width:100,align:'center'">记录编号</th> <th data-options="field:'KaoHao',width:120,align:'center'">会员卡号</th> <th data-options="field:'XingMing',width:70,align:'center'">会员姓名</th> <th data-options="field:'HuiYuanKaLeiXing',width:120,align:'center'">会员卡类型</th> <th data-options="field:'JinE',width:70,align:'center'">金额</th> <th data-options="field:'DengJiRen',width:70,align:'center'">登记人</th> <th data-options="field:'DengJiShiJian',width:75,align:'center'">登记时间</th> <th data-options="field:'ShenHeZhuangTai',width:80,align:'center'">审核状态</th> <th data-options="field:'ShenHeRen',width:70,align:'center'">审核人</th> <th data-options="field:'ShenHeShiJian',width:75,align:'center'">审核时间</th> <th data-options="field:'ZhaiYao',width:120,align:'center'">摘要</th> <th data-options="field:'HuiYuanKaGuaShiHuiFuID',width:100,align:'center',formatter:returnBtnColumn">操作</th> </tr> </thead> </table>
Javascript代码:
//操作列 function returnBtnColumn(HuiYuanKaGuaShiHuiFuID,row,rowIndex){ return "<a href='javascript:shenHe("+HuiYuanKaGuaShiHuiFuID+","+rowIndex+")'>审核</a>"+ "<ahref='javascript:shanchu("+HuiYuanKaGuaShiHuiFuID+","+rowIndex+")'>删除</a>"; }
//删除会员卡挂失恢复信息 function shanchu(HuiYuanKaGuaShiHuiFuID,rowIndex){ var row = $('#dgGuaShiHuiFu').datagrid('getSelected');//获取选中行信息 if(row.ShenHeZhuangTai == "已审核"){//判断选中的数据是否已经审核 alert("记录编号【"+row.JiLuBianHao.trim()+"】已通过审核,无法删除"); } else { if (confirm("是否删除记录编号为【"+row.JiLuBianHao.trim()+"】的数据?")) {//弹出对话框 $.getJSON("getGuaShiHuiFuEdit?GuaShiHuiFuID="+row.HuiYuanKaGuaShiHuiFuID+"&PaiXu="+1,function(result){//删除时,修改会员卡的状态 if(result){//判断返回值是否为空 $.getJSON("getGuaShiHuiFuShanChu?GuaShiHuiFuID="+row.HuiYuanKaGuaShiHuiFuID,function(data){//删除 alert("成功删除会员卡挂失恢复信息"); window.location.href = "GuaShiYuZuoFei/HuiYuanKaGuaShiHuiFu.jsp"; }); } }); } } } //打开审核人窗口 var upHuiYuanKaGuaShiHuiFuID=0; function shenHe(HuiYuanKaGuaShiHuiFuID,rowIndex){ var row = $('#dgGuaShiHuiFu').datagrid('getSelected');//获取选中行信息 if(row.ShenHeZhuangTai == "已审核"){//判断选中的数据是否已经审核 alert("记录编号【"+row.JiLuBianHao.trim()+"】已通过审核,无法再审核"); } else { $('#FromShenHeRen').show();//弹窗 upHuiYuanKaGuaShiHuiFuID=HuiYuanKaGuaShiHuiFuID;//获取选中行的id $('#dgShenHeRen').datagrid('reload');//刷新 } } //审核人双击事件 var ShenHeRen=0; function DblShenHeRen() { var row = $('#dgShenHeRen').datagrid('getSelected');//获取选中行信息 if (row) { ShenHeRen= row.yuanGongID; $('#FromShenHeRen').hide(); var ShenHeShiJian = myformatter(new Date()); param = ShenHeRen+"<<"+ShenHeShiJian+"<<"+upHuiYuanKaGuaShiHuiFuID+"<<";//拼接字符串 if(ShenHeRen != "" && ShenHeShiJian != ""){//判断审核人和审核时间是否为空 $.getJSON("getGuaShiHuiFuShenHe?param="+param,function(result){//审核 if(result){ $.getJSON("getGuaShiHuiFuEdit?GuaShiHuiFuID="+upHuiYuanKaGuaShiHuiFuID+"&PaiXu="+2,function(data){//审核时,修改会员卡的状态 alert("审核会员卡挂失恢复信息成功"); window.location.href = "GuaShiYuZuoFei/HuiYuanKaGuaShiHuiFu.jsp"; }); } }); } } }
搜索框
5.2.1(图10)
Javascript代码:
//搜索 function doSearch(value){ $('#dgGuaShiHuiFu').datagrid({url:"getHuiYuanKaGuaShiHuiFuXinXiMoHuSelect?JiLuBianHao="+value}); }
该资料仅供学习使用,禁止用于商业用途
相关文章推荐
- 科大讯飞语言读取功能
- 系统编程之文件操作
- 4.1-1
- 新锐房地产销售管理系统(部分流程)技术解释(三)销售管理_房源查询
- 构建高效且可伸缩的结果缓存
- Android中的ContentProvider的学习笔记.
- oracle rac IO 隔离的存储SCSI锁原理
- Servlet初学基础
- 第七章第三题
- Webx学习(一)
- 一次性能优化将filter转换
- linux中的文件 上传、下载
- SimpleAdapter 动态改变问题
- Makefile:2: missing separator. Stop.
- 【十八】排序算法(四)--归并排序
- hduacm 5104
- Arduino--Helloworld!
- 经典http协议详解
- 第七章第二题
- 屏蔽多点触摸