This commit is contained in:
mashuai 2025-01-08 11:08:27 +08:00
parent fa474c8a07
commit 6a07f5e5ac
6 changed files with 1313 additions and 1281 deletions

View File

@ -1,7 +1,14 @@
<template>
<!-- 新增工机具 -->
<div>
<el-form :model="maForm" ref="maForm" size="small" :rules="rules" :inline="true" label-width="120px">
<el-form
:model="maForm"
ref="maForm"
size="small"
:rules="rules"
:inline="true"
label-width="120px"
>
<el-form-item label="到货日期" prop="arrivalTime">
<el-date-picker
v-model="maForm.arrivalTime"
@ -12,7 +19,13 @@
></el-date-picker>
</el-form-item>
<el-form-item label="物资厂家" prop="supplierId">
<el-select v-model="maForm.supplierId" placeholder="物资厂家" clearable filterable style="width: 240px">
<el-select
v-model="maForm.supplierId"
placeholder="物资厂家"
clearable
filterable
style="width: 240px"
>
<el-option
v-for="item in supplierList"
:key="item.supplierId"
@ -128,26 +141,41 @@
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleSave" >保存</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" v-if="isEdit">
导出
</el-button>
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport" v-if="isEdit">导出</el-button>
</el-col>
</el-row>
<el-table v-loading="loading" :data="equipmentList" @selection-change="handleSelectionChange">
<el-table
v-loading="loading"
:data="equipmentList"
@selection-change="handleSelectionChange"
>
<!-- <el-table-column type="selection" width="55" align="center" /> -->
<el-table-column align="center" label="序号" type="index" width="55" />
<el-table-column align="center" label="物资名称" prop="maTypeName" show-overflow-tooltip></el-table-column>
<el-table-column align="center" label="规格型号" prop="typeName" show-overflow-tooltip />
<el-table-column
align="center"
label="序号"
type="index"
width="55"
/>
<el-table-column
align="center"
label="物资名称"
prop="maTypeName"
show-overflow-tooltip
></el-table-column>
<el-table-column
align="center"
label="规格型号"
prop="typeName"
show-overflow-tooltip
/>
<el-table-column align="center" label="单位" prop="unitName" />
<el-table-column label="采购数量" prop="purchaseNum" align="center">
<template v-slot="scope">
<el-input
v-model.number="scope.row.purchaseNum"
controls-position="right"
type="number"
style="width: 100%"
:disabled="scope.row.status != 1 && scope.row.status != 12"
controls-position="right" type="number"
style="width: 100%" :disabled="scope.row.status!=1&&scope.row.status!=12"
:min="0"
@input="
v =>
@ -158,57 +186,59 @@
></el-input>
</template>
</el-table-column>
<el-table-column label="购置单价(元含税)" prop="purchaseTaxPrice" align="center" width="200">
<el-table-column
label="购置单价(元含税)"
prop="purchaseTaxPrice"
align="center" width="200"
>
<template v-slot="scope">
<el-input-number
v-model="scope.row.purchaseTaxPrice"
controls-position="right"
style="width: 100%"
@blur="
scope.row.purchaseTaxPrice = scope.row.purchaseTaxPrice > 0 ? scope.row.purchaseTaxPrice : 0
"
:min="0"
:step="1"
:disabled="scope.row.status != 1 && scope.row.status != 12"
style="width: 100%" @blur="scope.row.purchaseTaxPrice = scope.row.purchaseTaxPrice>0? scope.row.purchaseTaxPrice:0"
:min="0" :step="1" :disabled="scope.row.status!=1&&scope.row.status!=12"
@change="purchaseTaxPriceChange(scope.row,scope.$index)"
></el-input-number>
</template>
</el-table-column>
<el-table-column label="购置单价(元不含税)" prop="purchasePrice" align="center" width="200">
<el-table-column
label="购置单价(元不含税)"
prop="purchasePrice"
align="center" width="200"
>
<template slot-scope="scope">
<el-input-number
v-model="scope.row.purchasePrice"
controls-position="right"
style="width: 100%"
:min="0"
:step="1"
disabled
:min="0" :step="1" disabled
@input="purchasePriceChange(scope.row,scope.$index)"
></el-input-number>
</template>
</el-table-column>
<el-table-column label="租赁价(元/天)" prop="rentPrice" align="center" width="200">
<el-table-column label="租赁价(元/天)" prop="rentPrice"
align="center" width="200"
>
<template slot-scope="scope">
<el-input-number
v-model="scope.row.rentPrice"
controls-position="right"
style="width: 100%"
@blur="
scope.row.rentPrice = scope.row.rentPrice > 0 ? Number(scope.row.rentPrice.toFixed(2)) : 0
"
:min="0"
:step="1"
:disabled="(scope.row.status != 1 && scope.row.status != 12) || scope.row.rentPriceDisabled"
style="width: 100%" @blur="scope.row.rentPrice = scope.row.rentPrice>0? Number(scope.row.rentPrice.toFixed(2)) :0"
:min="0" :step="1" :disabled="(scope.row.status!=1&&scope.row.status!=12)||scope.row.rentPriceDisabled"
></el-input-number>
</template>
</el-table-column>
<el-table-column label="是否为固定资产" prop="fixCode" align="center" width="120">
<el-table-column
label="是否为固定资产"
prop="fixCode"
align="center"
width="120"
>
<template slot-scope="scope">
<el-select
v-model="scope.row.fixCode"
placeholder="固定资产"
filterable
:disabled="scope.row.status != 1 && scope.row.status != 12"
filterable :disabled="scope.row.status!=1&&scope.row.status!=12"
clearable
>
<el-option label="是" value="1"></el-option>
@ -217,21 +247,29 @@
</template>
</el-table-column>
<el-table-column label="出厂日期" align="center" prop="productionTime" width="200">
<el-table-column
label="出厂日期"
align="center"
prop="productionTime"
width="200"
>
<template slot-scope="scope">
<el-date-picker
v-model="scope.row.productionTime"
style="width: 100%"
value-format="yyyy-MM-dd"
type="date"
:disabled="scope.row.status != 1 && scope.row.status != 12"
type="date" :disabled="scope.row.status!=1&&scope.row.status!=12"
placeholder="出厂日期"
clearable
></el-date-picker>
</template>
</el-table-column>
<el-table-column label="相关配套资料" align="center" width="120" prop="bmFileInfos">
<el-table-column
label="相关配套资料"
align="center" width="120"
prop="bmFileInfos"
>
<template slot-scope="scope">
<div
style="color: #02a7f0; cursor: pointer"
@ -265,8 +303,7 @@
<template slot-scope="scope" v-if="scope.row.roleId !== 1">
<el-button
size="mini"
type="text"
v-if="scope.row.status == 1 || scope.row.status == 12"
type="text" v-if="scope.row.status==1||scope.row.status==12"
icon="el-icon-delete"
style="color: red"
@click="handleDelete(scope.row)"
@ -277,6 +314,9 @@
</el-table-column>
</el-table>
<el-dialog title="报告管理" :visible.sync="open" width="900px" append-to-body>
<el-table :data="fileDataList" width="100%" height="350px">
<el-table-column label="序号" type="index" width="55" align="center"/>
@ -297,17 +337,13 @@
<el-table-column label="操作" align="center" width="100">
<template slot-scope="scope">
<div style="display: flex; align-items: center; justify-content: space-between">
<el-upload
ref="upload"
:limit="3"
:headers="upload.headers"
:action="upload.url"
:show-file-list="false"
accept=".png, .jpg, .jpeg, .pdf, .doc, .docx"
:on-success="handleFileSuccess"
:auto-upload="true"
<el-upload ref="upload" :limit="3" :headers="upload.headers"
:action="upload.url" :show-file-list="false" accept=".png, .jpg, .jpeg, .pdf, .doc, .docx"
:on-success="handleFileSuccess" :auto-upload="true"
>
<el-button size="mini" type="text" @click="beforeFileUpload(scope.row)">上传</el-button>
<el-button size="mini" type="text" @click="beforeFileUpload(scope.row)">
上传
</el-button>
</el-upload>
<el-button
@ -320,6 +356,8 @@
查看
</el-button>
</div>
</template>
</el-table-column>
</el-table>
@ -330,6 +368,8 @@
<img width="100%" height="500px" :src="dialogImageUrl" />
</el-dialog>
</div>
</template>
<script>
@ -512,9 +552,7 @@ export default {
this.maForm.taxRate = val.replace(/[^\d.]/g,'')
this.equipmentList.forEach(item=>{
if(item.status==1||item.status==12){
item.purchasePrice = ((item.purchaseTaxPrice / (100 + Number(this.maForm.taxRate))) * 100).toFixed(
10
)
item.purchasePrice = ((item.purchaseTaxPrice/(100 + Number(this.maForm.taxRate)))*100).toFixed(10)
}
})
},
@ -685,7 +723,8 @@ export default {
},
//
deviceTypeChange(val) {
const deviceTypeList = this.$refs.deviceTypeCascader.getCheckedNodes()
const deviceTypeList =
this.$refs.deviceTypeCascader.getCheckedNodes()
let tempList = []
if (val.length > 0) {
const items = val.map(e => {
@ -705,8 +744,7 @@ export default {
obj.fixCode = '0'
obj.status=1
obj.bmFileInfos=[]
if (obj.rentPrice > 0) {
//;;
if(obj.rentPrice>0){//;;
obj.rentPriceDisabled=true
}else{
obj.rentPriceDisabled=false
@ -766,8 +804,7 @@ export default {
})
console.log(this.equipmentList)
// this.loading = false;
}
)
})
},
//
handleSelectionChange(selection) {
@ -789,9 +826,7 @@ export default {
}else if(index1>-1){
this.$modal.msgError('租赁价格不能为0')
}else{
this.$modal
.confirm('是否确认保存当前页面')
.then(function () {})
this.$modal.confirm('是否确认保存当前页面').then(function () {})
.then(() => {
if (this.isEdit) {
console.log('编辑')
@ -821,9 +856,9 @@ export default {
this.loading = false
})
}
})
.catch(() => {})
}).catch(() => {})
}
}
})
} else {
@ -900,11 +935,9 @@ export default {
//-
if(this.rowData.bmFileInfos.length>0){
let index2 = this.rowData.bmFileInfos.findIndex(v=>v.fileType==this.rowData.fileType)
if (index2 > -1) {
//-
if(index2>-1){//-
this.rowData.bmFileInfos.splice(index2,0,obj)
} else {
//-
}else{//-
this.rowData.bmFileInfos.push(obj)
}
}else{
@ -925,8 +958,7 @@ export default {
.then(response => {
this.$modal.msgSuccess('上传成功')
this.getFileData()
})
.catch(() => {
}).catch(() => {
this.$modal.msgError('上传失败')
})
}