diff --git a/src/api/productManagement/workoder_v2.js b/src/api/productManagement/workoder_v2.js index 7878e25..3923c84 100644 --- a/src/api/productManagement/workoder_v2.js +++ b/src/api/productManagement/workoder_v2.js @@ -1,6 +1,7 @@ import request from '@/utils/request' import { downFile } from '@/utils/request' +// 导出函数,获取工单列表 export function getWorkoderList(query) { // 发送get请求,获取工单列表 return request({ @@ -12,11 +13,13 @@ export function getWorkoderList(query) { // 导出函数,下载工作计划 export async function dowmloadWorkorder(query) { + // 下载工作计划 await downFile('/mes/pro/workorder_v2/downloadWorkorder', { ...query }) } // 导出函数,删除所有工作计划 export function deleteAllWorkorder(query) { + // 删除所有工作计划 return request({ url: '/mes/pro/workorder_v2/deleteAll', method: 'get', @@ -26,6 +29,7 @@ export function deleteAllWorkorder(query) { // 导出函数,添加新的工作计划 export function addNewworkorder(data) { + // 添加新的工作计划 return request({ url: '/mes/pro/workorder_v2/addworkorder', method: 'post', @@ -36,6 +40,7 @@ export function addNewworkorder(data) { // 导出函数,删除工作计划 export function deleteworkorder(id) { + // 删除工作计划 return request({ url: '/mes/pro/workorder_v2/deleteitem/' + id, method: 'get', @@ -44,6 +49,7 @@ export function deleteworkorder(id) { // 导出函数,更新工作计划 export function updateworkorder(data) { + // 更新工作计划 return request({ url: '/mes/pro/workorder_v2/updateworkorder', method: 'post', @@ -51,3 +57,16 @@ export function updateworkorder(data) { contextType: 'application/json', }) } + +// 导出函数,更新排序 +export function updateSort(query) { + // 更新排序 + return request({ + url: '/mes/pro/workorder_v2/updateSort', + method: 'get', + params: query, + }) +} + + + diff --git a/src/api/productManagement/workorder_online.js b/src/api/productManagement/workorder_online.js new file mode 100644 index 0000000..5f9a237 --- /dev/null +++ b/src/api/productManagement/workorder_online.js @@ -0,0 +1,38 @@ +import request from '@/utils/request' +import { downFile } from '@/utils/request' + + +// 导出函数,获取工单列表 +export function getWorkoderList(query) { + // 发送get请求,获取工单列表 + return request({ + url: '/mes/pro/workorder_v2/getWorkoderList', + method: 'get', + params: query, + }) +} + + +// 导出函数,发起在线请求 +export function startOnline(id) { + // 发起在线请求 + return request({ + // 请求地址 + url: '/mes/pro/workorder_v2/startOnline/' + id, + // 请求方式 + method: 'get', + }) +} + + +// 导出函数,发起在线请求 +export function cancelOnline(id) { + // 发起在线请求 + return request({ + // 请求地址 + url: '/mes/pro/workorder_v2/cancelOnline/' + id, + // 请求方式 + method: 'get', + }) +} + diff --git a/src/views/productManagement/workorder2.vue b/src/views/productManagement/workorder2.vue index e32495c..4260e1f 100644 --- a/src/views/productManagement/workorder2.vue +++ b/src/views/productManagement/workorder2.vue @@ -24,7 +24,6 @@ - 导入工单 导出工单 删除工单 @@ -85,11 +84,12 @@ ref="xTable" v-loading="loading_1" height="800" - :row-config="{ isHover: true }" + :row-config="{ isHover: true, useKey: true, keyField: 'sort' }" :data="workorder_table_data" > - + @@ -117,8 +117,14 @@ - - 上移 下移 @@ -228,7 +234,9 @@ import { addNewworkorder, deleteworkorder, updateworkorder, + updateSort, } from '@/api/productManagement/workoder_v2.js' +import Sortable from 'sortablejs' import { getToken } from '@/utils/auth' export default { @@ -290,7 +298,7 @@ export default { cylinderNumber: null, remark1: '', remark2: '', - sort:0, + sort: 0, year: new Date().getFullYear(), week: null, date: null, @@ -302,8 +310,41 @@ export default { }, mounted() { this.getList() + this.drag() }, methods: { + //todo 拖拽 + drag() { + // 首先获取需要拖拽的dom节点 + const el1 = document.querySelectorAll('.vxe-table--body-wrapper')[0].querySelectorAll('table > tbody')[0] + Sortable.create(el1, { + disabled: false, // 是否开启拖拽 + dragClass: 'sortable-ghost', //拖拽样式 + chosenClass: 'sortable-ghost', + animation: 150, // 拖拽延时,效果更好看 + dataIdAttr: 'rowid', + group: { + // 是否开启跨表拖拽 + pull: false, + put: false, + }, + onEnd: ({ newIndex, oldIndex }) => { + // 获取新的排序值,然后剩余的累加即可 + this.$nextTick(function () { + const query = {} + query.sort = this.workorder_table_data[newIndex].sort + query.id = this.workorder_table_data[oldIndex].id + //发起请求 排序持久化 + updateSort(query).then((res) => { + if (res.code == 200 && res.data > 0) { + this.$notify.success('修改成功') + } + }).catch + }) + }, + }) + }, + handleClick() { this.getList() }, @@ -522,4 +563,8 @@ export default { .el-icon-arrow-down { font-size: 0.5rem; } +.sortable-ghost { + opacity: 0.4; + background-color: #409eff; +} diff --git a/src/views/productManagement/workorder_online.vue b/src/views/productManagement/workorder_online.vue new file mode 100644 index 0000000..e16adef --- /dev/null +++ b/src/views/productManagement/workorder_online.vue @@ -0,0 +1,159 @@ + + + + + diff --git a/src/views/productManagement/workplan2.vue b/src/views/productManagement/workplan2.vue index 5e80069..58f6ee4 100644 --- a/src/views/productManagement/workplan2.vue +++ b/src/views/productManagement/workplan2.vue @@ -63,6 +63,8 @@ 下载模板 + 上传导入时间:{{ upload.time }} +