Prechádzať zdrojové kódy

资产管理页面修改

ysc 2 rokov pred
rodič
commit
9c06fe2e43

+ 17 - 0
src/api/material/transfer.js

@@ -19,3 +19,20 @@ export function getTransferList(assetId) {
   })
 }
 
+// 查询个人领用列表
+export function personReceive() {
+  return request({
+    url: '/material/asset/transfer/personReceive',
+    method: 'get'
+  })
+}
+
+// 领用确认
+export function confirmReceive(transferId) {
+  return request({
+    url: '/material/asset/transfer/confirmReceive/' + transferId,
+    method: 'get'
+  })
+}
+
+

+ 44 - 19
src/views/material/asset.vue

@@ -9,14 +9,17 @@
           <el-form-item label="物品名称" prop="assetName">
             <el-input v-model="queryParams.assetName"></el-input>
           </el-form-item>
-          <el-form-item label="资产编号" prop="assetNumber">
-            <el-input v-model="queryParams.assetName"></el-input>
+          <el-form-item label="是否配件" prop="accessoryFlag">
+            <el-switch v-model="queryParams.accessoryFlag"
+                       active-value="1"
+                       inactive-value="0">
+            </el-switch>
           </el-form-item>
           <el-form-item label="资产类型" prop="assetType">
             <el-select
               v-model="queryParams.assetType"
               placeholder="资产类型"
-              style="width: 170px">
+              style="width: 100px">
               <el-option label="固定资产" value="0"/>
               <el-option label="耗材" value="1"/>
             </el-select>
@@ -25,7 +28,7 @@
             <el-select
               v-model="queryParams.status"
               placeholder="资产状态"
-              style="width: 170px">
+              style="width: 120px">
               <el-option label="在库" value="1"/>
               <el-option label="出库" value="2"/>
               <el-option label="出库(不回库)" value="3"/>
@@ -65,21 +68,21 @@
         <el-table :data="assetList"
                   @row-click="rowClick"
                   size="mini">
-          <el-table-column label="资产编号" prop="assetNumber"/>
+          <el-table-column label="资产编号" prop="assetNumber" :show-overflow-tooltip="true"/>
           <el-table-column label="物品名称" prop="assetName" min-width="100" :show-overflow-tooltip="true"/>
-          <el-table-column label="部门编号" prop="deptAssetNumber"/>
+          <el-table-column label="部门编号" prop="deptAssetNumber" :show-overflow-tooltip="true"/>
           <el-table-column label="资产类型" width="80">
             <template slot-scope="scope">
               <el-tag v-if="scope.row.assetType==='1'" size="mini" type="warning">耗材</el-tag>
               <el-tag v-else size="mini" type="success">固定资产</el-tag>
             </template>
           </el-table-column>
-          <el-table-column label="设备型号" prop="equipmentType"/>
-          <el-table-column label="设备编号" prop="equipmentNumber"/>
-          <el-table-column label="原厂编号" prop="factoryNumber"/>
-          <el-table-column label="生产厂家" prop="factoryName"/>
+          <el-table-column label="设备型号" prop="equipmentType" :show-overflow-tooltip="true"/>
+          <el-table-column label="设备编号" prop="equipmentNumber" :show-overflow-tooltip="true"/>
+          <el-table-column label="原厂编号" prop="factoryNumber" :show-overflow-tooltip="true"/>
+          <el-table-column label="生产厂家" prop="factoryName" :show-overflow-tooltip="true"/>
           <el-table-column label="购入日期" prop="buyDate"/>
-          <el-table-column label="状态" width="80">
+          <el-table-column label="状态" width="90">
             <template slot-scope="scope">
               <el-tag v-if="scope.row.status==='1'" type="success" size="mini">在库</el-tag>
               <el-tag v-else-if="scope.row.status==='2'" size="mini">出库</el-tag>
@@ -159,6 +162,9 @@
                 <el-radio label="1">耗材</el-radio>
               </el-radio-group>
             </el-form-item>
+            <el-form-item label="数量" prop="num" v-if="form.assetType==='1'">
+              <el-input-number v-model="form.num"></el-input-number>
+            </el-form-item>
             <el-form-item label="设备设施名称" prop="equipmentName">
               <el-input v-model="form.equipmentName" placeholder="请输入设备设施名称" maxlength="30"/>
             </el-form-item>
@@ -264,6 +270,12 @@
               <div>{{ transferForm.remark }}</div>
             </el-form-item>
 
+            <el-form-item label="流转数量" prop="receiveNum" v-if="transferForm.assetType==='1'">
+              <el-input-number v-model="transferForm.receiveNum"></el-input-number>
+              <el-tooltip class="item" effect="dark" content="不填表示领取剩余全部库存" placement="right">
+                <div style="margin-left: 10px" class="el-icon-info"></div>
+              </el-tooltip>
+            </el-form-item>
             <el-form-item label="选择配件" prop="accessoriesId">
               <el-select v-model="transferForm.accessoriesId" multiple>
                 <el-option v-for="(item,index) in accessoryList" :label="item.accessoryName" :key="index"
@@ -290,20 +302,23 @@
           </el-form>
         </el-col>
         <el-col :span="12">
-          <div style="font-size: 18px;margin-top: -15px">
-            流转记录
+          <div style="margin-top: -15px">
+            <span style="font-size: 18px;margin-right: 10px">流转记录</span>
+            <span style="font-size: 12px"><i class="el-icon-info"/>红点表示接收人还未确认</span>
           </div>
           <div style="height: 300px;margin-top: 10px">
-            <el-timeline>
+            <el-timeline :reverse="true">
               <el-timeline-item
                 v-for="(transfer, index) in assetTransferList"
                 :key="index"
                 :timestamp="transfer.transferDate" placement="top">
-                <div>
+                <div style="font-size: 12px;color: #1c84c6">
                   <span>{{ getTransferTypeLabel(transfer.transferType) }}</span>
                   <span>({{ transfer.transferUserName }}</span>
                   <span><i class="el-icon-right"/></span>
-                  <span>{{ transfer.receiveUserName }})</span>
+                  <span>{{ transfer.receiveUserName }}</span>
+                  <el-badge v-if="transfer.receiveConfirm!='1'" is-dot></el-badge>
+                  <span>)</span>
                   <span>{{ ':' + transfer.transferRemark }}</span>
                 </div>
               </el-timeline-item>
@@ -331,7 +346,15 @@ import DeptUserTree from "@/components/DeptUserTree"
 import AssetDetail from "./components/assetDetail"
 import Treeselect from "@riophae/vue-treeselect";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";
-import {getDeptAssetNumber, addAsset, listAsset, getAsset, updateAsset, delAsset,exportAsset} from "@/api/material/asset";
+import {
+  getDeptAssetNumber,
+  addAsset,
+  listAsset,
+  getAsset,
+  updateAsset,
+  delAsset,
+  exportAsset
+} from "@/api/material/asset";
 import {categoryTree} from "@/api/material/category";
 import {getDeptUserTree} from "@/api/system/user";
 import {getDictData} from "@/api/system/dict";
@@ -421,6 +444,7 @@ export default {
         assetNumber: undefined,
         deptAssetNumber: undefined,
         assetType: undefined,
+        num: undefined,
         equipmentName: undefined,
         equipmentType: undefined,
         equipmentNumber: undefined,
@@ -570,9 +594,10 @@ export default {
     submitTransferForm() {
       this.$refs["transferForm"].validate(valid => {
         if (valid) {
-          console.log(this.transferForm);
           this.transferForm.id = undefined
-          this.transferForm.accessoriesId = this.transferForm.accessoriesId.join()
+          if (this.transferForm.accessoriesId) {
+            this.transferForm.accessoriesId = this.transferForm.accessoriesId.join()
+          }
           this.transferForm.receiveUserId = this.transferForm.receiveUserId[this.transferForm.receiveUserId.length - 1]
           addTransfer(this.transferForm).then(res => {
             this.$message.success("流转成功");

+ 121 - 0
src/views/material/myReceive.vue

@@ -0,0 +1,121 @@
+<template>
+  <div class="app-container">
+    <el-form :model="queryParams" ref="queryForm" size="mini" :inline="true">
+      <el-form-item label="是否配件" prop="accessoryFlag">
+        <el-switch v-model="queryParams.accessoryFlag"
+                   active-value="1"
+                   inactive-value="0">
+        </el-switch>
+      </el-form-item>
+      <el-form-item label="资产类型" prop="assetType">
+        <el-select
+          v-model="queryParams.assetType"
+          placeholder="资产类型"
+          style="width: 150px">
+          <el-option label="固定资产" value="0"/>
+          <el-option label="耗材" value="1"/>
+        </el-select>
+      </el-form-item>
+      <el-form-item>
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
+      </el-form-item>
+    </el-form>
+
+
+    <el-table :data="assetList"
+              @row-click="rowClick"
+              size="mini">
+      <el-table-column label="资产编号" prop="assetNumber" :show-overflow-tooltip="true"/>
+      <el-table-column label="物品名称" prop="assetName" min-width="100" :show-overflow-tooltip="true"/>
+      <el-table-column label="部门编号" prop="deptAssetNumber" :show-overflow-tooltip="true"/>
+      <el-table-column label="资产类型" width="80">
+        <template slot-scope="scope">
+          <el-tag v-if="scope.row.assetType==='1'" size="mini" type="warning">耗材</el-tag>
+          <el-tag v-else size="mini" type="success">固定资产</el-tag>
+        </template>
+      </el-table-column>
+      <el-table-column label="设备型号" prop="equipmentType" :show-overflow-tooltip="true"/>
+      <el-table-column label="设备编号" prop="equipmentNumber" :show-overflow-tooltip="true"/>
+      <el-table-column label="原厂编号" prop="factoryNumber" :show-overflow-tooltip="true"/>
+      <el-table-column label="生产厂家" prop="factoryName" :show-overflow-tooltip="true"/>
+      <el-table-column label="领用日期" prop="receiveDate"/>
+      <el-table-column label="操作" width="120">
+        <template slot-scope="scope">
+          <el-button
+            plain
+            icon="el-icon-coordinate"
+            size="mini"
+            v-if="scope.row.receiveConfirm!='1'"
+            @click="handleConfirm(scope.row)"
+          >领用确认
+          </el-button>
+        </template>
+      </el-table-column>
+    </el-table>
+
+    <!-- 资产详情对话框 -->
+    <el-dialog title="资产详情" :visible.sync="detailOpen" width="800px" append-to-body :close-on-click-modal="false">
+      <asset-detail :form="form"></asset-detail>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import {confirmReceive, personReceive} from "@/api/material/transfer";
+import {getAsset} from "@/api/material/asset";
+import AssetDetail from "./components/assetDetail"
+
+export default {
+  name: "myReceive",
+  components: {AssetDetail},
+  data() {
+    return {
+      queryParams: {},
+      assetList: [],
+      detailOpen: false,
+      form: {}
+    }
+  },
+  created() {
+    this.getList()
+  },
+  methods: {
+    getList() {
+      personReceive().then(res => {
+        this.assetList = res.data
+      })
+    },
+    /** 搜索按钮操作 */
+    handleQuery() {
+      // this.queryParams.pageNum = 1;
+      this.getList();
+    },
+    /** 重置按钮操作 */
+    resetQuery() {
+      this.resetForm("queryForm");
+      // this.queryParams.deptId = undefined;
+      this.handleQuery();
+    },
+    handleConfirm(row) {
+      confirmReceive(row.transferId).then(res => {
+        this.$message.success("确认成功")
+        this.getList();
+      })
+    },
+    rowClick(row, column, event) {
+      if (column.label === '操作') {
+        return
+      }
+      getAsset(row.id).then(res => {
+        this.form = res.data
+        this.detailOpen = true;
+      })
+    },
+  }
+}
+</script>
+
+<style scoped>
+
+</style>