diff --git a/hw-ui/src/views/board/fifthFloor/index.vue b/hw-ui/src/views/board/fifthFloor/index.vue
index 34a26d17..2704068c 100644
--- a/hw-ui/src/views/board/fifthFloor/index.vue
+++ b/hw-ui/src/views/board/fifthFloor/index.vue
@@ -29,7 +29,7 @@
             </el-button>
             <el-button type="warning" v-if="(!$route.query || $route.query.id!=='2')" :disabled="form.planDetailStatus === '已完成' || !form.planDetailCode" @click="handleMaterialConfirmForm()">扫描
             </el-button>
-            <el-button type="danger" v-if="(!$route.query || $route.query.id!=='2')" :disabled="!form.planDetailCode">退料
+            <el-button type="danger" @click="returnMaterial()" v-if="(!$route.query || $route.query.id!=='2')" :disabled="!form.planDetailCode">退料
             </el-button>
             <el-button type="primary" v-if="($route.query && $route.query.id) === '2'" :disabled="form.planDetailStatus === '已完成' || !form.planDetailCode" @click="getMaterials('1')">
               领柜体
@@ -396,6 +396,44 @@
         <el-button @click="cancelMaterialConfirm">取 消</el-button>
       </div>
     </el-dialog>
+    <el-dialog :visible.sync="returnModelVisible" title="退料" width="25%">
+      <el-form ref="returnModelForm" :model="returnModelForm" label-width="80px" :rules="returnModelFormRules">
+        <el-form-item label="计划编号" >
+          <el-input v-model="returnModelForm.planCode" autocomplete="off" disabled></el-input>
+        </el-form-item>
+        <el-form-item label="明细编号" >
+          <el-input v-model="returnModelForm.planDetailCode" autocomplete="off" disabled></el-input>
+        </el-form-item>
+        <el-form-item label="成品" >
+          <el-input v-model="returnModelForm.materialName" autocomplete="off" disabled></el-input>
+        </el-form-item>
+        <el-form-item label="物料条码" >
+          <el-input placeholder="请输入内容" v-model="returnModelForm.materialBarcode" class="input-with-select" @blur="setReturnModelForm">
+            <el-button slot="append" icon="el-icon-search"></el-button>
+          </el-input>
+        </el-form-item>
+        <el-form-item label="仓库" >
+          <el-select v-model="returnModelForm.warehouseId" placeholder="请选择仓库" :disabled="!returnModelForm.materialBarcode">
+            <el-option :label="i.label" :value="i.value" v-for="i in WarehousesList"></el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="数量" >
+          <el-input-number v-model="returnModelForm.planAmount" controls-position="right"  :min="1" ></el-input-number>
+        </el-form-item>
+        <el-form-item label="退库类型" prop="taskType">
+          <el-select v-model="returnModelForm.taskType" placeholder="请选择退库类型">
+            <el-option :label="i.label" :value="i.value" v-for="i in dict.type.wms_raw_return_task_type"></el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item label="申请原因" >
+          <el-input type="textarea" v-model="returnModelForm.applyReason" autocomplete="off"></el-input>
+        </el-form-item>
+        <el-form-item>
+          <el-button @click="returnModelVisible = false">取 消</el-button>
+          <el-button type="primary" @click="returnModelConfirm">退 库</el-button>
+        </el-form-item>
+      </el-form>
+    </el-dialog>
 
     <!--    <el-dialog :visible.sync="assignModel" title="工位选择" width="80%">-->
 
@@ -447,7 +485,7 @@ import {
   getWarehouses,
   bindBarcode,
   applyRawBack,
-  assignTask, scanMaterial2Confirm
+  assignTask, scanMaterial2Confirm, applyRawReturn
 } from "@/api/board";
 
 const setState = (e) => {
@@ -468,8 +506,12 @@ export default {
     Chart,
     PrintPage
   },
+  dicts: ['wms_raw_return_task_type'],
   data() {
     return {
+      returnModelVisible: false,
+      returnModelForm:{},
+      WarehousesList:[],
       input1:null,
       PrintData: {},
       printModel: false,
@@ -572,7 +614,12 @@ export default {
         warehouseId: [
           {required: true, message: "仓库不能为空", trigger: "change"}
         ]
-      }
+      },
+      returnModelFormRules: {
+        taskType: [
+          { required: true, message: '请选择退库类型', trigger: 'change' }
+        ],
+      },
     }
   },
   async mounted() {
@@ -1425,6 +1472,45 @@ export default {
     cancelMaterialConfirm(){
       this.materialConfirmVisible = false;
       this.resetMaterialConfirm();
+    },
+    returnMaterial(e) {
+      this.returnModelVisible = true
+      this.returnModelForm = this.form
+    },
+    setReturnModelForm(){
+      getWarehouses({
+        warehouseFloor:5,
+        materialBarcode:this.returnModelForm.materialBarcode
+      }).then(e=>{
+        this.WarehousesList = e.data.map(v=>{
+          return {
+            label:v.warehouseName,
+            value:v.warehouseId,
+          }
+        })
+      })
+    },
+    returnModelConfirm(){
+      this.$refs.returnModelForm.validate((valid) => {
+        if (valid) {
+          let data = {}
+          let keys = ['warehouseId','planCode','planDetailCode','productId','materialBarcode','planAmount','taskType','applyReason']
+          keys.forEach(v=>{
+            data[v] = this.returnModelForm[v]
+          })
+          applyRawReturn(data).then(v=>{
+            if(v.code === 200){
+              this.$message({
+                message: '退库成功',
+                type: 'success'
+              });
+            }
+            this.returnModelVisible = false
+          })
+        } else {
+          return false;
+        }
+      });
     }
 
   }