From 27d2e58cd0fbd6b7551299abbc86d83aa54033ae Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期三, 31 七月 2024 15:28:07 +0800
Subject: [PATCH] #

---
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskLogServiceImpl.java     |   20 ++
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskDetlLogService.java          |    2 
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskDetlLogServiceImpl.java |    5 
 zy-asrs-admin/src/components/order/completeTask/index.vue                               |  182 ++++++++++++++++++++
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskServiceImpl.java        |   20 ++
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskDetlServiceImpl.java    |    5 
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/TaskController.java           |    6 
 zy-asrs-wms/src/main/resources/mapper/asrs/TaskDetlMapper.xml                           |    5 
 zy-asrs-admin/src/components/order/workTask/index.vue                                   |  182 ++++++++++++++++++++
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/TaskDetlMapper.java               |    4 
 zy-asrs-admin/src/components/orderDetl/show.vue                                         |   28 +++
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskLogService.java              |    4 
 zy-asrs-wms/src/main/resources/mapper/asrs/TaskDetlLogMapper.xml                        |    5 
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskService.java                 |    4 
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/TaskDetlLogMapper.java            |    4 
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/TaskLogController.java        |    6 
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskDetlService.java             |    2 
 17 files changed, 484 insertions(+), 0 deletions(-)

diff --git a/zy-asrs-admin/src/components/order/completeTask/index.vue b/zy-asrs-admin/src/components/order/completeTask/index.vue
new file mode 100644
index 0000000..2a379d0
--- /dev/null
+++ b/zy-asrs-admin/src/components/order/completeTask/index.vue
@@ -0,0 +1,182 @@
+<script setup>
+import { getCurrentInstance, ref, watch, reactive } from 'vue';
+import { useRouter } from "vue-router";
+import { get, post, postForm } from '@/utils/request.js'
+import { message, Modal } from 'ant-design-vue';
+import { logout } from '@/config.js';
+import { formatMessage } from '@/utils/localeUtils.js';
+import useTableSearch from '@/utils/tableUtils.jsx';
+const context = getCurrentInstance()?.appContext.config.globalProperties;
+
+const router = useRouter();
+
+const TABLE_KEY = 'table-locDetl';
+
+let tableData = ref([]);
+let open = ref(false);
+const orderDetlId = ref(null);
+
+const showWidth = ref("60%")
+
+const {
+    getColumnSearchProps,
+} = useTableSearch();
+
+const state = reactive({
+    selectedRowKeys: [],
+    loading: false,
+    columns: [],
+});
+
+state.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'),
+    },
+];
+
+const handleOk = () => {
+    open.value = false;
+}
+
+const handleCancel = () => {
+    open.value = false;
+    orderDetlId.value = null;
+}
+
+watch(orderDetlId, (newVal, oldVal) => {
+    if (newVal != null) {
+        get("/api/taskLog/orderDetlId/" + newVal, {}).then((resp) => {
+            let result = resp.data;
+            tableData.value = result.data;
+        })
+    }
+})
+
+defineExpose({
+    tableData,
+    orderDetlId,
+    open,
+    showWidth,
+})
+
+</script>
+
+<script>
+export default {
+    name: 'completeTaskComponent'
+}
+</script>
+
+<template>
+    <div>
+        <a-modal v-model:open="open" :width="showWidth" @ok="handleOk" @cancel="handleCancel">
+            <a-table :data-source="tableData" :defaultExpandAllRows="false" :key="TABLE_KEY" rowKey="id"
+                :scroll="{ y: 768 }" :columns="state.columns">
+            </a-table>
+        </a-modal>
+    </div>
+</template>
+
+<style></style>
diff --git a/zy-asrs-admin/src/components/order/workTask/index.vue b/zy-asrs-admin/src/components/order/workTask/index.vue
new file mode 100644
index 0000000..ad878a6
--- /dev/null
+++ b/zy-asrs-admin/src/components/order/workTask/index.vue
@@ -0,0 +1,182 @@
+<script setup>
+import { getCurrentInstance, ref, watch, reactive } from 'vue';
+import { useRouter } from "vue-router";
+import { get, post, postForm } from '@/utils/request.js'
+import { message, Modal } from 'ant-design-vue';
+import { logout } from '@/config.js';
+import { formatMessage } from '@/utils/localeUtils.js';
+import useTableSearch from '@/utils/tableUtils.jsx';
+const context = getCurrentInstance()?.appContext.config.globalProperties;
+
+const router = useRouter();
+
+const TABLE_KEY = 'table-locDetl';
+
+let tableData = ref([]);
+let open = ref(false);
+const orderDetlId = ref(null);
+
+const showWidth = ref("60%")
+
+const {
+    getColumnSearchProps,
+} = useTableSearch();
+
+const state = reactive({
+    selectedRowKeys: [],
+    loading: false,
+    columns: [],
+});
+
+state.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'),
+    },
+];
+
+const handleOk = () => {
+    open.value = false;
+}
+
+const handleCancel = () => {
+    open.value = false;
+    orderDetlId.value = null;
+}
+
+watch(orderDetlId, (newVal, oldVal) => {
+    if (newVal != null) {
+        get("/api/task/orderDetlId/" + newVal, {}).then((resp) => {
+            let result = resp.data;
+            tableData.value = result.data;
+        })
+    }
+})
+
+defineExpose({
+    tableData,
+    orderDetlId,
+    open,
+    showWidth,
+})
+
+</script>
+
+<script>
+export default {
+    name: 'workTaskComponent'
+}
+</script>
+
+<template>
+    <div>
+        <a-modal v-model:open="open" :width="showWidth" @ok="handleOk" @cancel="handleCancel">
+            <a-table :data-source="tableData" :defaultExpandAllRows="false" :key="TABLE_KEY" rowKey="id"
+                :scroll="{ y: 768 }" :columns="state.columns">
+            </a-table>
+        </a-modal>
+    </div>
+</template>
+
+<style></style>
diff --git a/zy-asrs-admin/src/components/orderDetl/show.vue b/zy-asrs-admin/src/components/orderDetl/show.vue
index c3563fa..dd0f657 100644
--- a/zy-asrs-admin/src/components/orderDetl/show.vue
+++ b/zy-asrs-admin/src/components/orderDetl/show.vue
@@ -6,6 +6,8 @@
 import { logout } from '@/config.js';
 import { formatMessage } from '@/utils/localeUtils.js';
 import useTableSearch from '@/utils/tableUtils.jsx';
+import WorkTaskView from '@/components/order/workTask/index.vue'
+import CompleteTaskView from '@/components/order/completeTask/index.vue'
 const context = getCurrentInstance()?.appContext.config.globalProperties;
 
 const router = useRouter();
@@ -20,6 +22,8 @@
     orderType$: '',
     orderSettle$: '',
 });
+const workTaskChild = ref(null)
+const completeTaskChild = ref(null)
 
 const showWidth = ref("60%")
 getColumns();
@@ -175,6 +179,18 @@
     }
 })
 
+const openWorkTask = (record) => {
+    workTaskChild.value.open = true;
+    workTaskChild.value.showWidth = '55%';
+    workTaskChild.value.orderDetlId = record.detlId;
+}
+
+const openCompleteQty = (record) => {
+    completeTaskChild.value.open = true;
+    completeTaskChild.value.showWidth = '55%';
+    completeTaskChild.value.orderDetlId = record.detlId;
+}
+
 defineExpose({
     tableData,
     orderId,
@@ -211,7 +227,19 @@
             </div>
             <a-table :data-source="tableData" :defaultExpandAllRows="false" :key="TABLE_KEY" rowKey="id"
                 :scroll="{ y: 768 }" :columns="state.columns">
+                <template #bodyCell="{ column, text, record }">
+                    <template v-if="column.dataIndex === 'workQty'">
+                        <a-button type="link" @click="openWorkTask(record)">{{ text }}</a-button>
+                    </template>
+
+                    <template v-if="column.dataIndex === 'qty'">
+                        <a-button type="link" @click="openCompleteQty(record)">{{ text }}</a-button>
+                    </template>
+                </template>
             </a-table>
+
+            <WorkTaskView ref="workTaskChild" />
+            <CompleteTaskView ref="completeTaskChild" />
         </a-modal>
     </div>
 </template>
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/TaskController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/TaskController.java
index 05ff011..2d1f503 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/TaskController.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/TaskController.java
@@ -52,6 +52,12 @@
         return R.ok().add(taskService.getById(id));
     }
 
+    @PreAuthorize("hasAuthority('asrs:task:list')")
+    @GetMapping("/task/orderDetlId/{orderDetlId}")
+    public R getByOrderDetlId(@PathVariable("orderDetlId") Long orderDetlId) {
+        return R.ok().add(taskService.getByOrderDetlId(orderDetlId));
+    }
+
     @PreAuthorize("hasAuthority('asrs:task:save')")
     @OperationLog("娣诲姞浠诲姟")
     @PostMapping("/task/save")
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/TaskLogController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/TaskLogController.java
index 69c8e46..b61e229 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/TaskLogController.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/TaskLogController.java
@@ -49,6 +49,12 @@
         return R.ok().add(taskLogService.getById(id));
     }
 
+    @PreAuthorize("hasAuthority('asrs:taskLog:list')")
+    @GetMapping("/taskLog/orderDetlId/{orderDetlId}")
+    public R getByOrderDetlId(@PathVariable("orderDetlId") Long orderDetlId) {
+        return R.ok().add(taskLogService.getByOrderDetlId(orderDetlId));
+    }
+
     @PreAuthorize("hasAuthority('asrs:taskLog:save')")
     @OperationLog("娣诲姞浠诲姟鍘嗗彶")
     @PostMapping("/taskLog/save")
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/TaskDetlLogMapper.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/TaskDetlLogMapper.java
index ffa7378..85c078d 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/TaskDetlLogMapper.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/TaskDetlLogMapper.java
@@ -5,8 +5,12 @@
 import org.apache.ibatis.annotations.Mapper;
 import org.springframework.stereotype.Repository;
 
+import java.util.List;
+
 @Mapper
 @Repository
 public interface TaskDetlLogMapper extends BaseMapper<TaskDetlLog> {
 
+    List<Long> getTaskIdsByDetlId(Long detlId);
+
 }
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/TaskDetlMapper.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/TaskDetlMapper.java
index 9d51efb..a387f7f 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/TaskDetlMapper.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/TaskDetlMapper.java
@@ -5,8 +5,12 @@
 import org.apache.ibatis.annotations.Mapper;
 import org.springframework.stereotype.Repository;
 
+import java.util.List;
+
 @Mapper
 @Repository
 public interface TaskDetlMapper extends BaseMapper<TaskDetl> {
 
+    List<Long> getTaskIdsByDetlId(Long detlId);
+
 }
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskDetlLogService.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskDetlLogService.java
index 20da153..13c6d19 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskDetlLogService.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskDetlLogService.java
@@ -9,4 +9,6 @@
 
     List<TaskDetlLog> getTaskDetlLogByTaskId(Long taskId);
 
+    List<Long> getTaskIdsByDetlId(Long detlId);
+
 }
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskDetlService.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskDetlService.java
index b96d91a..d751579 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskDetlService.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskDetlService.java
@@ -9,4 +9,6 @@
 
     List<TaskDetl> getTaskDetlByTaskId(Long taskId);
 
+    List<Long> getTaskIdsByDetlId(Long detlId);
+
 }
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskLogService.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskLogService.java
index f1be6f9..d3e8a7b 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskLogService.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskLogService.java
@@ -3,6 +3,10 @@
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.zy.asrs.wms.asrs.entity.TaskLog;
 
+import java.util.List;
+
 public interface TaskLogService extends IService<TaskLog> {
 
+    List<TaskLog> getByOrderDetlId(Long orderDetlId);
+
 }
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskService.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskService.java
index 48cf5fa..797a9af 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskService.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/TaskService.java
@@ -3,6 +3,10 @@
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.zy.asrs.wms.asrs.entity.Task;
 
+import java.util.List;
+
 public interface TaskService extends IService<Task> {
 
+    List<Task> getByOrderDetlId(Long orderDetlId);
+
 }
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskDetlLogServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskDetlLogServiceImpl.java
index c9f7672..fe47dc2 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskDetlLogServiceImpl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskDetlLogServiceImpl.java
@@ -31,4 +31,9 @@
         }
         return taskDetlLogs;
     }
+
+    @Override
+    public List<Long> getTaskIdsByDetlId(Long detlId) {
+        return this.baseMapper.getTaskIdsByDetlId(detlId);
+    }
 }
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskDetlServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskDetlServiceImpl.java
index 193cebe..fa9edd6 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskDetlServiceImpl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskDetlServiceImpl.java
@@ -28,4 +28,9 @@
         }
         return taskDetls;
     }
+
+    @Override
+    public List<Long> getTaskIdsByDetlId(Long detlId) {
+        return this.baseMapper.getTaskIdsByDetlId(detlId);
+    }
 }
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskLogServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskLogServiceImpl.java
index be23d4f..6b17441 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskLogServiceImpl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskLogServiceImpl.java
@@ -1,12 +1,32 @@
 package com.zy.asrs.wms.asrs.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.zy.asrs.wms.asrs.entity.Task;
 import com.zy.asrs.wms.asrs.mapper.TaskLogMapper;
 import com.zy.asrs.wms.asrs.entity.TaskLog;
+import com.zy.asrs.wms.asrs.service.TaskDetlLogService;
 import com.zy.asrs.wms.asrs.service.TaskLogService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
 
 @Service("taskLogService")
 public class TaskLogServiceImpl extends ServiceImpl<TaskLogMapper, TaskLog> implements TaskLogService {
 
+    @Autowired
+    private TaskDetlLogService taskDetlLogService;
+
+    @Override
+    public List<TaskLog> getByOrderDetlId(Long orderDetlId) {
+        ArrayList<TaskLog> tasks = new ArrayList<>();
+        List<Long> taskIds = taskDetlLogService.getTaskIdsByDetlId(orderDetlId);
+        if (!taskIds.isEmpty()) {
+            return this.list(new LambdaQueryWrapper<TaskLog>().in(TaskLog::getId, taskIds));
+        }
+        return tasks;
+    }
 }
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskServiceImpl.java
index 5c64884..db20756 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskServiceImpl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/TaskServiceImpl.java
@@ -1,12 +1,32 @@
 package com.zy.asrs.wms.asrs.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.zy.asrs.wms.asrs.entity.TaskDetl;
 import com.zy.asrs.wms.asrs.mapper.TaskMapper;
 import com.zy.asrs.wms.asrs.entity.Task;
+import com.zy.asrs.wms.asrs.service.TaskDetlService;
 import com.zy.asrs.wms.asrs.service.TaskService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
 
 @Service("taskService")
 public class TaskServiceImpl extends ServiceImpl<TaskMapper, Task> implements TaskService {
 
+    @Autowired
+    private TaskDetlService taskDetlService;
+
+    @Override
+    public List<Task> getByOrderDetlId(Long orderDetlId) {
+        ArrayList<Task> tasks = new ArrayList<>();
+        List<Long> taskIds = taskDetlService.getTaskIdsByDetlId(orderDetlId);
+        if (!taskIds.isEmpty()) {
+            return this.list(new LambdaQueryWrapper<Task>().in(Task::getId, taskIds));
+        }
+        return tasks;
+    }
 }
diff --git a/zy-asrs-wms/src/main/resources/mapper/asrs/TaskDetlLogMapper.xml b/zy-asrs-wms/src/main/resources/mapper/asrs/TaskDetlLogMapper.xml
index be809a5..9d6d652 100644
--- a/zy-asrs-wms/src/main/resources/mapper/asrs/TaskDetlLogMapper.xml
+++ b/zy-asrs-wms/src/main/resources/mapper/asrs/TaskDetlLogMapper.xml
@@ -2,4 +2,9 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.zy.asrs.wms.asrs.mapper.TaskDetlLogMapper">
 
+    <select id="getTaskIdsByDetlId" resultType="long">
+        select distinct task_id from man_task_detl_log
+        where detl_id = #{detlId}
+    </select>
+
 </mapper>
diff --git a/zy-asrs-wms/src/main/resources/mapper/asrs/TaskDetlMapper.xml b/zy-asrs-wms/src/main/resources/mapper/asrs/TaskDetlMapper.xml
index d0539fe..202c643 100644
--- a/zy-asrs-wms/src/main/resources/mapper/asrs/TaskDetlMapper.xml
+++ b/zy-asrs-wms/src/main/resources/mapper/asrs/TaskDetlMapper.xml
@@ -2,4 +2,9 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.zy.asrs.wms.asrs.mapper.TaskDetlMapper">
 
+    <select id="getTaskIdsByDetlId" resultType="long">
+        select distinct task_id from man_task_detl
+        where detl_id = #{detlId}
+    </select>
+
 </mapper>

--
Gitblit v1.9.1