From 437e6a0d54c975e01dd2265eb173984dc3718db0 Mon Sep 17 00:00:00 2001
From: xy <271556543@qq.com>
Date: Fri, 23 Feb 2024 16:47:14 +0800
Subject: [PATCH] =?UTF-8?q?=E6=98=8E=E6=97=A5=E8=B0=83=E4=BB=A4=E3=80=81?=
=?UTF-8?q?=E5=9B=BE=E5=88=97=E3=80=81=E6=96=87=E5=AD=97=E3=80=81=E7=9C=8B?=
=?UTF-8?q?=E6=9D=BF=E6=93=8D=E4=BD=9C=E6=9D=83=E9=99=90=E7=AD=89?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/api/other/index.js | 25 +
src/views/baseData/component/addGroup.vue | 652 +++++++++++++++++
src/views/baseData/groups.vue | 722 +++++++++++++++++++
src/views/bigScreen1/component/callback.vue | 51 ++
src/views/bigScreen1/component/doing.vue | 17 +-
src/views/bigScreen1/component/toDo.vue | 2 +-
src/views/component/table.vue | 1 +
src/views/order/component/createDispatch.vue | 12 +-
src/views/order/feedbackList.vue | 63 +-
9 files changed, 1522 insertions(+), 23 deletions(-)
create mode 100644 src/views/baseData/component/addGroup.vue
create mode 100644 src/views/baseData/groups.vue
diff --git a/src/api/other/index.js b/src/api/other/index.js
index eb9c4ae..782952a 100644
--- a/src/api/other/index.js
+++ b/src/api/other/index.js
@@ -1,5 +1,20 @@
import request from "@/utils/request";
+function customParamsSerializer(params) {
+ let result = '';
+ for (let key in params) {
+ if (params.hasOwnProperty(key)) {
+ if (Array.isArray(params[key])) {
+ params[key].forEach((item,index) => {
+ result += `${key}[${index}]=${item}&`;
+ });
+ } else {
+ result += `${key}=${params[key]}&`;
+ }
+ }
+ }
+ return result.slice(0, -1);
+}
export function getOaToken (isLoading=false) {
return request({
url: "/api/admin/oa/get-oa-token",
@@ -43,3 +58,13 @@ export function checkTransfer (params) {
isLoading: false
})
}
+
+export function sendSms (params) {
+ return request({
+ url: "/api/admin/sned_sms",
+ method: "get",
+ params,
+ paramsSerializer: customParamsSerializer,
+ isLoading: false
+ })
+}
diff --git a/src/views/baseData/component/addGroup.vue b/src/views/baseData/component/addGroup.vue
new file mode 100644
index 0000000..3256618
--- /dev/null
+++ b/src/views/baseData/component/addGroup.vue
@@ -0,0 +1,652 @@
+
+
+
diff --git a/src/views/baseData/groups.vue b/src/views/baseData/groups.vue
new file mode 100644
index 0000000..56196e3
--- /dev/null
+++ b/src/views/baseData/groups.vue
@@ -0,0 +1,722 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ inputStartHandler(e, select.filter[0])"
+ />
+ 至
+ inputEndHandler(e, select.filter[0])"
+ />
+
+
+
+
+
+
+
+
条件{{ index + 1 }}
+
+
+
+
+
+
+
+
+
+ inputStartHandler(e, item)"
+ />
+ 至
+ inputEndHandler(e, item)"
+ />
+
+
+
+
+
+
+ 新增一条
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
{
+ $router.push({
+ path: $route.path + '/detail/' + row.id,
+ });
+ }
+ "
+ @editor="
+ (row) => {
+ $refs['dialog'].setId(row.id);
+ $refs['dialog'].setType('editor');
+ $refs['dialog'].show();
+ }
+ "
+ >
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/bigScreen1/component/callback.vue b/src/views/bigScreen1/component/callback.vue
index 48f1f2d..9e8f92b 100644
--- a/src/views/bigScreen1/component/callback.vue
+++ b/src/views/bigScreen1/component/callback.vue
@@ -3,6 +3,7 @@ import { save, show, index, destroy } from "@/api/system/baseForm";
import { CreateDialog } from "@/utils/createDialog"
import { deepCopy } from "@/utils";
import { resolveFormInfo } from '@/utils/createTable';
+import { sendSms } from "@/api/other"
export default {
props: {
tableName: String,
@@ -10,6 +11,35 @@ export default {
render(h) {
let dialog = new CreateDialog(this,[
{
+ key: "telephone_group",
+ label: "通知号码组",
+ render: row => {
+ return (
+ {
+ this.smsForm.mobile = e.id_telephone_group_relations_group_id_relation?.map(i => i.name)}
+ }}>
+ {
+ this.telephoneGroups.map(i =>
+ (
+
+ {i.name}
+
+ {
+ i.id_telephone_group_relations_group_id_relation?.map((j, ji) => (j.name + ( ji === i.id_telephone_group_relations_group_id_relation.length - 1 ? '' : ',' )))
+ }
+
+
+ )
+ )
+ }
+
+ )
+ }
}
],{
width: "650px"
@@ -29,6 +59,13 @@ export default {
originalForm: {},
rules: {},
file: {},
+
+ telephoneGroups: [],
+ groupId: '',
+ smsForm: {
+ mobile: [],
+ content: ""
+ }
};
},
methods: {
@@ -99,6 +136,7 @@ export default {
},
submit() {
+ this.smsForm.content = this.form.content
if (this.type === "add") {
this.form.transfer_id = this.transfer_id;
if (this.form.hasOwnProperty("id")) {
@@ -121,8 +159,20 @@ export default {
});
this.$emit("refresh");
this.hidden();
+
+ if (this.smsForm.mobile && this.smsForm.mobile.length > 0 && this.smsForm.content) {
+ sendSms(this.smsForm)
+ }
})
},
+
+ async getTelephoneGroups () {
+ this.telephoneGroups = (await index({
+ table_name: "groups",
+ page: 1,
+ page_size: 999
+ })).data
+ }
},
computed: {
title () {
@@ -190,6 +240,7 @@ export default {
},
},
created() {
+ this.getTelephoneGroups()
resolveFormInfo(5,'form').then(res => this.formInfo = res)
}
};
diff --git a/src/views/bigScreen1/component/doing.vue b/src/views/bigScreen1/component/doing.vue
index 8499a27..48a166a 100644
--- a/src/views/bigScreen1/component/doing.vue
+++ b/src/views/bigScreen1/component/doing.vue
@@ -68,7 +68,7 @@
-
+
@@ -513,6 +513,21 @@ $list-height: calc(#{$container-height} - 5.33rem);
color: #333;
border-color: #a4ddf0;
}
+ &__callback {
+ font-size: 2.2rem;
+ margin-left: 6px;
+ animation: flash 5s infinite linear;
+ cursor: pointer;
+
+ @keyframes flash {
+ 0%,4%,100% {
+ opacity: 1;
+ }
+ 2% {
+ opacity: 0;
+ }
+ }
+ }
}
}
diff --git a/src/views/bigScreen1/component/toDo.vue b/src/views/bigScreen1/component/toDo.vue
index cfb6e62..3add933 100644
--- a/src/views/bigScreen1/component/toDo.vue
+++ b/src/views/bigScreen1/component/toDo.vue
@@ -68,7 +68,7 @@
-
+
diff --git a/src/views/component/table.vue b/src/views/component/table.vue
index 323ed15..161d570 100644
--- a/src/views/component/table.vue
+++ b/src/views/component/table.vue
@@ -396,6 +396,7 @@ export default {
};
},
methods: {
+
setTransferStatus (status,row) {
let copyRow = deepCopy(row);
copyRow.status = status;
diff --git a/src/views/order/component/createDispatch.vue b/src/views/order/component/createDispatch.vue
index 7681d36..59db52c 100644
--- a/src/views/order/component/createDispatch.vue
+++ b/src/views/order/component/createDispatch.vue
@@ -100,6 +100,7 @@
>模板选择
+
@@ -244,6 +245,7 @@ export default {
area: [],
type: [],
leibie: [],
+ name: ""
},
weather: [],
copyOriginalData: [],
@@ -1144,9 +1146,10 @@ export default {
},
select: {
handler: function (val) {
- if (val.area.length > 0 || val.type.length > 0) {
+ if (val.area.length > 0 || val.type.length > 0 || val.name) {
let list1 = [];
let list2 = [];
+ let list3 = [];
if (val.area.length > 0) {
list1 = this.equipments().filter((i) =>
val.area.find((j) => j === i.area)
@@ -1157,8 +1160,13 @@ export default {
val.type.find((j) => j === i.type)
);
}
+ if (val.name) {
+ list3 = this.equipments().filter((i) =>
+ new RegExp(val.name, "g").test(i.name)
+ );
+ }
this.data =
- Array.from(new Set([...list1, ...list2].map(JSON.stringify)))
+ Array.from(new Set([...list1, ...list2,...list3].map(JSON.stringify)))
.map(JSON.parse)
.map((i) => ({
equipment: i,
diff --git a/src/views/order/feedbackList.vue b/src/views/order/feedbackList.vue
index b086a95..2482697 100644
--- a/src/views/order/feedbackList.vue
+++ b/src/views/order/feedbackList.vue
@@ -287,33 +287,20 @@
}
"
>
-
+
驳回反馈
-
+
- 退回调令
@@ -381,6 +368,44 @@ export default {
};
},
methods: {
+ rejectFeedback (row) {
+ this.$confirm('确认进行此操作, 是否继续?','提示',{
+ confirmButtonText: '确定',
+ cancelButtonText: '取消',
+ type: 'warning'
+ }).then(_ => {
+ save({
+ table_name: 'feedbacks',
+ id: row.id,
+ status: 0
+ }).then(_ => {
+ this.$message({
+ type: "success",
+ message: "操作成功"
+ })
+ this.$refs['xyTable'].getTableData()
+ })
+ })
+ },
+
+ cancelTransfer (row) {
+ this.$confirm('确认进行此操作, 是否继续?','提示',{
+ confirmButtonText: '确定',
+ cancelButtonText: '取消',
+ type: 'warning'
+ }).then(_ => {
+ save({
+ table_name: 'transfers',
+ id: row.transfer_id,
+ status: 1
+ }).then(_ => {
+ this.$message({
+ type: "success",
+ message: "操作成功"
+ })
+ })
+ })
+ },
setTransferStatus (status,row) {
let copyRow = deepCopy(row);
copyRow.status = status;