| | |
| | | style="margin: 10px" |
| | | > |
| | | |
| | | <el-tabs v-model="activeName" type="border-card" @tab-click="handleTabClick"> |
| | | <el-tabs v-model="activeName" type="border-card"> |
| | | <el-tab-pane |
| | | v-for="(i,j) in sheetName" |
| | | :key="i+j" |
| | |
| | | item.indexOf('类型编码')!==-1|| |
| | | item.indexOf('联系人')!==-1|| |
| | | item.indexOf('联系方式')!==-1|| |
| | | item.indexOf('地址')!==-1 |
| | | item.indexOf('地址')!==-1|| |
| | | item.indexOf('所属仓库编码')!==-1|| |
| | | item.indexOf('上级库位编码')!==-1|| |
| | | item.indexOf('规格型号')!==-1|| |
| | | item.indexOf('存货分类编码')!==-1|| |
| | | item.indexOf('计量方式')!==-1|| |
| | | item.indexOf('计量单位/组名称')!==-1 |
| | | " |
| | | > |
| | | <el-input v-model="row[item]" placeholder="请输入" /> |
| | |
| | | > |
| | | <el-option |
| | | v-for="item in statusArr" |
| | | :key="item.code" |
| | | :label="item.name" |
| | | :value="item.code" |
| | | /> |
| | | </el-select> |
| | | </div> |
| | | <div |
| | | v-else-if=" |
| | | item.indexOf('库位管理')!==-1|| |
| | | item.indexOf('是否外购')!==-1|| |
| | | item.indexOf('是否销售')!==-1|| |
| | | item.indexOf('是否自制')!==-1|| |
| | | item.indexOf('是否生产消耗')!==-1|| |
| | | item.indexOf('是否委外')!==-1 |
| | | " |
| | | > |
| | | <el-select |
| | | v-model="row[item]" |
| | | placeholder="请选择" |
| | | filterable |
| | | style="width:100%" |
| | | clearable |
| | | > |
| | | <el-option |
| | | v-for="item in isYesOrNo" |
| | | :key="item.code" |
| | | :label="item.name" |
| | | :value="item.code" |
| | |
| | | <el-table-column |
| | | prop="errorField" |
| | | label="错误字段" |
| | | |
| | | width="160" |
| | | show-overflow-tooltip |
| | | /> |
| | | <el-table-column |
| | |
| | | excelArr: [], |
| | | |
| | | statusArr: [], |
| | | isYesOrNo: [ |
| | | { code: '1', name: '是' }, |
| | | { code: '0', name: '否' } |
| | | ], |
| | | orgArr: [], // 组织 |
| | | orgOptions: [], |
| | | defaultProps: { |
| | |
| | | }) |
| | | } |
| | | |
| | | if (this.sheetName.indexOf('仓库设置') !== -1) { |
| | | this.statusArr = [ |
| | | { code: '0', name: '正常' }, |
| | | { code: '1', name: '停用' } |
| | | ] |
| | | this.tableData[0].forEach(j => { |
| | | j['*状态'] = j['*状态'] ? this.statusArr.find(e => e.name === j['*状态']).code : '' |
| | | j['*库位管理'] = j['*库位管理'] ? this.isYesOrNo.find(e => e.name === j['*库位管理']).code : '' |
| | | j.uuid = nanoid() |
| | | }) |
| | | } |
| | | |
| | | // console.log(this.sheetName) |
| | | // console.log(this.tableData) |
| | | // console.log(this.tableHeader) |
| | |
| | | } |
| | | if (this.sheetName.indexOf('往来单位类型') !== -1 && this.sheetName.indexOf('往来单位') !== -1) { |
| | | const res = this.handleContactUnitListSubmitData() |
| | | if (res.code !== '200') { |
| | | return this.$message.info(res.message) |
| | | } |
| | | } |
| | | |
| | | if (this.sheetName.indexOf('仓库设置') !== -1) { |
| | | const res = this.handleWarehouseListSubmitData() |
| | | if (res.code !== '200') { |
| | | return this.$message.info(res.message) |
| | | } |
| | | } |
| | | |
| | | if (this.sheetName.indexOf('库位设置') !== -1) { |
| | | const res = this.handleStorageListSubmitData() |
| | | if (res.code !== '200') { |
| | | return this.$message.info(res.message) |
| | | } |
| | |
| | | |
| | | return { code: '200', message: '成功!' } |
| | | }, |
| | | // 处理仓库设置提交数据 |
| | | handleWarehouseListSubmitData() { |
| | | let flag = true |
| | | let msg = '' |
| | | if ([...new Set(this.tableData[0].map(i => i['*仓库编号(唯一)']))].length !== this.tableData[0].length) { |
| | | return this.$message.info('编码不能重复!') |
| | | } |
| | | this.tableData[0].forEach(j => { |
| | | if (!j['*仓库编号(唯一)']) { |
| | | flag = false |
| | | msg = '*仓库编号(唯一)' |
| | | } |
| | | if (!j['*仓库名称']) { |
| | | flag = false |
| | | msg = '*仓库名称' |
| | | } |
| | | if (!j['*状态']) { |
| | | flag = false |
| | | msg = '*状态' |
| | | } |
| | | if (!j['*库位管理']) { |
| | | flag = false |
| | | msg = '*库位管理' |
| | | } |
| | | }) |
| | | |
| | | if (!flag) { |
| | | return { code: '301', message: msg + '不能为空!' } |
| | | } |
| | | |
| | | this.tableData[0].map(item => { |
| | | delete (item.uuid) |
| | | }) |
| | | |
| | | return { code: '200', message: '成功!' } |
| | | }, |
| | | // 处理库位设置提交数据 |
| | | handleStorageListSubmitData() { |
| | | let flag = true |
| | | let msg = '' |
| | | if ([...new Set(this.tableData[0].map(i => i['*库位编号(唯一)']))].length !== this.tableData[0].length) { |
| | | return this.$message.info('编码不能重复!') |
| | | } |
| | | this.tableData[0].forEach(j => { |
| | | if (!j['*库位编号(唯一)']) { |
| | | flag = false |
| | | msg = '*库位编号(唯一)不能为空!' |
| | | } |
| | | if (!j['*库位名称']) { |
| | | flag = false |
| | | msg = '*库位名称不能为空!' |
| | | } |
| | | if (!j['*所属仓库编码']) { |
| | | flag = false |
| | | msg = '*所属仓库编码不能为空!' |
| | | } |
| | | if (!j['*状态']) { |
| | | flag = false |
| | | msg = '*状态不能为空!' |
| | | } |
| | | if (j['上级库位编码'] === j['*库位编号(唯一)']) { |
| | | flag = false |
| | | msg = '*库位编号(唯一)与上级库位编码不能相同!' |
| | | } |
| | | }) |
| | | |
| | | if (!flag) { |
| | | return { code: '301', message: msg } |
| | | } |
| | | |
| | | this.tableData[0].map(item => { |
| | | delete (item.uuid) |
| | | }) |
| | | |
| | | return { code: '200', message: '成功!' } |
| | | }, |
| | | // 处理存货档案提交数据 |
| | | handleInventoryListSubmitData() { |
| | | |
| | | }, |
| | | |
| | | // 获取模板 |
| | | async getExcelModelData() { |
| | | const { data: res } = await ExcelModelData() |
| | |
| | | const res = await DownLoadExcel({ FileCode: this.excelCode }) |
| | | window.location.href = res.data |
| | | }, |
| | | |
| | | handleClose() { |
| | | this.dialogTableData = [] |
| | | }, |
| | |
| | | '描述': '' |
| | | }) |
| | | } |
| | | // 往来单位 |
| | | if (this.sheetName.indexOf('往来单位类型') !== -1 && this.activeName === '0') { |
| | | this.tableData[0].unshift({ |
| | | uuid: nanoid(), |
| | |
| | | '地址': '' |
| | | }) |
| | | } |
| | | // 仓库设置 |
| | | if (this.sheetName.indexOf('仓库设置') !== -1) { |
| | | this.tableData[0].unshift({ |
| | | uuid: nanoid(), |
| | | '*仓库编号(唯一)': '', |
| | | '*仓库名称': '', |
| | | '*状态': '0', |
| | | '*库位管理': '0', |
| | | '描述': '' |
| | | }) |
| | | } |
| | | // 库位设置 |
| | | if (this.sheetName.indexOf('库位设置') !== -1) { |
| | | this.tableData[0].unshift({ |
| | | uuid: nanoid(), |
| | | '*库位编号(唯一)': '', |
| | | '*库位名称': '', |
| | | '*所属仓库编码': '', |
| | | '上级库位编码': '', |
| | | '*状态': '0', |
| | | '描述': '' |
| | | }) |
| | | } |
| | | |
| | | // 存货档案 |
| | | if (this.sheetName.indexOf('存货类型') !== -1 && this.activeName === '0') { |
| | | this.tableData[0].unshift({ |
| | | uuid: nanoid(), |
| | | '*存货分类编码(唯一)': '', |
| | | '*存货分类名称': '', |
| | | '上级编码': '' |
| | | }) |
| | | } |
| | | if (this.sheetName.indexOf('存货') !== -1 && this.activeName === '1') { |
| | | this.tableData[1].unshift({ // 还未写完 |
| | | uuid: nanoid(), |
| | | '*往来单位编号(唯一)': '', |
| | | '*往来单位名称': '', |
| | | '*状态': 'Y', |
| | | '*往来单位类型编码': '', |
| | | '联系人': '', |
| | | '联系方式': '', |
| | | '地址': '' |
| | | }) |
| | | } |
| | | }, |
| | | delRow(row) { |
| | | // 针对单sheet |