| | |
| | | item.indexOf('上级库位编码')!==-1|| |
| | | item.indexOf('规格型号')!==-1|| |
| | | item.indexOf('存货分类编码')!==-1|| |
| | | item.indexOf('计量方式')!==-1|| |
| | | |
| | | item.indexOf('计量单位/组名称')!==-1 |
| | | " |
| | | > |
| | |
| | | > |
| | | <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"> |
| | | <el-select |
| | | v-model="row[item]" |
| | | placeholder="请选择" |
| | | filterable |
| | | style="width:100%" |
| | | clearable |
| | | > |
| | | <el-option |
| | | v-for="item in meterMethodArr" |
| | | :key="item.code" |
| | | :label="item.name" |
| | | :value="item.code" |
| | |
| | | dialogVisible: false, |
| | | dialogTableData: [], |
| | | |
| | | meterMethodArr: [ |
| | | { code: 'S', name: '单计量' }, |
| | | { code: 'M', name: '多计量' } |
| | | ], |
| | | |
| | | activeName: '0'// tab选中值 |
| | | |
| | | } |
| | |
| | | |
| | | if (this.sheetName.indexOf('往来单位') !== -1) { |
| | | this.statusArr = [ |
| | | { code: 'Y', name: '正常' }, |
| | | { code: 'N', name: '停用' } |
| | | { code: '0', name: '正常' }, |
| | | { code: '1', name: '停用' } |
| | | ] |
| | | this.tableData[0].forEach(j => { |
| | | j.uuid = nanoid() |
| | |
| | | }) |
| | | } |
| | | |
| | | // console.log(this.sheetName) |
| | | // console.log(this.tableData) |
| | | // console.log(this.tableHeader) |
| | | if (this.sheetName.indexOf('存货分类') !== -1) { |
| | | this.statusArr = [ |
| | | { code: '0', name: '正常' }, |
| | | { code: '1', name: '停用' } |
| | | ] |
| | | this.tableData[0].forEach(j => { |
| | | j.uuid = nanoid() |
| | | }) |
| | | this.tableData[1].forEach(j => { |
| | | j['*状态'] = j['*状态'] ? this.statusArr.find(e => e.name === j['*状态']).code : '' |
| | | j['*计量方式'] = j['*计量方式'] ? this.meterMethodArr.find(e => e.name === j['*计量方式']).code : '0' |
| | | j['是否外购'] = j['是否外购'] ? this.isYesOrNo.find(e => e.name === j['是否外购']).code : '0' |
| | | j['是否销售'] = j['是否销售'] ? this.isYesOrNo.find(e => e.name === j['是否销售']).code : '0' |
| | | j['是否自制'] = j['是否自制'] ? this.isYesOrNo.find(e => e.name === j['是否自制']).code : '0' |
| | | j['是否生产消耗'] = j['是否生产消耗'] ? this.isYesOrNo.find(e => e.name === j['是否生产消耗']).code : '0' |
| | | j['是否委外'] = j['是否委外'] ? this.isYesOrNo.find(e => e.name === j['是否委外']).code : '0' |
| | | j.uuid = nanoid() |
| | | }) |
| | | } |
| | | }, |
| | | // 提交 |
| | | submit() { |
| | |
| | | |
| | | if (this.sheetName.indexOf('库位设置') !== -1) { |
| | | const res = this.handleStorageListSubmitData() |
| | | if (res.code !== '200') { |
| | | return this.$message.info(res.message) |
| | | } |
| | | } |
| | | if (this.sheetName.indexOf('存货分类') !== -1) { |
| | | const res = this.handleInventoryListSubmitData() |
| | | if (res.code !== '200') { |
| | | return this.$message.info(res.message) |
| | | } |
| | |
| | | } |
| | | if (!j['*往来单位名称']) { |
| | | flag = false |
| | | msg = '*往来单位名称' |
| | | msg = '*往来单位名称不能为空!' |
| | | } |
| | | if (!j['*状态']) { |
| | | flag = false |
| | |
| | | }, |
| | | // 处理存货档案提交数据 |
| | | handleInventoryListSubmitData() { |
| | | |
| | | }, |
| | | |
| | | // 获取模板 |
| | | async getExcelModelData() { |
| | | const { data: res } = await ExcelModelData() |
| | | this.excelArr = res |
| | | |
| | | if (window.location.hash.indexOf('?') !== -1) { |
| | | this.excelCode = window.location.hash.split('?')[1].split('=')[1] |
| | | let flag = true |
| | | let msg = '' |
| | | if ([...new Set(this.tableData[0].map(i => i['*存货分类编号(唯一)']))].length !== this.tableData[0].length) { |
| | | return this.$message.info('存货分类编号不能重复!') |
| | | } |
| | | }, |
| | | // 模板下载 |
| | | async getExcel() { |
| | | const res = await DownLoadExcel({ FileCode: this.excelCode }) |
| | | window.location.href = res.data |
| | | }, |
| | | handleClose() { |
| | | this.dialogTableData = [] |
| | | if ([...new Set(this.tableData[1].map(i => i['*存货编号(唯一)']))].length !== this.tableData[1].length) { |
| | | return this.$message.info('存货编号不能重复!') |
| | | } |
| | | this.tableData[0].forEach(j => { |
| | | if (!j['*存货分类编号(唯一)']) { |
| | | flag = false |
| | | msg = '*存货分类编号(唯一)不能为空!' |
| | | } |
| | | if (!j['*存货分类名称']) { |
| | | flag = false |
| | | msg = '*存货分类不能为空!' |
| | | } |
| | | if (j['*存货分类编号(唯一)'] === j['上级编码']) { |
| | | flag = false |
| | | msg = '*存货分类编号(唯一)与上级编码不能相同!' |
| | | } |
| | | }) |
| | | this.tableData[1].forEach(j => { |
| | | if (!j['*存货编号(唯一)']) { |
| | | flag = false |
| | | msg = '*存货编号(唯一)不能为空!' |
| | | } |
| | | if (!j['*存货名称']) { |
| | | flag = false |
| | | msg = '*存货名称不能为空!' |
| | | } |
| | | if (!j['*存货分类编码']) { |
| | | flag = false |
| | | msg = '*存货分类编码不能为空!' |
| | | } |
| | | if (!j['*状态']) { |
| | | flag = false |
| | | msg = '*状态不能为空!' |
| | | } |
| | | if (!j['*计量方式']) { |
| | | flag = false |
| | | msg = '*计量方式不能为空!' |
| | | } |
| | | if (!j['*计量单位/组名称']) { |
| | | flag = false |
| | | msg = '*计量单位/组名称不能为空!' |
| | | } |
| | | if (!(j['是否外购'] === '1' || j['是否销售'] === '1' || j['是否自制'] === '1' || j['是否生产消耗'] === '1' || j['是否委外'] === '1')) { |
| | | flag = false |
| | | msg = '存货属性必须要选择其一!' |
| | | } |
| | | }) |
| | | |
| | | if (!flag) { |
| | | return { code: '301', message: msg } |
| | | } |
| | | |
| | | this.tableData[0].map(item => { |
| | | delete (item.uuid) |
| | | }) |
| | | this.tableData[1].map(item => { |
| | | delete (item.uuid) |
| | | }) |
| | | |
| | | return { code: '200', message: '成功!' } |
| | | }, |
| | | // parents:用于返回的数组,childNode:要查询的节点,treeData:json树形数据 |
| | | findParent(parents, childNode, treeData) { |
| | |
| | | uuid: nanoid(), |
| | | '*往来单位编号(唯一)': '', |
| | | '*往来单位名称': '', |
| | | '*状态': 'Y', |
| | | '*状态': '0', |
| | | '*往来单位类型编码': '', |
| | | '联系人': '', |
| | | '联系方式': '', |
| | |
| | | '描述': '' |
| | | }) |
| | | } |
| | | |
| | | // 存货档案 |
| | | if (this.sheetName.indexOf('存货类型') !== -1 && this.activeName === '0') { |
| | | this.tableData[0].unshift({ |
| | |
| | | }) |
| | | } |
| | | if (this.sheetName.indexOf('存货') !== -1 && this.activeName === '1') { |
| | | this.tableData[1].unshift({ // 还未写完 |
| | | this.tableData[1].unshift({ |
| | | uuid: nanoid(), |
| | | '*往来单位编号(唯一)': '', |
| | | '*往来单位名称': '', |
| | | '*状态': 'Y', |
| | | '*往来单位类型编码': '', |
| | | '联系人': '', |
| | | '联系方式': '', |
| | | '地址': '' |
| | | '*存货编码(唯一)': '', |
| | | '*存货名称': '', |
| | | '规格型号': '', |
| | | '*存货分类编码': '', |
| | | '*状态': '0', |
| | | '*计量方式': '', |
| | | '计量单位/组名称': '', |
| | | '所属仓库编码': '', |
| | | '是否外购': '0', |
| | | '是否销售': '0', |
| | | '是否自制': '0', |
| | | '是否生产消耗': '0', |
| | | '是否委外': '0' |
| | | }) |
| | | } |
| | | }, |
| | |
| | | this.sheetName = [] |
| | | this.excelCode = '' |
| | | }, |
| | | handleClose() { |
| | | this.dialogTableData = [] |
| | | }, |
| | | // 获取模板 |
| | | async getExcelModelData() { |
| | | const { data: res } = await ExcelModelData() |
| | | this.excelArr = res |
| | | |
| | | if (window.location.hash.indexOf('?') !== -1) { |
| | | this.excelCode = window.location.hash.split('?')[1].split('=')[1] |
| | | } |
| | | }, |
| | | // 模板下载 |
| | | async getExcel() { |
| | | const res = await DownLoadExcel({ FileCode: this.excelCode }) |
| | | window.location.href = res.data |
| | | }, |
| | | async getSelectArr() { |
| | | await this.getPrentOrganization() |
| | | await this.getPostPermissions() |