jpc_param.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  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. JpcParamResult[JV.NODE_SIGNATURE_AUDIT_PARAMS] = {};
  8. const me = this;
  9. if (rptTpl[JV.NODE_DISCRETE_PARAMS]) {
  10. for (let i = 0; i < rptTpl[JV.NODE_DISCRETE_PARAMS].length; i++) {
  11. me.createSingle(rptTpl[JV.NODE_DISCRETE_PARAMS][i], JpcParamResult, rptTpl, i);
  12. }
  13. }
  14. if (rptTpl[JV.NODE_DYNAMIC_DATE_PARAMS]) {
  15. for (let i = 0; i < rptTpl[JV.NODE_DYNAMIC_DATE_PARAMS].length; i++) {
  16. me.createSingle(rptTpl[JV.NODE_DYNAMIC_DATE_PARAMS][i], JpcParamResult[JV.NODE_DYNAMIC_DATE_PARAMS], rptTpl, i);
  17. }
  18. }
  19. if (rptTpl[JV.NODE_SIGNATURE_AUDIT_PARAMS]) {
  20. for (let i = 0; i < rptTpl[JV.NODE_SIGNATURE_AUDIT_PARAMS].length; i++) {
  21. me.createSingle(rptTpl[JV.NODE_SIGNATURE_AUDIT_PARAMS][i], JpcParamResult[JV.NODE_SIGNATURE_AUDIT_PARAMS], rptTpl, i);
  22. }
  23. }
  24. return JpcParamResult;
  25. },
  26. createSingle: function(paramNode, parentObj, rptTpl, sequence) {
  27. if (paramNode && paramNode[JV.PROP_ID]) {
  28. const item = {};
  29. item[JV.PROP_ID] = paramNode[JV.PROP_ID];
  30. item[JV.PROP_NAME] = paramNode[JV.PROP_NAME];
  31. item[JV.PROP_DATA_TYPE] = paramNode[JV.PROP_DATA_TYPE];
  32. if (paramNode[JV.PROP_DFT_VALUE]) item[JV.PROP_DFT_VALUE] = paramNode[JV.PROP_DFT_VALUE];
  33. item.DataSeq = sequence;
  34. parentObj[JV.PROP_ID + '_' + paramNode[JV.PROP_ID]] = item;
  35. }
  36. },
  37. };
  38. module.exports = JpcParam;