From aad1dc20370ca3d740964326ef7ba2d91cc40a2e Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期一, 06 三月 2023 12:23:47 +0800
Subject: [PATCH] yxh
---
ruoyi-ui/src/views/smartor/ivrlibscript/index.vue | 380 ++
ruoyi-ui/src/views/smartor/ivrflow/index.vue | 428 ++
ruoyi-ui/src/views/smartor/ivrlibscriptmodel/index.vue | 409 ++
ruoyi-ui/src/views/smartor/ivrscene/index.vue | 470 +++
ruoyi-ui/src/views/smartor/ivrflownode/index.vue | 459 +++
ruoyi-ui/src/views/smartor/smsparam/index.vue | 321 ++
ruoyi-ui/src/api/smartor/ivrlibscriptmodel.js | 44
ruoyi-ui/src/api/smartor/smsparam.js | 44
ruoyi-ui/src/views/smartor/smsaccount/index.vue | 357 ++
ruoyi-ui/src/views/smartor/smsrecords/index.vue | 544 +++
ruoyi-ui/src/api/smartor/ivrflownode.js | 44
ruoyi-ui/src/views/smartor/ivrlibintentcategory/index.vue | 310 ++
ruoyi-ui/src/api/smartor/ivrflownodebranch.js | 44
ruoyi-ui/src/views/smartor/ivrscenecategory/index.vue | 310 ++
ruoyi-ui/src/views/smartor/ivrlibintent/index.vue | 344 ++
ruoyi-ui/src/views/smartor/ivrlibscriptcategory/index.vue | 310 ++
ruoyi-ui/src/api/smartor/smsaccount.js | 44
ruoyi-ui/src/views/smartor/ivrglobalconfig/index.vue | 389 ++
ruoyi-ui/src/views/smartor/ivrexecuteconfig/index.vue | 398 ++
ruoyi-ui/src/api/smartor/ivrexecuteconfig.js | 44
ruoyi-ui/src/api/smartor/ivrlibintentcategory.js | 44
ruoyi-ui/src/api/smartor/ivrglobalconfig.js | 44
ruoyi-ui/src/api/smartor/ivrrecall.js | 44
ruoyi-ui/src/api/smartor/smsrecords.js | 44
ruoyi-ui/src/api/smartor/ivrscript.js | 44
ruoyi-ui/src/views/smartor/ivrintent/index.vue | 476 +++
ruoyi-ui/src/views/smartor/ivrscriptmodel/index.vue | 423 ++
ruoyi-ui/src/views/smartor/ivrflownodebranch/index.vue | 411 ++
ruoyi-ui/src/api/smartor/ivrflow.js | 44
ruoyi-ui/src/api/smartor/smstemplet.js | 44
ruoyi-ui/src/api/smartor/ivrlibintent.js | 44
ruoyi-ui/src/views/smartor/ivrscript/index.vue | 411 ++
ruoyi-ui/src/api/smartor/ivrscene.js | 44
ruoyi-ui/src/api/smartor/ivrscenecategory.js | 44
ruoyi-ui/src/api/smartor/ivrscriptmodel.js | 44
ruoyi-ui/src/api/smartor/ivrlibscriptcategory.js | 44
ruoyi-ui/src/api/smartor/ivrintent.js | 44
ruoyi-ui/src/views/smartor/ivrrecall/index.vue | 355 ++
ruoyi-ui/src/views/smartor/smstemplet/index.vue | 310 ++
ruoyi-ui/src/api/smartor/ivrlibscript.js | 44
40 files changed, 8,695 insertions(+), 0 deletions(-)
diff --git a/ruoyi-ui/src/api/smartor/ivrexecuteconfig.js b/ruoyi-ui/src/api/smartor/ivrexecuteconfig.js
new file mode 100644
index 0000000..16d0dcc
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/ivrexecuteconfig.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨAI澶栧懠鎵ц閰嶇疆鍒楄〃
+export function listIvrexecuteconfig(query) {
+ return request({
+ url: '/smartor/ivrexecuteconfig/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨAI澶栧懠鎵ц閰嶇疆璇︾粏
+export function getIvrexecuteconfig(scenecfgid) {
+ return request({
+ url: '/smartor/ivrexecuteconfig/' + scenecfgid,
+ method: 'get'
+ })
+}
+
+// 鏂板AI澶栧懠鎵ц閰嶇疆
+export function addIvrexecuteconfig(data) {
+ return request({
+ url: '/smartor/ivrexecuteconfig',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼AI澶栧懠鎵ц閰嶇疆
+export function updateIvrexecuteconfig(data) {
+ return request({
+ url: '/smartor/ivrexecuteconfig',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎AI澶栧懠鎵ц閰嶇疆
+export function delIvrexecuteconfig(scenecfgid) {
+ return request({
+ url: '/smartor/ivrexecuteconfig/' + scenecfgid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/ivrflow.js b/ruoyi-ui/src/api/smartor/ivrflow.js
new file mode 100644
index 0000000..6286968
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/ivrflow.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨAI澶栧懠娴佺▼鍒楄〃
+export function listIvrflow(query) {
+ return request({
+ url: '/smartor/ivrflow/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨAI澶栧懠娴佺▼璇︾粏
+export function getIvrflow(flowid) {
+ return request({
+ url: '/smartor/ivrflow/' + flowid,
+ method: 'get'
+ })
+}
+
+// 鏂板AI澶栧懠娴佺▼
+export function addIvrflow(data) {
+ return request({
+ url: '/smartor/ivrflow',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼AI澶栧懠娴佺▼
+export function updateIvrflow(data) {
+ return request({
+ url: '/smartor/ivrflow',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎AI澶栧懠娴佺▼
+export function delIvrflow(flowid) {
+ return request({
+ url: '/smartor/ivrflow/' + flowid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/ivrflownode.js b/ruoyi-ui/src/api/smartor/ivrflownode.js
new file mode 100644
index 0000000..e9a24bc
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/ivrflownode.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨAI澶栧懠娴佺▼鑺傜偣鍒楄〃
+export function listIvrflownode(query) {
+ return request({
+ url: '/smartor/ivrflownode/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨAI澶栧懠娴佺▼鑺傜偣璇︾粏
+export function getIvrflownode(flownodeid) {
+ return request({
+ url: '/smartor/ivrflownode/' + flownodeid,
+ method: 'get'
+ })
+}
+
+// 鏂板AI澶栧懠娴佺▼鑺傜偣
+export function addIvrflownode(data) {
+ return request({
+ url: '/smartor/ivrflownode',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼AI澶栧懠娴佺▼鑺傜偣
+export function updateIvrflownode(data) {
+ return request({
+ url: '/smartor/ivrflownode',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎AI澶栧懠娴佺▼鑺傜偣
+export function delIvrflownode(flownodeid) {
+ return request({
+ url: '/smartor/ivrflownode/' + flownodeid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/ivrflownodebranch.js b/ruoyi-ui/src/api/smartor/ivrflownodebranch.js
new file mode 100644
index 0000000..c4af689
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/ivrflownodebranch.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨAI澶栧懠娴佺▼鑺傜偣鍒嗘敮鍒楄〃
+export function listIvrflownodebranch(query) {
+ return request({
+ url: '/smartor/ivrflownodebranch/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨAI澶栧懠娴佺▼鑺傜偣鍒嗘敮璇︾粏
+export function getIvrflownodebranch(branchid) {
+ return request({
+ url: '/smartor/ivrflownodebranch/' + branchid,
+ method: 'get'
+ })
+}
+
+// 鏂板AI澶栧懠娴佺▼鑺傜偣鍒嗘敮
+export function addIvrflownodebranch(data) {
+ return request({
+ url: '/smartor/ivrflownodebranch',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼AI澶栧懠娴佺▼鑺傜偣鍒嗘敮
+export function updateIvrflownodebranch(data) {
+ return request({
+ url: '/smartor/ivrflownodebranch',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎AI澶栧懠娴佺▼鑺傜偣鍒嗘敮
+export function delIvrflownodebranch(branchid) {
+ return request({
+ url: '/smartor/ivrflownodebranch/' + branchid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/ivrglobalconfig.js b/ruoyi-ui/src/api/smartor/ivrglobalconfig.js
new file mode 100644
index 0000000..5d0bb27
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/ivrglobalconfig.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨAI澶栧懠鍏ㄥ眬閰嶇疆鍒楄〃
+export function listIvrglobalconfig(query) {
+ return request({
+ url: '/smartor/ivrglobalconfig/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨAI澶栧懠鍏ㄥ眬閰嶇疆璇︾粏
+export function getIvrglobalconfig(gblconfigid) {
+ return request({
+ url: '/smartor/ivrglobalconfig/' + gblconfigid,
+ method: 'get'
+ })
+}
+
+// 鏂板AI澶栧懠鍏ㄥ眬閰嶇疆
+export function addIvrglobalconfig(data) {
+ return request({
+ url: '/smartor/ivrglobalconfig',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼AI澶栧懠鍏ㄥ眬閰嶇疆
+export function updateIvrglobalconfig(data) {
+ return request({
+ url: '/smartor/ivrglobalconfig',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎AI澶栧懠鍏ㄥ眬閰嶇疆
+export function delIvrglobalconfig(gblconfigid) {
+ return request({
+ url: '/smartor/ivrglobalconfig/' + gblconfigid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/ivrintent.js b/ruoyi-ui/src/api/smartor/ivrintent.js
new file mode 100644
index 0000000..4008650
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/ivrintent.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨAI澶栧懠鎰忓浘鍒楄〃
+export function listIvrintent(query) {
+ return request({
+ url: '/smartor/ivrintent/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨAI澶栧懠鎰忓浘璇︾粏
+export function getIvrintent(sceneintentid) {
+ return request({
+ url: '/smartor/ivrintent/' + sceneintentid,
+ method: 'get'
+ })
+}
+
+// 鏂板AI澶栧懠鎰忓浘
+export function addIvrintent(data) {
+ return request({
+ url: '/smartor/ivrintent',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼AI澶栧懠鎰忓浘
+export function updateIvrintent(data) {
+ return request({
+ url: '/smartor/ivrintent',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎AI澶栧懠鎰忓浘
+export function delIvrintent(sceneintentid) {
+ return request({
+ url: '/smartor/ivrintent/' + sceneintentid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/ivrlibintent.js b/ruoyi-ui/src/api/smartor/ivrlibintent.js
new file mode 100644
index 0000000..73d094c
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/ivrlibintent.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨAI鎰忓浘搴撳垪琛�
+export function listIvrlibintent(query) {
+ return request({
+ url: '/smartor/ivrlibintent/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨAI鎰忓浘搴撹缁�
+export function getIvrlibintent(intentid) {
+ return request({
+ url: '/smartor/ivrlibintent/' + intentid,
+ method: 'get'
+ })
+}
+
+// 鏂板AI鎰忓浘搴�
+export function addIvrlibintent(data) {
+ return request({
+ url: '/smartor/ivrlibintent',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼AI鎰忓浘搴�
+export function updateIvrlibintent(data) {
+ return request({
+ url: '/smartor/ivrlibintent',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎AI鎰忓浘搴�
+export function delIvrlibintent(intentid) {
+ return request({
+ url: '/smartor/ivrlibintent/' + intentid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/ivrlibintentcategory.js b/ruoyi-ui/src/api/smartor/ivrlibintentcategory.js
new file mode 100644
index 0000000..ca7af0f
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/ivrlibintentcategory.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨAI鎰忓浘搴撳垎绫诲垪琛�
+export function listIvrlibintentcategory(query) {
+ return request({
+ url: '/smartor/ivrlibintentcategory/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨAI鎰忓浘搴撳垎绫昏缁�
+export function getIvrlibintentcategory(intertcatid) {
+ return request({
+ url: '/smartor/ivrlibintentcategory/' + intertcatid,
+ method: 'get'
+ })
+}
+
+// 鏂板AI鎰忓浘搴撳垎绫�
+export function addIvrlibintentcategory(data) {
+ return request({
+ url: '/smartor/ivrlibintentcategory',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼AI鎰忓浘搴撳垎绫�
+export function updateIvrlibintentcategory(data) {
+ return request({
+ url: '/smartor/ivrlibintentcategory',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎AI鎰忓浘搴撳垎绫�
+export function delIvrlibintentcategory(intertcatid) {
+ return request({
+ url: '/smartor/ivrlibintentcategory/' + intertcatid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/ivrlibscript.js b/ruoyi-ui/src/api/smartor/ivrlibscript.js
new file mode 100644
index 0000000..52a34d9
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/ivrlibscript.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨAI璇濇湳搴撳垪琛�
+export function listIvrlibscript(query) {
+ return request({
+ url: '/smartor/ivrlibscript/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨAI璇濇湳搴撹缁�
+export function getIvrlibscript(scriptid) {
+ return request({
+ url: '/smartor/ivrlibscript/' + scriptid,
+ method: 'get'
+ })
+}
+
+// 鏂板AI璇濇湳搴�
+export function addIvrlibscript(data) {
+ return request({
+ url: '/smartor/ivrlibscript',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼AI璇濇湳搴�
+export function updateIvrlibscript(data) {
+ return request({
+ url: '/smartor/ivrlibscript',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎AI璇濇湳搴�
+export function delIvrlibscript(scriptid) {
+ return request({
+ url: '/smartor/ivrlibscript/' + scriptid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/ivrlibscriptcategory.js b/ruoyi-ui/src/api/smartor/ivrlibscriptcategory.js
new file mode 100644
index 0000000..87bdc2d
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/ivrlibscriptcategory.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨAI璇濇湳搴撳垎绫诲垪琛�
+export function listIvrlibscriptcategory(query) {
+ return request({
+ url: '/smartor/ivrlibscriptcategory/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨAI璇濇湳搴撳垎绫昏缁�
+export function getIvrlibscriptcategory(categoryid) {
+ return request({
+ url: '/smartor/ivrlibscriptcategory/' + categoryid,
+ method: 'get'
+ })
+}
+
+// 鏂板AI璇濇湳搴撳垎绫�
+export function addIvrlibscriptcategory(data) {
+ return request({
+ url: '/smartor/ivrlibscriptcategory',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼AI璇濇湳搴撳垎绫�
+export function updateIvrlibscriptcategory(data) {
+ return request({
+ url: '/smartor/ivrlibscriptcategory',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎AI璇濇湳搴撳垎绫�
+export function delIvrlibscriptcategory(categoryid) {
+ return request({
+ url: '/smartor/ivrlibscriptcategory/' + categoryid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/ivrlibscriptmodel.js b/ruoyi-ui/src/api/smartor/ivrlibscriptmodel.js
new file mode 100644
index 0000000..63724a1
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/ivrlibscriptmodel.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨAI璇濇湳妯″潡鍒楄〃
+export function listIvrlibscriptmodel(query) {
+ return request({
+ url: '/smartor/ivrlibscriptmodel/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨAI璇濇湳妯″潡璇︾粏
+export function getIvrlibscriptmodel(modelid) {
+ return request({
+ url: '/smartor/ivrlibscriptmodel/' + modelid,
+ method: 'get'
+ })
+}
+
+// 鏂板AI璇濇湳妯″潡
+export function addIvrlibscriptmodel(data) {
+ return request({
+ url: '/smartor/ivrlibscriptmodel',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼AI璇濇湳妯″潡
+export function updateIvrlibscriptmodel(data) {
+ return request({
+ url: '/smartor/ivrlibscriptmodel',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎AI璇濇湳妯″潡
+export function delIvrlibscriptmodel(modelid) {
+ return request({
+ url: '/smartor/ivrlibscriptmodel/' + modelid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/ivrrecall.js b/ruoyi-ui/src/api/smartor/ivrrecall.js
new file mode 100644
index 0000000..029123b
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/ivrrecall.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨAI澶栧懠閲嶆嫧閰嶇疆鍒楄〃
+export function listIvrrecall(query) {
+ return request({
+ url: '/smartor/ivrrecall/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨAI澶栧懠閲嶆嫧閰嶇疆璇︾粏
+export function getIvrrecall(recallid) {
+ return request({
+ url: '/smartor/ivrrecall/' + recallid,
+ method: 'get'
+ })
+}
+
+// 鏂板AI澶栧懠閲嶆嫧閰嶇疆
+export function addIvrrecall(data) {
+ return request({
+ url: '/smartor/ivrrecall',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼AI澶栧懠閲嶆嫧閰嶇疆
+export function updateIvrrecall(data) {
+ return request({
+ url: '/smartor/ivrrecall',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎AI澶栧懠閲嶆嫧閰嶇疆
+export function delIvrrecall(recallid) {
+ return request({
+ url: '/smartor/ivrrecall/' + recallid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/ivrscene.js b/ruoyi-ui/src/api/smartor/ivrscene.js
new file mode 100644
index 0000000..9d0aab6
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/ivrscene.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨAI澶栧懠鍦烘櫙绠$悊鍒楄〃
+export function listIvrscene(query) {
+ return request({
+ url: '/smartor/ivrscene/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨAI澶栧懠鍦烘櫙绠$悊璇︾粏
+export function getIvrscene(sceneid) {
+ return request({
+ url: '/smartor/ivrscene/' + sceneid,
+ method: 'get'
+ })
+}
+
+// 鏂板AI澶栧懠鍦烘櫙绠$悊
+export function addIvrscene(data) {
+ return request({
+ url: '/smartor/ivrscene',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼AI澶栧懠鍦烘櫙绠$悊
+export function updateIvrscene(data) {
+ return request({
+ url: '/smartor/ivrscene',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎AI澶栧懠鍦烘櫙绠$悊
+export function delIvrscene(sceneid) {
+ return request({
+ url: '/smartor/ivrscene/' + sceneid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/ivrscenecategory.js b/ruoyi-ui/src/api/smartor/ivrscenecategory.js
new file mode 100644
index 0000000..3973244
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/ivrscenecategory.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨAI鏈嶅姟鍦烘櫙绠$悊鍒嗙被鍒楄〃
+export function listIvrscenecategory(query) {
+ return request({
+ url: '/smartor/ivrscenecategory/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨAI鏈嶅姟鍦烘櫙绠$悊鍒嗙被璇︾粏
+export function getIvrscenecategory(scenecatid) {
+ return request({
+ url: '/smartor/ivrscenecategory/' + scenecatid,
+ method: 'get'
+ })
+}
+
+// 鏂板AI鏈嶅姟鍦烘櫙绠$悊鍒嗙被
+export function addIvrscenecategory(data) {
+ return request({
+ url: '/smartor/ivrscenecategory',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼AI鏈嶅姟鍦烘櫙绠$悊鍒嗙被
+export function updateIvrscenecategory(data) {
+ return request({
+ url: '/smartor/ivrscenecategory',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎AI鏈嶅姟鍦烘櫙绠$悊鍒嗙被
+export function delIvrscenecategory(scenecatid) {
+ return request({
+ url: '/smartor/ivrscenecategory/' + scenecatid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/ivrscript.js b/ruoyi-ui/src/api/smartor/ivrscript.js
new file mode 100644
index 0000000..b184cba
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/ivrscript.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨAI澶栧懠璇濇湳鍒楄〃
+export function listIvrscript(query) {
+ return request({
+ url: '/smartor/ivrscript/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨAI澶栧懠璇濇湳璇︾粏
+export function getIvrscript(scenescrid) {
+ return request({
+ url: '/smartor/ivrscript/' + scenescrid,
+ method: 'get'
+ })
+}
+
+// 鏂板AI澶栧懠璇濇湳
+export function addIvrscript(data) {
+ return request({
+ url: '/smartor/ivrscript',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼AI澶栧懠璇濇湳
+export function updateIvrscript(data) {
+ return request({
+ url: '/smartor/ivrscript',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎AI澶栧懠璇濇湳
+export function delIvrscript(scenescrid) {
+ return request({
+ url: '/smartor/ivrscript/' + scenescrid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/ivrscriptmodel.js b/ruoyi-ui/src/api/smartor/ivrscriptmodel.js
new file mode 100644
index 0000000..bdc9910
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/ivrscriptmodel.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨAI澶栧懠璇濇湳妯″潡鍒楄〃
+export function listIvrscriptmodel(query) {
+ return request({
+ url: '/smartor/ivrscriptmodel/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨAI澶栧懠璇濇湳妯″潡璇︾粏
+export function getIvrscriptmodel(scenemodid) {
+ return request({
+ url: '/smartor/ivrscriptmodel/' + scenemodid,
+ method: 'get'
+ })
+}
+
+// 鏂板AI澶栧懠璇濇湳妯″潡
+export function addIvrscriptmodel(data) {
+ return request({
+ url: '/smartor/ivrscriptmodel',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼AI澶栧懠璇濇湳妯″潡
+export function updateIvrscriptmodel(data) {
+ return request({
+ url: '/smartor/ivrscriptmodel',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎AI澶栧懠璇濇湳妯″潡
+export function delIvrscriptmodel(scenemodid) {
+ return request({
+ url: '/smartor/ivrscriptmodel/' + scenemodid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/smsaccount.js b/ruoyi-ui/src/api/smartor/smsaccount.js
new file mode 100644
index 0000000..8d7f6b8
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/smsaccount.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨ鐭俊璐﹀彿鍒楄〃
+export function listSmsaccount(query) {
+ return request({
+ url: '/smartor/smsaccount/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨ鐭俊璐﹀彿璇︾粏
+export function getSmsaccount(smsacountid) {
+ return request({
+ url: '/smartor/smsaccount/' + smsacountid,
+ method: 'get'
+ })
+}
+
+// 鏂板鐭俊璐﹀彿
+export function addSmsaccount(data) {
+ return request({
+ url: '/smartor/smsaccount',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼鐭俊璐﹀彿
+export function updateSmsaccount(data) {
+ return request({
+ url: '/smartor/smsaccount',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎鐭俊璐﹀彿
+export function delSmsaccount(smsacountid) {
+ return request({
+ url: '/smartor/smsaccount/' + smsacountid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/smsparam.js b/ruoyi-ui/src/api/smartor/smsparam.js
new file mode 100644
index 0000000..1ed799a
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/smsparam.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨ鐭俊鍙傛暟鍒楄〃
+export function listSmsparam(query) {
+ return request({
+ url: '/smartor/smsparam/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨ鐭俊鍙傛暟璇︾粏
+export function getSmsparam(paramid) {
+ return request({
+ url: '/smartor/smsparam/' + paramid,
+ method: 'get'
+ })
+}
+
+// 鏂板鐭俊鍙傛暟
+export function addSmsparam(data) {
+ return request({
+ url: '/smartor/smsparam',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼鐭俊鍙傛暟
+export function updateSmsparam(data) {
+ return request({
+ url: '/smartor/smsparam',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎鐭俊鍙傛暟
+export function delSmsparam(paramid) {
+ return request({
+ url: '/smartor/smsparam/' + paramid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/smsrecords.js b/ruoyi-ui/src/api/smartor/smsrecords.js
new file mode 100644
index 0000000..6640c29
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/smsrecords.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨ鐭俊璁板綍鍒楄〃
+export function listSmsrecords(query) {
+ return request({
+ url: '/smartor/smsrecords/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨ鐭俊璁板綍璇︾粏
+export function getSmsrecords(recordid) {
+ return request({
+ url: '/smartor/smsrecords/' + recordid,
+ method: 'get'
+ })
+}
+
+// 鏂板鐭俊璁板綍
+export function addSmsrecords(data) {
+ return request({
+ url: '/smartor/smsrecords',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼鐭俊璁板綍
+export function updateSmsrecords(data) {
+ return request({
+ url: '/smartor/smsrecords',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎鐭俊璁板綍
+export function delSmsrecords(recordid) {
+ return request({
+ url: '/smartor/smsrecords/' + recordid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/api/smartor/smstemplet.js b/ruoyi-ui/src/api/smartor/smstemplet.js
new file mode 100644
index 0000000..0b53f02
--- /dev/null
+++ b/ruoyi-ui/src/api/smartor/smstemplet.js
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 鏌ヨ鐭俊妯℃澘鍒楄〃
+export function listSmstemplet(query) {
+ return request({
+ url: '/smartor/smstemplet/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 鏌ヨ鐭俊妯℃澘璇︾粏
+export function getSmstemplet(templetid) {
+ return request({
+ url: '/smartor/smstemplet/' + templetid,
+ method: 'get'
+ })
+}
+
+// 鏂板鐭俊妯℃澘
+export function addSmstemplet(data) {
+ return request({
+ url: '/smartor/smstemplet',
+ method: 'post',
+ data: data
+ })
+}
+
+// 淇敼鐭俊妯℃澘
+export function updateSmstemplet(data) {
+ return request({
+ url: '/smartor/smstemplet',
+ method: 'put',
+ data: data
+ })
+}
+
+// 鍒犻櫎鐭俊妯℃澘
+export function delSmstemplet(templetid) {
+ return request({
+ url: '/smartor/smstemplet/' + templetid,
+ method: 'delete'
+ })
+}
diff --git a/ruoyi-ui/src/views/smartor/ivrexecuteconfig/index.vue b/ruoyi-ui/src/views/smartor/ivrexecuteconfig/index.vue
new file mode 100644
index 0000000..467dab8
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/ivrexecuteconfig/index.vue
@@ -0,0 +1,398 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏� 鏈烘瀯ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍏ㄥ眬閰嶇疆ID;鍏ㄥ眬閰嶇疆ID " prop="globalid">
+ <el-input
+ v-model="queryParams.globalid"
+ placeholder="璇疯緭鍏� 鍏ㄥ眬閰嶇疆ID;鍏ㄥ眬閰嶇疆ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 澶栧懠鑺傜偣ID " prop="flownodebranchid">
+ <el-input
+ v-model="queryParams.flownodebranchid"
+ placeholder="璇疯緭鍏� 澶栧懠鑺傜偣ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鎵ц鏉′欢;涓洪棶鍗锋椂濉棶鍗烽鐩�/涓烘偅鑰呮爣绛炬椂涓嶅~ " prop="executeconditions">
+ <el-input
+ v-model="queryParams.executeconditions"
+ placeholder="璇疯緭鍏� 鎵ц鏉′欢;涓洪棶鍗锋椂濉棶鍗烽鐩�/涓烘偅鑰呮爣绛炬椂涓嶅~ "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏� 涓婁紶鏍囪 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label=" 澶栧懠鍦烘櫙ID " prop="sceneid">
+ <el-input
+ v-model="queryParams.sceneid"
+ placeholder="璇疯緭鍏� 澶栧懠鍦烘櫙ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鎵ц鏉′欢浠g爜;涓洪棶鍗锋椂濉棶鍗烽鐩瓹ode " prop="executeconditionscode">
+ <el-input
+ v-model="queryParams.executeconditionscode"
+ placeholder="璇疯緭鍏� 鎵ц鏉′欢浠g爜;涓洪棶鍗锋椂濉棶鍗烽鐩瓹ode "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼鑺傜偣ID " prop="flownodeid">
+ <el-input
+ v-model="queryParams.flownodeid"
+ placeholder="璇疯緭鍏� 娴佺▼鑺傜偣ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:ivrexecuteconfig:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:ivrexecuteconfig:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:ivrexecuteconfig:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:ivrexecuteconfig:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="ivrexecuteconfigList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label=" 鑷ID " align="center" prop="scenecfgid" />
+ <el-table-column label=" 鏈烘瀯ID " align="center" prop="orgid" />
+ <el-table-column label=" 鏉ユ簮绫诲瀷;0.鍏ㄥ眬 1.涓荤嚎 " align="center" prop="sourcetype" />
+ <el-table-column label=" 鍏ㄥ眬閰嶇疆ID;鍏ㄥ眬閰嶇疆ID " align="center" prop="globalid" />
+ <el-table-column label=" 澶栧懠鑺傜偣ID " align="center" prop="flownodebranchid" />
+ <el-table-column label=" 鎵ц绫诲瀷;0.闂嵎绛旀 1.鎮h�呮爣绛� " align="center" prop="executetype" />
+ <el-table-column label=" 鎵ц鏉′欢;涓洪棶鍗锋椂濉棶鍗烽鐩�/涓烘偅鑰呮爣绛炬椂涓嶅~ " align="center" prop="executeconditions" />
+ <el-table-column label=" 鎵ц缁撴灉;鍗曢�夐涓婚敭/澶氶�夐涓婚敭/濉┖棰樻枃鏈�/鏍囩涓婚敭鍙閫�/澶氶�夐�楀彿闅斿紑 " align="center" prop="executeresult" />
+ <el-table-column label=" 涓婁紶鏍囪 " align="center" prop="isupload" />
+ <el-table-column label=" 涓婁紶鏃堕棿 " align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label=" 澶栧懠鍦烘櫙ID " align="center" prop="sceneid" />
+ <el-table-column label=" 鎵ц鏉′欢浠g爜;涓洪棶鍗锋椂濉棶鍗烽鐩瓹ode " align="center" prop="executeconditionscode" />
+ <el-table-column label=" 鎵ц缁撴灉浠g爜;鍗曢�夐涓婚敭/澶氶�夐涓婚敭鐨勯�夐」Code " align="center" prop="executeresultcode" />
+ <el-table-column label=" 娴佺▼鑺傜偣ID " align="center" prop="flownodeid" />
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:ivrexecuteconfig:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:ivrexecuteconfig:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀笰I澶栧懠鎵ц閰嶇疆瀵硅瘽妗� -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏� 鏈烘瀯ID " />
+ </el-form-item>
+ <el-form-item label=" 鍏ㄥ眬閰嶇疆ID;鍏ㄥ眬閰嶇疆ID " prop="globalid">
+ <el-input v-model="form.globalid" placeholder="璇疯緭鍏� 鍏ㄥ眬閰嶇疆ID;鍏ㄥ眬閰嶇疆ID " />
+ </el-form-item>
+ <el-form-item label=" 澶栧懠鑺傜偣ID " prop="flownodebranchid">
+ <el-input v-model="form.flownodebranchid" placeholder="璇疯緭鍏� 澶栧懠鑺傜偣ID " />
+ </el-form-item>
+ <el-form-item label=" 鎵ц鏉′欢;涓洪棶鍗锋椂濉棶鍗烽鐩�/涓烘偅鑰呮爣绛炬椂涓嶅~ " prop="executeconditions">
+ <el-input v-model="form.executeconditions" placeholder="璇疯緭鍏� 鎵ц鏉′欢;涓洪棶鍗锋椂濉棶鍗烽鐩�/涓烘偅鑰呮爣绛炬椂涓嶅~ " />
+ </el-form-item>
+ <el-form-item label=" 鎵ц缁撴灉;鍗曢�夐涓婚敭/澶氶�夐涓婚敭/濉┖棰樻枃鏈�/鏍囩涓婚敭鍙閫�/澶氶�夐�楀彿闅斿紑 " prop="executeresult">
+ <el-input v-model="form.executeresult" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" />
+ </el-form-item>
+ <el-form-item label=" 鍒犻櫎鏍囪 " prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏� 鍒犻櫎鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏� 涓婁紶鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label=" 澶栧懠鍦烘櫙ID " prop="sceneid">
+ <el-input v-model="form.sceneid" placeholder="璇疯緭鍏� 澶栧懠鍦烘櫙ID " />
+ </el-form-item>
+ <el-form-item label=" 鎵ц鏉′欢浠g爜;涓洪棶鍗锋椂濉棶鍗烽鐩瓹ode " prop="executeconditionscode">
+ <el-input v-model="form.executeconditionscode" placeholder="璇疯緭鍏� 鎵ц鏉′欢浠g爜;涓洪棶鍗锋椂濉棶鍗烽鐩瓹ode " />
+ </el-form-item>
+ <el-form-item label=" 鎵ц缁撴灉浠g爜;鍗曢�夐涓婚敭/澶氶�夐涓婚敭鐨勯�夐」Code " prop="executeresultcode">
+ <el-input v-model="form.executeresultcode" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼鑺傜偣ID " prop="flownodeid">
+ <el-input v-model="form.flownodeid" placeholder="璇疯緭鍏� 娴佺▼鑺傜偣ID " />
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listIvrexecuteconfig, getIvrexecuteconfig, delIvrexecuteconfig, addIvrexecuteconfig, updateIvrexecuteconfig } from "@/api/smartor/ivrexecuteconfig";
+
+export default {
+ name: "Ivrexecuteconfig",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // AI澶栧懠鎵ц閰嶇疆琛ㄦ牸鏁版嵁
+ ivrexecuteconfigList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ orgid: null,
+ sourcetype: null,
+ globalid: null,
+ flownodebranchid: null,
+ executetype: null,
+ executeconditions: null,
+ executeresult: null,
+ isupload: null,
+ uploadTime: null,
+ sceneid: null,
+ executeconditionscode: null,
+ executeresultcode: null,
+ flownodeid: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ delFlag: [
+ { required: true, message: " 鍒犻櫎鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ isupload: [
+ { required: true, message: " 涓婁紶鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨAI澶栧懠鎵ц閰嶇疆鍒楄〃 */
+ getList() {
+ this.loading = true;
+ listIvrexecuteconfig(this.queryParams).then(response => {
+ this.ivrexecuteconfigList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ scenecfgid: null,
+ orgid: null,
+ sourcetype: null,
+ globalid: null,
+ flownodebranchid: null,
+ executetype: null,
+ executeconditions: null,
+ executeresult: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null,
+ sceneid: null,
+ executeconditionscode: null,
+ executeresultcode: null,
+ flownodeid: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.scenecfgid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞AI澶栧懠鎵ц閰嶇疆";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const scenecfgid = row.scenecfgid || this.ids
+ getIvrexecuteconfig(scenecfgid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼AI澶栧懠鎵ц閰嶇疆";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.scenecfgid != null) {
+ updateIvrexecuteconfig(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addIvrexecuteconfig(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const scenecfgids = row.scenecfgid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎AI澶栧懠鎵ц閰嶇疆缂栧彿涓�"' + scenecfgids + '"鐨勬暟鎹」锛�').then(function() {
+ return delIvrexecuteconfig(scenecfgids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/ivrexecuteconfig/export', {
+ ...this.queryParams
+ }, `ivrexecuteconfig_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/ivrflow/index.vue b/ruoyi-ui/src/views/smartor/ivrflow/index.vue
new file mode 100644
index 0000000..4090a53
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/ivrflow/index.vue
@@ -0,0 +1,428 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏� 鏈烘瀯ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏� 涓婁紶鏍囪 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label=" AI澶栧懠鍦烘櫙ID " prop="sceneid">
+ <el-input
+ v-model="queryParams.sceneid"
+ placeholder="璇疯緭鍏� AI澶栧懠鍦烘櫙ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼鍚嶇О " prop="flowname">
+ <el-input
+ v-model="queryParams.flowname"
+ placeholder="璇疯緭鍏� 娴佺▼鍚嶇О "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍏宠仈闂嵎ID " prop="relevantqsid">
+ <el-input
+ v-model="queryParams.relevantqsid"
+ placeholder="璇疯緭鍏� 鍏宠仈闂嵎ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍏宠仈棰樼洰ID" prop="relevanttopicid">
+ <el-input
+ v-model="queryParams.relevanttopicid"
+ placeholder="璇疯緭鍏� 鍏宠仈棰樼洰ID"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍏宠仈棰樼洰Code" prop="relevanttopiccode">
+ <el-input
+ v-model="queryParams.relevanttopiccode"
+ placeholder="璇疯緭鍏� 鍏宠仈棰樼洰Code"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鏄惁鏍¢獙;0鍚� 1鏄� " prop="ischeck">
+ <el-input
+ v-model="queryParams.ischeck"
+ placeholder="璇疯緭鍏� 鏄惁鏍¢獙;0鍚� 1鏄� "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 搴忓彿 " prop="sort">
+ <el-input
+ v-model="queryParams.sort"
+ placeholder="璇疯緭鍏� 搴忓彿 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 璧峰鑺傜偣ID " prop="startnode">
+ <el-input
+ v-model="queryParams.startnode"
+ placeholder="璇疯緭鍏� 璧峰鑺傜偣ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鎷疯礉ID " prop="oldid">
+ <el-input
+ v-model="queryParams.oldid"
+ placeholder="璇疯緭鍏� 鎷疯礉ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:ivrflow:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:ivrflow:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:ivrflow:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:ivrflow:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="ivrflowList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label=" 鑷ID " align="center" prop="flowid" />
+ <el-table-column label=" 鏈烘瀯ID " align="center" prop="orgid" />
+ <el-table-column label=" 涓婁紶鏍囪 " align="center" prop="isupload" />
+ <el-table-column label=" 涓婁紶鏃堕棿 " align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label=" AI澶栧懠鍦烘櫙ID " align="center" prop="sceneid" />
+ <el-table-column label=" 娴佺▼鍚嶇О " align="center" prop="flowname" />
+ <el-table-column label=" 鍏宠仈闂嵎ID " align="center" prop="relevantqsid" />
+ <el-table-column label=" 鍏宠仈棰樼洰ID" align="center" prop="relevanttopicid" />
+ <el-table-column label=" 鍏宠仈棰樼洰Code" align="center" prop="relevanttopiccode" />
+ <el-table-column label=" 鏄惁鏍¢獙;0鍚� 1鏄� " align="center" prop="ischeck" />
+ <el-table-column label=" 娴佺▼鍥綣SON鏁版嵁 " align="center" prop="flowdata" />
+ <el-table-column label=" 搴忓彿 " align="center" prop="sort" />
+ <el-table-column label=" 璧峰鑺傜偣ID " align="center" prop="startnode" />
+ <el-table-column label=" 鎷疯礉ID " align="center" prop="oldid" />
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:ivrflow:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:ivrflow:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀笰I澶栧懠娴佺▼瀵硅瘽妗� -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏� 鏈烘瀯ID " />
+ </el-form-item>
+ <el-form-item label=" 鍒犻櫎鏍囪 " prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏� 鍒犻櫎鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏� 涓婁紶鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label=" AI澶栧懠鍦烘櫙ID " prop="sceneid">
+ <el-input v-model="form.sceneid" placeholder="璇疯緭鍏� AI澶栧懠鍦烘櫙ID " />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼鍚嶇О " prop="flowname">
+ <el-input v-model="form.flowname" placeholder="璇疯緭鍏� 娴佺▼鍚嶇О " />
+ </el-form-item>
+ <el-form-item label=" 鍏宠仈闂嵎ID " prop="relevantqsid">
+ <el-input v-model="form.relevantqsid" placeholder="璇疯緭鍏� 鍏宠仈闂嵎ID " />
+ </el-form-item>
+ <el-form-item label=" 鍏宠仈棰樼洰ID" prop="relevanttopicid">
+ <el-input v-model="form.relevanttopicid" placeholder="璇疯緭鍏� 鍏宠仈棰樼洰ID" />
+ </el-form-item>
+ <el-form-item label=" 鍏宠仈棰樼洰Code" prop="relevanttopiccode">
+ <el-input v-model="form.relevanttopiccode" placeholder="璇疯緭鍏� 鍏宠仈棰樼洰Code" />
+ </el-form-item>
+ <el-form-item label=" 鏄惁鏍¢獙;0鍚� 1鏄� " prop="ischeck">
+ <el-input v-model="form.ischeck" placeholder="璇疯緭鍏� 鏄惁鏍¢獙;0鍚� 1鏄� " />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼鍥綣SON鏁版嵁 " prop="flowdata">
+ <el-input v-model="form.flowdata" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" />
+ </el-form-item>
+ <el-form-item label=" 搴忓彿 " prop="sort">
+ <el-input v-model="form.sort" placeholder="璇疯緭鍏� 搴忓彿 " />
+ </el-form-item>
+ <el-form-item label=" 璧峰鑺傜偣ID " prop="startnode">
+ <el-input v-model="form.startnode" placeholder="璇疯緭鍏� 璧峰鑺傜偣ID " />
+ </el-form-item>
+ <el-form-item label=" 鎷疯礉ID " prop="oldid">
+ <el-input v-model="form.oldid" placeholder="璇疯緭鍏� 鎷疯礉ID " />
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listIvrflow, getIvrflow, delIvrflow, addIvrflow, updateIvrflow } from "@/api/smartor/ivrflow";
+
+export default {
+ name: "Ivrflow",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // AI澶栧懠娴佺▼琛ㄦ牸鏁版嵁
+ ivrflowList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ orgid: null,
+ isupload: null,
+ uploadTime: null,
+ sceneid: null,
+ flowname: null,
+ relevantqsid: null,
+ relevanttopicid: null,
+ relevanttopiccode: null,
+ ischeck: null,
+ flowdata: null,
+ sort: null,
+ startnode: null,
+ oldid: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ delFlag: [
+ { required: true, message: " 鍒犻櫎鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ isupload: [
+ { required: true, message: " 涓婁紶鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨAI澶栧懠娴佺▼鍒楄〃 */
+ getList() {
+ this.loading = true;
+ listIvrflow(this.queryParams).then(response => {
+ this.ivrflowList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ flowid: null,
+ orgid: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null,
+ sceneid: null,
+ flowname: null,
+ relevantqsid: null,
+ relevanttopicid: null,
+ relevanttopiccode: null,
+ ischeck: null,
+ flowdata: null,
+ sort: null,
+ startnode: null,
+ oldid: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.flowid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞AI澶栧懠娴佺▼";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const flowid = row.flowid || this.ids
+ getIvrflow(flowid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼AI澶栧懠娴佺▼";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.flowid != null) {
+ updateIvrflow(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addIvrflow(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const flowids = row.flowid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎AI澶栧懠娴佺▼缂栧彿涓�"' + flowids + '"鐨勬暟鎹」锛�').then(function() {
+ return delIvrflow(flowids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/ivrflow/export', {
+ ...this.queryParams
+ }, `ivrflow_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/ivrflownode/index.vue b/ruoyi-ui/src/views/smartor/ivrflownode/index.vue
new file mode 100644
index 0000000..b090e2e
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/ivrflownode/index.vue
@@ -0,0 +1,459 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏� 鏈烘瀯ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏� 涓婁紶鏍囪 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label=" AI澶栧懠鍦烘櫙ID " prop="sceneid">
+ <el-input
+ v-model="queryParams.sceneid"
+ placeholder="璇疯緭鍏� AI澶栧懠鍦烘櫙ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼ID " prop="flowid">
+ <el-input
+ v-model="queryParams.flowid"
+ placeholder="璇疯緭鍏� 娴佺▼ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鑺傜偣鍚嶇О " prop="nodename">
+ <el-input
+ v-model="queryParams.nodename"
+ placeholder="璇疯緭鍏� 鑺傜偣鍚嶇О "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍋滈】鏃堕暱" prop="maxsentencesilence">
+ <el-input
+ v-model="queryParams.maxsentencesilence"
+ placeholder="璇疯緭鍏� 鍋滈】鏃堕暱"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 绛夊緟鏃堕暱" prop="waittime">
+ <el-input
+ v-model="queryParams.waittime"
+ placeholder="璇疯緭鍏� 绛夊緟鏃堕暱"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鏂拌瘽鏈瓑寰呮椂闀�" prop="corpuswaittime">
+ <el-input
+ v-model="queryParams.corpuswaittime"
+ placeholder="璇疯緭鍏� 鏂拌瘽鏈瓑寰呮椂闀�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鏈�澶ч噸澶嶆鏁�;寰幆鑺傜偣鐢� " prop="maxrepetition">
+ <el-input
+ v-model="queryParams.maxrepetition"
+ placeholder="璇疯緭鍏� 鏈�澶ч噸澶嶆鏁�;寰幆鑺傜偣鐢� "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 璺宠浆鑷�;璺宠浆鑺傜偣鐢� 鐩墠鏀炬祦绋婭D " prop="jumpto">
+ <el-input
+ v-model="queryParams.jumpto"
+ placeholder="璇疯緭鍏� 璺宠浆鑷�;璺宠浆鑺傜偣鐢� 鐩墠鏀炬祦绋婭D "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼鍥剧敓鎴怚D " prop="flowcode">
+ <el-input
+ v-model="queryParams.flowcode"
+ placeholder="璇疯緭鍏� 娴佺▼鍥剧敓鎴怚D "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 璺宠浆鐩爣鑺傜偣ID " prop="targetid">
+ <el-input
+ v-model="queryParams.targetid"
+ placeholder="璇疯緭鍏� 璺宠浆鐩爣鑺傜偣ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鎷疯礉ID " prop="oldid">
+ <el-input
+ v-model="queryParams.oldid"
+ placeholder="璇疯緭鍏� 鎷疯礉ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:ivrflownode:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:ivrflownode:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:ivrflownode:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:ivrflownode:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="ivrflownodeList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label=" 鑷ID " align="center" prop="flownodeid" />
+ <el-table-column label=" 鏈烘瀯ID " align="center" prop="orgid" />
+ <el-table-column label=" 涓婁紶鏍囪 " align="center" prop="isupload" />
+ <el-table-column label=" 涓婁紶鏃堕棿 " align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label=" AI澶栧懠鍦烘櫙ID " align="center" prop="sceneid" />
+ <el-table-column label=" 娴佺▼ID " align="center" prop="flowid" />
+ <el-table-column label=" 鑺傜偣绫诲瀷;0.鏅�氳妭鐐� 1.璺宠浆鑺傜偣 2.寰幆鑺傜偣 " align="center" prop="nodetype" />
+ <el-table-column label=" 鑺傜偣鍚嶇О " align="center" prop="nodename" />
+ <el-table-column label=" 鍋滈】鏃堕暱" align="center" prop="maxsentencesilence" />
+ <el-table-column label=" 绛夊緟鏃堕暱" align="center" prop="waittime" />
+ <el-table-column label=" 璇濇湳绫诲瀷;寰幆鑺傜偣鐢� 0.鍘熻妭鐐硅瘽鏈� 1.浣跨敤鏂拌瘽鏈� " align="center" prop="corpustype" />
+ <el-table-column label=" 鏂拌瘽鏈瓑寰呮椂闀�" align="center" prop="corpuswaittime" />
+ <el-table-column label=" 鏈�澶ч噸澶嶆鏁�;寰幆鑺傜偣鐢� " align="center" prop="maxrepetition" />
+ <el-table-column label=" 璺宠浆绫诲瀷;璺宠浆鑺傜偣鐢� 0.鎸傛満 1.璺宠浆娴佺▼ " align="center" prop="jumptype" />
+ <el-table-column label=" 璺宠浆鑷�;璺宠浆鑺傜偣鐢� 鐩墠鏀炬祦绋婭D " align="center" prop="jumpto" />
+ <el-table-column label=" 娴佺▼鍥剧敓鎴怚D " align="center" prop="flowcode" />
+ <el-table-column label=" 璺宠浆鐩爣鑺傜偣ID " align="center" prop="targetid" />
+ <el-table-column label=" 鎷疯礉ID " align="center" prop="oldid" />
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:ivrflownode:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:ivrflownode:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀笰I澶栧懠娴佺▼鑺傜偣瀵硅瘽妗� -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏� 鏈烘瀯ID " />
+ </el-form-item>
+ <el-form-item label=" 鍒犻櫎鏍囪 " prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏� 鍒犻櫎鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏� 涓婁紶鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label=" AI澶栧懠鍦烘櫙ID " prop="sceneid">
+ <el-input v-model="form.sceneid" placeholder="璇疯緭鍏� AI澶栧懠鍦烘櫙ID " />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼ID " prop="flowid">
+ <el-input v-model="form.flowid" placeholder="璇疯緭鍏� 娴佺▼ID " />
+ </el-form-item>
+ <el-form-item label=" 鑺傜偣鍚嶇О " prop="nodename">
+ <el-input v-model="form.nodename" placeholder="璇疯緭鍏� 鑺傜偣鍚嶇О " />
+ </el-form-item>
+ <el-form-item label=" 鍋滈】鏃堕暱" prop="maxsentencesilence">
+ <el-input v-model="form.maxsentencesilence" placeholder="璇疯緭鍏� 鍋滈】鏃堕暱" />
+ </el-form-item>
+ <el-form-item label=" 绛夊緟鏃堕暱" prop="waittime">
+ <el-input v-model="form.waittime" placeholder="璇疯緭鍏� 绛夊緟鏃堕暱" />
+ </el-form-item>
+ <el-form-item label=" 鏂拌瘽鏈瓑寰呮椂闀�" prop="corpuswaittime">
+ <el-input v-model="form.corpuswaittime" placeholder="璇疯緭鍏� 鏂拌瘽鏈瓑寰呮椂闀�" />
+ </el-form-item>
+ <el-form-item label=" 鏈�澶ч噸澶嶆鏁�;寰幆鑺傜偣鐢� " prop="maxrepetition">
+ <el-input v-model="form.maxrepetition" placeholder="璇疯緭鍏� 鏈�澶ч噸澶嶆鏁�;寰幆鑺傜偣鐢� " />
+ </el-form-item>
+ <el-form-item label=" 璺宠浆鑷�;璺宠浆鑺傜偣鐢� 鐩墠鏀炬祦绋婭D " prop="jumpto">
+ <el-input v-model="form.jumpto" placeholder="璇疯緭鍏� 璺宠浆鑷�;璺宠浆鑺傜偣鐢� 鐩墠鏀炬祦绋婭D " />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼鍥剧敓鎴怚D " prop="flowcode">
+ <el-input v-model="form.flowcode" placeholder="璇疯緭鍏� 娴佺▼鍥剧敓鎴怚D " />
+ </el-form-item>
+ <el-form-item label=" 璺宠浆鐩爣鑺傜偣ID " prop="targetid">
+ <el-input v-model="form.targetid" placeholder="璇疯緭鍏� 璺宠浆鐩爣鑺傜偣ID " />
+ </el-form-item>
+ <el-form-item label=" 鎷疯礉ID " prop="oldid">
+ <el-input v-model="form.oldid" placeholder="璇疯緭鍏� 鎷疯礉ID " />
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listIvrflownode, getIvrflownode, delIvrflownode, addIvrflownode, updateIvrflownode } from "@/api/smartor/ivrflownode";
+
+export default {
+ name: "Ivrflownode",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // AI澶栧懠娴佺▼鑺傜偣琛ㄦ牸鏁版嵁
+ ivrflownodeList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ orgid: null,
+ isupload: null,
+ uploadTime: null,
+ sceneid: null,
+ flowid: null,
+ nodetype: null,
+ nodename: null,
+ maxsentencesilence: null,
+ waittime: null,
+ corpustype: null,
+ corpuswaittime: null,
+ maxrepetition: null,
+ jumptype: null,
+ jumpto: null,
+ flowcode: null,
+ targetid: null,
+ oldid: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ delFlag: [
+ { required: true, message: " 鍒犻櫎鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ isupload: [
+ { required: true, message: " 涓婁紶鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨAI澶栧懠娴佺▼鑺傜偣鍒楄〃 */
+ getList() {
+ this.loading = true;
+ listIvrflownode(this.queryParams).then(response => {
+ this.ivrflownodeList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ flownodeid: null,
+ orgid: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null,
+ sceneid: null,
+ flowid: null,
+ nodetype: null,
+ nodename: null,
+ maxsentencesilence: null,
+ waittime: null,
+ corpustype: null,
+ corpuswaittime: null,
+ maxrepetition: null,
+ jumptype: null,
+ jumpto: null,
+ flowcode: null,
+ targetid: null,
+ oldid: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.flownodeid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞AI澶栧懠娴佺▼鑺傜偣";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const flownodeid = row.flownodeid || this.ids
+ getIvrflownode(flownodeid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼AI澶栧懠娴佺▼鑺傜偣";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.flownodeid != null) {
+ updateIvrflownode(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addIvrflownode(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const flownodeids = row.flownodeid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎AI澶栧懠娴佺▼鑺傜偣缂栧彿涓�"' + flownodeids + '"鐨勬暟鎹」锛�').then(function() {
+ return delIvrflownode(flownodeids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/ivrflownode/export', {
+ ...this.queryParams
+ }, `ivrflownode_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/ivrflownodebranch/index.vue b/ruoyi-ui/src/views/smartor/ivrflownodebranch/index.vue
new file mode 100644
index 0000000..7bbce3c
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/ivrflownodebranch/index.vue
@@ -0,0 +1,411 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏� 鏈烘瀯ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏� 涓婁紶鏍囪 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label=" AI澶栧懠鍦烘櫙ID " prop="sceneid">
+ <el-input
+ v-model="queryParams.sceneid"
+ placeholder="璇疯緭鍏� AI澶栧懠鍦烘櫙ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼ID " prop="flowid">
+ <el-input
+ v-model="queryParams.flowid"
+ placeholder="璇疯緭鍏� 娴佺▼ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鑺傜偣ID " prop="flownodeid">
+ <el-input
+ v-model="queryParams.flownodeid"
+ placeholder="璇疯緭鍏� 鑺傜偣ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍒嗘敮鍚嶇О " prop="branchname">
+ <el-input
+ v-model="queryParams.branchname"
+ placeholder="璇疯緭鍏� 鍒嗘敮鍚嶇О "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鏄惁鍚敤;0.鍚� 1.鏄� " prop="isenable">
+ <el-input
+ v-model="queryParams.isenable"
+ placeholder="璇疯緭鍏� 鏄惁鍚敤;0.鍚� 1.鏄� "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鎺掑簭 " prop="sort">
+ <el-input
+ v-model="queryParams.sort"
+ placeholder="璇疯緭鍏� 鎺掑簭 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 璺宠浆鐩爣鑺傜偣ID " prop="targetid">
+ <el-input
+ v-model="queryParams.targetid"
+ placeholder="璇疯緭鍏� 璺宠浆鐩爣鑺傜偣ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鎷疯礉ID " prop="oldid">
+ <el-input
+ v-model="queryParams.oldid"
+ placeholder="璇疯緭鍏� 鎷疯礉ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:ivrflownodebranch:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:ivrflownodebranch:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:ivrflownodebranch:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:ivrflownodebranch:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="ivrflownodebranchList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label=" 鑷ID " align="center" prop="branchid" />
+ <el-table-column label=" 鏈烘瀯ID " align="center" prop="orgid" />
+ <el-table-column label=" 涓婁紶鏍囪 " align="center" prop="isupload" />
+ <el-table-column label=" 涓婁紶鏃堕棿 " align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label=" AI澶栧懠鍦烘櫙ID " align="center" prop="sceneid" />
+ <el-table-column label=" 娴佺▼ID " align="center" prop="flowid" />
+ <el-table-column label=" 鑺傜偣ID " align="center" prop="flownodeid" />
+ <el-table-column label=" 鍒嗘敮鍚嶇О " align="center" prop="branchname" />
+ <el-table-column label=" 鏄惁鍚敤;0.鍚� 1.鏄� " align="center" prop="isenable" />
+ <el-table-column label=" 鎺掑簭 " align="center" prop="sort" />
+ <el-table-column label=" 鍒嗘敮绫诲瀷;1 浠讳綍鍥炲锛�2鏃犲洖澶嶏紝3鏈瘑鍒� 9.鏅�氬垎鏀� " align="center" prop="nodetype" />
+ <el-table-column label=" 璺宠浆鐩爣鑺傜偣ID " align="center" prop="targetid" />
+ <el-table-column label=" 鎷疯礉ID " align="center" prop="oldid" />
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:ivrflownodebranch:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:ivrflownodebranch:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀笰I澶栧懠娴佺▼鑺傜偣鍒嗘敮瀵硅瘽妗� -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏� 鏈烘瀯ID " />
+ </el-form-item>
+ <el-form-item label=" 鍒犻櫎鏍囪 " prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏� 鍒犻櫎鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏� 涓婁紶鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label=" AI澶栧懠鍦烘櫙ID " prop="sceneid">
+ <el-input v-model="form.sceneid" placeholder="璇疯緭鍏� AI澶栧懠鍦烘櫙ID " />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼ID " prop="flowid">
+ <el-input v-model="form.flowid" placeholder="璇疯緭鍏� 娴佺▼ID " />
+ </el-form-item>
+ <el-form-item label=" 鑺傜偣ID " prop="flownodeid">
+ <el-input v-model="form.flownodeid" placeholder="璇疯緭鍏� 鑺傜偣ID " />
+ </el-form-item>
+ <el-form-item label=" 鍒嗘敮鍚嶇О " prop="branchname">
+ <el-input v-model="form.branchname" placeholder="璇疯緭鍏� 鍒嗘敮鍚嶇О " />
+ </el-form-item>
+ <el-form-item label=" 鏄惁鍚敤;0.鍚� 1.鏄� " prop="isenable">
+ <el-input v-model="form.isenable" placeholder="璇疯緭鍏� 鏄惁鍚敤;0.鍚� 1.鏄� " />
+ </el-form-item>
+ <el-form-item label=" 鎺掑簭 " prop="sort">
+ <el-input v-model="form.sort" placeholder="璇疯緭鍏� 鎺掑簭 " />
+ </el-form-item>
+ <el-form-item label=" 璺宠浆鐩爣鑺傜偣ID " prop="targetid">
+ <el-input v-model="form.targetid" placeholder="璇疯緭鍏� 璺宠浆鐩爣鑺傜偣ID " />
+ </el-form-item>
+ <el-form-item label=" 鎷疯礉ID " prop="oldid">
+ <el-input v-model="form.oldid" placeholder="璇疯緭鍏� 鎷疯礉ID " />
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listIvrflownodebranch, getIvrflownodebranch, delIvrflownodebranch, addIvrflownodebranch, updateIvrflownodebranch } from "@/api/smartor/ivrflownodebranch";
+
+export default {
+ name: "Ivrflownodebranch",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // AI澶栧懠娴佺▼鑺傜偣鍒嗘敮琛ㄦ牸鏁版嵁
+ ivrflownodebranchList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ orgid: null,
+ isupload: null,
+ uploadTime: null,
+ sceneid: null,
+ flowid: null,
+ flownodeid: null,
+ branchname: null,
+ isenable: null,
+ sort: null,
+ nodetype: null,
+ targetid: null,
+ oldid: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ delFlag: [
+ { required: true, message: " 鍒犻櫎鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ isupload: [
+ { required: true, message: " 涓婁紶鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨAI澶栧懠娴佺▼鑺傜偣鍒嗘敮鍒楄〃 */
+ getList() {
+ this.loading = true;
+ listIvrflownodebranch(this.queryParams).then(response => {
+ this.ivrflownodebranchList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ branchid: null,
+ orgid: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null,
+ sceneid: null,
+ flowid: null,
+ flownodeid: null,
+ branchname: null,
+ isenable: null,
+ sort: null,
+ nodetype: null,
+ targetid: null,
+ oldid: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.branchid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞AI澶栧懠娴佺▼鑺傜偣鍒嗘敮";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const branchid = row.branchid || this.ids
+ getIvrflownodebranch(branchid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼AI澶栧懠娴佺▼鑺傜偣鍒嗘敮";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.branchid != null) {
+ updateIvrflownodebranch(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addIvrflownodebranch(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const branchids = row.branchid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎AI澶栧懠娴佺▼鑺傜偣鍒嗘敮缂栧彿涓�"' + branchids + '"鐨勬暟鎹」锛�').then(function() {
+ return delIvrflownodebranch(branchids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/ivrflownodebranch/export', {
+ ...this.queryParams
+ }, `ivrflownodebranch_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/ivrglobalconfig/index.vue b/ruoyi-ui/src/views/smartor/ivrglobalconfig/index.vue
new file mode 100644
index 0000000..a0e5e8e
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/ivrglobalconfig/index.vue
@@ -0,0 +1,389 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label=" AI澶栧懠鍦烘櫙ID " prop="sceneid">
+ <el-input
+ v-model="queryParams.sceneid"
+ placeholder="璇疯緭鍏� AI澶栧懠鍦烘櫙ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 閰嶇疆鍚嶇О " prop="configname">
+ <el-input
+ v-model="queryParams.configname"
+ placeholder="璇疯緭鍏� 閰嶇疆鍚嶇О "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 浼樺厛绾� " prop="sort">
+ <el-input
+ v-model="queryParams.sort"
+ placeholder="璇疯緭鍏� 浼樺厛绾� "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鏄惁鍚敤;0.鍚� 1.鏄� " prop="isenable">
+ <el-input
+ v-model="queryParams.isenable"
+ placeholder="璇疯緭鍏� 鏄惁鍚敤;0.鍚� 1.鏄� "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 璺宠浆绫诲瀷;0.鎸傛満 1.閲嶅鑺傜偣 " prop="jumpto">
+ <el-input
+ v-model="queryParams.jumpto"
+ placeholder="璇疯緭鍏� 璺宠浆绫诲瀷;0.鎸傛満 1.閲嶅鑺傜偣 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 閲嶅娆℃暟 " prop="repeatcount">
+ <el-input
+ v-model="queryParams.repeatcount"
+ placeholder="璇疯緭鍏� 閲嶅娆℃暟 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏� 鏈烘瀯ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏� 涓婁紶鏍囪 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:ivrglobalconfig:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:ivrglobalconfig:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:ivrglobalconfig:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:ivrglobalconfig:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="ivrglobalconfigList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label=" 鑷ID " align="center" prop="gblconfigid" />
+ <el-table-column label=" AI澶栧懠鍦烘櫙ID " align="center" prop="sceneid" />
+ <el-table-column label=" 閰嶇疆鍚嶇О " align="center" prop="configname" />
+ <el-table-column label=" 閰嶇疆鎻忚堪 " align="center" prop="description" />
+ <el-table-column label=" 浼樺厛绾� " align="center" prop="sort" />
+ <el-table-column label=" 浼樺厛鎵ц绫诲瀷;1.鍒嗘敮鍔ㄤ綔 2.閰嶇疆鍔ㄤ綔 " align="center" prop="executetype" />
+ <el-table-column label=" 鏄惁鍚敤;0.鍚� 1.鏄� " align="center" prop="isenable" />
+ <el-table-column label=" 璺宠浆绫诲瀷;0.鎸傛満 1.閲嶅鑺傜偣 " align="center" prop="jumpto" />
+ <el-table-column label=" 閲嶅娆℃暟 " align="center" prop="repeatcount" />
+ <el-table-column label=" 鏈烘瀯ID " align="center" prop="orgid" />
+ <el-table-column label=" 涓婁紶鏍囪 " align="center" prop="isupload" />
+ <el-table-column label=" 涓婁紶鏃堕棿 " align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:ivrglobalconfig:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:ivrglobalconfig:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀笰I澶栧懠鍏ㄥ眬閰嶇疆瀵硅瘽妗� -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label=" AI澶栧懠鍦烘櫙ID " prop="sceneid">
+ <el-input v-model="form.sceneid" placeholder="璇疯緭鍏� AI澶栧懠鍦烘櫙ID " />
+ </el-form-item>
+ <el-form-item label=" 閰嶇疆鍚嶇О " prop="configname">
+ <el-input v-model="form.configname" placeholder="璇疯緭鍏� 閰嶇疆鍚嶇О " />
+ </el-form-item>
+ <el-form-item label=" 閰嶇疆鎻忚堪 " prop="description">
+ <el-input v-model="form.description" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" />
+ </el-form-item>
+ <el-form-item label=" 浼樺厛绾� " prop="sort">
+ <el-input v-model="form.sort" placeholder="璇疯緭鍏� 浼樺厛绾� " />
+ </el-form-item>
+ <el-form-item label=" 鏄惁鍚敤;0.鍚� 1.鏄� " prop="isenable">
+ <el-input v-model="form.isenable" placeholder="璇疯緭鍏� 鏄惁鍚敤;0.鍚� 1.鏄� " />
+ </el-form-item>
+ <el-form-item label=" 璺宠浆绫诲瀷;0.鎸傛満 1.閲嶅鑺傜偣 " prop="jumpto">
+ <el-input v-model="form.jumpto" placeholder="璇疯緭鍏� 璺宠浆绫诲瀷;0.鎸傛満 1.閲嶅鑺傜偣 " />
+ </el-form-item>
+ <el-form-item label=" 閲嶅娆℃暟 " prop="repeatcount">
+ <el-input v-model="form.repeatcount" placeholder="璇疯緭鍏� 閲嶅娆℃暟 " />
+ </el-form-item>
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏� 鏈烘瀯ID " />
+ </el-form-item>
+ <el-form-item label=" 鍒犻櫎鏍囪 " prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏� 鍒犻櫎鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏� 涓婁紶鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listIvrglobalconfig, getIvrglobalconfig, delIvrglobalconfig, addIvrglobalconfig, updateIvrglobalconfig } from "@/api/smartor/ivrglobalconfig";
+
+export default {
+ name: "Ivrglobalconfig",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // AI澶栧懠鍏ㄥ眬閰嶇疆琛ㄦ牸鏁版嵁
+ ivrglobalconfigList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ sceneid: null,
+ configname: null,
+ description: null,
+ sort: null,
+ executetype: null,
+ isenable: null,
+ jumpto: null,
+ repeatcount: null,
+ orgid: null,
+ isupload: null,
+ uploadTime: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ delFlag: [
+ { required: true, message: " 鍒犻櫎鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ isupload: [
+ { required: true, message: " 涓婁紶鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨAI澶栧懠鍏ㄥ眬閰嶇疆鍒楄〃 */
+ getList() {
+ this.loading = true;
+ listIvrglobalconfig(this.queryParams).then(response => {
+ this.ivrglobalconfigList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ gblconfigid: null,
+ sceneid: null,
+ configname: null,
+ description: null,
+ sort: null,
+ executetype: null,
+ isenable: null,
+ jumpto: null,
+ repeatcount: null,
+ orgid: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.gblconfigid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞AI澶栧懠鍏ㄥ眬閰嶇疆";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const gblconfigid = row.gblconfigid || this.ids
+ getIvrglobalconfig(gblconfigid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼AI澶栧懠鍏ㄥ眬閰嶇疆";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.gblconfigid != null) {
+ updateIvrglobalconfig(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addIvrglobalconfig(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const gblconfigids = row.gblconfigid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎AI澶栧懠鍏ㄥ眬閰嶇疆缂栧彿涓�"' + gblconfigids + '"鐨勬暟鎹」锛�').then(function() {
+ return delIvrglobalconfig(gblconfigids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/ivrglobalconfig/export', {
+ ...this.queryParams
+ }, `ivrglobalconfig_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/ivrintent/index.vue b/ruoyi-ui/src/views/smartor/ivrintent/index.vue
new file mode 100644
index 0000000..f9c7283
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/ivrintent/index.vue
@@ -0,0 +1,476 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏� 鏈烘瀯ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍏ㄥ眬閰嶇疆ID;鍏ㄥ眬閰嶇疆ID " prop="gbiconfigid">
+ <el-input
+ v-model="queryParams.gbiconfigid"
+ placeholder="璇疯緭鍏� 鍏ㄥ眬閰嶇疆ID;鍏ㄥ眬閰嶇疆ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍦烘櫙ID " prop="sceneid">
+ <el-input
+ v-model="queryParams.sceneid"
+ placeholder="璇疯緭鍏� 鍦烘櫙ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼ID " prop="flowid">
+ <el-input
+ v-model="queryParams.flowid"
+ placeholder="璇疯緭鍏� 娴佺▼ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼鑺傜偣ID " prop="flownodeid">
+ <el-input
+ v-model="queryParams.flownodeid"
+ placeholder="璇疯緭鍏� 娴佺▼鑺傜偣ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼鑺傜偣鍒嗘敮ID " prop="flownodebranchid">
+ <el-input
+ v-model="queryParams.flownodebranchid"
+ placeholder="璇疯緭鍏� 娴佺▼鑺傜偣鍒嗘敮ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 寮曠敤鎰忓浘妯℃澘ID " prop="templateid">
+ <el-input
+ v-model="queryParams.templateid"
+ placeholder="璇疯緭鍏� 寮曠敤鎰忓浘妯℃澘ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鎰忓浘鍚嶇О " prop="intentionname">
+ <el-input
+ v-model="queryParams.intentionname"
+ placeholder="璇疯緭鍏� 鎰忓浘鍚嶇О "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 楠岃瘉瑙勫垯;澶氶�夐�楀彿闅斿紑" prop="verifyrule">
+ <el-input
+ v-model="queryParams.verifyrule"
+ placeholder="璇疯緭鍏� 楠岃瘉瑙勫垯;澶氶�夐�楀彿闅斿紑"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 瀛愪笖鎴�;0.鎴� 1.涓� " prop="orand">
+ <el-input
+ v-model="queryParams.orand"
+ placeholder="璇疯緭鍏� 瀛愪笖鎴�;0.鎴� 1.涓� "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鐖舵潯浠� " prop="parentresultconditionsid">
+ <el-input
+ v-model="queryParams.parentresultconditionsid"
+ placeholder="璇疯緭鍏� 鐖舵潯浠� "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鐖剁骇鍒嗙粍 " prop="groupnumber">
+ <el-input
+ v-model="queryParams.groupnumber"
+ placeholder="璇疯緭鍏� 鐖剁骇鍒嗙粍 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鐖朵笖鎴� " prop="grouporand">
+ <el-input
+ v-model="queryParams.grouporand"
+ placeholder="璇疯緭鍏� 鐖朵笖鎴� "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏� 涓婁紶鏍囪 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:ivrintent:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:ivrintent:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:ivrintent:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:ivrintent:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="ivrintentList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label=" 鑷ID " align="center" prop="sceneintentid" />
+ <el-table-column label=" 鏈烘瀯ID " align="center" prop="orgid" />
+ <el-table-column label=" 鏉ユ簮绫诲瀷;0.鍏ㄥ眬 1.涓荤嚎 " align="center" prop="sourcetype" />
+ <el-table-column label=" 鍏ㄥ眬閰嶇疆ID;鍏ㄥ眬閰嶇疆ID " align="center" prop="gbiconfigid" />
+ <el-table-column label=" 鍦烘櫙ID " align="center" prop="sceneid" />
+ <el-table-column label=" 娴佺▼ID " align="center" prop="flowid" />
+ <el-table-column label=" 娴佺▼鑺傜偣ID " align="center" prop="flownodeid" />
+ <el-table-column label=" 娴佺▼鑺傜偣鍒嗘敮ID " align="center" prop="flownodebranchid" />
+ <el-table-column label=" 寮曠敤鎰忓浘妯℃澘ID " align="center" prop="templateid" />
+ <el-table-column label=" 鎰忓浘鍚嶇О " align="center" prop="intentionname" />
+ <el-table-column label=" 鎰忓浘鍏抽敭瀛�" align="center" prop="intentionword" />
+ <el-table-column label=" 鏉′欢绫诲瀷;0.鎰忓浘璇嗗埆 1.鎮h�呮爣绛� " align="center" prop="conditionstype" />
+ <el-table-column label=" 楠岃瘉瑙勫垯;澶氶�夐�楀彿闅斿紑" align="center" prop="verifyrule" />
+ <el-table-column label=" 瀛愪笖鎴�;0.鎴� 1.涓� " align="center" prop="orand" />
+ <el-table-column label=" 鐖舵潯浠� " align="center" prop="parentresultconditionsid" />
+ <el-table-column label=" 鐖剁骇鍒嗙粍 " align="center" prop="groupnumber" />
+ <el-table-column label=" 鐖朵笖鎴� " align="center" prop="grouporand" />
+ <el-table-column label=" 涓婁紶鏍囪 " align="center" prop="isupload" />
+ <el-table-column label=" 涓婁紶鏃堕棿 " align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:ivrintent:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:ivrintent:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀笰I澶栧懠鎰忓浘瀵硅瘽妗� -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏� 鏈烘瀯ID " />
+ </el-form-item>
+ <el-form-item label=" 鍏ㄥ眬閰嶇疆ID;鍏ㄥ眬閰嶇疆ID " prop="gbiconfigid">
+ <el-input v-model="form.gbiconfigid" placeholder="璇疯緭鍏� 鍏ㄥ眬閰嶇疆ID;鍏ㄥ眬閰嶇疆ID " />
+ </el-form-item>
+ <el-form-item label=" 鍦烘櫙ID " prop="sceneid">
+ <el-input v-model="form.sceneid" placeholder="璇疯緭鍏� 鍦烘櫙ID " />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼ID " prop="flowid">
+ <el-input v-model="form.flowid" placeholder="璇疯緭鍏� 娴佺▼ID " />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼鑺傜偣ID " prop="flownodeid">
+ <el-input v-model="form.flownodeid" placeholder="璇疯緭鍏� 娴佺▼鑺傜偣ID " />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼鑺傜偣鍒嗘敮ID " prop="flownodebranchid">
+ <el-input v-model="form.flownodebranchid" placeholder="璇疯緭鍏� 娴佺▼鑺傜偣鍒嗘敮ID " />
+ </el-form-item>
+ <el-form-item label=" 寮曠敤鎰忓浘妯℃澘ID " prop="templateid">
+ <el-input v-model="form.templateid" placeholder="璇疯緭鍏� 寮曠敤鎰忓浘妯℃澘ID " />
+ </el-form-item>
+ <el-form-item label=" 鎰忓浘鍚嶇О " prop="intentionname">
+ <el-input v-model="form.intentionname" placeholder="璇疯緭鍏� 鎰忓浘鍚嶇О " />
+ </el-form-item>
+ <el-form-item label=" 鎰忓浘鍏抽敭瀛�" prop="intentionword">
+ <el-input v-model="form.intentionword" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" />
+ </el-form-item>
+ <el-form-item label=" 楠岃瘉瑙勫垯;澶氶�夐�楀彿闅斿紑" prop="verifyrule">
+ <el-input v-model="form.verifyrule" placeholder="璇疯緭鍏� 楠岃瘉瑙勫垯;澶氶�夐�楀彿闅斿紑" />
+ </el-form-item>
+ <el-form-item label=" 瀛愪笖鎴�;0.鎴� 1.涓� " prop="orand">
+ <el-input v-model="form.orand" placeholder="璇疯緭鍏� 瀛愪笖鎴�;0.鎴� 1.涓� " />
+ </el-form-item>
+ <el-form-item label=" 鐖舵潯浠� " prop="parentresultconditionsid">
+ <el-input v-model="form.parentresultconditionsid" placeholder="璇疯緭鍏� 鐖舵潯浠� " />
+ </el-form-item>
+ <el-form-item label=" 鐖剁骇鍒嗙粍 " prop="groupnumber">
+ <el-input v-model="form.groupnumber" placeholder="璇疯緭鍏� 鐖剁骇鍒嗙粍 " />
+ </el-form-item>
+ <el-form-item label=" 鐖朵笖鎴� " prop="grouporand">
+ <el-input v-model="form.grouporand" placeholder="璇疯緭鍏� 鐖朵笖鎴� " />
+ </el-form-item>
+ <el-form-item label=" 鍒犻櫎鏍囪 " prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏� 鍒犻櫎鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏� 涓婁紶鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listIvrintent, getIvrintent, delIvrintent, addIvrintent, updateIvrintent } from "@/api/smartor/ivrintent";
+
+export default {
+ name: "Ivrintent",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // AI澶栧懠鎰忓浘琛ㄦ牸鏁版嵁
+ ivrintentList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ orgid: null,
+ sourcetype: null,
+ gbiconfigid: null,
+ sceneid: null,
+ flowid: null,
+ flownodeid: null,
+ flownodebranchid: null,
+ templateid: null,
+ intentionname: null,
+ intentionword: null,
+ conditionstype: null,
+ verifyrule: null,
+ orand: null,
+ parentresultconditionsid: null,
+ groupnumber: null,
+ grouporand: null,
+ isupload: null,
+ uploadTime: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ delFlag: [
+ { required: true, message: " 鍒犻櫎鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ isupload: [
+ { required: true, message: " 涓婁紶鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨAI澶栧懠鎰忓浘鍒楄〃 */
+ getList() {
+ this.loading = true;
+ listIvrintent(this.queryParams).then(response => {
+ this.ivrintentList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ sceneintentid: null,
+ orgid: null,
+ sourcetype: null,
+ gbiconfigid: null,
+ sceneid: null,
+ flowid: null,
+ flownodeid: null,
+ flownodebranchid: null,
+ templateid: null,
+ intentionname: null,
+ intentionword: null,
+ conditionstype: null,
+ verifyrule: null,
+ orand: null,
+ parentresultconditionsid: null,
+ groupnumber: null,
+ grouporand: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.sceneintentid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞AI澶栧懠鎰忓浘";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const sceneintentid = row.sceneintentid || this.ids
+ getIvrintent(sceneintentid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼AI澶栧懠鎰忓浘";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.sceneintentid != null) {
+ updateIvrintent(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addIvrintent(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const sceneintentids = row.sceneintentid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎AI澶栧懠鎰忓浘缂栧彿涓�"' + sceneintentids + '"鐨勬暟鎹」锛�').then(function() {
+ return delIvrintent(sceneintentids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/ivrintent/export', {
+ ...this.queryParams
+ }, `ivrintent_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/ivrlibintent/index.vue b/ruoyi-ui/src/views/smartor/ivrlibintent/index.vue
new file mode 100644
index 0000000..f9ddb17
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/ivrlibintent/index.vue
@@ -0,0 +1,344 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏� 鏈烘瀯ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鎰忓浘鍚嶇О " prop="intentionname">
+ <el-input
+ v-model="queryParams.intentionname"
+ placeholder="璇疯緭鍏� 鎰忓浘鍚嶇О "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍒嗙被ID " prop="categoryid">
+ <el-input
+ v-model="queryParams.categoryid"
+ placeholder="璇疯緭鍏� 鍒嗙被ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鎰忓浘鍒嗙被鍚嶇О " prop="categoryname">
+ <el-input
+ v-model="queryParams.categoryname"
+ placeholder="璇疯緭鍏� 鎰忓浘鍒嗙被鍚嶇О "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏� 涓婁紶鏍囪 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:ivrlibintent:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:ivrlibintent:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:ivrlibintent:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:ivrlibintent:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="ivrlibintentList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label=" 鑷ID " align="center" prop="intentid" />
+ <el-table-column label=" 鏈烘瀯ID " align="center" prop="orgid" />
+ <el-table-column label=" 鎰忓浘鍚嶇О " align="center" prop="intentionname" />
+ <el-table-column label=" 鍒嗙被ID " align="center" prop="categoryid" />
+ <el-table-column label=" 鎰忓浘鍒嗙被鍚嶇О " align="center" prop="categoryname" />
+ <el-table-column label=" 鎰忓浘鍏抽敭瀛�" align="center" prop="intentionword" />
+ <el-table-column label=" 涓婁紶鏍囪 " align="center" prop="isupload" />
+ <el-table-column label=" 涓婁紶鏃堕棿 " align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:ivrlibintent:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:ivrlibintent:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀笰I鎰忓浘搴撳璇濇 -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏� 鏈烘瀯ID " />
+ </el-form-item>
+ <el-form-item label=" 鎰忓浘鍚嶇О " prop="intentionname">
+ <el-input v-model="form.intentionname" placeholder="璇疯緭鍏� 鎰忓浘鍚嶇О " />
+ </el-form-item>
+ <el-form-item label=" 鍒嗙被ID " prop="categoryid">
+ <el-input v-model="form.categoryid" placeholder="璇疯緭鍏� 鍒嗙被ID " />
+ </el-form-item>
+ <el-form-item label=" 鎰忓浘鍒嗙被鍚嶇О " prop="categoryname">
+ <el-input v-model="form.categoryname" placeholder="璇疯緭鍏� 鎰忓浘鍒嗙被鍚嶇О " />
+ </el-form-item>
+ <el-form-item label=" 鎰忓浘鍏抽敭瀛�" prop="intentionword">
+ <el-input v-model="form.intentionword" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" />
+ </el-form-item>
+ <el-form-item label=" 鍒犻櫎鏍囪 " prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏� 鍒犻櫎鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏� 涓婁紶鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listIvrlibintent, getIvrlibintent, delIvrlibintent, addIvrlibintent, updateIvrlibintent } from "@/api/smartor/ivrlibintent";
+
+export default {
+ name: "Ivrlibintent",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // AI鎰忓浘搴撹〃鏍兼暟鎹�
+ ivrlibintentList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ orgid: null,
+ intentionname: null,
+ categoryid: null,
+ categoryname: null,
+ intentionword: null,
+ isupload: null,
+ uploadTime: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ delFlag: [
+ { required: true, message: " 鍒犻櫎鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ isupload: [
+ { required: true, message: " 涓婁紶鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨAI鎰忓浘搴撳垪琛� */
+ getList() {
+ this.loading = true;
+ listIvrlibintent(this.queryParams).then(response => {
+ this.ivrlibintentList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ intentid: null,
+ orgid: null,
+ intentionname: null,
+ categoryid: null,
+ categoryname: null,
+ intentionword: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.intentid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞AI鎰忓浘搴�";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const intentid = row.intentid || this.ids
+ getIvrlibintent(intentid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼AI鎰忓浘搴�";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.intentid != null) {
+ updateIvrlibintent(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addIvrlibintent(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const intentids = row.intentid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎AI鎰忓浘搴撶紪鍙蜂负"' + intentids + '"鐨勬暟鎹」锛�').then(function() {
+ return delIvrlibintent(intentids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/ivrlibintent/export', {
+ ...this.queryParams
+ }, `ivrlibintent_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/ivrlibintentcategory/index.vue b/ruoyi-ui/src/views/smartor/ivrlibintentcategory/index.vue
new file mode 100644
index 0000000..1f0461a
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/ivrlibintentcategory/index.vue
@@ -0,0 +1,310 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label=" 鍒嗙被鍚嶇О " prop="categoryname">
+ <el-input
+ v-model="queryParams.categoryname"
+ placeholder="璇疯緭鍏� 鍒嗙被鍚嶇О "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏� 鏈烘瀯ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏� 涓婁紶鏍囪 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:ivrlibintentcategory:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:ivrlibintentcategory:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:ivrlibintentcategory:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:ivrlibintentcategory:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="ivrlibintentcategoryList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label=" 鑷ID " align="center" prop="intertcatid" />
+ <el-table-column label=" 鍒嗙被鍚嶇О " align="center" prop="categoryname" />
+ <el-table-column label=" 鏈烘瀯ID " align="center" prop="orgid" />
+ <el-table-column label=" 涓婁紶鏍囪 " align="center" prop="isupload" />
+ <el-table-column label=" 涓婁紶鏃堕棿 " align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:ivrlibintentcategory:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:ivrlibintentcategory:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀笰I鎰忓浘搴撳垎绫诲璇濇 -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label=" 鍒嗙被鍚嶇О " prop="categoryname">
+ <el-input v-model="form.categoryname" placeholder="璇疯緭鍏� 鍒嗙被鍚嶇О " />
+ </el-form-item>
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏� 鏈烘瀯ID " />
+ </el-form-item>
+ <el-form-item label=" 鍒犻櫎鏍囪 " prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏� 鍒犻櫎鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏� 涓婁紶鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listIvrlibintentcategory, getIvrlibintentcategory, delIvrlibintentcategory, addIvrlibintentcategory, updateIvrlibintentcategory } from "@/api/smartor/ivrlibintentcategory";
+
+export default {
+ name: "Ivrlibintentcategory",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // AI鎰忓浘搴撳垎绫昏〃鏍兼暟鎹�
+ ivrlibintentcategoryList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ categoryname: null,
+ orgid: null,
+ isupload: null,
+ uploadTime: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ delFlag: [
+ { required: true, message: " 鍒犻櫎鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ isupload: [
+ { required: true, message: " 涓婁紶鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨAI鎰忓浘搴撳垎绫诲垪琛� */
+ getList() {
+ this.loading = true;
+ listIvrlibintentcategory(this.queryParams).then(response => {
+ this.ivrlibintentcategoryList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ intertcatid: null,
+ categoryname: null,
+ orgid: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.intertcatid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞AI鎰忓浘搴撳垎绫�";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const intertcatid = row.intertcatid || this.ids
+ getIvrlibintentcategory(intertcatid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼AI鎰忓浘搴撳垎绫�";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.intertcatid != null) {
+ updateIvrlibintentcategory(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addIvrlibintentcategory(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const intertcatids = row.intertcatid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎AI鎰忓浘搴撳垎绫荤紪鍙蜂负"' + intertcatids + '"鐨勬暟鎹」锛�').then(function() {
+ return delIvrlibintentcategory(intertcatids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/ivrlibintentcategory/export', {
+ ...this.queryParams
+ }, `ivrlibintentcategory_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/ivrlibscript/index.vue b/ruoyi-ui/src/views/smartor/ivrlibscript/index.vue
new file mode 100644
index 0000000..8877627
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/ivrlibscript/index.vue
@@ -0,0 +1,380 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏� 鏈烘瀯ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍒嗙被 " prop="categoryid">
+ <el-input
+ v-model="queryParams.categoryid"
+ placeholder="璇疯緭鍏� 鍒嗙被 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍒嗙被鍚嶇О " prop="categoryname">
+ <el-input
+ v-model="queryParams.categoryname"
+ placeholder="璇疯緭鍏� 鍒嗙被鍚嶇О "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳鍐呭" prop="speakbody">
+ <el-input
+ v-model="queryParams.speakbody"
+ placeholder="璇疯緭鍏� 璇濇湳鍐呭"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳鏂囦欢璺緞" prop="speakfilepath">
+ <el-input
+ v-model="queryParams.speakfilepath"
+ placeholder="璇疯緭鍏� 璇濇湳鏂囦欢璺緞"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鏄惁鍏ㄥ眬銆�0鍚�1鏄�� " prop="isall">
+ <el-input
+ v-model="queryParams.isall"
+ placeholder="璇疯緭鍏� 鏄惁鍏ㄥ眬銆�0鍚�1鏄�� "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳鍚嶇О " prop="speakname">
+ <el-input
+ v-model="queryParams.speakname"
+ placeholder="璇疯緭鍏� 璇濇湳鍚嶇О "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏� 涓婁紶鏍囪 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:ivrlibscript:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:ivrlibscript:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:ivrlibscript:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:ivrlibscript:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="ivrlibscriptList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label=" 鑷ID " align="center" prop="scriptid" />
+ <el-table-column label=" 鏈烘瀯ID " align="center" prop="orgid" />
+ <el-table-column label=" 鍒嗙被 " align="center" prop="categoryid" />
+ <el-table-column label=" 鍒嗙被鍚嶇О " align="center" prop="categoryname" />
+ <el-table-column label=" 璇濇湳鍐呭" align="center" prop="speakbody" />
+ <el-table-column label=" 璇濇湳鏂囦欢璺緞" align="center" prop="speakfilepath" />
+ <el-table-column label=" 鏄惁鍏ㄥ眬銆�0鍚�1鏄�� " align="center" prop="isall" />
+ <el-table-column label=" 璇濇湳鍚嶇О " align="center" prop="speakname" />
+ <el-table-column label=" 涓婁紶鏍囪 " align="center" prop="isupload" />
+ <el-table-column label=" 涓婁紶鏃堕棿 " align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:ivrlibscript:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:ivrlibscript:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀笰I璇濇湳搴撳璇濇 -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏� 鏈烘瀯ID " />
+ </el-form-item>
+ <el-form-item label=" 鍒嗙被 " prop="categoryid">
+ <el-input v-model="form.categoryid" placeholder="璇疯緭鍏� 鍒嗙被 " />
+ </el-form-item>
+ <el-form-item label=" 鍒嗙被鍚嶇О " prop="categoryname">
+ <el-input v-model="form.categoryname" placeholder="璇疯緭鍏� 鍒嗙被鍚嶇О " />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳鍐呭" prop="speakbody">
+ <el-input v-model="form.speakbody" placeholder="璇疯緭鍏� 璇濇湳鍐呭" />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳鏂囦欢璺緞" prop="speakfilepath">
+ <el-input v-model="form.speakfilepath" placeholder="璇疯緭鍏� 璇濇湳鏂囦欢璺緞" />
+ </el-form-item>
+ <el-form-item label=" 鏄惁鍏ㄥ眬銆�0鍚�1鏄�� " prop="isall">
+ <el-input v-model="form.isall" placeholder="璇疯緭鍏� 鏄惁鍏ㄥ眬銆�0鍚�1鏄�� " />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳鍚嶇О " prop="speakname">
+ <el-input v-model="form.speakname" placeholder="璇疯緭鍏� 璇濇湳鍚嶇О " />
+ </el-form-item>
+ <el-form-item label=" 鍒犻櫎鏍囪 " prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏� 鍒犻櫎鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏� 涓婁紶鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listIvrlibscript, getIvrlibscript, delIvrlibscript, addIvrlibscript, updateIvrlibscript } from "@/api/smartor/ivrlibscript";
+
+export default {
+ name: "Ivrlibscript",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // AI璇濇湳搴撹〃鏍兼暟鎹�
+ ivrlibscriptList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ orgid: null,
+ categoryid: null,
+ categoryname: null,
+ speakbody: null,
+ speakfilepath: null,
+ isall: null,
+ speakname: null,
+ isupload: null,
+ uploadTime: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ delFlag: [
+ { required: true, message: " 鍒犻櫎鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ isupload: [
+ { required: true, message: " 涓婁紶鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨAI璇濇湳搴撳垪琛� */
+ getList() {
+ this.loading = true;
+ listIvrlibscript(this.queryParams).then(response => {
+ this.ivrlibscriptList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ scriptid: null,
+ orgid: null,
+ categoryid: null,
+ categoryname: null,
+ speakbody: null,
+ speakfilepath: null,
+ isall: null,
+ speakname: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.scriptid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞AI璇濇湳搴�";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const scriptid = row.scriptid || this.ids
+ getIvrlibscript(scriptid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼AI璇濇湳搴�";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.scriptid != null) {
+ updateIvrlibscript(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addIvrlibscript(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const scriptids = row.scriptid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎AI璇濇湳搴撶紪鍙蜂负"' + scriptids + '"鐨勬暟鎹」锛�').then(function() {
+ return delIvrlibscript(scriptids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/ivrlibscript/export', {
+ ...this.queryParams
+ }, `ivrlibscript_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/ivrlibscriptcategory/index.vue b/ruoyi-ui/src/views/smartor/ivrlibscriptcategory/index.vue
new file mode 100644
index 0000000..78a74f3
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/ivrlibscriptcategory/index.vue
@@ -0,0 +1,310 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label=" 鍒嗙被鍚嶇О " prop="categoryname">
+ <el-input
+ v-model="queryParams.categoryname"
+ placeholder="璇疯緭鍏� 鍒嗙被鍚嶇О "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏� 鏈烘瀯ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏� 涓婁紶鏍囪 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:ivrlibscriptcategory:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:ivrlibscriptcategory:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:ivrlibscriptcategory:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:ivrlibscriptcategory:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="ivrlibscriptcategoryList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label=" 鑷ID " align="center" prop="categoryid" />
+ <el-table-column label=" 鍒嗙被鍚嶇О " align="center" prop="categoryname" />
+ <el-table-column label=" 鏈烘瀯ID " align="center" prop="orgid" />
+ <el-table-column label=" 涓婁紶鏍囪 " align="center" prop="isupload" />
+ <el-table-column label=" 涓婁紶鏃堕棿 " align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:ivrlibscriptcategory:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:ivrlibscriptcategory:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀笰I璇濇湳搴撳垎绫诲璇濇 -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label=" 鍒嗙被鍚嶇О " prop="categoryname">
+ <el-input v-model="form.categoryname" placeholder="璇疯緭鍏� 鍒嗙被鍚嶇О " />
+ </el-form-item>
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏� 鏈烘瀯ID " />
+ </el-form-item>
+ <el-form-item label=" 鍒犻櫎鏍囪 " prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏� 鍒犻櫎鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏� 涓婁紶鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listIvrlibscriptcategory, getIvrlibscriptcategory, delIvrlibscriptcategory, addIvrlibscriptcategory, updateIvrlibscriptcategory } from "@/api/smartor/ivrlibscriptcategory";
+
+export default {
+ name: "Ivrlibscriptcategory",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // AI璇濇湳搴撳垎绫昏〃鏍兼暟鎹�
+ ivrlibscriptcategoryList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ categoryname: null,
+ orgid: null,
+ isupload: null,
+ uploadTime: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ delFlag: [
+ { required: true, message: " 鍒犻櫎鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ isupload: [
+ { required: true, message: " 涓婁紶鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨAI璇濇湳搴撳垎绫诲垪琛� */
+ getList() {
+ this.loading = true;
+ listIvrlibscriptcategory(this.queryParams).then(response => {
+ this.ivrlibscriptcategoryList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ categoryid: null,
+ categoryname: null,
+ orgid: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.categoryid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞AI璇濇湳搴撳垎绫�";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const categoryid = row.categoryid || this.ids
+ getIvrlibscriptcategory(categoryid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼AI璇濇湳搴撳垎绫�";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.categoryid != null) {
+ updateIvrlibscriptcategory(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addIvrlibscriptcategory(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const categoryids = row.categoryid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎AI璇濇湳搴撳垎绫荤紪鍙蜂负"' + categoryids + '"鐨勬暟鎹」锛�').then(function() {
+ return delIvrlibscriptcategory(categoryids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/ivrlibscriptcategory/export', {
+ ...this.queryParams
+ }, `ivrlibscriptcategory_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/ivrlibscriptmodel/index.vue b/ruoyi-ui/src/views/smartor/ivrlibscriptmodel/index.vue
new file mode 100644
index 0000000..20b4ec8
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/ivrlibscriptmodel/index.vue
@@ -0,0 +1,409 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏� 鏈烘瀯ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳ID " prop="scriptid">
+ <el-input
+ v-model="queryParams.scriptid"
+ placeholder="璇疯緭鍏� 璇濇湳ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 璇煶鏂囦欢 " prop="speakfilepath">
+ <el-input
+ v-model="queryParams.speakfilepath"
+ placeholder="璇疯緭鍏� 璇煶鏂囦欢 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍚堟垚鍘傚晢 " prop="manufactor">
+ <el-input
+ v-model="queryParams.manufactor"
+ placeholder="璇疯緭鍏� 鍚堟垚鍘傚晢 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 璇�� " prop="speechnum">
+ <el-input
+ v-model="queryParams.speechnum"
+ placeholder="璇疯緭鍏� 璇�� "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 闊抽珮 " prop="pitch">
+ <el-input
+ v-model="queryParams.pitch"
+ placeholder="璇疯緭鍏� 闊抽珮 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 闊抽噺 " prop="volume">
+ <el-input
+ v-model="queryParams.volume"
+ placeholder="璇疯緭鍏� 闊抽噺 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏� 涓婁紶鏍囪 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label=" 鍙橀噺璇濇湳鍙橀噺 " prop="speakvariable">
+ <el-input
+ v-model="queryParams.speakvariable"
+ placeholder="璇疯緭鍏� 鍙橀噺璇濇湳鍙橀噺 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:ivrlibscriptmodel:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:ivrlibscriptmodel:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:ivrlibscriptmodel:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:ivrlibscriptmodel:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="ivrlibscriptmodelList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label=" 鑷ID " align="center" prop="modelid" />
+ <el-table-column label=" 鏈烘瀯ID " align="center" prop="orgid" />
+ <el-table-column label=" 璇濇湳ID " align="center" prop="scriptid" />
+ <el-table-column label=" 璇濇湳绫诲瀷銆�0:鏅�氳瘽鏈� 1:鍙橀噺璇濇湳銆� " align="center" prop="speaktype" />
+ <el-table-column label=" 璇濇湳鍐呭 " align="center" prop="speakbody" />
+ <el-table-column label=" 璇煶绫诲瀷銆�0:鐪熶汉褰曢煶 1:鍚堟垚璇煶銆� " align="center" prop="voicetype" />
+ <el-table-column label=" 璇煶鏂囦欢 " align="center" prop="speakfilepath" />
+ <el-table-column label=" 鍚堟垚鍘傚晢 " align="center" prop="manufactor" />
+ <el-table-column label=" 澹伴煶绫诲瀷 " align="center" prop="soundtype" />
+ <el-table-column label=" 璇�� " align="center" prop="speechnum" />
+ <el-table-column label=" 闊抽珮 " align="center" prop="pitch" />
+ <el-table-column label=" 闊抽噺 " align="center" prop="volume" />
+ <el-table-column label=" 涓婁紶鏍囪 " align="center" prop="isupload" />
+ <el-table-column label=" 涓婁紶鏃堕棿 " align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label=" 鍙橀噺璇濇湳鍙橀噺 " align="center" prop="speakvariable" />
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:ivrlibscriptmodel:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:ivrlibscriptmodel:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀笰I璇濇湳妯″潡瀵硅瘽妗� -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏� 鏈烘瀯ID " />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳ID " prop="scriptid">
+ <el-input v-model="form.scriptid" placeholder="璇疯緭鍏� 璇濇湳ID " />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳鍐呭 " prop="speakbody">
+ <el-input v-model="form.speakbody" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" />
+ </el-form-item>
+ <el-form-item label=" 璇煶鏂囦欢 " prop="speakfilepath">
+ <el-input v-model="form.speakfilepath" placeholder="璇疯緭鍏� 璇煶鏂囦欢 " />
+ </el-form-item>
+ <el-form-item label=" 鍚堟垚鍘傚晢 " prop="manufactor">
+ <el-input v-model="form.manufactor" placeholder="璇疯緭鍏� 鍚堟垚鍘傚晢 " />
+ </el-form-item>
+ <el-form-item label=" 璇�� " prop="speechnum">
+ <el-input v-model="form.speechnum" placeholder="璇疯緭鍏� 璇�� " />
+ </el-form-item>
+ <el-form-item label=" 闊抽珮 " prop="pitch">
+ <el-input v-model="form.pitch" placeholder="璇疯緭鍏� 闊抽珮 " />
+ </el-form-item>
+ <el-form-item label=" 闊抽噺 " prop="volume">
+ <el-input v-model="form.volume" placeholder="璇疯緭鍏� 闊抽噺 " />
+ </el-form-item>
+ <el-form-item label=" 鍒犻櫎鏍囪 " prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏� 鍒犻櫎鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏� 涓婁紶鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label=" 鍙橀噺璇濇湳鍙橀噺 " prop="speakvariable">
+ <el-input v-model="form.speakvariable" placeholder="璇疯緭鍏� 鍙橀噺璇濇湳鍙橀噺 " />
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listIvrlibscriptmodel, getIvrlibscriptmodel, delIvrlibscriptmodel, addIvrlibscriptmodel, updateIvrlibscriptmodel } from "@/api/smartor/ivrlibscriptmodel";
+
+export default {
+ name: "Ivrlibscriptmodel",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // AI璇濇湳妯″潡琛ㄦ牸鏁版嵁
+ ivrlibscriptmodelList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ orgid: null,
+ scriptid: null,
+ speaktype: null,
+ speakbody: null,
+ voicetype: null,
+ speakfilepath: null,
+ manufactor: null,
+ soundtype: null,
+ speechnum: null,
+ pitch: null,
+ volume: null,
+ isupload: null,
+ uploadTime: null,
+ speakvariable: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ delFlag: [
+ { required: true, message: " 鍒犻櫎鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ isupload: [
+ { required: true, message: " 涓婁紶鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨAI璇濇湳妯″潡鍒楄〃 */
+ getList() {
+ this.loading = true;
+ listIvrlibscriptmodel(this.queryParams).then(response => {
+ this.ivrlibscriptmodelList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ modelid: null,
+ orgid: null,
+ scriptid: null,
+ speaktype: null,
+ speakbody: null,
+ voicetype: null,
+ speakfilepath: null,
+ manufactor: null,
+ soundtype: null,
+ speechnum: null,
+ pitch: null,
+ volume: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null,
+ speakvariable: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.modelid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞AI璇濇湳妯″潡";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const modelid = row.modelid || this.ids
+ getIvrlibscriptmodel(modelid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼AI璇濇湳妯″潡";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.modelid != null) {
+ updateIvrlibscriptmodel(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addIvrlibscriptmodel(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const modelids = row.modelid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎AI璇濇湳妯″潡缂栧彿涓�"' + modelids + '"鐨勬暟鎹」锛�').then(function() {
+ return delIvrlibscriptmodel(modelids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/ivrlibscriptmodel/export', {
+ ...this.queryParams
+ }, `ivrlibscriptmodel_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/ivrrecall/index.vue b/ruoyi-ui/src/views/smartor/ivrrecall/index.vue
new file mode 100644
index 0000000..64efe99
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/ivrrecall/index.vue
@@ -0,0 +1,355 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏� 鏈烘瀯ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍦烘櫙ID " prop="sceneid">
+ <el-input
+ v-model="queryParams.sceneid"
+ placeholder="璇疯緭鍏� 鍦烘櫙ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 娆℃暟 " prop="recallcount">
+ <el-input
+ v-model="queryParams.recallcount"
+ placeholder="璇疯緭鍏� 娆℃暟 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 閲嶆嫧闂撮殧 " prop="recallinterval">
+ <el-input
+ v-model="queryParams.recallinterval"
+ placeholder="璇疯緭鍏� 閲嶆嫧闂撮殧 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 閲嶆嫧鏃堕棿鍗曚綅;0.鍒嗛挓 1.绉� 2.灏忔椂 " prop="recallunit">
+ <el-input
+ v-model="queryParams.recallunit"
+ placeholder="璇疯緭鍏� 閲嶆嫧鏃堕棿鍗曚綅;0.鍒嗛挓 1.绉� 2.灏忔椂 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏� 涓婁紶鏍囪 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:ivrrecall:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:ivrrecall:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:ivrrecall:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:ivrrecall:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="ivrrecallList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label=" 鑷ID " align="center" prop="recallid" />
+ <el-table-column label=" 鏈烘瀯ID " align="center" prop="orgid" />
+ <el-table-column label=" 鍦烘櫙ID " align="center" prop="sceneid" />
+ <el-table-column label=" 閲嶆嫧鎯呮櫙绫诲瀷;0.浠诲姟鎵ц澶辫触 1.鏈帴閫� 2.鏃犱汉鎺ュ惉 3.鎮h�呮嫆缁� 4.鎺ラ�氭棤搴旂瓟 澶氶�� 閫楀彿闅斿紑 " align="center" prop="recalltype" />
+ <el-table-column label=" 娆℃暟 " align="center" prop="recallcount" />
+ <el-table-column label=" 閲嶆嫧闂撮殧 " align="center" prop="recallinterval" />
+ <el-table-column label=" 閲嶆嫧鏃堕棿鍗曚綅;0.鍒嗛挓 1.绉� 2.灏忔椂 " align="center" prop="recallunit" />
+ <el-table-column label=" 涓婁紶鏍囪 " align="center" prop="isupload" />
+ <el-table-column label=" 涓婁紶鏃堕棿 " align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:ivrrecall:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:ivrrecall:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀笰I澶栧懠閲嶆嫧閰嶇疆瀵硅瘽妗� -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏� 鏈烘瀯ID " />
+ </el-form-item>
+ <el-form-item label=" 鍦烘櫙ID " prop="sceneid">
+ <el-input v-model="form.sceneid" placeholder="璇疯緭鍏� 鍦烘櫙ID " />
+ </el-form-item>
+ <el-form-item label=" 娆℃暟 " prop="recallcount">
+ <el-input v-model="form.recallcount" placeholder="璇疯緭鍏� 娆℃暟 " />
+ </el-form-item>
+ <el-form-item label=" 閲嶆嫧闂撮殧 " prop="recallinterval">
+ <el-input v-model="form.recallinterval" placeholder="璇疯緭鍏� 閲嶆嫧闂撮殧 " />
+ </el-form-item>
+ <el-form-item label=" 閲嶆嫧鏃堕棿鍗曚綅;0.鍒嗛挓 1.绉� 2.灏忔椂 " prop="recallunit">
+ <el-input v-model="form.recallunit" placeholder="璇疯緭鍏� 閲嶆嫧鏃堕棿鍗曚綅;0.鍒嗛挓 1.绉� 2.灏忔椂 " />
+ </el-form-item>
+ <el-form-item label=" 鍒犻櫎鏍囪 " prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏� 鍒犻櫎鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏� 涓婁紶鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listIvrrecall, getIvrrecall, delIvrrecall, addIvrrecall, updateIvrrecall } from "@/api/smartor/ivrrecall";
+
+export default {
+ name: "Ivrrecall",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // AI澶栧懠閲嶆嫧閰嶇疆琛ㄦ牸鏁版嵁
+ ivrrecallList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ orgid: null,
+ sceneid: null,
+ recalltype: null,
+ recallcount: null,
+ recallinterval: null,
+ recallunit: null,
+ isupload: null,
+ uploadTime: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ delFlag: [
+ { required: true, message: " 鍒犻櫎鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ isupload: [
+ { required: true, message: " 涓婁紶鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨAI澶栧懠閲嶆嫧閰嶇疆鍒楄〃 */
+ getList() {
+ this.loading = true;
+ listIvrrecall(this.queryParams).then(response => {
+ this.ivrrecallList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ recallid: null,
+ orgid: null,
+ sceneid: null,
+ recalltype: null,
+ recallcount: null,
+ recallinterval: null,
+ recallunit: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.recallid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞AI澶栧懠閲嶆嫧閰嶇疆";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const recallid = row.recallid || this.ids
+ getIvrrecall(recallid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼AI澶栧懠閲嶆嫧閰嶇疆";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.recallid != null) {
+ updateIvrrecall(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addIvrrecall(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const recallids = row.recallid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎AI澶栧懠閲嶆嫧閰嶇疆缂栧彿涓�"' + recallids + '"鐨勬暟鎹」锛�').then(function() {
+ return delIvrrecall(recallids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/ivrrecall/export', {
+ ...this.queryParams
+ }, `ivrrecall_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/ivrscene/index.vue b/ruoyi-ui/src/views/smartor/ivrscene/index.vue
new file mode 100644
index 0000000..1f4b2c8
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/ivrscene/index.vue
@@ -0,0 +1,470 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label=" 鍒嗙被ID " prop="categoryid">
+ <el-input
+ v-model="queryParams.categoryid"
+ placeholder="璇疯緭鍏� 鍒嗙被ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍦烘櫙鍚嶇О " prop="scenename">
+ <el-input
+ v-model="queryParams.scenename"
+ placeholder="璇疯緭鍏� 鍦烘櫙鍚嶇О "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鐗堟湰鍙� " prop="version">
+ <el-input
+ v-model="queryParams.version"
+ placeholder="璇疯緭鍏� 鐗堟湰鍙� "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍏宠仈ID" prop="relationid">
+ <el-input
+ v-model="queryParams.relationid"
+ placeholder="璇疯緭鍏� 鍏宠仈ID"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍦烘櫙缂栧彿;鍚屼竴鍦烘櫙鍞竴锛岀敤浜庡尯鍒嗙増鏈� " prop="scenecode">
+ <el-input
+ v-model="queryParams.scenecode"
+ placeholder="璇疯緭鍏� 鍦烘櫙缂栧彿;鍚屼竴鍦烘櫙鍞竴锛岀敤浜庡尯鍒嗙増鏈� "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鐗堟湰鏄惁鍚敤;0.鍚� 1.鏄� " prop="versionenable">
+ <el-input
+ v-model="queryParams.versionenable"
+ placeholder="璇疯緭鍏� 鐗堟湰鏄惁鍚敤;0.鍚� 1.鏄� "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鏄惁鍚敤;0.鍚� 1.鏄� " prop="isenable">
+ <el-input
+ v-model="queryParams.isenable"
+ placeholder="璇疯緭鍏� 鏄惁鍚敤;0.鍚� 1.鏄� "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鏄惁鍙戝竷 " prop="isrelease">
+ <el-input
+ v-model="queryParams.isrelease"
+ placeholder="璇疯緭鍏� 鏄惁鍙戝竷 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鏈�闀挎墽琛屽懆鏈�;0-15姝f暣鏁帮紝榛樿涓�5 " prop="executecycle">
+ <el-input
+ v-model="queryParams.executecycle"
+ placeholder="璇疯緭鍏� 鏈�闀挎墽琛屽懆鏈�;0-15姝f暣鏁帮紝榛樿涓�5 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鏄惁澶嶆牳;0.鍚� 1.鏄� " prop="isreview">
+ <el-input
+ v-model="queryParams.isreview"
+ placeholder="璇疯緭鍏� 鏄惁澶嶆牳;0.鍚� 1.鏄� "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏� 鏈烘瀯ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏� 涓婁紶鏍囪 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label=" 鍙戝竷璇存槑 " prop="releasenotes">
+ <el-input
+ v-model="queryParams.releasenotes"
+ placeholder="璇疯緭鍏� 鍙戝竷璇存槑 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鑽夌ID " prop="draftid">
+ <el-input
+ v-model="queryParams.draftid"
+ placeholder="璇疯緭鍏� 鑽夌ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:ivrscene:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:ivrscene:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:ivrscene:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:ivrscene:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="ivrsceneList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label=" 鑷ID " align="center" prop="sceneid" />
+ <el-table-column label=" 鍒嗙被ID " align="center" prop="categoryid" />
+ <el-table-column label=" 鍦烘櫙鍚嶇О " align="center" prop="scenename" />
+ <el-table-column label=" 鐗堟湰鍙� " align="center" prop="version" />
+ <el-table-column label=" 鍏宠仈ID" align="center" prop="relationid" />
+ <el-table-column label=" 鍧愬腑ID;澶氫釜鍧愬腑閫楀彿 " align="center" prop="seatsid" />
+ <el-table-column label=" 鍦烘櫙缂栧彿;鍚屼竴鍦烘櫙鍞竴锛岀敤浜庡尯鍒嗙増鏈� " align="center" prop="scenecode" />
+ <el-table-column label=" 鐗堟湰鏄惁鍚敤;0.鍚� 1.鏄� " align="center" prop="versionenable" />
+ <el-table-column label=" 鏄惁鍚敤;0.鍚� 1.鏄� " align="center" prop="isenable" />
+ <el-table-column label=" 鏄惁鍙戝竷 " align="center" prop="isrelease" />
+ <el-table-column label=" 鏈�闀挎墽琛屽懆鏈�;0-15姝f暣鏁帮紝榛樿涓�5 " align="center" prop="executecycle" />
+ <el-table-column label=" 鏄惁澶嶆牳;0.鍚� 1.鏄� " align="center" prop="isreview" />
+ <el-table-column label=" 鏈烘瀯ID " align="center" prop="orgid" />
+ <el-table-column label=" 涓婁紶鏍囪 " align="center" prop="isupload" />
+ <el-table-column label=" 涓婁紶鏃堕棿 " align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label=" 鍙戝竷璇存槑 " align="center" prop="releasenotes" />
+ <el-table-column label=" 鑽夌ID " align="center" prop="draftid" />
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:ivrscene:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:ivrscene:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀笰I澶栧懠鍦烘櫙绠$悊瀵硅瘽妗� -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label=" 鍒嗙被ID " prop="categoryid">
+ <el-input v-model="form.categoryid" placeholder="璇疯緭鍏� 鍒嗙被ID " />
+ </el-form-item>
+ <el-form-item label=" 鍦烘櫙鍚嶇О " prop="scenename">
+ <el-input v-model="form.scenename" placeholder="璇疯緭鍏� 鍦烘櫙鍚嶇О " />
+ </el-form-item>
+ <el-form-item label=" 鐗堟湰鍙� " prop="version">
+ <el-input v-model="form.version" placeholder="璇疯緭鍏� 鐗堟湰鍙� " />
+ </el-form-item>
+ <el-form-item label=" 鍏宠仈ID" prop="relationid">
+ <el-input v-model="form.relationid" placeholder="璇疯緭鍏� 鍏宠仈ID" />
+ </el-form-item>
+ <el-form-item label=" 鍧愬腑ID;澶氫釜鍧愬腑閫楀彿 " prop="seatsid">
+ <el-input v-model="form.seatsid" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" />
+ </el-form-item>
+ <el-form-item label=" 鍦烘櫙缂栧彿;鍚屼竴鍦烘櫙鍞竴锛岀敤浜庡尯鍒嗙増鏈� " prop="scenecode">
+ <el-input v-model="form.scenecode" placeholder="璇疯緭鍏� 鍦烘櫙缂栧彿;鍚屼竴鍦烘櫙鍞竴锛岀敤浜庡尯鍒嗙増鏈� " />
+ </el-form-item>
+ <el-form-item label=" 鐗堟湰鏄惁鍚敤;0.鍚� 1.鏄� " prop="versionenable">
+ <el-input v-model="form.versionenable" placeholder="璇疯緭鍏� 鐗堟湰鏄惁鍚敤;0.鍚� 1.鏄� " />
+ </el-form-item>
+ <el-form-item label=" 鏄惁鍚敤;0.鍚� 1.鏄� " prop="isenable">
+ <el-input v-model="form.isenable" placeholder="璇疯緭鍏� 鏄惁鍚敤;0.鍚� 1.鏄� " />
+ </el-form-item>
+ <el-form-item label=" 鏄惁鍙戝竷 " prop="isrelease">
+ <el-input v-model="form.isrelease" placeholder="璇疯緭鍏� 鏄惁鍙戝竷 " />
+ </el-form-item>
+ <el-form-item label=" 鏈�闀挎墽琛屽懆鏈�;0-15姝f暣鏁帮紝榛樿涓�5 " prop="executecycle">
+ <el-input v-model="form.executecycle" placeholder="璇疯緭鍏� 鏈�闀挎墽琛屽懆鏈�;0-15姝f暣鏁帮紝榛樿涓�5 " />
+ </el-form-item>
+ <el-form-item label=" 鏄惁澶嶆牳;0.鍚� 1.鏄� " prop="isreview">
+ <el-input v-model="form.isreview" placeholder="璇疯緭鍏� 鏄惁澶嶆牳;0.鍚� 1.鏄� " />
+ </el-form-item>
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏� 鏈烘瀯ID " />
+ </el-form-item>
+ <el-form-item label=" 鍒犻櫎鏍囪 " prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏� 鍒犻櫎鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏� 涓婁紶鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label=" 鍙戝竷璇存槑 " prop="releasenotes">
+ <el-input v-model="form.releasenotes" placeholder="璇疯緭鍏� 鍙戝竷璇存槑 " />
+ </el-form-item>
+ <el-form-item label=" 鑽夌ID " prop="draftid">
+ <el-input v-model="form.draftid" placeholder="璇疯緭鍏� 鑽夌ID " />
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listIvrscene, getIvrscene, delIvrscene, addIvrscene, updateIvrscene } from "@/api/smartor/ivrscene";
+
+export default {
+ name: "Ivrscene",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // AI澶栧懠鍦烘櫙绠$悊琛ㄦ牸鏁版嵁
+ ivrsceneList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ categoryid: null,
+ scenename: null,
+ version: null,
+ relationid: null,
+ seatsid: null,
+ scenecode: null,
+ versionenable: null,
+ isenable: null,
+ isrelease: null,
+ executecycle: null,
+ isreview: null,
+ orgid: null,
+ isupload: null,
+ uploadTime: null,
+ releasenotes: null,
+ draftid: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ delFlag: [
+ { required: true, message: " 鍒犻櫎鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ isupload: [
+ { required: true, message: " 涓婁紶鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨAI澶栧懠鍦烘櫙绠$悊鍒楄〃 */
+ getList() {
+ this.loading = true;
+ listIvrscene(this.queryParams).then(response => {
+ this.ivrsceneList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ sceneid: null,
+ categoryid: null,
+ scenename: null,
+ version: null,
+ relationid: null,
+ seatsid: null,
+ scenecode: null,
+ versionenable: null,
+ isenable: null,
+ isrelease: null,
+ executecycle: null,
+ isreview: null,
+ orgid: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null,
+ releasenotes: null,
+ draftid: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.sceneid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞AI澶栧懠鍦烘櫙绠$悊";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const sceneid = row.sceneid || this.ids
+ getIvrscene(sceneid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼AI澶栧懠鍦烘櫙绠$悊";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.sceneid != null) {
+ updateIvrscene(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addIvrscene(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const sceneids = row.sceneid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎AI澶栧懠鍦烘櫙绠$悊缂栧彿涓�"' + sceneids + '"鐨勬暟鎹」锛�').then(function() {
+ return delIvrscene(sceneids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/ivrscene/export', {
+ ...this.queryParams
+ }, `ivrscene_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/ivrscenecategory/index.vue b/ruoyi-ui/src/views/smartor/ivrscenecategory/index.vue
new file mode 100644
index 0000000..cf1e427
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/ivrscenecategory/index.vue
@@ -0,0 +1,310 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label=" 鍒嗙被鍚嶇О " prop="categoryname">
+ <el-input
+ v-model="queryParams.categoryname"
+ placeholder="璇疯緭鍏� 鍒嗙被鍚嶇О "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏� 鏈烘瀯ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏� 涓婁紶鏍囪 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:ivrscenecategory:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:ivrscenecategory:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:ivrscenecategory:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:ivrscenecategory:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="ivrscenecategoryList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label=" 鑷ID " align="center" prop="scenecatid" />
+ <el-table-column label=" 鍒嗙被鍚嶇О " align="center" prop="categoryname" />
+ <el-table-column label=" 鏈烘瀯ID " align="center" prop="orgid" />
+ <el-table-column label=" 涓婁紶鏍囪 " align="center" prop="isupload" />
+ <el-table-column label=" 涓婁紶鏃堕棿 " align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:ivrscenecategory:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:ivrscenecategory:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀笰I鏈嶅姟鍦烘櫙绠$悊鍒嗙被瀵硅瘽妗� -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label=" 鍒嗙被鍚嶇О " prop="categoryname">
+ <el-input v-model="form.categoryname" placeholder="璇疯緭鍏� 鍒嗙被鍚嶇О " />
+ </el-form-item>
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏� 鏈烘瀯ID " />
+ </el-form-item>
+ <el-form-item label=" 鍒犻櫎鏍囪 " prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏� 鍒犻櫎鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏� 涓婁紶鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listIvrscenecategory, getIvrscenecategory, delIvrscenecategory, addIvrscenecategory, updateIvrscenecategory } from "@/api/smartor/ivrscenecategory";
+
+export default {
+ name: "Ivrscenecategory",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // AI鏈嶅姟鍦烘櫙绠$悊鍒嗙被琛ㄦ牸鏁版嵁
+ ivrscenecategoryList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ categoryname: null,
+ orgid: null,
+ isupload: null,
+ uploadTime: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ delFlag: [
+ { required: true, message: " 鍒犻櫎鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ isupload: [
+ { required: true, message: " 涓婁紶鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨAI鏈嶅姟鍦烘櫙绠$悊鍒嗙被鍒楄〃 */
+ getList() {
+ this.loading = true;
+ listIvrscenecategory(this.queryParams).then(response => {
+ this.ivrscenecategoryList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ scenecatid: null,
+ categoryname: null,
+ orgid: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.scenecatid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞AI鏈嶅姟鍦烘櫙绠$悊鍒嗙被";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const scenecatid = row.scenecatid || this.ids
+ getIvrscenecategory(scenecatid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼AI鏈嶅姟鍦烘櫙绠$悊鍒嗙被";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.scenecatid != null) {
+ updateIvrscenecategory(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addIvrscenecategory(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const scenecatids = row.scenecatid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎AI鏈嶅姟鍦烘櫙绠$悊鍒嗙被缂栧彿涓�"' + scenecatids + '"鐨勬暟鎹」锛�').then(function() {
+ return delIvrscenecategory(scenecatids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/ivrscenecategory/export', {
+ ...this.queryParams
+ }, `ivrscenecategory_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/ivrscript/index.vue b/ruoyi-ui/src/views/smartor/ivrscript/index.vue
new file mode 100644
index 0000000..fd475c7
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/ivrscript/index.vue
@@ -0,0 +1,411 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏� 鏈烘瀯ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍏ㄥ眬閰嶇疆ID;鍏ㄥ眬閰嶇疆ID " prop="globalid">
+ <el-input
+ v-model="queryParams.globalid"
+ placeholder="璇疯緭鍏� 鍏ㄥ眬閰嶇疆ID;鍏ㄥ眬閰嶇疆ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍦烘櫙id " prop="sceneid">
+ <el-input
+ v-model="queryParams.sceneid"
+ placeholder="璇疯緭鍏� 鍦烘櫙id "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼ID " prop="flowid">
+ <el-input
+ v-model="queryParams.flowid"
+ placeholder="璇疯緭鍏� 娴佺▼ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼鑺傜偣ID " prop="flownodeid">
+ <el-input
+ v-model="queryParams.flownodeid"
+ placeholder="璇疯緭鍏� 娴佺▼鑺傜偣ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 寮曠敤璇濇湳妯℃澘ID " prop="templateid">
+ <el-input
+ v-model="queryParams.templateid"
+ placeholder="璇疯緭鍏� 寮曠敤璇濇湳妯℃澘ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳鍐呭" prop="speakbody">
+ <el-input
+ v-model="queryParams.speakbody"
+ placeholder="璇疯緭鍏� 璇濇湳鍐呭"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳鏂囦欢璺緞" prop="speakfilepath">
+ <el-input
+ v-model="queryParams.speakfilepath"
+ placeholder="璇疯緭鍏� 璇濇湳鏂囦欢璺緞"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳鍚嶇О " prop="speakname">
+ <el-input
+ v-model="queryParams.speakname"
+ placeholder="璇疯緭鍏� 璇濇湳鍚嶇О "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏� 涓婁紶鏍囪 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:ivrscript:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:ivrscript:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:ivrscript:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:ivrscript:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="ivrscriptList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label=" 鑷ID " align="center" prop="scenescrid" />
+ <el-table-column label=" 鏈烘瀯ID " align="center" prop="orgid" />
+ <el-table-column label=" 鏉ユ簮绫诲瀷;0.鍏ㄥ眬 1.涓荤嚎 " align="center" prop="sourcetype" />
+ <el-table-column label=" 鍏ㄥ眬閰嶇疆ID;鍏ㄥ眬閰嶇疆ID " align="center" prop="globalid" />
+ <el-table-column label=" 鍦烘櫙id " align="center" prop="sceneid" />
+ <el-table-column label=" 娴佺▼ID " align="center" prop="flowid" />
+ <el-table-column label=" 娴佺▼鑺傜偣ID " align="center" prop="flownodeid" />
+ <el-table-column label=" 寮曠敤璇濇湳妯℃澘ID " align="center" prop="templateid" />
+ <el-table-column label=" 璇濇湳鍐呭" align="center" prop="speakbody" />
+ <el-table-column label=" 璇濇湳鏂囦欢璺緞" align="center" prop="speakfilepath" />
+ <el-table-column label=" 璇濇湳鍚嶇О " align="center" prop="speakname" />
+ <el-table-column label=" 涓婁紶鏍囪 " align="center" prop="isupload" />
+ <el-table-column label=" 涓婁紶鏃堕棿 " align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:ivrscript:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:ivrscript:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀笰I澶栧懠璇濇湳瀵硅瘽妗� -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏� 鏈烘瀯ID " />
+ </el-form-item>
+ <el-form-item label=" 鍏ㄥ眬閰嶇疆ID;鍏ㄥ眬閰嶇疆ID " prop="globalid">
+ <el-input v-model="form.globalid" placeholder="璇疯緭鍏� 鍏ㄥ眬閰嶇疆ID;鍏ㄥ眬閰嶇疆ID " />
+ </el-form-item>
+ <el-form-item label=" 鍦烘櫙id " prop="sceneid">
+ <el-input v-model="form.sceneid" placeholder="璇疯緭鍏� 鍦烘櫙id " />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼ID " prop="flowid">
+ <el-input v-model="form.flowid" placeholder="璇疯緭鍏� 娴佺▼ID " />
+ </el-form-item>
+ <el-form-item label=" 娴佺▼鑺傜偣ID " prop="flownodeid">
+ <el-input v-model="form.flownodeid" placeholder="璇疯緭鍏� 娴佺▼鑺傜偣ID " />
+ </el-form-item>
+ <el-form-item label=" 寮曠敤璇濇湳妯℃澘ID " prop="templateid">
+ <el-input v-model="form.templateid" placeholder="璇疯緭鍏� 寮曠敤璇濇湳妯℃澘ID " />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳鍐呭" prop="speakbody">
+ <el-input v-model="form.speakbody" placeholder="璇疯緭鍏� 璇濇湳鍐呭" />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳鏂囦欢璺緞" prop="speakfilepath">
+ <el-input v-model="form.speakfilepath" placeholder="璇疯緭鍏� 璇濇湳鏂囦欢璺緞" />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳鍚嶇О " prop="speakname">
+ <el-input v-model="form.speakname" placeholder="璇疯緭鍏� 璇濇湳鍚嶇О " />
+ </el-form-item>
+ <el-form-item label=" 鍒犻櫎鏍囪 " prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏� 鍒犻櫎鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏� 涓婁紶鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listIvrscript, getIvrscript, delIvrscript, addIvrscript, updateIvrscript } from "@/api/smartor/ivrscript";
+
+export default {
+ name: "Ivrscript",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // AI澶栧懠璇濇湳琛ㄦ牸鏁版嵁
+ ivrscriptList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ orgid: null,
+ sourcetype: null,
+ globalid: null,
+ sceneid: null,
+ flowid: null,
+ flownodeid: null,
+ templateid: null,
+ speakbody: null,
+ speakfilepath: null,
+ speakname: null,
+ isupload: null,
+ uploadTime: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ delFlag: [
+ { required: true, message: " 鍒犻櫎鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ isupload: [
+ { required: true, message: " 涓婁紶鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨAI澶栧懠璇濇湳鍒楄〃 */
+ getList() {
+ this.loading = true;
+ listIvrscript(this.queryParams).then(response => {
+ this.ivrscriptList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ scenescrid: null,
+ orgid: null,
+ sourcetype: null,
+ globalid: null,
+ sceneid: null,
+ flowid: null,
+ flownodeid: null,
+ templateid: null,
+ speakbody: null,
+ speakfilepath: null,
+ speakname: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.scenescrid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞AI澶栧懠璇濇湳";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const scenescrid = row.scenescrid || this.ids
+ getIvrscript(scenescrid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼AI澶栧懠璇濇湳";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.scenescrid != null) {
+ updateIvrscript(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addIvrscript(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const scenescrids = row.scenescrid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎AI澶栧懠璇濇湳缂栧彿涓�"' + scenescrids + '"鐨勬暟鎹」锛�').then(function() {
+ return delIvrscript(scenescrids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/ivrscript/export', {
+ ...this.queryParams
+ }, `ivrscript_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/ivrscriptmodel/index.vue b/ruoyi-ui/src/views/smartor/ivrscriptmodel/index.vue
new file mode 100644
index 0000000..cb8de71
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/ivrscriptmodel/index.vue
@@ -0,0 +1,423 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏� 鏈烘瀯ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳ID " prop="scenescrid">
+ <el-input
+ v-model="queryParams.scenescrid"
+ placeholder="璇疯緭鍏� 璇濇湳ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 璇煶鏂囦欢 " prop="speakfilepath">
+ <el-input
+ v-model="queryParams.speakfilepath"
+ placeholder="璇疯緭鍏� 璇煶鏂囦欢 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍚堟垚鍘傚晢 " prop="manufactor">
+ <el-input
+ v-model="queryParams.manufactor"
+ placeholder="璇疯緭鍏� 鍚堟垚鍘傚晢 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 璇�� " prop="speechnum">
+ <el-input
+ v-model="queryParams.speechnum"
+ placeholder="璇疯緭鍏� 璇�� "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 闊抽珮 " prop="pitch">
+ <el-input
+ v-model="queryParams.pitch"
+ placeholder="璇疯緭鍏� 闊抽珮 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 闊抽噺 " prop="volume">
+ <el-input
+ v-model="queryParams.volume"
+ placeholder="璇疯緭鍏� 闊抽噺 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏� 涓婁紶鏍囪 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label=" 鍙橀噺璇濇湳鍙橀噺 " prop="speakvariable">
+ <el-input
+ v-model="queryParams.speakvariable"
+ placeholder="璇疯緭鍏� 鍙橀噺璇濇湳鍙橀噺 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鍦烘櫙ID " prop="sceneid">
+ <el-input
+ v-model="queryParams.sceneid"
+ placeholder="璇疯緭鍏� 鍦烘櫙ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:ivrscriptmodel:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:ivrscriptmodel:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:ivrscriptmodel:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:ivrscriptmodel:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="ivrscriptmodelList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label=" 鑷ID " align="center" prop="scenemodid" />
+ <el-table-column label=" 鏈烘瀯ID " align="center" prop="orgid" />
+ <el-table-column label=" 璇濇湳ID " align="center" prop="scenescrid" />
+ <el-table-column label=" 璇濇湳绫诲瀷銆�0:鏅�氳瘽鏈� 1:鍙橀噺璇濇湳銆� " align="center" prop="speaktype" />
+ <el-table-column label=" 璇濇湳鍐呭 " align="center" prop="speakbody" />
+ <el-table-column label=" 璇煶绫诲瀷銆�0:鐪熶汉褰曢煶 1:鍚堟垚璇煶銆� " align="center" prop="voicetype" />
+ <el-table-column label=" 璇煶鏂囦欢 " align="center" prop="speakfilepath" />
+ <el-table-column label=" 鍚堟垚鍘傚晢 " align="center" prop="manufactor" />
+ <el-table-column label=" 澹伴煶绫诲瀷 " align="center" prop="soundtype" />
+ <el-table-column label=" 璇�� " align="center" prop="speechnum" />
+ <el-table-column label=" 闊抽珮 " align="center" prop="pitch" />
+ <el-table-column label=" 闊抽噺 " align="center" prop="volume" />
+ <el-table-column label=" 涓婁紶鏍囪 " align="center" prop="isupload" />
+ <el-table-column label=" 涓婁紶鏃堕棿 " align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label=" 鍙橀噺璇濇湳鍙橀噺 " align="center" prop="speakvariable" />
+ <el-table-column label=" 鍦烘櫙ID " align="center" prop="sceneid" />
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:ivrscriptmodel:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:ivrscriptmodel:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀笰I澶栧懠璇濇湳妯″潡瀵硅瘽妗� -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏� 鏈烘瀯ID " />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳ID " prop="scenescrid">
+ <el-input v-model="form.scenescrid" placeholder="璇疯緭鍏� 璇濇湳ID " />
+ </el-form-item>
+ <el-form-item label=" 璇濇湳鍐呭 " prop="speakbody">
+ <el-input v-model="form.speakbody" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" />
+ </el-form-item>
+ <el-form-item label=" 璇煶鏂囦欢 " prop="speakfilepath">
+ <el-input v-model="form.speakfilepath" placeholder="璇疯緭鍏� 璇煶鏂囦欢 " />
+ </el-form-item>
+ <el-form-item label=" 鍚堟垚鍘傚晢 " prop="manufactor">
+ <el-input v-model="form.manufactor" placeholder="璇疯緭鍏� 鍚堟垚鍘傚晢 " />
+ </el-form-item>
+ <el-form-item label=" 璇�� " prop="speechnum">
+ <el-input v-model="form.speechnum" placeholder="璇疯緭鍏� 璇�� " />
+ </el-form-item>
+ <el-form-item label=" 闊抽珮 " prop="pitch">
+ <el-input v-model="form.pitch" placeholder="璇疯緭鍏� 闊抽珮 " />
+ </el-form-item>
+ <el-form-item label=" 闊抽噺 " prop="volume">
+ <el-input v-model="form.volume" placeholder="璇疯緭鍏� 闊抽噺 " />
+ </el-form-item>
+ <el-form-item label=" 鍒犻櫎鏍囪 " prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏� 鍒犻櫎鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏� 涓婁紶鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label=" 鍙橀噺璇濇湳鍙橀噺 " prop="speakvariable">
+ <el-input v-model="form.speakvariable" placeholder="璇疯緭鍏� 鍙橀噺璇濇湳鍙橀噺 " />
+ </el-form-item>
+ <el-form-item label=" 鍦烘櫙ID " prop="sceneid">
+ <el-input v-model="form.sceneid" placeholder="璇疯緭鍏� 鍦烘櫙ID " />
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listIvrscriptmodel, getIvrscriptmodel, delIvrscriptmodel, addIvrscriptmodel, updateIvrscriptmodel } from "@/api/smartor/ivrscriptmodel";
+
+export default {
+ name: "Ivrscriptmodel",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // AI澶栧懠璇濇湳妯″潡琛ㄦ牸鏁版嵁
+ ivrscriptmodelList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ orgid: null,
+ scenescrid: null,
+ speaktype: null,
+ speakbody: null,
+ voicetype: null,
+ speakfilepath: null,
+ manufactor: null,
+ soundtype: null,
+ speechnum: null,
+ pitch: null,
+ volume: null,
+ isupload: null,
+ uploadTime: null,
+ speakvariable: null,
+ sceneid: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ delFlag: [
+ { required: true, message: " 鍒犻櫎鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ isupload: [
+ { required: true, message: " 涓婁紶鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨAI澶栧懠璇濇湳妯″潡鍒楄〃 */
+ getList() {
+ this.loading = true;
+ listIvrscriptmodel(this.queryParams).then(response => {
+ this.ivrscriptmodelList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ scenemodid: null,
+ orgid: null,
+ scenescrid: null,
+ speaktype: null,
+ speakbody: null,
+ voicetype: null,
+ speakfilepath: null,
+ manufactor: null,
+ soundtype: null,
+ speechnum: null,
+ pitch: null,
+ volume: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null,
+ speakvariable: null,
+ sceneid: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.scenemodid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞AI澶栧懠璇濇湳妯″潡";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const scenemodid = row.scenemodid || this.ids
+ getIvrscriptmodel(scenemodid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼AI澶栧懠璇濇湳妯″潡";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.scenemodid != null) {
+ updateIvrscriptmodel(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addIvrscriptmodel(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const scenemodids = row.scenemodid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎AI澶栧懠璇濇湳妯″潡缂栧彿涓�"' + scenemodids + '"鐨勬暟鎹」锛�').then(function() {
+ return delIvrscriptmodel(scenemodids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/ivrscriptmodel/export', {
+ ...this.queryParams
+ }, `ivrscriptmodel_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/smsaccount/index.vue b/ruoyi-ui/src/views/smartor/smsaccount/index.vue
new file mode 100644
index 0000000..53bd9e1
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/smsaccount/index.vue
@@ -0,0 +1,357 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label=" 鏍囩鍚嶇О " prop="smsname">
+ <el-input
+ v-model="queryParams.smsname"
+ placeholder="璇疯緭鍏� 鏍囩鍚嶇О "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 骞冲彴璐﹀彿 " prop="account">
+ <el-input
+ v-model="queryParams.account"
+ placeholder="璇疯緭鍏� 骞冲彴璐﹀彿 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 骞冲彴瀵嗙爜 " prop="password">
+ <el-input
+ v-model="queryParams.password"
+ placeholder="璇疯緭鍏� 骞冲彴瀵嗙爜 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏� 鏈烘瀯ID "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏� 涓婁紶鏍囪 "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label=" 鏄惁寮�鍚� " prop="isenable">
+ <el-input
+ v-model="queryParams.isenable"
+ placeholder="璇疯緭鍏� 鏄惁寮�鍚� "
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:smsaccount:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:smsaccount:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:smsaccount:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:smsaccount:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="smsaccountList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label=" 鑷ID " align="center" prop="smsacountid" />
+ <el-table-column label=" 鏍囩鍚嶇О " align="center" prop="smsname" />
+ <el-table-column label=" 骞冲彴璐﹀彿 " align="center" prop="account" />
+ <el-table-column label=" 骞冲彴瀵嗙爜 " align="center" prop="password" />
+ <el-table-column label=" 澶囨敞 " align="center" prop="remark" />
+ <el-table-column label=" 鏈烘瀯ID " align="center" prop="orgid" />
+ <el-table-column label=" 涓婁紶鏍囪 " align="center" prop="isupload" />
+ <el-table-column label=" 涓婁紶鏃堕棿 " align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label=" 鏄惁寮�鍚� " align="center" prop="isenable" />
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:smsaccount:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:smsaccount:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀圭煭淇¤处鍙峰璇濇 -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label=" 鏍囩鍚嶇О " prop="smsname">
+ <el-input v-model="form.smsname" placeholder="璇疯緭鍏� 鏍囩鍚嶇О " />
+ </el-form-item>
+ <el-form-item label=" 骞冲彴璐﹀彿 " prop="account">
+ <el-input v-model="form.account" placeholder="璇疯緭鍏� 骞冲彴璐﹀彿 " />
+ </el-form-item>
+ <el-form-item label=" 骞冲彴瀵嗙爜 " prop="password">
+ <el-input v-model="form.password" placeholder="璇疯緭鍏� 骞冲彴瀵嗙爜 " />
+ </el-form-item>
+ <el-form-item label=" 澶囨敞 " prop="remark">
+ <el-input v-model="form.remark" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" />
+ </el-form-item>
+ <el-form-item label=" 鏈烘瀯ID " prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏� 鏈烘瀯ID " />
+ </el-form-item>
+ <el-form-item label=" 鍒犻櫎鏍囪 " prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏� 鍒犻櫎鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏍囪 " prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏� 涓婁紶鏍囪 " />
+ </el-form-item>
+ <el-form-item label=" 涓婁紶鏃堕棿 " prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨 涓婁紶鏃堕棿 ">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label=" 鏄惁寮�鍚� " prop="isenable">
+ <el-input v-model="form.isenable" placeholder="璇疯緭鍏� 鏄惁寮�鍚� " />
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listSmsaccount, getSmsaccount, delSmsaccount, addSmsaccount, updateSmsaccount } from "@/api/smartor/smsaccount";
+
+export default {
+ name: "Smsaccount",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // 鐭俊璐﹀彿琛ㄦ牸鏁版嵁
+ smsaccountList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ smsname: null,
+ account: null,
+ password: null,
+ orgid: null,
+ isupload: null,
+ uploadTime: null,
+ isenable: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ delFlag: [
+ { required: true, message: " 鍒犻櫎鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ isupload: [
+ { required: true, message: " 涓婁紶鏍囪 涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨ鐭俊璐﹀彿鍒楄〃 */
+ getList() {
+ this.loading = true;
+ listSmsaccount(this.queryParams).then(response => {
+ this.smsaccountList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ smsacountid: null,
+ smsname: null,
+ account: null,
+ password: null,
+ remark: null,
+ orgid: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null,
+ isenable: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.smsacountid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞鐭俊璐﹀彿";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const smsacountid = row.smsacountid || this.ids
+ getSmsaccount(smsacountid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼鐭俊璐﹀彿";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.smsacountid != null) {
+ updateSmsaccount(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addSmsaccount(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const smsacountids = row.smsacountid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎鐭俊璐﹀彿缂栧彿涓�"' + smsacountids + '"鐨勬暟鎹」锛�').then(function() {
+ return delSmsaccount(smsacountids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/smsaccount/export', {
+ ...this.queryParams
+ }, `smsaccount_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/smsparam/index.vue b/ruoyi-ui/src/views/smartor/smsparam/index.vue
new file mode 100644
index 0000000..79c3357
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/smsparam/index.vue
@@ -0,0 +1,321 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label="${comment}" prop="paramname">
+ <el-input
+ v-model="queryParams.paramname"
+ placeholder="璇疯緭鍏�${comment}"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="paramval">
+ <el-input
+ v-model="queryParams.paramval"
+ placeholder="璇疯緭鍏�${comment}"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="descirbe">
+ <el-input
+ v-model="queryParams.descirbe"
+ placeholder="璇疯緭鍏�${comment}"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏�${comment}"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨${comment}">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:smsparam:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:smsparam:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:smsparam:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:smsparam:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="smsparamList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label="${comment}" align="center" prop="paramid" />
+ <el-table-column label="${comment}" align="center" prop="paramname" />
+ <el-table-column label="${comment}" align="center" prop="paramval" />
+ <el-table-column label="${comment}" align="center" prop="descirbe" />
+ <el-table-column label="${comment}" align="center" prop="usestatus" />
+ <el-table-column label="${comment}" align="center" prop="isupload" />
+ <el-table-column label="${comment}" align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:smsparam:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:smsparam:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀圭煭淇″弬鏁板璇濇 -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label="${comment}" prop="paramname">
+ <el-input v-model="form.paramname" placeholder="璇疯緭鍏�${comment}" />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="paramval">
+ <el-input v-model="form.paramval" placeholder="璇疯緭鍏�${comment}" />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="descirbe">
+ <el-input v-model="form.descirbe" placeholder="璇疯緭鍏�${comment}" />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏�${comment}" />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏�${comment}" />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨${comment}">
+ </el-date-picker>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listSmsparam, getSmsparam, delSmsparam, addSmsparam, updateSmsparam } from "@/api/smartor/smsparam";
+
+export default {
+ name: "Smsparam",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // 鐭俊鍙傛暟琛ㄦ牸鏁版嵁
+ smsparamList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ paramname: null,
+ paramval: null,
+ descirbe: null,
+ usestatus: null,
+ isupload: null,
+ uploadTime: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨ鐭俊鍙傛暟鍒楄〃 */
+ getList() {
+ this.loading = true;
+ listSmsparam(this.queryParams).then(response => {
+ this.smsparamList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ paramid: null,
+ paramname: null,
+ paramval: null,
+ descirbe: null,
+ usestatus: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.paramid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞鐭俊鍙傛暟";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const paramid = row.paramid || this.ids
+ getSmsparam(paramid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼鐭俊鍙傛暟";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.paramid != null) {
+ updateSmsparam(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addSmsparam(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const paramids = row.paramid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎鐭俊鍙傛暟缂栧彿涓�"' + paramids + '"鐨勬暟鎹」锛�').then(function() {
+ return delSmsparam(paramids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/smsparam/export', {
+ ...this.queryParams
+ }, `smsparam_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/smsrecords/index.vue b/ruoyi-ui/src/views/smartor/smsrecords/index.vue
new file mode 100644
index 0000000..835c60a
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/smsrecords/index.vue
@@ -0,0 +1,544 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label="" prop="userid">
+ <el-input
+ v-model="queryParams.userid"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="" prop="username">
+ <el-input
+ v-model="queryParams.username"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="" prop="phone">
+ <el-input
+ v-model="queryParams.phone"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="" prop="msgno">
+ <el-input
+ v-model="queryParams.msgno"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="" prop="msg">
+ <el-input
+ v-model="queryParams.msg"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="" prop="inserttime">
+ <el-date-picker clearable
+ v-model="queryParams.inserttime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label="" prop="sendtime">
+ <el-date-picker clearable
+ v-model="queryParams.sendtime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label="" prop="sendfailedcount">
+ <el-input
+ v-model="queryParams.sendfailedcount"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="" prop="resulttime">
+ <el-date-picker clearable
+ v-model="queryParams.resulttime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label="" prop="resultmsg">
+ <el-input
+ v-model="queryParams.resultmsg"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="" prop="sendstate">
+ <el-input
+ v-model="queryParams.sendstate"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="" prop="insertsystem">
+ <el-input
+ v-model="queryParams.insertsystem"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="" prop="insertmodule">
+ <el-input
+ v-model="queryParams.insertmodule"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="" prop="moduleid">
+ <el-input
+ v-model="queryParams.moduleid"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="" prop="msgidentify">
+ <el-input
+ v-model="queryParams.msgidentify"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="accountid">
+ <el-input
+ v-model="queryParams.accountid"
+ placeholder="璇疯緭鍏�${comment}"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="orgid">
+ <el-input
+ v-model="queryParams.orgid"
+ placeholder="璇疯緭鍏�${comment}"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="" prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="" prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:smsrecords:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:smsrecords:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:smsrecords:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:smsrecords:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="smsrecordsList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label="${comment}" align="center" prop="recordid" />
+ <el-table-column label="" align="center" prop="userid" />
+ <el-table-column label="" align="center" prop="username" />
+ <el-table-column label="" align="center" prop="phone" />
+ <el-table-column label="" align="center" prop="msgno" />
+ <el-table-column label="" align="center" prop="msg" />
+ <el-table-column label="" align="center" prop="inserttime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.inserttime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="" align="center" prop="sendtime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.sendtime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="" align="center" prop="sendfailedcount" />
+ <el-table-column label="" align="center" prop="resulttime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.resulttime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="" align="center" prop="resultmsg" />
+ <el-table-column label="" align="center" prop="sendstate" />
+ <el-table-column label="" align="center" prop="inserttype" />
+ <el-table-column label="" align="center" prop="insertsystem" />
+ <el-table-column label="" align="center" prop="insertmodule" />
+ <el-table-column label="" align="center" prop="moduleid" />
+ <el-table-column label="" align="center" prop="msgidentify" />
+ <el-table-column label="${comment}" align="center" prop="accountid" />
+ <el-table-column label="${comment}" align="center" prop="orgid" />
+ <el-table-column label="" align="center" prop="isupload" />
+ <el-table-column label="" align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:smsrecords:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:smsrecords:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀圭煭淇¤褰曞璇濇 -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label="" prop="userid">
+ <el-input v-model="form.userid" placeholder="璇疯緭鍏�" />
+ </el-form-item>
+ <el-form-item label="" prop="username">
+ <el-input v-model="form.username" placeholder="璇疯緭鍏�" />
+ </el-form-item>
+ <el-form-item label="" prop="phone">
+ <el-input v-model="form.phone" placeholder="璇疯緭鍏�" />
+ </el-form-item>
+ <el-form-item label="" prop="msgno">
+ <el-input v-model="form.msgno" placeholder="璇疯緭鍏�" />
+ </el-form-item>
+ <el-form-item label="" prop="msg">
+ <el-input v-model="form.msg" placeholder="璇疯緭鍏�" />
+ </el-form-item>
+ <el-form-item label="" prop="inserttime">
+ <el-date-picker clearable
+ v-model="form.inserttime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label="" prop="sendtime">
+ <el-date-picker clearable
+ v-model="form.sendtime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label="" prop="sendfailedcount">
+ <el-input v-model="form.sendfailedcount" placeholder="璇疯緭鍏�" />
+ </el-form-item>
+ <el-form-item label="" prop="resulttime">
+ <el-date-picker clearable
+ v-model="form.resulttime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item label="" prop="resultmsg">
+ <el-input v-model="form.resultmsg" placeholder="璇疯緭鍏�" />
+ </el-form-item>
+ <el-form-item label="" prop="sendstate">
+ <el-input v-model="form.sendstate" placeholder="璇疯緭鍏�" />
+ </el-form-item>
+ <el-form-item label="" prop="insertsystem">
+ <el-input v-model="form.insertsystem" placeholder="璇疯緭鍏�" />
+ </el-form-item>
+ <el-form-item label="" prop="insertmodule">
+ <el-input v-model="form.insertmodule" placeholder="璇疯緭鍏�" />
+ </el-form-item>
+ <el-form-item label="" prop="moduleid">
+ <el-input v-model="form.moduleid" placeholder="璇疯緭鍏�" />
+ </el-form-item>
+ <el-form-item label="" prop="msgidentify">
+ <el-input v-model="form.msgidentify" placeholder="璇疯緭鍏�" />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="accountid">
+ <el-input v-model="form.accountid" placeholder="璇疯緭鍏�${comment}" />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="orgid">
+ <el-input v-model="form.orgid" placeholder="璇疯緭鍏�${comment}" />
+ </el-form-item>
+ <el-form-item label="" prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏�" />
+ </el-form-item>
+ <el-form-item label="" prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏�" />
+ </el-form-item>
+ <el-form-item label="" prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨">
+ </el-date-picker>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listSmsrecords, getSmsrecords, delSmsrecords, addSmsrecords, updateSmsrecords } from "@/api/smartor/smsrecords";
+
+export default {
+ name: "Smsrecords",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // 鐭俊璁板綍琛ㄦ牸鏁版嵁
+ smsrecordsList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ userid: null,
+ username: null,
+ phone: null,
+ msgno: null,
+ msg: null,
+ inserttime: null,
+ sendtime: null,
+ sendfailedcount: null,
+ resulttime: null,
+ resultmsg: null,
+ sendstate: null,
+ inserttype: null,
+ insertsystem: null,
+ insertmodule: null,
+ moduleid: null,
+ msgidentify: null,
+ accountid: null,
+ orgid: null,
+ isupload: null,
+ uploadTime: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨ鐭俊璁板綍鍒楄〃 */
+ getList() {
+ this.loading = true;
+ listSmsrecords(this.queryParams).then(response => {
+ this.smsrecordsList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ recordid: null,
+ userid: null,
+ username: null,
+ phone: null,
+ msgno: null,
+ msg: null,
+ inserttime: null,
+ sendtime: null,
+ sendfailedcount: null,
+ resulttime: null,
+ resultmsg: null,
+ sendstate: null,
+ inserttype: null,
+ insertsystem: null,
+ insertmodule: null,
+ moduleid: null,
+ msgidentify: null,
+ accountid: null,
+ orgid: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.recordid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞鐭俊璁板綍";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const recordid = row.recordid || this.ids
+ getSmsrecords(recordid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼鐭俊璁板綍";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.recordid != null) {
+ updateSmsrecords(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addSmsrecords(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const recordids = row.recordid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎鐭俊璁板綍缂栧彿涓�"' + recordids + '"鐨勬暟鎹」锛�').then(function() {
+ return delSmsrecords(recordids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/smsrecords/export', {
+ ...this.queryParams
+ }, `smsrecords_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
diff --git a/ruoyi-ui/src/views/smartor/smstemplet/index.vue b/ruoyi-ui/src/views/smartor/smstemplet/index.vue
new file mode 100644
index 0000000..abfb9c4
--- /dev/null
+++ b/ruoyi-ui/src/views/smartor/smstemplet/index.vue
@@ -0,0 +1,310 @@
+<template>
+ <div class="app-container">
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
+ <el-form-item label="${comment}" prop="templetno">
+ <el-input
+ v-model="queryParams.templetno"
+ placeholder="璇疯緭鍏�${comment}"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="templetname">
+ <el-input
+ v-model="queryParams.templetname"
+ placeholder="璇疯緭鍏�${comment}"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="isupload">
+ <el-input
+ v-model="queryParams.isupload"
+ placeholder="璇疯緭鍏�${comment}"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="uploadTime">
+ <el-date-picker clearable
+ v-model="queryParams.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨${comment}">
+ </el-date-picker>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button>
+ </el-form-item>
+ </el-form>
+
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="primary"
+ plain
+ icon="el-icon-plus"
+ size="mini"
+ @click="handleAdd"
+ v-hasPermi="['smartor:smstemplet:add']"
+ >鏂板</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['smartor:smstemplet:edit']"
+ >淇敼</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="danger"
+ plain
+ icon="el-icon-delete"
+ size="mini"
+ :disabled="multiple"
+ @click="handleDelete"
+ v-hasPermi="['smartor:smstemplet:remove']"
+ >鍒犻櫎</el-button>
+ </el-col>
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ @click="handleExport"
+ v-hasPermi="['smartor:smstemplet:export']"
+ >瀵煎嚭</el-button>
+ </el-col>
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
+ </el-row>
+
+ <el-table v-loading="loading" :data="smstempletList" @selection-change="handleSelectionChange">
+ <el-table-column type="selection" width="55" align="center" />
+ <el-table-column label="${comment}" align="center" prop="templetid" />
+ <el-table-column label="${comment}" align="center" prop="templetno" />
+ <el-table-column label="${comment}" align="center" prop="templetname" />
+ <el-table-column label="${comment}" align="center" prop="templetcontent" />
+ <el-table-column label="${comment}" align="center" prop="isupload" />
+ <el-table-column label="${comment}" align="center" prop="uploadTime" width="180">
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.uploadTime, '{y}-{m}-{d}') }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width">
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['smartor:smstemplet:edit']"
+ >淇敼</el-button>
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['smartor:smstemplet:remove']"
+ >鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <pagination
+ v-show="total>0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+
+ <!-- 娣诲姞鎴栦慨鏀圭煭淇℃ā鏉垮璇濇 -->
+ <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+ <el-form ref="form" :model="form" :rules="rules" label-width="80px">
+ <el-form-item label="${comment}" prop="templetno">
+ <el-input v-model="form.templetno" placeholder="璇疯緭鍏�${comment}" />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="templetname">
+ <el-input v-model="form.templetname" placeholder="璇疯緭鍏�${comment}" />
+ </el-form-item>
+ <el-form-item label="${comment}">
+ <editor v-model="form.templetcontent" :min-height="192"/>
+ </el-form-item>
+ <el-form-item label="${comment}" prop="delFlag">
+ <el-input v-model="form.delFlag" placeholder="璇疯緭鍏�${comment}" />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="isupload">
+ <el-input v-model="form.isupload" placeholder="璇疯緭鍏�${comment}" />
+ </el-form-item>
+ <el-form-item label="${comment}" prop="uploadTime">
+ <el-date-picker clearable
+ v-model="form.uploadTime"
+ type="date"
+ value-format="yyyy-MM-dd"
+ placeholder="璇烽�夋嫨${comment}">
+ </el-date-picker>
+ </el-form-item>
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ </div>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { listSmstemplet, getSmstemplet, delSmstemplet, addSmstemplet, updateSmstemplet } from "@/api/smartor/smstemplet";
+
+export default {
+ name: "Smstemplet",
+ data() {
+ return {
+ // 閬僵灞�
+ loading: true,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // 鐭俊妯℃澘琛ㄦ牸鏁版嵁
+ smstempletList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ templetno: null,
+ templetname: null,
+ templetcontent: null,
+ isupload: null,
+ uploadTime: null
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {},
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ }
+ };
+ },
+ created() {
+ this.getList();
+ },
+ methods: {
+ /** 鏌ヨ鐭俊妯℃澘鍒楄〃 */
+ getList() {
+ this.loading = true;
+ listSmstemplet(this.queryParams).then(response => {
+ this.smstempletList = response.rows;
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ templetid: null,
+ templetno: null,
+ templetname: null,
+ templetcontent: null,
+ delFlag: null,
+ updateBy: null,
+ updateTime: null,
+ createBy: null,
+ createTime: null,
+ isupload: null,
+ uploadTime: null
+ };
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.templetid)
+ this.single = selection.length!==1
+ this.multiple = !selection.length
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ this.reset();
+ this.open = true;
+ this.title = "娣诲姞鐭俊妯℃澘";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+ handleUpdate(row) {
+ this.reset();
+ const templetid = row.templetid || this.ids
+ getSmstemplet(templetid).then(response => {
+ this.form = response.data;
+ this.open = true;
+ this.title = "淇敼鐭俊妯℃澘";
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ if (this.form.templetid != null) {
+ updateSmstemplet(this.form).then(response => {
+ this.$modal.msgSuccess("淇敼鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ } else {
+ addSmstemplet(this.form).then(response => {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.open = false;
+ this.getList();
+ });
+ }
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const templetids = row.templetid || this.ids;
+ this.$modal.confirm('鏄惁纭鍒犻櫎鐭俊妯℃澘缂栧彿涓�"' + templetids + '"鐨勬暟鎹」锛�').then(function() {
+ return delSmstemplet(templetids);
+ }).then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ }).catch(() => {});
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ this.download('smartor/smstemplet/export', {
+ ...this.queryParams
+ }, `smstemplet_${new Date().getTime()}.xlsx`)
+ }
+ }
+};
+</script>
--
Gitblit v1.9.3