|
@@ -39,10 +39,14 @@
|
|
|
<el-button v-waves class="filter-item" type="primary" icon="el-icon-search" @click="form_search">搜索</el-button>
|
|
|
<div>
|
|
|
<el-button v-if="isOutStockAdd" class="filter-item" type="primary" icon="el-icon-edit" @click="form_add">新增</el-button>
|
|
|
+ <!-- <el-button v-if="isReceiveTemplate" v-waves class="filter-item" type="info" icon="el-icon-download" @click="handleDownloadTemp"> 模板 </el-button> -->
|
|
|
<el-upload style="display: inline-block;" :headers="headers" :data="uploadData" :action="uploadExcelUrl" :show-file-list="false" :before-upload="beforeImportExcel" :on-success="handleImportExcelSuccess">
|
|
|
<el-button v-if="isOutStockImport" v-waves class="filter-item" type="warning" icon="el-icon-upload2">导入</el-button>
|
|
|
</el-upload>
|
|
|
+ <el-button v-if="isOutStockExport" class="filter-item" style="margin-left: 10px;" type="success" icon="el-icon-edit" @click="handleDownload">导出</el-button>
|
|
|
<!-- <el-button class="filter-item" style="margin-left: 10px;" type="danger" icon="el-icon-upload2" @click="handleDownloadEas">导出EAS</el-button> -->
|
|
|
+ <!-- <el-button class="filter-item" style="margin-left: 10px;" type="danger" icon="el-icon-upload2" @click="handleDownloadEas1">导出EAS</el-button> -->
|
|
|
+ <!-- <el-button v-if="isEasSynchronization" class="filter-item" type="primary" style="float: right;" @click="handleEAS">EAS同步</el-button> -->
|
|
|
<el-button v-if="isOutsap" class="filter-item" style="margin-left: 10px;" type="success" icon="el-icon-upload2" @click="sapUpload">SAP上传</el-button>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -109,7 +113,7 @@
|
|
|
<template slot-scope="scope">
|
|
|
<span v-if="scope.row.ProofCode">已上传</span>
|
|
|
<span v-else>未上传</span>
|
|
|
-
|
|
|
+
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="sterilisation" label="冲销状态" min-width="80px" align="center">
|
|
@@ -118,7 +122,7 @@
|
|
|
<span v-else>未冲销</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
-
|
|
|
+
|
|
|
<el-table-column label="操作" align="center" width="250" class-name="small-padding fixed-width" fixed="right">
|
|
|
<template slot-scope="{row}">
|
|
|
<el-button v-if="isOutStockSee" type="primary" size="mini" @click="form_see(row)">查看</el-button>
|
|
@@ -924,7 +928,7 @@
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
|
|
|
-
|
|
|
+
|
|
|
<el-table-column :key="19" label="备注" prop="sumPrice" align="center" min-width="80">
|
|
|
<template slot-scope="scope">
|
|
|
<span>{{ scope.row.note }}</span>
|
|
@@ -1087,8 +1091,8 @@ export default {
|
|
|
dialogPvVisible: false,
|
|
|
// 校验规则
|
|
|
// -----------------------------------------
|
|
|
- isOutStockAdd: [], isOutStockImport: [], isOutStockExport: [], isOutStockSee: [], isOutStockDelete: [], isOutStockMethod1: [], isOutStockMethod2: [], isOutStockMethod3: [],isOutStockMethod4:[],
|
|
|
- isManualSynchronization: [], isCloseSynchronization: [], isIgnoreSynchronization: [],
|
|
|
+ isOutStockAdd: [], isReceiveTemplate: [], isOutStockImport: [], isOutStockExport: [], isOutStockSee: [], isOutStockDelete: [], isOutStockMethod1: [], isOutStockMethod2: [], isOutStockMethod3: [],isOutStockMethod4:[],
|
|
|
+ isEasSynchronization: [], isManualSynchronization: [], isCloseSynchronization: [], isIgnoreSynchronization: [],
|
|
|
rules: {},
|
|
|
rowStyle: { maxHeight: 50 + 'px', height: 45 + 'px' },
|
|
|
cellStyle: { padding: 0 + 'px' },
|
|
@@ -1336,7 +1340,7 @@ export default {
|
|
|
},
|
|
|
|
|
|
watch: {
|
|
|
-
|
|
|
+
|
|
|
listAdd: {
|
|
|
deep: true,
|
|
|
handler: function (item) {
|
|
@@ -1348,10 +1352,10 @@ export default {
|
|
|
if(parseInt(i.checkoutNumber) > parseInt(i.reportery)){
|
|
|
i.checkoutNumber = i.reportery
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
})
|
|
|
|
|
|
-
|
|
|
+
|
|
|
}
|
|
|
},
|
|
|
|
|
@@ -1386,14 +1390,14 @@ export default {
|
|
|
|
|
|
checkboxInit(row,index){
|
|
|
// console.log(row)
|
|
|
- if(row.ProofCode){
|
|
|
- return 0
|
|
|
+ if(row.ProofCode){
|
|
|
+ return 0
|
|
|
} else {
|
|
|
|
|
|
var data1 = new Date(row.creatTime)
|
|
|
var data2 = new Date('2022-10-25')
|
|
|
if(data1 > data2){ return 1 } else {return 0}
|
|
|
-
|
|
|
+
|
|
|
}
|
|
|
},
|
|
|
|
|
@@ -1404,7 +1408,7 @@ export default {
|
|
|
},
|
|
|
|
|
|
sapUpload(){
|
|
|
- const that = this
|
|
|
+ const that = this
|
|
|
console.log("currentRow ProofCode",this.currentRow.ProofCode)
|
|
|
var send_data = this.selectList
|
|
|
|
|
@@ -1421,18 +1425,18 @@ export default {
|
|
|
that.isSap = 0
|
|
|
SapUse(send_data).then(response => {
|
|
|
console.log('response', response)
|
|
|
-
|
|
|
+
|
|
|
if (response.msg !== 'fail') {
|
|
|
that.$notify({ title: '成功', message: '上传成功', type: 'success', duration: 2000 })
|
|
|
that.selectList = []
|
|
|
that.get_table_data()
|
|
|
-
|
|
|
+
|
|
|
} else {
|
|
|
that.$notify({ title: '失败', message: '上传失败' , type: 'error', duration: 2000 })
|
|
|
}
|
|
|
})
|
|
|
-
|
|
|
-
|
|
|
+
|
|
|
+
|
|
|
} else {
|
|
|
|
|
|
that.$notify({ title: '失败', message: '正在请求中,请稍等几秒钟后再点击' , type: 'error', duration: 2000 })
|
|
@@ -1444,35 +1448,35 @@ export default {
|
|
|
|
|
|
|
|
|
|
|
|
-
|
|
|
-
|
|
|
+
|
|
|
+
|
|
|
// if(this.currentRow.ProofCode){
|
|
|
// console.log("currentRow ProofCode 这个值说明已经上传了,不用上传")
|
|
|
// //如果有这个值说明已经上传了,不用上传
|
|
|
// } else {
|
|
|
// console.log("currentRow ProofCode没有这个值")
|
|
|
// console.log("currentRow ProofCode",this.currentRow.ProofCode)
|
|
|
- // const useForm = this.currentRow.useForm
|
|
|
- // const creatTime = this.currentRow.creatTime
|
|
|
+ // const useForm = this.currentRow.useForm
|
|
|
+ // const creatTime = this.currentRow.creatTime
|
|
|
// console.log("useForm",useForm)
|
|
|
// var send_data = {
|
|
|
// "useForm":useForm,
|
|
|
// "receiveTime":creatTime,
|
|
|
// "pastureid":Cookies.get('pastureid')
|
|
|
-
|
|
|
+
|
|
|
// }
|
|
|
// SapUse(send_data).then(response => {
|
|
|
// console.log('response', response)
|
|
|
-
|
|
|
+
|
|
|
// if (response.msg !== 'fail') {
|
|
|
// that.$notify({ title: '成功', message: '上传成功', type: 'success', duration: 2000 })
|
|
|
// that.get_table_data()
|
|
|
-
|
|
|
+
|
|
|
// } else {
|
|
|
// that.$notify({ title: '失败', message: '上传失败' , type: 'error', duration: 2000 })
|
|
|
// }
|
|
|
// })
|
|
|
-
|
|
|
+
|
|
|
// }
|
|
|
|
|
|
},
|
|
@@ -1488,7 +1492,9 @@ export default {
|
|
|
const isOutStockAdd = checkButtons(this.$store.state.user.buttons, OutStockAdd)
|
|
|
this.isOutStockAdd = isOutStockAdd
|
|
|
|
|
|
-
|
|
|
+ const ReceiveTemplate = 'customs:outStock:template'
|
|
|
+ const isReceiveTemplate = checkButtons(this.$store.state.user.buttons, ReceiveTemplate)
|
|
|
+ this.isReceiveTemplate = isReceiveTemplate
|
|
|
|
|
|
const OutStockImport = 'customs:outStock:import'
|
|
|
const isOutStockImport = checkButtons(this.$store.state.user.buttons, OutStockImport)
|
|
@@ -1522,7 +1528,9 @@ export default {
|
|
|
const isOutStockMethod4 = checkButtons(this.$store.state.user.buttons, OutStockMethod4)
|
|
|
this.isOutStockMethod4 = isOutStockMethod4
|
|
|
|
|
|
-
|
|
|
+ const EasSynchronization = 'customs:outStock:easSynchronization'
|
|
|
+ const isEasSynchronization = checkButtons(this.$store.state.user.buttons, EasSynchronization)
|
|
|
+ this.isEasSynchronization = isEasSynchronization
|
|
|
|
|
|
const ManualSynchronization = 'customs:outStock:manualSynchronization'
|
|
|
const isManualSynchronization = checkButtons(this.$store.state.user.buttons, ManualSynchronization)
|
|
@@ -1874,7 +1882,7 @@ export default {
|
|
|
|
|
|
// this.createTemp.departmentId = item.departmentId
|
|
|
this.$set(this.createTemp, "departmentId", item.departmentId)
|
|
|
-
|
|
|
+
|
|
|
this.createTemp.bid = item.id
|
|
|
this.createTemp.applicatId = item.empId
|
|
|
this.orderPart.applyCode = item.applyCode
|
|
@@ -2672,7 +2680,67 @@ export default {
|
|
|
})
|
|
|
)
|
|
|
},
|
|
|
+ // 导出
|
|
|
+ handleDownload() {
|
|
|
+ this.$alert('备件出库信息正在导出中,请勿刷新或离开本页面,若导出时间过长,建议缩小导出数据范围重新导出', {})
|
|
|
+ this.isPercentage = true
|
|
|
+ this.percentage = 1
|
|
|
+ var timer = setInterval(() => {
|
|
|
+ this.percentage += 5
|
|
|
+ if (this.percentage > 95) {
|
|
|
+ this.percentage = 99
|
|
|
+ clearInterval(timer)
|
|
|
+ }
|
|
|
+ this.percentage = this.percentage
|
|
|
+ }, 1000)
|
|
|
+ this.requestParam.parammaps.formType = '备件出库信息'
|
|
|
+ this.requestParam.parammaps.inputDatetime = this.getdataListParm.parammaps.inputDatetime
|
|
|
+ this.requestParam.parammaps.pastureName = this.getdataListParm.parammaps.pastureName
|
|
|
+ this.requestParam.parammaps.departmentId = this.getdataListParm.parammaps.departmentId
|
|
|
+ this.requestParam.parammaps.useForm = this.getdataListParm.parammaps.useForm
|
|
|
+ this.requestParam.parammaps.useType = this.getdataListParm.parammaps.useType
|
|
|
+ this.requestParam.parammaps.startTime = this.getdataListParm.parammaps.startTime
|
|
|
+ this.requestParam.parammaps.stopTime = this.getdataListParm.parammaps.stopTime
|
|
|
+ GetAccount(this.requestParam).then(response => {
|
|
|
+ this.$nextTick(() => {
|
|
|
+ import('@/vendor/Export2Excel').then(excel => {
|
|
|
+
|
|
|
+
|
|
|
+ if (response.data.list !== null) {
|
|
|
+ for (let i = 0; i < response.data.list.length; i++) {
|
|
|
+
|
|
|
+ if(response.data.list[i].sterilisation == 1){
|
|
|
+ this.$set(response.data.list[i], 'sterilisation', "已冲销")
|
|
|
+ } else {
|
|
|
+ this.$set(response.data.list[i], 'sterilisation', "未冲销")
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ const list1 = response.data.list
|
|
|
+ if (response.data.list !== '') {
|
|
|
+ this.percentage = 99
|
|
|
+ setTimeout(() => {
|
|
|
+ this.isPercentage = false
|
|
|
+ }, 2000)
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
|
|
|
+ const tHeader = [
|
|
|
+ '牧场', '领用单编号', '领用日期', '物料编码', '品名', '规格型号', '品牌', '计量单位', '实发数量', '单价', '总价', '库位', '供应商', '名称', '牧场设备编号','资产品牌', '领用类型', '领用部门', '领用人', '备注', '冲销状态']
|
|
|
+ const filterVal = [
|
|
|
+ 'pastureName', 'useForm', 'creatTime', 'partCode', 'partName', 'specification', 'brandName', 'unit', 'checkoutNumber', 'price', 'sumPrice', 'warehoseCode', 'providerName', 'eqName', 'eqCode', 'eqBrand','useTypeV', 'departmentName', 'appliname', 'note', 'sterilisation'
|
|
|
+ ]
|
|
|
+ const data1 = this.formatJson(filterVal, list1)
|
|
|
+ excel.export_json_to_excel({ header: tHeader, data: data1, filename: this.requestParam.parammaps.formType, autoWidth: true, bookType: 'xlsx' })
|
|
|
+ })
|
|
|
+ })
|
|
|
+ })
|
|
|
+ },
|
|
|
handleDownload2() {
|
|
|
this.$alert('备件出库记录正在导出中,请勿刷新或离开本页面,若导出时间过长,建议缩小导出数据范围重新导出', {})
|
|
|
this.isPercentage = true
|
|
@@ -2795,6 +2863,66 @@ export default {
|
|
|
})
|
|
|
})
|
|
|
},
|
|
|
+ handleDownloadEas1() {
|
|
|
+ this.$alert('备件出库EAS信息正在导出中,请勿刷新或离开本页面,若导出时间过长,建议缩小导出数据范围重新导出', {})
|
|
|
+ this.isPercentage = true
|
|
|
+ this.percentage = 1
|
|
|
+ var timer = setInterval(() => {
|
|
|
+ this.percentage += 5
|
|
|
+ if (this.percentage > 95) {
|
|
|
+ this.percentage = 99
|
|
|
+ clearInterval(timer)
|
|
|
+ }
|
|
|
+ this.percentage = this.percentage
|
|
|
+ }, 1000)
|
|
|
+ this.requestParam.name = 'downloadPartUseEASYuan'
|
|
|
+ this.requestParam.parammaps.inputDatetime = this.getdataListParm.parammaps.inputDatetime
|
|
|
+ this.requestParam.parammaps.pastureName = this.getdataListParm.parammaps.pastureName
|
|
|
+ this.requestParam.parammaps.departmentId = this.getdataListParm.parammaps.departmentId
|
|
|
+ this.requestParam.parammaps.useForm = this.getdataListParm.parammaps.useForm
|
|
|
+ this.requestParam.parammaps.useType = this.getdataListParm.parammaps.useType
|
|
|
+ this.requestParam.parammaps.startTime = this.getdataListParm.parammaps.startTime
|
|
|
+ this.requestParam.parammaps.stopTime = this.getdataListParm.parammaps.stopTime
|
|
|
+ GetAccount(this.requestParam).then(response => {
|
|
|
+ if (response.data.list !== '') {
|
|
|
+ this.percentage = 99
|
|
|
+ setTimeout(() => {
|
|
|
+ this.isPercentage = false
|
|
|
+ }, 2000)
|
|
|
+ }
|
|
|
+ this.$nextTick(() => {
|
|
|
+ import('@/vendor/Export2Excel').then(excel => {
|
|
|
+ const list1 = response.data.list
|
|
|
+ const tHeader = [
|
|
|
+ '领用部门', '牧场', '领用单编号', '领用日期', '供应商编码', '供应商名称', '出库人', '制单日期', '品名', '物料编码', '计量单位', '单价', '实发数量', '总价', '备注', '领用人', '费用类型'
|
|
|
+ ]
|
|
|
+ const filterVal = [
|
|
|
+ '领用部门', '牧场', '领用单编号', '领用日期', '供应商编码', '供应商名称', '出库人', '制单日期', '品名', '物料编码', '计量单位', '单价', '实发数量', '总价', '备注', '领用人', '费用类型'
|
|
|
+ ]
|
|
|
+ // const tmerges=['B1:D2']
|
|
|
+ if (list1 !== null) {
|
|
|
+ const data1 = this.formatJsonTemp(filterVal, list1)
|
|
|
+ excel.export_json_to_excel({
|
|
|
+ // merges: tmerges,
|
|
|
+ // multiHeader: tmultiHeader,
|
|
|
+ header: tHeader,
|
|
|
+ data: data1,
|
|
|
+ filename: '备件出库EAS',
|
|
|
+ autoWidth: true,
|
|
|
+ bookType: 'xlsx'
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ this.$notify({
|
|
|
+ title: '',
|
|
|
+ message: '无备件领用完成信息,无法导出!',
|
|
|
+ type: 'warning',
|
|
|
+ duration: 2000
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ })
|
|
|
+ })
|
|
|
+ },
|
|
|
formatJson(filterVal, jsonData) {
|
|
|
return jsonData.map(v =>
|
|
|
filterVal.map(j => {
|
|
@@ -2854,6 +2982,54 @@ export default {
|
|
|
console.log('编辑保存')
|
|
|
},
|
|
|
|
|
|
+ // 导出模板
|
|
|
+ handleDownloadTemp() {
|
|
|
+ this.requestParam.name = 'stockLaidDownTemp'
|
|
|
+ GetDataByName(this.requestParam).then(response => {
|
|
|
+ this.$nextTick(() => {
|
|
|
+ import('@/vendor/Export2Excel').then(excel => {
|
|
|
+ const list1 = response.data.list
|
|
|
+ const tHeader = [
|
|
|
+ '牧场', '领用单编号', '领用日期', '物料编码', '品名', '规格型号', '品牌', '计量单位', '实发数量', '单价', '总价', '库位', '供应商', '名称', '牧场设备编号', '具体用处', '领用类型', '领用部门', '领用人'
|
|
|
+ ]
|
|
|
+ const filterVal = [
|
|
|
+ '牧场', '领用单编号', '领用日期', '物料编码', '品名', '规格型号', '品牌', '计量单位', '实发数量', '单价', '总价', '库位', '供应商', '名称', '牧场设备编号', '具体用处', '领用类型', '领用部门', '领用人'
|
|
|
+ ]
|
|
|
+ const data1 = this.formatJsonTemp(filterVal, list1)
|
|
|
+ excel.export_json_to_excel({
|
|
|
+ header: tHeader,
|
|
|
+ data: data1,
|
|
|
+ filename: '出库模板',
|
|
|
+ autoWidth: true,
|
|
|
+ bookType: 'xlsx'
|
|
|
+ })
|
|
|
+ })
|
|
|
+ })
|
|
|
+ })
|
|
|
+ },
|
|
|
+ handleEAS() {
|
|
|
+ this.easStatus.dialogStatus = 'easStatus'
|
|
|
+ this.easStatus.dialogFormVisible = true
|
|
|
+ this.get_table_dataEasStatusLst()
|
|
|
+ },
|
|
|
+ get_table_dataEasStatusLst() {
|
|
|
+ this.easStatus.listLoading = true
|
|
|
+ GetDataByName(this.easStatus.getdataListParm).then(response => {
|
|
|
+ if (response.data.list !== null) {
|
|
|
+ this.easStatus.list = response.data.list
|
|
|
+ } else {
|
|
|
+ this.easStatus.list = []
|
|
|
+ }
|
|
|
+ this.easStatus.pageNum = response.data.pageNum
|
|
|
+ this.easStatus.pageSize = response.data.pageSize
|
|
|
+ if (response.data.total) {
|
|
|
+ this.easStatus.total = response.data.total
|
|
|
+ }
|
|
|
+ })
|
|
|
+ setTimeout(() => {
|
|
|
+ this.easStatus.listLoading = false
|
|
|
+ }, 100)
|
|
|
+ },
|
|
|
handleClose(row) {
|
|
|
MessageBox.confirm('是否确认关闭同步此数据?', {
|
|
|
confirmButtonText: '确认', cancelButtonText: '取消', type: 'warning'
|
|
@@ -2953,4 +3129,4 @@ export default {
|
|
|
line-height: 0;
|
|
|
}
|
|
|
|
|
|
-</style>
|
|
|
+</style>
|