|
@@ -3,21 +3,31 @@
|
|
|
<div class="addWagonLoad">
|
|
|
<page-title>新增</page-title>
|
|
|
<div class="cp">
|
|
|
- <span style="width:80px">车皮号:</span>
|
|
|
- <el-input
|
|
|
+ <span >车皮号:</span>
|
|
|
+ <el-upload style="margin: 8px;"
|
|
|
+ class="upload-excel"
|
|
|
+ action=""
|
|
|
+ :on-change="importfile"
|
|
|
+ :show-file-list="false"
|
|
|
+ accept=".csv, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.ms-excel"
|
|
|
+ :auto-upload="false">
|
|
|
+ <el-button type="primary">导入</el-button>
|
|
|
+ </el-upload>
|
|
|
+ <span >当前车皮号数量:{{list.length}}</span>
|
|
|
+ <!-- <el-input
|
|
|
placeholder="请输入内容"
|
|
|
v-model="input"
|
|
|
@change="onchang"
|
|
|
clearable
|
|
|
>
|
|
|
- </el-input>
|
|
|
+ </el-input> -->
|
|
|
</div>
|
|
|
<div class="cpList">
|
|
|
<div class="list">
|
|
|
- <span class="cpList1" v-for="(item, i) in list" :key="i">
|
|
|
+ <div class="cpList1" v-for="(item, i) in list" :key="i">
|
|
|
{{ item }}
|
|
|
<i class="el-icon-close itu" @click="onclick(i)"></i>
|
|
|
- </span>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="matching item">
|
|
@@ -154,6 +164,7 @@ export default {
|
|
|
components: { PageTitle },
|
|
|
data() {
|
|
|
return {
|
|
|
+ file:null,
|
|
|
list: [],
|
|
|
form1: {},
|
|
|
input: "",
|
|
@@ -505,6 +516,77 @@ export default {
|
|
|
cancel() {
|
|
|
this.$router.push("/wagonLoadMine");
|
|
|
},
|
|
|
+ // excel表上传
|
|
|
+ importfile(file) {//导入文件
|
|
|
+ let that=this;
|
|
|
+ if (!file) {
|
|
|
+ alert('文件错误,请重新选择');
|
|
|
+ return
|
|
|
+ }
|
|
|
+ var reader = new FileReader();
|
|
|
+ var data=null;
|
|
|
+ var workbook=null;
|
|
|
+ //设置读取操作
|
|
|
+ reader.onload = function (e) {
|
|
|
+ console.log(e);
|
|
|
+ data = e.target.result;
|
|
|
+ workbook= XLSX.read(data, {
|
|
|
+ type: 'binary'
|
|
|
+ });
|
|
|
+ console.log(workbook.SheetNames.length);
|
|
|
+ //读取表格
|
|
|
+ let rows= XLSX.utils.sheet_to_json(workbook.Sheets[workbook.SheetNames[0]]);//只取第一页
|
|
|
+ console.log(rows);
|
|
|
+ //绑定品名和发货单位
|
|
|
+ if(rows.length>0){
|
|
|
+ that.list=[];
|
|
|
+ that.materialName=rows[0]['品 名'];
|
|
|
+ that.supplierName=rows[0]['发货单位'];
|
|
|
+ that.setIdForName();
|
|
|
+ }
|
|
|
+ //绑定车号
|
|
|
+ rows.forEach((row,index) => {
|
|
|
+ let carNumber=row['车号'];
|
|
|
+ if((typeof carNumber)!="undefined" && carNumber.length > 6)
|
|
|
+ that.list.push(carNumber);
|
|
|
+ else
|
|
|
+ console.log(carNumber+"不符合格式");
|
|
|
+ });
|
|
|
+ };
|
|
|
+ reader.readAsBinaryString(file.raw); //以二进制方式读取
|
|
|
+ },
|
|
|
+ //导入的时候为品名和发货单位绑定id
|
|
|
+ setIdForName(){
|
|
|
+ let that=this;
|
|
|
+ //绑定品名id
|
|
|
+ that.axios.post("/api/v1/uc/queryAPOMaterialByLike?apiId=244&startNum=050&index=" +
|
|
|
+ that.materialName).then((res)=>{
|
|
|
+ console.log(res.data.data);
|
|
|
+ if(res.data.code == "200" && res.data.data &&res.data.data.list.length > 0 ) {
|
|
|
+ that.materialId=res.data.data.list[0].materialId;
|
|
|
+ that.materialName=res.data.data.list[0].materialName;
|
|
|
+ }else{
|
|
|
+ that.materialId=null;
|
|
|
+ that.materialName=null;
|
|
|
+ this.$message.error("绑定品名失败,请手动选择!");
|
|
|
+ }
|
|
|
+
|
|
|
+ });
|
|
|
+ //绑定发货单位id
|
|
|
+ that.axios.post("/api/v1/uc/getSupplierMesByMaterialId?apiId=247&index=" +
|
|
|
+ that.supplierName).then((res)=>{
|
|
|
+ console.log(res.data.data);
|
|
|
+ if(res.data.code == "200" && res.data.data &&res.data.data.list.length > 0 ) {
|
|
|
+ that.supplierId=res.data.data.list[0].supplierId;
|
|
|
+ that.supplierName=res.data.data.list[0].supplierName;
|
|
|
+ }else{
|
|
|
+ that.supplierId=null;
|
|
|
+ that.supplierName=null;
|
|
|
+ this.$message.error("绑定发货单位失败,请手动选择!");
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
},
|
|
|
};
|
|
|
</script>
|
|
@@ -539,10 +621,11 @@ export default {
|
|
|
padding: 0.625rem;
|
|
|
display: flex;
|
|
|
flex-wrap: wrap;
|
|
|
+ overflow:auto;
|
|
|
.cpList1 {
|
|
|
background-color: #c9c7c7;
|
|
|
height: 1.875rem;
|
|
|
- margin-right: 0.5rem;
|
|
|
+ margin: 0.5rem;
|
|
|
padding: 0.625rem;
|
|
|
display: flex;
|
|
|
align-items: center;
|