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