Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class PositionType{
- constructor(positionByType, item){
- this.positionByType = positionByType
- this.item = item
- }
- initialize(positon, value){
- const attributes = this.getDesAA(positon)
- for (const [language, des_aa_n2] of Object.entries(attributes)) {
- this.positionType[positon.code][language][des_aa_n2] = value
- }
- }
- add(position){
- const attributes = this.getDesAA(position)
- for (const [language, des_aa_n2] of Object.entries(attributes)) {
- this.positionType[position.code][language][des_aa_n2].push(item)
- }
- }
- getPositionType(){
- return this.positionType;
- }
- getDesAA(item){
- return {
- 'es': item.des_aa_n2,
- 'pt': item.des_aa_n2_pt,
- 'en': item.des_aa_n2_en
- }
- }
- }
- class PositionTypeN4 extends PositionType{
- constructor(positionByType, item){
- super(positionByType, item)
- }
- getDesAA(item){
- return {
- 'es': item.des_aa_n2 + ' ' + item.des_aa_n4,
- 'pt': item.des_aa_n2_pt + ' ' + item.des_aa_n4_pt,
- 'en': item.des_aa_n2_en + ' ' + item.des_aa_n4_en
- }
- }
- }
- class PositionTypeNormal extends PositionType{
- constructor(positionByType, item){
- super(positionByType, item)
- }
- getDesAA(item){
- return {
- 'es': item.des_aa_n2,
- 'pt': item.des_aa_n2_pt,
- 'en': item.des_aa_n2_en
- }
- }
- }
- const mypositions = hasN4HarcodedCategory ? new PositionTypeN4(positionType, position) : new PositionTypeNormal(positionType, position)
- mypositions.initialize(position, [])
- mypositions.add(position)
- positionType = mypositions.getPositionType()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement