jpc_param.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. 'use strict';
  2. const JV = require('./jpc_value_define');
  3. const JpcParam = {
  4. createNew: function(rptTpl) {
  5. const JpcParamResult = {};
  6. JpcParamResult[JV.NODE_DYNAMIC_DATE_PARAMS] = {};
  7. const me = this;
  8. if (rptTpl[JV.NODE_DISCRETE_PARAMS]) {
  9. for (let i = 0; i < rptTpl[JV.NODE_DISCRETE_PARAMS].length; i++) {
  10. me.createSingle(rptTpl[JV.NODE_DISCRETE_PARAMS][i], JpcParamResult, rptTpl, i);
  11. }
  12. }
  13. if (rptTpl[JV.NODE_DYNAMIC_DATE_PARAMS]) {
  14. for (let i = 0; i < rptTpl[JV.NODE_DYNAMIC_DATE_PARAMS].length; i++) {
  15. me.createSingle(rptTpl[JV.NODE_DYNAMIC_DATE_PARAMS][i], JpcParamResult[JV.NODE_DYNAMIC_DATE_PARAMS], rptTpl, i);
  16. }
  17. }
  18. if (rptTpl[JV.NODE_SIGNATURE_AUDIT_FIELDS]) {
  19. for (let i = 0; i < rptTpl[JV.NODE_SIGNATURE_AUDIT_FIELDS].length; i++) {
  20. me.createSingle(rptTpl[JV.NODE_SIGNATURE_AUDIT_FIELDS][i], JpcParamResult[JV.NODE_SIGNATURE_AUDIT_FIELDS], rptTpl, i);
  21. }
  22. }
  23. return JpcParamResult;
  24. },
  25. createSingle: function(paramNode, parentObj, rptTpl, sequence) {
  26. if (paramNode && paramNode[JV.PROP_ID]) {
  27. const item = {};
  28. item[JV.PROP_ID] = paramNode[JV.PROP_ID];
  29. item[JV.PROP_NAME] = paramNode[JV.PROP_NAME];
  30. item[JV.PROP_DATA_TYPE] = paramNode[JV.PROP_DATA_TYPE];
  31. if (paramNode[JV.PROP_DFT_VALUE]) item[JV.PROP_DFT_VALUE] = paramNode[JV.PROP_DFT_VALUE];
  32. item.DataSeq = sequence;
  33. parentObj[JV.PROP_ID + '_' + paramNode[JV.PROP_ID]] = item;
  34. }
  35. },
  36. };
  37. module.exports = JpcParam;