hookehuyr

✨ feat(节点属性消息配置): 节点属性提交按钮联动消息通知发送关系

...@@ -267,7 +267,7 @@ ...@@ -267,7 +267,7 @@
267 <el-button @click="onConfirmMoreAttr(state.more_attr_data)" type="primary" color="#009688" style="width: 100%;">完成</el-button> 267 <el-button @click="onConfirmMoreAttr(state.more_attr_data)" type="primary" color="#009688" style="width: 100%;">完成</el-button>
268 <div class="more-attr-switch"> 268 <div class="more-attr-switch">
269 <div class="more-attr-title">{{ state.more_attr_data.label }}</div> 269 <div class="more-attr-title">{{ state.more_attr_data.label }}</div>
270 - <div><el-switch v-model="state.more_attr_data.show" /></div> 270 + <div><el-switch v-model="state.more_attr_data.show" @change="handleMoreAttr(state.more_attr_data)" /></div>
271 </div> 271 </div>
272 <p class="more-attr-tip">{{ state.more_attr_data.desc }}</p> 272 <p class="more-attr-tip">{{ state.more_attr_data.desc }}</p>
273 <div v-if="state.more_attr_data.showBtn"> 273 <div v-if="state.more_attr_data.showBtn">
...@@ -276,12 +276,33 @@ ...@@ -276,12 +276,33 @@
276 </div> 276 </div>
277 <div v-if="state.more_attr_data.is_node"> 277 <div v-if="state.more_attr_data.is_node">
278 <p style="font-size: 14px; font-weight: bold;">消息配置</p> 278 <p style="font-size: 14px; font-weight: bold;">消息配置</p>
279 - <div style="display: flex; justify-content: space-between; align-items: center;"> 279 + <p style="font-size: 13px; color: #525967;">系统默认会发消息通知各节点负责人,可以按需设置节点负责人以外的用户获取消息提醒</p>
280 - <div style="font-size: 0.9rem;">开关</div> 280 + <!-- <div style="display: flex; justify-content: space-between; align-items: center;">
281 + <div style="font-size: 0.9rem;">打开配置</div>
281 <div><el-switch v-model="state.more_attr_data.msg_open" /></div> 282 <div><el-switch v-model="state.more_attr_data.msg_open" /></div>
283 + </div> -->
284 + <div class="msg-config">
285 +
286 + <div style="margin-top: 1rem; margin-left: 0.5rem;">
287 + <div style="font-size: 14px;">接收类型</div>
288 + <!-- <el-checkbox-group v-model="state.more_attr_data.msg_type" style="display: flex; flex-direction: column;">
289 + <el-checkbox label="站内信"></el-checkbox>123
290 + <el-checkbox label="微信"></el-checkbox>
291 + </el-checkbox-group> -->
292 + <div style="display: flex; justify-content: space-between; align-items: center;">
293 + <div style="font-size: 14px; margin-left: 5px;">站内信</div>
294 + <div><el-switch v-model="state.more_attr_data.msg_send_mail" /></div>
282 </div> 295 </div>
283 - <div> 296 + <div v-if="state.more_attr_data.msg_send_mail" style="color: red; font-size: 13px; margin-left: 5px;">站内信内容说明</div>
284 - <div style="font-size: 0.9rem; margin: 0.5rem 0;">接收对象(整个组织用户范围)</div> 297 + <div style="display: flex; justify-content: space-between; align-items: center;">
298 + <div style="font-size: 14px; margin-left: 5px;">微信</div>
299 + <div><el-switch v-model="state.more_attr_data.msg_send_weixin" /></div>
300 + </div>
301 + <div v-if="state.more_attr_data.msg_send_weixin" style="color: red; font-size: 13px; margin-left: 5px;">微信内容说明</div>
302 + </div>
303 +
304 + <div style="margin-left: 0.5rem;">
305 + <div style="font-size: 14px; margin: 0.5rem 0;">接收对象</div>
285 <div class="flow-tag__wrapper" @click="openNodeMsgUserForm"> 306 <div class="flow-tag__wrapper" @click="openNodeMsgUserForm">
286 <el-tag 307 <el-tag
287 v-if="state.more_attr_data.msg_user.length" 308 v-if="state.more_attr_data.msg_user.length"
...@@ -297,12 +318,6 @@ ...@@ -297,12 +318,6 @@
297 <div v-else class="text-empty">请选择成员</div> 318 <div v-else class="text-empty">请选择成员</div>
298 </div> 319 </div>
299 </div> 320 </div>
300 - <div>
301 - <div style="font-size: 0.9rem; margin: 0.5rem 0;">消息类型(站内信、微信)</div>
302 - <el-checkbox-group v-model="state.more_attr_data.msg_type">
303 - <el-checkbox label="站内信"></el-checkbox>
304 - <el-checkbox label="微信"></el-checkbox>
305 - </el-checkbox-group>
306 </div> 321 </div>
307 </div> 322 </div>
308 </div> 323 </div>
...@@ -753,7 +768,8 @@ export default { ...@@ -753,7 +768,8 @@ export default {
753 is_node: false, 768 is_node: false,
754 msg_open: false, 769 msg_open: false,
755 msg_user: [], 770 msg_user: [],
756 - msg_type: [], 771 + msg_send_mail: false,
772 + msg_send_weixin: false,
757 }, 773 },
758 node_name: '', // 节点名称 774 node_name: '', // 节点名称
759 node_idx: null, // 节点index 775 node_idx: null, // 节点index
...@@ -1736,7 +1752,8 @@ export default { ...@@ -1736,7 +1752,8 @@ export default {
1736 attr.data.forEach(ele => { 1752 attr.data.forEach(ele => {
1737 ele.msg_open = false; 1753 ele.msg_open = false;
1738 ele.msg_user = [{ "id": 107697, "type": "dept", "name": "传灯组" }] 1754 ele.msg_user = [{ "id": 107697, "type": "dept", "name": "传灯组" }]
1739 - ele.msg_type = [] 1755 + ele.msg_send_mail = true;
1756 + ele.msg_send_weixin = false;
1740 }) 1757 })
1741 } 1758 }
1742 }); 1759 });
...@@ -2507,6 +2524,18 @@ export default { ...@@ -2507,6 +2524,18 @@ export default {
2507 state.preview_form_url = null; 2524 state.preview_form_url = null;
2508 } 2525 }
2509 2526
2527 + /**
2528 + * 节点属性开关操作回调
2529 + * 关闭后 同时关闭消息通知
2530 + * @param data
2531 + */
2532 + const handleMoreAttr = (data) => {
2533 + if (!data.show) {
2534 + data.msg_send_mail = false;
2535 + data.msg_send_weixin = false;
2536 + }
2537 + }
2538 +
2510 return { 2539 return {
2511 state, 2540 state,
2512 rules, 2541 rules,
...@@ -2554,6 +2583,8 @@ export default { ...@@ -2554,6 +2583,8 @@ export default {
2554 2583
2555 handleNodeNameChange, 2584 handleNodeNameChange,
2556 2585
2586 + handleMoreAttr,
2587 +
2557 openUserForm, 2588 openUserForm,
2558 openNextStepUserForm, 2589 openNextStepUserForm,
2559 openNodeMsgUserForm, 2590 openNodeMsgUserForm,
......