@@ -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) | ||||
); | ); |