<template>
|
<win-md class="stock-detail" title="导入分发单文件" @close="close" :width="'800px'" :loading="loading">
|
|
<upload ref="uploadRef" :values="fileList" :settings="uploadSettings" @on-change="uploadChange"></upload>
|
|
|
<el-button name="确定分发" style="float: right;margin-right: 50px;margin-top: 20px" site="form" type="primary" size="mini" @click="distribute()">
|
确定分发
|
</el-button>
|
|
</win-md>
|
</template>
|
<script>
|
import winMd from '@/components/win/win-md';
|
import * as DateFormatter from '@/utils/DateFormatter';
|
import {getDownUrl, getUploadUrl} from '@/utils/base';
|
import Viewer from 'viewerjs';
|
import 'viewerjs/dist/viewer.css';
|
import de from "element-ui/src/locale/lang/de";
|
import upload from '@/components/upload/index';
|
let viewer = null;
|
|
|
import {transferAdd, transferImport} from '@/api/stock/transfer';
|
|
export default {
|
computed: {
|
de() {
|
return de
|
}
|
},
|
components: {winMd,upload},
|
props: {
|
setting: {
|
type: Object,
|
default: () => {
|
},
|
},
|
},
|
data() {
|
return {
|
procureDoc:"",
|
|
uploadSettings: {
|
title: '上传',
|
max: 20, // 最大大小,单位M
|
num: 10, // 支持上传图片个数
|
tip: '', // 提示 默认:`只能上传${this.defaultSettings.num}个${this.defaultSettings.accept}文件,且不超过${this.defaultSettings.max}kb`
|
uploadUrl: getUploadUrl(), // 上传路径
|
multiple: true, // 是否支持批量上传
|
disabled: false, // 是否禁用
|
},
|
|
|
loading: true,
|
fileList: [],
|
detail: {
|
baseCategoryName: '',
|
businessFormCode: '',
|
goodsTemplateName: '',
|
procureDoc: '',
|
agencyId: '',
|
agencyName: '',
|
states: '',
|
createName: '',
|
time: '',
|
procureGoods: [{}, {}],
|
fileKey: Math.random(),
|
},
|
};
|
},
|
filters: {
|
formatTime(time) {
|
if (!time) return '-';
|
return DateFormatter.LongToDateTime(time);
|
},
|
formatPrice(price) {
|
return price / 100
|
}
|
},
|
created() {
|
this.loading = false
|
this.fileList = []
|
},
|
methods: {
|
initPreviewImg() {
|
if (viewer != null) {
|
viewer.destroy();
|
}
|
const ViewerDom = document.querySelector('#uploadPreviewImages');
|
viewer = new Viewer(ViewerDom, {});
|
},
|
handlePreview(file) {
|
if (!this.checkImg(file.name)) {
|
return false;
|
}
|
let index = 0;
|
for (let i = 0; i < this.fileList.length; i++) {
|
const f = this.fileList[i];
|
if (this.checkImg(f.name)) {
|
if (file.id == f.id) {
|
break;
|
}
|
index++;
|
}
|
}
|
// this.fileList.forEach((f, i) => {
|
// if (file.uid == f.uid) {
|
// index = i
|
// }
|
// })
|
// document.querySelector('#uploadPreviewImages').children[0].click()
|
viewer.view(index);
|
},
|
checkImg(name) {
|
const suffix = name.substring(name.lastIndexOf('.'), name.length);
|
const imgArray = ['.jpg', '.jpeg', '.png', '.bmp'];
|
if (imgArray.indexOf(suffix) < 0) {
|
return false;
|
}
|
return true;
|
},
|
getUrl(path) {
|
if (path.substr(0, 7).toLowerCase() == 'http://' || path.substr(0, 8).toLowerCase() == 'https://') {
|
return path;
|
} else {
|
return getDownUrl() + path;
|
}
|
},
|
close() {
|
this.$emit('close');
|
},
|
|
// 上传
|
uploadChange() {
|
let arr = this.$refs.uploadRef.fileList;
|
let procureDoc = JSON.stringify(arr);
|
console.log(procureDoc)
|
this.procureDoc = procureDoc;
|
|
let pro = this.setting.id
|
console.log(pro)
|
},
|
/**
|
* 确定分发
|
*/
|
distribute(){
|
let id = this.setting.id
|
let procureDoc = this.procureDoc
|
if(id == null || procureDoc === ''){
|
this.$message.error('请上传图片!');
|
return
|
}
|
let opTime = DateFormatter.formatDate(new Date(), 'yyyyMMddhhmmss');
|
|
transferImport({"idStr":id,"procureDoc":procureDoc,"opTime":opTime,"type":"1"})
|
.then((res) => {
|
this.loading = false
|
this.$message.success('保存成功!');
|
this.close();
|
this.$emit('search');
|
})
|
.catch((err) => {
|
this.loading = false
|
console.log('edit err', err);
|
this.$message.error('保存失败');
|
});
|
|
|
}
|
|
|
},
|
};
|
</script>
|
<style lang="scss" scoped>
|
@import url(../../../../styles/store.scss);
|
|
.card3 {
|
padding: 10px;
|
margin-top: 10px;
|
border-radius: 2px;
|
background: #ffffff;
|
}
|
</style>
|