From 81eb0a971422c081550a1458c8aebcba6d3259a2 Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期四, 01 八月 2024 16:15:28 +0800
Subject: [PATCH] #

---
 zy-asrs-admin/src/components/order/waitTask/index.vue                                 |  168 +++++++++++++++++++++++++++++++++
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MatFieldServiceImpl.java  |    1 
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/MatFieldMapper.java             |   15 +++
 zy-asrs-admin/src/views/in/waitPakin/edit.vue                                         |    6 
 zy-asrs-admin/src/components/orderDetl/show.vue                                       |   21 ++++
 zy-asrs-admin/src/views/IndexView.vue                                                 |    4 
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaitPakinServiceImpl.java |    8 +
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/OrderDetl.java                  |   13 ++
 zy-asrs-admin/src/views/in/waitPakin/index.vue                                        |    4 
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/TaskTimer.java                   |   21 ++-
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/WaitPakinController.java    |   22 ++++
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/WaitPakinService.java          |    4 
 12 files changed, 270 insertions(+), 17 deletions(-)

diff --git a/zy-asrs-admin/src/components/order/waitTask/index.vue b/zy-asrs-admin/src/components/order/waitTask/index.vue
new file mode 100644
index 0000000..4c47ea5
--- /dev/null
+++ b/zy-asrs-admin/src/components/order/waitTask/index.vue
@@ -0,0 +1,168 @@
+<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_wait_pakin.order_id', '璁㈠崟ID'),
+    dataIndex: 'orderId$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('orderId$'),
+  },
+  {
+    title: formatMessage('db.man_wait_pakin.order_no', '璁㈠崟缂栧彿'),
+    dataIndex: 'orderNo',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('orderNo'),
+  },
+  {
+    title: formatMessage('db.man_wait_pakin.barcode', '鎵樼洏鐮�'),
+    dataIndex: 'barcode',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('barcode'),
+  },
+  {
+    title: formatMessage('db.man_wait_pakin.matnr', '鐗╂枡鍙�'),
+    dataIndex: ['detl$', 'mat$', 'matnr'],
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('detl$.matnr'),
+  },
+  {
+    title: formatMessage('db.man_wait_pakin.batch', '鎵瑰彿'),
+    dataIndex: ['detl$', 'batch'],
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('detl$.matnr'),
+  },
+  {
+    title: formatMessage('db.man_wait_pakin.anfme', '缁勬墭鏁伴噺'),
+    dataIndex: 'anfme',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('anfme'),
+  },
+  {
+    title: formatMessage('db.man_wait_pakin.io_status', '缁勬墭鐘舵��'),
+    dataIndex: 'ioStatus$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('ioStatus$'),
+  },
+  {
+    title: formatMessage('db.man_wait_pakin.status', '鐘舵��'),
+    dataIndex: 'status$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('status$'),
+  },
+  {
+    title: formatMessage('db.man_wait_pakin.create_time', '娣诲姞鏃堕棿'),
+    dataIndex: 'createTime$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('createTime$'),
+  },
+  {
+    title: formatMessage('db.man_wait_pakin.create_by', '娣诲姞浜哄憳'),
+    dataIndex: 'createBy$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('createBy$'),
+  },
+  {
+    title: formatMessage('db.man_wait_pakin.update_time', '淇敼鏃堕棿'),
+    dataIndex: 'updateTime$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('updateTime$'),
+  },
+  {
+    title: formatMessage('db.man_wait_pakin.update_by', '淇敼浜哄憳'),
+    dataIndex: 'updateBy$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('updateBy$'),
+  },
+  {
+    title: formatMessage('db.man_wait_pakin.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/waitPakin/orderDetlId/" + newVal, {}).then((resp) => {
+            let result = resp.data;
+            tableData.value = result.data;
+        })
+    }
+})
+
+defineExpose({
+    tableData,
+    orderDetlId,
+    open,
+    showWidth,
+})
+
+</script>
+
+<script>
+export default {
+    name: 'waitTaskComponent'
+}
+</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 dd0f657..78527e2 100644
--- a/zy-asrs-admin/src/components/orderDetl/show.vue
+++ b/zy-asrs-admin/src/components/orderDetl/show.vue
@@ -8,6 +8,7 @@
 import useTableSearch from '@/utils/tableUtils.jsx';
 import WorkTaskView from '@/components/order/workTask/index.vue'
 import CompleteTaskView from '@/components/order/completeTask/index.vue'
+import WaitTaskView from '@/components/order/waitTask/index.vue'
 const context = getCurrentInstance()?.appContext.config.globalProperties;
 
 const router = useRouter();
@@ -24,6 +25,7 @@
 });
 const workTaskChild = ref(null)
 const completeTaskChild = ref(null)
+const waitTaskChild = ref(null)
 
 const showWidth = ref("60%")
 getColumns();
@@ -81,6 +83,13 @@
     {
         title: formatMessage('db.man_loc_detl.workQty', '浣滀笟涓暟閲�'),
         dataIndex: 'workQty',
+        width: 140,
+        ellipsis: true,
+        editable: true,
+    },
+    {
+        title: formatMessage('db.man_loc_detl.waitQty', '缁勬墭鏁伴噺'),
+        dataIndex: 'waitQty',
         width: 140,
         ellipsis: true,
         editable: true,
@@ -160,6 +169,7 @@
                     anfme: item.anfme,
                     qty: item.qty,
                     workQty: item.workQty,
+                    waitQty: item.waitQty,
                     memo: item.memo
                 };
                 fieldList.forEach((field) => {
@@ -189,6 +199,12 @@
     completeTaskChild.value.open = true;
     completeTaskChild.value.showWidth = '55%';
     completeTaskChild.value.orderDetlId = record.detlId;
+}
+
+const openWaitQty = (record) => {
+    waitTaskChild.value.open = true;
+    waitTaskChild.value.showWidth = '55%';
+    waitTaskChild.value.orderDetlId = record.detlId;
 }
 
 defineExpose({
@@ -235,11 +251,16 @@
                     <template v-if="column.dataIndex === 'qty'">
                         <a-button type="link" @click="openCompleteQty(record)">{{ text }}</a-button>
                     </template>
+
+                    <template v-if="column.dataIndex === 'waitQty'">
+                        <a-button type="link" @click="openWaitQty(record)">{{ text }}</a-button>
+                    </template>
                 </template>
             </a-table>
 
             <WorkTaskView ref="workTaskChild" />
             <CompleteTaskView ref="completeTaskChild" />
+            <WaitTaskView ref="waitTaskChild" />
         </a-modal>
     </div>
 </template>
diff --git a/zy-asrs-admin/src/views/IndexView.vue b/zy-asrs-admin/src/views/IndexView.vue
index 124f682..f56e558 100644
--- a/zy-asrs-admin/src/views/IndexView.vue
+++ b/zy-asrs-admin/src/views/IndexView.vue
@@ -120,7 +120,7 @@
     isRouterAlive.value = false;
     nextTick(() => {
       isRouterAlive.value = true;
-      message.success(formatMessage('common.success', '鍔犺浇鎴愬姛'));
+      // message.success(formatMessage('common.success', '鍔犺浇鎴愬姛'));
     })
   } catch (error) {
     message.error(formatMessage('common.fail', '鍔犺浇澶辫触'));
@@ -314,7 +314,7 @@
         </div>
         <router-view v-slot="{ Component, route }" v-if="isRouterAlive">
           <keep-alive :include="routerCache">
-            <component :is="Component" />
+            <component :is="Component" @pageReload="reloadTabs" />
           </keep-alive>
         </router-view>
       </a-layout-content>
diff --git a/zy-asrs-admin/src/views/in/waitPakin/edit.vue b/zy-asrs-admin/src/views/in/waitPakin/edit.vue
index 0eb64bc..e85cc9d 100644
--- a/zy-asrs-admin/src/views/in/waitPakin/edit.vue
+++ b/zy-asrs-admin/src/views/in/waitPakin/edit.vue
@@ -31,10 +31,10 @@
         let result = resp.data;
         if (result.code === 200) {
             message.success(isSave.value ? formatMessage('page.add.success', '鏂板鎴愬姛') : formatMessage('page.update.success', '鏇存柊鎴愬姛'));
+            emit('tableReload', 'reload')
         } else {
             message.error(result.msg);
         }
-        emit('tableReload', 'reload')
         nextTick(() => {
             formTable.value.resetFields()
         })
@@ -90,7 +90,7 @@
     zpalletBarcodeQuery(e)
 }
 
-const handleSearchChange = (e) =>{
+const handleSearchChange = (e) => {
     orderQuery(e);
 }
 
@@ -104,7 +104,7 @@
     let result = await orderDetlQuery(id);
     let tmp = []
     result.data.forEach((item) => {
-        let count = item.anfme - item.qty - item.workQty;
+        let count = item.anfme - item.qty - item.workQty - item.waitQty;
         tmp.push({
             value: item.id,
             label: item.mat$.matnr + '-' + count,
diff --git a/zy-asrs-admin/src/views/in/waitPakin/index.vue b/zy-asrs-admin/src/views/in/waitPakin/index.vue
index 04f5cf7..f0d3219 100644
--- a/zy-asrs-admin/src/views/in/waitPakin/index.vue
+++ b/zy-asrs-admin/src/views/in/waitPakin/index.vue
@@ -12,6 +12,8 @@
 
 const router = useRouter();
 
+const emit = defineEmits(['pageReload'])
+
 const TABLE_KEY = 'table-waitPakin';
 let currentPage = 1;
 let pageSize = 10;
@@ -217,7 +219,7 @@
 }
 
 function handleTableReload(value) {
-  getPage()
+  emit('pageReload', 'reload')
 }
 
 const generateTask = () => {
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/WaitPakinController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/WaitPakinController.java
index de41adb..f8d976b 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/WaitPakinController.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/WaitPakinController.java
@@ -58,6 +58,12 @@
         return R.ok().add(waitPakinService.getById(id));
     }
 
+    @PreAuthorize("hasAuthority('asrs:waitPakin:list')")
+    @GetMapping("/waitPakin/orderDetlId/{orderDetlId}")
+    public R getByOrderDetlId(@PathVariable("orderDetlId") Long orderDetlId) {
+        return R.ok().add(waitPakinService.getByOrderDetlId(orderDetlId));
+    }
+
     @PreAuthorize("hasAuthority('asrs:waitPakin:save')")
     @OperationLog("娣诲姞缁勬墭閫氱煡妗�")
     @PostMapping("/waitPakin/save")
@@ -77,8 +83,20 @@
             return R.error("鎵樼洏姝e湪鍏ュ簱涓�");
         }
 
-        if (!waitPakinService.save(waitPakin)) {
-            return R.error("娣诲姞澶辫触");
+        //鏌ヨ鏄惁瀛樺湪鐩稿悓鏄庣粏鍜屾墭鐩樼爜鐨勭粍鎵橀�氱煡妗�
+        WaitPakin waitPakin1 = waitPakinService.getOne(new LambdaQueryWrapper<WaitPakin>().eq(WaitPakin::getBarcode, waitPakin.getBarcode()).eq(WaitPakin::getDetlId, waitPakin.getDetlId()));
+        if (waitPakin1 == null) {
+            //涓嶅瓨鍦ㄧ粍鎵橀�氱煡妗o紝鍒涘缓
+            if (!waitPakinService.save(waitPakin)) {
+                return R.error("娣诲姞澶辫触");
+            }
+        }else {
+            //瀛樺湪缁勬墭閫氱煡妗o紝鏇存柊
+            waitPakin1.setAnfme(waitPakin1.getAnfme() + waitPakin.getAnfme());
+            waitPakin1.setUpdateTime(new Date());
+            if (!waitPakinService.updateById(waitPakin1)) {
+                return R.error("娣诲姞澶辫触");
+            }
         }
 
         OrderDetl orderDetl = orderDetlService.getById(waitPakin.getDetlId());
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/OrderDetl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/OrderDetl.java
index 86e13bd..2bcb924 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/OrderDetl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/OrderDetl.java
@@ -6,10 +6,12 @@
 import java.text.SimpleDateFormat;
 import java.util.*;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.fasterxml.jackson.annotation.JsonAnyGetter;
 import com.zy.asrs.common.utils.Synchro;
 import com.zy.asrs.wms.asrs.service.MatService;
 import com.zy.asrs.wms.asrs.service.OrderService;
+import com.zy.asrs.wms.asrs.service.WaitPakinService;
 import com.zy.asrs.wms.system.entity.Host;
 import com.zy.asrs.wms.system.entity.User;
 import org.springframework.format.annotation.DateTimeFormat;
@@ -171,6 +173,17 @@
 //            null    // 澶囨敞
 //    );
 
+    //鑾峰彇缁勬墭鏁伴噺
+    public Double getWaitQty(){
+        Double qty = 0D;
+        WaitPakinService service = SpringUtils.getBean(WaitPakinService.class);
+        List<WaitPakin> waitPakins = service.list(new LambdaQueryWrapper<WaitPakin>().eq(WaitPakin::getDetlId, id));
+        for (WaitPakin waitPakin : waitPakins) {
+            qty += waitPakin.getAnfme();
+        }
+        return qty;
+    }
+
     public String getOrderId$(){
         OrderService service = SpringUtils.getBean(OrderService.class);
         Order order = service.getById(this.orderId);
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/MatFieldMapper.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/MatFieldMapper.java
index 12e52e9..133a840 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/MatFieldMapper.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/mapper/MatFieldMapper.java
@@ -18,6 +18,10 @@
     @SelectProvider(type = SqlProvider.class, method = "createViewSql")
     void createView(@Param("list") List<MatField> list);
 
+
+    @SelectProvider(type = SqlProvider.class, method = "createLocDetlView")
+    void createLocDetlView();
+
     class SqlProvider {
         public String createViewSql(Map<String, Object> params) {
             List<MatField> list = (List<MatField>) params.get("list");
@@ -33,6 +37,17 @@
 
             return sql.toString();
         }
+
+        public String createLocDetlView() {
+            StringBuilder sql = new StringBuilder();
+
+            sql.append(" CREATE OR REPLACE VIEW view_man_loc_detl AS \n");
+            sql.append(" select * from man_loc_detl ld ");
+            sql.append(" left join view_man_loc_detl_field ldf ");
+            sql.append(" on ld.id = ldf.detl_id ");
+
+            return sql.toString();
+        }
     }
 
 }
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/WaitPakinService.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/WaitPakinService.java
index f25f157..76b6a42 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/WaitPakinService.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/WaitPakinService.java
@@ -3,6 +3,10 @@
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.zy.asrs.wms.asrs.entity.WaitPakin;
 
+import java.util.List;
+
 public interface WaitPakinService extends IService<WaitPakin> {
 
+    List<WaitPakin> getByOrderDetlId(Long orderDetlId);
+
 }
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MatFieldServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MatFieldServiceImpl.java
index 2d7761a..f149048 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MatFieldServiceImpl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MatFieldServiceImpl.java
@@ -16,6 +16,7 @@
     public void createView() {
         List<MatField> list = this.list();
         this.baseMapper.createView(list);
+        this.baseMapper.createLocDetlView();
     }
 
 }
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaitPakinServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaitPakinServiceImpl.java
index 635860d..d66fb95 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaitPakinServiceImpl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/WaitPakinServiceImpl.java
@@ -1,12 +1,20 @@
 package com.zy.asrs.wms.asrs.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.zy.asrs.wms.asrs.mapper.WaitPakinMapper;
 import com.zy.asrs.wms.asrs.entity.WaitPakin;
 import com.zy.asrs.wms.asrs.service.WaitPakinService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
 
+import java.util.Collections;
+import java.util.List;
+
 @Service("waitPakinService")
 public class WaitPakinServiceImpl extends ServiceImpl<WaitPakinMapper, WaitPakin> implements WaitPakinService {
 
+    @Override
+    public List<WaitPakin> getByOrderDetlId(Long orderDetlId) {
+        return this.list(new LambdaQueryWrapper<WaitPakin>().eq(WaitPakin::getDetlId, orderDetlId));
+    }
 }
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/TaskTimer.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/TaskTimer.java
index be7a0c9..e9a0f64 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/TaskTimer.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/timer/TaskTimer.java
@@ -96,6 +96,7 @@
                                 locDetlField.setDetlId(locDetl.getId());
                                 locDetlField.setFieldId(detlField.getFieldId());
                                 locDetlField.setName(detlField.getName());
+                                locDetlField.setValue(detlField.getValue());
                                 locDetlField.setHostId(hostId);
                                 if (!locDetlFieldService.save(locDetlField)) {
                                     throw new CoolException("鎻掑叆鏄庣粏鎵╁睍瀛楁澶辫触");
@@ -104,18 +105,20 @@
                         }
 
                         //缁勬墭閫氱煡妗h浆鍘嗗彶妗�
-                        WaitPakin waitPakin = waitPakinService.getOne(new LambdaQueryWrapper<WaitPakin>().eq(WaitPakin::getBarcode, task.getBarcode()).eq(WaitPakin::getHostId, hostId));
-                        if (waitPakin == null) {
+                        List<WaitPakin> waitPakins = waitPakinService.list(new LambdaQueryWrapper<WaitPakin>().eq(WaitPakin::getBarcode, task.getBarcode()).eq(WaitPakin::getHostId, hostId));
+                        if(waitPakins.isEmpty()) {
                             throw new CoolException("缁勬墭閫氱煡妗d笉瀛樺湪");
                         }
-                        WaitPakinLog waitPakinLog = new WaitPakinLog();
-                        waitPakinLog.sync(waitPakin);
-                        if (!waitPakinLogService.save(waitPakinLog)) {
-                            throw new CoolException("缁勬墭閫氱煡妗h浆鍘嗗彶妗eけ璐�");
-                        }
+                        for (WaitPakin waitPakin : waitPakins) {
+                            WaitPakinLog waitPakinLog = new WaitPakinLog();
+                            waitPakinLog.sync(waitPakin);
+                            if (!waitPakinLogService.save(waitPakinLog)) {
+                                throw new CoolException("缁勬墭閫氱煡妗h浆鍘嗗彶妗eけ璐�");
+                            }
 
-                        //鍒犻櫎缁勬墭閫氱煡妗�
-                        waitPakinService.remove(new LambdaQueryWrapper<WaitPakin>().eq(WaitPakin::getBarcode, task.getBarcode()).eq(WaitPakin::getHostId, hostId));
+                            //鍒犻櫎缁勬墭閫氱煡妗�
+                            waitPakinService.removeById(waitPakin.getId());
+                        }
 
                         break;
                 }

--
Gitblit v1.9.1