协同宣发

This commit is contained in:
liuye
2023-06-27 09:57:06 +08:00
parent 0b2b613a7d
commit 15ca20f906
2 changed files with 37 additions and 5 deletions

View File

@@ -20,14 +20,14 @@
<!-- <el-radio label="2">按网格选择</el-radio> --> <!-- <el-radio label="2">按网格选择</el-radio> -->
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<el-form-item label="选择群主" v-if="form.sendScope !== '0'" prop="wxGroupsName" style="width: 100%;" :rules="[{ required: true, message: '请选择选择群主', trigger: 'change' }]"> <el-form-item label="选择群主" v-if="form.sendScope !== '0' && user.info.wxMainDepartmentId" prop="wxGroupsName" style="width: 100%;" :rules="[{ required: true, message: '请选择选择群主', trigger: 'change' }]" >
<ai-picker <ai-picker
:instance="instance" :instance="instance"
multiple multiple
:dialogTitle="form.sendScope === '2' ? '选择网格' : '选择部门'" :dialogTitle="form.sendScope === '2' ? '选择网格' : '选择部门'"
:ops="{label: form.sendScope === '2' ? 'girdName' : 'name'}" :ops="{label: form.sendScope === '2' ? 'girdName' : 'name'}"
:pageTitle="form.sendScope === '2' ? '网格' : '部门'" :pageTitle="form.sendScope === '2' ? '网格' : '部门'"
:action="form.sendScope === '1' ? '/app/wxcp/wxdepartment/departList' : '/app/appgirdinfo/girdList'" :action="form.sendScope === '1' ? `/app/wxcp/wxdepartment/departList?id=${user.info.wxMainDepartmentId}` : '/app/appgirdinfo/girdList'"
v-model="form.filterCriteria" v-model="form.filterCriteria"
@pick="onPick" @pick="onPick"
@change="onSelcetChange"> @change="onSelcetChange">
@@ -51,6 +51,18 @@
</el-tooltip> </el-tooltip>
</div> </div>
</el-form-item> </el-form-item>
<el-form-item label="选择群主" v-if="!user.info.wxMainDepartmentId" prop="wxGroupsName" style="width: 100%;" :rules="[{ required: true, message: '请选择选择群主', trigger: 'change' }]" >
<div class="select-div" @click="selectDept">请选择</div>
<div class="tips">
<p>消息预计送达居民群数</p>
<span>{{ groupLen }}</span>
<el-tooltip
placement="top"
content="将由指定群主发送给TA作为群主的所有的群由于企业微信限制当超过1000个时将只发送到最近活跃的1000个群">
<i class="iconfont iconModal_Warning"></i>
</el-tooltip>
</div>
</el-form-item>
<el-form-item label="发送内容" prop="content" style="width: 100%;" :rules="[{ required: true, message: '请输入发送内容', trigger: 'blur' }]"> <el-form-item label="发送内容" prop="content" style="width: 100%;" :rules="[{ required: true, message: '请输入发送内容', trigger: 'blur' }]">
<el-input size="small" type="textarea" :rows="6" maxlength="1300" show-word-limit placeholder="请输入文本内容..." v-model="form.content"></el-input> <el-input size="small" type="textarea" :rows="6" maxlength="1300" show-word-limit placeholder="请输入文本内容..." v-model="form.content"></el-input>
<div class="add"> <div class="add">
@@ -700,6 +712,10 @@ export default {
}) })
}, },
selectDept() {
return this.$message.error(`您未在系统中关联‘主部门’,请联系管理员处理`)
},
cancel(isRefresh) { cancel(isRefresh) {
this.$emit('change', { this.$emit('change', {
type: 'list', type: 'list',
@@ -967,5 +983,17 @@ export default {
font-style: normal; font-style: normal;
} }
} }
.select-div {
width: 100%;
height: 32px;
line-height: 32px;
border-radius: 4px;
border: 1px solid #ddd;
padding: 0 15px;
box-sizing: border-box;
font-size: 14px;
color: #999;
cursor: pointer;
}
} }
</style> </style>

View File

@@ -41,12 +41,12 @@
@change="search.current = 1, getList()" @change="search.current = 1, getList()"
placeholder="选择群发结束日期"> placeholder="选择群发结束日期">
</el-date-picker> </el-date-picker>
<ai-user-selecter :instance="instance" @change="onUserChange" :isMultiple="false" v-model="user"> <ai-user-selecter :instance="instance" @change="onUserChange" :isMultiple="false" v-model="userList" :actions="{tree: `/app/wxcp/wxdepartment/departList?id=${user.info.wxMainDepartmentId}`}" >
<div class="userSelcet"> <div class="userSelcet">
<span style="color: #606266;" v-if="search.createUserId">{{ name }}</span> <span style="color: #606266;" v-if="search.createUserId">{{ name }}</span>
<span v-else>创建人</span> <span v-else>创建人</span>
<i class="el-icon-arrow-up" v-if="!search.createUserId"></i> <i class="el-icon-arrow-up" v-if="!search.createUserId"></i>
<i class="el-icon-circle-close" v-if="search.createUserId" @click.stop="user = [], search.createUserId = '', name = '', search.current = 1, getList()"></i> <i class="el-icon-circle-close" v-if="search.createUserId" @click.stop="userList = [], search.createUserId = '', name = '', search.current = 1, getList()"></i>
</div> </div>
</ai-user-selecter> </ai-user-selecter>
</template> </template>
@@ -96,6 +96,7 @@
</template> </template>
<script> <script>
import { mapState } from 'vuex'
export default { export default {
name: 'List', name: 'List',
@@ -119,7 +120,7 @@
currIndex: '1', currIndex: '1',
name: '', name: '',
isShow: false, isShow: false,
user: [], userList: [],
tableData: [], tableData: [],
loading: false, loading: false,
total: 0, total: 0,
@@ -146,6 +147,9 @@
] ]
} }
}, },
computed: {
...mapState(['user']),
},
created () { created () {
this.dict.load('mstStatus', 'mstSendType', 'mstTag').then(() => { this.dict.load('mstStatus', 'mstSendType', 'mstTag').then(() => {