@@ -0,0 +1,48 @@ | |||
package com.ffii.fpsms.modules.deliveryOrder.entity | |||
import com.ffii.core.entity.BaseEntity | |||
import com.ffii.fpsms.modules.master.entity.Shop | |||
import com.ffii.fpsms.modules.purchaseOrder.entity.PurchaseOrder | |||
import com.ffii.fpsms.modules.user.entity.User | |||
import jakarta.persistence.* | |||
import jakarta.validation.constraints.NotNull | |||
import jakarta.validation.constraints.Size | |||
import java.time.Instant | |||
@Entity | |||
@Table(name = "delivery_order") | |||
open class DeliveryOrder: BaseEntity<Long>() { | |||
@ManyToOne | |||
@JoinColumn(name = "purchaseOrderId") | |||
open var purchaseOrder: PurchaseOrder? = null | |||
@Size(max = 100) | |||
@NotNull | |||
@Column(name = "code", nullable = false, length = 100) | |||
open var code: String? = null | |||
@Size(max = 100) | |||
@Column(name = "consoCode", length = 100) | |||
open var consoCode: String? = null | |||
@Size(max = 500) | |||
@Column(name = "remarks", length = 500) | |||
open var remarks: String? = null | |||
@NotNull | |||
@Column(name = "targetDate", nullable = false) | |||
open var targetDate: Instant? = null | |||
@ManyToOne | |||
@JoinColumn(name = "shopId") | |||
open var shop: Shop? = null | |||
@Size(max = 30) | |||
@NotNull | |||
@Column(name = "status", nullable = false, length = 30) | |||
open var status: String? = null | |||
@ManyToOne | |||
@JoinColumn(name = "handlerId", referencedColumnName = "id") | |||
open var handler: User? = null | |||
} |
@@ -0,0 +1,37 @@ | |||
package com.ffii.fpsms.modules.deliveryOrder.entity | |||
import com.ffii.core.entity.BaseEntity | |||
import com.ffii.fpsms.modules.master.entity.Items | |||
import com.ffii.fpsms.modules.master.entity.UomConversion | |||
import com.ffii.fpsms.modules.purchaseOrder.entity.PurchaseOrderLine | |||
import jakarta.persistence.* | |||
import jakarta.validation.constraints.NotNull | |||
import jakarta.validation.constraints.Size | |||
import java.math.BigDecimal | |||
@Entity | |||
@Table(name = "delivery_order_line") | |||
open class DeliveryOrderLine: BaseEntity<Long>() { | |||
@ManyToOne | |||
@JoinColumn(name = "purchaseOrderLineId") | |||
open var purchaseOrderLine: PurchaseOrderLine? = null | |||
@NotNull | |||
@ManyToOne(fetch = FetchType.LAZY, optional = false) | |||
@JoinColumn(name = "itemId", nullable = false) | |||
open var item: Items? = null | |||
@NotNull | |||
@Column(name = "qty", nullable = false, precision = 14, scale = 2) | |||
open var qty: BigDecimal? = null | |||
@NotNull | |||
@ManyToOne(fetch = FetchType.LAZY, optional = false) | |||
@JoinColumn(name = "uomId", nullable = false) | |||
open var uom: UomConversion? = null | |||
@Size(max = 30) | |||
@NotNull | |||
@Column(name = "status", nullable = false, length = 30) | |||
open var status: String? = null | |||
} |
@@ -0,0 +1,8 @@ | |||
package com.ffii.fpsms.modules.deliveryOrder.entity | |||
import com.ffii.core.support.AbstractRepository | |||
import org.springframework.stereotype.Repository | |||
@Repository | |||
interface DeliveryOrderLineRepository : AbstractRepository<DeliveryOrderLine, Long> { | |||
} |
@@ -0,0 +1,8 @@ | |||
package com.ffii.fpsms.modules.deliveryOrder.entity | |||
import com.ffii.core.support.AbstractRepository | |||
import org.springframework.stereotype.Repository | |||
@Repository | |||
interface DeliveryOrderRepository : AbstractRepository<DeliveryOrder, Long> { | |||
} |
@@ -0,0 +1,65 @@ | |||
package com.ffii.fpsms.modules.jobOrder.entity | |||
import com.ffii.core.entity.BaseEntity | |||
import com.ffii.fpsms.modules.jobPlanningLog.entity.JobPlanningLog | |||
import com.ffii.fpsms.modules.master.entity.Bom | |||
import com.ffii.fpsms.modules.user.entity.User | |||
import jakarta.persistence.* | |||
import jakarta.validation.constraints.NotNull | |||
import jakarta.validation.constraints.Size | |||
import java.math.BigDecimal | |||
import java.time.LocalDateTime | |||
@Entity | |||
@Table(name = "job_order") | |||
open class JobOrder: BaseEntity<Long>() { | |||
@Size(max = 100) | |||
@NotNull | |||
@Column(name = "code", nullable = false, length = 100) | |||
open var code: String? = null | |||
@NotNull | |||
@ManyToOne | |||
@JoinColumn(name = "bomId", nullable = false) | |||
open var bom: Bom? = null | |||
@Column(name = "planStart") | |||
open var planStart: LocalDateTime? = null | |||
@Column(name = "actualStart") | |||
open var actualStart: LocalDateTime? = null | |||
@Column(name = "planEnd") | |||
open var planEnd: LocalDateTime? = null | |||
@Column(name = "actualEnd") | |||
open var actualEnd: LocalDateTime? = null | |||
@Column(name = "reqQty", precision = 14, scale = 2) | |||
open var reqQty: BigDecimal? = null | |||
@Column(name = "actualQty", precision = 14, scale = 2) | |||
open var actualQty: BigDecimal? = null | |||
@Size(max = 100) | |||
@NotNull | |||
@Column(name = "status", nullable = false, length = 100) | |||
open var status: String? = null | |||
@Size(max = 500) | |||
@Column(name = "remarks", length = 500) | |||
open var remarks: String? = null | |||
@Size(max = 20) | |||
@NotNull | |||
@Column(name = "type", nullable = false, length = 20) | |||
open var type: String? = null | |||
@ManyToOne | |||
@JoinColumn(name = "approverId", referencedColumnName = "id") | |||
open var approver: User? = null | |||
@ManyToOne | |||
@JoinColumn(name = "jobPlanningLogId") | |||
open var jobPlanningLog: JobPlanningLog? = null | |||
} |
@@ -0,0 +1,42 @@ | |||
package com.ffii.fpsms.modules.jobOrder.entity | |||
import com.ffii.core.entity.BaseEntity | |||
import com.ffii.fpsms.modules.master.entity.Items | |||
import com.ffii.fpsms.modules.master.entity.UomConversion | |||
import com.ffii.fpsms.modules.stock.entity.InventoryLotLine | |||
import jakarta.persistence.* | |||
import jakarta.validation.constraints.NotNull | |||
import java.math.BigDecimal | |||
@Entity | |||
@Table(name = "job_order_material") | |||
open class JobOrderMaterial : BaseEntity<Long>() { | |||
@NotNull | |||
@ManyToOne | |||
@JoinColumn(name = "jopId", nullable = false) | |||
open var jop: JobOrderProcess? = null | |||
@NotNull | |||
@ManyToOne | |||
@JoinColumn(name = "itemId", nullable = false) | |||
open var item: Items? = null | |||
@NotNull | |||
@Column(name = "qty", nullable = false, precision = 14, scale = 2) | |||
open var qty: BigDecimal? = null | |||
@NotNull | |||
@ManyToOne | |||
@JoinColumn(name = "uomId", nullable = false) | |||
open var uom: UomConversion? = null | |||
@ManyToOne | |||
@JoinColumn(name = "inventoryLotLineId") | |||
open var inventoryLotLine: InventoryLotLine? = null | |||
@NotNull | |||
@ManyToOne | |||
@JoinColumn(name = "joProcessDetailId", nullable = false) | |||
open var joProcessDetail: JobOrderProcessDetail? = null | |||
} |
@@ -0,0 +1,8 @@ | |||
package com.ffii.fpsms.modules.jobOrder.entity | |||
import com.ffii.core.support.AbstractRepository | |||
import org.springframework.stereotype.Repository | |||
@Repository | |||
interface JobOrderMaterialRepository : AbstractRepository<JobOrderMaterial, Long> { | |||
} |
@@ -0,0 +1,39 @@ | |||
package com.ffii.fpsms.modules.jobOrder.entity | |||
import com.ffii.core.entity.BaseEntity | |||
import com.ffii.fpsms.modules.master.entity.Process | |||
import jakarta.persistence.* | |||
import jakarta.validation.constraints.NotNull | |||
import jakarta.validation.constraints.Size | |||
import java.time.LocalDateTime | |||
@Entity | |||
@Table(name = "job_order_process") | |||
open class JobOrderProcess : BaseEntity<Long>() { | |||
@NotNull | |||
@ManyToOne(fetch = FetchType.LAZY, optional = false) | |||
@JoinColumn(name = "joId", nullable = false) | |||
open var jo: JobOrder? = null | |||
@NotNull | |||
@ManyToOne(fetch = FetchType.LAZY, optional = false) | |||
@JoinColumn(name = "processId", nullable = false) | |||
open var process: Process? = null | |||
@Column(name = "startTime") | |||
open var startTime: LocalDateTime? = null | |||
@Column(name = "endTime") | |||
open var endTime: LocalDateTime? = null | |||
@Size(max = 20) | |||
@Column(name = "status", length = 20) | |||
open var status: String? = null | |||
@Column(name = "seqNo") | |||
open var seqNo: Long? = null | |||
@Size(max = 500) | |||
@Column(name = "remarks", length = 500) | |||
open var remarks: String? = null | |||
} |
@@ -0,0 +1,38 @@ | |||
package com.ffii.fpsms.modules.jobOrder.entity | |||
import com.ffii.core.entity.BaseEntity | |||
import com.ffii.fpsms.modules.master.entity.Equipment | |||
import com.ffii.fpsms.modules.user.entity.User | |||
import jakarta.persistence.* | |||
import jakarta.validation.constraints.NotNull | |||
import jakarta.validation.constraints.Size | |||
import java.time.LocalDateTime | |||
@Entity | |||
@Table(name = "job_order_process_detail") | |||
open class JobOrderProcessDetail: BaseEntity<Long>() { | |||
@NotNull | |||
@ManyToOne | |||
@JoinColumn(name = "jopId", nullable = false) | |||
open var jop: JobOrderProcess? = null | |||
@NotNull | |||
@ManyToOne | |||
@JoinColumn(name = "equipmentId", nullable = false) | |||
open var equipment: Equipment? = null | |||
@NotNull | |||
@ManyToOne | |||
@JoinColumn(name = "operatorId", nullable = false, referencedColumnName = "id") | |||
open var operator: User? = null | |||
@Column(name = "operatingStart") | |||
open var operatingStart: LocalDateTime? = null | |||
@Column(name = "operatingEnd") | |||
open var operatingEnd: LocalDateTime? = null | |||
@Size(max = 500) | |||
@Column(name = "remarks", length = 500) | |||
open var remarks: String? = null | |||
} |
@@ -0,0 +1,8 @@ | |||
package com.ffii.fpsms.modules.jobOrder.entity | |||
import com.ffii.core.support.AbstractRepository | |||
import org.springframework.stereotype.Repository | |||
@Repository | |||
interface JobOrderProcessDetailRepository : AbstractRepository<JobOrderProcessDetail, Long> { | |||
} |
@@ -0,0 +1,8 @@ | |||
package com.ffii.fpsms.modules.jobOrder.entity | |||
import com.ffii.core.support.AbstractRepository | |||
import org.springframework.stereotype.Repository | |||
@Repository | |||
interface JobOrderProcessRepository : AbstractRepository<JobOrderProcess, Long> { | |||
} |
@@ -0,0 +1,8 @@ | |||
package com.ffii.fpsms.modules.jobOrder.entity | |||
import com.ffii.core.support.AbstractRepository | |||
import org.springframework.stereotype.Repository | |||
@Repository | |||
interface JobOrderRepository : AbstractRepository<JobOrder, Long> { | |||
} |
@@ -0,0 +1,64 @@ | |||
package com.ffii.fpsms.modules.jobPlanningLog.entity | |||
import com.ffii.core.entity.BaseEntity | |||
import com.ffii.fpsms.modules.master.entity.Bom | |||
import com.ffii.fpsms.modules.user.entity.User | |||
import jakarta.persistence.* | |||
import jakarta.validation.constraints.NotNull | |||
import jakarta.validation.constraints.Size | |||
import java.math.BigDecimal | |||
import java.time.Instant | |||
@Entity | |||
@Table(name = "job_planning_log") | |||
open class JobPlanningLog: BaseEntity<Long>() { | |||
@Size(max = 100) | |||
@NotNull | |||
@Column(name = "code", nullable = false, length = 100) | |||
open var code: String? = null | |||
@NotNull | |||
@ManyToOne(fetch = FetchType.LAZY, optional = false) | |||
@JoinColumn(name = "bomId", nullable = false) | |||
open var bom: Bom? = null | |||
@Column(name = "planStart") | |||
open var planStart: Instant? = null | |||
@Column(name = "actualStart") | |||
open var actualStart: Instant? = null | |||
@Column(name = "planEnd") | |||
open var planEnd: Instant? = null | |||
@Column(name = "actualEnd") | |||
open var actualEnd: Instant? = null | |||
@Column(name = "reqQty", precision = 14, scale = 2) | |||
open var reqQty: BigDecimal? = null | |||
@Column(name = "actualQty", precision = 14, scale = 2) | |||
open var actualQty: BigDecimal? = null | |||
@Size(max = 100) | |||
@NotNull | |||
@Column(name = "status", nullable = false, length = 100) | |||
open var status: String? = null | |||
@Size(max = 500) | |||
@Column(name = "remarks", length = 500) | |||
open var remarks: String? = null | |||
@Size(max = 20) | |||
@NotNull | |||
@Column(name = "type", nullable = false, length = 20) | |||
open var type: String? = null | |||
@ManyToOne(fetch = FetchType.LAZY) | |||
@JoinColumn(name = "approverId", referencedColumnName = "id") | |||
open var approver: User? = null | |||
@ManyToOne(fetch = FetchType.LAZY) | |||
@JoinColumn(name = "lastLogId") | |||
open var lastLog: JobPlanningLog? = null | |||
} |
@@ -0,0 +1,8 @@ | |||
package com.ffii.fpsms.modules.jobPlanningLog.entity | |||
import com.ffii.core.support.AbstractRepository | |||
import org.springframework.stereotype.Repository | |||
@Repository | |||
interface JobPlanningLogRepository : AbstractRepository<JobPlanningLog, Long> { | |||
} |
@@ -0,0 +1,50 @@ | |||
package com.ffii.fpsms.modules.master.entity | |||
import com.ffii.core.entity.BaseEntity | |||
import jakarta.persistence.Column | |||
import jakarta.persistence.Entity | |||
import jakarta.persistence.Table | |||
import jakarta.validation.constraints.NotNull | |||
import jakarta.validation.constraints.Size | |||
@Entity | |||
@Table(name = "company") | |||
open class Company : BaseEntity<Long>() { | |||
@Size(max = 100) | |||
@NotNull | |||
@Column(name = "code", nullable = false, length = 100) | |||
open var code: String? = null | |||
@Size(max = 100) | |||
@NotNull | |||
@Column(name = "name", nullable = false, length = 100) | |||
open var name: String? = null | |||
@Size(max = 100) | |||
@Column(name = "brNo", length = 100) | |||
open var brNo: String? = null | |||
@Size(max = 100) | |||
@Column(name = "contactNo", length = 100) | |||
open var contactNo: String? = null | |||
@Size(max = 100) | |||
@Column(name = "email", length = 100) | |||
open var email: String? = null | |||
@Size(max = 500) | |||
@Column(name = "addr1", length = 500) | |||
open var addr1: String? = null | |||
@Size(max = 500) | |||
@Column(name = "addr2", length = 500) | |||
open var addr2: String? = null | |||
@Size(max = 500) | |||
@Column(name = "addr3", length = 500) | |||
open var addr3: String? = null | |||
@Size(max = 500) | |||
@Column(name = "addr4", length = 500) | |||
open var addr4: String? = null | |||
} |
@@ -0,0 +1,8 @@ | |||
package com.ffii.fpsms.modules.master.entity | |||
import com.ffii.core.support.AbstractRepository | |||
import org.springframework.stereotype.Repository | |||
@Repository | |||
interface CompanyRepository : AbstractRepository<Company, Long> { | |||
} |
@@ -0,0 +1,15 @@ | |||
package com.ffii.fpsms.modules.master.entity | |||
import com.ffii.core.entity.BaseEntity | |||
import jakarta.persistence.* | |||
import jakarta.validation.constraints.NotNull | |||
import jakarta.validation.constraints.Size | |||
@Entity | |||
@Table(name = "item_category") | |||
open class ItemCategory : BaseEntity<Long>() { | |||
@Size(max = 50) | |||
@NotNull | |||
@Column(name = "name", nullable = false, length = 50) | |||
open var name: String? = null | |||
} |
@@ -0,0 +1,8 @@ | |||
package com.ffii.fpsms.modules.master.entity | |||
import com.ffii.core.support.AbstractRepository | |||
import org.springframework.stereotype.Repository | |||
@Repository | |||
interface ItemCategoryRepository : AbstractRepository<ItemCategory, Long> { | |||
} |
@@ -0,0 +1,39 @@ | |||
package com.ffii.fpsms.modules.stock.entity | |||
import com.ffii.core.entity.BaseEntity | |||
import jakarta.persistence.* | |||
import jakarta.validation.constraints.NotNull | |||
import jakarta.validation.constraints.Size | |||
import java.time.LocalDateTime | |||
@Entity | |||
@Table(name = "stock_take") | |||
open class StockTake: BaseEntity<Long>() { | |||
@Size(max = 50) | |||
@NotNull | |||
@Column(name = "code", nullable = false, length = 50) | |||
open var code: String? = null | |||
@NotNull | |||
@Column(name = "planStart", nullable = false) | |||
open var planStart: LocalDateTime? = null | |||
@NotNull | |||
@Column(name = "planEnd", nullable = false) | |||
open var planEnd: LocalDateTime? = null | |||
@Column(name = "actualStart") | |||
open var actualStart: LocalDateTime? = null | |||
@Column(name = "actualEnd") | |||
open var actualEnd: LocalDateTime? = null | |||
@Size(max = 20) | |||
@NotNull | |||
@Column(name = "status", nullable = false, length = 20) | |||
open var status: String? = null | |||
@Size(max = 500) | |||
@Column(name = "remarks", length = 500) | |||
open var remarks: String? = null | |||
} |
@@ -0,0 +1,45 @@ | |||
package com.ffii.fpsms.modules.stock.entity | |||
import com.ffii.core.entity.BaseEntity | |||
import com.ffii.fpsms.modules.master.entity.UomConversion | |||
import jakarta.persistence.* | |||
import jakarta.validation.constraints.NotNull | |||
import jakarta.validation.constraints.Size | |||
import java.math.BigDecimal | |||
import java.time.LocalDateTime | |||
@Entity | |||
@Table(name = "stock_take_line") | |||
open class StockTakeLine : BaseEntity<Long>() { | |||
@NotNull | |||
@ManyToOne | |||
@JoinColumn(name = "stockTakeId", nullable = false) | |||
open var stockTake: StockTake? = null | |||
@NotNull | |||
@ManyToOne | |||
@JoinColumn(name = "inventoryLotLineId", nullable = false) | |||
open var inventoryLotLine: InventoryLotLine? = null | |||
@Column(name = "initialQty", precision = 14, scale = 2) | |||
open var initialQty: BigDecimal? = null | |||
@Column(name = "finalQty", precision = 14, scale = 2) | |||
open var finalQty: BigDecimal? = null | |||
@ManyToOne | |||
@JoinColumn(name = "uomId") | |||
open var uom: UomConversion? = null | |||
@Column(name = "completeDate") | |||
open var completeDate: LocalDateTime? = null | |||
@Size(max = 20) | |||
@NotNull | |||
@Column(name = "status", nullable = false, length = 20) | |||
open var status: String? = null | |||
@Size(max = 500) | |||
@Column(name = "remarks", length = 500) | |||
open var remarks: String? = null | |||
} |
@@ -0,0 +1,8 @@ | |||
package com.ffii.fpsms.modules.stock.entity | |||
import com.ffii.core.support.AbstractRepository | |||
import org.springframework.stereotype.Repository | |||
@Repository | |||
interface StockTakeLineRepository : AbstractRepository<StockTakeLine, Long> { | |||
} |
@@ -0,0 +1,8 @@ | |||
package com.ffii.fpsms.modules.stock.entity | |||
import com.ffii.core.support.AbstractRepository | |||
import org.springframework.stereotype.Repository | |||
@Repository | |||
interface StockTakeRepository : AbstractRepository<StockTake, Long> { | |||
} |
@@ -0,0 +1,8 @@ | |||
package com.ffii.fpsms.modules.stock.entity | |||
import com.ffii.core.support.AbstractRepository | |||
import org.springframework.stereotype.Repository | |||
@Repository | |||
interface SuggestPickLotRepository : AbstractRepository<SuggestedPickLot, Long> { | |||
} |
@@ -0,0 +1,30 @@ | |||
package com.ffii.fpsms.modules.stock.entity | |||
import com.ffii.core.entity.BaseEntity | |||
import com.ffii.fpsms.modules.master.entity.Warehouse | |||
import jakarta.persistence.* | |||
import jakarta.validation.constraints.NotNull | |||
import jakarta.validation.constraints.Size | |||
@Entity | |||
@Table(name = "suggested_pick_lot") | |||
open class SuggestedPickLot: BaseEntity<Long>() { | |||
@Size(max = 100) | |||
@NotNull | |||
@Column(name = "type", nullable = false, length = 100) | |||
open var type: String? = null | |||
@ManyToOne | |||
@JoinColumn(name = "stockOutLineId") | |||
open var stockOutLine: StockOutLine? = null | |||
@NotNull | |||
@ManyToOne | |||
@JoinColumn(name = "suggestedLotId", nullable = false) | |||
open var suggestedLot: InventoryLot? = null | |||
@NotNull | |||
@ManyToOne | |||
@JoinColumn(name = "suggestedLocId", nullable = false) | |||
open var suggestedLoc: Warehouse? = null | |||
} |
@@ -0,0 +1,43 @@ | |||
package com.ffii.fpsms.modules.stock.entity | |||
import com.ffii.core.entity.BaseEntity | |||
import com.ffii.fpsms.modules.user.entity.User | |||
import jakarta.persistence.* | |||
import jakarta.validation.constraints.NotNull | |||
import jakarta.validation.constraints.Size | |||
import java.time.LocalDateTime | |||
@Entity | |||
@Table(name = "supervision_approval_log") | |||
open class SupervisionApprovalLog : BaseEntity<Long>() { | |||
@NotNull | |||
@ManyToOne | |||
@JoinColumn(name = "personInCharge", nullable = false, referencedColumnName = "id") | |||
open var personInCharge: User? = null | |||
@Size(max = 100) | |||
@NotNull | |||
@Column(name = "type", nullable = false, length = 100) | |||
open var type: String? = null | |||
@ManyToOne | |||
@JoinColumn(name = "stockInLineId") | |||
open var stockInLine: StockInLine? = null | |||
@ManyToOne | |||
@JoinColumn(name = "stockOutLineId") | |||
open var stockOutLine: StockOutLine? = null | |||
@Column(name = "recordDate") | |||
open var recordDate: LocalDateTime? = null | |||
@Size(max = 100) | |||
@NotNull | |||
@Column(name = "status", nullable = false, length = 100) | |||
open var status: String? = null | |||
@Size(max = 500) | |||
@NotNull | |||
@Column(name = "reason", nullable = false, length = 500) | |||
open var reason: String? = null | |||
} |
@@ -0,0 +1,8 @@ | |||
package com.ffii.fpsms.modules.stock.entity | |||
import com.ffii.core.support.AbstractRepository | |||
import org.springframework.stereotype.Repository | |||
@Repository | |||
interface SupervisionApprovalLogRepository : AbstractRepository<SupervisionApprovalLog, Long> { | |||
} |
@@ -0,0 +1,45 @@ | |||
-- liquibase formatted sql | |||
-- changeset cyril:delivery order | |||
CREATE TABLE `delivery_order` | |||
( | |||
`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', | |||
`purchaseOrderId` INT NULL, | |||
`code` varchar(100) NOT NULL, | |||
`consoCode` varchar(100) NULL, | |||
`remarks` varchar(500) NULL, | |||
`targetDate` DATETIME NOT NULL, | |||
`shopId` INT NULL, | |||
`status` VARCHAR(30) NOT NULL DEFAULT 'pending', | |||
`handlerId` INT NULL, | |||
CONSTRAINT pk_delivery_order PRIMARY KEY (id), | |||
CONSTRAINT `FK_DELIVERY_ORDER_ON_PURCHASEORDERID` FOREIGN KEY (`purchaseOrderId`) REFERENCES `purchase_order` (`id`), | |||
CONSTRAINT `FK_DELIVERY_ORDER_ON_SHOPID` FOREIGN KEY (`shopId`) REFERENCES `shop` (`id`), | |||
CONSTRAINT `FK_DELIVERY_ORDER_ON_HANDLERID` FOREIGN KEY (`handlerId`) REFERENCES `user` (`id`) | |||
); | |||
CREATE TABLE `delivery_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', | |||
`purchaseOrderLineId` INT NULL, | |||
`itemId` INT NOT NULL, | |||
`qty` DECIMAL(14, 2) NOT NULL, | |||
`uomId` INT NOT NULL, | |||
`status` VARCHAR(30) NOT NULL DEFAULT 'pending', | |||
CONSTRAINT pk_delivery_order_line PRIMARY KEY (id), | |||
CONSTRAINT `FK_DELIVERY_ORDER_LINE_ON_PURCHASEORDERLINEID` FOREIGN KEY (`purchaseOrderLineId`) REFERENCES `purchase_order_line` (`id`), | |||
CONSTRAINT `FK_DELIVERY_ORDER_LINE_ON_ITEMID` FOREIGN KEY (`itemId`) REFERENCES `items` (`id`), | |||
CONSTRAINT `FK_DELIVERY_ORDER_LINE_ON_UOMID` FOREIGN KEY (`uomId`) REFERENCES `uom_conversion` (`id`) | |||
); |
@@ -0,0 +1,15 @@ | |||
-- liquibase formatted sql | |||
-- changeset cyril:item category | |||
CREATE TABLE `item_category` | |||
( | |||
`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', | |||
`name` VARCHAR(50) NOT NULL, | |||
CONSTRAINT pk_item_category PRIMARY KEY (id) | |||
); |
@@ -0,0 +1,30 @@ | |||
-- liquibase formatted sql | |||
-- changeset cyril:job planning log | |||
CREATE TABLE `job_planning_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', | |||
`code` VARCHAR(100) NOT NULL, | |||
`bomId` INT NOT NULL, | |||
`planStart` DATETIME NULL, | |||
`actualStart` DATETIME NULL, | |||
`planEnd` DATETIME NULL, | |||
`actualEnd` DATETIME NULL, | |||
`reqQty` DECIMAL(14, 2) NULL, | |||
`actualQty` DECIMAL(14, 2) NULL, | |||
`status` VARCHAR(100) NOT NULL default 'planning', | |||
`remarks` VARCHAR(500) NULL, | |||
`type` VARCHAR(20) NOT NULL default 'rough', | |||
`approverId` INT NULL, | |||
`lastLogId` INT NULL, | |||
CONSTRAINT pk_job_planning_log PRIMARY KEY (id), | |||
CONSTRAINT `FK_JOB_PLANNING_LOG_ON_BOMID` FOREIGN KEY (`bomId`) REFERENCES `bom` (`id`), | |||
CONSTRAINT `FK_JOB_PLANNING_LOG_ON_APPROVERID` FOREIGN KEY (`approverId`) REFERENCES `user` (`id`), | |||
CONSTRAINT `FK_JOB_PLANNING_LOG_ON_LASTLOGID` FOREIGN KEY (`lastLogId`) REFERENCES `job_planning_log` (`id`) | |||
); |
@@ -0,0 +1,95 @@ | |||
-- liquibase formatted sql | |||
-- changeset cyril:job order | |||
CREATE TABLE `job_order` | |||
( | |||
`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(100) NOT NULL, | |||
`bomId` INT NOT NULL, | |||
`planStart` DATETIME NULL, | |||
`actualStart` DATETIME NULL, | |||
`planEnd` DATETIME NULL, | |||
`actualEnd` DATETIME NULL, | |||
`reqQty` DECIMAL(14, 2) NULL, | |||
`actualQty` DECIMAL(14, 2) NULL, | |||
`status` VARCHAR(100) NOT NULL default 'planning', | |||
`remarks` VARCHAR(500) NULL, | |||
`type` VARCHAR(20) NOT NULL default 'rough', | |||
`approverId` INT NULL, | |||
`jobPlanningLogId` INt NULL, | |||
CONSTRAINT pk_job_order PRIMARY KEY (id), | |||
CONSTRAINT `FK_JOB_ORDER_ON_BOMID` FOREIGN KEY (`bomId`) REFERENCES `bom` (`id`), | |||
CONSTRAINT `FK_JOB_ORDER_ON_APPROVERID` FOREIGN KEY (`approverId`) REFERENCES `user` (`id`), | |||
CONSTRAINT `FK_JOB_ORDER_ON_JOBPLANNINGLOGID` FOREIGN KEY (`jobPlanningLogId`) REFERENCES `job_planning_log` (`id`) | |||
); | |||
CREATE TABLE `job_order_process` | |||
( | |||
`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', | |||
`joId` INT NOT NULL, | |||
`processId` INT NOT NULL, | |||
`startTime` DATETIME NULL, | |||
`endTime` DATETIME NULL, | |||
`status` VARCHAR(20) NULL, | |||
`seqNo` INT NULL, | |||
`remarks` VARCHAR(500) NULL, | |||
CONSTRAINT pk_job_order_process PRIMARY KEY (id), | |||
CONSTRAINT `FK_JOB_ORDER_PROCESS_ON_JOID` FOREIGN KEY (`joId`) REFERENCES `job_order` (`id`), | |||
CONSTRAINT `FK_JOB_ORDER_PROCESS_ON_PROCESSID` FOREIGN KEY (`processId`) REFERENCES `process` (`id`) | |||
); | |||
CREATE TABLE `job_order_process_detail` | |||
( | |||
`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', | |||
`jopId` INT NOT NULL, | |||
`equipmentId` INT NOT NULL, | |||
`operatorId` INT NOT NULL, | |||
`operatingStart` DATETIME NULL, | |||
`operatingEnd` DATETIME NULL, | |||
`remarks` VARCHAR(500) NULL, | |||
CONSTRAINT pk_job_order_process_detail PRIMARY KEY (id), | |||
CONSTRAINT `FK_JOB_ORDER_PROCESS_DETAIL_ON_JOPID` FOREIGN KEY (`jopId`) REFERENCES `job_order_process` (`id`), | |||
CONSTRAINT `FK_JOB_ORDER_PROCESS_DETAIL_ON_EQUIPMENTID` FOREIGN KEY (`equipmentId`) REFERENCES `equipment` (`id`), | |||
CONSTRAINT `FK_JOB_ORDER_PROCESS_DETAIL_ON_OPERATORID` FOREIGN KEY (`operatorId`) REFERENCES `user` (`id`) | |||
); | |||
CREATE TABLE `job_order_material` | |||
( | |||
`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', | |||
`jopId` INT NOT NULL, | |||
`itemId` INT NOT NULL, | |||
`qty` DECIMAL(14, 2) NOT NULL, | |||
`uomId` INT NOT NULL, | |||
`inventoryLotLineId` INT NULL, | |||
`joProcessDetailId` INT NOT NULL, | |||
CONSTRAINT pk_job_order_material PRIMARY KEY (id), | |||
CONSTRAINT `FK_JOB_ORDER_MATERIAL_ON_JOPID` FOREIGN KEY (`jopId`) REFERENCES `job_order_process` (`id`), | |||
CONSTRAINT `FK_JOB_ORDER_MATERIAL_ON_ITEMID` FOREIGN KEY (`itemId`) REFERENCES `items` (`id`), | |||
CONSTRAINT `FK_JOB_ORDER_MATERIAL_ON_UOMID` FOREIGN KEY (`uomId`) REFERENCES `uom_conversion` (`id`), | |||
CONSTRAINT `FK_JOB_ORDER_MATERIAL_ON_LOTLINEID` FOREIGN KEY (`inventoryLotLineId`) REFERENCES `inventory_lot_line` (`id`), | |||
CONSTRAINT `FK_JOB_ORDER_MATERIAL_ON_JOPROCESSDETAILID` FOREIGN KEY (`joProcessDetailId`) REFERENCES `job_order_process_detail` (`id`) | |||
); |
@@ -0,0 +1,44 @@ | |||
-- liquibase formatted sql | |||
-- changeset cyril:stock take | |||
CREATE TABLE `stock_take` | |||
( | |||
`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, | |||
`planStart` DATETIME NOT NULL, | |||
`planEnd` DATETIME NOT NULL, | |||
`actualStart` DATETIME NULL, | |||
`actualEnd` DATETIME NULL, | |||
`status` VARCHAR(20) NOT NULL DEFAULT 'pending', | |||
`remarks` VARCHAR(500) NULL, | |||
CONSTRAINT pk_stock_take PRIMARY KEY (id) | |||
); | |||
CREATE TABLE `stock_take_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', | |||
`stockTakeId` INT NOT NULL, | |||
`inventoryLotLineId` INT NOT NULL, | |||
`initialQty` DECIMAL(14, 2) NULL, | |||
`finalQty` DECIMAL(14, 2) NULL, | |||
`uomId` INT NULL, | |||
`completeDate` DATETIME NULL, | |||
`status` VARCHAR(20) NOT NULL DEFAULT 'pending', | |||
`remarks` VARCHAR(500) NULL, | |||
CONSTRAINT pk_stock_take_line PRIMARY KEY (id), | |||
CONSTRAINT `FK_STOCK_TAKE_LINE_ON_STOCKTAKEID` FOREIGN KEY (`stockTakeId`) REFERENCES `stock_take` (`id`), | |||
CONSTRAINT `FK_STOCK_TAKE_LINE_ON_INVENTORYLOTLINEID` FOREIGN KEY (`inventoryLotLineId`) REFERENCES `inventory_lot_line` (`id`), | |||
CONSTRAINT `FK_STOCK_TAKE_LINE_ON_UOMID` FOREIGN KEY (`uomId`) REFERENCES `uom_conversion` (`id`) | |||
); |
@@ -0,0 +1,21 @@ | |||
-- liquibase formatted sql | |||
-- changeset cyril:suggested pick lot | |||
CREATE TABLE `suggested_pick_lot` | |||
( | |||
`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', | |||
`type` VARCHAR(100) NOT NULL, | |||
`stockOutLineId` INT NULL, | |||
`suggestedLotId` INT NOT NULL, | |||
`suggestedLocId` INT NOT NULL, | |||
CONSTRAINT pk_suggested_pick_lot PRIMARY KEY (id), | |||
CONSTRAINT `FK_SUGGESTED_PICK_LOT_ON_STOCKOUTLINEID` FOREIGN KEY (`stockOutLineId`) REFERENCES `stock_out_line` (`id`), | |||
CONSTRAINT `FK_SUGGESTED_PICK_LOT_ON_SUGGESTEDLOTID` FOREIGN KEY (`suggestedLotId`) REFERENCES `inventory_lot` (`id`), | |||
CONSTRAINT `FK_SUGGESTED_PICK_LOT_ON_SUGGESTEDLOCID` FOREIGN KEY (`suggestedLocId`) REFERENCES `warehouse` (`id`) | |||
); |
@@ -0,0 +1,24 @@ | |||
-- liquibase formatted sql | |||
-- changeset cyril:supervision approval log | |||
CREATE TABLE `supervision_approval_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', | |||
`personInCharge` INT NOT NULL, | |||
`type` VARCHAR(100) NOT NULL, | |||
`stockInLineId` INT NULL, | |||
`stockOutLineId` INT NULL, | |||
`recordDate` DATETIME NULL, | |||
`status` VARCHAR(100) NOT NULL, | |||
`reason` VARCHAR(500) NOT NULL, | |||
CONSTRAINT pk_supervision_approval_log PRIMARY KEY (id), | |||
CONSTRAINT `FK_SUPERVISION_APPROVAL_LOG_ON_PERSONINCHARGE` FOREIGN KEY (`personInCharge`) REFERENCES `user` (`id`), | |||
CONSTRAINT `FK_SUPERVISION_APPROVAL_LOG_ON_STOCKINLINEID` FOREIGN KEY (`stockInLineId`) REFERENCES `stock_in_line` (`id`), | |||
CONSTRAINT `FK_SUPERVISION_APPROVAL_LOG_ON_STOCKOUTLINEID` FOREIGN KEY (`stockOutLineId`) REFERENCES `stock_out_line` (`id`) | |||
); |
@@ -0,0 +1,23 @@ | |||
-- liquibase formatted sql | |||
-- changeset cyril:company | |||
CREATE TABLE `company` | |||
( | |||
`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(100) NOT NULL, | |||
`name` VARCHAR(100) NOT NULL, | |||
`brNo` VARCHAR(100) NULL, | |||
`contactNo` VARCHAR(100) NULL, | |||
`email` VARCHAR(100) NULL, | |||
`addr1` VARCHAR(500) NULL, | |||
`addr2` VARCHAR(500) NULL, | |||
`addr3` VARCHAR(500) NULL, | |||
`addr4` VARCHAR(500) NULL, | |||
CONSTRAINT pk_company PRIMARY KEY (id) | |||
); |