map sheet select
This commit is contained in:
@@ -36,22 +36,33 @@
|
||||
<div class="row q-gutter-y-sm q-col-gutter-md">
|
||||
<q-file
|
||||
dense
|
||||
class="col-12"
|
||||
class="col"
|
||||
v-model="ld.xlsFileName"
|
||||
label="Bordro Dosyası"
|
||||
clearable
|
||||
@update:modelValue="loadFile"
|
||||
/>
|
||||
|
||||
|
||||
<q-select
|
||||
class="col"
|
||||
v-model="ld.bordroSheet"
|
||||
:options="ld.sheets"
|
||||
label="Bordro Sayfası"
|
||||
dense
|
||||
:disable="!ld.xlsFileName"
|
||||
>
|
||||
<template v-slot:after>
|
||||
<q-btn
|
||||
outline
|
||||
color="pcolor1"
|
||||
label="Bordro Fişi Oluştur"
|
||||
no-caps
|
||||
@click="loadFile"
|
||||
:disable="!ld.xlsFileName"
|
||||
no-caps
|
||||
@click="doProcess"
|
||||
:disable="!ld.bordroSheet"
|
||||
/>
|
||||
</template>
|
||||
</q-file>
|
||||
</q-select>
|
||||
</div>
|
||||
</q-card-section>
|
||||
</q-card>
|
||||
@@ -73,6 +84,10 @@ const $q = useQuasar()
|
||||
const ld = reactive({
|
||||
companyID: null,
|
||||
companies: [],
|
||||
|
||||
sheets: [],
|
||||
bordroSheet: '',
|
||||
|
||||
xlsFileName: null,
|
||||
selectedVal: '',
|
||||
alreadySelectedValFields: {},
|
||||
@@ -171,6 +186,9 @@ const load = function () {
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
let workbook = null
|
||||
|
||||
const loadFile = function () {
|
||||
const reader = new FileReader()
|
||||
/*
|
||||
@@ -181,19 +199,38 @@ const loadFile = function () {
|
||||
|
||||
*/
|
||||
|
||||
$q.loading.show()
|
||||
|
||||
reader.onload = function (e) {
|
||||
const uin = new Uint8Array(e.target.result)
|
||||
readXLS(uin)
|
||||
$q.loading.hide()
|
||||
|
||||
ld.sheets.splice(0)
|
||||
workbook = read(uin)
|
||||
ld.sheets.push(...workbook.SheetNames)
|
||||
}
|
||||
|
||||
reader.readAsArrayBuffer(ld.xlsFileName)
|
||||
try {
|
||||
$q.loading.show()
|
||||
reader.readAsArrayBuffer(ld.xlsFileName)
|
||||
} catch (err) {
|
||||
showAxiosError(err)
|
||||
} finally {
|
||||
$q.loading.hide()
|
||||
}
|
||||
}
|
||||
|
||||
const readXLS = function (inb) {
|
||||
const workbook = read(inb)
|
||||
const sheet = workbook.Sheets[workbook.SheetNames[0]]
|
||||
const doProcess = function () {
|
||||
try {
|
||||
$q.loading.show()
|
||||
processXLS()
|
||||
} catch (err) {
|
||||
showAxiosError(err)
|
||||
} finally {
|
||||
$q.loading.hide()
|
||||
}
|
||||
}
|
||||
|
||||
const processXLS = function () {
|
||||
const sheet = workbook.Sheets[ld.bordroSheet]
|
||||
const rawData = utils.sheet_to_json(sheet, { header: 1 })
|
||||
|
||||
const bordro = []
|
||||
@@ -220,10 +257,16 @@ const readXLS = function (inb) {
|
||||
const kriter = tmpl.kriterler[k]
|
||||
const kriterVal = row[kriter.colNro]
|
||||
const map = kriter.mappings[kriterVal]
|
||||
const tmpHesapKod = map[veri.fieldName]
|
||||
if (tmpHesapKod) {
|
||||
hesapKod = tmpHesapKod
|
||||
|
||||
if ((map !== undefined) && (map !== null)) {
|
||||
const tmpHesapKod = map[veri.fieldName]
|
||||
if (tmpHesapKod) {
|
||||
hesapKod = tmpHesapKod
|
||||
}
|
||||
} else {
|
||||
console.log(kriter)
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
bordroRow['Hesap'] = hesapKod
|
||||
|
||||
Reference in New Issue
Block a user