diff --git a/src/main/java/io/v/nutz/member/controller/info/MemberGroupInfoController.java b/src/main/java/io/v/nutz/member/controller/info/MemberGroupInfoController.java index 44d0a1e..9166411 100644 --- a/src/main/java/io/v/nutz/member/controller/info/MemberGroupInfoController.java +++ b/src/main/java/io/v/nutz/member/controller/info/MemberGroupInfoController.java @@ -72,7 +72,7 @@ public class MemberGroupInfoController { @Inject private Vi vi; - private Sql dataSql(PageForm pageForm, String unionId, String unitId, String[] personTypes, String[] userStates, String campus, String sex, Integer memberStatus, String position, String jobTitle) { + private Sql dataSql(PageForm pageForm, String unionId, String unitId, String[] personTypes, String[] userStates, String campus, String sex, Integer memberStatus, String position, String jobTitle, String[] memberJoinTime) { Sql sql = Sqls.create("SELECT * from user $condition"); CndPlus cnd = CndPlus.create(); @@ -86,6 +86,10 @@ public class MemberGroupInfoController { if (userStates != null && userStates.length > 0) { cnd.andExcludeEmpty("userState", "in", userStates); } + if(memberJoinTime != null && memberJoinTime.length > 0) { + cnd.andEX("memberJoinTime", ">=", memberJoinTime[0]); + cnd.andEX("memberJoinTime", "<=", memberJoinTime[1]); + } cnd.andExcludeEmpty("campusName", "=", campus); cnd.andExcludeEmpty("sex", "=", sex); @@ -141,8 +145,18 @@ public class MemberGroupInfoController { @At @ViReturn @RequiresPermissions("member.group.person") - public Object pageData(PageForm pageForm, String unionId, String unitId, String[] personTypes, String[] userStates, String campus, String sex, Integer memberStatus, String position, String jobTitle) { - return memberService.list(pageForm, dataSql(pageForm, unionId, unitId, personTypes, userStates, campus, sex, memberStatus, position, jobTitle)); + public Object pageData(PageForm pageForm, + String unionId, + String unitId, + String[] personTypes, + String[] userStates, + String campus, + String sex, + Integer memberStatus, + String position, + String jobTitle, + String[] memberJoinTime) { + return memberService.list(pageForm, dataSql(pageForm, unionId, unitId, personTypes, userStates, campus, sex, memberStatus, position, jobTitle, memberJoinTime)); } @At @@ -156,10 +170,10 @@ public class MemberGroupInfoController { @At @Ok("void") @RequiresPermissions("member.group.person") - public void export(HttpServletResponse response, String props, PageForm pageForm, String unionId, String unitId, String personTypes, String userStates, String campus, String sex, Integer memberStatus, String position, String jobTitle) throws IOException { + public void export(HttpServletResponse response, String props, PageForm pageForm, String unionId, String unitId, String personTypes, String userStates, String campus, String sex, Integer memberStatus, String position, String jobTitle, String memberJoinTime) throws IOException { ViTool.excelResponse(response, "会员名单.xls"); - List members = memberService.listEntity(dataSql(pageForm, unionId, unitId, Json.fromJsonAsArray(String.class, personTypes), Json.fromJsonAsArray(String.class, userStates), campus, sex, memberStatus, position, jobTitle), ExportEntityUser.class); + List members = memberService.listEntity(dataSql(pageForm, unionId, unitId, Json.fromJsonAsArray(String.class, personTypes), Json.fromJsonAsArray(String.class, userStates), campus, sex, memberStatus, position, jobTitle, Json.fromJsonAsArray(String.class, memberJoinTime)), ExportEntityUser.class); /*ExcelExportEntity no = new ExcelExportEntity("序号", "no", 10); no.setFormat("isAddIndex"); diff --git a/src/main/resources/views/platform/member/info/GroupInfo.html b/src/main/resources/views/platform/member/info/GroupInfo.html index ba858fb..2775e47 100644 --- a/src/main/resources/views/platform/member/info/GroupInfo.html +++ b/src/main/resources/views/platform/member/info/GroupInfo.html @@ -186,6 +186,22 @@ layout("/layouts/platform.html"){ + + + 入会时间: + + + + + @@ -432,6 +448,8 @@ layout("/layouts/platform.html"){ exportMember() { const personTypes = JSON.stringify(this.pageForm.personTypes) const userStates = JSON.stringify(this.pageForm.userStates) + const memberJoinTime = JSON.stringify(this.pageForm.memberJoinTime) + console.log(memberJoinTime) let arr = Object.keys(this.pageForm).map(key => { return {key: key, value: this.pageForm[key]} }) @@ -441,7 +459,7 @@ layout("/layouts/platform.html"){ props[v.prop] = v.label }) - location.href = loc() + '/export?userStates=' + userStates + '&personTypes=' + personTypes + '+&props=' + JSON.stringify(props) + "&" + arr.filter(v => v.value).map(v => v.key + "=" + v.value).join("&") + location.href = loc() + '/export?memberJoinTime=' + memberJoinTime + '&userStates=' + userStates + '&personTypes=' + personTypes + '+&props=' + JSON.stringify(props) + "&" + arr.filter(v => v.value).map(v => v.key + "=" + v.value).join("&") }, doDelete(userId) { this.$confirm('确定要删除吗?', '提示', { @@ -500,6 +518,7 @@ layout("/layouts/platform.html"){ const pageForm = clone(this.pageForm) pageForm.personTypes = JSON.stringify(pageForm.personTypes) pageForm.userStates = JSON.stringify(pageForm.userStates) + pageForm.memberJoinTime = JSON.stringify(pageForm.memberJoinTime) $.post(loc() + "/pageData", pageForm, (data) => { sublime.closeLoadingbar();