chris 3 éve
szülő
commit
df55e6ab75

+ 16 - 6
src/views/modules/warehouse/template-add.vue

@@ -1,21 +1,22 @@
 <template>
   <div>
     <el-dialog
-      title="新增模板"
+      :title="!id ? '新增': display ? '详情' : '修改'"
       width="70%"
       :close-on-click-modal="false"
       :visible.sync="visible">
       <el-form :model="dataForm" :rules="dataRule" ref="dataForm" label-width="auto">
         <el-row class="my-row">
-          <el-form-item label="名称">
+          <el-form-item label="名称" prop="templateName">
             <el-input v-model="dataForm.templateName" :disabled="display"  placeholder="请填写模板名称"></el-input>
           </el-form-item>
         </el-row>
         <el-row class="my-row">
-          <el-form-item label="备注">
-              <el-input v-model="dataForm.notes"  :disabled="display" placeholder="备注"></el-input>
+          <el-form-item label="备注" prop="notes">
+              <el-input type="textarea" v-model="dataForm.notes"  :disabled="display"></el-input>
             </el-form-item>
         </el-row>
+        <div class="title"><span style="color: red">*</span> 材料清单</div>
         <el-row>
           <el-table
             :data="dataList"
@@ -44,6 +45,9 @@
               header-align="center"
               align="center"
               label="数量">
+              <template slot-scope="scope">
+                <el-input-number v-model="scope.row.count" :disabled="display" :min="1" style="width: 140px;"/>
+              </template>
             </el-table-column>
             <el-table-column
               prop="unitName"
@@ -79,7 +83,7 @@
         <el-button type="primary" @click="dataFormSubmit()">确定</el-button>
       </span>
     </el-dialog>
-    <template-chose v-if="inboundVisible" ref="inbound" @addItem="addMaterial"/>
+    <template-chose v-if="inboundVisible" ref="inbound" @addItems="addItems"/>
   </div>
 </template>
 
@@ -105,6 +109,7 @@
           applicant: ''
         },
         dataRule: {
+          templateName: [{ required: true, message: '名称不能为空', trigger: 'blur' }]
         }
       }
     },
@@ -133,7 +138,6 @@
               whrTemplateMaterialList: this.dataList,
               orgId: this.$store.state.user.orgId
             }
-            // console.log('postData = ' + JSON.stringify(postData))
             addTemplate(postData).then(({data}) => {
               if (data && data.code === '200') {
                 this.$message({
@@ -174,6 +178,12 @@
           })
         }
       },
+      addItems (items) {
+        this.dataList = []
+        items.forEach((item) => {
+          this.addMaterial(item)
+        })
+      },
       // 删除物品
       removeItem (id) {
         let index = this.dataList.findIndex((item) => { return item.materialId === id })

+ 28 - 17
src/views/modules/warehouse/template-chose.vue

@@ -11,7 +11,8 @@
         </el-form-item>
         <el-form-item>
           <el-button @click="getDataList()">查询</el-button>
-          <el-button @click="visible = false" type="primary">返回</el-button>
+          <el-button type="primary" @click="addItems()">添加</el-button>
+<!--          <el-button @click="visible = false" type="primary">返回</el-button>-->
         </el-form-item>
       </el-form>
       <el-table
@@ -20,6 +21,9 @@
         v-loading="dataListLoading"
         @selection-change="selectionChangeHandle"
         style="width: 100%;">
+        <el-table-column
+          type="selection">
+        </el-table-column>
         <el-table-column
           label="序号"
           type="index"
@@ -30,12 +34,15 @@
           prop="materialCode"
           header-align="center"
           align="center"
+          min-width="140"
           label="编码">
         </el-table-column>
         <el-table-column
           prop="materialName"
           header-align="center"
           align="center"
+          min-width="140"
+          :show-tooltip-when-overflow="true"
           label="名称">
         </el-table-column>
         <el-table-column
@@ -44,12 +51,6 @@
           align="center"
           label="类别">
         </el-table-column>
-        <el-table-column
-          prop="delFlag"
-          header-align="center"
-          align="center"
-          label="状态">
-        </el-table-column>
         <el-table-column
           prop="specifications"
           header-align="center"
@@ -66,18 +67,20 @@
           prop="notes"
           header-align="center"
           align="center"
+          width="120"
+          :show-tooltip-when-overflow="true"
           label="备注">
         </el-table-column>
-        <el-table-column
-          fixed="right"
-          header-align="center"
-          align="center"
-          width="50"
-          label="操作">
-          <template slot-scope="scope">
-            <el-button type="text" size="small" @click="exportItem(scope.row)">添加</el-button>
-          </template>
-        </el-table-column>
+<!--        <el-table-column-->
+<!--          fixed="right"-->
+<!--          header-align="center"-->
+<!--          align="center"-->
+<!--          width="50"-->
+<!--          label="操作">-->
+<!--          <template slot-scope="scope">-->
+<!--            <el-button type="text" size="small" @click="exportItem(scope.row)">添加</el-button>-->
+<!--          </template>-->
+<!--        </el-table-column>-->
       </el-table>
       <el-pagination
         @size-change="sizeChangeHandle"
@@ -153,6 +156,14 @@
       // 入库申请
       exportItem (item) {
         this.$emit('addItem', item)
+      },
+      addItems () {
+        if (this.dataListSelections.length === 0) {
+          this.$message.warning('请选择材料')
+          return
+        }
+        this.visible = false
+        this.$emit('addItems', this.dataListSelections)
       }
     }
   }

+ 4 - 1
src/views/modules/warehouse/template.vue

@@ -43,7 +43,7 @@
         prop="templateCode"
         header-align="center"
         align="center"
-        min-width="120"
+        min-width="160"
         label="编码">
       </el-table-column>
       <el-table-column
@@ -63,6 +63,7 @@
         prop="createTime"
         header-align="center"
         align="center"
+        min-width="140"
         label="创建时间">
       </el-table-column>
       <el-table-column
@@ -82,6 +83,8 @@
         prop="notes"
         header-align="center"
         align="center"
+        width="140"
+        :show-tooltip-when-overflow="true"
         label="备注">
       </el-table-column>
       <el-table-column