export default {
  buildPtspta(ptsptaObj) {
    let pts = ptsptaObj.pts;
    let ptspta = {
      rol: pts.rol,
      name: pts.nam,
      ptyinr: pts.ptyinr,
      ptainr: pts.ptainr,
      extkey: pts.extkey,
      dftdsp: pts.dftdsp,
      dftcur: pts.dftcur,
      dftact: pts.dftact,
      dftfeecur: pts.dftfeecur,
      dftactptainr: pts.dftactptainr,
      glggrpflg: pts.glggrpflg,
      adrblk: pts.adrblk
    };
    return ptspta;
  },
  buildCommonData(model, trnName) {
    let ptsptaList = [];
    if (model.brdgrp.prb.pts.extkey) {
      ptsptaList.push(this.buildPtspta(model.brdgrp.prb));
    }
    if (model.brdgrp.acb.pts.extkey) {
      ptsptaList.push(this.buildPtspta(model.brdgrp.acb));
    }
    if (model.brdgrp.rmb.pts.extkey) {
      ptsptaList.push(this.buildPtspta(model.brdgrp.rmb));
    }
    if (model.brdgrp.beb.pts.extkey) {
      ptsptaList.push(this.buildPtspta(model.brdgrp.beb));
    }
    if (model.brdgrp.shp.pts.extkey) {
      ptsptaList.push(this.buildPtspta(model.brdgrp.shp));
    }
    if (model.brtp.oth.pts.extkey) {
      ptsptaList.push(this.buildPtspta(model.brtp.oth));
    }

    if (model.brdgrp.apl.pts.extkey) {
      ptsptaList.push(this.buildPtspta(model.brdgrp.apl));
    }
    if (model.brdgrp.ben.pts.extkey) {
      ptsptaList.push(this.buildPtspta(model.brdgrp.ben));
    }

    let dataObj = {
      rec: {
        objtyp: 'BRD',
        objinr:model.brdgrp.rec.objinr,
        ownref: model.brdgrp.rec.ownref,
        opndat: model.brdgrp.rec.opndat,
        expdat: model.brdgrp.rec.expdat,
        branchInr: model.brdgrp.rec.branchinr,
        hndtyp: model.brdgrp.rec.hndtyp,
        gartyp: model.brdgrp.rec.gartyp,
        fingua: model.brdgrp.rec.fingua,
        fromflg: model.brdgrp.rec.fromflg,
        othersno: model.brdgrp.rec.othersno,
        sndto: model.brdgrp.rec.sndto,
        swiftflg: model.brtp.swiftflg,
        brduil: model.brdgrp.rec.brduil,
        purpos: model.brdgrp.rec.purpos,
        revflg: model.brdgrp.rec.revflg,
        cnfsta: model.brdgrp.rec.cnfsta,
        sftmt: model.sftmt,
        docprbrol: model.brdgrp.rec.docprbrol,
        docamt: model.setmod.docamt,
        doccur: model.setmod.doccur,
        matdat: model.brdgrp.rec.matdat,
        acpnowflg: model.brdgrp.rec.acpnowflg,
        docflg: model.brdgrp.rec.docflg,
      },
      cbsMap: {
        MAX: model.brdgrp.cbs.max,
        OPN1: model.brdgrp.cbs.opn1,
        OPN2: model.brdgrp.cbs.opn2,
        MAC: model.brdgrp.cbs.mac,
        MAC2: model.brdgrp.cbs.mac2,
        OPC2: model.brdgrp.cbs.opc2,
        CNF: model.brdgrp.cbs.cnf,
      },
      ptsList: ptsptaList,
      transName: trnName,
      userId: window.sessionStorage.userId ? window.sessionStorage.userId : 'ZL'
    };
    return dataObj
  },
  buildSetfeg(model, trnName) {
    let params = {
      ...this.buildCommonData(model, trnName),
      liaall: model.liaall,
      liaccv: model.liaccv,
      // doceot: model.trnmod.trndoc.doceot,
    };
    return params
  },
  buildSetglg(model, trnName) {
    let params = {
      ...this.buildCommonData(model, trnName),
      setfeg: model.setmod.setfeg,
      liaall: model.liaall,
      liaccv: model.liaccv,
    };
    return params
  },
  buildGlentry(model, trnName) {
    let params = {
      ...this.buildCommonData(model, trnName),
      liaallg: model.liaall.liaallg,
      setfog: model.setmod.setfog,
      setfeg: model.setmod.setfeg,
      setglg: model.setmod.setglg,
    };
    return params
  },
  buildEngp(model, trnName) {
    let params = {
      ...this.buildCommonData(model, trnName),
      liaallg: model.liaall.liaallg,
    };
    return params
  },
  buildDocpan(model, trnName) {
    let params = {
      ...this.buildCommonData(model, trnName),
    };
    return params
  },
  buildCcvpan(model, trnName) {
    let params = {
      ...this.buildCommonData(model, trnName),
      liaccvg: model.liaccv.liaccvg,
      oldamt: model.liaccv.oldamt,
      chgamt: model.liaccv.chgamt,
      concur: model.liaccv.concur,
    };
    return params
  },
  buildLimitbody(model, trnName) {
    let params = {
      ...this.buildCommonData(model, trnName),
      rec: {
        objtyp: 'BRD',
        objinr: model.brdgrp.rec.inr,
        ownref: model.brdgrp.rec.ownref,
      },
    };
    return params
  },
  buildDoctre(model, trnName) {
    let params = {
      ...this.buildCommonData(model, trnName),
      rec: {
        objtyp: 'BRD',
        objinr: model.brdgrp.rec.inr,
        ownref: model.brdgrp.rec.ownref,
        // swiftflg: model.brtp.swiftflg,
      },
    };
    return params
  },
  // 公共组件setmod中dsp字段改变,触发联动时候的入参
  buildSetgllAccts(model, trnName, setglg) {
    let params = {
      ...this.buildCommonData(model, trnName),
      setglg
    };
    return params
  }
}