diff --git a/src/assets/css/index.css b/src/assets/css/index.css index bf0a14fa16ca3621e6eea3b435f812c6f4e4d261..e6911d00ba61de35387947de50487b40f4f8bd8e 100644 --- a/src/assets/css/index.css +++ b/src/assets/css/index.css @@ -3,22 +3,19 @@ } /* 新增按钮颜色 */ - .form-group .el-button--primary { background-color: #264dd9 !important; border-color: #264dd9 !important; } /* 返回按钮颜色 */ - -.from_return > .el-button--primary { +.from_return>.el-button--primary { background-color: #edf0ff !important; border-color: #edf0ff !important; color: #264dd9 !important; } /* 取消按钮颜色 */ - .form_c { background-color: #dde4ff !important; border-color: #dde4ff !important; @@ -26,7 +23,6 @@ } /* 确定按钮颜色 */ - .form_t { background-color: #264dd9 !important; border-color: #264dd9 !important; @@ -34,7 +30,6 @@ } /* 搜索框颜色 */ - .form-group .el-input__inner { border-radius: 28px !important; border: 1px solid #bcc1d0 !important; @@ -50,7 +45,6 @@ } /* 多行文本框样式 */ - .jbxx_desc textarea { height: 150px !important; border-radius: 8px !important; @@ -60,33 +54,27 @@ } /* 面包屑文字大小 */ - .el-breadcrumb { font-size: 14px; color: #898d9e; } /* 编辑颜色*/ - .primary-edit { color: #264dd9; cursor: pointer; } /* 删除颜色 */ - .primary-del { color: #264dd9; cursor: pointer; } -.space_bet { -} +.space_bet {} /* reset */ - -html { -} +html {} html, body { @@ -137,7 +125,6 @@ div { /* reset end */ /* common */ - /* #app { height: 100%; overflow: hidden; @@ -171,7 +158,7 @@ div { align-items: flex-start; } -.ss_card > .sc_left_container { +.ss_card>.sc_left_container { width: 6rem; height: 6rem; flex-shrink: 0; @@ -180,19 +167,19 @@ div { font-size: 0; } -.ss_card > .sc_right_container { +.ss_card>.sc_right_container { width: calc(100% - 7rem); flex-grow: 1; margin-left: 1.2rem; } -.ss_card > .sc_right_container > .sc_title { +.ss_card>.sc_right_container>.sc_title { font-size: 1.6rem; font-weight: bold; line-height: 2.6rem; } -.ss_card > .sc_right_container > .sc_info { +.ss_card>.sc_right_container>.sc_info { display: flex; justify-content: space-between; } @@ -208,7 +195,6 @@ div { } /* 设置抽屉的样式 */ - .el-drawer__header { display: none; } @@ -220,13 +206,13 @@ div { position: relative; } -.from_return > .el-button--primary { +.from_return>.el-button--primary { position: absolute; top: 15px; left: 20px; } -.from_return > span { +.from_return>span { color: #1a2236; font-size: 16px; } @@ -253,7 +239,6 @@ div { } /* 设置提示弹窗的样式 */ - .el-dialog { border-radius: 6px; margin-top: 240px; @@ -297,7 +282,7 @@ div { font-size: 16px; color: #404a62; text-align: center; - padding: 0 16px; + padding: 0 20px; line-height: 1; } @@ -314,7 +299,6 @@ div { } /* 设置tab切换的样式 */ - .el-tabs__item.is-disabled { color: #8890a7 !important; } @@ -328,7 +312,6 @@ div { /* .el-tabs__nav-scroll { height: 35px; } */ - .el-tabs__nav-scroll .el-tabs__nav { height: 40px; } @@ -358,7 +341,6 @@ div { } /* 设置tree的样式 */ - /* .el-tree { position: static!important; } @@ -367,10 +349,9 @@ div { } .el-tree-node__content:hover { background-image: linear-gradient(90deg, - rgba(255, 255, 255, 0.05) 83%, - rgba(0, 0, 0, 0.05) 86%); + rgba(255, 255, 255, 0.05) 83%, + rgba(0, 0, 0, 0.05) 86%); } */ - /* .usrrole .el-tree-node:focus>.el-tree-node__content{ background: rgb(248, 249, 253) !important; } @@ -412,9 +393,7 @@ border-radius:8px; border-bottom-left-radius:0; border-bottom-right-radius:0; } */ - /* 左右布局 */ - .flex { height: 100%; display: -webkit-box; @@ -480,7 +459,6 @@ border-radius:8px; } */ /* 设置switch的样式 */ - .switchStyle1 .el-switch__label { position: absolute; display: none; @@ -488,7 +466,6 @@ border-radius:8px; } /*打开时文字位置设置*/ - .switchStyle1 .el-switch__label--right { z-index: 1; right: -10px; @@ -496,7 +473,6 @@ border-radius:8px; } /*关闭时文字位置设置*/ - .switchStyle1 .el-switch__label--left { z-index: 1; left: 28px; @@ -562,7 +538,6 @@ border-radius:8px; } /* 自定义图表提示框小三角 */ - /* .div-tip-warp { position: relative; line-height: 22px; @@ -583,7 +558,6 @@ border-radius:8px; .triangle-position { margin-left: 35px; } */ - .el-input__inner { border-radius: 6px; } @@ -607,7 +581,6 @@ border-radius:8px; 下拉选样式 此处勿删,apaasV3下拉选择样式统一用这个 */ - .el-select-dropdown { border-radius: 8px; } @@ -648,7 +621,6 @@ border-radius:8px; } /* 单选激活样式 */ - .el-radio__input .el-radio__inner { border-color: #dadee7; background-color: #fff; @@ -661,7 +633,7 @@ border-radius:8px; background-color: #fff; } -.el-radio__input.is-checked + .el-radio__label { +.el-radio__input.is-checked+.el-radio__label { color: #1a2236; font-weight: 700; } @@ -680,7 +652,6 @@ border-radius:8px; } /* 面包屑样式 */ - .bread_crumb { margin: 20px; font-size: 14px; @@ -708,7 +679,6 @@ border-radius:8px; } /* 应用超市详情页公共样式 */ - .sevice_detail { max-width: 1340px; padding-top: 1px; @@ -716,19 +686,18 @@ border-radius:8px; } /* common */ - -.apass_breadcrumb > .el-breadcrumb { +.apass_breadcrumb>.el-breadcrumb { padding: 10px 0; } -.apass_breadcrumb > .el-breadcrumb .el-breadcrumb__inner { +.apass_breadcrumb>.el-breadcrumb .el-breadcrumb__inner { font-size: 14px; font-weight: 400; color: #898d9e; line-height: 23px; } -.apass_breadcrumb > .el-breadcrumb .el-breadcrumb__item:last-child .el-breadcrumb__inner { +.apass_breadcrumb>.el-breadcrumb .el-breadcrumb__item:last-child .el-breadcrumb__inner { color: #242c43; font-weight: normal; } @@ -817,7 +786,7 @@ border-radius:8px; border-color: #ebeef5; } -.apass_table .el-table th > .cell { +.apass_table .el-table th>.cell { color: #1a2236; } @@ -896,7 +865,7 @@ border-radius:8px; border-color: #515fe7; } -.apass_checkbox .el-checkbox__input.is-checked + .el-checkbox__label { +.apass_checkbox .el-checkbox__input.is-checked+.el-checkbox__label { color: #58617a; } @@ -944,7 +913,6 @@ border-radius:8px; } /* 详情页公共样式 by xuyiming */ - .apaas_detail_container { padding: 0 20px; } @@ -980,7 +948,7 @@ border-radius:8px; margin-top: 50px; } -.apaas_detail_container .detail_action .el-button + .el-button { +.apaas_detail_container .detail_action .el-button+.el-button { margin-left: 30px; } @@ -1051,7 +1019,7 @@ border-radius:8px; width: 124px; } -.apaas_steps .apaas_step .apaas_step_action .el-button + .el-button { +.apaas_steps .apaas_step .apaas_step_action .el-button+.el-button { margin-left: 20px; } @@ -1064,7 +1032,7 @@ border-radius:8px; font-size: 0; } -.filter_list > .filter_item { +.filter_list>.filter_item { display: flex; align-items: center; margin: 0 34px 16px 0; @@ -1075,7 +1043,7 @@ border-radius:8px; vertical-align: middle; } */ -.filter_list > .filter_item > .filter_title { +.filter_list>.filter_item>.filter_title { text-align: right; font-size: 14px; color: #242c43; @@ -1105,14 +1073,14 @@ border-radius:8px; text-align: right; } -.filter_action > .el-button { +.filter_action>.el-button { /* min-width: 90px; */ height: 36px; margin-top: 16px; padding: 12px 17px; } -.filter_action > .el-button + .el-button { +.filter_action>.el-button+.el-button { margin-left: 10px; } @@ -1151,7 +1119,7 @@ border-radius:8px; margin-top: 5px; } -.meassage_detail_dialog .detail_item .full_content > .apaas_scroll { +.meassage_detail_dialog .detail_item .full_content>.apaas_scroll { height: 176px; overflow: auto; } @@ -1172,7 +1140,6 @@ border-radius:8px; /* form_content */ - .from_content1 { width: calc(100% - 40px); background-color: rgba(255, 255, 255, 1); @@ -1213,7 +1180,6 @@ border-radius:8px; } /* 时间控件样式 */ - .el-picker-panel { background-color: #fff !important; border-radius: 8px !important; @@ -1227,10 +1193,9 @@ border-radius:8px; background-color: #fff; } -/* -.el-picker-panel__footer { - border-top: 1px solid #3f4864 !important; - background-color: #242c43 !important; +/* .el-picker-panel__footer { + border-top: 1px solid #3f4864 !important; + background-color: #242c43 !important; } */ .el-picker-panel__icon-btn { @@ -1294,7 +1259,7 @@ border-radius:8px; .el-time-panel { border-radius: 8px !important; /* border: 1px solid #3f4864 !important; - background-color: #242c43 !important; */ + background-color: #242c43 !important; */ } .el-time-panel__footer { @@ -1315,8 +1280,8 @@ border-radius:8px; } .el-time-spinner__item:hover:not(.disabled):not(.active) { - /* background-color: #264dd9 !important; */ - /* border-radius: 12px !important; */ + /* background-color: #264dd9 !important; + border-radius: 12px !important; */ color: #f4f7fc; } @@ -1352,7 +1317,6 @@ border-radius:8px; } /* table select window */ - .el-checkbox__input.is-checked .el-checkbox__inner, .el-checkbox__input.is-indeterminate .el-checkbox__inner { background-color: #3759be; @@ -1380,7 +1344,7 @@ border-radius:8px; } .el-select .el-input .el-select__caret { - color: #515fe7; + color: #909bb6; } .el-input-number__decrease, @@ -1548,6 +1512,7 @@ border-radius:8px; margin-right: 10px; overflow: hidden; } + .flex_right { height: calc(100% - 16px); flex: 1; @@ -1565,36 +1530,44 @@ border-radius:8px; width: 6px; height: 6px; } + .tree::-webkit-scrollbar-thumb { background: #bcc1d0; border-radius: 10px; height: 6px; } + .tree::-webkit-scrollbar-track { background: transparent; border-radius: 2px; } + .font_bold { font-size: 18px; color: #202531; font-weight: bold; margin-bottom: 20px; } + .header_info { font-size: 14px; color: #404a62; padding-left: 20px; } + .fr { float: right; } + .pl-1 { padding-left: 1rem; } + .label-text { font-size: 14px; color: #404a62; } + .icon_eye { font-size: 12px; color: #a9b1c7; @@ -1602,14 +1575,17 @@ border-radius:8px; vertical-align: baseline; cursor: pointer; } + /* 可点击文字颜色、指针样式 */ .can_click_text { cursor: pointer; color: #3759be; } + .can_click_text:hover { color: #738bd2; } + .can_click_text:active { color: #2c4798; } @@ -1618,10 +1594,13 @@ border-radius:8px; background-color: #f7f7f9; font-size: 14px; color: #404a62; - padding: 5px; + padding: 0 8px; text-align: left; - margin: 20px 0; + margin: 16px 0; + line-height: 38px; + border-radius: 4px; } + .danger_info { color: #d75138; } @@ -1634,9 +1613,11 @@ border-radius:8px; border: solid 1px #b0bee8; color: #3759be; } + .register_btn .icon-arrow-right { margin-left: 39px; } + .forget_psd { font-size: 14px; color: #3759be; @@ -1658,4 +1639,4 @@ border-radius:8px; margin-left: 8px; background-image: url("../imgs/ic_tips.png"); background-size: contain; -} +} \ No newline at end of file diff --git a/src/page/main/forewarning/list/index.vue b/src/page/main/forewarning/list/index.vue index a3133cc869236ddeec611f4ff0c127524740f7a5..9ccecf8e4c596f2787c291c179b068d2a4122a83 100644 --- a/src/page/main/forewarning/list/index.vue +++ b/src/page/main/forewarning/list/index.vue @@ -123,75 +123,59 @@ - + - - + -
确定要删除此字典值吗?
+ :before-close="cancelCloseWarningDialog"> + + + + + + + + -
--> + @@ -201,11 +185,14 @@ import { ElMessage } from "element-plus"; import axios from "@/request/http.js"; import { Search } from "@element-plus/icons-vue"; import bgBreadcrumb from "@/components/bg-breadcrumb.vue"; +import userInputTable from "./user-input-table.vue"; const bgForm = ref(null); const dataTable = ref(null); +const closeForm = ref(null); +const userTable = ref(null); +const pushForm = ref(null); const state = reactive({ - bgForm, warningTypes: [ { name: "全部", @@ -338,25 +325,28 @@ const state = reactive({ limit: 10, }, // 表格筛选项 actionRow: null, // 当前操作的数据 - dialogDelete: false, // 删除弹窗 - addType: 0, // - addDialog: false, - formData: { - name: "", - describe: "", - state: 1, - p_dict_id: "", + closeWarningDialog: false, // 删除弹窗 + closeFormData: { + close_notes: "", + close_remind: false, + }, + closeRules: { + close_notes: [{ required: true, message: "请输入关闭备注", trigger: "blur" }], + }, + pushDialog: false, + userData: [], + pushFormData: { + method: [], }, - rules: { - name: [{ required: true, message: "请输入名称", trigger: "blur" }], - describe: [ - { required: true, message: "请输入描述", trigger: "blur" }, - { max: 200, message: "描述最大为200字", trigger: "blur" }, - ], - state: [{ required: true, message: "请选择是否启用", trigger: "change" }], + pushRules: { + method: [{ type: "array", required: true, message: "请最少选择一种推送方式", trigger: "change" }], }, }); +const userTableFlag = computed(() => { + return !!state.pushDialog; +}); + const selectRows = (data) => { state.selected = data.selection; }; @@ -424,7 +414,7 @@ const getTableRows = () => { notice_people_num: 2, push_times: 2, last_push_time: "2020-01-01 00:00:00", - state: 1, + state: 0, }, { id: 2, @@ -474,19 +464,87 @@ const batchPush = () => { const pushWarning = (row) => { state.actionRow = row; console.log("推送提醒"); + state.userData = [ + { + account: 1, + name: "张一", + mobile: "13111111111", + }, + { + account: 2, + name: "张二二", + mobile: "13222222222", + }, + { + account: 4, + name: "张四三", + mobile: "13443434344", + }, + ]; + state.pushDialog = true; }; // 推送提醒 +const changeData = (data) => { + state.userData = data.data; +}; + +const cancelPushDialog = () => { + pushForm.value.resetFields(); + state.pushDialog = false; +}; // 预警推送弹窗取消按钮:重置表单 + +const pushConfirm = () => { + pushForm.value.validate((valid) => { + if (valid) { + console.log(state.actionRow.id, state.userData); + console.log(state.pushFormData); + cancelPushDialog(); + } + }); +}; + const closeWarning = (row) => { state.actionRow = row; + state.closeWarningDialog = true; console.log("关闭预警"); }; // 关闭预警 +const cancelCloseWarningDialog = () => { + closeForm.value.resetFields(); + state.closeWarningDialog = false; +}; // 关闭预警弹窗取消按钮:重置表单 + +const confirmClose = () => { + closeForm.value.validate((valid) => { + if (valid) { + console.log(state.actionRow.id); + console.log(state.closeFormData); + cancelCloseWarningDialog(); + } + }); +}; // 关闭预警弹窗确定按钮:提交表单 + onBeforeMount(() => { getTableRows(); }); -const { headers, tableRows, tableTotal, filter, warningTypes, warningTargets, riskLevels, stateOptions } = - toRefs(state); +const { + headers, + tableRows, + tableTotal, + filter, + warningTypes, + warningTargets, + riskLevels, + stateOptions, + closeWarningDialog, + closeFormData, + closeRules, + pushDialog, + userData, + pushFormData, + pushRules, +} = toRefs(state); diff --git a/src/page/main/forewarning/list/user-input-table.vue b/src/page/main/forewarning/list/user-input-table.vue new file mode 100644 index 0000000000000000000000000000000000000000..86288fcac84fe99da0f7c0c58fe1892070894155 --- /dev/null +++ b/src/page/main/forewarning/list/user-input-table.vue @@ -0,0 +1,269 @@ + + + + +