|
|
@@ -16,7 +16,7 @@
|
|
|
<el-select
|
|
|
v-model="queryParams.assetType"
|
|
|
placeholder="资产类型"
|
|
|
- style="width: 200px">
|
|
|
+ style="width: 170px">
|
|
|
<el-option label="固定资产" value="0"/>
|
|
|
<el-option label="耗材" value="1"/>
|
|
|
</el-select>
|
|
|
@@ -25,10 +25,11 @@
|
|
|
<el-select
|
|
|
v-model="queryParams.status"
|
|
|
placeholder="资产状态"
|
|
|
- style="width: 200px">
|
|
|
- <el-option label="在库" value="0"/>
|
|
|
- <el-option label="出库" value="1"/>
|
|
|
- <el-option label="报失" value="1"/>
|
|
|
+ style="width: 170px">
|
|
|
+ <el-option label="在库" value="1"/>
|
|
|
+ <el-option label="出库" value="2"/>
|
|
|
+ <el-option label="出库(不回库)" value="3"/>
|
|
|
+ <el-option label="报失" value="4"/>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item>
|
|
|
@@ -59,7 +60,7 @@
|
|
|
<el-table-column label="部门编号" prop="deptAssetNumber"/>
|
|
|
<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-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>
|
|
|
@@ -70,10 +71,10 @@
|
|
|
<el-table-column label="购入日期" prop="buyDate"/>
|
|
|
<el-table-column label="状态" width="80">
|
|
|
<template slot-scope="scope">
|
|
|
- <!-- <el-tag size="mini" :type="statusMap[scope.row.status].type">{{-->
|
|
|
- <!-- statusMap[scope.row.status].name-->
|
|
|
- <!-- }}-->
|
|
|
- <!-- </el-tag>-->
|
|
|
+ <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>
|
|
|
+ <el-tag v-else-if="scope.row.status==='3'" size="mini" type="info">出库(不回库)</el-tag>
|
|
|
+ <el-tag v-else size="mini" type="warning">报失</el-tag>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="操作" width="160">
|
|
|
@@ -164,12 +165,12 @@
|
|
|
<el-input v-model="form.factoryName" placeholder="请输入生产厂家"></el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="入库来源" prop="source">
|
|
|
- <el-radio-group v-model="form.source">
|
|
|
- <el-radio label="1">采购</el-radio>
|
|
|
- <el-radio label="2">租赁</el-radio>
|
|
|
- <el-radio label="3">借用</el-radio>
|
|
|
- <el-radio label="4">赠送</el-radio>
|
|
|
- </el-radio-group>
|
|
|
+ <el-select v-model="form.source">
|
|
|
+ <el-option label="采购" value="1"></el-option>
|
|
|
+ <el-option label="租赁" value="2"></el-option>
|
|
|
+ <el-option label="借用" value="3"></el-option>
|
|
|
+ <el-option label="赠送" value="4"></el-option>
|
|
|
+ </el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="购入日期" prop="buyDate">
|
|
|
<el-date-picker
|
|
|
@@ -232,10 +233,11 @@
|
|
|
</el-row>
|
|
|
</el-dialog>
|
|
|
|
|
|
+ <!-- 物品流转对话框 -->
|
|
|
<el-dialog title="物品流转" :visible.sync="transferOpen" width="800px" append-to-body :close-on-click-modal="false">
|
|
|
<el-row :gutter="20">
|
|
|
<el-col :span="12">
|
|
|
- <el-form ref="form" :model="transferForm" :rules="transferRules" size="mini" label-width="100px">
|
|
|
+ <el-form ref="transferForm" :model="transferForm" :rules="transferRules" size="mini" label-width="100px">
|
|
|
<el-form-item label="物品名称" prop="assetName">
|
|
|
<div>{{ transferForm.assetName }}</div>
|
|
|
</el-form-item>
|
|
|
@@ -252,8 +254,8 @@
|
|
|
<div>{{ transferForm.remark }}</div>
|
|
|
</el-form-item>
|
|
|
|
|
|
- <el-form-item label="选择配件" prop="source">
|
|
|
- <el-select v-model="transferForm.projectId" multiple>
|
|
|
+ <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"
|
|
|
:value="item.id"></el-option>
|
|
|
</el-select>
|
|
|
@@ -266,8 +268,11 @@
|
|
|
:props="{ expandTrigger: 'hover',value:'id',label:'name' }"
|
|
|
:show-all-levels="false"></el-cascader>
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="流转类型" prop="location">
|
|
|
-
|
|
|
+ <el-form-item label="流转类型" prop="transferType">
|
|
|
+ <el-select v-model="transferForm.transferType">
|
|
|
+ <el-option v-for="item in transferTypeList" :label="item.dictLabel" :key="item.dictValue"
|
|
|
+ :value="item.dictValue"></el-option>
|
|
|
+ </el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="流转备注" prop="remark">
|
|
|
<el-input v-model="transferForm.transferRemark" type="textarea"></el-input>
|
|
|
@@ -278,14 +283,18 @@
|
|
|
<div style="font-size: 18px;margin-top: -15px">
|
|
|
流转记录
|
|
|
</div>
|
|
|
- <div style="height: 300px;">
|
|
|
+ <div style="height: 300px;margin-top: 10px">
|
|
|
<el-timeline>
|
|
|
<el-timeline-item
|
|
|
v-for="(transfer, index) in assetTransferList"
|
|
|
:key="index"
|
|
|
- :timestamp="transfer.transferDate">
|
|
|
+ :timestamp="transfer.transferDate" placement="top">
|
|
|
<div>
|
|
|
- {{ transfer.content }}
|
|
|
+ <span>{{ getTransferTypeLabel(transfer.transferType) }}</span>
|
|
|
+ <span>({{ transfer.transferUserName }}</span>
|
|
|
+ <span><i class="el-icon-right"/></span>
|
|
|
+ <span>{{ transfer.receiveUserName }})</span>
|
|
|
+ <span>{{ ':' + transfer.transferRemark }}</span>
|
|
|
</div>
|
|
|
</el-timeline-item>
|
|
|
</el-timeline>
|
|
|
@@ -293,11 +302,15 @@
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<div slot="footer" class="dialog-footer">
|
|
|
- <el-button type="primary" size="mini" @click="submitForm">确 定</el-button>
|
|
|
- <el-button size="mini" @click="cancel">取 消</el-button>
|
|
|
+ <el-button type="primary" size="mini" @click="submitTransferForm">确 定</el-button>
|
|
|
+ <el-button size="mini" @click="cancelTransferForm">取 消</el-button>
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
|
|
|
+ <!-- 资产详情对话框 -->
|
|
|
+ <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>
|
|
|
@@ -305,16 +318,19 @@
|
|
|
<script>
|
|
|
import Category from "@/views/material/components/category";
|
|
|
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} from "@/api/material/asset";
|
|
|
import {categoryTree} from "@/api/material/category";
|
|
|
import {getDeptUserTree} from "@/api/system/user";
|
|
|
+import {getDictData} from "@/api/system/dict";
|
|
|
+import {addTransfer, getTransferList} from "@/api/material/transfer";
|
|
|
|
|
|
|
|
|
export default {
|
|
|
name: "asset",
|
|
|
- components: {Category, DeptUserTree, Treeselect},
|
|
|
+ components: {Category, DeptUserTree, AssetDetail, Treeselect},
|
|
|
data() {
|
|
|
return {
|
|
|
queryParams: {
|
|
|
@@ -345,7 +361,18 @@ export default {
|
|
|
|
|
|
transferOpen: false,
|
|
|
transferForm: {},
|
|
|
- userList: []
|
|
|
+ assetTransferList: [],
|
|
|
+ userList: [],
|
|
|
+ transferTypeList: [],
|
|
|
+ transferRules: {
|
|
|
+ receiveUserId: [
|
|
|
+ {required: true, message: "接收人不能为空", trigger: "change"}
|
|
|
+ ],
|
|
|
+ transferType: [
|
|
|
+ {required: true, message: "流转类型不能为空", trigger: "change"}
|
|
|
+ ]
|
|
|
+ },
|
|
|
+ detailOpen: false
|
|
|
}
|
|
|
},
|
|
|
created() {
|
|
|
@@ -428,7 +455,6 @@ export default {
|
|
|
getAsset(id).then(res => {
|
|
|
this.form = res.data
|
|
|
this.accessoryList = res.data.accessoryList || []
|
|
|
- console.log(this.form);
|
|
|
this.open = true;
|
|
|
this.title = "修改资产";
|
|
|
})
|
|
|
@@ -438,7 +464,14 @@ export default {
|
|
|
this.categoryOptions = response.data;
|
|
|
});
|
|
|
},
|
|
|
- rowClick() {
|
|
|
+ rowClick(row, column, event) {
|
|
|
+ if (column.label === '操作') {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ getAsset(row.id).then(res => {
|
|
|
+ this.form = res.data
|
|
|
+ this.detailOpen = true;
|
|
|
+ })
|
|
|
},
|
|
|
|
|
|
accessoryAdd() {
|
|
|
@@ -492,11 +525,53 @@ export default {
|
|
|
getDeptUserTree('').then(res => {
|
|
|
this.userList = res.data
|
|
|
})
|
|
|
+ getDictData('transfer_type').then(res => {
|
|
|
+ this.transferTypeList = res.data
|
|
|
+ })
|
|
|
+ getTransferList(row.id).then(res => {
|
|
|
+ this.assetTransferList = res.data
|
|
|
+ })
|
|
|
getAsset(row.id).then(res => {
|
|
|
this.transferForm = res.data
|
|
|
+ this.transferForm.assetId = row.id
|
|
|
this.accessoryList = res.data.accessoryList
|
|
|
this.transferOpen = true
|
|
|
})
|
|
|
+ },
|
|
|
+ getTransferTypeLabel(transferType) {
|
|
|
+ if (this.transferTypeList.length === 0) {
|
|
|
+ getDictData('transfer_type').then(res => {
|
|
|
+ this.transferTypeList = res.data
|
|
|
+ })
|
|
|
+ }
|
|
|
+ let typeLabel = ''
|
|
|
+ this.transferTypeList.forEach(item => {
|
|
|
+ if (item.dictValue == transferType) {
|
|
|
+ typeLabel = item.dictLabel
|
|
|
+ }
|
|
|
+ })
|
|
|
+ return typeLabel
|
|
|
+ },
|
|
|
+ submitTransferForm() {
|
|
|
+ this.$refs["transferForm"].validate(valid => {
|
|
|
+ if (valid) {
|
|
|
+ console.log(this.transferForm);
|
|
|
+ this.transferForm.id = undefined
|
|
|
+ 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("流转成功");
|
|
|
+ this.transferOpen = false;
|
|
|
+ this.getList();
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ });
|
|
|
+ },
|
|
|
+ cancelTransferForm() {
|
|
|
+ this.transferOpen = false
|
|
|
+ this.transferForm = {}
|
|
|
+ this.resetForm("transferForm");
|
|
|
}
|
|
|
|
|
|
}
|