Quellcode durchsuchen

自动出入库

flower_mr vor 1 Monat
Ursprung
Commit
2bf4198741

BIN
bound/__pycache__/models.cpython-38.pyc


+ 20 - 0
bound/migrations/0004_boundlistmodel_relate_out_bill.py

@@ -0,0 +1,20 @@
+# Generated by Django 4.1.2 on 2025-05-06 22:12
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('erp', '0008_inboundbill_erp_audit_id_inboundbill_erp_save_id_and_more'),
+        ('bound', '0003_boundbatchmodel_relate_material_and_more'),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name='boundlistmodel',
+            name='relate_out_bill',
+            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='bound_out_list', to='erp.outboundbill', verbose_name='关联出库单据'),
+        ),
+    ]

+ 20 - 0
bound/migrations/0005_outbatchmodel_relate_material.py

@@ -0,0 +1,20 @@
+# Generated by Django 4.1.2 on 2025-05-06 22:13
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('erp', '0008_inboundbill_erp_audit_id_inboundbill_erp_save_id_and_more'),
+        ('bound', '0004_boundlistmodel_relate_out_bill'),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name='outbatchmodel',
+            name='relate_material',
+            field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='out_batch', to='erp.outmaterialdetail', verbose_name='关联物料'),
+        ),
+    ]

BIN
bound/migrations/__pycache__/0004_boundlistmodel_relate_out_bill.cpython-38.pyc


BIN
bound/migrations/__pycache__/0005_outbatchmodel_relate_material.cpython-38.pyc


+ 3 - 2
bound/models.py

@@ -1,5 +1,5 @@
 from django.db import models
-from erp.models import InboundBill, MaterialDetail
+from erp.models import InboundBill, MaterialDetail, OutboundBill,OutMaterialDetail
 
 
 class BoundListModel(models.Model):
@@ -26,6 +26,7 @@ class BoundListModel(models.Model):
     create_time = models.DateTimeField(auto_now_add=True, verbose_name="Create Time")
     update_time = models.DateTimeField(auto_now=True, blank=True, null=True, verbose_name="Update Time")
     relate_bill = models.ForeignKey(InboundBill, on_delete=models.CASCADE, verbose_name="关联单据", related_name='bound_list',null=True, blank=True)
+    relate_out_bill = models.ForeignKey(OutboundBill, on_delete=models.CASCADE, verbose_name="关联出库单据", related_name='bound_out_list',null=True, blank=True)
 
     class Meta:
         db_table = 'boundlist'
@@ -89,7 +90,6 @@ class OutBatchModel(models.Model):
     )
     OUT_TYPE = (
         (0, '发货出库'),
-
         (4, '其他出库'),
     )
     out_number = models.CharField(max_length=255, verbose_name="出库批次号",blank=False, null=False)
@@ -122,6 +122,7 @@ class OutBatchModel(models.Model):
     is_delete = models.BooleanField(default=False, verbose_name='Delete Label')
     create_time = models.DateTimeField(auto_now_add=True, verbose_name="Create Time")
     update_time = models.DateTimeField(auto_now=True, blank=True, null=True, verbose_name="Update Time")
+    relate_material = models.ForeignKey(OutMaterialDetail, on_delete=models.CASCADE, verbose_name="关联物料", related_name='out_batch',null=True, blank=True)
 
     class Meta:
         db_table = 'outbatch'

+ 39 - 8
data_base/test_erp.py

@@ -16,16 +16,47 @@ def setup_django():
 def main():
     try:
         # 从正确的应用导入模型
-        from erp.views import Access_token
+        from erp.views import AccessToken ,ProductionInboundAuditSync,PurchaseInboundAuditSync,OtherInboundAuditSync,OtherOutboundAuditSync,ProductionOutboundAuditSync,PurchaseInboundSaveSync,SaleOutboundSaveSync
+        from erp.models import InboundBill
         
-        # container_code =["12346", "12345", "1", "2", "7"]
-        container_code =["11111"]
-        
-        token = Access_token.get_token()
-        print('token:',token)
-        print("✅ 方法生成成功!")
+        token = AccessToken.get_current_token()
+        print('【1】token:',token)
+        token = AccessToken.get_current_token()
+        print('【2】token:',token)
+       
 
-        
+        # 所有同步操作统一入口
+        inbound_bill = InboundBill.objects.first()
+        print(f"ERP单号: {inbound_bill.number}")
+        ProductionInboundAuditsync = ProductionInboundAuditSync(inbound_bill)
+        PurchaseInboundAuditsync = PurchaseInboundAuditSync(inbound_bill)
+        OtherInboundAuditsync = OtherInboundAuditSync(inbound_bill)
+        OtherOutboundAuditsync = OtherOutboundAuditSync(inbound_bill)
+        ProductionOutboundAuditsync = ProductionOutboundAuditSync(inbound_bill)
+        PurchaseInboundSavesync = PurchaseInboundSaveSync(inbound_bill)
+        SaleOutboundSavesync = SaleOutboundSaveSync(inbound_bill)
+
+        # 同步生产入库单
+        success = ProductionInboundAuditsync.execute_sync()
+        # 同步采购入库单
+        success = PurchaseInboundAuditsync.execute_sync()
+        # 同步其它入库单
+        success = OtherInboundAuditsync.execute_sync()
+        # 同步其它出库单
+        success = OtherOutboundAuditsync.execute_sync()
+        # 同步生产出库单
+        success = ProductionOutboundAuditsync.execute_sync()
+        # 同步采购入库单保存
+        success = PurchaseInboundSavesync.execute_sync()
+        # 同步销售出库单保存
+        success = SaleOutboundSavesync.execute_sync()
+
+
+        # 通过模型字段直接访问ERP ID
+        print(f"ERP审核单号: {inbound_bill.erp_audit_id}")
+        print(f"ERP采购单号: {inbound_bill.erp_save_id}")
+
+        print("✅ 方法生成成功!")
     except Exception as e:
         print(f"❌ 生成失败:{str(e)}")
         import traceback

BIN
db copy.sqlite3


BIN
db.sqlite3


BIN
erp/__pycache__/models.cpython-38.pyc


BIN
erp/__pycache__/urls.cpython-38.pyc


BIN
erp/__pycache__/views.cpython-38.pyc


+ 33 - 0
erp/migrations/0008_inboundbill_erp_audit_id_inboundbill_erp_save_id_and_more.py

@@ -0,0 +1,33 @@
+# Generated by Django 4.1.2 on 2025-05-06 12:05
+
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('erp', '0007_alter_outmaterialdetail_material_entryids'),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name='inboundbill',
+            name='erp_audit_id',
+            field=models.CharField(max_length=100, null=True, verbose_name='ERP审核ID'),
+        ),
+        migrations.AddField(
+            model_name='inboundbill',
+            name='erp_save_id',
+            field=models.CharField(max_length=100, null=True, verbose_name='ERP保存ID'),
+        ),
+        migrations.AddField(
+            model_name='outboundbill',
+            name='erp_pick_id',
+            field=models.CharField(max_length=100, null=True, verbose_name='ERP领料ID'),
+        ),
+        migrations.AddField(
+            model_name='outboundbill',
+            name='erp_shipment_id',
+            field=models.CharField(max_length=100, null=True, verbose_name='ERP出库ID'),
+        ),
+    ]

BIN
erp/migrations/__pycache__/0008_inboundbill_erp_audit_id_inboundbill_erp_save_id_and_more.cpython-38.pyc


+ 5 - 3
erp/models.py

@@ -16,7 +16,7 @@ class InboundBill(models.Model):
     type = models.IntegerField(choices=BOUND_TYPE, verbose_name='绑定类型')
     date = models.CharField(max_length=10, verbose_name='入库时间')  
     department = models.CharField(max_length=10, verbose_name='部门', null=True)
-    warehouse = models.CharField(max_length=10, verbose_name='仓库', default='W01')  # 修正 defaults 为 default
+    warehouse = models.CharField(max_length=10, verbose_name='仓库', default='W01')  
     creater = models.CharField(max_length=50, verbose_name='创建人', null=True)
     note = models.TextField(blank=True, verbose_name='备注说明', null=True)
     totalCount = models.IntegerField(verbose_name='总条目数')
@@ -24,7 +24,8 @@ class InboundBill(models.Model):
     update_time = models.DateTimeField(auto_now=True, verbose_name='更新时间')
     bound_status = models.IntegerField(default=0, verbose_name='状态')
     is_delete = models.BooleanField(default=False, verbose_name='是否删除')
-
+    erp_audit_id = models.CharField(max_length=100, null=True, verbose_name='ERP审核ID')  
+    erp_save_id = models.CharField(max_length=100, null=True, verbose_name='ERP保存ID')  
     class Meta:
         verbose_name = '生产入库单'
         verbose_name_plural = verbose_name
@@ -56,7 +57,8 @@ class OutboundBill(models.Model):
     update_time = models.DateTimeField(auto_now=True, verbose_name='更新时间')
     bound_status = models.IntegerField(default=0, verbose_name='状态')
     is_delete = models.BooleanField(default=False, verbose_name='是否删除')
-
+    erp_shipment_id = models.CharField(max_length=100, null=True, verbose_name='ERP出库ID')
+    erp_pick_id = models.CharField(max_length=100, null=True, verbose_name='ERP领料ID')
     class Meta:
         verbose_name = '出库单'
         verbose_name_plural = verbose_name

+ 1 - 0
erp/urls.py

@@ -8,6 +8,7 @@ urlpatterns = [
     path('updateBatchInfo', views.BatchUpdate.as_view()),
     path('productInfo', views.ProductInfo.as_view()),
     path('generateinbound', views.GenerateInbound.as_view()),
+    path('generateoutbound', views.GenerateOutbound.as_view()),
 
     path('inboundBills/', views.InboundBills.as_view({"get": "list"}),name="inboundBills"),
     re_path(r'^inboundBills/(?P<pk>\d+)/$', views.InboundBills.as_view({

Datei-Diff unterdrückt, da er zu groß ist
+ 503 - 24
erp/views.py


Datei-Diff unterdrückt, da er zu groß ist
+ 310 - 0
logs/boundBill.log


+ 31 - 0
logs/error.log

@@ -4074,3 +4074,34 @@ Traceback (most recent call last):
   File "d:\language\python38\lib\site-packages\django\db\backends\sqlite3\base.py", line 357, in execute
     return Database.Cursor.execute(self, query, params)
 django.db.utils.OperationalError: no such table: user_profile
+[2025-05-07 00:05:53,205][django.request.log_response():241] [ERROR] Internal Server Error: /bound/outdetail/
+Traceback (most recent call last):
+  File "d:\language\python38\lib\site-packages\asgiref\sync.py", line 472, in thread_handler
+    raise exc_info[1]
+  File "d:\language\python38\lib\site-packages\django\core\handlers\exception.py", line 42, in inner
+    response = await get_response(request)
+  File "d:\language\python38\lib\site-packages\django\core\handlers\base.py", line 253, in _get_response_async
+    response = await wrapped_callback(
+  File "d:\language\python38\lib\site-packages\asgiref\sync.py", line 435, in __call__
+    ret = await asyncio.wait_for(future, timeout=None)
+  File "d:\language\python38\lib\asyncio\tasks.py", line 455, in wait_for
+    return await fut
+  File "d:\language\python38\lib\concurrent\futures\thread.py", line 57, in run
+    result = self.fn(*self.args, **self.kwargs)
+  File "d:\language\python38\lib\site-packages\asgiref\sync.py", line 476, in thread_handler
+    return func(*args, **kwargs)
+  File "d:\language\python38\lib\site-packages\django\views\decorators\csrf.py", line 54, in wrapped_view
+    return view_func(*args, **kwargs)
+  File "d:\language\python38\lib\site-packages\rest_framework\viewsets.py", line 125, in view
+    return self.dispatch(request, *args, **kwargs)
+  File "d:\language\python38\lib\site-packages\rest_framework\views.py", line 509, in dispatch
+    response = self.handle_exception(exc)
+  File "d:\language\python38\lib\site-packages\rest_framework\views.py", line 469, in handle_exception
+    self.raise_uncaught_exception(exc)
+  File "d:\language\python38\lib\site-packages\rest_framework\views.py", line 480, in raise_uncaught_exception
+    raise exc
+  File "d:\language\python38\lib\site-packages\rest_framework\views.py", line 506, in dispatch
+    response = handler(request, *args, **kwargs)
+  File "D:\Document\code\vue\greater_wms\.\bound\views.py", line 380, in create
+    data['bound_batch_number'] = OutBatchModel.objects.get(id=data['bound_batch']).batch_number.id
+KeyError: 'bound_batch'

+ 41 - 0
logs/server.log

@@ -4266,3 +4266,44 @@ Traceback (most recent call last):
     return Database.Cursor.execute(self, query, params)
 django.db.utils.OperationalError: no such table: user_profile
 [2025-05-06 00:25:17,564][django.request.log_response():241] [WARNING] Not Found: /cyclecount/qtyrecorviewset/
+[2025-05-06 16:22:50,962][django.request.log_response():241] [WARNING] Not Found: /cyclecount/qtyrecorviewset/
+[2025-05-06 16:31:32,753][django.request.log_response():241] [WARNING] Not Found: /cyclecount/qtyrecorviewset/
+[2025-05-06 16:54:58,928][django.request.log_response():241] [WARNING] Not Found: /cyclecount/qtyrecorviewset/
+[2025-05-06 17:01:56,891][django.request.log_response():241] [WARNING] Not Found: /cyclecount/qtyrecorviewset/
+[2025-05-06 17:24:57,033][django.request.log_response():241] [WARNING] Not Found: /cyclecount/qtyrecorviewset/
+[2025-05-06 17:28:40,018][django.request.log_response():241] [WARNING] Not Found: /wms/generateoutbound
+[2025-05-06 23:04:13,676][django.request.log_response():241] [WARNING] Bad Request: /wms/createOutboundApply
+[2025-05-06 23:04:39,330][django.request.log_response():241] [WARNING] Bad Request: /wms/createOutboundApply
+[2025-05-06 23:06:21,036][django.request.log_response():241] [WARNING] Bad Request: /wms/createOutboundApply
+[2025-05-07 00:02:29,451][django.request.log_response():241] [WARNING] Not Found: /cyclecount/qtyrecorviewset/
+[2025-05-07 00:05:53,205][django.request.log_response():241] [ERROR] Internal Server Error: /bound/outdetail/
+Traceback (most recent call last):
+  File "d:\language\python38\lib\site-packages\asgiref\sync.py", line 472, in thread_handler
+    raise exc_info[1]
+  File "d:\language\python38\lib\site-packages\django\core\handlers\exception.py", line 42, in inner
+    response = await get_response(request)
+  File "d:\language\python38\lib\site-packages\django\core\handlers\base.py", line 253, in _get_response_async
+    response = await wrapped_callback(
+  File "d:\language\python38\lib\site-packages\asgiref\sync.py", line 435, in __call__
+    ret = await asyncio.wait_for(future, timeout=None)
+  File "d:\language\python38\lib\asyncio\tasks.py", line 455, in wait_for
+    return await fut
+  File "d:\language\python38\lib\concurrent\futures\thread.py", line 57, in run
+    result = self.fn(*self.args, **self.kwargs)
+  File "d:\language\python38\lib\site-packages\asgiref\sync.py", line 476, in thread_handler
+    return func(*args, **kwargs)
+  File "d:\language\python38\lib\site-packages\django\views\decorators\csrf.py", line 54, in wrapped_view
+    return view_func(*args, **kwargs)
+  File "d:\language\python38\lib\site-packages\rest_framework\viewsets.py", line 125, in view
+    return self.dispatch(request, *args, **kwargs)
+  File "d:\language\python38\lib\site-packages\rest_framework\views.py", line 509, in dispatch
+    response = self.handle_exception(exc)
+  File "d:\language\python38\lib\site-packages\rest_framework\views.py", line 469, in handle_exception
+    self.raise_uncaught_exception(exc)
+  File "d:\language\python38\lib\site-packages\rest_framework\views.py", line 480, in raise_uncaught_exception
+    raise exc
+  File "d:\language\python38\lib\site-packages\rest_framework\views.py", line 506, in dispatch
+    response = handler(request, *args, **kwargs)
+  File "D:\Document\code\vue\greater_wms\.\bound\views.py", line 380, in create
+    data['bound_batch_number'] = OutBatchModel.objects.get(id=data['bound_batch']).batch_number.id
+KeyError: 'bound_batch'

+ 1 - 1
templates/src/boot/axios_request.js

@@ -13,7 +13,7 @@ function getBaseUrl (name) {
   return xhr.status === okStatus ? xhr.responseText : null
 }
 // 注意以后修改成服务器的地址
-const baseurl = "http://192.168.31.27:8008"
+const baseurl = "http://192.168.30.72:8008"
 
 const axiosInstance = axios.create({
   baseURL: baseurl,

+ 43 - 4
templates/src/layouts/MainLayout.vue

@@ -103,6 +103,14 @@
             >
               {{ ERPTasks > 99 ? '99+' : ERPTasks }}
             </q-badge>
+            <q-badge 
+              v-if="ERPOutTasks > 0"
+              color="blue-5"
+              class="outtask-badge"
+             
+            >
+              {{ ERPOutTasks > 99 ? '99+' : ERPOutTasks }}
+            </q-badge>
           </q-item>
 
           <q-item clickable :to="{ name: 'inboundAndOutbound' }" @click="linkChange('outbounddashboard')" v-ripple exact
@@ -381,6 +389,7 @@ export default {
       needLogin: '',
       activeTab: '',
       ERPTasks:0,
+      ERPOutTasks:0,
       pendingTasks: 0,
       pollInterval: null,
       timer : null,
@@ -567,8 +576,6 @@ export default {
             _this.warehouseOptions.forEach((item, index) => {
               if (item.openid === LocalStorage.getItem('openid')) {
                 _this.warehouseOptions_openid.push(item)
-
-
               }
 
             })
@@ -628,7 +635,11 @@ export default {
     handleTimer() {
       getauth('/wms/inboundBills/?bound_status=0').then((res) => {
         this.ERPTasks = res.count
-        this.pendingTasks = res.pending_count
+ 
+      })
+      getauth('/wms/outboundBills/?bound_status=0').then((res) => {
+        this.ERPOutTasks = res.count
+
       })}
   },
   created() {
@@ -668,8 +679,9 @@ export default {
 
     _this.timer = setInterval(() => {
       _this.handleTimer()
-    }, 10000)
+    }, 100000)
   },
+  // 修改时间 :10000
   updated() {
   },
   beforeDestroy() {
@@ -734,4 +746,31 @@ export default {
   color: white !important;
   background: linear-gradient(145deg, #ff5252, #ff1744);
 }
+
+.outtask-badge {
+  /* 定位 */
+  position: absolute;
+  bottom: -9px;
+  right: 12px;
+  transform: translate(50%, -50%);
+  
+  /* 样式 */
+  min-width: 20px;
+  height: 20px;
+  font-size: 0.75rem;
+  font-weight: 700;
+  border-radius: 2px;
+  padding: 2px 6px;
+  box-shadow: 0 2px 4px rgba(0,0,0,0.15);
+  
+  /* 动画 */
+  transition: all 0.3s ease;
+  animation: pulse 2s infinite;
+}
+
+/* 高优先级样式 */
+.outtask-badge.high-priority {
+  color: white !important;
+  background: linear-gradient(145deg, #982323, #ff1744);
+}
 </style>

+ 34 - 23
templates/src/pages/erp/erpasn.vue

@@ -71,7 +71,7 @@
             </template>
             <template v-else-if="props.row.id !== editid">
               <q-td key="type" :props="props">
-                {{ bound_code_type_map[props.row.type] || props.row.type }}</q-td>
+                {{ formatBSType(props.row.type) || props.row.type }}</q-td>
              
             </template>
 
@@ -114,12 +114,12 @@
             <template v-if="props.row.id === editid">
          
                 <q-td key="bound_status" :props="props">
-                  {{ bound_status_map[ props.row.bound_status] || props.row.bound_status }}</q-td>
+                  {{ formatStatusType(props.row.bound_status)  || props.row.bound_status }}</q-td>
             
             </template>
             <template v-else-if="props.row.id !== editid">
               <q-td key="bound_status" :props="props">
-                {{ bound_status_map[ props.row.bound_status] || props.row.bound_status }}</q-td>
+                {{ formatStatusType(props.row.bound_status)  || props.row.bound_status }}</q-td>
                 
          
             </template>
@@ -342,7 +342,7 @@ export default {
       bound_department_list:[],
       bound_department_map:[],
       bound_status_list:[],
-      bound_status_map:[],
+    
       product_list:[],
       product_map:[],
 
@@ -402,7 +402,36 @@ export default {
     }
   },
   methods: {
-  
+    formatBSType(type){
+      switch (type) {
+          case 1:
+            return '生产入库申请'
+          case 2:
+            return '采购入库申请'
+          case 3:
+            return '其他入库'
+          case 4:
+            return '调拨入库'
+     
+          default:
+            return '未知'
+        }
+    },
+    formatStatusType(type){
+      switch (type) {
+          case 0:
+            return '待审核'
+          case 1:
+            return '确认无误'
+          case 3:
+            return '其他入库'
+          case 4:
+            return '调拨入库'
+     
+          default:
+            return '未知'
+        }
+    },
     getList(params = {}) {
       var _this = this
       _this.loading = true
@@ -779,25 +808,7 @@ export default {
         })
       })
 
-      getauth('warehouse/status/', {})
-      .then(res => {
-        _this.bound_status_list = res.results.map(item => ({
-          label: item.bound_status_name,
-          value: item.bound_status_code
-        }))
-        _this.bound_status_map = res.results.reduce((acc, item) => {
-          acc[item.bound_status_code] = item.bound_status_name;
-          return acc;
-        }, {});
 
-      })
-      .catch(err => {
-        _this.$q.notify({
-          message: err.detail,
-          icon: 'close',
-          color: 'negative'
-        })
-      })
   },
 
   mounted() {

+ 33 - 25
templates/src/pages/erp/erpdn.vue

@@ -71,7 +71,7 @@
             </template>
             <template v-else-if="props.row.id !== editid">
               <q-td key="type" :props="props">
-                {{ bound_code_type_map[props.row.type] || props.row.type }}</q-td>
+                {{ formatBSType(props.row.type) || props.row.type }}</q-td>
              
             </template>
 
@@ -114,12 +114,12 @@
             <template v-if="props.row.id === editid">
          
                 <q-td key="bound_status" :props="props">
-                  {{ bound_status_map[ props.row.bound_status] || props.row.bound_status }}</q-td>
+                  {{ formatStatusType( props.row.bound_status) || props.row.bound_status }}</q-td>
             
             </template>
             <template v-else-if="props.row.id !== editid">
               <q-td key="bound_status" :props="props">
-                {{ bound_status_map[ props.row.bound_status] || props.row.bound_status }}</q-td>
+                {{ formatStatusType( props.row.bound_status)  || props.row.bound_status }}</q-td>
                 
          
             </template>
@@ -342,7 +342,7 @@ export default {
       bound_department_list:[],
       bound_department_map:[],
       bound_status_list:[],
-      bound_status_map:[],
+   
       product_list:[],
       product_map:[],
 
@@ -402,7 +402,33 @@ export default {
     }
   },
   methods: {
-  
+    formatBSType(type){
+      switch (type) {
+          case 1:
+            return '销售出库申请'
+          case 2:
+            return '生产领料申请'
+          case 3:
+            return '其他出库申请'
+          default:
+            return '未知'
+        }
+    },
+    formatStatusType(type){
+      switch (type) {
+          case 0:
+            return '待审核'
+          case 1:
+            return '确认无误'
+          case 3:
+            return '其他入库'
+          case 4:
+            return '调拨入库'
+     
+          default:
+            return '未知'
+        }
+    },
     getList(params = {}) {
       var _this = this
       _this.loading = true
@@ -572,12 +598,12 @@ export default {
         billId: _this.choose_bill_id
        
       }
-      postauth("wms/generateinbound" , params)
+      postauth("wms/generateoutbound" , params)
         .then(res => {
 
           if (res.code == 200) {
             _this.$q.notify({
-              message: "入库单生成成功,请到入库管理中查看",
+              message: "出库库单生成成功,请到出库管理中查看",
               icon: 'check',
               color: 'green'
             })
@@ -779,25 +805,7 @@ export default {
         })
       })
 
-      getauth('warehouse/status/', {})
-      .then(res => {
-        _this.bound_status_list = res.results.map(item => ({
-          label: item.bound_status_name,
-          value: item.bound_status_code
-        }))
-        _this.bound_status_map = res.results.reduce((acc, item) => {
-          acc[item.bound_status_code] = item.bound_status_name;
-          return acc;
-        }, {});
 
-      })
-      .catch(err => {
-        _this.$q.notify({
-          message: err.detail,
-          icon: 'close',
-          color: 'negative'
-        })
-      })
   },
 
   mounted() {