| @@ -30,6 +30,8 @@ dependencies { | |||||
| implementation 'org.liquibase:liquibase-core' | implementation 'org.liquibase:liquibase-core' | ||||
| implementation 'com.google.code.gson:gson:2.8.5' | implementation 'com.google.code.gson:gson:2.8.5' | ||||
| implementation group: 'org.springframework.cloud', name: 'spring-cloud-context', version: '4.2.1' | |||||
| implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.12.0' | implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.12.0' | ||||
| implementation group: 'org.apache.poi', name: 'poi', version: '5.2.3' | implementation group: 'org.apache.poi', name: 'poi', version: '5.2.3' | ||||
| implementation group: 'org.apache.poi', name: 'poi-ooxml', version: '5.2.3' | implementation group: 'org.apache.poi', name: 'poi-ooxml', version: '5.2.3' | ||||
| @@ -1,4 +1,4 @@ | |||||
| package com.ffii.fpsms.modules.stock.entity | |||||
| package com.ffii.fpsms.m18.entity | |||||
| import com.ffii.core.entity.BaseEntity | import com.ffii.core.entity.BaseEntity | ||||
| import jakarta.persistence.Column | import jakarta.persistence.Column | ||||
| @@ -8,26 +8,30 @@ import jakarta.validation.constraints.NotNull | |||||
| import jakarta.validation.constraints.Size | import jakarta.validation.constraints.Size | ||||
| import org.hibernate.annotations.JdbcTypeCode | import org.hibernate.annotations.JdbcTypeCode | ||||
| import org.hibernate.type.SqlTypes | import org.hibernate.type.SqlTypes | ||||
| import java.time.LocalDateTime | |||||
| @Entity | @Entity | ||||
| @Table(name = "m18_data_log") | @Table(name = "m18_data_log") | ||||
| open class M18DataLog : BaseEntity<Long>() { | open class M18DataLog : BaseEntity<Long>() { | ||||
| @Size(max = 10) | |||||
| @Size(max = 1000) | |||||
| @NotNull | @NotNull | ||||
| @Column(name = "refType", nullable = false, length = 10) | |||||
| @Column(name = "refType", nullable = false, length = 1000) | |||||
| open var refType: String? = null | open var refType: String? = null | ||||
| @NotNull | @NotNull | ||||
| @Column(name = "m18Id", nullable = false) | @Column(name = "m18Id", nullable = false) | ||||
| open var m18Id: Int? = null | |||||
| open var m18Id: Long? = null | |||||
| @NotNull | @NotNull | ||||
| @JdbcTypeCode(SqlTypes.JSON) | @JdbcTypeCode(SqlTypes.JSON) | ||||
| @Column(name = "dataLog", nullable = false) | @Column(name = "dataLog", nullable = false) | ||||
| open var dataLog: MutableMap<String, Any>? = null | |||||
| open var dataLog: MutableMap<String, Any?>? = null | |||||
| @Size(max = 5) | |||||
| @NotNull | @NotNull | ||||
| @Column(name = "status", nullable = false, length = 5) | |||||
| open var status: String? = null | |||||
| @Column(name = "status", nullable = false) | |||||
| open var status: Boolean? = null | |||||
| @NotNull | |||||
| @Column(name = "m18LastModifyDate", nullable = false) | |||||
| open var m18LastModifyDate: LocalDateTime? = null | |||||
| } | } | ||||
| @@ -1,8 +1,9 @@ | |||||
| package com.ffii.fpsms.modules.stock.entity | |||||
| package com.ffii.fpsms.m18.entity | |||||
| import com.ffii.core.support.AbstractRepository | import com.ffii.core.support.AbstractRepository | ||||
| import org.springframework.stereotype.Repository | import org.springframework.stereotype.Repository | ||||
| @Repository | @Repository | ||||
| interface M18DataLogRepository : AbstractRepository<M18DataLog, Long> { | interface M18DataLogRepository : AbstractRepository<M18DataLog, Long> { | ||||
| fun findFirstByM18IdAndRefTypeAndDeletedIsFalseOrderByM18LastModifyDateDesc(m18Id: Long, refType: String): M18DataLog? | |||||
| } | } | ||||
| @@ -0,0 +1,12 @@ | |||||
| package com.ffii.fpsms.m18.model | |||||
| import java.time.LocalDateTime | |||||
| data class SaveM18DataLogRequest ( | |||||
| val id: Long?, | |||||
| val refType: String?, | |||||
| val m18Id: Long?, | |||||
| val m18LastModifyDate: LocalDateTime?, | |||||
| val dataLog: MutableMap<String, Any?>?, | |||||
| val status: Boolean? = true, | |||||
| ) | |||||
| @@ -0,0 +1,8 @@ | |||||
| package com.ffii.fpsms.m18.model | |||||
| data class M18DataLogResponse ( | |||||
| val id: Long?, | |||||
| val refType: String?, | |||||
| val m18Id: Long?, | |||||
| val status: Boolean?, | |||||
| ) | |||||
| @@ -1,4 +1,4 @@ | |||||
| package com.ffii.fpsms.m18.modals | |||||
| package com.ffii.fpsms.m18.model | |||||
| data class M18TokenRequest( | data class M18TokenRequest( | ||||
| val grant_type: String, | val grant_type: String, | ||||
| @@ -1,4 +1,4 @@ | |||||
| package com.ffii.fpsms.m18.modals | |||||
| package com.ffii.fpsms.m18.model | |||||
| data class M18TokenResponse( | data class M18TokenResponse( | ||||
| val access_token: String, | val access_token: String, | ||||
| @@ -1,37 +1,54 @@ | |||||
| server: | server: | ||||
| servlet: | |||||
| contextPath: /api | |||||
| encoding: | |||||
| charset: UTF-8 | |||||
| enabled: true | |||||
| force: true | |||||
| port: 8090 | |||||
| error: | |||||
| include-message: always | |||||
| servlet: | |||||
| contextPath: /api | |||||
| encoding: | |||||
| charset: UTF-8 | |||||
| enabled: true | |||||
| force: true | |||||
| port: 8090 | |||||
| error: | |||||
| include-message: always | |||||
| spring: | spring: | ||||
| servlet: | |||||
| multipart: | |||||
| max-file-size: 500MB | |||||
| max-request-size: 600MB | |||||
| jpa: | |||||
| hibernate: | |||||
| naming: | |||||
| physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl | |||||
| database-platform: org.hibernate.dialect.MySQL8Dialect | |||||
| properties: | |||||
| hibernate: | |||||
| dialect: | |||||
| storage_engine: innodb | |||||
| servlet: | |||||
| multipart: | |||||
| max-file-size: 500MB | |||||
| max-request-size: 600MB | |||||
| jpa: | |||||
| hibernate: | |||||
| naming: | |||||
| physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl | |||||
| database-platform: org.hibernate.dialect.MySQL8Dialect | |||||
| properties: | |||||
| hibernate: | |||||
| dialect: | |||||
| storage_engine: innodb | |||||
| logging: | logging: | ||||
| config: 'classpath:log4j2.yml' | |||||
| config: 'classpath:log4j2.yml' | |||||
| m18: | m18: | ||||
| config: | |||||
| grant-type: password | |||||
| client-id: M2Y1OGYxMmQtZDRiOS00OTA4LTgyNTktZDRkNzEzNWVkMzRm | |||||
| client-secret: M2Y2YjQzYzQtZTc2Mi00OTFhLTkwYmItYmJhMzFjZjEyYmY5 | |||||
| username: testingMTMS | |||||
| password: db25f2fc14cd2d2b1e7af307241f548fb03c312a | |||||
| base-url: http://16.162.251.126/jsf/rfws | |||||
| config: | |||||
| grant-type: password | |||||
| client-id: M2Y1OGYxMmQtZDRiOS00OTA4LTgyNTktZDRkNzEzNWVkMzRm | |||||
| client-secret: M2Y2YjQzYzQtZTc2Mi00OTFhLTkwYmItYmJhMzFjZjEyYmY5 | |||||
| username: testingMTMS | |||||
| password: db25f2fc14cd2d2b1e7af307241f548fb03c312a | |||||
| base-url: http://16.162.251.126/jsf/rfws | |||||
| base-password: qwer1234 | |||||
| beId: | |||||
| toa: 29 | |||||
| pp: 27 | |||||
| pf: 1 | |||||
| seriesId: | |||||
| pp: 26 | |||||
| pf: 33 | |||||
| fa: 2 | |||||
| fb: 3 | |||||
| fc: 4 | |||||
| fd: 5 | |||||
| ff: 6 | |||||
| sc: 27 | |||||
| se: 28 | |||||
| sf: 70 | |||||
| sr: 29 | |||||
| @@ -4,23 +4,24 @@ | |||||
| CREATE TABLE items | CREATE TABLE items | ||||
| ( | ( | ||||
| id INT NOT NULL AUTO_INCREMENT, | |||||
| version INT NOT NULL DEFAULT '0', | |||||
| created datetime NOT NULL DEFAULT CURRENT_TIMESTAMP, | |||||
| createdBy VARCHAR(30) NULL, | |||||
| modified datetime NOT NULL DEFAULT CURRENT_TIMESTAMP, | |||||
| modifiedBy VARCHAR(30) NULL, | |||||
| deleted TINYINT(1) NOT NULL DEFAULT '0', | |||||
| `code` VARCHAR(50) NOT NULL, | |||||
| `name` VARCHAR(50) NOT NULL, | |||||
| description VARCHAR(100) NULL, | |||||
| remarks varchar(500) NULL, | |||||
| type VARCHAR(50) NOT NULL, | |||||
| uomId INT(11) NOT NULL DEFAULT 0, | |||||
| shelfLife INT(11) NULL, | |||||
| countryOfOrigin varchar(50) NULL, | |||||
| maxQty DECIMAL(16, 2) NULL, | |||||
| m18Id INT(11) NULL, | |||||
| id INT NOT NULL AUTO_INCREMENT, | |||||
| version INT NOT NULL DEFAULT '0', | |||||
| created datetime NOT NULL DEFAULT CURRENT_TIMESTAMP, | |||||
| createdBy VARCHAR(30) NULL, | |||||
| modified datetime NOT NULL DEFAULT CURRENT_TIMESTAMP, | |||||
| modifiedBy VARCHAR(30) NULL, | |||||
| deleted TINYINT(1) NOT NULL DEFAULT '0', | |||||
| `code` VARCHAR(50) NOT NULL, | |||||
| `name` VARCHAR(500) NOT NULL, | |||||
| description VARCHAR(500) NULL, | |||||
| remarks varchar(500) NULL, | |||||
| type VARCHAR(50) NOT NULL, | |||||
| uomId INT(11) NOT NULL DEFAULT 0, | |||||
| shelfLife INT(11) NULL, | |||||
| countryOfOrigin varchar(50) NULL, | |||||
| maxQty DECIMAL(16, 2) NULL, | |||||
| m18Id INT(11) NULL, | |||||
| m18LastModifyDate datetime NOT NULL, | |||||
| CONSTRAINT pk_material PRIMARY KEY (id) | CONSTRAINT pk_material PRIMARY KEY (id) | ||||
| ); | ); | ||||
| CREATE TABLE uom_conversion | CREATE TABLE uom_conversion | ||||
| @@ -3,26 +3,27 @@ | |||||
| --changeset cyril:master data for shop and warehouse | --changeset cyril:master data for shop and warehouse | ||||
| CREATE TABLE `shop` | CREATE TABLE `shop` | ||||
| ( | ( | ||||
| `id` INT NOT NULL AUTO_INCREMENT, | |||||
| `created` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, | |||||
| `createdBy` VARCHAR(30) NULL DEFAULT NULL, | |||||
| `version` INT NOT NULL DEFAULT '0', | |||||
| `modified` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, | |||||
| `modifiedBy` VARCHAR(30) NULL DEFAULT NULL, | |||||
| `deleted` TINYINT(1) NOT NULL DEFAULT '0', | |||||
| `code` VARCHAR(30) NOT NULL, | |||||
| `name` VARCHAR(30) NOT NULL, | |||||
| `brNo` VARCHAR(30) NULL, | |||||
| `contactNo` VARCHAR(30) NULL, | |||||
| `contactEmail` VARCHAR(30) NULL, | |||||
| `contactName` VARCHAR(30) NULL, | |||||
| `addr1` VARCHAR(30) NULL, | |||||
| `addr2` VARCHAR(30) NULL, | |||||
| `addr3` VARCHAR(30) NULL, | |||||
| `addr4` VARCHAR(30) NULL, | |||||
| `district` VARCHAR(30) NULL, | |||||
| `type` VARCHAR(10) NULL, | |||||
| `m18Id` INT NOT NULL, | |||||
| `id` INT NOT NULL AUTO_INCREMENT, | |||||
| `created` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, | |||||
| `createdBy` VARCHAR(30) NULL DEFAULT NULL, | |||||
| `version` INT NOT NULL DEFAULT '0', | |||||
| `modified` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, | |||||
| `modifiedBy` VARCHAR(30) NULL DEFAULT NULL, | |||||
| `deleted` TINYINT(1) NOT NULL DEFAULT '0', | |||||
| `code` VARCHAR(50) NOT NULL, | |||||
| `name` VARCHAR(300) NOT NULL, | |||||
| `brNo` VARCHAR(50) NULL, | |||||
| `contactNo` VARCHAR(50) NULL, | |||||
| `contactEmail` VARCHAR(50) NULL, | |||||
| `contactName` VARCHAR(50) NULL, | |||||
| `addr1` VARCHAR(300) NULL, | |||||
| `addr2` VARCHAR(300) NULL, | |||||
| `addr3` VARCHAR(300) NULL, | |||||
| `addr4` VARCHAR(300) NULL, | |||||
| `district` VARCHAR(300) NULL, | |||||
| `type` VARCHAR(10) NULL, | |||||
| `m18Id` INT NOT NULL, | |||||
| `m18LastModifyDate` datetime NOT NULL, | |||||
| CONSTRAINT pk_shop PRIMARY KEY (id) | CONSTRAINT pk_shop PRIMARY KEY (id) | ||||
| ); | ); | ||||
| @@ -3,16 +3,17 @@ | |||||
| --changeset cyril:m18 data log | --changeset cyril:m18 data log | ||||
| CREATE TABLE `m18_data_log` | CREATE TABLE `m18_data_log` | ||||
| ( | ( | ||||
| `id` INT NOT NULL AUTO_INCREMENT, | |||||
| `created` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, | |||||
| `createdBy` VARCHAR(30) NULL DEFAULT NULL, | |||||
| `version` INT NOT NULL DEFAULT '0', | |||||
| `modified` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, | |||||
| `modifiedBy` VARCHAR(30) NULL DEFAULT NULL, | |||||
| `deleted` TINYINT(1) NOT NULL DEFAULT '0', | |||||
| `refType` VARCHAR(10) NOT NULL, | |||||
| `m18Id` INT NOT NULL, | |||||
| `dataLog` JSON NOT NULL, | |||||
| `status` VARCHAR(5) NOT NULL, | |||||
| `id` INT NOT NULL AUTO_INCREMENT, | |||||
| `created` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, | |||||
| `createdBy` VARCHAR(30) NULL DEFAULT NULL, | |||||
| `version` INT NOT NULL DEFAULT '0', | |||||
| `modified` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, | |||||
| `modifiedBy` VARCHAR(30) NULL DEFAULT NULL, | |||||
| `deleted` TINYINT(1) NOT NULL DEFAULT '0', | |||||
| `refType` VARCHAR(1000) NOT NULL, | |||||
| `m18Id` INT NOT NULL, | |||||
| `m18LastModifyDate` datetime NOT NULL, | |||||
| `dataLog` JSON NOT NULL, | |||||
| `status` TINYINT(1) NOT NULL, | |||||
| CONSTRAINT pk_m18_data_log PRIMARY KEY (id) | CONSTRAINT pk_m18_data_log PRIMARY KEY (id) | ||||
| ); | ); | ||||
| @@ -13,7 +13,7 @@ CREATE TABLE `purchase_order` | |||||
| `code` VARCHAR(30) NOT NULL, | `code` VARCHAR(30) NOT NULL, | ||||
| `supplierId` INT NULL, | `supplierId` INT NULL, | ||||
| `orderDate` DATETIME NULL, | `orderDate` DATETIME NULL, | ||||
| `estimatedCompleteDate` DATETIME NULL, | |||||
| `estimatedArrivalDate` DATETIME NULL, | |||||
| `completeDate` DATETIME NULL, | `completeDate` DATETIME NULL, | ||||
| `status` VARCHAR(10) NOT NULL DEFAULT 'pending', | `status` VARCHAR(10) NOT NULL DEFAULT 'pending', | ||||
| `m18DataLogId` INT NOT NULL, | `m18DataLogId` INT NOT NULL, | ||||
| @@ -24,23 +24,25 @@ CREATE TABLE `purchase_order` | |||||
| CREATE TABLE `purchase_order_line` | CREATE TABLE `purchase_order_line` | ||||
| ( | ( | ||||
| `id` INT NOT NULL AUTO_INCREMENT, | |||||
| `created` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, | |||||
| `createdBy` VARCHAR(30) NULL DEFAULT NULL, | |||||
| `version` INT NOT NULL DEFAULT '0', | |||||
| `modified` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, | |||||
| `modifiedBy` VARCHAR(30) NULL DEFAULT NULL, | |||||
| `deleted` TINYINT(1) NOT NULL DEFAULT '0', | |||||
| `itemId` INT NOT NULL, | |||||
| `itemNo` VARCHAR(20) NOT NULL, | |||||
| `purchaseOrderId` INT NOT NULL, | |||||
| `qty` DECIMAL(14, 2) NULL, | |||||
| `price` DECIMAL(14, 2) NULL, | |||||
| `priceUnit` VARCHAR(5) NULL, | |||||
| `status` VARCHAR(10) NOT NULL DEFAULT 'pending', | |||||
| `m18DataLogId` INT NOT NULL, | |||||
| `id` INT NOT NULL AUTO_INCREMENT, | |||||
| `created` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, | |||||
| `createdBy` VARCHAR(30) NULL DEFAULT NULL, | |||||
| `version` INT NOT NULL DEFAULT '0', | |||||
| `modified` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP, | |||||
| `modifiedBy` VARCHAR(30) NULL DEFAULT NULL, | |||||
| `deleted` TINYINT(1) NOT NULL DEFAULT '0', | |||||
| `itemId` INT NOT NULL, | |||||
| `itemNo` VARCHAR(20) NOT NULL, | |||||
| `uomId` INT NULL, | |||||
| `purchaseOrderId` INT NOT NULL, | |||||
| `qty` DECIMAL(14, 2) NULL, | |||||
| `price` DECIMAL(14, 2) NULL, | |||||
| `priceUnit` VARCHAR(5) NULL, | |||||
| `status` VARCHAR(10) NOT NULL DEFAULT 'pending', | |||||
| `m18DataLogId` INT NOT NULL, | |||||
| CONSTRAINT pk_purchase_order_line PRIMARY KEY (id), | CONSTRAINT pk_purchase_order_line PRIMARY KEY (id), | ||||
| CONSTRAINT FK_PURCHASE_ORDER_LINE_ON_ITEMID FOREIGN KEY (itemId) REFERENCES items (id), | CONSTRAINT FK_PURCHASE_ORDER_LINE_ON_ITEMID FOREIGN KEY (itemId) REFERENCES items (id), | ||||
| CONSTRAINT FK_PURCHASE_ORDER_LINE_ON_UOMID FOREIGN KEY (uomId) REFERENCES uom_conversion (id), | |||||
| CONSTRAINT FK_PURCHASE_ORDER_LINE_ON_PURCHASEORDERID FOREIGN KEY (purchaseOrderId) REFERENCES purchase_order (id), | CONSTRAINT FK_PURCHASE_ORDER_LINE_ON_PURCHASEORDERID FOREIGN KEY (purchaseOrderId) REFERENCES purchase_order (id), | ||||
| CONSTRAINT FK_PURCHASE_ORDER_LINE_ON_M18DATALOGID FOREIGN KEY (m18DataLogId) REFERENCES m18_data_log (id) | CONSTRAINT FK_PURCHASE_ORDER_LINE_ON_M18DATALOGID FOREIGN KEY (m18DataLogId) REFERENCES m18_data_log (id) | ||||
| ); | ); | ||||