cuikaidong
2025-08-08 c495c1ae53473d54af136ea00da84bf51c50d521
1
(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-166e7338","chunk-4a8a769b","chunk-7bc174da","chunk-2d0a484b"],{"077e":function(e,t,a){"use strict";a.r(t);var n=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("a-modal",{attrs:{title:e.title,width:800,visible:e.visible,confirmLoading:e.confirmLoading,okText:"保存并安排任务",cancelText:"关闭"},on:{ok:e.handleOk,cancel:e.handleCancel}},[a("a-spin",{attrs:{spinning:e.confirmLoading}},[a("a-form-model",{ref:"form",attrs:{model:e.model,rules:e.validatorRules}},[a("a-form-model-item",{attrs:{labelCol:e.labelCol,wrapperCol:e.wrapperCol,label:"任务类名",prop:"jobClassName",hasFeedback:""}},[a("a-input",{attrs:{placeholder:"请输入任务类名"},model:{value:e.model.jobClassName,callback:function(t){e.$set(e.model,"jobClassName",t)},expression:"model.jobClassName"}})],1),a("a-form-model-item",{attrs:{labelCol:e.labelCol,wrapperCol:e.wrapperCol,label:"Cron表达式",prop:"cronExpression"}},[a("j-easy-cron",{model:{value:e.model.cronExpression,callback:function(t){e.$set(e.model,"cronExpression",t)},expression:"model.cronExpression"}})],1),a("a-form-model-item",{attrs:{labelCol:e.labelCol,wrapperCol:e.wrapperCol,label:"参数",prop:"parameter"}},[a("a-textarea",{attrs:{placeholder:"请输入参数",rows:5},model:{value:e.model.parameter,callback:function(t){e.$set(e.model,"parameter",t)},expression:"model.parameter"}})],1),a("a-form-model-item",{attrs:{labelCol:e.labelCol,wrapperCol:e.wrapperCol,label:"描述",prop:"description"}},[a("a-textarea",{attrs:{placeholder:"请输入描述",rows:3},model:{value:e.model.description,callback:function(t){e.$set(e.model,"description",t)},expression:"model.description"}})],1),a("a-form-model-item",{attrs:{labelCol:e.labelCol,wrapperCol:e.wrapperCol,label:"状态",prop:"status"}},[a("j-dict-select-tag",{attrs:{type:"radioButton",dictCode:"quartz_status"},model:{value:e.model.status,callback:function(t){e.$set(e.model,"status",t)},expression:"model.status"}})],1)],1)],1)],1)},o=[],r=a("0fea"),s=a("f8d8"),i=a.n(s),l=a("483f"),c=function(e,t,a){if(!t)return a(),!0;var n=t.split(" ").filter((function(e){return!!e}));if(n.length>7)return a(new Error("Cron表达式最多7项!")),!1;var o=t;if(7===n.length){var r=Object(l["b"])(n[6]);if("*"!==r&&"?"!==r){var s=[];s=r.indexOf("-")>=0?r.split("-"):r.indexOf("/")?r.split("/"):[r];var c=s.some((function(e){return isNaN(e)}));if(c)return a(new Error("Cron表达式参数[年]错误:"+r)),!1}o=n.slice(0,6).join(" ")}var d=!0;try{var u=i.a.parseExpression(o);u.next(),a()}catch(o){a(new Error("Cron表达式错误:"+o)),d=!1}return d},d={name:"QuartzJobModal",components:{},data:function(){return{title:"操作",buttonStyle:"solid",visible:!1,model:{},labelCol:{xs:{span:24},sm:{span:5}},wrapperCol:{xs:{span:24},sm:{span:16}},cron:{label:"",value:""},confirmLoading:!1,validatorRules:{cronExpression:[{required:!0,message:"请输入cron表达式!"},{validator:c}],jobClassName:[{required:!0,message:"请输入任务类名!"}]},url:{add:"/sys/quartzJob/add",edit:"/sys/quartzJob/edit"}}},created:function(){},methods:{add:function(){this.edit({cronExpression:"* * * * * ? *",status:0})},edit:function(e){var t=this;this.visible=!0,this.$nextTick((function(){t.$refs.form.resetFields(),t.model=Object.assign({},e)}))},close:function(){this.$emit("close"),this.visible=!1},handleOk:function(){var e=this,t=this;this.$refs.form.validate((function(a,n){if(a){t.confirmLoading=!0;var o="",s="";e.model.id?(o+=e.url.edit,s="put"):(o+=e.url.add,s="post"),Object(r["h"])(o,e.model,s).then((function(e){e.success?(t.$message.success(e.message),t.$emit("ok"),t.close()):t.$message.warning(e.message)})).finally((function(){t.confirmLoading=!1}))}}))},handleCancel:function(){this.close()}}},u=d,m=a("2877"),p=Object(m["a"])(u,n,o,!1,null,"32a362ee",null);t["default"]=p.exports},"4b86":function(e,t,a){"use strict";var n=a("bae7"),o=a.n(n);o.a},"5bd0":function(e,t,a){"use strict";var n=a("cef9"),o=a.n(n);o.a},7776:function(e,t,a){},"7a9d":function(e,t,a){"use strict";a.r(t);var n=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("a-card",{attrs:{bordered:!1}},[a("div",{staticClass:"table-page-search-wrapper"},[a("a-form-model",{attrs:{layout:"inline",model:e.queryParam},nativeOn:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.searchQuery(t)}}},[a("a-row",{attrs:{gutter:24}},[a("a-col",{attrs:{md:6,sm:10}},[a("a-form-model-item",{attrs:{label:"任务名称",prop:"jobClassName"}},[a("a-input",{attrs:{placeholder:"请输入任务名称"},model:{value:e.queryParam.jobName,callback:function(t){e.$set(e.queryParam,"jobName",t)},expression:"queryParam.jobName"}})],1)],1),a("a-col",{attrs:{md:6,sm:10}},[a("a-form-model-item",{attrs:{label:"任务状态",prop:"status"}},[a("a-select",{staticStyle:{width:"100%"},attrs:{placeholder:"请选择状态"},model:{value:e.queryParam.status,callback:function(t){e.$set(e.queryParam,"status",t)},expression:"queryParam.status"}},[a("a-select-option",{attrs:{value:""}},[e._v("全部")]),a("a-select-option",{attrs:{value:"0"}},[e._v("正常")]),a("a-select-option",{attrs:{value:"-1"}},[e._v("停止")])],1)],1)],1),a("a-col",{attrs:{md:6,sm:10}},[a("span",{staticClass:"table-page-search-submitButtons",staticStyle:{float:"left",overflow:"hidden"}},[a("a-button",{attrs:{type:"primary",icon:"search"},on:{click:e.searchQuery}},[e._v("查询")]),a("a-button",{staticStyle:{"margin-left":"8px"},attrs:{type:"primary",icon:"reload"},on:{click:e.searchReset}},[e._v("重置")])],1)])],1)],1)],1),a("div",{staticClass:"table-operator"},[a("a-button",{attrs:{type:"primary",icon:"plus"},on:{click:e.handleAdd}},[e._v("新增")]),a("a-button",{attrs:{type:"primary",icon:"download"},on:{click:function(t){return e.handleExportXls("定时任务信息")}}},[e._v("导出")]),a("a-upload",{attrs:{name:"file",showUploadList:!1,multiple:!1,headers:e.tokenHeader,action:e.importExcelUrl},on:{change:e.handleImportExcel}},[a("a-button",{attrs:{type:"primary",icon:"import"}},[e._v("导入")])],1),e.selectedRowKeys.length>0?a("a-dropdown",[a("a-menu",{attrs:{slot:"overlay"},slot:"overlay"},[a("a-menu-item",{key:"1",on:{click:e.batchDel}},[a("a-icon",{attrs:{type:"delete"}}),e._v("删除")],1)],1),a("a-button",{staticStyle:{"margin-left":"8px"}},[e._v(" 批量操作 "),a("a-icon",{attrs:{type:"down"}})],1)],1):e._e()],1),a("div",[a("div",{staticClass:"ant-alert ant-alert-info",staticStyle:{"margin-bottom":"16px"}},[a("i",{staticClass:"anticon anticon-info-circle ant-alert-icon"}),e._v(" 已选择 "),a("a",{staticStyle:{"font-weight":"600"}},[e._v(e._s(e.selectedRowKeys.length))]),e._v("项\n      "),a("a",{staticStyle:{"margin-left":"24px"},on:{click:e.onClearSelected}},[e._v("清空")])]),a("a-table",{ref:"table",attrs:{size:"middle",bordered:"",rowKey:"id",columns:e.columns,dataSource:e.dataSource,pagination:e.ipagination,loading:e.loading,rowSelection:{selectedRowKeys:e.selectedRowKeys,onChange:e.onSelectChange}},on:{change:e.handleTableChange},scopedSlots:e._u([{key:"description",fn:function(e){return a("span",{},[a("j-ellipsis",{attrs:{value:e,length:20}})],1)}},{key:"parameterRender",fn:function(e){return a("span",{},[a("j-ellipsis",{attrs:{value:e,length:20}})],1)}},{key:"action",fn:function(t,n){return a("span",{},[a("a",{on:{click:function(t){return e.executeImmediately(n)}}},[e._v("立即执行")]),a("a-divider",{attrs:{type:"vertical"}}),a("a",{on:{click:function(t){return e.handlequartzLog(n)}}},[e._v("日志")]),a("a-divider",{attrs:{type:"vertical"}}),a("a-dropdown",[a("a",{staticClass:"ant-dropdown-link"},[e._v("更多 "),a("a-icon",{attrs:{type:"down"}})],1),a("a-menu",{attrs:{slot:"overlay"},slot:"overlay"},[a("a-menu-item",[-1==n.status?a("a",{on:{click:function(t){return e.resumeJob(n)}}},[e._v("启动")]):e._e(),0==n.status?a("a",{on:{click:function(t){return e.pauseJob(n)}}},[e._v("停止")]):e._e()]),a("a-menu-item",[a("a",{on:{click:function(t){return e.handleEdit(n)}}},[e._v("编辑")])]),a("a-menu-item",[a("a-popconfirm",{attrs:{title:"确定删除吗?"},on:{confirm:function(){return e.handleDelete(n.id)}}},[a("a",[e._v("删除")])])],1)],1)],1)],1)}},{key:"customRenderStatus",fn:function(t){return[0==t?a("a-tag",{attrs:{color:"green"}},[e._v("已启动")]):e._e(),-1==t?a("a-tag",{attrs:{color:"orange"}},[e._v("已暂停")]):e._e()]}}])})],1),a("quartzJob-modal",{ref:"modalForm",on:{ok:e.modalFormOk}}),a("quartz-job-list-modal",{ref:"modalFormList",on:{ok:e.modalFormOk}})],1)},o=[],r=a("077e"),s=a("c804"),i=a("0fea"),l=a("b65a"),c=a("d579"),d={name:"QuartzJobList",mixins:[l["a"]],components:{QuartzJobModal:r["default"],QuartzJobListModal:s["default"],JEllipsis:c["default"]},data:function(){return{description:"定时任务在线管理",queryParam:{},columns:[{title:"#",dataIndex:"",key:"rowIndex",width:60,align:"center",customRender:function(e,t,a){return parseInt(a)+1}},{title:"任务名称",align:"center",dataIndex:"jobName",sorter:!0},{title:"cron表达式",align:"center",dataIndex:"cronExpression"},{title:"参数",align:"center",width:150,dataIndex:"parameter",scopedSlots:{customRender:"parameterRender"}},{title:"说明",align:"center",dataIndex:"description",scopedSlots:{customRender:"description"}},{title:"状态",align:"center",dataIndex:"status",scopedSlots:{customRender:"customRenderStatus"},filterMultiple:!1,filters:[{text:"已启动",value:"0"},{text:"已暂停",value:"-1"}]},{title:"操作",dataIndex:"action",align:"center",width:180,scopedSlots:{customRender:"action"}}],url:{list:"/sys/quartzJob/list",delete:"/sys/quartzJob/delete",deleteBatch:"/sys/quartzJob/deleteBatch",pause:"/sys/quartzJob/pause",resume:"/sys/quartzJob/resume",exportXlsUrl:"sys/quartzJob/exportXls",importExcelUrl:"sys/quartzJob/importExcel",execute:"sys/quartzJob/execute"}}},computed:{importExcelUrl:function(){return"".concat(window._CONFIG["domianURL"],"/").concat(this.url.importExcelUrl)}},methods:{handlequartzLog:function(e){this.$refs.modalFormList.openPage(e),this.$refs.modalFormList.title="执行日志",this.$refs.modalFormList.disableSubmit=!1},handleTableChange:function(e,t,a){Object.keys(a).length>0&&(this.isorter.column=a.field,this.isorter.order="ascend"==a.order?"asc":"desc"),t&&Object.keys(t).length>0&&t.status&&(this.filters.status=t.status[0]),this.ipagination=e,this.loadData()},pauseJob:function(e){var t=this;this.$confirm({title:"确认暂停",content:"是否暂停选中任务?",onOk:function(){Object(i["c"])(t.url.pause,{id:e.id}).then((function(e){e.success?(t.$notification.success({message:"消息",description:e.message}),t.loadData(),t.onClearSelected()):t.$notification.warning({message:"消息",description:e.message})}))}})},resumeJob:function(e){var t=this;this.$confirm({title:"确认启动",content:"是否启动选中任务?",onOk:function(){Object(i["c"])(t.url.resume,{id:e.id}).then((function(e){e.success?(t.$notification.success({message:"消息",description:e.message}),t.loadData(),t.onClearSelected()):t.$notification.warning({message:"消息",description:e.message})}))}})},executeImmediately:function(e){var t=this;this.$confirm({title:"确认提示",content:"是否立即执行任务?",onOk:function(){Object(i["c"])(t.url.execute,{id:e.id}).then((function(e){e.success?(t.$notification.success({message:"消息",description:e.message}),t.loadData(),t.onClearSelected()):t.$notification.warning({message:"消息",description:e.message})}))}})}}},u=d,m=(a("5bd0"),a("2877")),p=Object(m["a"])(u,n,o,!1,null,"3e56c3f6",null);t["default"]=p.exports},8265:function(e,t,a){"use strict";a.r(t);var n=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("a-modal",{attrs:{title:e.title,width:"100%",visible:e.visible,maskClosable:!1,cancelText:"关闭"},on:{ok:e.handleOk,cancel:e.handleCancel}},[a("a-card",{attrs:{bordered:!1}},[a("div",[a("pre",[e._v("         "+e._s(e.textContent)+"\n      ")])])])],1)},o=[],r={name:"QuartzJobDetails",components:{},props:{},data:function(){return{title:"",visible:!1,textContent:""}},created:function(){},watch:{},methods:{showDetails:function(e){this.visible=!0,this.textContent=e.exceptionDetail},close:function(){this.$emit("close"),this.visible=!1},handleCancel:function(){this.close()},handleOk:function(){this.close()}}},s=r,i=(a("e7b3"),a("2877")),l=Object(i["a"])(s,n,o,!1,null,null,null);t["default"]=l.exports},bae7:function(e,t,a){},c804:function(e,t,a){"use strict";a.r(t);var n=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("a-modal",{attrs:{title:e.title,width:"100%",visible:e.visible,maskClosable:!1,cancelText:"关闭"},on:{ok:e.handleOk,cancel:e.handleCancel}},[a("a-card",{attrs:{bordered:!1}},[a("div",{staticClass:"table-page-search-wrapper"},[a("a-form",{attrs:{layout:"inline"},nativeOn:{keyup:function(t){return!t.type.indexOf("key")&&e._k(t.keyCode,"enter",13,t.key,"Enter")?null:e.searchQuery(t)}}},[a("a-row",{attrs:{gutter:24}},[a("a-col",{attrs:{md:6,sm:6}},[a("a-form-item",{attrs:{label:"任务名称"}},[a("a-input",{attrs:{placeholder:"请输入任务名称"},model:{value:e.queryParam.jobName,callback:function(t){e.$set(e.queryParam,"jobName",t)},expression:"queryParam.jobName"}})],1)],1),a("a-col",{attrs:{md:6,sm:6}},[a("a-form-item",{attrs:{label:"时间"}},[a("a-range-picker",{attrs:{"show-time":"",disabledDate:e.disabledDate,format:"YYYY-MM-DD HH:mm:ss"},on:{change:e.dateParamChange},model:{value:e.dates,callback:function(t){e.dates=t},expression:"dates"}})],1)],1),a("a-col",{attrs:{md:4,sm:4}},[a("a-space",[a("a-button",{attrs:{type:"primary",icon:"search"},on:{click:e.searchQuery}},[e._v("查询")]),a("a-button",{attrs:{type:"primary",icon:"reload"},on:{click:e.searchReset}},[e._v("重置")]),a("a-button",{attrs:{type:"primary",icon:"download"},on:{click:function(t){return e.handleExportXls("执行日志导出")}}},[e._v("导出")])],1)],1)],1)],1)],1),a("div",{staticClass:"table-operator"}),a("div",[a("a-table",{ref:"table",attrs:{size:"middle",bordered:"",rowKey:"index",scroll:{y:400},columns:e.columns,dataSource:e.dataSource,pagination:e.ipagination,loading:e.loading},on:{change:e.handleTableChange},scopedSlots:e._u([{key:"customRenderStatus",fn:function(t){return[0==t?a("a-tag",{attrs:{color:"green"}},[e._v("成功")]):e._e(),-1==t?a("a-tag",{attrs:{color:"red"}},[e._v("失败")]):e._e()]}},{key:"action",fn:function(t,n){return a("span",{},[-1==n.isSuccess?a("a",{on:{click:function(t){return e.executeImmediately(n)}}},[e._v("查看详情")]):e._e()])}}])})],1),a("quartz-job-details",{ref:"modalForm"})],1)],1)},o=[],r=a("ca00"),s=(a("4ec3"),a("7b16")),i=a("0fea"),l=(a("b65a"),a("4349")),c=a("d579"),d=a("f933"),u=a("2dab"),m=a("c1df"),p=a.n(m),f=a("8265"),h={name:"QuartzJobListModal",components:{JDictSelectTag:s["default"],JEllipsis:c["default"],JInput:l["default"],Tooltip:d["a"],JDate:u["default"],QuartzJobDetails:f["default"]},props:{status:{type:Number,default:1}},data:function(){return{title:"",visible:!1,queryParam:{},dataSource:[],ipagination:{current:1,pageSize:10,pageSizeOptions:["10","20","30"],showTotal:function(e,t){return t[0]+"-"+t[1]+" 共"+e+"条"},showQuickJumper:!0,showSizeChanger:!0,total:0},isorter:{column:"createTime",order:"desc"},filters:{},loading:!1,selectedRowKeys:[],selectionRows:[],toggleSearchStatus:!1,superQueryFlag:!1,superQueryParams:"",superQueryMatchType:"and",columns:[{title:"#",dataIndex:"",key:"rowIndex",width:60,align:"center",customRender:function(e,t,a){return parseInt(a)+1}},{title:"任务名称",align:"center",dataIndex:"jobName"},{title:"参数",align:"center",dataIndex:"parameter"},{title:"报错信息",dataIndex:"action",align:"center",scopedSlots:{customRender:"action"}},{title:"成功标志",align:"center",dataIndex:"isSuccess",scopedSlots:{customRender:"customRenderStatus"},filterMultiple:!1,filters:[{text:"成功",value:"0"},{text:"失败",value:"-1"}]},{title:"执行时间(毫秒)",align:"center",dataIndex:"executionTime",customRender:function(e,t,a){var n=parseInt(e),o=Math.floor(n/36e5);n%=36e5;var r=Math.floor(n/6e4);n%=6e4;var s=Math.floor(n/1e3);return n%=1e3,0==o?0==r?0==s?"".concat(n,"毫秒"):"".concat(s,"秒 ").concat(n,"毫秒"):"".concat(r,"分钟 ").concat(s,"秒 ").concat(n,"毫秒"):"".concat(o,"小时 ").concat(r,"分钟 ").concat(s,"秒 ").concat(n,"毫秒")}},{title:"任务执行时间",align:"center",dataIndex:"createTime"}],sectionPData:[],sectionData:[],url:{list:"/sys/quartzLog/list",exportXlsUrl:"/sys/quartzLog/exportXls"},value:void 0,valueProduct:void 0,dates:[]}},created:function(){},watch:{},methods:{searchReset:function(){var e=this.queryParam.jobId;this.queryParam={},this.dates=[],this.queryParam.jobId=e,this.loadData(1)},executeImmediately:function(e){this.$refs.modalForm.showDetails(e),this.$refs.modalForm.title="报错信息",this.$refs.modalForm.disableSubmit=!1},handleExportXls:function(e){var t=this;e&&"string"==typeof e||(e="导出文件");var a=this.getQueryParams();this.selectedRowKeys&&this.selectedRowKeys.length>0&&(a["selections"]=this.selectedRowKeys.join(",")),Object(i["b"])(this.url.exportXlsUrl,a).then((function(a){if(a)if("undefined"!==typeof window.navigator.msSaveBlob)window.navigator.msSaveBlob(new Blob([a],{type:"application/vnd.ms-excel"}),e+".xls");else{var n=window.URL.createObjectURL(new Blob([a],{type:"application/vnd.ms-excel"})),o=document.createElement("a");o.style.display="none",o.href=n,o.setAttribute("download",e+".xls"),document.body.appendChild(o),o.click(),document.body.removeChild(o),window.URL.revokeObjectURL(n)}else t.$message.warning("文件下载失败")}))},disabledDate:function(e){return e&&e>p()().subtract("days",1)},dateParamChange:function(e,t){this.queryParam.startTime=t[0],this.queryParam.endTime=t[1]},handleTableChange:function(e,t,a){Object.keys(a).length>0&&(this.isorter.column=a.field,this.isorter.order="ascend"==a.order?"asc":"desc"),this.ipagination=e,this.loadData()},openPage:function(e){this.visible=!0,this.dataSource=[],this.queryParam={jobId:e.id},this.loadData()},getQueryParams:function(){var e={};this.superQueryParams&&(e["superQueryParams"]=encodeURI(this.superQueryParams),e["superQueryMatchType"]=this.superQueryMatchType);var t=Object.assign(e,this.queryParam,this.isorter,this.filters);return t.field=this.getQueryField(),t.pageNo=this.ipagination.current,t.pageSize=this.ipagination.pageSize,t.jobId=this.queryParam.jobId,t.startTime=this.queryParam.startTime,t.endTime=this.queryParam.endTime,Object(r["d"])(t)},getQueryField:function(){var e="id,";return this.columns.forEach((function(t){e+=","+t.dataIndex})),e},loadData:function(e){var t=this;if(this.url.list){1===e&&(this.ipagination.current=1);var a=this.getQueryParams();if(!a)return!1;this.loading=!0,Object(i["c"])(this.url.list,a).then((function(e){e.success?(t.dataSource=e.result.records||e.result,e.result.total?t.ipagination.total=e.result.total:t.ipagination.total=0):t.$notification.warning({message:"消息",description:e.message})})).finally((function(){t.loading=!1}))}else this.$message.error("请设置url.list属性!")},modalFormOk:function(e){this.loadData(),this.selectedRowKeys=[e.id]},searchQuery:function(){this.loadData()},close:function(){this.$emit("close"),this.visible=!1},handleCancel:function(){this.close()},handleOk:function(){this.close()}}},b=h,y=(a("4b86"),a("2877")),g=Object(y["a"])(b,n,o,!1,null,null,null);t["default"]=g.exports},cef9:function(e,t,a){},e7b3:function(e,t,a){"use strict";var n=a("7776"),o=a.n(n);o.a}}]);