|
@@ -75,6 +75,16 @@ const dbFullCode = {
|
|
|
document.getElementById('db-full-code-change').disabled = true;
|
|
|
$('#db-full-code-file').change(dbFullCode.loadXlsx);
|
|
|
},
|
|
|
+ _completeFullCode: function (b, index) {
|
|
|
+ for (let j = index-1; j >= 0; j--) {
|
|
|
+ if (this.dealBills[j].tag === -1) continue;
|
|
|
+ if (this.dealBills[j].tag !== b.tag && this.dealBills[j].level < 4) {
|
|
|
+ b.full_code = this.dealBills[j].full_code + b.code;
|
|
|
+ b.level = this.dealBills[j].level + 1;
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
change: function () {
|
|
|
const regChar = /^-[a-zA-Z]$/, regNum = /^-[0-9]{1,2}$/, regCode = /^[0-9]{3,4}((-[0-9]{1,2})|(-[a-zA-Z]))*$/;
|
|
|
let invalid = 0;
|
|
@@ -82,24 +92,16 @@ const dbFullCode = {
|
|
|
if (regCode.test(db.code)) {
|
|
|
db.tag = 0;
|
|
|
db.full_code = db.code;
|
|
|
+ db.level = db.full_code.split('-').length;
|
|
|
} else if (regNum.test(db.code)) {
|
|
|
db.tag = 1;
|
|
|
- for (let j = i-1; j >= 0; j--) {
|
|
|
- if (this.dealBills[j].tag !== db.tag) {
|
|
|
- db.full_code = this.dealBills[j].full_code + db.code;
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
+ this._completeFullCode(db, i);
|
|
|
} else if (regChar.test(db.code)) {
|
|
|
db.tag = 2;
|
|
|
- for (let j = i-1; j >= 0; j--) {
|
|
|
- if (this.dealBills[j].tag !== db.tag) {
|
|
|
- db.full_code = this.dealBills[j].full_code + db.code;
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
+ this._completeFullCode(db, i);
|
|
|
} else {
|
|
|
db.tag = -1;
|
|
|
+ db.full_code = '';
|
|
|
invalid += 1;
|
|
|
}
|
|
|
}
|