| @@ -30,6 +30,8 @@ dependencies { | |||
| implementation 'org.liquibase:liquibase-core' | |||
| 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.poi', name: 'poi', 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 jakarta.persistence.Column | |||
| @@ -8,26 +8,30 @@ import jakarta.validation.constraints.NotNull | |||
| import jakarta.validation.constraints.Size | |||
| import org.hibernate.annotations.JdbcTypeCode | |||
| import org.hibernate.type.SqlTypes | |||
| import java.time.LocalDateTime | |||
| @Entity | |||
| @Table(name = "m18_data_log") | |||
| open class M18DataLog : BaseEntity<Long>() { | |||
| @Size(max = 10) | |||
| @Size(max = 1000) | |||
| @NotNull | |||
| @Column(name = "refType", nullable = false, length = 10) | |||
| @Column(name = "refType", nullable = false, length = 1000) | |||
| open var refType: String? = null | |||
| @NotNull | |||
| @Column(name = "m18Id", nullable = false) | |||
| open var m18Id: Int? = null | |||
| open var m18Id: Long? = null | |||
| @NotNull | |||
| @JdbcTypeCode(SqlTypes.JSON) | |||
| @Column(name = "dataLog", nullable = false) | |||
| open var dataLog: MutableMap<String, Any>? = null | |||
| open var dataLog: MutableMap<String, Any?>? = null | |||
| @Size(max = 5) | |||
| @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 org.springframework.stereotype.Repository | |||
| @Repository | |||
| 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( | |||
| val grant_type: String, | |||
| @@ -1,4 +1,4 @@ | |||
| package com.ffii.fpsms.m18.modals | |||
| package com.ffii.fpsms.m18.model | |||
| data class M18TokenResponse( | |||
| val access_token: String, | |||
| @@ -1,37 +1,54 @@ | |||
| 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: | |||
| 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: | |||
| config: 'classpath:log4j2.yml' | |||
| config: 'classpath:log4j2.yml' | |||
| 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 | |||
| ( | |||
| 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) | |||
| ); | |||
| CREATE TABLE uom_conversion | |||
| @@ -3,26 +3,27 @@ | |||
| --changeset cyril:master data for shop and warehouse | |||
| 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) | |||
| ); | |||
| @@ -3,16 +3,17 @@ | |||
| --changeset cyril: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) | |||
| ); | |||
| @@ -13,7 +13,7 @@ CREATE TABLE `purchase_order` | |||
| `code` VARCHAR(30) NOT NULL, | |||
| `supplierId` INT NULL, | |||
| `orderDate` DATETIME NULL, | |||
| `estimatedCompleteDate` DATETIME NULL, | |||
| `estimatedArrivalDate` DATETIME NULL, | |||
| `completeDate` DATETIME NULL, | |||
| `status` VARCHAR(10) NOT NULL DEFAULT 'pending', | |||
| `m18DataLogId` INT NOT NULL, | |||
| @@ -24,23 +24,25 @@ CREATE TABLE `purchase_order` | |||
| 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 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_M18DATALOGID FOREIGN KEY (m18DataLogId) REFERENCES m18_data_log (id) | |||
| ); | |||