Explorar o código

详情页改造

chris %!s(int64=3) %!d(string=hai) anos
pai
achega
5131c146ba

+ 8 - 7
src/views/modules/notice/notice-detail.vue

@@ -84,14 +84,15 @@
               dealStepLogs(data.data.workFlowBusinessExt.processLogList, this.logList)
             }
             // 附件显示
-            this.fileList = []
-            data.data.attaches.forEach((item) => {
-              this.fileList.push({
-                name: item.fileName,
-                url: item.url,
-                id: item.url
+            if (data.data.attaches) {
+              data.data.attaches.forEach((item) => {
+                this.fileList.push({
+                  name: item.fileName,
+                  url: item.url,
+                  id: item.url
+                })
               })
-            })
+            }
           }
         })
       }

+ 69 - 72
src/views/modules/warehouse/stock-details.vue

@@ -1,73 +1,65 @@
 <template>
     <div>
       <el-dialog
-        :title="!dataForm.materialId ? '详情' : '详情'"
+        title="查看"
         :close-on-click-modal="false"
         width="70%"
         :visible.sync="visible">
-        <DescriptionList title="" col="6" :content="dataForm">
-          <Description term="编码">{{dataForm.materialCode}}</Description>
-          <Description term="名称">{{dataForm.materialName}}</Description>
-          <Description term="类别">{{dataForm.categoryName}}</Description>
-        </DescriptionList>
-        <DescriptionList title="" col="6" :content="dataForm">
-          <Description term="规格">{{dataForm.specifications}}</Description>
-          <Description term="单位">{{dataForm.unitName}}</Description>
-          <Description term="数量">{{dataForm.cnt}}</Description>
-        </DescriptionList>
-<!--        <DescriptionList title="" col="6" :content="dataForm">-->
-<!--          <Description term="单价">{{dataForm.price}}</Description>-->
-<!--          <Description term="金额">{{dataForm.amount}}</Description>-->
-<!--          <Description term="批次号">{{dataForm.batchNumber}}</Description>-->
-<!--        </DescriptionList>-->
-        <DescriptionList title="" col="6" :content="dataForm">
-          <Description term="来源"></Description>
-          <Description term="存放仓库">{{dataForm.warehouseName}}</Description>
-          <Description term="存放货架">{{dataForm.shelveName}}</Description>
-        </DescriptionList>
-        <el-row>
-          <el-table
-            :data="dataList"
-            border
-            style="width: 100%;">
-            <el-table-column
-              label="序号"
-              type="index"
-              width="50"
-              align="center">
-            </el-table-column>
-            <el-table-column
-              prop="batchNumber"
-              header-align="center"
-              align="center"
-              label="批次号">
-            </el-table-column>
-            <el-table-column
-              prop="cnt"
-              header-align="center"
-              align="center"
-              label="数量">
-            </el-table-column>
-            <el-table-column
-              prop="price"
-              header-align="center"
-              align="center"
-              label="单价">
-            </el-table-column>
-            <el-table-column
-              prop="amount"
-              header-align="center"
-              align="center"
-              label="金额">
-              <template slot-scope="scope">
-                <span>{{ (scope.row.cnt*scope.row.price).toFixed(1) }}</span>
-              </template>
-            </el-table-column>
-          </el-table>
-        </el-row>
-        <DescriptionList title="" col="6" :content="dataForm" style="margin-top: 10px">
-          <Description term="备注说明">{{dataForm.notes}}</Description>
-        </DescriptionList>
+        <div style="margin-left: 20px;margin-right: 20px">
+          <e-desc title="基本信息" column="3">
+            <e-desc-item label="编码">{{dataForm.materialCode}}</e-desc-item>
+            <e-desc-item label="名称">{{dataForm.materialName}}</e-desc-item>
+            <e-desc-item label="类别">{{dataForm.categoryName}}</e-desc-item>
+            <e-desc-item label="规格">{{dataForm.specifications}}</e-desc-item>
+            <e-desc-item label="单位">{{dataForm.unitName}}</e-desc-item>
+            <e-desc-item label="数量">{{dataForm.cnt}}</e-desc-item>
+            <e-desc-item label="来源"></e-desc-item>
+            <e-desc-item label="存放仓库">{{dataForm.warehouseName}}</e-desc-item>
+            <e-desc-item label="存放货架">{{dataForm.shelveName}}</e-desc-item>
+            <e-desc-item label="备注说明" span="3">{{dataForm.notes}}</e-desc-item>
+          </e-desc>
+          <e-desc title="材料列表" column="3">
+            <el-table
+              :data="dataList"
+              border
+              style="width: 100%;">
+              <el-table-column
+                label="序号"
+                type="index"
+                width="50"
+                align="center">
+              </el-table-column>
+              <el-table-column
+                prop="batchNumber"
+                header-align="center"
+                align="center"
+                label="批次号">
+              </el-table-column>
+              <el-table-column
+                prop="cnt"
+                header-align="center"
+                align="center"
+                label="数量">
+              </el-table-column>
+              <el-table-column
+                prop="price"
+                header-align="center"
+                align="center"
+                label="单价">
+              </el-table-column>
+              <el-table-column
+                prop="amount"
+                header-align="center"
+                align="center"
+                label="金额">
+                <template slot-scope="scope">
+                  <span>{{ (scope.row.cnt*scope.row.price).toFixed(1) }}</span>
+                </template>
+              </el-table-column>
+            </el-table>
+          </e-desc>
+        </div>
+
         <span slot="footer" class="dialog-footer">
           <el-button @click="visible = false">取消</el-button>
         </span>
@@ -76,30 +68,35 @@
 </template>
 
 <script>
-  import DescriptionList from '../common/Description'
+  import EDesc from '../common/e-desc'
+  import EDescItem from '../common/e-desc-item'
   export default {
     name: 'stock-details',
-    components: {DescriptionList},
+    components: {
+      EDesc, EDescItem
+    },
     data () {
       return {
         visible: false,
+        id: 0,
         dataForm: {
         },
         dataList: []
       }
     },
     methods: {
-      init (id) {
-        this.dataForm.materialId = id || 0
-        if (this.dataForm.materialId) {
+      async init (id) {
+        this.visible = true
+        this.id = id || 0
+        this.dataForm = {}
+        this.dataList = []
+        if (this.id) {
           this.$http({
-            url: this.$http.adornUrl(`/biz-service/stock-mg-ctl/info/${this.dataForm.materialId}`),
+            url: this.$http.adornUrl(`/biz-service/stock-mg-ctl/info/${this.id}`),
             method: 'get',
             params: this.$http.adornParams()
           }).then(({data}) => {
             if (data.code === '200') {
-              this.dataForm = {}
-              this.visible = true
               this.dataForm = data.data
               this.dataList = data.data.whBatchInfoList
             } else {

+ 193 - 0
src/views/modules/warehouse/template-delivery-add.vue

@@ -0,0 +1,193 @@
+<template>
+  <el-dialog
+    :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-col :span="8">
+          <el-form-item label="模板出库编码" prop="recordCode">
+            <el-input v-model="dataForm.recordCode" :disabled="true" placeholder="模板出库编码"></el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="8" style="padding-left: 20px">
+          <el-form-item label="产品编号" prop="recordNumber">
+            <el-input v-model="dataForm.recordNumber" :disabled="true" placeholder="产品编号"></el-input>
+          </el-form-item>
+        </el-col>
+        <el-col :span="8" style="padding-left: 20px">
+          <el-form-item label="模板名称" prop="templateName">
+            <el-input v-model="dataForm.templateName" :disabled="true" placeholder="模板名称"></el-input>
+          </el-form-item>
+        </el-col>
+      </el-row>
+      <el-row class="my-row">
+        <el-form-item label="备注说明" prop="notes">
+          <el-input v-model="dataForm.notes" :disabled="true" placeholder="备注说明"></el-input>
+        </el-form-item>
+      </el-row>
+      <el-row>
+        <div class="title"><span style="color: red">*</span> 模板对应的零件</div>
+        <el-table
+          :data="dataList"
+          border
+          style="width: 100%;">
+          <el-table-column
+            label="序号"
+            type="index"
+            width="50"
+            align="center">
+          </el-table-column>
+          <el-table-column
+            prop="materialName"
+            header-align="center"
+            align="center"
+            label="物品名称">
+          </el-table-column>
+          <el-table-column
+            prop="specifications"
+            header-align="center"
+            align="center"
+            label="规格">
+          </el-table-column>
+          <el-table-column
+            prop="planCnt"
+            header-align="center"
+            align="center"
+            label="计划数量">
+          </el-table-column>
+          <el-table-column
+            prop="unitName"
+            header-align="center"
+            align="center"
+            label="单位">
+          </el-table-column>
+          <el-table-column
+            prop="cnt"
+            header-align="center"
+            align="center"
+            label="仓库库存数量">
+          </el-table-column>
+          <el-table-column
+            v-if="display"
+            prop="deliveredCnt"
+            header-align="center"
+            align="center"
+            label="已出库">
+          </el-table-column>
+          <el-table-column
+            v-if="!display"
+            :key="display"
+            prop="planCntUser"
+            header-align="center"
+            align="center"
+            label="请选择数量">
+            <template slot-scope="scope">
+              <el-input-number v-model="scope.row.planCntUser" :min="1" style="width: 140px;"/>
+            </template>
+          </el-table-column>
+          <el-table-column
+            v-if="!display"
+            prop="undeliveredCnt"
+            header-align="center"
+            align="center"
+            label="未出库数量">
+          </el-table-column>
+          <el-table-column
+            v-if="display"
+            prop="batchName"
+            header-align="center"
+            align="center"
+            label="选择零件的批次和数量">
+          </el-table-column>
+          <el-table-column
+            prop="notes"
+            header-align="center"
+            align="center"
+            label="备注">
+          </el-table-column>
+        </el-table>
+      </el-row>
+    </el-form>
+    <span slot="footer" class="dialog-footer">
+      <el-button v-if="!display" @click="visible = false">取消</el-button>
+      <el-button v-if="!display" type="primary" @click="dataFormSubmit()">确定</el-button>
+    </span>
+  </el-dialog>
+</template>
+
+<script>
+  import {getDeliveryDetail, templateOut} from '@/api/warehouse'
+  export default {
+    name: 'template-delivery-add',
+    data () {
+      return {
+        visible: false,
+        display: false,
+        dataList: [],
+        id: 0,
+        dataForm: { },
+        dataRule: {
+        }
+      }
+    },
+    methods: {
+      async init (id, display) {
+        this.visible = true
+        this.id = id || 0
+        this.display = display
+        this.dataForm = {}
+        this.dataList = []
+        if (!id) return
+        // 获取详情
+        await getDeliveryDetail(this.id).then(({data}) => {
+          if (data && data.code === '200') {
+            this.dataForm = data.data
+            if (data.data.whTemplateItemPlanList) {
+              data.data.whTemplateItemPlanList.forEach((item) => {
+                this.dataList.push(item)
+              })
+            }
+          }
+        })
+      },
+      // 表单提交
+      dataFormSubmit () {
+        this.$refs['dataForm'].validate((valid) => {
+          if (valid) {
+            let params = {
+              'recordId': this.id,
+              'whTemplateItemPlanList': this.dataList
+            }
+            templateOut(params).then(({data}) => {
+              if (data && data.code === '200') {
+                this.$message({
+                  message: '操作成功',
+                  type: 'success',
+                  duration: 1500,
+                  onClose: () => {
+                    this.visible = false
+                    this.$emit('refreshDataList')
+                  }
+                })
+              } else {
+                this.$message.error(data.msg)
+              }
+            })
+          }
+        })
+      },
+      validateField (type) {
+        this.$refs.dataForm.validateField(type)
+      }
+    }
+  }
+</script>
+
+<style scoped>
+  .my-line{
+    border-bottom: 1px solid #c0c4cc;
+    margin-bottom: 10px;
+  }
+</style>

+ 40 - 106
src/views/modules/warehouse/template-delivery-detail.vue

@@ -1,36 +1,20 @@
 <template>
   <el-dialog
-    :title="!id ? '新增': display ? '查看' : '出库'"
+    title="查看"
     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-col :span="8">
-          <el-form-item label="模板出库编码" prop="recordCode">
-            <el-input v-model="dataForm.recordCode" :disabled="true" placeholder="模板出库编码"></el-input>
-          </el-form-item>
-        </el-col>
-        <el-col :span="8" style="padding-left: 20px">
-          <el-form-item label="产品编号" prop="recordNumber">
-            <el-input v-model="dataForm.recordNumber" :disabled="true" placeholder="产品编号"></el-input>
-          </el-form-item>
-        </el-col>
-        <el-col :span="8" style="padding-left: 20px">
-          <el-form-item label="模板名称" prop="templateName">
-            <el-input v-model="dataForm.templateName" :disabled="true" placeholder="模板名称"></el-input>
-          </el-form-item>
-        </el-col>
-      </el-row>
-      <el-row class="my-row">
-        <el-form-item label="备注说明" prop="notes">
-            <el-input v-model="dataForm.notes" :disabled="true" placeholder="备注说明"></el-input>
-          </el-form-item>
-      </el-row>
-      <el-row>
-        <div class="title"><span style="color: red">*</span> 模板对应的零件</div>
+    <div style="margin-left: 20px;margin-right: 20px">
+      <e-desc title="基本信息" column="3">
+        <e-desc-item label="模板出库编码">{{dataForm.recordCode}}</e-desc-item>
+        <e-desc-item label="产品编号">{{dataForm.recordNumber}}</e-desc-item>
+        <e-desc-item label="模板名称">{{dataForm.templateName}}</e-desc-item>
+
+        <e-desc-item label="备注说明" span="3">{{dataForm.notes}}</e-desc-item>
+      </e-desc>
+      <e-desc title="模板对应的零件">
         <el-table
-          :data="dataList"
+          :data="materialList"
           border
           style="width: 100%;">
           <el-table-column
@@ -52,10 +36,10 @@
             label="规格">
           </el-table-column>
           <el-table-column
-            prop="planCnt"
+            prop="cnt"
             header-align="center"
             align="center"
-            label="计划数量">
+            label="数量">
           </el-table-column>
           <el-table-column
             prop="unitName"
@@ -64,122 +48,69 @@
             label="单位">
           </el-table-column>
           <el-table-column
-            prop="cnt"
-            header-align="center"
-            align="center"
-            label="仓库库存数量">
-          </el-table-column>
-          <el-table-column
-            v-if="display"
             prop="deliveredCnt"
             header-align="center"
             align="center"
             label="已出库">
           </el-table-column>
           <el-table-column
-            v-if="!display"
-            :key="display"
-            prop="planCntUser"
-            header-align="center"
-            align="center"
-            label="请选择数量">
-            <template slot-scope="scope">
-              <el-input-number v-model="scope.row.planCntUser" :min="1" style="width: 140px;"/>
-            </template>
-          </el-table-column>
-          <el-table-column
-            v-if="!display"
-            prop="undeliveredCnt"
-            header-align="center"
-            align="center"
-            label="未出库数量">
-          </el-table-column>
-          <el-table-column
-            v-if="display"
             prop="batchName"
             header-align="center"
             align="center"
+            width="180"
+            :show-tooltip-when-overflow="true"
             label="选择零件的批次和数量">
           </el-table-column>
           <el-table-column
             prop="notes"
             header-align="center"
             align="center"
+            width="120"
+            :show-tooltip-when-overflow="true"
             label="备注">
           </el-table-column>
         </el-table>
-      </el-row>
-    </el-form>
+      </e-desc>
+    </div>
     <span slot="footer" class="dialog-footer">
-      <el-button v-if="!display" @click="visible = false">取消</el-button>
-      <el-button v-if="!display" type="primary" @click="dataFormSubmit()">确定</el-button>
+      <el-button @click="visible = false">返回</el-button>
     </span>
   </el-dialog>
 </template>
 
 <script>
-  import {getDeliveryDetail, templateOut} from '@/api/warehouse'
+  import EDesc from '../common/e-desc'
+  import EDescItem from '../common/e-desc-item'
+  import { getDeliveryDetail } from '@/api/warehouse'
   export default {
-    name: 'template-delivery-detail',
+    name: 'template-deliver-detail',
+    components: {
+      EDesc, EDescItem
+    },
     data () {
       return {
         visible: false,
-        display: false,
-        dataList: [],
         id: 0,
-        dataForm: { },
-        dataRule: {
-        }
+        dataForm: {},
+        materialList: []
       }
     },
     methods: {
-      async init (id, display) {
+      async init (id) {
         this.visible = true
         this.id = id || 0
-        this.display = display
         this.dataForm = {}
-        this.dataList = []
-        if (!id) return
-        // 获取详情
-        await getDeliveryDetail(this.id).then(({data}) => {
+        this.materialList = []
+        this.getDetails()
+      },
+      getDetails () {
+        getDeliveryDetail(this.id).then(({data}) => {
           if (data && data.code === '200') {
             this.dataForm = data.data
-            if (data.data.whTemplateItemPlanList) {
-              data.data.whTemplateItemPlanList.forEach((item) => {
-                this.dataList.push(item)
-              })
-            }
+            // 模板对应的零件
+            this.materialList = data.data.whTemplateItemPlanList
           }
         })
-      },
-      // 表单提交
-      dataFormSubmit () {
-        this.$refs['dataForm'].validate((valid) => {
-          if (valid) {
-            let params = {
-              'recordId': this.id,
-              'whTemplateItemPlanList': this.dataList
-            }
-            templateOut(params).then(({data}) => {
-              if (data && data.code === '200') {
-                this.$message({
-                  message: '操作成功',
-                  type: 'success',
-                  duration: 1500,
-                  onClose: () => {
-                    this.visible = false
-                    this.$emit('refreshDataList')
-                  }
-                })
-              } else {
-                this.$message.error(data.msg)
-              }
-            })
-          }
-        })
-      },
-      validateField (type) {
-        this.$refs.dataForm.validateField(type)
       }
     }
   }
@@ -190,4 +121,7 @@
   border-bottom: 1px solid #c0c4cc;
   margin-bottom: 10px;
 }
+.title{
+  padding: 10px 0 ;
+}
 </style>

+ 14 - 4
src/views/modules/warehouse/template-delivery.vue

@@ -70,7 +70,7 @@
         width="150"
         label="操作">
         <template slot-scope="scope">
-          <el-button v-if="isAuth('wh:template-out:info')" type="text" size="small" @click="addOrUpdateHandle(scope.row.recordId, true)">查看</el-button>
+          <el-button v-if="isAuth('wh:template-out:info')" type="text" size="small" @click="detailHandle(scope.row.recordId)">查看</el-button>
           <el-button v-if="isAuth('wh:template-out:out')" type="text" size="small" @click="addOrUpdateHandle(scope.row.recordId, false)">出库</el-button>
         </template>
       </el-table-column>
@@ -85,23 +85,26 @@
       layout="total, sizes, prev, pager, next, jumper">
     </el-pagination>
     <!-- 出库组件 -->
-    <template-delivery-detail v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></template-delivery-detail>
+    <add v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add>
     <!-- 出库申请 -->
     <template-outbound v-if="outboundVisible" ref="outbound" @refreshDataList="getDataList"></template-outbound>
+    <detail v-if="detailVisible" ref="detail"/>
   </div>
 </template>
 
 <script>
-  import templateDeliveryDetail from './template-delivery-detail'
+  import Add from './template-delivery-add'
+  import Detail from './template-delivery-detail'
   import templateOutbound from './template-outbound'
   import { getTemplateOutList } from '@/api/warehouse'
   export default {
     name: 'template-delivery',
-    components: {templateDeliveryDetail, templateOutbound},
+    components: {Add, Detail, templateOutbound},
     data () {
       return {
         addOrUpdateVisible: false,
         outboundVisible: false,
+        detailVisible: false,
         dataForm: {},
         dataList: [],
         pageIndex: 1,
@@ -186,6 +189,13 @@
         if (!row.state) return ''
         const item1 = this.optionsState.find((item) => item.code === row.state.toString())
         return item1 ? item1.value : ''
+      },
+      // 详情
+      detailHandle (id) {
+        this.detailVisible = true
+        this.$nextTick(() => {
+          this.$refs.detail.init(id)
+        })
       }
     }
   }

+ 107 - 0
src/views/modules/warehouse/template-detail.vue

@@ -0,0 +1,107 @@
+<template>
+  <el-dialog
+    title="查看"
+    width="70%"
+    :close-on-click-modal="false"
+    :visible.sync="visible">
+    <div style="margin-left: 20px;margin-right: 20px">
+      <e-desc title="基本信息" column="3">
+        <e-desc-item label="名称" span="3">{{dataForm.templateName}}</e-desc-item>
+        <e-desc-item label="备注说明" span="3">{{dataForm.notes}}</e-desc-item>
+      </e-desc>
+      <e-desc title="模版明细" column="3">
+        <el-table
+          :data="dataList"
+          border
+          style="width: 100%;">
+          <el-table-column
+            label="序号"
+            type="index"
+            width="50"
+            align="center">
+          </el-table-column>
+          <el-table-column
+            prop="materialName"
+            header-align="center"
+            align="center"
+            label="物品名称">
+          </el-table-column>
+          <el-table-column
+            prop="specifications"
+            header-align="center"
+            align="center"
+            label="规格">
+          </el-table-column>
+          <el-table-column
+            prop="count"
+            header-align="center"
+            align="center"
+            label="数量">
+          </el-table-column>
+          <el-table-column
+            prop="unitName"
+            header-align="center"
+            align="center"
+            label="单位">
+          </el-table-column>
+          <el-table-column
+            prop="notes"
+            header-align="center"
+            align="center"
+            label="备注">
+          </el-table-column>
+        </el-table>
+      </e-desc>
+    </div>
+    <span slot="footer" class="dialog-footer">
+      <el-button @click="visible = false">返回</el-button>
+    </span>
+  </el-dialog>
+</template>
+
+<script>
+  import EDesc from '../common/e-desc'
+  import EDescItem from '../common/e-desc-item'
+  import { getTemplateInfo } from '@/api/warehouse'
+  export default {
+    name: 'template-detail',
+    components: {
+      EDesc, EDescItem
+    },
+    data () {
+      return {
+        visible: false,
+        id: 0,
+        dataForm: {},
+        dataList: []
+      }
+    },
+    methods: {
+      async init (id) {
+        this.visible = true
+        this.id = id || 0
+        this.dataForm = {}
+        this.dataList = []
+        this.getDetails()
+      },
+      getDetails () {
+        getTemplateInfo(this.id).then(({data}) => {
+          if (data && data.code === '200') {
+            this.dataForm = data.data
+            this.dataList = data.data.whrTemplateMaterialList
+          }
+        })
+      }
+    }
+  }
+</script>
+
+<style scoped>
+.my-line{
+  border-bottom: 1px solid #c0c4cc;
+  margin-bottom: 10px;
+}
+.title{
+  padding: 10px 0 ;
+}
+</style>

+ 12 - 2
src/views/modules/warehouse/template.vue

@@ -94,7 +94,7 @@
         width="150"
         label="操作">
         <template slot-scope="scope">
-          <el-button v-if="isAuth('wh:templatemg:info')" type="text" size="small" @click="addOrUpdateHandle(scope.row.templateId, true)">查看</el-button>
+          <el-button v-if="isAuth('wh:templatemg:info')" type="text" size="small" @click="detailHandle(scope.row.templateId)">查看</el-button>
           <el-button v-if="isAuth('wh:templatemg:editor') && scope.row.state === '0'" style="color: red" type="text" size="small" @click="update(scope.row.templateId, 1)">停用</el-button>
           <el-button v-if="isAuth('wh:templatemg:editor') && scope.row.state === '1'" type="text" size="small" @click="update(scope.row.templateId, 0)">启用</el-button>
         </template>
@@ -111,19 +111,22 @@
     </el-pagination>
     <!--    模板出库-->
     <template-add v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></template-add>
+    <detail v-if="detailVisible" ref="detail"/>
   </div>
 </template>
 
 <script>
   import templateAdd from './template-add'
+  import Detail from './template-detail'
   import { getTemplateList, updateTemplate } from '@/api/warehouse'
   export default {
     name: 'stock-order',
-    components: {templateAdd},
+    components: {templateAdd, Detail},
     data () {
       return {
         addOrUpdateVisible: false,
         outboundVisible: false,
+        detailVisible: false,
         dataForm: {
           name: '',
           date: ''
@@ -206,6 +209,13 @@
             this.$message.error(data.msg)
           }
         })
+      },
+      // 详情
+      detailHandle (id) {
+        this.detailVisible = true
+        this.$nextTick(() => {
+          this.$refs.detail.init(id)
+        })
       }
     }
   }

+ 1 - 1
src/views/modules/warehouse/unit-add.vue

@@ -48,7 +48,7 @@
 </template>
 
 <script>
-  import { getConversionDetail, addOrUpdateConversion } from '../../../api/warehouse'
+  import { getConversionDetail, addOrUpdateConversion } from '@/api/warehouse'
   export default {
     name: 'unit-add',
     data () {

+ 65 - 0
src/views/modules/warehouse/unit-conversion-detail.vue

@@ -0,0 +1,65 @@
+<template>
+  <el-dialog
+    title="查看"
+    width="50%"
+    :close-on-click-modal="false"
+    :visible.sync="visible">
+    <div style="margin-left: 20px;margin-right: 20px">
+      <e-desc title="" column="2">
+        <e-desc-item label="编码" span="2">{{dataForm.conversionCode}}</e-desc-item>
+        <e-desc-item label="转换前数量">1</e-desc-item>
+        <e-desc-item label="单位">{{dataForm.convertUnitBefore}}</e-desc-item>
+        <e-desc-item label="转换后数量">{{dataForm.cnt}}</e-desc-item>
+        <e-desc-item label="单位">{{dataForm.convertUnit}}</e-desc-item>
+        <e-desc-item label="备注说明" span="2">{{dataForm.notes}}</e-desc-item>
+      </e-desc>
+    </div>
+    <span slot="footer" class="dialog-footer">
+      <el-button @click="visible = false">返回</el-button>
+    </span>
+  </el-dialog>
+</template>
+
+<script>
+  import EDesc from '../common/e-desc'
+  import EDescItem from '../common/e-desc-item'
+  import { getConversionDetail } from '@/api/warehouse'
+  export default {
+    name: 'unit-conversion-detail',
+    components: {
+      EDesc, EDescItem
+    },
+    data () {
+      return {
+        visible: false,
+        id: 0,
+        dataForm: {}
+      }
+    },
+    methods: {
+      async init (id) {
+        this.visible = true
+        this.id = id || 0
+        this.dataForm = {}
+        this.getDetails()
+      },
+      getDetails () {
+        getConversionDetail(this.id).then(({data}) => {
+          if (data && data.code === '200') {
+            this.dataForm = data.data
+          }
+        })
+      }
+    }
+  }
+</script>
+
+<style scoped>
+.my-line{
+  border-bottom: 1px solid #c0c4cc;
+  margin-bottom: 10px;
+}
+.title{
+  padding: 10px 0 ;
+}
+</style>

+ 12 - 2
src/views/modules/warehouse/unit-conversion.vue

@@ -81,7 +81,7 @@
         width="100"
         label="操作">
         <template slot-scope="scope">
-          <el-button v-if="isAuth('wh:conversion:info')" type="text" size="small" @click="addOrUpdateHandle(scope.row.conversionId, true)">查看</el-button>
+          <el-button v-if="isAuth('wh:conversion:info')" type="text" size="small" @click="detailHandle(scope.row.conversionId)">查看</el-button>
           <el-button v-if="isAuth('wh:conversion:editor')" type="text" size="small" @click="addOrUpdateHandle(scope.row.conversionId, false)">编辑</el-button>
         </template>
       </el-table-column>
@@ -97,18 +97,21 @@
     </el-pagination>
     <!--    入库-->
     <unit-add v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></unit-add>
+    <detail v-if="detailVisible" ref="detail"/>
   </div>
 </template>
 
 <script>
   import unitAdd from './unit-add'
+  import Detail from './unit-conversion-detail'
   import { getUnitConversionList } from '@/api/warehouse'
   export default {
     name: 'stock-order',
-    components: {unitAdd},
+    components: {unitAdd, Detail},
     data () {
       return {
         inboundVisible: false,
+        detailVisible: false,
         dataForm: {
           name: '',
           date: ''
@@ -185,6 +188,13 @@
         this.$nextTick(() => {
           this.$refs.addOrUpdate.init(id, display)
         })
+      },
+      // 详情
+      detailHandle (id) {
+        this.detailVisible = true
+        this.$nextTick(() => {
+          this.$refs.detail.init(id)
+        })
       }
     }
   }