This commit is contained in:
server
2025-11-01 09:57:06 +08:00
parent af130baaf7
commit 114dcf014c
26 changed files with 183 additions and 160 deletions
@@ -43,6 +43,7 @@ RoleConstant {
BRANCH_UNION_WENTI_WY("分工会文体委员"), BRANCH_UNION_WENTI_WY("分工会文体委员"),
BRANCH_UNION_SHENGGHUO_WY("分工会生活委员"), BRANCH_UNION_SHENGGHUO_WY("分工会生活委员"),
BRANCH_UNION_TIAOJIE_WY("分工会调解委员"), BRANCH_UNION_TIAOJIE_WY("分工会调解委员"),
BRANCH_UNION_FULI_WY("分工会福利委员"),
TEACHER_CONGRESS_DELEGATE_FORMAL("教代会正式代表"), TEACHER_CONGRESS_DELEGATE_FORMAL("教代会正式代表"),
TEACHER_CONGRESS_DELEGATE_ATTENDANCE("教代会列席代表"), TEACHER_CONGRESS_DELEGATE_ATTENDANCE("教代会列席代表"),
@@ -168,6 +168,7 @@ public class SysLoginController {
} }
sysUserService.loginPlus(user, LoginType.WE_APP, req); sysUserService.loginPlus(user, LoginType.WE_APP, req);
// redisService.del(lockKey);
return Result.success("login.success").addData(StpUtil.getTokenInfo()); return Result.success("login.success").addData(StpUtil.getTokenInfo());
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage(), e); log.error(e.getMessage(), e);
@@ -345,7 +345,14 @@ public class ActivityBasicScopeController {
cnd.and("TIMESTAMPDIFF(YEAR, u.birthday, CURDATE())", "between", activityUserScopePageParam.getAge()); cnd.and("TIMESTAMPDIFF(YEAR, u.birthday, CURDATE())", "between", activityUserScopePageParam.getAge());
} }
} }
}
if (StrUtil.isAllNotBlank(activityUserScopePageParam.getStartJoinDate(), activityUserScopePageParam.getEndJoinDate())) {
if (activityUserScopePageParam.getReverseSelection()) {
cnd.andNot("u.arrivalAtSchoolDate", "between", new String[]{activityUserScopePageParam.getStartJoinDate(), activityUserScopePageParam.getEndJoinDate()});
} else {
cnd.and("u.arrivalAtSchoolDate", "between", new String[]{activityUserScopePageParam.getStartJoinDate(), activityUserScopePageParam.getEndJoinDate()});
}
} }
try { try {
@@ -1,6 +1,7 @@
package com.budwk.app.zhgh.activity.basic.param; package com.budwk.app.zhgh.activity.basic.param;
import com.budwk.app.base.param.PageForm; import com.budwk.app.base.param.PageForm;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
@@ -46,4 +47,12 @@ public class ActivityUserScopePageParam extends PageForm {
private String props; private String props;
@ApiModelProperty(value = "开始加入时间(会员)")
private String startJoinDate;
@ApiModelProperty(value = "结束加入时间(会员)")
private String endJoinDate;
} }
@@ -156,9 +156,11 @@ public class ActivityCultureUserStatisticsController {
ActivityTissue tissue = dao.fetch(ActivityTissue.class, id); ActivityTissue tissue = dao.fetch(ActivityTissue.class, id);
Sql sql = Sqls.create(""" Sql sql = Sqls.create("""
SELECT SELECT
atp.* atp.*,
us.idcard idCard
FROM FROM
`activity_tissue_person` atp `activity_tissue_person` atp
left join sys_user us on us.id=atp.userId
$condition $condition
"""); """);
Cnd cnd = Cnd.NEW(); Cnd cnd = Cnd.NEW();
@@ -126,7 +126,7 @@ public class QsvSurveyServiceImpl extends BaseServiceImpl<QsvUserAnswerRecord> i
} }
// 查询用户答题记录 // 查询用户答题记录
List<QsvUserAnswerRecord> answerRecords = dao().query(QsvUserAnswerRecord.class, Cnd.where(QsvUserAnswerRecord::getActivityId, "=", activityId)); List<QsvUserAnswerRecord> answerRecords = dao().query(QsvUserAnswerRecord.class, Cnd.where(QsvUserAnswerRecord::getActivityId, "=", activityId).and(QsvUserAnswerRecord::getIsFinish,"=",1));
// 将答题记录的扩展JSON转换为JSONObject列表 // 将答题记录的扩展JSON转换为JSONObject列表
List<JSONObject> answerExtList = answerRecords.stream().map(QsvUserAnswerRecord::getExtJson).toList(); List<JSONObject> answerExtList = answerRecords.stream().map(QsvUserAnswerRecord::getExtJson).toList();
@@ -169,12 +169,17 @@ public class QsvSurveyServiceImpl extends BaseServiceImpl<QsvUserAnswerRecord> i
try { try {
// 查询用户答题记录 // 查询用户答题记录
List<QsvUserAnswerRecord> answerRecords = dao().query(QsvUserAnswerRecord.class, Cnd.where(QsvUserAnswerRecord::getActivityId, "=", activityId)); List<QsvUserAnswerRecord> answerRecords = dao().query(QsvUserAnswerRecord.class, Cnd.where(QsvUserAnswerRecord::getActivityId, "=", activityId).and(QsvUserAnswerRecord::getIsFinish,"=",1));
// 将答题记录的扩展JSON转换为JSONObject列表 // 将答题记录的扩展JSON转换为JSONObject列表
List<JSONObject> answerExtList = answerRecords.stream().map(QsvUserAnswerRecord::getExtJson).toList(); List<JSONObject> answerExtList = answerRecords.stream().map(QsvUserAnswerRecord::getExtJson).toList();
// 查询活动题目列表 // 查询活动题目列表
List<QsvSubject> subjects = dao().query(QsvSubject.class, Cnd.where(QsvSubject::getActivityId, "=", activityId)); List<QsvSubject> subjects = dao().query(QsvSubject.class, Cnd.where(QsvSubject::getActivityId, "=", activityId).asc(QsvSubject::getSortNum));
for (QsvSubject subject : subjects) {
System.out.println(subject.getTitle());
}
// 将题目列表转换为Map // 将题目列表转换为Map
Map<String, QsvSubject> subjectMap = subjects.stream().collect(Collectors.toMap(QsvSubject::getId, v -> v)); Map<String, QsvSubject> subjectMap = subjects.stream().collect(Collectors.toMap(QsvSubject::getId, v -> v));
// 获取题目ID列表 // 获取题目ID列表
@@ -236,12 +236,9 @@ public class ActivitySportsApplyUserController {
cnd.and(group); cnd.and(group);
} }
Sql sql = Sqls.create("select id,loginname,username,sex,mobile,unitId,birthday,idcard from `vw_user` $condition LIMIT 30"); Sql sql = Sqls.create("select id,loginname,username,sex,mobile,unitId,unionId,birthday,idcard from `vw_user` $condition LIMIT 30");
sql.setCondition(cnd); sql.setCondition(cnd);
sql.setCallback(Sqls.callback.entities()); return Result.success(activitySportsApplyUserService.listMap(sql));
sql.setEntity(activitySportsApplyUserService.getEntity());
List<Sys_user> list = dao.execute(sql).getList(Sys_user.class);
return Result.success(list);
} }
} }
@@ -132,10 +132,7 @@ public class ActivitySchoolApply extends BaseModel implements Serializable {
private Integer status; private Integer status;
@Column
@Comment("单位名称")
@ColDefine(type = ColType.VARCHAR, width = 100)
private String unitname;
@Excel(name = "分工会", width = 30) @Excel(name = "分工会", width = 30)
@@ -185,5 +182,11 @@ public class ActivitySchoolApply extends BaseModel implements Serializable {
private String sf; private String sf;
private int age; private int age;
@Column
@Comment("单位名称")
@Excel(name = "单位名称", width = 40)
@ColDefine(type = ColType.VARCHAR, width = 100)
private String unitname;
} }
@@ -380,7 +380,6 @@ public class ActivitySportsApplyUserServiceImpl extends BaseServiceImpl<Activity
apply.setApplyUser(SecurityUtil.getUserId()); apply.setApplyUser(SecurityUtil.getUserId());
apply.setStatus(pass ? 2 : 0); apply.setStatus(pass ? 2 : 0);
apply.setApplyDate(DateUtil.now()); apply.setApplyDate(DateUtil.now());
apply.setUnitId(basicUnit.getId());
apply.setActivityUnionId(basicUnion.getId()); apply.setActivityUnionId(basicUnion.getId());
apply.setActivityUnionName(basicUnion.getName()); apply.setActivityUnionName(basicUnion.getName());
} }
@@ -116,7 +116,7 @@ public class ActivitySportsServiceImpl extends BaseServiceImpl<ActivitySchool> i
if (collect.size() > 0) { if (collect.size() > 0) {
collect.forEach(v -> { collect.forEach(v -> {
dao().clear(ActivitySchoolApply.class,Cnd.where("activityId", "=", activitySchool.getId()).and("eventId", "=", v.getEventId())); dao().clear(ActivitySchoolApply.class, Cnd.where("activityId", "=", activitySchool.getId()).and("eventId", "=", v.getEventId()));
dao().clear(ActivitySchoolEvent.class, Cnd.where("activityId", "=", activitySchool.getId()).and("eventId", "=", v.getEventId())); dao().clear(ActivitySchoolEvent.class, Cnd.where("activityId", "=", activitySchool.getId()).and("eventId", "=", v.getEventId()));
dao().clear(ActivitySchoolTeam.class, Cnd.where("activityId", "=", activitySchool.getId()).and("eventId", "=", v.getEventId())); dao().clear(ActivitySchoolTeam.class, Cnd.where("activityId", "=", activitySchool.getId()).and("eventId", "=", v.getEventId()));
}); });
@@ -182,7 +182,7 @@ public class ActivitySportsServiceImpl extends BaseServiceImpl<ActivitySchool> i
@Override @Override
@Aop(TransAop.READ_COMMITTED) @Aop(TransAop.READ_COMMITTED)
public void doDelete(String id) { public void doDelete(String id) {
dao().clear(ActivitySchoolApply.class,Cnd.where("activityId", "=", id)); dao().clear(ActivitySchoolApply.class, Cnd.where("activityId", "=", id));
dao().clear(ActivitySchoolEvent.class, Cnd.where("activityId", "=", id)); dao().clear(ActivitySchoolEvent.class, Cnd.where("activityId", "=", id));
dao().clear(ActivitySchoolTeam.class, Cnd.where("activityId", "=", id)); dao().clear(ActivitySchoolTeam.class, Cnd.where("activityId", "=", id));
this.delete(id); this.delete(id);
@@ -200,6 +200,7 @@ public class ActivitySportsServiceImpl extends BaseServiceImpl<ActivitySchool> i
app.activityUnionName unionname, app.activityUnionName unionname,
app.sex, app.sex,
app.mobile, app.mobile,
app.unitname,
u.idCard, u.idCard,
u.userState, u.userState,
ev.allName, ev.allName,
@@ -220,7 +221,7 @@ public class ActivitySportsServiceImpl extends BaseServiceImpl<ActivitySchool> i
app.`team` asc app.`team` asc
""").setParam("id", id); """).setParam("id", id);
if (Strings.isNotBlank(unionId)) { if (Strings.isNotBlank(unionId)) {
sql.setVar("cnd", "and u.unionid='" + unionId + "'"); sql.setVar("cnd", "and app.activityUnionId='" + unionId + "'");
} }
List<Record> list = list(sql); List<Record> list = list(sql);
String activityName; String activityName;
@@ -235,7 +236,7 @@ public class ActivitySportsServiceImpl extends BaseServiceImpl<ActivitySchool> i
list.forEach(z -> { list.forEach(z -> {
ActivitySchoolApply schoolApply = z.toPojo(ActivitySchoolApply.class); ActivitySchoolApply schoolApply = z.toPojo(ActivitySchoolApply.class);
String s = schoolApply.getIdentity().stream().map(personType::getName).toList().toString(); String s = schoolApply.getIdentity().stream().map(personType::getName).toList().toString();
schoolApply.setSf(s); schoolApply.setSf(s.replace("[", "").replace("]", ""));
excels.add(schoolApply); excels.add(schoolApply);
}); });
@@ -78,9 +78,9 @@ public class MemberStatisticsServiceImpl extends BaseServiceImpl<Sys_user> imple
if (StrUtil.isAllNotBlank(pageForm.getStartJoinDate(), pageForm.getEndJoinDate())) { if (StrUtil.isAllNotBlank(pageForm.getStartJoinDate(), pageForm.getEndJoinDate())) {
if (reverseSelection) { if (reverseSelection) {
cnd.andNot("DATE(u.memberJoinTime)", "between", new String[]{pageForm.getStartJoinDate(), pageForm.getEndJoinDate()}); cnd.andNot("u.arrivalAtSchoolDate", "between", new String[]{pageForm.getStartJoinDate(), pageForm.getEndJoinDate()});
} else { } else {
cnd.and("DATE(u.memberJoinTime)", "between", new String[]{pageForm.getStartJoinDate(), pageForm.getEndJoinDate()}); cnd.and("u.arrivalAtSchoolDate", "between", new String[]{pageForm.getStartJoinDate(), pageForm.getEndJoinDate()});
} }
} }
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

@@ -50,7 +50,7 @@ module.exports = {
name: "HeaderUserAvatar", name: "HeaderUserAvatar",
store, store,
components: { components: {
"user-info": httpVueLoader("/components/module/userInfo/index.vue") "user-info": httpVueLoader("/components/module/userInfo/index.vue?v="+new Date().getTime())
}, },
data() { data() {
return { return {
@@ -39,13 +39,13 @@
<el-row class="query-row"> <el-row class="query-row">
<el-col class="query-title hidden-xs-only">性别</el-col> <el-col class="query-title hidden-xs-only">性别</el-col>
<el-col class="query-content"> <el-col class="query-content query-row-content-tag">
<el-tag <el-tag
:effect="pageForm.sexTypes.includes(item.name) ? 'dark' : 'plain'" :effect="pageForm.sexTypes.includes(item.name) ? 'dark' : 'plain'"
:key="item.code" :key="item.code"
:type="item.name" :type="item.name"
@click="tagClick('sexTypes', item.name)" @click="tagClick('sexTypes', item.name)"
style="margin-right: 10px; cursor: pointer" style="cursor: pointer;margin: 0;"
v-for="item in sexTypeOptions" v-for="item in sexTypeOptions"
> >
{{ item.name }} {{ item.name }}
@@ -55,13 +55,13 @@
<el-row class="query-row" v-if="is_A06 === true || is_sysadmin === true || is_H04 === true"> <el-row class="query-row" v-if="is_A06 === true || is_sysadmin === true || is_H04 === true">
<el-col class="query-title">编制类型</el-col> <el-col class="query-title">编制类型</el-col>
<el-col class="query-content"> <el-col class="query-content query-row-content-tag">
<el-tag <el-tag
:effect="pageForm.personTypes.includes(item.name) ? 'dark' : 'plain'" :effect="pageForm.personTypes.includes(item.name) ? 'dark' : 'plain'"
:key="item.code" :key="item.code"
:type="item.name" :type="item.name"
@click="tagClick('personTypes', item.name)" @click="tagClick('personTypes', item.name)"
style="margin-right: 10px; cursor: pointer" style="cursor: pointer;margin: 0;"
v-for="item in personTypeOptions" v-for="item in personTypeOptions"
> >
{{ item.name }} {{ item.name }}
@@ -94,13 +94,13 @@
<el-row class="query-row" v-if="is_A06 === true || is_sysadmin === true || is_H04 === true"> <el-row class="query-row" v-if="is_A06 === true || is_sysadmin === true || is_H04 === true">
<el-col class="query-title">在职状态</el-col> <el-col class="query-title">在职状态</el-col>
<el-col class="query-content"> <el-col class="query-content query-row-content-tag">
<el-tag <el-tag
:effect="pageForm.userStates.includes(item.name) ? 'dark' : 'plain'" :effect="pageForm.userStates.includes(item.name) ? 'dark' : 'plain'"
:key="item.code" :key="item.code"
:type="item.name" :type="item.name"
@click="tagClick('userStates', item.name)" @click="tagClick('userStates', item.name)"
style="margin-right: 10px; cursor: pointer" style="cursor: pointer;margin: 0;"
v-for="item in userStateOptions" v-for="item in userStateOptions"
> >
{{ item.name }} {{ item.name }}
@@ -243,6 +243,22 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row class="query-row" type="flex" align="middle">
<el-col class="query-title">入会日期</el-col>
<el-col class="query-content">
<el-date-picker
v-model="pageForm.startJoinDate"
type="date"
placeholder="选择开始日期">
</el-date-picker>
<el-date-picker
v-model="pageForm.endJoinDate"
type="date"
placeholder="选择结束日期">
</el-date-picker>
</el-col>
</el-row>
<!-- <el-row class="query-row" <!-- <el-row class="query-row"
v-if="is_H10===true||is_A06===true||is_sysadmin===true||is_H04===true"> v-if="is_H10===true||is_A06===true||is_sysadmin===true||is_H04===true">
<el-col class="query-title">条件匹配</el-col> <el-col class="query-title">条件匹配</el-col>
@@ -355,14 +371,6 @@ module.exports = {
{ {
code: "unionMember", code: "unionMember",
name: "工会会员" name: "工会会员"
},
{
code: "welfareMember",
name: "福利会员"
},
{
code: "sickFundMember",
name: "基金会员"
} }
], ],
sexTypeOptions: [ sexTypeOptions: [
@@ -389,7 +397,7 @@ module.exports = {
roleIds: [], roleIds: [],
userId: [], userId: [],
activityUserCnd: "", activityUserCnd: "",
reverseSelection: false reverseSelection: false,
}, },
activityUnions: [], activityUnions: [],
unions: [], unions: [],
@@ -504,6 +512,17 @@ module.exports = {
this.units = await this.$businessTool.listUnit(this.unionId) this.units = await this.$businessTool.listUnit(this.unionId)
} }
}, },
determineStartDate() {
if (this.pageForm.endDate) {
if (Date.parse(this.pageForm.startDate) > Date.parse(this.pageForm.endDate)) {
this.pageForm.startDate = ""
this.$notify.warning("开始时间不能大于结束时间")
}
}
this.pageForm.startDate = this.pageForm.startDate.toLocaleDateString().replaceAll("/", "-")
},
async pageData() { async pageData() {
const pageForm = clone(this.pageForm) const pageForm = clone(this.pageForm)
pageForm.personTypes = JSON.stringify(pageForm.personTypes) pageForm.personTypes = JSON.stringify(pageForm.personTypes)
@@ -646,6 +665,13 @@ module.exports = {
margin-top: 5px; margin-top: 5px;
} }
.query-row-content-tag {
display: flex;
flex-wrap: wrap; /* 标签自动换行 */
align-items: center;
gap: 4px 6px; /* 横纵向间距 */
}
@media screen and (max-width: 992px) { @media screen and (max-width: 992px) {
.query-row:nth-child(4) .query-content .el-col:not(:last-child) { .query-row:nth-child(4) .query-content .el-col:not(:last-child) {
margin-bottom: 5px; margin-bottom: 5px;
@@ -4,7 +4,7 @@
<el-descriptions :column="3" border class="descriptions-form"> <el-descriptions :column="3" border class="descriptions-form">
<el-descriptions-item label="工号">{{ viewData.loginname }}</el-descriptions-item> <el-descriptions-item label="工号">{{ viewData.loginname }}</el-descriptions-item>
<el-descriptions-item label="姓名">{{ viewData.username }}</el-descriptions-item> <el-descriptions-item label="姓名">{{ viewData.username }}</el-descriptions-item>
<el-descriptions-item label="姓名">{{ viewData.username }}</el-descriptions-item> <el-descriptions-item label=""></el-descriptions-item>
<el-descriptions-item label="性别">{{ viewData.sex }}</el-descriptions-item> <el-descriptions-item label="性别">{{ viewData.sex }}</el-descriptions-item>
<el-descriptions-item label="出生日期"> <el-descriptions-item label="出生日期">
{{ viewData.birthday ? $moment(viewData.birthday).format("YYYY-MM-DD") : null }} {{ viewData.birthday ? $moment(viewData.birthday).format("YYYY-MM-DD") : null }}
@@ -84,10 +84,10 @@
securityJsCode: "4fa1e1aeabba7eb9518129cf57ab17c1" securityJsCode: "4fa1e1aeabba7eb9518129cf57ab17c1"
} }
</script> </script>
<!-- <script--> <!-- <script-->
<!-- type="text/javascript"--> <!-- type="text/javascript"-->
<!-- src="https://webapi.amap.com/maps?v=2.0&key=57f0d098ba1b881ecc436c4cfd23bbbf&plugin=AMap.PolyEditor,AMap.Geolocation,AMap.PlaceSearch"--> <!-- src="https://webapi.amap.com/maps?v=2.0&key=e913d40c4546d8bb4d521b4a8aef0fff&plugin=AMap.PolyEditor,AMap.Geolocation,AMap.PlaceSearch"-->
<!-- ></script>--> <!-- ></script>-->
<script type="text/javascript"> <script type="text/javascript">
Vue.config.devtools = false Vue.config.devtools = false
@@ -129,14 +129,14 @@ layout("/layouts/platform.html"){
</div> </div>
<script> <script>
<!--#include("../../../zhgh/staffmanage/member/common/audit/memberAuditChangeInfo.js"){}#--> <!--#include("../../../zhgh/staffmanage/member/change/common/memberAllChangeInfo.js"){}#-->
new Vue({ new Vue({
el: "#app", el: "#app",
dicts: ["MEMBER_CHANGE_TYPE"], dicts: ["MEMBER_CHANGE_TYPE"],
mixins: [initTableMixins], mixins: [initTableMixins],
components: { components: {
"member-audit-change-info": MEMBER_AUDIT_CHANGE_INFO "member-audit-change-info": MEMBER_ALL_CHANGE_INFO
}, },
data() { data() {
return { return {
@@ -177,7 +177,7 @@ layout("/layouts/platform.html"){
methods: { methods: {
openCurrentUserChangeInfo(row) { openCurrentUserChangeInfo(row) {
this.$refs.guava.public(() => { this.$refs.guava.public(() => {
this.$refs.memberAuditChangeInfoRef.onOpen({recordId: row.userHistoryId, userId: row.id}) this.$refs.memberAuditChangeInfoRef.onOpen(row.id)
}) })
}, },
getChangeTypes(changeTypes) { getChangeTypes(changeTypes) {
@@ -109,10 +109,8 @@ layout("/layouts/platform.html"){
</div> </div>
</el-card> </el-card>
<el-card shadow="never" class="mt10"> <el-card shadow="never" class="mt10">
<table-tool :app="this" label="活动列表"> <table-tool label="活动列表">
<template #func>
<el-button icon="el-icon-plus" type="primary" size="small" @click="openAdd">创建活动</el-button> <el-button icon="el-icon-plus" type="primary" size="small" @click="openAdd">创建活动</el-button>
</template>
</table-tool> </table-tool>
<el-table :data="tableData" style="width: 100%" row-key="_id" @sort-change="pageOrder" <el-table :data="tableData" style="width: 100%" row-key="_id" @sort-change="pageOrder"
v-loading="tabLoading"> v-loading="tabLoading">
@@ -129,15 +127,15 @@ layout("/layouts/platform.html"){
<el-table-column label="活动地址" prop="address"></el-table-column> <el-table-column label="活动地址" prop="address"></el-table-column>
<el-table-column label="报名时间"> <el-table-column label="报名时间">
<template scope="scope"> <template scope="scope">
{{moment(scope.row.applyStartTime).format('YYYY-MM-DD HH:mm:ss')}} - {{$moment(scope.row.applyStartTime).format('YYYY-MM-DD HH:mm:ss')}} -
{{moment(scope.row.applyEndTime).format('YYYY-MM-DD HH:mm:ss')}} {{$moment(scope.row.applyEndTime).format('YYYY-MM-DD HH:mm:ss')}}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="活动时间"> <el-table-column label="活动时间">
<template scope="scope"> <template scope="scope">
{{moment(scope.row.startTime).format('YYYY-MM-DD HH:mm:ss')}} - {{$moment(scope.row.startTime).format('YYYY-MM-DD HH:mm:ss')}} -
{{moment(scope.row.endTime).format('YYYY-MM-DD HH:mm:ss')}} {{$moment(scope.row.endTime).format('YYYY-MM-DD HH:mm:ss')}}
</template> </template>
</el-table-column> </el-table-column>
@@ -192,7 +190,7 @@ layout("/layouts/platform.html"){
<div v-show="stepActive==0" class="transition-box" style="margin-top: 20px;"> <div v-show="stepActive==0" class="transition-box" style="margin-top: 20px;">
<el-form :model="formData" ref="form" :rules="formRules" <el-form :model="formData" ref="form" :rules="formRules"
label-width="150px"> label-width="150px">
<vi-title title="填写活动信息"></vi-title> <div class="process-title">填写活动信息</div>
<el-row :gutter="20" type="flex"> <el-row :gutter="20" type="flex">
<el-col :span="12"> <el-col :span="12">
@@ -344,20 +342,20 @@ layout("/layouts/platform.html"){
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12" v-if="formData.isQuestion"> <!-- <el-col :span="12" v-if="formData.isQuestion">-->
<el-form-item label="答题试卷" prop="questionId"> <!-- <el-form-item label="答题试卷" prop="questionId">-->
<el-select v-model="formData.questionId" filterable style="width: 100%" <!-- <el-select v-model="formData.questionId" filterable style="width: 100%"-->
clearable style="width: 100%" <!-- clearable style="width: 100%"-->
placeholder="选择答题试卷"> <!-- placeholder="选择答题试卷">-->
<el-option <!-- <el-option-->
v-for="item in questionOptions" <!-- v-for="item in questionOptions"-->
:label="item.qtitle" <!-- :label="item.qtitle"-->
:key="item.qid" <!-- :key="item.qid"-->
:value="item.qid"> <!-- :value="item.qid">-->
</el-option> <!-- </el-option>-->
</el-select> <!-- </el-select>-->
</el-form-item> <!-- </el-form-item>-->
</el-col> <!-- </el-col>-->
</el-row> </el-row>
@@ -403,6 +401,7 @@ layout("/layouts/platform.html"){
class="pictureUpload" class="pictureUpload"
:auto-upload="false" :auto-upload="false"
:limit="1" :limit="1"
action
list-type="picture-card" list-type="picture-card"
:on-change="certificatePictureChange" :on-change="certificatePictureChange"
:on-remove="certificatePictureRemove" :on-remove="certificatePictureRemove"
@@ -413,7 +412,7 @@ layout("/layouts/platform.html"){
</el-col> </el-col>
</el-row> </el-row>
<el-row type="flex" gutter="20"> <el-row type="flex" :gutter="20">
<el-col :span="12" v-if="formData.activityModel === 'punch'"> <el-col :span="12" v-if="formData.activityModel === 'punch'">
<el-form-item label="报名时间" prop="applyTime" <el-form-item label="报名时间" prop="applyTime"
:rules="[{ required:true, message: '请选择报名时间' }]"> :rules="[{ required:true, message: '请选择报名时间' }]">
@@ -682,13 +681,14 @@ layout("/layouts/platform.html"){
<el-form-item label="活动介绍" prop="note" <el-form-item label="活动介绍" prop="note"
:rules="[{ required:true, message: '请填写活动介绍' }]"> :rules="[{ required:true, message: '请填写活动介绍' }]">
<div id="noteEditor"></div> <text-editor v-model="formData.note"></text-editor>
</el-form-item> </el-form-item>
<el-form-item label="学习卡" prop="stepPics"> <el-form-item label="学习卡" prop="stepPics">
<el-upload <el-upload
list-type="picture-card" list-type="picture-card"
multiple multiple
action
class="pictureUpload" class="pictureUpload"
:on-change="stepPictureChange" :on-change="stepPictureChange"
:on-remove="stepPictureRemove" :on-remove="stepPictureRemove"
@@ -703,6 +703,7 @@ layout("/layouts/platform.html"){
class="pictureUpload" class="pictureUpload"
:auto-upload="false" :auto-upload="false"
:limit="1" :limit="1"
action
list-type="picture-card" list-type="picture-card"
:on-change="pictureChange" :on-change="pictureChange"
:on-remove="pictureRemove" :on-remove="pictureRemove"
@@ -725,7 +726,7 @@ layout("/layouts/platform.html"){
<transition name="el-zoom-in-top"> <transition name="el-zoom-in-top">
<div v-show="stepActive==1" class="transition-box" style="margin-top: 20px;"> <div v-show="stepActive==1" class="transition-box" style="margin-top: 20px;">
<el-form label-width="120px" label-position="left"> <el-form label-width="120px" label-position="left">
<vi-title title="创建点位坐标"></vi-title> <div class="process-title">创建点位坐标</div>
</el-form> </el-form>
<el-table :data="formData.pts" size="medium"> <el-table :data="formData.pts" size="medium">
<el-table-column type="index" label=""></el-table-column> <el-table-column type="index" label=""></el-table-column>
@@ -746,6 +747,7 @@ layout("/layouts/platform.html"){
<template scope="scope"> <template scope="scope">
<el-input-number type="text" v-model="scope.row.radius" <el-input-number type="text" v-model="scope.row.radius"
:min="0" :min="0"
style="width: 100%"
:max="9999999" :max="9999999"
placeholder="请填写点位半径"> placeholder="请填写点位半径">
<temnplate slot="append">m</temnplate> <temnplate slot="append">m</temnplate>
@@ -869,7 +871,7 @@ layout("/layouts/platform.html"){
<!-- <el-form-item label="基础信息&emsp;" label-width="135px" class="view-header">--> <!-- <el-form-item label="基础信息&emsp;" label-width="135px" class="view-header">-->
<!-- </el-form-item>--> <!-- </el-form-item>-->
<el-row gutter="20"> <el-row :gutter="20">
<el-col :span="12"> <el-col :span="12">
<el-form-item label="活动名称:"> <el-form-item label="活动名称:">
{{viewData.name}} {{viewData.name}}
@@ -883,32 +885,32 @@ layout("/layouts/platform.html"){
</el-row> </el-row>
<el-row gutter="20"> <el-row :gutter="20">
<el-col :span="12"> <el-col :span="12">
<el-form-item label="开始报名时间:"> <el-form-item label="开始报名时间:">
{{moment(viewData.apply_start_time).format('YYYY-MM-DD HH:mm:ss')}} {{$moment(viewData.apply_start_time).format('YYYY-MM-DD HH:mm:ss')}}
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="结束报名时间:"> <el-form-item label="结束报名时间:">
{{moment(viewData.apply_end_time).format('YYYY-MM-DD HH:mm:ss')}} {{$moment(viewData.apply_end_time).format('YYYY-MM-DD HH:mm:ss')}}
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row gutter="20"> <el-row :gutter="20">
<el-col :span="12"> <el-col :span="12">
<el-form-item label="活动开始时间:"> <el-form-item label="活动开始时间:">
{{moment(viewData.start_time).format('YYYY-MM-DD HH:mm:ss')}} {{$moment(viewData.start_time).format('YYYY-MM-DD HH:mm:ss')}}
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="活动结束时间:"> <el-form-item label="活动结束时间:">
{{moment(viewData.end_time).format('YYYY-MM-DD HH:mm:ss')}} {{$moment(viewData.end_time).format('YYYY-MM-DD HH:mm:ss')}}
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row gutter="20"> <el-row :gutter="20">
<el-col :span="12"> <el-col :span="12">
<el-form-item label="活动模式:"> <el-form-item label="活动模式:">
<span v-if="viewData.activityModel=='punch'">打卡模式</span> <span v-if="viewData.activityModel=='punch'">打卡模式</span>
@@ -928,7 +930,7 @@ layout("/layouts/platform.html"){
</el-col> </el-col>
</el-row> </el-row>
<el-row gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="活动介绍:"> <el-form-item label="活动介绍:">
<div v-if="!viewData.note">暂无</div> <div v-if="!viewData.note">暂无</div>
@@ -936,13 +938,13 @@ layout("/layouts/platform.html"){
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
</el-col> </el-col>
</el-row> </el-row>
<el-row gutter="20"> <el-row :gutter="20">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="活动封面:"> <el-form-item label="活动封面:">
<el-image style="width: 100px; height: 100px" :src="picSrc" fit="cover"/> <el-image style="width: 100px; height: 100px" :src="picSrc" fit="cover"/>
@@ -974,7 +976,6 @@ layout("/layouts/platform.html"){
<script> <script>
let E = window.wangEditor let E = window.wangEditor
let noteEditor = null
let icon = new AMap.Icon({ let icon = new AMap.Icon({
size: new AMap.Size(25, 34), size: new AMap.Size(25, 34),
image: '//a.amap.com/jsapi_demos/static/demo-center/icons/poi-marker-default.png', image: '//a.amap.com/jsapi_demos/static/demo-center/icons/poi-marker-default.png',
@@ -1002,7 +1003,9 @@ layout("/layouts/platform.html"){
viewDialogVisible: false, viewDialogVisible: false,
dwDialogVisible: false, dwDialogVisible: false,
tabLoading: false, tabLoading: false,
formData: {}, formData: {
pts: []
},
tableData: [], tableData: [],
pageForm: { pageForm: {
searchName: "name", searchName: "name",
@@ -1062,8 +1065,7 @@ layout("/layouts/platform.html"){
} }
}, },
components: { components: {
'user-scope': httpVueLoader('/components/plugins/UserScope.vue'), "drawer-user-scope": httpVueLoader("/components/module/activity/DrawerUserScope.vue")
'drawer-user-scope': httpVueLoader('/components/plugins/DrawerUserScope.vue'),
}, },
methods: { methods: {
pictureRemove() { pictureRemove() {
@@ -1233,16 +1235,6 @@ layout("/layouts/platform.html"){
}) })
} }
this.$nextTick(() => {
$("#noteEditor").html("")
noteEditor = new E("#noteEditor")
noteEditor.config.onchange = (html) => {
this.formData.note = html
}
noteEditor.config.uploadImgShowBase64 = true // 使用 base64 保存图片
noteEditor.create()
noteEditor.txt.html(data.note)
})
if (data.tag !== "") { if (data.tag !== "") {
this.hasChildrenAct = true this.hasChildrenAct = true
} }
@@ -1280,7 +1272,7 @@ layout("/layouts/platform.html"){
let map = new AMap.Map("viewXlMap", { let map = new AMap.Map("viewXlMap", {
resizeEnable: true, resizeEnable: true,
center: [AppMapCenterPointX, AppMapCenterPointY], center: [118.92, 32.11],
zoom: 16 zoom: 16
}); });
@@ -1398,7 +1390,7 @@ layout("/layouts/platform.html"){
this.$nextTick(() => { this.$nextTick(() => {
map = new AMap.Map("dwMap", { map = new AMap.Map("dwMap", {
resizeEnable: true, resizeEnable: true,
center: [AppMapCenterPointX, AppMapCenterPointY], center: [118.92, 32.11],
zoom: 16 zoom: 16
}); });
this.placeSearchComponent = new AMap.PlaceSearch({ this.placeSearchComponent = new AMap.PlaceSearch({
@@ -1527,7 +1519,7 @@ layout("/layouts/platform.html"){
xlMap() { xlMap() {
let map = new AMap.Map("xlMap", { let map = new AMap.Map("xlMap", {
resizeEnable: true, resizeEnable: true,
center: [AppMapCenterPointX, AppMapCenterPointY], center: [118.92, 32.11],
zoom: 16 zoom: 16
}); });
@@ -1804,16 +1796,6 @@ layout("/layouts/platform.html"){
}) })
} }
this.$nextTick(() => {
$("#noteEditor").html("")
noteEditor = new E("#noteEditor")
noteEditor.config.onchange = (html) => {
this.formData.note = html
}
noteEditor.config.uploadImgShowBase64 = true // 使用 base64 保存图片
noteEditor.create()
noteEditor.txt.html(data.note)
})
if (data.tag !== "") { if (data.tag !== "") {
this.hasChildrenAct = true this.hasChildrenAct = true
} }
@@ -1888,15 +1870,6 @@ layout("/layouts/platform.html"){
this.stepActive = 0 this.stepActive = 0
await this.getActivityData() await this.getActivityData()
this.$nextTick(() => {
$("#noteEditor").html("")
noteEditor = new E("#noteEditor")
noteEditor.config.onchange = (html) => {
this.formData.note = html
}
noteEditor.config.uploadImgShowBase64 = true // 使用 base64 保存图片
noteEditor.create()
})
}, },
async pageData() { async pageData() {
this.tabLoading = true this.tabLoading = true
@@ -1931,28 +1904,28 @@ layout("/layouts/platform.html"){
}) })
}, },
async getWelfareProject() { async getWelfareProject() {
const resp = await this.$axios.post('/platform/welfare/common/welfareProjects') // const resp = await this.$axios.post('/platform/welfare/common/welfareProjects')
if (resp.code === 0) { // if (resp.code === 0) {
const options = resp.data.find(v => v.label === new Date().getFullYear()) // const options = resp.data.find(v => v.label === new Date().getFullYear())
if (options && options.children.length > 0) { // if (options && options.children.length > 0) {
this.welfareProjectOptions = options.children // this.welfareProjectOptions = options.children
} // }
} // }
} }
}, },
watch: { watch: {
'formData.questionId': { // 'formData.questionId': {
async handler(newVal, oldVal) { // async handler(newVal, oldVal) {
if(newVal){ // if(newVal){
this.getIssueByQuestionId(newVal) // this.getIssueByQuestionId(newVal)
// // this.formData.pts.map(v => v.issueIds = [])
// }else{
// this.formData.pts.map(v => v.issueIds = []) // this.formData.pts.map(v => v.issueIds = [])
}else{ // }
this.formData.pts.map(v => v.issueIds = []) // },
} // deep: true,
}, // immediate:true
deep: true, // },
immediate:true
},
'formData.groupId': { 'formData.groupId': {
async handler(newVal, oldVal) { async handler(newVal, oldVal) {
this.getActivityGroup() this.getActivityGroup()
@@ -1968,7 +1941,7 @@ layout("/layouts/platform.html"){
}, },
async created() { async created() {
this.getActivityGroup() this.getActivityGroup()
this.getQuestion() // this.getQuestion()
// this.questionOptions = await Jsz.getQuestion() // this.questionOptions = await Jsz.getQuestion()
this.pageForm.year = (new Date().getFullYear()).toString() this.pageForm.year = (new Date().getFullYear()).toString()
@@ -35,6 +35,7 @@ const answer = {
this.$axios.post("/platform/qsv/survey/userAnswer", { activityId: this.activityId }).then((res) => { this.$axios.post("/platform/qsv/survey/userAnswer", { activityId: this.activityId }).then((res) => {
if (res.code === 0) { if (res.code === 0) {
this.tableColumns = res.data.tableColumns this.tableColumns = res.data.tableColumns
console.log(this.tableColumns)
this.tableData = res.data.tableData this.tableData = res.data.tableData
} }
}) })
@@ -265,7 +265,7 @@ var ACTIVITY_SPORTS_APPLY_USER = {
:remote-method="querySearchAsync" :remote-method="querySearchAsync"
@change="addUserChange" @change="addUserChange"
filterable filterable
placeholder="请输入工号或者姓名查询" placeholder="请输入工号或者姓名查询"
remote remote
reserve-keyword reserve-keyword
style="width: 100%" style="width: 100%"
@@ -392,6 +392,7 @@ var ACTIVITY_SPORTS_APPLY_USER = {
this.$set(this.formData, 'loginname', user ? user.loginname : null) this.$set(this.formData, 'loginname', user ? user.loginname : null)
this.$set(this.formData, 'username', user ? user.username : null) this.$set(this.formData, 'username', user ? user.username : null)
this.$set(this.formData, 'unitId', user ? user.unitId : null) this.$set(this.formData, 'unitId', user ? user.unitId : null)
this.$set(this.formData, 'unionId', user ? user.unionId : null)
this.$set(this.formData, 'sex', user ? user.sex : null) this.$set(this.formData, 'sex', user ? user.sex : null)
this.$set(this.formData, 'idcard', user ? user.idCard : null) this.$set(this.formData, 'idcard', user ? user.idCard : null)
this.$set(this.formData, 'mobile', user ? user.mobile : null) this.$set(this.formData, 'mobile', user ? user.mobile : null)
@@ -113,7 +113,7 @@ layout("/layouts/platform.html"){
</div> </div>
<div class="text item"> <div class="text item">
<span style="color: gray">活动时间:</span> <span style="color: gray">活动时间:</span>
{{$moment(item.startTime).format('YYYY/MM/DD HH:mm')}} 至 {{$moment(item.endTime).format('YYYY/MM/DD')}} {{$moment(item.startTime).format('YYYY/MM/DD')}} 至 {{$moment(item.endTime).format('YYYY/MM/DD')}}
</div> </div>
</div> </div>
</el-card> </el-card>
@@ -154,12 +154,12 @@ layout("/layouts/platform.html"){
</div> </div>
<div class="mr10 ml20" v-if="unionLeaderCoach"> <div class="mr10 ml20" v-if="unionLeaderCoach">
领队: 领队:
<span style="color: #419bf8">{{leaderData.username?leaderData.username:'暂无'}}</span> <span style="color: #419bf8">{{leaderData.username?leaderData.username:'暂无'}}</span><!--
&emsp13; 教练: &emsp13; 教练:
<span style="color: #419bf8">{{coachData.username ?coachData.username:'暂无'}}</span> <span style="color: #419bf8">{{coachData.username ?coachData.username:'暂无'}}</span>-->
</div> </div>
<div> <div>
<el-button @click="openLeaderCoach" size="medium" type="primary" v-if="unionLeaderCoach">设置领队/教练</el-button> <el-button @click="openLeaderCoach" size="medium" type="primary" v-if="unionLeaderCoach">设置领队</el-button>
</div> </div>
</table-tool> </table-tool>
<el-table <el-table
@@ -241,10 +241,10 @@ layout("/layouts/platform.html"){
</template> </template>
</guava> </guava>
<el-dialog :visible.sync="dialogLeaderCoach" title="添加领队/教练" width="60%"> <el-dialog :visible.sync="dialogLeaderCoach" title="添加领队" width="40%">
<el-form :model="headData" :rules="formRules" label-width="100px" ref="form" v-loading="formLoading"> <el-form :model="headData" :rules="formRules" label-width="100px" ref="form" v-loading="formLoading">
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="12"> <el-col :span="24">
<table-tool label="填写领队信息"></table-tool> <table-tool label="填写领队信息"></table-tool>
<el-form-item label="姓&emsp;&emsp;名" prop="userId"> <el-form-item label="姓&emsp;&emsp;名" prop="userId">
<user-select <user-select
@@ -266,7 +266,7 @@ layout("/layouts/platform.html"){
<el-input maxlength="50" placeholder="请填写电话" type="text" v-model="leaderData.mobile"></el-input> <el-input maxlength="50" placeholder="请填写电话" type="text" v-model="leaderData.mobile"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <!--<el-col :span="12">
<table-tool label="填写教练信息"></table-tool> <table-tool label="填写教练信息"></table-tool>
<el-form-item label="姓&emsp;&emsp;名" prop="userId"> <el-form-item label="姓&emsp;&emsp;名" prop="userId">
<user-select <user-select
@@ -287,7 +287,7 @@ layout("/layouts/platform.html"){
<el-form-item label="电&emsp;&emsp;话" prop="mobile"> <el-form-item label="电&emsp;&emsp;话" prop="mobile">
<el-input maxlength="50" placeholder="请填写电话" type="text" v-model="coachData.mobile"></el-input> <el-input maxlength="50" placeholder="请填写电话" type="text" v-model="coachData.mobile"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>-->
</el-row> </el-row>
</el-form> </el-form>
<span class="dialog-footer" slot="footer"> <span class="dialog-footer" slot="footer">
@@ -362,7 +362,7 @@ layout("/layouts/platform.html"){
this.$set(this.leaderData, "unionLeader", true) this.$set(this.leaderData, "unionLeader", true)
this.$set(this.leaderData, "unionId", user.unionId) this.$set(this.leaderData, "unionId", user.unionId)
this.$set(this.leaderData, "identity", ["3"]) this.$set(this.leaderData, "identity", ["3"])
this.$set(this.leaderData, "status", 0) this.$set(this.leaderData, "status", 2)
this.$set(this.leaderData, "awardsMode", 2) this.$set(this.leaderData, "awardsMode", 2)
this.$set(this.leaderData, "activityId", this.activityData.id) this.$set(this.leaderData, "activityId", this.activityData.id)
} }
@@ -380,7 +380,7 @@ layout("/layouts/platform.html"){
this.$set(this.coachData, "unionCoach", true) this.$set(this.coachData, "unionCoach", true)
this.$set(this.coachData, "unionId", user.unionId) this.$set(this.coachData, "unionId", user.unionId)
this.$set(this.coachData, "identity", ["2"]) this.$set(this.coachData, "identity", ["2"])
this.$set(this.coachData, "status", 0) this.$set(this.coachData, "status", 2)
this.$set(this.coachData, "awardsMode", 2) this.$set(this.coachData, "awardsMode", 2)
this.$set(this.coachData, "activityId", this.activityData.id) this.$set(this.coachData, "activityId", this.activityData.id)
} }
@@ -182,6 +182,7 @@ const CLUB_INFO_MANAGE_TEMPLATE = {
openAuth(row) { openAuth(row) {
this.authDialogVisible = true this.authDialogVisible = true
this.authFormData = { this.authFormData = {
id: row.id,
userId: row.userId, userId: row.userId,
userName: row.userName, userName: row.userName,
loginName: row.loginName, loginName: row.loginName,
@@ -203,6 +204,7 @@ const CLUB_INFO_MANAGE_TEMPLATE = {
}).then((res) => { }).then((res) => {
this.$axios this.$axios
.post("/platform/club/infoManage/manage/doAuthRole", { .post("/platform/club/infoManage/manage/doAuthRole", {
id: this.authFormData.id,
userId: this.authFormData.userId, userId: this.authFormData.userId,
clubId: this.authFormData.clubId, clubId: this.authFormData.clubId,
roleCode: JSON.stringify(this.authFormData.roleCode) roleCode: JSON.stringify(this.authFormData.roleCode)
@@ -115,8 +115,8 @@ layout("/layouts/platform.html"){
formData.sponsor = this.$refs.clubSponsorRef.sponsorData formData.sponsor = this.$refs.clubSponsorRef.sponsorData
.filter((o) => o.userId !== "" && o.userId !== undefined) .filter((o) => o.userId !== "" && o.userId !== undefined)
.map((o) => o.userId) .map((o) => o.userId)
if (type === "doSubmit" && formData.sponsor && formData.sponsor.length < 3) { if (type === "doSubmit" && formData.sponsor && formData.sponsor.length < 1) {
this.$message.warning({ title: "警告", message: "发起人要求不少于3人" }) this.$message.warning({ title: "警告", message: "发起人要求不少于1人" })
return return
} }
let manageValid = false let manageValid = false
@@ -56,7 +56,7 @@ const MEMBER_STATISTICS_COMPREHENSIVE_QUERY_FORM = {
<el-row class="query-row"> <el-row class="query-row">
<el-col class="query-row-title">性别:</el-col> <el-col class="query-row-title">性别:</el-col>
<el-col class="query-row-content"> <el-col class="query-row-content query-row-content-tag">
<el-tag <el-tag
:effect="pageForm.sexTypes.includes(item.name)?'dark':'plain'" :effect="pageForm.sexTypes.includes(item.name)?'dark':'plain'"
:key="item.code" :key="item.code"
@@ -62,9 +62,9 @@ layout("/layouts/platform.html"){
<el-table-column prop="maleMember" label="男会员" align="center" sortable></el-table-column> <el-table-column prop="maleMember" label="男会员" align="center" sortable></el-table-column>
<el-table-column prop="femaleMember" label="女会员" align="center" sortable></el-table-column> <el-table-column prop="femaleMember" label="女会员" align="center" sortable></el-table-column>
<el-table-column prop="smallForty" label="小于等于40岁会员" align="center" sortable></el-table-column> <el-table-column prop="smallForty" label="小于等于40岁会员" align="center" sortable></el-table-column>
<el-table-column prop="smallFifty" label="40-50" align="center" sortable></el-table-column> <el-table-column prop="smallFifty" label="41-50" align="center" sortable></el-table-column>
<el-table-column prop="smallFiftyFive" label="50-55" align="center" sortable></el-table-column> <el-table-column prop="smallFiftyFive" label="51-55" align="center" sortable></el-table-column>
<el-table-column prop="smallFiftyFive2" label="大于55" align="center" sortable></el-table-column> <el-table-column prop="smallFiftyFive2" label="大于等于56" align="center" sortable></el-table-column>
</el-table> </el-table>
</el-card> </el-card>
</template> </template>
@@ -106,18 +106,13 @@ layout("/layouts/platform_h5.html"){
<p>{{index+1}}、{{ subject.title }}</p> <p>{{index+1}}、{{ subject.title }}</p>
<div class="tag"> <div class="tag">
<van-tag v-if="subject.type === 'checkbox'" type="primary" size="large">多选</van-tag> <van-tag v-if="subject.type === 'checkbox'" type="primary" size="large">多选</van-tag>
<van-tag v-if="subject.type === 'checkbox' && subject.maxSelectNum && subject.minSelectNum && subject.maxSelectNum === subject.minSelectNum" type="success" size="large"> <van-tag v-if="subject.type === 'checkbox' && subject.maxSelectNum" type="primary" size="large">
只能选择{{subject.maxSelectNum}}项
</van-tag>
<van-tag v-if="subject.type === 'checkbox' && subject.maxSelectNum && (!subject.minSelectNum || subject.maxSelectNum !== subject.minSelectNum)" type="primary" size="large">
最多可选{{subject.maxSelectNum}} 最多可选{{subject.maxSelectNum}}
</van-tag> </van-tag>
<van-tag v-if="subject.type === 'checkbox' && subject.minSelectNum && subject.minSelectNum > 1 && (!subject.maxSelectNum || subject.maxSelectNum !== subject.minSelectNum)" type="warning" size="large"> <van-tag v-if="subject.type === 'checkbox' && subject.minSelectNum && subject.minSelectNum > 1" type="warning" size="large">
最少选择{{subject.minSelectNum}} 最少选择{{subject.minSelectNum}}
</van-tag> </van-tag>
<van-tag v-if="subject.type === 'radio'" type="primary" size="large">单选</van-tag> <van-tag v-if="subject.type === 'radio'" type="primary" size="large">单选</van-tag>
<van-tag v-if="subject.score" type="primary" size="large">{{subject.score}}分</van-tag>
</div> </div>
<!--单选、多选--> <!--单选、多选-->