..
This commit is contained in:
+6
-3
@@ -14,6 +14,7 @@ import io.swagger.annotations.Api;
|
|||||||
import org.nutz.dao.Cnd;
|
import org.nutz.dao.Cnd;
|
||||||
import org.nutz.dao.Sqls;
|
import org.nutz.dao.Sqls;
|
||||||
import org.nutz.dao.sql.Sql;
|
import org.nutz.dao.sql.Sql;
|
||||||
|
import org.nutz.dao.util.cri.SqlExpressionGroup;
|
||||||
import org.nutz.ioc.loader.annotation.Inject;
|
import org.nutz.ioc.loader.annotation.Inject;
|
||||||
import org.nutz.ioc.loader.annotation.IocBean;
|
import org.nutz.ioc.loader.annotation.IocBean;
|
||||||
import org.nutz.lang.util.NutMap;
|
import org.nutz.lang.util.NutMap;
|
||||||
@@ -81,9 +82,11 @@ public class FundMemberBranchUnionApprovalController {
|
|||||||
cnd.and("t.taskState", "=", ProcessTaskStateEnum.DOING.getCode());
|
cnd.and("t.taskState", "=", ProcessTaskStateEnum.DOING.getCode());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (StrUtil.isNotBlank(pageForm.getSearchKeyword())) {
|
||||||
if (StrUtil.isNotBlank(searchKeyword)) {
|
SqlExpressionGroup seg = new SqlExpressionGroup();
|
||||||
cnd.where().andLike("info.title", searchKeyword);
|
seg.orLike("info.loginName", pageForm.getSearchKeyword());
|
||||||
|
seg.orLike("info.userName", pageForm.getSearchKeyword());
|
||||||
|
cnd.and(seg);
|
||||||
}
|
}
|
||||||
|
|
||||||
cnd.groupBy("t.id");
|
cnd.groupBy("t.id");
|
||||||
|
|||||||
+1
@@ -74,6 +74,7 @@ public class FundMemberMineController {
|
|||||||
$condition
|
$condition
|
||||||
""");
|
""");
|
||||||
Cnd cnd = Cnd.NEW();
|
Cnd cnd = Cnd.NEW();
|
||||||
|
cnd.andEX("YEAR(info.submitTime)", "=", year);
|
||||||
cnd.and("info.createdBy", "=", SecurityUtil.getUserId());
|
cnd.and("info.createdBy", "=", SecurityUtil.getUserId());
|
||||||
sql.setCondition(cnd);
|
sql.setCondition(cnd);
|
||||||
Pagination<NutMap> pagination = fundMemberService.listPageMap(pageNumber, pageSize, sql);
|
Pagination<NutMap> pagination = fundMemberService.listPageMap(pageNumber, pageSize, sql);
|
||||||
|
|||||||
+1
-1
@@ -74,7 +74,7 @@ public class FundMemberQueryController {
|
|||||||
u.userState,
|
u.userState,
|
||||||
u.unitName,
|
u.unitName,
|
||||||
u.unionName,
|
u.unionName,
|
||||||
(SELECT changeTime FROM fund_member_change_record WHERE loginName = u.loginName AND isJoin = 1 ORDER BY changeTime DESC) joinTime
|
(SELECT changeTime FROM fund_member_change_record WHERE loginName = u.loginName AND isJoin = 1 ORDER BY changeTime DESC limit 1) joinTime
|
||||||
FROM
|
FROM
|
||||||
vw_user u
|
vw_user u
|
||||||
$condition
|
$condition
|
||||||
|
|||||||
+10
-5
@@ -14,6 +14,7 @@ import io.swagger.annotations.Api;
|
|||||||
import org.nutz.dao.Cnd;
|
import org.nutz.dao.Cnd;
|
||||||
import org.nutz.dao.Sqls;
|
import org.nutz.dao.Sqls;
|
||||||
import org.nutz.dao.sql.Sql;
|
import org.nutz.dao.sql.Sql;
|
||||||
|
import org.nutz.dao.util.cri.SqlExpressionGroup;
|
||||||
import org.nutz.ioc.loader.annotation.Inject;
|
import org.nutz.ioc.loader.annotation.Inject;
|
||||||
import org.nutz.ioc.loader.annotation.IocBean;
|
import org.nutz.ioc.loader.annotation.IocBean;
|
||||||
import org.nutz.lang.util.NutMap;
|
import org.nutz.lang.util.NutMap;
|
||||||
@@ -40,7 +41,7 @@ public class FundMemberSchoolUnionApprovalController {
|
|||||||
|
|
||||||
@At
|
@At
|
||||||
@SaCheckPermission("fundMember.schoolUnionApproval")
|
@SaCheckPermission("fundMember.schoolUnionApproval")
|
||||||
public Result pageData(PageForm pageForm, String taskId, String searchKeyword, Integer year, boolean approval) {
|
public Result pageData(PageForm pageForm, String unionId, Integer year, boolean approval) {
|
||||||
Sql sql = Sqls.create("""
|
Sql sql = Sqls.create("""
|
||||||
SELECT
|
SELECT
|
||||||
info.*,
|
info.*,
|
||||||
@@ -71,7 +72,7 @@ public class FundMemberSchoolUnionApprovalController {
|
|||||||
""");
|
""");
|
||||||
Cnd cnd = Cnd.NEW();
|
Cnd cnd = Cnd.NEW();
|
||||||
cnd.and("t.taskName", "=", "xgh");
|
cnd.and("t.taskName", "=", "xgh");
|
||||||
if(!AuthUtil.hasRole(RoleConstant.SYSADMIN.name())){
|
if (!AuthUtil.hasRole(RoleConstant.SYSADMIN.name())) {
|
||||||
cnd.and("ta.actorId", "in", List.of(SecurityUtil.getUserId()));
|
cnd.and("ta.actorId", "in", List.of(SecurityUtil.getUserId()));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -81,10 +82,14 @@ public class FundMemberSchoolUnionApprovalController {
|
|||||||
cnd.and("t.taskState", "=", ProcessTaskStateEnum.DOING.getCode());
|
cnd.and("t.taskState", "=", ProcessTaskStateEnum.DOING.getCode());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
cnd.andEX("YEAR(info.submitTime)", "=", year);
|
||||||
if (StrUtil.isNotBlank(searchKeyword)) {
|
if (StrUtil.isNotBlank(pageForm.getSearchKeyword())) {
|
||||||
cnd.where().andLike("info.title", searchKeyword);
|
SqlExpressionGroup seg = new SqlExpressionGroup();
|
||||||
|
seg.orLike("info.loginName", pageForm.getSearchKeyword());
|
||||||
|
seg.orLike("info.userName", pageForm.getSearchKeyword());
|
||||||
|
cnd.and(seg);
|
||||||
}
|
}
|
||||||
|
cnd.andEX("info.unionId", "=", unionId);
|
||||||
|
|
||||||
cnd.groupBy("t.id");
|
cnd.groupBy("t.id");
|
||||||
cnd.desc("t.createdAt");
|
cnd.desc("t.createdAt");
|
||||||
|
|||||||
+1
@@ -69,6 +69,7 @@ public class FundMemberWriteController {
|
|||||||
Dict args = Dict.create();
|
Dict args = Dict.create();
|
||||||
args.set(FlowConst.SUBMIT_TYPE, ProcessSubmitTypeEnum.APPLY.getCode());
|
args.set(FlowConst.SUBMIT_TYPE, ProcessSubmitTypeEnum.APPLY.getCode());
|
||||||
args.set(FlowConst.FORM_DATA, fundMember);
|
args.set(FlowConst.FORM_DATA, fundMember);
|
||||||
|
args.set(FlowConst.TASK_FORM_DATA_PREFIX + "userState", fundMember.getUserState());
|
||||||
ProcessInstance instance = flowEngine.startProcessInstanceByKey("FUND_MEMBER", fundMember.getId(), SecurityUtil.getUserId(), args);
|
ProcessInstance instance = flowEngine.startProcessInstanceByKey("FUND_MEMBER", fundMember.getId(), SecurityUtil.getUserId(), args);
|
||||||
|
|
||||||
// 自动完成第一个申请任务
|
// 自动完成第一个申请任务
|
||||||
|
|||||||
+40
@@ -1,6 +1,7 @@
|
|||||||
package com.budwk.app.zhgh.democratic.proposal.controller.query;
|
package com.budwk.app.zhgh.democratic.proposal.controller.query;
|
||||||
|
|
||||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||||
|
import cn.hutool.core.util.ArrayUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import com.budwk.app.base.page.Pagination;
|
import com.budwk.app.base.page.Pagination;
|
||||||
import com.budwk.app.base.result.Result;
|
import com.budwk.app.base.result.Result;
|
||||||
@@ -23,6 +24,7 @@ import org.nutz.mvc.annotation.Param;
|
|||||||
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
import javax.validation.Valid;
|
import javax.validation.Valid;
|
||||||
|
import java.util.Arrays;
|
||||||
|
|
||||||
@IocBean
|
@IocBean
|
||||||
@At("/platform/proposal/query/comprehensive")
|
@At("/platform/proposal/query/comprehensive")
|
||||||
@@ -71,9 +73,47 @@ public class ProposalQueryComprehensiveController {
|
|||||||
LEFT JOIN wf_process_instance ins ON ins.businessNo = info.id
|
LEFT JOIN wf_process_instance ins ON ins.businessNo = info.id
|
||||||
LEFT JOIN wf_process_task t ON t.processInstanceId = ins.id AND t.taskState = 10
|
LEFT JOIN wf_process_task t ON t.processInstanceId = ins.id AND t.taskState = 10
|
||||||
LEFT JOIN proposal_reply_unit pru ON pru.proposalId = info.id
|
LEFT JOIN proposal_reply_unit pru ON pru.proposalId = info.id
|
||||||
|
LEFT JOIN wf_process_task replyTask on replyTask.processInstanceId = ins.id AND replyTask.taskState = 20 AND replyTask.taskName in ('master_reply','slave_reply','opinion_master_reply')
|
||||||
$condition
|
$condition
|
||||||
""");
|
""");
|
||||||
Cnd cnd = Cnd.NEW();
|
Cnd cnd = Cnd.NEW();
|
||||||
|
if(ArrayUtil.isNotEmpty(pageForm.getOrigins())){
|
||||||
|
SqlExpressionGroup seg = new SqlExpressionGroup();
|
||||||
|
|
||||||
|
// 案名
|
||||||
|
if(ArrayUtil.contains(pageForm.getOrigins(),"name")){
|
||||||
|
for (String keyword : pageForm.getCommonKeyword().split(" ")) {
|
||||||
|
seg.orLike("info.name", keyword);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 案由
|
||||||
|
if(ArrayUtil.contains(pageForm.getOrigins(),"brief")){
|
||||||
|
for (String keyword : pageForm.getCommonKeyword().split(" ")) {
|
||||||
|
seg.orLike("info.brief", keyword);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 提案人
|
||||||
|
if(ArrayUtil.contains(pageForm.getOrigins(),"createUserName")){
|
||||||
|
for (String keyword : pageForm.getCommonKeyword().split(" ")) {
|
||||||
|
seg.orLike("info.createUserName", keyword);
|
||||||
|
seg.orLike("info.createUserLoginName", keyword);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 答复内容
|
||||||
|
if(ArrayUtil.contains(pageForm.getOrigins(),"answer")){
|
||||||
|
for (String keyword : pageForm.getCommonKeyword().split(" ")) {
|
||||||
|
seg.orLike("JSON_EXTRACT(replyTask.variable,'$.tf_opinion')", keyword);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(!seg.isEmpty()){
|
||||||
|
cnd.and(seg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if(StrUtil.isNotBlank(pageForm.getUndertakeUnitId())){
|
if(StrUtil.isNotBlank(pageForm.getUndertakeUnitId())){
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+6
@@ -20,6 +20,8 @@ public class ProposalQueryComprehensiveParam extends PageForm {
|
|||||||
private String code;
|
private String code;
|
||||||
@ApiModelProperty(name = "教代会ID")
|
@ApiModelProperty(name = "教代会ID")
|
||||||
private String sessionId;
|
private String sessionId;
|
||||||
|
@ApiModelProperty(name = "教代会ID")
|
||||||
|
private String[] sessionIds;
|
||||||
@ApiModelProperty(name = "代表团ID")
|
@ApiModelProperty(name = "代表团ID")
|
||||||
private String delegationId;
|
private String delegationId;
|
||||||
@ApiModelProperty(name = "提案人姓名")
|
@ApiModelProperty(name = "提案人姓名")
|
||||||
@@ -50,10 +52,14 @@ public class ProposalQueryComprehensiveParam extends PageForm {
|
|||||||
@ApiModelProperty(name = "征集进度状态")
|
@ApiModelProperty(name = "征集进度状态")
|
||||||
private Integer[] collectIds;
|
private Integer[] collectIds;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "提案来源")
|
||||||
|
private String[] origins;
|
||||||
|
|
||||||
@ApiModelProperty(name = "通用关键字")
|
@ApiModelProperty(name = "通用关键字")
|
||||||
private String commonKeyword;
|
private String commonKeyword;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 构建通用查询参数
|
* 构建通用查询参数
|
||||||
*
|
*
|
||||||
|
|||||||
@@ -9,9 +9,6 @@ layout("/layouts/platform.html"){
|
|||||||
<el-date-picker v-model="pageForm.year" type="year" value-format="yyyy" placeholder="年度"
|
<el-date-picker v-model="pageForm.year" type="year" value-format="yyyy" placeholder="年度"
|
||||||
style="width: 100%"></el-date-picker>
|
style="width: 100%"></el-date-picker>
|
||||||
</search-item>
|
</search-item>
|
||||||
<search-item label="标题">
|
|
||||||
<el-input v-model="pageForm.searchKeyword" placeholder="标题" clearable></el-input>
|
|
||||||
</search-item>
|
|
||||||
</search>
|
</search>
|
||||||
</el-card>
|
</el-card>
|
||||||
<el-card shadow="never">
|
<el-card shadow="never">
|
||||||
|
|||||||
+17
-3
@@ -9,8 +9,19 @@ layout("/layouts/platform.html"){
|
|||||||
<el-date-picker v-model="pageForm.year" type="year" value-format="yyyy" placeholder="年度"
|
<el-date-picker v-model="pageForm.year" type="year" value-format="yyyy" placeholder="年度"
|
||||||
style="width: 100%"></el-date-picker>
|
style="width: 100%"></el-date-picker>
|
||||||
</search-item>
|
</search-item>
|
||||||
<search-item label="标题">
|
<search-item label="工号/姓名">
|
||||||
<el-input v-model="pageForm.searchKeyword" placeholder="标题" clearable></el-input>
|
<el-input v-model="pageForm.searchKeyword" placeholder="请输入工号或者姓名查询"
|
||||||
|
clearable></el-input>
|
||||||
|
</search-item>
|
||||||
|
<search-item label="所属工会">
|
||||||
|
<el-select v-model="pageForm.unionId" @change="doSearch" style="width: 100%"
|
||||||
|
placeholder="请选择所属工会" clearable>
|
||||||
|
<el-option v-for="item in unionOptions"
|
||||||
|
:value="item.id"
|
||||||
|
:key="item.id"
|
||||||
|
:label="item.name"
|
||||||
|
></el-option>
|
||||||
|
</el-select>
|
||||||
</search-item>
|
</search-item>
|
||||||
</search>
|
</search>
|
||||||
</el-card>
|
</el-card>
|
||||||
@@ -93,7 +104,8 @@ layout("/layouts/platform.html"){
|
|||||||
approval: false
|
approval: false
|
||||||
},
|
},
|
||||||
formData: {},
|
formData: {},
|
||||||
showApprovalForm: false
|
showApprovalForm: false,
|
||||||
|
unionOptions: []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@@ -154,6 +166,8 @@ layout("/layouts/platform.html"){
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
|
//工会查询
|
||||||
|
this.$businessTool.listUnion().then((res) => (this.unionOptions = res))
|
||||||
this.pageData()
|
this.pageData()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -79,10 +79,6 @@ layout("/layouts/platform.html"){
|
|||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
<el-form-item label="家庭住址" prop="address">
|
|
||||||
<el-input v-model="formData.address" placeholder="请输入家庭住址"></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
|
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="手机号码" prop="mobile">
|
<el-form-item label="手机号码" prop="mobile">
|
||||||
@@ -145,7 +141,7 @@ layout("/layouts/platform.html"){
|
|||||||
],
|
],
|
||||||
address: [{required: true, message: '请输入家庭住址', trigger: 'blur'}],
|
address: [{required: true, message: '请输入家庭住址', trigger: 'blur'}],
|
||||||
joinWorkTime: [{required: true, message: '请选择参加工作时间', trigger: 'blur'}],
|
joinWorkTime: [{required: true, message: '请选择参加工作时间', trigger: 'blur'}],
|
||||||
retireTime: [{required: true, message: '请选择退休时间', trigger: 'blur'}],
|
retireTime: [{required: false, message: '请选择退休时间', trigger: 'blur'}],
|
||||||
mobile: [{required: true, message: '请输入手机号码', trigger: 'blur'},
|
mobile: [{required: true, message: '请输入手机号码', trigger: 'blur'},
|
||||||
{
|
{
|
||||||
pattern: /^1[3456789]\d{9}$/,
|
pattern: /^1[3456789]\d{9}$/,
|
||||||
@@ -219,7 +215,7 @@ layout("/layouts/platform.html"){
|
|||||||
}).then(res => {
|
}).then(res => {
|
||||||
if (res.code === 0) {
|
if (res.code === 0) {
|
||||||
this.$message.success("提交成功")
|
this.$message.success("提交成功")
|
||||||
commonUtil.pjaxPush('/platform/suggestionBox/mine')
|
commonUtil.pjaxPush('/platform/fundMember/mine')
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
@@ -235,7 +231,7 @@ layout("/layouts/platform.html"){
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
const {username, loginname, sex, birthday, mobile, union} = this.$store.state.user
|
const {username, loginname, sex, birthday, mobile, union, userState, idCard} = this.$store.state.user
|
||||||
this.formData = {
|
this.formData = {
|
||||||
userName: username,
|
userName: username,
|
||||||
loginName: loginname,
|
loginName: loginname,
|
||||||
@@ -243,7 +239,9 @@ layout("/layouts/platform.html"){
|
|||||||
birthday: birthday,
|
birthday: birthday,
|
||||||
mobile: mobile,
|
mobile: mobile,
|
||||||
unionId: union?.id,
|
unionId: union?.id,
|
||||||
unionName: union?.name
|
unionName: union?.name,
|
||||||
|
userState: userState,
|
||||||
|
idCard: idCard
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+183
-69
@@ -6,61 +6,174 @@ layout("/layouts/platform.html"){
|
|||||||
.el-tag {
|
.el-tag {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.search-container {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
min-height: 50px;
|
||||||
|
border-bottom: 1px solid #ddd;
|
||||||
|
padding: 12px 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-label {
|
||||||
|
width: 90px;
|
||||||
|
margin-right: 10px;
|
||||||
|
font-weight: normal;
|
||||||
|
color: #333;
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-content {
|
||||||
|
flex: 1;
|
||||||
|
display: flex;
|
||||||
|
gap: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.custom-search-box {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
width: 100%;
|
||||||
|
background: #ffffff;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
border-radius: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.custom-search-box:hover {
|
||||||
|
border-color: #999;
|
||||||
|
}
|
||||||
|
|
||||||
|
.custom-search-box:focus-within {
|
||||||
|
border-color: #4a90e2;
|
||||||
|
box-shadow: 0 0 3px rgba(74, 144, 226, 0.3);
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-input {
|
||||||
|
flex: 1;
|
||||||
|
height: 35px;
|
||||||
|
padding: 0 10px;
|
||||||
|
border: none;
|
||||||
|
outline: none;
|
||||||
|
font-size: 14px;
|
||||||
|
color: #333;
|
||||||
|
background: transparent;
|
||||||
|
font-family: inherit;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.search-input::placeholder {
|
||||||
|
color: #999;
|
||||||
|
}
|
||||||
|
|
||||||
|
.filter-row {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
min-height: 50px;
|
||||||
|
border-bottom: 1px dashed rgb(230, 230, 230);
|
||||||
|
}
|
||||||
|
|
||||||
|
.filter-label {
|
||||||
|
width: 90px;
|
||||||
|
margin-right: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.filter-tags {
|
||||||
|
flex: 1;
|
||||||
|
display: flex;
|
||||||
|
gap: 5px;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
||||||
<div id="app" v-cloak>
|
<div id="app" v-cloak>
|
||||||
<guava ref="guava">
|
<guava ref="guava">
|
||||||
<el-card shadow="never">
|
<el-card shadow="never">
|
||||||
<search @search="doSearch">
|
|
||||||
<search-item label="教代会">
|
<!-- 万能搜索框 -->
|
||||||
<el-select @change="meetingChange" clearable filterable placeholder="所属教代会"
|
<div class="search-container">
|
||||||
v-model="pageForm.sessionId">
|
<div class="search-label">万能搜索</div>
|
||||||
<el-option :key="item.id" :label="item.fullName" :value="item.id"
|
<div class="search-content">
|
||||||
v-for="item in sessionOptions"></el-option>
|
<div class="custom-search-box">
|
||||||
</el-select>
|
<input
|
||||||
</search-item>
|
type="text"
|
||||||
<search-item label="提案名称">
|
v-model="pageForm.commonKeyword"
|
||||||
<el-input
|
placeholder="请输入关键词进行搜索"
|
||||||
@keyup.enter.native="doSearch"
|
class="search-input"
|
||||||
clearable
|
@keyup.enter="doSearch"
|
||||||
placeholder="请输入提案名称"
|
/>
|
||||||
v-model="pageForm.name"
|
</div>
|
||||||
style="width: 100%"
|
</div>
|
||||||
></el-input>
|
</div>
|
||||||
</search-item>
|
|
||||||
<search-item label="提案编码">
|
<div class="filter-row">
|
||||||
<el-input
|
<div class="filter-label">搜索来源</div>
|
||||||
@keyup.enter.native="doSearch"
|
<div class="filter-tags">
|
||||||
clearable
|
<el-tag
|
||||||
placeholder="请输入提案编码"
|
v-for="item in origins"
|
||||||
v-model="pageForm.code"
|
:key="item.value"
|
||||||
style="width: 100%"
|
:effect="pageForm.origins && pageForm.origins.includes(item.value) ? 'dark':'plain'"
|
||||||
></el-input>
|
@click="tagToggle('origins',item.value)"
|
||||||
</search-item>
|
>
|
||||||
<search-item label="姓名/工号:">
|
{{ item.label }}
|
||||||
<el-input placeholder="请输入提案人姓名或工号查询" clearable
|
</el-tag>
|
||||||
v-model="pageForm.createUserKeyword"></el-input>
|
</div>
|
||||||
</search-item>
|
</div>
|
||||||
<!-- <search-item label="提案人姓名">-->
|
|
||||||
<!-- <el-input-->
|
<div class="filter-row">
|
||||||
<!-- @keyup.enter.native="doSearch"-->
|
<div class="filter-label">届次</div>
|
||||||
<!-- clearable-->
|
<div class="filter-tags">
|
||||||
<!-- placeholder="请输入提案人姓名"-->
|
<el-tag
|
||||||
<!-- v-model="pageForm.createUserName"-->
|
v-for="item in sessionOptions"
|
||||||
<!-- style="width: 100%"-->
|
:key="item.id"
|
||||||
<!-- ></el-input>-->
|
:effect="pageForm.sessionIds && pageForm.sessionIds.includes(item.id) ? 'dark':'plain'"
|
||||||
<!-- </search-item>-->
|
@click="tagToggle('sessionIds',item.id)"
|
||||||
<!-- <search-item label="提案人工号">-->
|
>
|
||||||
<!-- <el-input-->
|
{{ item.fullName }}
|
||||||
<!-- @keyup.enter.native="doSearch"-->
|
</el-tag>
|
||||||
<!-- clearable-->
|
</div>
|
||||||
<!-- placeholder="请输入提案人工号"-->
|
</div>
|
||||||
<!-- v-model="pageForm.createUserLoginName"-->
|
<div class="filter-row">
|
||||||
<!-- style="width: 100%"-->
|
<div class="filter-label">提案类别</div>
|
||||||
<!-- ></el-input>-->
|
<div class="filter-tags">
|
||||||
<!-- </search-item>-->
|
<el-tag
|
||||||
|
v-for="item in typeOptions"
|
||||||
|
:key="item.code"
|
||||||
|
:effect="pageForm.typeIds && pageForm.typeIds.includes(item.id) ? 'dark':'plain'"
|
||||||
|
@click="tagToggle('typeIds',item.id)"
|
||||||
|
>
|
||||||
|
{{ item.name }}
|
||||||
|
</el-tag>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="filter-row">
|
||||||
|
<div class="filter-label">立案结果</div>
|
||||||
|
<div class="filter-tags">
|
||||||
|
<el-tag
|
||||||
|
v-for="item in dict.type.PROPOSAL_CASE_FILING_RESULT"
|
||||||
|
:key="item.code"
|
||||||
|
:effect="pageForm.caseFilingResults && pageForm.caseFilingResults.includes(item.code) ? 'dark':'plain'"
|
||||||
|
@click="tagToggle('caseFilingResults',item.code)"
|
||||||
|
>
|
||||||
|
{{ item.label }}
|
||||||
|
</el-tag>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="filter-row">
|
||||||
|
<div class="filter-label">立案类型</div>
|
||||||
|
<div class="filter-tags">
|
||||||
|
<el-tag
|
||||||
|
v-for="item in dict.type.PROPOSAL_CASE_FILING_TYPE"
|
||||||
|
:key="item.code"
|
||||||
|
:effect="pageForm.caseFilingTypes && pageForm.caseFilingTypes.includes(item.code) ? 'dark':'plain'"
|
||||||
|
@click="tagToggle('caseFilingTypes',item.code)"
|
||||||
|
>
|
||||||
|
{{ item.label }}
|
||||||
|
</el-tag>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<search @search="doSearch" class="mt10">
|
||||||
<search-item label="代表团">
|
<search-item label="代表团">
|
||||||
<el-select clearable filterable placeholder="所属代表团" v-model="pageForm.delegationId">
|
<el-select clearable filterable placeholder="请选择所属代表团" v-model="pageForm.delegationId">
|
||||||
<el-option :key="item.id" :label="item.name" :value="item.id"
|
<el-option :key="item.id" :label="item.name" :value="item.id"
|
||||||
v-for="item in delegationOptions"></el-option>
|
v-for="item in delegationOptions"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
@@ -78,28 +191,9 @@ layout("/layouts/platform.html"){
|
|||||||
v-for="item in unitOptions"></el-option>
|
v-for="item in unitOptions"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</search-item>
|
</search-item>
|
||||||
<search-item label="提案类别">
|
|
||||||
<el-select clearable filterable multiple placeholder="提案类别" v-model="pageForm.typeIds">
|
|
||||||
<el-option :key="item.id" :label="item.name" :value="item.id" v-for="item in typeOptions"></el-option>
|
|
||||||
</el-select>
|
|
||||||
</search-item>
|
|
||||||
<search-item label="立案结果">
|
|
||||||
<el-select clearable filterable multiple placeholder="立案结果" v-model="pageForm.caseFilingResults">
|
|
||||||
<el-option :key="item.code" :label="item.label" :value="item.code" v-for="item in dict.type.PROPOSAL_CASE_FILING_RESULT"></el-option>
|
|
||||||
</el-select>
|
|
||||||
</search-item>
|
|
||||||
<search-item label="立案类型">
|
|
||||||
<el-select clearable filterable multiple placeholder="立案类型" v-model="pageForm.caseFilingTypes">
|
|
||||||
<el-option :key="item.code" :label="item.label" :value="item.code" v-for="item in dict.type.PROPOSAL_CASE_FILING_TYPE"></el-option>
|
|
||||||
</el-select>
|
|
||||||
</search-item>
|
|
||||||
<!-- <search-item label="承办单位">-->
|
|
||||||
<!-- <el-select clearable filterable placeholder="承办单位" v-model="pageForm.undertakeUnitId">-->
|
|
||||||
<!-- <el-option :key="item.code" :label="item.name" :value="item.id" v-for="item in underTakeOptions"></el-option>-->
|
|
||||||
<!-- </el-select>-->
|
|
||||||
<!-- </search-item>-->
|
|
||||||
</search>
|
</search>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
<el-card shadow="never">
|
<el-card shadow="never">
|
||||||
<table-tool></table-tool>
|
<table-tool></table-tool>
|
||||||
<el-table :data="tableData" @sort-change="pageOrder" header-align="center" ref="tableRef"
|
<el-table :data="tableData" @sort-change="pageOrder" header-align="center" ref="tableRef"
|
||||||
@@ -177,12 +271,32 @@ layout("/layouts/platform.html"){
|
|||||||
unionOptions: [],
|
unionOptions: [],
|
||||||
unitOptions: [],
|
unitOptions: [],
|
||||||
pageForm: {
|
pageForm: {
|
||||||
|
origins: [],
|
||||||
|
sessionIds: [],
|
||||||
typeIds: [],
|
typeIds: [],
|
||||||
caseFilingResults: [],
|
caseFilingResults: [],
|
||||||
caseFilingTypes: [],
|
caseFilingTypes: [],
|
||||||
unionId: null,
|
unionId: null,
|
||||||
unitId: null
|
unitId: null
|
||||||
|
},
|
||||||
|
origins: [
|
||||||
|
{
|
||||||
|
label: '提案名称',
|
||||||
|
value: 'name'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: '案由',
|
||||||
|
value: 'brief'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: '答复内容',
|
||||||
|
value: 'answer'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: '提案人',
|
||||||
|
value: 'createUserName'
|
||||||
}
|
}
|
||||||
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
|||||||
Reference in New Issue
Block a user