From c635d78b479510ebe2556a420948effcd30a0731 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期六, 21 十二月 2024 18:40:43 +0800
Subject: [PATCH] 新建德森项目分支

---
 zy-asrs-admin/src/views/task/task/index.vue |  834 +++++++++++++++++++++++++++++-----------------------------
 1 files changed, 417 insertions(+), 417 deletions(-)

diff --git a/zy-asrs-admin/src/views/task/task/index.vue b/zy-asrs-admin/src/views/task/task/index.vue
index 38e8604..049dd9d 100644
--- a/zy-asrs-admin/src/views/task/task/index.vue
+++ b/zy-asrs-admin/src/views/task/task/index.vue
@@ -1,417 +1,417 @@
-<script setup>
-import { getCurrentInstance, ref, computed, reactive } from 'vue';
-import { useRouter } from "vue-router";
-import { get, post, postBlob, postForm } from '@/utils/request.js'
-import { message, Modal } from 'ant-design-vue';
-import { logout } from '@/config.js';
-import EditView from './edit.vue'
-import { formatMessage } from '@/utils/localeUtils.js';
-import useTableSearch from '@/utils/tableUtils.jsx';
-import ShowTaskDetlComponent from '@/components/task/showTaskDetl/index.vue';
-const context = getCurrentInstance()?.appContext.config.globalProperties;
-
-const router = useRouter();
-
-const TABLE_KEY = 'table-task';
-let currentPage = 1;
-let pageSize = 10;
-const searchInput = ref("")
-const searchParam = ref({
-  taskNo: null,
-  taskSts: null,
-  taskType: null,
-  originLoc: null,
-  targetLoc: null,
-  barcode: null,
-})
-const editChild = ref(null)
-const showTaskDetlChild = ref(null)
-
-const state = reactive({
-  selectedRowKeys: [],
-  loading: false,
-});
-
-let tableData = ref([]);
-getPage();
-
-const {
-  getColumnSearchProps,
-  handleResizeColumn,
-} = useTableSearch();
-
-const columns = [
-  {
-    title: formatMessage('db.man_task.task_no', '浠诲姟缂栧彿'),
-    dataIndex: 'taskNo',
-    width: 140,
-    ellipsis: true,
-    ...getColumnSearchProps('taskNo'),
-  },
-  {
-    title: formatMessage('db.man_task.task_sts', '浠诲姟鐘舵��'),
-    dataIndex: 'taskSts$',
-    width: 140,
-    ellipsis: true,
-    ...getColumnSearchProps('taskSts$'),
-  },
-  {
-    title: formatMessage('db.man_task.task_type', '浠诲姟绫诲瀷'),
-    dataIndex: 'taskType$',
-    width: 140,
-    ellipsis: true,
-    ...getColumnSearchProps('taskType$'),
-  },
-  {
-    title: formatMessage('db.man_task.io_pri', '浼樺厛绾�'),
-    dataIndex: 'ioPri',
-    width: 140,
-    ellipsis: true,
-    ...getColumnSearchProps('ioPri'),
-  },
-  {
-    title: formatMessage('db.man_task.origin_loc', '婧愬簱浣�'),
-    dataIndex: 'originLoc',
-    width: 140,
-    ellipsis: true,
-    ...getColumnSearchProps('originLoc'),
-  },
-  {
-    title: formatMessage('db.man_task.target_loc', '鐩爣搴撲綅'),
-    dataIndex: 'targetLoc',
-    width: 140,
-    ellipsis: true,
-    ...getColumnSearchProps('targetLoc'),
-  },
-  {
-    title: formatMessage('db.man_task.origin_site', '婧愮珯鐐�'),
-    dataIndex: 'originSite',
-    width: 140,
-    ellipsis: true,
-    ...getColumnSearchProps('originSite'),
-  },
-  {
-    title: formatMessage('db.man_task.target_site', '鐩爣绔欑偣'),
-    dataIndex: 'targetSite',
-    width: 140,
-    ellipsis: true,
-    ...getColumnSearchProps('targetSite'),
-  },
-  {
-    title: formatMessage('db.man_task.barcode', '鎵樼洏鐮�'),
-    dataIndex: 'barcode',
-    width: 140,
-    ellipsis: true,
-    ...getColumnSearchProps('barcode'),
-  },
-  {
-    title: formatMessage('db.man_task.status', '鐘舵��'),
-    dataIndex: 'status$',
-    width: 140,
-    ellipsis: true,
-    ...getColumnSearchProps('status$'),
-  },
-  {
-    title: formatMessage('db.man_task.create_time', '娣诲姞鏃堕棿'),
-    dataIndex: 'createTime$',
-    width: 140,
-    ellipsis: true,
-    ...getColumnSearchProps('createTime$'),
-  },
-  {
-    title: formatMessage('db.man_task.create_by', '娣诲姞浜哄憳'),
-    dataIndex: 'createBy$',
-    width: 140,
-    ellipsis: true,
-    ...getColumnSearchProps('createBy$'),
-  },
-  {
-    title: formatMessage('db.man_task.update_time', '淇敼鏃堕棿'),
-    dataIndex: 'updateTime$',
-    width: 140,
-    ellipsis: true,
-    ...getColumnSearchProps('updateTime$'),
-  },
-  {
-    title: formatMessage('db.man_task.update_by', '淇敼浜哄憳'),
-    dataIndex: 'updateBy$',
-    width: 140,
-    ellipsis: true,
-    ...getColumnSearchProps('updateBy$'),
-  },
-  {
-    title: formatMessage('db.man_task.memo', '澶囨敞'),
-    dataIndex: 'memo',
-    width: 140,
-    ellipsis: true,
-    ...getColumnSearchProps('memo'),
-  },
-  {
-    title: formatMessage('common.operation', '鎿嶄綔'),
-    name: 'oper',
-    dataIndex: 'oper',
-    key: 'oper',
-    fixed: 'right',
-    width: 300,
-  },
-];
-
-const hasSelected = computed(() => state.selectedRowKeys.length > 0);
-const start = () => {
-  state.loading = true;
-  // ajax request after empty completing
-  setTimeout(() => {
-    state.loading = false;
-    state.selectedRowKeys = [];
-  }, 1000);
-};
-const onSelectChange = selectedRowKeys => {
-  // console.log('selectedRowKeys changed: ', selectedRowKeys);
-  state.selectedRowKeys = selectedRowKeys;
-};
-
-function getPage() {
-  state.loading = true;
-
-  post('/api/task/page', {
-    current: currentPage,
-    pageSize: pageSize,
-    condition: searchInput.value,
-    _param: searchParam.value,
-  }).then((resp) => {
-    let result = resp.data;
-    if (result.code == 200) {
-      let data = result.data;
-      tableData.value = data;
-
-      state.loading = false;
-    } else if (result.code === 401) {
-      message.error(result.msg);
-      logout()
-    } else {
-      message.error(result.msg);
-    }
-  })
-}
-
-const handleEdit = (item) => {
-  editChild.value.open = true;
-  editChild.value.formData = item == null ? editChild.value.initFormData : JSON.parse(JSON.stringify(item));
-  editChild.value.isSave = item == null;
-}
-
-const handleDel = (rows) => {
-  Modal.confirm({
-    title: formatMessage('page.delete', '鍒犻櫎'),
-    content: formatMessage('page.delete.confirm', '纭畾鍒犻櫎璇ラ」鍚楋紵'),
-    maskClosable: true,
-    onOk: async () => {
-      const hide = message.loading(formatMessage('common.loading', '璇锋眰涓�'));
-      try {
-        post('/api/task/remove/' + rows.map((row) => row.id).join(','), {}).then(resp => {
-          let result = resp.data;
-          if (result.code === 200) {
-            message.success(result.msg);
-          } else {
-            message.error(result.msg);
-          }
-          getPage()
-          hide()
-        })
-      } catch (error) {
-        message.error(formatMessage('common.fail', '璇锋眰澶辫触'));
-      }
-    },
-  });
-}
-
-const handleExport = async (intl) => {
-  postBlob('/api/task/export', {
-    condition: searchInput.value,
-    _param: searchParam.value,
-  }).then(result => {
-    const blob = new Blob([result.data], { type: 'application/vnd.ms-excel' });
-    window.location.href = window.URL.createObjectURL(blob);
-    return true;
-  })
-};
-
-const onSearch = () => {
-  // console.log('search');
-  getPage()
-}
-
-const onPageChange = (page, size) => {
-  currentPage = page;
-  pageSize = size;
-  getPage();
-}
-
-function handleTableReload(value) {
-  getPage()
-}
-
-const showDetl = (record) => {
-  showTaskDetlChild.value.open = true;
-  showTaskDetlChild.value.taskId = record.id;
-}
-
-const handleComplete = (record) => {
-  Modal.confirm({
-    title: formatMessage('page.complete', '瀹屾垚'),
-    content: formatMessage('page.complete.confirm', '纭畾瀹屾垚璇ラ」鍚楋紵'),
-    maskClosable: true,
-    onOk: async () => {
-      const hide = message.loading(formatMessage('common.loading', '璇锋眰涓�'));
-      try {
-        post('/api/task/complete', record).then(resp => {
-          let result = resp.data;
-          if (result.code === 200) {
-            message.success(result.msg);
-          } else {
-            message.error(result.msg);
-          }
-          getPage()
-          hide()
-        })
-      } catch (error) {
-        message.error(formatMessage('common.fail', '璇锋眰澶辫触'));
-      }
-    },
-  });
-}
-
-const handleCancel = (record) => {
-  Modal.confirm({
-    title: formatMessage('page.cancel', '鍙栨秷'),
-    content: formatMessage('page.cancel.confirm', '纭畾鍙栨秷璇ラ」鍚楋紵'),
-    maskClosable: true,
-    onOk: async () => {
-      const hide = message.loading(formatMessage('common.loading', '璇锋眰涓�'));
-      try {
-        post('/api/task/cancel', record).then(resp => {
-          let result = resp.data;
-          if (result.code === 200) {
-            message.success(result.msg);
-          } else {
-            message.error(result.msg);
-          }
-          getPage()
-          hide()
-        })
-      } catch (error) {
-        message.error(formatMessage('common.fail', '璇锋眰澶辫触'));
-      }
-    },
-  });
-}
-
-const handlePick = (record) => {
-  Modal.confirm({
-    title: formatMessage('page.pick', '鎷f枡'),
-    content: formatMessage('page.pick.confirm', '纭畾鎷f枡璇ラ」鍚楋紵'),
-    maskClosable: true,
-    onOk: async () => {
-      const hide = message.loading(formatMessage('common.loading', '璇锋眰涓�'));
-      try {
-        post('/api/task/pick', record).then(resp => {
-          let result = resp.data;
-          if (result.code === 200) {
-            message.success(result.msg);
-          } else {
-            message.error(result.msg);
-          }
-          getPage()
-          hide()
-        })
-      } catch (error) {
-        message.error(formatMessage('common.fail', '璇锋眰澶辫触'));
-      }
-    },
-  });
-}
-
-const taskStsQueryList = ref(null);
-taskStsQuery();
-function taskStsQuery() {
-  postForm('/api/taskSts/query', {}).then(resp => {
-    let result = resp.data;
-    taskStsQueryList.value = result.data;
-  })
-}
-const taskTypeQueryList = ref(null);
-taskTypeQuery();
-function taskTypeQuery() {
-  postForm('/api/taskType/query', {}).then(resp => {
-    let result = resp.data;
-    taskTypeQueryList.value = result.data;
-  })
-}
-
-</script>
-
-<script>
-export default {
-  name: '浠诲姟绠$悊'
-}
-</script>
-
-<template>
-  <div>
-    <EditView ref="editChild" @tableReload="handleTableReload" />
-    <div class="table-header">
-      <div>
-        <a-input v-model:value="searchParam.taskNo" :placeholder="formatMessage('page.task.taskNo.input', '璇疯緭鍏ヤ换鍔$紪鍙�')"
-          style="width: 140px;margin-right: 10px;" />
-        <a-select v-model:value="searchParam.taskSts"
-          :placeholder="formatMessage('page.task.taskSts.select', '璇烽�夋嫨浠诲姟鐘舵��')" style="width: 140px;margin-right: 10px;"
-          show-search allowClear :options="taskStsQueryList" optionFilterProp="label" optionLabelProp="label">
-        </a-select>
-        <a-select v-model:value="searchParam.taskType"
-          :placeholder="formatMessage('page.task.taskType.select', '璇烽�夋嫨浠诲姟绫诲瀷')" style="width: 140px;margin-right: 10px;"
-          show-search allowClear :options="taskTypeQueryList" optionFilterProp="label" optionLabelProp="label">
-        </a-select>
-        <a-input v-model:value="searchParam.originLoc"
-          :placeholder="formatMessage('page.task.originLoc.input', '璇疯緭鍏ユ簮搴撲綅')"
-          style="width: 140px;margin-right: 10px;" />
-        <a-input v-model:value="searchParam.targetLoc"
-          :placeholder="formatMessage('page.task.targetLoc.input', '璇疯緭鍏ョ洰鏍囧簱浣�')"
-          style="width: 140px;margin-right: 10px;" />
-        <a-input v-model:value="searchParam.barcode" :placeholder="formatMessage('page.task.barcode.input', '璇疯緭鍏ユ墭鐩樼爜')"
-          style="width: 140px;margin-right: 10px;" />
-
-        <a-input-search v-model:value="searchInput" :placeholder="formatMessage('page.input', '璇疯緭鍏�')"
-          style="width: 200px;" @search="onSearch" />
-      </div>
-      <div class="table-header-right">
-        <!-- <a-button @click="handleEdit(null)" type="primary">{{ formatMessage('page.add', '娣诲姞') }}</a-button> -->
-        <a-button @click="handleExport">{{ formatMessage('page.export', '瀵煎嚭') }}</a-button>
-      </div>
-    </div>
-    <a-table :row-selection="{ selectedRowKeys: state.selectedRowKeys, onChange: onSelectChange }"
-      :data-source="tableData.records" :defaultExpandAllRows="false" :key="TABLE_KEY" rowKey="id"
-      :pagination="{ total: tableData.total, onChange: onPageChange }"
-      :scroll="{ y: 768, scrollToFirstRowOnChange: true }" :columns="columns" @resizeColumn="handleResizeColumn"
-      :loading="state.loading">
-      <template #bodyCell="{ column, text, record }">
-        <template v-if="column.dataIndex === 'oper'">
-          <div style="display: flex;justify-content: space-evenly;">
-            <a-button type="link" primary @click="showDetl(record)">{{ formatMessage('page.task.orderDetl', '浠诲姟鏄庣粏')
-              }}</a-button>
-            <a-button v-if="record.taskType == 103" type="link" primary @click="handlePick(record)">{{
-              formatMessage('page.pick', '鎷f枡')
-            }}</a-button>
-            <a-button type="link" primary @click="handleComplete(record)">{{ formatMessage('page.complete', '瀹屾垚')
-              }}</a-button>
-            <a-button type="link" danger @click="handleCancel(record)">{{ formatMessage('page.cancel', '鍙栨秷')
-              }}</a-button>
-          </div>
-        </template>
-      </template>
-    </a-table>
-
-    <ShowTaskDetlComponent ref="showTaskDetlChild" />
-  </div>
-</template>
-
-<style></style>
+<script setup>
+import { getCurrentInstance, ref, computed, reactive } from 'vue';
+import { useRouter } from "vue-router";
+import { get, post, postBlob, postForm } from '@/utils/request.js'
+import { message, Modal } from 'ant-design-vue';
+import { logout } from '@/config.js';
+import EditView from './edit.vue'
+import { formatMessage } from '@/utils/localeUtils.js';
+import useTableSearch from '@/utils/tableUtils.jsx';
+import ShowTaskDetlComponent from '@/components/task/showTaskDetl/index.vue';
+const context = getCurrentInstance()?.appContext.config.globalProperties;
+
+const router = useRouter();
+
+const TABLE_KEY = 'table-task';
+let currentPage = 1;
+let pageSize = 10;
+const searchInput = ref("")
+const searchParam = ref({
+  taskNo: null,
+  taskSts: null,
+  taskType: null,
+  originLoc: null,
+  targetLoc: null,
+  barcode: null,
+})
+const editChild = ref(null)
+const showTaskDetlChild = ref(null)
+
+const state = reactive({
+  selectedRowKeys: [],
+  loading: false,
+});
+
+let tableData = ref([]);
+getPage();
+
+const {
+  getColumnSearchProps,
+  handleResizeColumn,
+} = useTableSearch();
+
+const columns = [
+  {
+    title: formatMessage('db.man_task.task_no', '浠诲姟缂栧彿'),
+    dataIndex: 'taskNo',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('taskNo'),
+  },
+  {
+    title: formatMessage('db.man_task.task_sts', '浠诲姟鐘舵��'),
+    dataIndex: 'taskSts$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('taskSts$'),
+  },
+  {
+    title: formatMessage('db.man_task.task_type', '浠诲姟绫诲瀷'),
+    dataIndex: 'taskType$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('taskType$'),
+  },
+  {
+    title: formatMessage('db.man_task.io_pri', '浼樺厛绾�'),
+    dataIndex: 'ioPri',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('ioPri'),
+  },
+  {
+    title: formatMessage('db.man_task.origin_loc', '婧愬簱浣�'),
+    dataIndex: 'originLoc',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('originLoc'),
+  },
+  {
+    title: formatMessage('db.man_task.target_loc', '鐩爣搴撲綅'),
+    dataIndex: 'targetLoc',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('targetLoc'),
+  },
+  {
+    title: formatMessage('db.man_task.origin_site', '婧愮珯鐐�'),
+    dataIndex: 'originSite',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('originSite'),
+  },
+  {
+    title: formatMessage('db.man_task.target_site', '鐩爣绔欑偣'),
+    dataIndex: 'targetSite',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('targetSite'),
+  },
+  {
+    title: formatMessage('db.man_task.barcode', '鎵樼洏鐮�'),
+    dataIndex: 'barcode',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('barcode'),
+  },
+  {
+    title: formatMessage('db.man_task.status', '鐘舵��'),
+    dataIndex: 'status$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('status$'),
+  },
+  {
+    title: formatMessage('db.man_task.create_time', '娣诲姞鏃堕棿'),
+    dataIndex: 'createTime$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('createTime$'),
+  },
+  {
+    title: formatMessage('db.man_task.create_by', '娣诲姞浜哄憳'),
+    dataIndex: 'createBy$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('createBy$'),
+  },
+  {
+    title: formatMessage('db.man_task.update_time', '淇敼鏃堕棿'),
+    dataIndex: 'updateTime$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('updateTime$'),
+  },
+  {
+    title: formatMessage('db.man_task.update_by', '淇敼浜哄憳'),
+    dataIndex: 'updateBy$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('updateBy$'),
+  },
+  {
+    title: formatMessage('db.man_task.memo', '澶囨敞'),
+    dataIndex: 'memo',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('memo'),
+  },
+  {
+    title: formatMessage('common.operation', '鎿嶄綔'),
+    name: 'oper',
+    dataIndex: 'oper',
+    key: 'oper',
+    fixed: 'right',
+    width: 300,
+  },
+];
+
+const hasSelected = computed(() => state.selectedRowKeys.length > 0);
+const start = () => {
+  state.loading = true;
+  // ajax request after empty completing
+  setTimeout(() => {
+    state.loading = false;
+    state.selectedRowKeys = [];
+  }, 1000);
+};
+const onSelectChange = selectedRowKeys => {
+  // console.log('selectedRowKeys changed: ', selectedRowKeys);
+  state.selectedRowKeys = selectedRowKeys;
+};
+
+function getPage() {
+  state.loading = true;
+
+  post('/api/task/page', {
+    current: currentPage,
+    pageSize: pageSize,
+    condition: searchInput.value,
+    _param: searchParam.value,
+  }).then((resp) => {
+    let result = resp.data;
+    if (result.code == 200) {
+      let data = result.data;
+      tableData.value = data;
+
+      state.loading = false;
+    } else if (result.code === 401) {
+      message.error(result.msg);
+      logout()
+    } else {
+      message.error(result.msg);
+    }
+  })
+}
+
+const handleEdit = (item) => {
+  editChild.value.open = true;
+  editChild.value.formData = item == null ? editChild.value.initFormData : JSON.parse(JSON.stringify(item));
+  editChild.value.isSave = item == null;
+}
+
+const handleDel = (rows) => {
+  Modal.confirm({
+    title: formatMessage('page.delete', '鍒犻櫎'),
+    content: formatMessage('page.delete.confirm', '纭畾鍒犻櫎璇ラ」鍚楋紵'),
+    maskClosable: true,
+    onOk: async () => {
+      const hide = message.loading(formatMessage('common.loading', '璇锋眰涓�'));
+      try {
+        post('/api/task/remove/' + rows.map((row) => row.id).join(','), {}).then(resp => {
+          let result = resp.data;
+          if (result.code === 200) {
+            message.success(result.msg);
+          } else {
+            message.error(result.msg);
+          }
+          getPage()
+          hide()
+        })
+      } catch (error) {
+        message.error(formatMessage('common.fail', '璇锋眰澶辫触'));
+      }
+    },
+  });
+}
+
+const handleExport = async (intl) => {
+  postBlob('/api/task/export', {
+    condition: searchInput.value,
+    _param: searchParam.value,
+  }).then(result => {
+    const blob = new Blob([result.data], { type: 'application/vnd.ms-excel' });
+    window.location.href = window.URL.createObjectURL(blob);
+    return true;
+  })
+};
+
+const onSearch = () => {
+  // console.log('search');
+  getPage()
+}
+
+const onPageChange = (page, size) => {
+  currentPage = page;
+  pageSize = size;
+  getPage();
+}
+
+function handleTableReload(value) {
+  getPage()
+}
+
+const showDetl = (record) => {
+  showTaskDetlChild.value.open = true;
+  showTaskDetlChild.value.taskId = record.id;
+}
+
+const handleComplete = (record) => {
+  Modal.confirm({
+    title: formatMessage('page.complete', '瀹屾垚'),
+    content: formatMessage('page.complete.confirm', '纭畾瀹屾垚璇ラ」鍚楋紵'),
+    maskClosable: true,
+    onOk: async () => {
+      const hide = message.loading(formatMessage('common.loading', '璇锋眰涓�'));
+      try {
+        post('/api/task/complete', record).then(resp => {
+          let result = resp.data;
+          if (result.code === 200) {
+            message.success(result.msg);
+          } else {
+            message.error(result.msg);
+          }
+          getPage()
+          hide()
+        })
+      } catch (error) {
+        message.error(formatMessage('common.fail', '璇锋眰澶辫触'));
+      }
+    },
+  });
+}
+
+const handleCancel = (record) => {
+  Modal.confirm({
+    title: formatMessage('page.cancel', '鍙栨秷'),
+    content: formatMessage('page.cancel.confirm', '纭畾鍙栨秷璇ラ」鍚楋紵'),
+    maskClosable: true,
+    onOk: async () => {
+      const hide = message.loading(formatMessage('common.loading', '璇锋眰涓�'));
+      try {
+        post('/api/task/cancel', record).then(resp => {
+          let result = resp.data;
+          if (result.code === 200) {
+            message.success(result.msg);
+          } else {
+            message.error(result.msg);
+          }
+          getPage()
+          hide()
+        })
+      } catch (error) {
+        message.error(formatMessage('common.fail', '璇锋眰澶辫触'));
+      }
+    },
+  });
+}
+
+const handlePick = (record) => {
+  Modal.confirm({
+    title: formatMessage('page.pick', '鎷f枡'),
+    content: formatMessage('page.pick.confirm', '纭畾鎷f枡璇ラ」鍚楋紵'),
+    maskClosable: true,
+    onOk: async () => {
+      const hide = message.loading(formatMessage('common.loading', '璇锋眰涓�'));
+      try {
+        post('/api/task/pick', record).then(resp => {
+          let result = resp.data;
+          if (result.code === 200) {
+            message.success(result.msg);
+          } else {
+            message.error(result.msg);
+          }
+          getPage()
+          hide()
+        })
+      } catch (error) {
+        message.error(formatMessage('common.fail', '璇锋眰澶辫触'));
+      }
+    },
+  });
+}
+
+const taskStsQueryList = ref(null);
+taskStsQuery();
+function taskStsQuery() {
+  postForm('/api/taskSts/query', {}).then(resp => {
+    let result = resp.data;
+    taskStsQueryList.value = result.data;
+  })
+}
+const taskTypeQueryList = ref(null);
+taskTypeQuery();
+function taskTypeQuery() {
+  postForm('/api/taskType/query', {}).then(resp => {
+    let result = resp.data;
+    taskTypeQueryList.value = result.data;
+  })
+}
+
+</script>
+
+<script>
+export default {
+  name: '浠诲姟绠$悊'
+}
+</script>
+
+<template>
+  <div>
+    <EditView ref="editChild" @tableReload="handleTableReload" />
+    <div class="table-header">
+      <div>
+        <a-input v-model:value="searchParam.taskNo" :placeholder="formatMessage('page.task.taskNo.input', '璇疯緭鍏ヤ换鍔$紪鍙�')"
+          style="width: 140px;margin-right: 10px;" />
+        <a-select v-model:value="searchParam.taskSts"
+          :placeholder="formatMessage('page.task.taskSts.select', '璇烽�夋嫨浠诲姟鐘舵��')" style="width: 140px;margin-right: 10px;"
+          show-search allowClear :options="taskStsQueryList" optionFilterProp="label" optionLabelProp="label">
+        </a-select>
+        <a-select v-model:value="searchParam.taskType"
+          :placeholder="formatMessage('page.task.taskType.select', '璇烽�夋嫨浠诲姟绫诲瀷')" style="width: 140px;margin-right: 10px;"
+          show-search allowClear :options="taskTypeQueryList" optionFilterProp="label" optionLabelProp="label">
+        </a-select>
+        <a-input v-model:value="searchParam.originLoc"
+          :placeholder="formatMessage('page.task.originLoc.input', '璇疯緭鍏ユ簮搴撲綅')"
+          style="width: 140px;margin-right: 10px;" />
+        <a-input v-model:value="searchParam.targetLoc"
+          :placeholder="formatMessage('page.task.targetLoc.input', '璇疯緭鍏ョ洰鏍囧簱浣�')"
+          style="width: 140px;margin-right: 10px;" />
+        <a-input v-model:value="searchParam.barcode" :placeholder="formatMessage('page.task.barcode.input', '璇疯緭鍏ユ墭鐩樼爜')"
+          style="width: 140px;margin-right: 10px;" />
+
+        <a-input-search v-model:value="searchInput" :placeholder="formatMessage('page.input', '璇疯緭鍏�')"
+          style="width: 200px;" @search="onSearch" />
+      </div>
+      <div class="table-header-right">
+        <!-- <a-button @click="handleEdit(null)" type="primary">{{ formatMessage('page.add', '娣诲姞') }}</a-button> -->
+        <a-button @click="handleExport">{{ formatMessage('page.export', '瀵煎嚭') }}</a-button>
+      </div>
+    </div>
+    <a-table :row-selection="{ selectedRowKeys: state.selectedRowKeys, onChange: onSelectChange }"
+      :data-source="tableData.records" :defaultExpandAllRows="false" :key="TABLE_KEY" rowKey="id"
+      :pagination="{ total: tableData.total, onChange: onPageChange }"
+      :scroll="{ y: 768, scrollToFirstRowOnChange: true }" :columns="columns" @resizeColumn="handleResizeColumn"
+      :loading="state.loading">
+      <template #bodyCell="{ column, text, record }">
+        <template v-if="column.dataIndex === 'oper'">
+          <div style="display: flex;justify-content: space-evenly;">
+            <a-button type="link" primary @click="showDetl(record)">{{ formatMessage('page.task.orderDetl', '浠诲姟鏄庣粏')
+              }}</a-button>
+            <a-button v-if="record.taskType == 103" type="link" primary @click="handlePick(record)">{{
+              formatMessage('page.pick', '鎷f枡')
+            }}</a-button>
+            <a-button type="link" primary @click="handleComplete(record)">{{ formatMessage('page.complete', '瀹屾垚')
+              }}</a-button>
+            <a-button type="link" danger @click="handleCancel(record)">{{ formatMessage('page.cancel', '鍙栨秷')
+              }}</a-button>
+          </div>
+        </template>
+      </template>
+    </a-table>
+
+    <ShowTaskDetlComponent ref="showTaskDetlChild" />
+  </div>
+</template>
+
+<style></style>

--
Gitblit v1.9.1