@things-factory/integration-sftp 5.0.0-alpha.5 → 5.0.0-alpha.50

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist-server/controllers/herbalife/apis/create-serial-number.js +46 -0
  2. package/dist-server/controllers/herbalife/apis/create-serial-number.js.map +1 -0
  3. package/dist-server/controllers/herbalife/apis/create-shipment.js +59 -3
  4. package/dist-server/controllers/herbalife/apis/create-shipment.js.map +1 -1
  5. package/dist-server/controllers/herbalife/apis/index.js +1 -0
  6. package/dist-server/controllers/herbalife/apis/index.js.map +1 -1
  7. package/dist-server/controllers/herbalife/herbalife.js +15 -62
  8. package/dist-server/controllers/herbalife/herbalife.js.map +1 -1
  9. package/dist-server/controllers/sftp-api/index.js +7 -0
  10. package/dist-server/controllers/sftp-api/index.js.map +1 -1
  11. package/dist-server/service/sftp/sftp-mutation.js +56 -39
  12. package/dist-server/service/sftp/sftp-mutation.js.map +1 -1
  13. package/dist-server/sftp-const.js +5 -1
  14. package/dist-server/sftp-const.js.map +1 -1
  15. package/dist-server/sftp-s3.js +2 -2
  16. package/dist-server/sftp-s3.js.map +1 -1
  17. package/dist-server/util/generate-files.js +30 -0
  18. package/dist-server/util/generate-files.js.map +1 -0
  19. package/dist-server/util/index.js +1 -1
  20. package/dist-server/util/index.js.map +1 -1
  21. package/package.json +7 -7
  22. package/server/controllers/herbalife/apis/create-serial-number.ts +50 -0
  23. package/server/controllers/herbalife/apis/create-shipment.ts +68 -3
  24. package/server/controllers/herbalife/apis/index.ts +1 -0
  25. package/server/controllers/herbalife/herbalife.ts +18 -71
  26. package/server/controllers/sftp-api/index.ts +3 -0
  27. package/server/service/sftp/sftp-mutation.ts +1 -2
  28. package/server/sftp-const.ts +4 -0
  29. package/server/sftp-s3.ts +3 -2
  30. package/server/util/generate-files.ts +33 -0
  31. package/server/util/index.ts +1 -1
  32. package/server/util/generate-file.ts +0 -30
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createSerialNumber = void 0;
4
+ const sftp_const_1 = require("../../../sftp-const");
5
+ function createSerialNumber() {
6
+ return {
7
+ method: 'post',
8
+ path: '{folderPath}/{folderType}/sn/data',
9
+ denormalize(req) {
10
+ let { releaseGood, inventoryItems, sftp } = req;
11
+ let { folderPath, platform } = sftp;
12
+ const folderType = sftp.isDevelopment ? `dev` : `prd`;
13
+ const backupPath = `${sftp_const_1.BACKUPPATH}${platform}/${folderType}`;
14
+ let responseFilePattern = JSON.parse(sftp.responseFilePattern);
15
+ const { snSuffix, fileExtension, snRunningNumberDigit, snSequence } = responseFilePattern;
16
+ let newSeq = parseFloat(snSequence) + 1;
17
+ let newSequence = newSeq.toString().padStart(snRunningNumberDigit, '0');
18
+ let newResponseFilePattern = JSON.stringify(Object.assign(Object.assign({}, responseFilePattern), { snSequence: newSeq.toString() }));
19
+ sftp = Object.assign(Object.assign({}, sftp), { responseFilePattern: newResponseFilePattern });
20
+ const today = new Date();
21
+ const year = today.getFullYear().toString();
22
+ const month = (today.getMonth() + 1).toString().padStart(2, '0');
23
+ const day = today.getDate().toString().padStart(2, '0');
24
+ const newDate = day + month + year;
25
+ let title = snSuffix ? snSuffix : ``;
26
+ title += `_` + newDate;
27
+ title += `_` + newSequence;
28
+ title += fileExtension ? `.` + fileExtension : ``;
29
+ let content = '';
30
+ const orderNo = releaseGood.refNo;
31
+ for (let i = 0; i < inventoryItems.length; i++) {
32
+ let serialNumber = inventoryItems[i].serialNumber;
33
+ content += orderNo + '|' + serialNumber + '\n';
34
+ }
35
+ return {
36
+ resource: { folderPath, folderType },
37
+ payload: { title, content, sftp, backupPath }
38
+ };
39
+ },
40
+ normalize(res) {
41
+ return res;
42
+ }
43
+ };
44
+ }
45
+ exports.createSerialNumber = createSerialNumber;
46
+ //# sourceMappingURL=create-serial-number.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-serial-number.js","sourceRoot":"","sources":["../../../../server/controllers/herbalife/apis/create-serial-number.ts"],"names":[],"mappings":";;;AAAA,oDAAgD;AAEhD,SAAgB,kBAAkB;IAChC,OAAO;QACL,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,mCAAmC;QACzC,WAAW,CAAC,GAAG;YACb,IAAI,EAAE,WAAW,EAAE,cAAc,EAAE,IAAI,EAAE,GAAG,GAAG,CAAA;YAC/C,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;YACnC,MAAM,UAAU,GAAW,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAA;YAC7D,MAAM,UAAU,GAAW,GAAG,uBAAU,GAAG,QAAQ,IAAI,UAAU,EAAE,CAAA;YAEnE,IAAI,mBAAmB,GAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;YACnE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,oBAAoB,EAAE,UAAU,EAAE,GAAG,mBAAmB,CAAA;YACzF,IAAI,MAAM,GAAW,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;YAC/C,IAAI,WAAW,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAA;YACvE,IAAI,sBAAsB,GAAW,IAAI,CAAC,SAAS,iCAC9C,mBAAmB,KACtB,UAAU,EAAE,MAAM,CAAC,QAAQ,EAAE,IAC7B,CAAA;YACF,IAAI,mCAAQ,IAAI,KAAE,mBAAmB,EAAE,sBAAsB,GAAE,CAAA;YAE/D,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAA;YACxB,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAA;YAC3C,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;YAChE,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;YACvD,MAAM,OAAO,GAAG,GAAG,GAAG,KAAK,GAAG,IAAI,CAAA;YAElC,IAAI,KAAK,GAAW,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAA;YAC5C,KAAK,IAAI,GAAG,GAAG,OAAO,CAAA;YACtB,KAAK,IAAI,GAAG,GAAG,WAAW,CAAA;YAC1B,KAAK,IAAI,aAAa,CAAC,CAAC,CAAC,GAAG,GAAG,aAAa,CAAC,CAAC,CAAC,EAAE,CAAA;YAEjD,IAAI,OAAO,GAAW,EAAE,CAAA;YACxB,MAAM,OAAO,GAAW,WAAW,CAAC,KAAK,CAAA;YACzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC9C,IAAI,YAAY,GAAW,cAAc,CAAC,CAAC,CAAC,CAAC,YAAY,CAAA;gBACzD,OAAO,IAAI,OAAO,GAAG,GAAG,GAAG,YAAY,GAAG,IAAI,CAAA;aAC/C;YAED,OAAO;gBACL,QAAQ,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;gBACpC,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE;aAC9C,CAAA;QACH,CAAC;QACD,SAAS,CAAC,GAAG;YACX,OAAO,GAAG,CAAA;QACZ,CAAC;KACF,CAAA;AACH,CAAC;AA/CD,gDA+CC"}
@@ -1,17 +1,73 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createShipment = void 0;
4
+ const sftp_const_1 = require("../../../sftp-const");
4
5
  function createShipment() {
5
6
  return {
6
7
  method: 'post',
7
8
  path: '{folderPath}/{folderType}/oc/data',
8
9
  denormalize(req) {
9
- const { releaseGood, orderInventories, sftp } = req;
10
- const { folderPath } = sftp;
10
+ let { releaseGood, orderInventories, sftp } = req;
11
+ let { folderPath, platform } = sftp;
11
12
  const folderType = sftp.isDevelopment ? `dev` : `prd`;
13
+ const backupPath = `${sftp_const_1.BACKUPPATH}${platform}/${folderType}`;
14
+ let responseFilePattern = JSON.parse(sftp.responseFilePattern);
15
+ const { suffix, fileExtension, runningNumberDigit, sequence } = responseFilePattern;
16
+ let newSeq = parseFloat(sequence) + 1;
17
+ let newSequence = newSeq.toString().padStart(runningNumberDigit, '0');
18
+ let newResponseFilePattern = JSON.stringify(Object.assign(Object.assign({}, responseFilePattern), { sequence: newSeq.toString() }));
19
+ sftp = Object.assign(Object.assign({}, sftp), { responseFilePattern: newResponseFilePattern });
20
+ const warehouseNumber = releaseGood.refNo2;
21
+ let title = suffix ? suffix : ``;
22
+ title += newSequence;
23
+ title += warehouseNumber ? `_` + warehouseNumber : ``;
24
+ title += fileExtension ? `.` + fileExtension : ``;
25
+ const orderNoColumn = 15;
26
+ const shipmentColumn = 27;
27
+ const trackingNoColumn = 20;
28
+ const refNoLength = releaseGood.refNo.length;
29
+ let content = `1710` + releaseGood.refNo;
30
+ let spaceNeeded = orderNoColumn - refNoLength;
31
+ for (let i = 0; i < spaceNeeded; i++) {
32
+ content += ` `;
33
+ }
34
+ content += warehouseNumber;
35
+ content += `001000001`;
36
+ for (let i = 0; i < shipmentColumn; i++) {
37
+ content += ` `;
38
+ }
39
+ content += `000000 `;
40
+ for (let i = 0; i < trackingNoColumn; i++) {
41
+ content += ` `;
42
+ }
43
+ content += `000000000000 `;
44
+ const today = new Date();
45
+ const year = today.getFullYear().toString();
46
+ const month = (today.getMonth() + 1).toString().padStart(2, '0');
47
+ const day = today.getDate().toString().padStart(2, '0');
48
+ const newDate = year + month + day;
49
+ content += newDate + '\n';
50
+ for (let i = 0; i < orderInventories.length; i++) {
51
+ const orderInventory = orderInventories[i];
52
+ let sku = orderInventory.product.brandSku;
53
+ content += `1810` + releaseGood.refNo;
54
+ for (let i = 0; i < spaceNeeded; i++) {
55
+ content += ` `;
56
+ }
57
+ const idx = (i + 1).toString().padStart(2, '0');
58
+ const productCode = sku.substring(0, 4);
59
+ content += idx + `000000` + productCode;
60
+ let productCodeSpaceNeeded = 7 - productCode.length;
61
+ for (let i = 0; i < productCodeSpaceNeeded; i++) {
62
+ content += ` `;
63
+ }
64
+ const orderedQty = orderInventory.releaseQty.toString().padStart(4, '0');
65
+ const pickedQty = orderInventory.pickedQty.toString().padStart(4, '0');
66
+ content += orderedQty + pickedQty + '\n';
67
+ }
12
68
  return {
13
69
  resource: { folderPath, folderType },
14
- payload: { releaseGood, orderInventories, sftp, folderType }
70
+ payload: { title, content, sftp, backupPath }
15
71
  };
16
72
  },
17
73
  normalize(res) {
@@ -1 +1 @@
1
- {"version":3,"file":"create-shipment.js","sourceRoot":"","sources":["../../../../server/controllers/herbalife/apis/create-shipment.ts"],"names":[],"mappings":";;;AAAA,SAAgB,cAAc;IAC5B,OAAO;QACL,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,mCAAmC;QACzC,WAAW,CAAC,GAAG;YACb,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,IAAI,EAAE,GAAG,GAAG,CAAA;YACnD,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAA;YAC3B,MAAM,UAAU,GAAW,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAA;YAE7D,OAAO;gBACL,QAAQ,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;gBACpC,OAAO,EAAE,EAAE,WAAW,EAAE,gBAAgB,EAAE,IAAI,EAAE,UAAU,EAAE;aAC7D,CAAA;QACH,CAAC;QACD,SAAS,CAAC,GAAG;YACX,OAAO,GAAG,CAAA;QACZ,CAAC;KACF,CAAA;AACH,CAAC;AAlBD,wCAkBC"}
1
+ {"version":3,"file":"create-shipment.js","sourceRoot":"","sources":["../../../../server/controllers/herbalife/apis/create-shipment.ts"],"names":[],"mappings":"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"}
@@ -17,4 +17,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./echo"), exports);
18
18
  __exportStar(require("./get-outbound-order"), exports);
19
19
  __exportStar(require("./create-shipment"), exports);
20
+ __exportStar(require("./create-serial-number"), exports);
20
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/controllers/herbalife/apis/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAsB;AACtB,uDAAoC;AACpC,oDAAiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../server/controllers/herbalife/apis/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,yCAAsB;AACtB,uDAAoC;AACpC,oDAAiC;AACjC,yDAAsC"}
@@ -4,7 +4,7 @@ exports.Herbalife = void 0;
4
4
  require("../../sftp-s3");
5
5
  const xml_js_1 = require("xml-js");
6
6
  const sftp_const_1 = require("../../sftp-const");
7
- const generate_file_1 = require("../../util/generate-file");
7
+ const generate_files_1 = require("../../util/generate-files");
8
8
  const debug = require('debug')('things-factory:integration-sftp:herbalife');
9
9
  class Herbalife {
10
10
  constructor() { }
@@ -17,69 +17,22 @@ class Herbalife {
17
17
  return result;
18
18
  }
19
19
  async post(path, data = {}) {
20
- let sftp = data.sftp;
21
- let releaseGood = data.releaseGood;
22
- let orderInventories = data.orderInventories;
23
- let responseFilePattern = JSON.parse(sftp.responseFilePattern);
24
- const { suffix, warehouseCode, fileExtension, runningNumberDigit, sequence } = responseFilePattern;
25
- let newSeq = parseFloat(sequence) + 1;
26
- let newSequence = newSeq.toString().padStart(runningNumberDigit, '0');
27
- let newResponseFilePattern = JSON.stringify(Object.assign(Object.assign({}, responseFilePattern), { sequence: newSeq.toString() }));
28
- sftp = Object.assign(Object.assign({}, sftp), { responseFilePattern: newResponseFilePattern });
29
- const warehouseNumber = releaseGood.refNo2;
30
- let title = suffix ? suffix : ``;
31
- title += newSequence;
32
- title += warehouseNumber ? `_` + warehouseNumber : ``;
33
- title += fileExtension ? `.` + fileExtension : ``;
34
- const orderNoColumn = 15;
35
- const shipmentColumn = 27;
36
- const trackingNoColumn = 20;
37
- const refNoLength = releaseGood.refNo.length;
38
- let content = `1710` + releaseGood.refNo;
39
- let spaceNeeded = orderNoColumn - refNoLength;
40
- for (let i = 0; i < spaceNeeded; i++) {
41
- content += ` `;
42
- }
43
- content += warehouseNumber;
44
- content += `001000001`;
45
- for (let i = 0; i < shipmentColumn; i++) {
46
- content += ` `;
47
- }
48
- content += `000000 `;
49
- for (let i = 0; i < trackingNoColumn; i++) {
50
- content += ` `;
51
- }
52
- content += `000000000000 `;
53
- const today = new Date();
54
- const year = today.getFullYear().toString();
55
- const month = (today.getMonth() + 1).toString().padStart(2, '0');
56
- const day = today.getDate().toString().padStart(2, '0');
57
- const newDate = year + month + day;
58
- content += newDate + '\n';
59
- for (let i = 0; i < orderInventories.length; i++) {
60
- const orderInventory = orderInventories[i];
61
- let sku = orderInventory.product.brandSku;
62
- content += `1810` + releaseGood.refNo;
63
- for (let i = 0; i < spaceNeeded; i++) {
64
- content += ` `;
65
- }
66
- const idx = (i + 1).toString().padStart(2, '0');
67
- const productCode = sku.substring(0, 4);
68
- content += idx + `000000` + productCode;
69
- let productCodeSpaceNeeded = 7 - productCode.length;
70
- for (let i = 0; i < productCodeSpaceNeeded; i++) {
71
- content += ` `;
20
+ const { title, content, sftp, backupPath } = data;
21
+ let params = [
22
+ {
23
+ title,
24
+ uploadPath: path,
25
+ content
72
26
  }
73
- const orderedQty = orderInventory.releaseQty.toString().padStart(4, '0');
74
- const pickedQty = orderInventory.pickedQty.toString().padStart(4, '0');
75
- content += orderedQty + pickedQty + '\n';
27
+ ];
28
+ if (backupPath) {
29
+ params.push({
30
+ title,
31
+ uploadPath: backupPath,
32
+ content
33
+ });
76
34
  }
77
- const params = {
78
- title,
79
- uploadPath: path,
80
- content
81
- };
82
- await (0, generate_file_1.generateFile)(params);
35
+ await (0, generate_files_1.generateFiles)(params);
83
36
  return sftp;
84
37
  }
85
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"herbalife.js","sourceRoot":"","sources":["../../../server/controllers/herbalife/herbalife.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"herbalife.js","sourceRoot":"","sources":["../../../server/controllers/herbalife/herbalife.ts"],"names":[],"mappings":";;;AAAA,yBAAsB;AAEtB,mCAA+B;AAG/B,iDAAkD;AAClD,8DAAyD;AAEzD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,2CAA2C,CAAC,CAAA;AAI3E,MAAa,SAAS;IACpB,gBAAe,CAAC;IAEhB,KAAK,CAAC,GAAG,CAAC,IAAY,EAAE,OAAY,EAAE;QACpC,MAAM,UAAU,GAAQ,MAAM,4BAAe,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;QACrE,MAAM,IAAI,GAAQ,IAAA,eAAM,EAAC,UAAU,EAAE;YACnC,OAAO,EAAE,IAAI;SACd,CAAC,CAAA;QACF,MAAM,MAAM,qBAAa,IAAI,CAAE,CAAA;QAC/B,OAAO,MAAM,CAAA;IACf,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,IAAY,EAAE,OAAY,EAAE;QACrC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,GACxC,IAAI,CAAA;QAEN,IAAI,MAAM,GAAU;YAClB;gBACE,KAAK;gBACL,UAAU,EAAE,IAAI;gBAChB,OAAO;aACR;SACF,CAAA;QAED,IAAI,UAAU,EAAE;YACd,MAAM,CAAC,IAAI,CAAC;gBACV,KAAK;gBACL,UAAU,EAAE,UAAU;gBACtB,OAAO;aACR,CAAC,CAAA;SACH;QACD,MAAM,IAAA,8BAAa,EAAC,MAAM,CAAC,CAAA;QAE3B,OAAO,IAAI,CAAA;IACb,CAAC;CACF;AAnCD,8BAmCC"}
@@ -33,6 +33,7 @@ class SftpAPI {
33
33
  static echo(sftp, req) { }
34
34
  static getOutboundOrder(sftp, req) { }
35
35
  static createShipment(sftp, req) { }
36
+ static createSerialNumber(sftp, req) { }
36
37
  }
37
38
  SftpAPI.platforms = {};
38
39
  __decorate([
@@ -53,5 +54,11 @@ __decorate([
53
54
  __metadata("design:paramtypes", [Object, Object]),
54
55
  __metadata("design:returntype", Object)
55
56
  ], SftpAPI, "createShipment", null);
57
+ __decorate([
58
+ decorators_1.api,
59
+ __metadata("design:type", Function),
60
+ __metadata("design:paramtypes", [Object, Object]),
61
+ __metadata("design:returntype", Object)
62
+ ], SftpAPI, "createSerialNumber", null);
56
63
  exports.SftpAPI = SftpAPI;
57
64
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/controllers/sftp-api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAAuC;AAEvC,2CAAoC;AACpC,6CAAkC;AAElC,MAAa,OAAO;IAGlB,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI;QACxC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG;YACxB,MAAM;YACN,IAAI;SACL,CAAA;IACH,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,IAAI;QACrB,OAAO,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;QACrB,MAAM,UAAU,GAAG,IAAA,uBAAa,EAAC,cAAI,CAAC,CAAA;QACtC,OAAO,MAAM,UAAU,CAAC,OAAO,CAAC;YAC9B,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,SAAS,EAAE,CAAC,QAAQ,CAAC;SACtB,CAAC,CAAA;IACJ,CAAC;IAGD,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAQ,CAAC;IAG9B,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,GAAG,IAAQ,CAAC;IAG1C,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,IAAQ,CAAC;;AA5BjC,iBAAS,GAAG,EAAE,CAAA;AAsBrB;IADC,gBAAG;;;;yBAC0B;AAG9B;IADC,gBAAG;;;;qCACsC;AAG1C;IADC,gBAAG;;;;mCACoC;AA7B1C,0BA8BC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../server/controllers/sftp-api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qCAAuC;AAEvC,2CAAoC;AACpC,6CAAkC;AAElC,MAAa,OAAO;IAGlB,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI;QACxC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG;YACxB,MAAM;YACN,IAAI;SACL,CAAA;IACH,CAAC;IAED,MAAM,CAAC,WAAW,CAAC,IAAI;QACrB,OAAO,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAA;IAChC,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;QACrB,MAAM,UAAU,GAAG,IAAA,uBAAa,EAAC,cAAI,CAAC,CAAA;QACtC,OAAO,MAAM,UAAU,CAAC,OAAO,CAAC;YAC9B,KAAK,EAAE,EAAE,EAAE,EAAE;YACb,SAAS,EAAE,CAAC,QAAQ,CAAC;SACtB,CAAC,CAAA;IACJ,CAAC;IAGD,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAQ,CAAC;IAG9B,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,GAAG,IAAQ,CAAC;IAG1C,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,IAAQ,CAAC;IAGxC,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,GAAG,IAAQ,CAAC;;AA/BrC,iBAAS,GAAG,EAAE,CAAA;AAsBrB;IADC,gBAAG;;;;yBAC0B;AAG9B;IADC,gBAAG;;;;qCACsC;AAG1C;IADC,gBAAG;;;;mCACoC;AAGxC;IADC,gBAAG;;;;uCACwC;AAhC9C,0BAiCC"}
@@ -11,6 +11,13 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  var __param = (this && this.__param) || function (paramIndex, decorator) {
12
12
  return function (target, key) { decorator(target, key, paramIndex); }
13
13
  };
14
+ var __asyncValues = (this && this.__asyncValues) || function (o) {
15
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
16
+ var m = o[Symbol.asyncIterator], i;
17
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
18
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
19
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
20
+ };
14
21
  Object.defineProperty(exports, "__esModule", { value: true });
15
22
  exports.SftpMutation = void 0;
16
23
  require("../../sftp-s3");
@@ -74,6 +81,7 @@ let SftpMutation = class SftpMutation {
74
81
  return true;
75
82
  }
76
83
  async syncSftpOrders(customerDomainId, context) {
84
+ var e_1, _a;
77
85
  const { tx } = context.state;
78
86
  const customerDomain = await tx.getRepository(shell_1.Domain).findOne(customerDomainId);
79
87
  const customerBizplace = await tx.getRepository(biz_base_1.Bizplace).findOne({
@@ -93,42 +101,51 @@ let SftpMutation = class SftpMutation {
93
101
  let initialDataPath = `${sftpUser.folderPath}/${folderType}${sftp_const_1.SUBMITDATAPATH}/`;
94
102
  const results = await (0, util_1.getPermittedDirectories)({ path: initialDataPath }, context);
95
103
  const filesDirectories = results.filter(result => result.Size > 0);
96
- for (let j = 0; j < filesDirectories.length; j++) {
97
- let dataPath = `${sftpUser.folderPath}/${folderType}${sftp_const_1.SUBMITDATAPATH}/`;
98
- let successPath = `${sftpUser.folderPath}/${folderType}${sftp_const_1.SUCCESSDATAPATH}/`;
99
- let failedPath = `${sftpUser.folderPath}/${folderType}${sftp_const_1.FAILEDDATAPATH}/`;
100
- const fileDirectory = filesDirectories[j];
101
- const fileKey = fileDirectory.Key;
102
- const lastSlashIdx = fileKey.lastIndexOf('/');
103
- const fileString = fileKey.substring(lastSlashIdx + 1, fileKey.length);
104
- try {
105
- const sftp = sftpUser;
106
- let result = await controllers_1.SftpAPI.getOutboundOrder(sftp, { folderPath, folderType, fileKey: fileString });
107
- let isAccept = result.isAccept;
108
- if (isAccept) {
109
- delete result.isAccept;
110
- if (result) {
111
- let { items: releaseOrders } = await integration_fulfillment_1.FulfillmentAPI.getOutboundOrders(fulfilmentCenter, {
112
- customerBizplaceId,
113
- refNo: result.refNo
114
- });
115
- if (releaseOrders) {
116
- result.collectionOrderNo = result.collectionOrderNo + ' - ' + (releaseOrders.length + 1);
117
- }
118
- const releaseOrder = await integration_fulfillment_1.FulfillmentAPI.createOutboundOrder(fulfilmentCenter, {
119
- customerBizplaceId,
120
- releaseOrder: result
121
- });
122
- if (releaseOrder) {
123
- let movePaths = {
124
- source: (dataPath += fileString),
125
- destination: (successPath += fileString)
126
- };
127
- await sftp_const_1.SFTPFILESTORAGE.moveFile(movePaths);
104
+ try {
105
+ for (var filesDirectories_1 = (e_1 = void 0, __asyncValues(filesDirectories)), filesDirectories_1_1; filesDirectories_1_1 = await filesDirectories_1.next(), !filesDirectories_1_1.done;) {
106
+ let fileDirectory = filesDirectories_1_1.value;
107
+ let dataPath = `${sftpUser.folderPath}/${folderType}${sftp_const_1.SUBMITDATAPATH}/`;
108
+ let successPath = `${sftpUser.folderPath}/${folderType}${sftp_const_1.SUCCESSDATAPATH}/`;
109
+ let failedPath = `${sftpUser.folderPath}/${folderType}${sftp_const_1.FAILEDDATAPATH}/`;
110
+ const fileKey = fileDirectory.Key;
111
+ const lastSlashIdx = fileKey.lastIndexOf('/');
112
+ const fileString = fileKey.substring(lastSlashIdx + 1, fileKey.length);
113
+ try {
114
+ const sftp = sftpUser;
115
+ let result = await controllers_1.SftpAPI.getOutboundOrder(sftp, { folderPath, folderType, fileKey: fileString });
116
+ let isAccept = result.isAccept;
117
+ if (isAccept) {
118
+ delete result.isAccept;
119
+ if (result) {
120
+ let { items: releaseOrders } = await integration_fulfillment_1.FulfillmentAPI.getOutboundOrders(fulfilmentCenter, {
121
+ customerBizplaceId,
122
+ refNo: result.refNo
123
+ });
124
+ if (releaseOrders) {
125
+ result.collectionOrderNo = result.collectionOrderNo + ' - ' + (releaseOrders.length + 1);
126
+ }
127
+ const releaseOrder = await integration_fulfillment_1.FulfillmentAPI.createOutboundOrder(fulfilmentCenter, {
128
+ customerBizplaceId,
129
+ releaseOrder: result
130
+ });
131
+ if (releaseOrder) {
132
+ let movePaths = {
133
+ source: (dataPath += fileString),
134
+ destination: (successPath += fileString)
135
+ };
136
+ await sftp_const_1.SFTPFILESTORAGE.moveFile(movePaths);
137
+ }
128
138
  }
129
139
  }
140
+ else {
141
+ let movePaths = {
142
+ source: (dataPath += fileString),
143
+ destination: (failedPath += fileString)
144
+ };
145
+ await sftp_const_1.SFTPFILESTORAGE.moveFile(movePaths);
146
+ }
130
147
  }
131
- else {
148
+ catch (e) {
132
149
  let movePaths = {
133
150
  source: (dataPath += fileString),
134
151
  destination: (failedPath += fileString)
@@ -136,13 +153,13 @@ let SftpMutation = class SftpMutation {
136
153
  await sftp_const_1.SFTPFILESTORAGE.moveFile(movePaths);
137
154
  }
138
155
  }
139
- catch (e) {
140
- let movePaths = {
141
- source: (dataPath += fileString),
142
- destination: (failedPath += fileString)
143
- };
144
- await sftp_const_1.SFTPFILESTORAGE.moveFile(movePaths);
156
+ }
157
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
158
+ finally {
159
+ try {
160
+ if (filesDirectories_1_1 && !filesDirectories_1_1.done && (_a = filesDirectories_1.return)) await _a.call(filesDirectories_1);
145
161
  }
162
+ finally { if (e_1) throw e_1.error; }
146
163
  }
147
164
  }
148
165
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"sftp-mutation.js","sourceRoot":"","sources":["../../../server/service/sftp/sftp-mutation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sftp-mutation.js","sourceRoot":"","sources":["../../../server/service/sftp/sftp-mutation.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.COMPLETEFAILEDDATAPATH = exports.COMPLETESUCCESSDATAPATH = exports.COMPLETEDATAPATH = exports.FAILEDDATAPATH = exports.SUCCESSDATAPATH = exports.SUBMITDATAPATH = exports.SFTPFILESTORAGE = void 0;
3
+ exports.BACKUPPATH = exports.SNFAILEDDATAPATH = exports.SNSUCCESSDATAPATH = exports.SNSUBMITDATAPATH = exports.COMPLETEFAILEDDATAPATH = exports.COMPLETESUCCESSDATAPATH = exports.COMPLETEDATAPATH = exports.FAILEDDATAPATH = exports.SUCCESSDATAPATH = exports.SUBMITDATAPATH = exports.SFTPFILESTORAGE = void 0;
4
4
  const env_1 = require("@things-factory/env");
5
5
  exports.SFTPFILESTORAGE = env_1.config.get('sftpFileStorage');
6
6
  exports.SUBMITDATAPATH = '/sob/data';
@@ -9,4 +9,8 @@ exports.FAILEDDATAPATH = '/sob/failed';
9
9
  exports.COMPLETEDATAPATH = '/oc/data';
10
10
  exports.COMPLETESUCCESSDATAPATH = '/oc/success';
11
11
  exports.COMPLETEFAILEDDATAPATH = '/oc/failed';
12
+ exports.SNSUBMITDATAPATH = '/sn/data';
13
+ exports.SNSUCCESSDATAPATH = '/sn/success';
14
+ exports.SNFAILEDDATAPATH = '/sn/failed';
15
+ exports.BACKUPPATH = 'hatiosea/';
12
16
  //# sourceMappingURL=sftp-const.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sftp-const.js","sourceRoot":"","sources":["../server/sftp-const.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAEjC,QAAA,eAAe,GAAQ,YAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;AACpD,QAAA,cAAc,GAAW,WAAW,CAAA;AACpC,QAAA,eAAe,GAAW,cAAc,CAAA;AACxC,QAAA,cAAc,GAAW,aAAa,CAAA;AACtC,QAAA,gBAAgB,GAAW,UAAU,CAAA;AACrC,QAAA,uBAAuB,GAAW,aAAa,CAAA;AAC/C,QAAA,sBAAsB,GAAW,YAAY,CAAA"}
1
+ {"version":3,"file":"sftp-const.js","sourceRoot":"","sources":["../server/sftp-const.ts"],"names":[],"mappings":";;;AAAA,6CAA4C;AAEjC,QAAA,eAAe,GAAQ,YAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;AACpD,QAAA,cAAc,GAAW,WAAW,CAAA;AACpC,QAAA,eAAe,GAAW,cAAc,CAAA;AACxC,QAAA,cAAc,GAAW,aAAa,CAAA;AACtC,QAAA,gBAAgB,GAAW,UAAU,CAAA;AACrC,QAAA,uBAAuB,GAAW,aAAa,CAAA;AAC/C,QAAA,sBAAsB,GAAW,YAAY,CAAA;AAC7C,QAAA,gBAAgB,GAAW,UAAU,CAAA;AACrC,QAAA,iBAAiB,GAAW,aAAa,CAAA;AACzC,QAAA,gBAAgB,GAAW,YAAY,CAAA;AACvC,QAAA,UAAU,GAAW,WAAW,CAAA"}
@@ -4,9 +4,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const aws_sdk_1 = __importDefault(require("aws-sdk"));
7
- const v4_1 = __importDefault(require("uuid/v4"));
8
7
  const env_1 = require("@things-factory/env");
9
8
  const sftp_const_1 = require("./sftp-const");
9
+ const crypto = require('crypto');
10
10
  const { PassThrough } = require('stream');
11
11
  const path = require('path');
12
12
  const { fs } = require('memfs');
@@ -51,7 +51,7 @@ if (sftp_const_1.SFTPFILESTORAGE && sftp_const_1.SFTPFILESTORAGE.type == 's3') {
51
51
  };
52
52
  /* upload file */
53
53
  sftp_const_1.SFTPFILESTORAGE.uploadFile = ({ stream, filename, uploadPath }) => {
54
- const id = (0, v4_1.default)();
54
+ const id = crypto.randomUUID();
55
55
  let size = 0;
56
56
  return new Promise((resolve, reject) => stream
57
57
  .pipe((() => {
@@ -1 +1 @@
1
- {"version":3,"file":"sftp-s3.js","sourceRoot":"","sources":["../server/sftp-s3.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sftp-s3.js","sourceRoot":"","sources":["../server/sftp-s3.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateFiles = void 0;
4
+ require("../sftp-s3");
5
+ const sftp_const_1 = require("../sftp-const");
6
+ const fs = require('fs');
7
+ async function generateFiles(params) {
8
+ const fileDirectory = './uploaded-files';
9
+ for (let i = 0; i < params.length; i++) {
10
+ let param = params[i];
11
+ const { uploadPath, content, title } = param;
12
+ if (!fs.existsSync(fileDirectory)) {
13
+ fs.mkdirSync(fileDirectory);
14
+ }
15
+ const filePath = fileDirectory + '/' + title;
16
+ fs.writeFile(filePath, content, function (err) {
17
+ if (err)
18
+ throw err;
19
+ console.log('File is created successfully.');
20
+ });
21
+ if (uploadPath) {
22
+ const stream = fs.createReadStream(filePath);
23
+ await sftp_const_1.SFTPFILESTORAGE.uploadFile({ stream, filename: title, uploadPath });
24
+ }
25
+ }
26
+ fs.rm(fileDirectory, { recursive: true });
27
+ return true;
28
+ }
29
+ exports.generateFiles = generateFiles;
30
+ //# sourceMappingURL=generate-files.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-files.js","sourceRoot":"","sources":["../../server/util/generate-files.ts"],"names":[],"mappings":";;;AAAA,sBAAmB;AAEnB,8CAA+C;AAE/C,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;AAEjB,KAAK,UAAU,aAAa,CAAC,MAAa;IAC/C,MAAM,aAAa,GAAG,kBAAkB,CAAA;IACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACtC,IAAI,KAAK,GAAQ,MAAM,CAAC,CAAC,CAAC,CAAA;QAC1B,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,CAAA;QAE5C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE;YACjC,EAAE,CAAC,SAAS,CAAC,aAAa,CAAC,CAAA;SAC5B;QAED,MAAM,QAAQ,GAAG,aAAa,GAAG,GAAG,GAAG,KAAK,CAAA;QAE5C,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,GAAG;YAC3C,IAAI,GAAG;gBAAE,MAAM,GAAG,CAAA;YAClB,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAA;QAC9C,CAAC,CAAC,CAAA;QAEF,IAAI,UAAU,EAAE;YACd,MAAM,MAAM,GAAG,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAA;YAC5C,MAAM,4BAAe,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAA;SAC1E;KACF;IAED,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAEzC,OAAO,IAAI,CAAA;AACb,CAAC;AA1BD,sCA0BC"}
@@ -15,5 +15,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./get-permitted-directories"), exports);
18
- __exportStar(require("./generate-file"), exports);
18
+ __exportStar(require("./generate-files"), exports);
19
19
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../server/util/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8DAA2C;AAC3C,kDAA+B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../server/util/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8DAA2C;AAC3C,mDAAgC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/integration-sftp",
3
- "version": "5.0.0-alpha.5",
3
+ "version": "5.0.0-alpha.50",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -24,13 +24,13 @@
24
24
  "migration:create": "node ../../node_modules/typeorm/cli.js migration:create -d ./server/migrations"
25
25
  },
26
26
  "dependencies": {
27
- "@things-factory/auth-base": "^5.0.0-alpha.5",
28
- "@things-factory/biz-base": "^5.0.0-alpha.5",
29
- "@things-factory/env": "^5.0.0-alpha.5",
30
- "@things-factory/integration-fulfillment": "^5.0.0-alpha.5",
31
- "@things-factory/shell": "^5.0.0-alpha.5",
27
+ "@things-factory/auth-base": "^5.0.0-alpha.50",
28
+ "@things-factory/biz-base": "^5.0.0-alpha.50",
29
+ "@things-factory/env": "^5.0.0-alpha.50",
30
+ "@things-factory/integration-fulfillment": "^5.0.0-alpha.50",
31
+ "@things-factory/shell": "^5.0.0-alpha.50",
32
32
  "aws-sdk": "^2.960.0",
33
33
  "xml-js": "^1.6.11"
34
34
  },
35
- "gitHead": "379449b7be7b3d8220f1cac9ab684b812117edfd"
35
+ "gitHead": "ba819c6d9ddf60319283f620b80c9737e7486a91"
36
36
  }
@@ -0,0 +1,50 @@
1
+ import { BACKUPPATH } from '../../../sftp-const'
2
+
3
+ export function createSerialNumber() {
4
+ return {
5
+ method: 'post',
6
+ path: '{folderPath}/{folderType}/sn/data',
7
+ denormalize(req) {
8
+ let { releaseGood, inventoryItems, sftp } = req
9
+ let { folderPath, platform } = sftp
10
+ const folderType: string = sftp.isDevelopment ? `dev` : `prd`
11
+ const backupPath: string = `${BACKUPPATH}${platform}/${folderType}`
12
+
13
+ let responseFilePattern: any = JSON.parse(sftp.responseFilePattern)
14
+ const { snSuffix, fileExtension, snRunningNumberDigit, snSequence } = responseFilePattern
15
+ let newSeq: number = parseFloat(snSequence) + 1
16
+ let newSequence = newSeq.toString().padStart(snRunningNumberDigit, '0')
17
+ let newResponseFilePattern: string = JSON.stringify({
18
+ ...responseFilePattern,
19
+ snSequence: newSeq.toString()
20
+ })
21
+ sftp = { ...sftp, responseFilePattern: newResponseFilePattern }
22
+
23
+ const today = new Date()
24
+ const year = today.getFullYear().toString()
25
+ const month = (today.getMonth() + 1).toString().padStart(2, '0')
26
+ const day = today.getDate().toString().padStart(2, '0')
27
+ const newDate = day + month + year
28
+
29
+ let title: string = snSuffix ? snSuffix : ``
30
+ title += `_` + newDate
31
+ title += `_` + newSequence
32
+ title += fileExtension ? `.` + fileExtension : ``
33
+
34
+ let content: string = ''
35
+ const orderNo: string = releaseGood.refNo
36
+ for (let i = 0; i < inventoryItems.length; i++) {
37
+ let serialNumber: string = inventoryItems[i].serialNumber
38
+ content += orderNo + '|' + serialNumber + '\n'
39
+ }
40
+
41
+ return {
42
+ resource: { folderPath, folderType },
43
+ payload: { title, content, sftp, backupPath }
44
+ }
45
+ },
46
+ normalize(res) {
47
+ return res
48
+ }
49
+ }
50
+ }
@@ -1,15 +1,80 @@
1
+ import { BACKUPPATH } from '../../../sftp-const'
2
+
1
3
  export function createShipment() {
2
4
  return {
3
5
  method: 'post',
4
6
  path: '{folderPath}/{folderType}/oc/data',
5
7
  denormalize(req) {
6
- const { releaseGood, orderInventories, sftp } = req
7
- const { folderPath } = sftp
8
+ let { releaseGood, orderInventories, sftp } = req
9
+ let { folderPath, platform } = sftp
8
10
  const folderType: string = sftp.isDevelopment ? `dev` : `prd`
11
+ const backupPath: string = `${BACKUPPATH}${platform}/${folderType}`
12
+
13
+ let responseFilePattern: any = JSON.parse(sftp.responseFilePattern)
14
+ const { suffix, fileExtension, runningNumberDigit, sequence } = responseFilePattern
15
+ let newSeq: number = parseFloat(sequence) + 1
16
+ let newSequence = newSeq.toString().padStart(runningNumberDigit, '0')
17
+ let newResponseFilePattern: string = JSON.stringify({
18
+ ...responseFilePattern,
19
+ sequence: newSeq.toString()
20
+ })
21
+ sftp = { ...sftp, responseFilePattern: newResponseFilePattern }
22
+
23
+ const warehouseNumber: string = releaseGood.refNo2
24
+ let title: string = suffix ? suffix : ``
25
+ title += newSequence
26
+ title += warehouseNumber ? `_` + warehouseNumber : ``
27
+ title += fileExtension ? `.` + fileExtension : ``
28
+
29
+ const orderNoColumn: number = 15
30
+ const shipmentColumn: number = 27
31
+ const trackingNoColumn: number = 20
32
+
33
+ const refNoLength: number = releaseGood.refNo.length
34
+ let content: string = `1710` + releaseGood.refNo
35
+ let spaceNeeded: number = orderNoColumn - refNoLength
36
+ for (let i = 0; i < spaceNeeded; i++) {
37
+ content += ` `
38
+ }
39
+ content += warehouseNumber
40
+ content += `001000001`
41
+ for (let i = 0; i < shipmentColumn; i++) {
42
+ content += ` `
43
+ }
44
+ content += `000000 `
45
+ for (let i = 0; i < trackingNoColumn; i++) {
46
+ content += ` `
47
+ }
48
+ content += `000000000000 `
49
+ const today = new Date()
50
+ const year = today.getFullYear().toString()
51
+ const month = (today.getMonth() + 1).toString().padStart(2, '0')
52
+ const day = today.getDate().toString().padStart(2, '0')
53
+ const newDate = year + month + day
54
+ content += newDate + '\n'
55
+
56
+ for (let i = 0; i < orderInventories.length; i++) {
57
+ const orderInventory: any = orderInventories[i]
58
+ let sku: string = orderInventory.product.brandSku
59
+ content += `1810` + releaseGood.refNo
60
+ for (let i = 0; i < spaceNeeded; i++) {
61
+ content += ` `
62
+ }
63
+ const idx = (i + 1).toString().padStart(2, '0')
64
+ const productCode: string = sku.substring(0, 4)
65
+ content += idx + `000000` + productCode
66
+ let productCodeSpaceNeeded = 7 - productCode.length
67
+ for (let i = 0; i < productCodeSpaceNeeded; i++) {
68
+ content += ` `
69
+ }
70
+ const orderedQty = orderInventory.releaseQty.toString().padStart(4, '0')
71
+ const pickedQty = orderInventory.pickedQty.toString().padStart(4, '0')
72
+ content += orderedQty + pickedQty + '\n'
73
+ }
9
74
 
10
75
  return {
11
76
  resource: { folderPath, folderType },
12
- payload: { releaseGood, orderInventories, sftp, folderType }
77
+ payload: { title, content, sftp, backupPath }
13
78
  }
14
79
  },
15
80
  normalize(res) {
@@ -1,3 +1,4 @@
1
1
  export * from './echo'
2
2
  export * from './get-outbound-order'
3
3
  export * from './create-shipment'
4
+ export * from './create-serial-number'
@@ -4,7 +4,7 @@ import { xml2js } from 'xml-js'
4
4
 
5
5
  import { Sftp } from '../../service'
6
6
  import { SFTPFILESTORAGE } from '../../sftp-const'
7
- import { generateFile } from '../../util/generate-file'
7
+ import { generateFiles } from '../../util/generate-files'
8
8
 
9
9
  const debug = require('debug')('things-factory:integration-sftp:herbalife')
10
10
 
@@ -23,78 +23,25 @@ export class Herbalife {
23
23
  }
24
24
 
25
25
  async post(path: string, data: any = {}) {
26
- let sftp: Sftp = data.sftp
27
- let releaseGood: any = data.releaseGood
28
- let orderInventories: any[] = data.orderInventories
29
-
30
- let responseFilePattern: any = JSON.parse(sftp.responseFilePattern)
31
- const { suffix, warehouseCode, fileExtension, runningNumberDigit, sequence } = responseFilePattern
32
- let newSeq: number = parseFloat(sequence) + 1
33
- let newSequence = newSeq.toString().padStart(runningNumberDigit, '0')
34
- let newResponseFilePattern: string = JSON.stringify({
35
- ...responseFilePattern,
36
- sequence: newSeq.toString()
37
- })
38
- sftp = { ...sftp, responseFilePattern: newResponseFilePattern }
39
-
40
- const warehouseNumber: string = releaseGood.refNo2
41
- let title: string = suffix ? suffix : ``
42
- title += newSequence
43
- title += warehouseNumber ? `_` + warehouseNumber : ``
44
- title += fileExtension ? `.` + fileExtension : ``
45
-
46
- const orderNoColumn: number = 15
47
- const shipmentColumn: number = 27
48
- const trackingNoColumn: number = 20
49
-
50
- const refNoLength: number = releaseGood.refNo.length
51
- let content: string = `1710` + releaseGood.refNo
52
- let spaceNeeded: number = orderNoColumn - refNoLength
53
- for (let i = 0; i < spaceNeeded; i++) {
54
- content += ` `
55
- }
56
- content += warehouseNumber
57
- content += `001000001`
58
- for (let i = 0; i < shipmentColumn; i++) {
59
- content += ` `
60
- }
61
- content += `000000 `
62
- for (let i = 0; i < trackingNoColumn; i++) {
63
- content += ` `
64
- }
65
- content += `000000000000 `
66
- const today = new Date()
67
- const year = today.getFullYear().toString()
68
- const month = (today.getMonth() + 1).toString().padStart(2, '0')
69
- const day = today.getDate().toString().padStart(2, '0')
70
- const newDate = year + month + day
71
- content += newDate + '\n'
72
-
73
- for (let i = 0; i < orderInventories.length; i++) {
74
- const orderInventory: any = orderInventories[i]
75
- let sku: string = orderInventory.product.brandSku
76
- content += `1810` + releaseGood.refNo
77
- for (let i = 0; i < spaceNeeded; i++) {
78
- content += ` `
26
+ const { title, content, sftp, backupPath }: { title: string; content: string; sftp: Sftp; backupPath: string } =
27
+ data
28
+
29
+ let params: any[] = [
30
+ {
31
+ title,
32
+ uploadPath: path,
33
+ content
79
34
  }
80
- const idx = (i + 1).toString().padStart(2, '0')
81
- const productCode: string = sku.substring(0, 4)
82
- content += idx + `000000` + productCode
83
- let productCodeSpaceNeeded = 7 - productCode.length
84
- for (let i = 0; i < productCodeSpaceNeeded; i++) {
85
- content += ` `
86
- }
87
- const orderedQty = orderInventory.releaseQty.toString().padStart(4, '0')
88
- const pickedQty = orderInventory.pickedQty.toString().padStart(4, '0')
89
- content += orderedQty + pickedQty + '\n'
90
- }
91
-
92
- const params: any = {
93
- title,
94
- uploadPath: path,
95
- content
35
+ ]
36
+
37
+ if (backupPath) {
38
+ params.push({
39
+ title,
40
+ uploadPath: backupPath,
41
+ content
42
+ })
96
43
  }
97
- await generateFile(params)
44
+ await generateFiles(params)
98
45
 
99
46
  return sftp
100
47
  }
@@ -33,4 +33,7 @@ export class SftpAPI {
33
33
 
34
34
  @api
35
35
  static createShipment(sftp, req): any {}
36
+
37
+ @api
38
+ static createSerialNumber(sftp, req): any {}
36
39
  }
@@ -145,11 +145,10 @@ export class SftpMutation {
145
145
  const results: any[] = await getPermittedDirectories({ path: initialDataPath }, context)
146
146
  const filesDirectories: any[] = results.filter(result => result.Size > 0)
147
147
 
148
- for (let j = 0; j < filesDirectories.length; j++) {
148
+ for await (let fileDirectory of filesDirectories) {
149
149
  let dataPath: string = `${sftpUser.folderPath}/${folderType}${SUBMITDATAPATH}/`
150
150
  let successPath: string = `${sftpUser.folderPath}/${folderType}${SUCCESSDATAPATH}/`
151
151
  let failedPath: string = `${sftpUser.folderPath}/${folderType}${FAILEDDATAPATH}/`
152
- const fileDirectory: any = filesDirectories[j]
153
152
  const fileKey: string = fileDirectory.Key
154
153
  const lastSlashIdx = fileKey.lastIndexOf('/')
155
154
  const fileString: string = fileKey.substring(lastSlashIdx + 1, fileKey.length)
@@ -7,3 +7,7 @@ export var FAILEDDATAPATH: string = '/sob/failed'
7
7
  export var COMPLETEDATAPATH: string = '/oc/data'
8
8
  export var COMPLETESUCCESSDATAPATH: string = '/oc/success'
9
9
  export var COMPLETEFAILEDDATAPATH: string = '/oc/failed'
10
+ export var SNSUBMITDATAPATH: string = '/sn/data'
11
+ export var SNSUCCESSDATAPATH: string = '/sn/success'
12
+ export var SNFAILEDDATAPATH: string = '/sn/failed'
13
+ export var BACKUPPATH: string = 'hatiosea/'
package/server/sftp-s3.ts CHANGED
@@ -1,10 +1,11 @@
1
1
  import AWS from 'aws-sdk'
2
- import uuid from 'uuid/v4'
3
2
 
4
3
  import { logger } from '@things-factory/env'
5
4
 
6
5
  import { SFTPFILESTORAGE } from './sftp-const'
7
6
 
7
+ const crypto = require('crypto')
8
+
8
9
  const { PassThrough } = require('stream')
9
10
  const path = require('path')
10
11
  const { fs } = require('memfs')
@@ -63,7 +64,7 @@ if (SFTPFILESTORAGE && SFTPFILESTORAGE.type == 's3') {
63
64
 
64
65
  /* upload file */
65
66
  SFTPFILESTORAGE.uploadFile = ({ stream, filename, uploadPath }) => {
66
- const id = uuid()
67
+ const id = crypto.randomUUID()
67
68
  let size: number = 0
68
69
 
69
70
  return new Promise<{ id: string; path: string; size: number }>((resolve, reject) =>
@@ -0,0 +1,33 @@
1
+ import '../sftp-s3'
2
+
3
+ import { SFTPFILESTORAGE } from '../sftp-const'
4
+
5
+ const fs = require('fs')
6
+
7
+ export async function generateFiles(params: any[]) {
8
+ const fileDirectory = './uploaded-files'
9
+ for (let i = 0; i < params.length; i++) {
10
+ let param: any = params[i]
11
+ const { uploadPath, content, title } = param
12
+
13
+ if (!fs.existsSync(fileDirectory)) {
14
+ fs.mkdirSync(fileDirectory)
15
+ }
16
+
17
+ const filePath = fileDirectory + '/' + title
18
+
19
+ fs.writeFile(filePath, content, function (err) {
20
+ if (err) throw err
21
+ console.log('File is created successfully.')
22
+ })
23
+
24
+ if (uploadPath) {
25
+ const stream = fs.createReadStream(filePath)
26
+ await SFTPFILESTORAGE.uploadFile({ stream, filename: title, uploadPath })
27
+ }
28
+ }
29
+
30
+ fs.rm(fileDirectory, { recursive: true })
31
+
32
+ return true
33
+ }
@@ -1,2 +1,2 @@
1
1
  export * from './get-permitted-directories'
2
- export * from './generate-file'
2
+ export * from './generate-files'
@@ -1,30 +0,0 @@
1
- import '../sftp-s3'
2
-
3
- import { SFTPFILESTORAGE } from '../sftp-const'
4
-
5
- const fs = require('fs')
6
-
7
- export async function generateFile(params: any) {
8
- const { uploadPath, content, title } = params
9
- const fileDirectory = './uploaded-files'
10
-
11
- if (!fs.existsSync(fileDirectory)) {
12
- fs.mkdirSync(fileDirectory)
13
- }
14
-
15
- const filePath = fileDirectory + '/' + title
16
-
17
- fs.writeFile(filePath, content, function (err) {
18
- if (err) throw err
19
- console.log('File is created successfully.')
20
- })
21
-
22
- if (uploadPath) {
23
- const stream = fs.createReadStream(filePath)
24
- await SFTPFILESTORAGE.uploadFile({ stream, filename: title, uploadPath })
25
- }
26
-
27
- fs.rmdirSync(fileDirectory, { recursive: true })
28
-
29
- return true
30
- }