From 4522ab3fe8bd45ee753ef187448c1e884bbc601f Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Thu, 18 Apr 2024 11:09:27 +0800
Subject: [PATCH] Merge branch 'master' of http://s16s652780.51mypc.cn:49896/r/jczz_web
---
src/views/article/components/discussionManageChild.vue | 382 +++++++++++++++++++++++++++++-------------------------
1 files changed, 207 insertions(+), 175 deletions(-)
diff --git a/src/views/article/components/discussionManageChild.vue b/src/views/article/components/discussionManageChild.vue
index daa6662..3adc6a6 100644
--- a/src/views/article/components/discussionManageChild.vue
+++ b/src/views/article/components/discussionManageChild.vue
@@ -1,14 +1,20 @@
<template>
-
<div>
- <el-dialog title="" append-to-body :visible.sync="dialogVisibles" width="60%" :before-close="handleClose">
- <avue-form ref="DisCussFrom" :option="option" v-model="disCussFrom" @submit="handleSubmit"></avue-form>
+ <el-dialog title="" append-to-body :visible.sync="dialogVisibles" width="50%" :before-close="handleClose"
+ @close="handleClose" @open="opens">
+ <avue-form ref="DisCussFrom" :option="option" v-model="froms" @submit="handleSubmit"></avue-form>
</el-dialog>
- </div>
+ <userList ref="userList" @selectPersonList="selectPersonList"></userList>
+
+ </div>
</template>
<script>
+ import {
+ getPersonPublicSelect
+ } from "@/api/public"
+
import {
getListPd,
getDetailPd,
@@ -17,10 +23,6 @@
removePd
} from "@/api/discuss/publicDiscuss"
- import {
- getPage
- } from "@/api/discuss/userTopics"
-
import option from "@/option/discuss/publicDiscuss"
import {
mapGetters
@@ -28,31 +30,27 @@
import {
getDictionary
} from '@/api/system/dict'
+ import userList from "./userList.vue";
+
+
+ // import {
+ // getList as getHouseholdList,
+ // getDetatils as getHouseholdDetail
+ // } from "@/api/userHouse/list/houseHold"
import {
- getList as getHouseholdList,
- getDetatils as getHouseholdDetail
- } from "@/api/userHouse/list/houseHold"
+ getUserlnfoByDistrictlds
+ } from "@/api/system/user"
-
-
+ let formData = {}
export default {
+ components: {
+ userList
+ },
data() {
return {
dialogVisibles: false,
userParams: {},
- // 分页信息
- pageUser: {
- pageSize: 10,
- pageSizes: [10, 20, 30, 50, 100],
- currentPage: 1,
- total: 0
- },
- discussForm: {},
- dialogVisiblesEdit: false,
- dialogVisiblesUser: false,
- editFlag: false,
- ontitle: '编辑议题',
// 弹框标题
title: '',
// 是否展示弹框
@@ -65,13 +63,6 @@
view: false,
// 查询信息
query: {},
- // 分页信息
- page: {
- pageSize: 10,
- pageSizes: [10, 20, 30, 50, 100],
- currentPage: 1,
- total: 0
- },
// 选择行
selectionList: [],
@@ -85,24 +76,13 @@
searchMenuSpan: 3,
menuWidth: 500,
column: [{
- label: '标题',
- prop: 'title',
- searchSpan: 4,
- span: 6,
- },
- {
- label: '参与人数',
- prop: 'topsCount',
- searchSpan: 4,
- display: false,
- span: 6,
- },
- {
label: '开启投票',
prop: 'openFlag',
type: 'radio',
button: true,
- span: 6,
+ row: true,
+ span: 12,
+ offset: 8,
value: 0,
dicData: [{
label: '开启',
@@ -121,7 +101,9 @@
prop: 'voteRestrictions',
type: 'radio',
button: true,
- span: 6,
+ row: true,
+ span: 12,
+ offset: 8,
dicData: [{
label: '一人一票',
value: 0
@@ -140,7 +122,9 @@
prop: 'signatureFlag',
type: 'radio',
button: true,
- span: 6,
+ row: true,
+ span: 12,
+ offset: 8,
dicData: [{
label: '不需要',
value: 0
@@ -154,12 +138,37 @@
trigger: "blur",
}, ],
value: 0
- }, {
+ },
+ {
+ label: '票数公开',
+ prop: 'voteNumberPublic',
+ type: 'radio',
+ button: true,
+ row: true,
+ span: 12,
+ offset: 8,
+ dicData: [{
+ label: '不需要',
+ value: 0
+ }, {
+ label: '需要',
+ value: 1
+ }],
+ rules: [{
+ required: true,
+ message: "请选择是否票数公开",
+ trigger: "blur",
+ }, ],
+ value: 0
+ },
+ {
label: '指定用户',
prop: 'appointUser',
type: 'radio',
button: true,
- span: 6,
+ row: true,
+ span: 12,
+ offset: 8,
dicData: [{
label: '不限制',
value: 0
@@ -175,107 +184,48 @@
value: 0
},
{
- label: "选择用户",
- prop: "userIds",
- hide: true,
- // type: "table",
display: false,
- span: 6,
- // labelWidth: 120,
- searchSpan: 4,
- search: true,
- children: {
- border: true,
- height: 400,
- searchShow: true,
- searchMenuSpan: 6,
- submitText: "确定",
- column: [{
- label: "姓名",
- prop: "name",
- search: true,
- searchSpan: 4,
- rules: [{
- required: true,
- message: "请输入姓名",
- trigger: "blur",
- }, ],
- },
- {
- label: "联系方式",
- prop: "phoneNumber",
- search: true,
- searchSpan: 4,
- rules: [{
- required: true,
- message: "请输入联系方式",
- trigger: "blur",
- }, ],
- },
- {
- label: "地址",
- search: true,
- searchSpan: 8,
- prop: "currentAddress",
- display: false
- },
- ],
- },
- page: {
- pageSize: 10,
- currentPage: 1,
- total: 0
- },
- formatter: (row) => {
- this.form.phoneNumber = row.phoneNumber
- return row.name
- },
- onLoad: ({
- page,
+ label: "选择用户",
+ prop: "userName",
+ tags: true,
+ type: "input",
+ multiple: true,
+ span: 12,
+ offset: 8,
+ remote: true,
+ hide: true,
+ row: true,
+ // dicUrl: `/api/blade-system/user/getUserlnfoByDistrictlds?districtlds={{}}`,
+ // props: {
+ // label: 'name',
+ // value: 'id',
+ // },
+ // dicData: [],
+ rules: [{
+ required: true,
+ message: '请输入姓名',
+ trigger: 'blur'
+ }],
+ focus: ({
value,
- data
- }, callback) => {
- //首次加载去查询对应的值
- if (value) {
- getHouseholdDetail(value).then(res => {
- var resData = res.data.data
- // 查询对应行数据
- callback(resData)
- return
- })
- }
- if (page) {
- this.loading = true
- var params = {
- ...data,
- townStreetCode: "361102005"
- }
- getHouseholdList(page.currentPage, page.pageSize, Object.assign(params)).then(res => {
- const resData = res.data.data
- var total = resData.total
- var data = resData.records
- this.loading = false
- this.selectionClear()
- //分页查询信息
- callback({
- total: total,
- data: data
- })
- })
- }
+ column
+ }) => {
+ // this.$message.success('focus事件查看控制台')
+ // console.log('获取焦点', value, column)
+ // this.$refs.userList && this.$refs.userList.resetForm()
+ this.$refs.userList.show(this.discussion.articleRange)
},
- props: {
- label: 'name',
- value: 'id'
- }
},
+
{
label: "截止时间",
- span: 6,
+ span: 12,
+ offset: 8,
+ row: true,
prop: "endTime",
type: "datetime",
- format: "yyyy-MM-dd hh:mm:ss",
- valueFormat: "yyyy-MM-dd hh:mm:ss",
+ format: "yyyy-MM-dd HH:mm:ss",
+ valueFormat: "yyyy-MM-dd HH:mm:ss",
// format: "yyyy-MM-dd hh:mm:ss",
// valueFormat: "yyyy-MM-dd hh:mm:ss",
rules: [{
@@ -287,39 +237,40 @@
]
},
// 表单列表
- disCussFrom: {},
+ froms: {
+ openFlag: 0,
+ voteRestrictions: 1,
+ signatureFlag: 1,
+ voteNumberPublic: 1,
+ appointUser: 0,
+
+ },
dialogVisibles: false,
articleId: '',
discussion: {},
+ id: "",
+ personList: [],
}
},
+ created() {
+ // this.getUserList()
+ },
+
mounted() {
},
+
watch: {
- 'disCussFrom.appointUser': {
+ 'froms.appointUser': {
handler(newData) {
- const column = this.findObject(this.option.column, "userIds");
+ const column = this.findObject(this.option.column, "userName")
if (newData == 1) {
column.display = true
+ // this.$refs.userList.show()
} else {
column.display = false
}
},
- },
- "disCussFrom.userIds": {
- // form是表单或者表格绑定的数据集,v-model='form'
- handler(val) {
- this.$nextTick(() => {
- console.log(this.$refs, 66666)
- // getHouseholdDetail(val).then(res => {
- // const data = res.data.data
- // this.form.phoneNumber = data.phoneNumber
- // this.form.currentAddress = data.currentAddress
- // })
- })
- },
- immediate: true,
},
},
computed: {
@@ -333,17 +284,53 @@
}
},
methods: {
- handleSubmit(row, done) {
- row.articleId = this.articleId
- row.eventType = 1
- addPd(row).then(
+ selectPersonList(personList) {
+ console.log(personList, "++++++++++++")
+ this.personList = personList
+ let nameList = personList.map(e => {
+ return e.name
+ })
+ this.froms.userName = nameList.join(",")
+ },
+ getuserInfoByDistrictId() {
+ getUserlnfoByDistrictlds(this.discussion.articleRange).then(res => {
+ const column = this.findObject(this.option.column, "userIds")
+ column.dicData = res.data.data.records
+ })
+ },
+ getUserList() {
+ let dicUrl = `/api/blade-household/household/selectHouseholdList?searchKey={{key}}&limit=20`
+ const column = this.findObject(this.option.column, "userIds")
+ column.dicUrl = dicUrl
+ },
+
+ handleSubmit(form, done) {
+ form.articleId = this.articleId
+ form.eventType = 1
+ form.userIds = this.personList.map(e => e.id).join(",")
+ // form.userIds = JSON.stringify(form.userIds)
+ if (form.appointUser == 0) {
+ form.userIds = ''
+ }
+
+ form.id = this.id
+
+ addPd(form).then(
() => {
- this.onLoad(this.discussion)
+ // this.onLoad(this.discussion)
this.$message({
type: "success",
message: "操作成功!",
})
done()
+ this.$refs.DisCussFrom && this.$refs.DisCussFrom.resetForm()
+ this.froms = {
+ openFlag: 0,
+ voteRestrictions: 1,
+ signatureFlag: 1,
+ appointUser: 0,
+
+ }
this.dialogVisibles = false
},
(error) => {
@@ -352,32 +339,77 @@
)
},
init(data) {
+ console.log("===init===", data)
+ this.$refs.DisCussFrom && this.$refs.DisCussFrom.resetForm()
this.dialogVisibles = true
- this.disCussFrom = {}
+ this.froms = {
+ openFlag: 0,
+ voteRestrictions: 1,
+ signatureFlag: 1,
+ appointUser: 0,
+ }
this.discussion = data
this.articleId = data.id
this.onLoad(data)
},
handleClose() {
+ console.log("******handleClose*******")
this.dialogVisibles = false
this.$refs.DisCussFrom && this.$refs.DisCussFrom.resetForm()
-
- console.log(this.$refs, 90999)
+ this.froms = {
+ openFlag: 0,
+ voteRestrictions: 1,
+ signatureFlag: 1,
+ appointUser: 0,
+ }
},
- onLoad(data, params = {
+ opens() {
+ console.log("******opens*******")
+ // this.dialogVisibles = false
+ this.$refs.DisCussFrom && this.$refs.DisCussFrom.resetForm()
+ this.froms = {
+ openFlag: 0,
+ voteRestrictions: 1,
+ signatureFlag: 1,
+ appointUser: 0,
+ }
+ },
+
+ onLoad(row, params = {
eventType: 1,
- articleId: data.id
+ articleId: row.id
}) {
- this.loading = true
+ // this.loading = true
getListPd(1, 10, Object.assign(params, this.query)).then(res => {
const data = res.data.data
- this.page.total = data.total
- this.disCussFrom = data.records[0]
- this.loading = false
+ this.$refs.DisCussFrom && this.$refs.DisCussFrom.resetForm()
+ if (data.records.length <= 0) {
+ console.log("--------onLoad------------")
+ this.id = ''
+ this.froms = {
+ openFlag: 0,
+ voteRestrictions: 1,
+ signatureFlag: 1,
+ appointUser: 0,
+ }
+ } else {
+ console.log(">>>>>onLoad", data.records[0])
+ this.froms = data.records[0]
+
+ this.id = data.records[0].id
+ formData = data.records[0]
+ if (this.froms && this.froms.userIds) {
+ this.froms.userIds = JSON.parse(this.froms.userIds)
+ }
+ }
+ // this.getuserInfoByDistrictId()
+
})
- }
+ },
+
+
}
}
</script>
--
Gitblit v1.9.3