jpc_helper_common_output.js 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. let JV = require('../jpc_value_define');
  2. let JpcFieldHelper = require('./jpc_helper_field');
  3. let JpcCommonOutputHelper = {
  4. createCommonOutputWithoutDecorate: function (node, value, controls) {
  5. let rst = {};
  6. //1. font/style/control
  7. rst[JV.PROP_FONT] = node[[JV.PROP_FONT]];
  8. rst[JV.PROP_CONTROL] = node[[JV.PROP_CONTROL]];
  9. rst[JV.PROP_STYLE] = node[[JV.PROP_STYLE]];
  10. //2. value
  11. rst[JV.PROP_VALUE] = value;
  12. if (node[JV.PROP_FORMAT]) {
  13. if (!(isNaN(parseFloat(rst[JV.PROP_VALUE])))) {
  14. let dotIdx = node[JV.PROP_FORMAT].indexOf(".");
  15. if (dotIdx >= 0) {
  16. rst[JV.PROP_VALUE] = parseFloat(rst[JV.PROP_VALUE]).toFixed(node[JV.PROP_FORMAT].length - dotIdx - 1);
  17. } else {
  18. rst[JV.PROP_VALUE] = parseFloat(rst[JV.PROP_VALUE]).toFixed(0);
  19. }
  20. }
  21. }
  22. if (node[JV.PROP_PREFIX] && rst[JV.PROP_VALUE] != null) {
  23. rst[JV.PROP_VALUE] = node[JV.PROP_PREFIX] + rst[JV.PROP_VALUE];
  24. }
  25. if (node[JV.PROP_SUFFIX] && rst[JV.PROP_VALUE] != null) {
  26. rst[JV.PROP_VALUE] = rst[JV.PROP_VALUE] + node[JV.PROP_SUFFIX];
  27. }
  28. return rst;
  29. },
  30. createCommonOutput: function (node, value, controls) {
  31. let rst = {};
  32. //1. font/style/control
  33. rst[JV.PROP_FONT] = node[[JV.PROP_FONT]];
  34. rst[JV.PROP_CONTROL] = node[[JV.PROP_CONTROL]];
  35. rst[JV.PROP_STYLE] = node[[JV.PROP_STYLE]];
  36. //2. value
  37. rst[JV.PROP_VALUE] = value;
  38. JpcFieldHelper.decorateValue(rst, controls);
  39. if (node[JV.PROP_FORMAT]) {
  40. if (!(isNaN(parseFloat(rst[JV.PROP_VALUE])))) {
  41. let dotIdx = node[JV.PROP_FORMAT].indexOf(".");
  42. if (dotIdx >= 0) {
  43. rst[JV.PROP_VALUE] = parseFloat(rst[JV.PROP_VALUE]).toFixed(node[JV.PROP_FORMAT].length - dotIdx - 1);
  44. } else {
  45. rst[JV.PROP_VALUE] = parseFloat(rst[JV.PROP_VALUE]).toFixed(0);
  46. }
  47. }
  48. }
  49. if (node[JV.PROP_PREFIX] && rst[JV.PROP_VALUE] != null && rst[JV.PROP_VALUE] != "") {
  50. rst[JV.PROP_VALUE] = node[JV.PROP_PREFIX] + rst[JV.PROP_VALUE];
  51. }
  52. if (node[JV.PROP_SUFFIX] && rst[JV.PROP_VALUE] != null && rst[JV.PROP_VALUE] != "") {
  53. rst[JV.PROP_VALUE] = rst[JV.PROP_VALUE] + node[JV.PROP_SUFFIX];
  54. }
  55. return rst;
  56. }
  57. }
  58. module.exports = JpcCommonOutputHelper;