@@ -6,15 +6,13 @@ import com.ffii.fpsms.m18.M18Config | |||
import com.ffii.fpsms.m18.enums.M18DataLogStatus | |||
import com.ffii.fpsms.m18.model.* | |||
import com.ffii.fpsms.m18.utils.CommonUtils | |||
import com.ffii.fpsms.m18.web.models.M18TestDoRequest | |||
import com.ffii.fpsms.m18.web.models.M18TestPoRequest | |||
import com.ffii.fpsms.m18.web.models.M18CommonRequest | |||
import com.ffii.fpsms.modules.deliveryOrder.enums.DeliveryOrderLineStatus | |||
import com.ffii.fpsms.modules.deliveryOrder.enums.DeliveryOrderStatus | |||
import com.ffii.fpsms.modules.deliveryOrder.service.DeliveryOrderLineService | |||
import com.ffii.fpsms.modules.deliveryOrder.service.DeliveryOrderService | |||
import com.ffii.fpsms.modules.deliveryOrder.web.models.SaveDeliveryOrderLineRequest | |||
import com.ffii.fpsms.modules.deliveryOrder.web.models.SaveDeliveryOrderRequest | |||
import com.ffii.fpsms.modules.master.entity.Items | |||
import com.ffii.fpsms.modules.master.service.ItemUomService | |||
import com.ffii.fpsms.modules.master.service.ItemsService | |||
import com.ffii.fpsms.modules.master.service.ShopService | |||
@@ -54,7 +52,7 @@ open class M18DeliveryOrderService( | |||
val M18_FETCH_PURCHASE_ORDER_LIST_API = "/search/search" | |||
// Include shop po | |||
open fun getDeliveryOrdersWithType(request: M18TestDoRequest): M18PurchaseOrderListResponseWithType? { | |||
open fun getDeliveryOrdersWithType(request: M18CommonRequest): M18PurchaseOrderListResponseWithType? { | |||
val deliveryOrders = M18PurchaseOrderListResponseWithType(mutableListOf()) | |||
val lastModifyDateConds = | |||
"lastModifyDate=largerOrEqual=${request.modifiedDateFrom ?: lastModifyDateStart}=and=lastModifyDate=lessOrEqual=${request.modifiedDateTo ?: lastModifyDateEnd}" | |||
@@ -108,7 +106,7 @@ open class M18DeliveryOrderService( | |||
return deliveryOrder | |||
} | |||
open fun saveDeliveryOrders(request: M18TestDoRequest) { | |||
open fun saveDeliveryOrders(request: M18CommonRequest) { | |||
logger.info("--------------------------------------------Start - Saving M18 Delivery Order--------------------------------------------") | |||
val deliveryOrdersWithType = getDeliveryOrdersWithType(request) | |||
@@ -148,7 +146,6 @@ open class M18DeliveryOrderService( | |||
logger.info("${doRefType}: Finding For Latest M18 Data Log...") | |||
val latestDeliveryOrderLog = | |||
m18DataLogService.findLatestM18DataLogWithSuccess(deliveryOrder.id, doRefType) | |||
logger.info(latestDeliveryOrderLog.toString()) | |||
// Save to m18_data_log table | |||
logger.info("${doRefType}: Saving for M18 Data Log...") | |||
@@ -5,8 +5,7 @@ import com.ffii.fpsms.api.service.ApiCallerService | |||
import com.ffii.fpsms.m18.M18Config | |||
import com.ffii.fpsms.m18.model.* | |||
import com.ffii.fpsms.m18.utils.CommonUtils | |||
import com.ffii.fpsms.m18.web.models.M18TestMasterDateRequest | |||
import com.ffii.fpsms.modules.master.entity.Items | |||
import com.ffii.fpsms.m18.web.models.M18CommonRequest | |||
import com.ffii.fpsms.modules.master.entity.UomConversion | |||
import com.ffii.fpsms.modules.master.enums.ShopType | |||
import com.ffii.fpsms.modules.master.service.* | |||
@@ -15,7 +14,6 @@ import org.slf4j.Logger | |||
import org.slf4j.LoggerFactory | |||
import org.springframework.stereotype.Service | |||
import java.math.BigDecimal | |||
import java.time.LocalDate | |||
import java.time.LocalDateTime | |||
import java.time.format.DateTimeFormatter | |||
@@ -63,7 +61,7 @@ open class M18MasterDataService( | |||
stSearch: String?, | |||
params: String? = null, | |||
conds: String? = null, | |||
request: M18TestMasterDateRequest, | |||
request: M18CommonRequest, | |||
): T? { | |||
val lastModifyDateFromConds = request.modifiedDateFrom?.let { "lastModifyDate=largerOrEqual=${it}" } | |||
val lastModifyDateToConds = request.modifiedDateTo?.let{ "lastModifyDate=lessOrEqual=${it}" } | |||
@@ -107,7 +105,7 @@ open class M18MasterDataService( | |||
} | |||
// --------------------------------------------- Product --------------------------------------------- /// | |||
open fun getProducts(request: M18TestMasterDateRequest): M18ProductListResponse? { | |||
open fun getProducts(request: M18CommonRequest): M18ProductListResponse? { | |||
// seems no beId | |||
return getList<M18ProductListResponse>( | |||
stSearch = StSearchType.PRODUCT.value, | |||
@@ -214,7 +212,7 @@ open class M18MasterDataService( | |||
} | |||
} | |||
open fun saveProducts(request: M18TestMasterDateRequest) { | |||
open fun saveProducts(request: M18CommonRequest) { | |||
logger.info("--------------------------------------------Start - Saving M18 Products / Materials--------------------------------------------") | |||
val items = getProducts(request) | |||
val exampleProducts = listOf<Long>(10946L, 3825L) | |||
@@ -314,7 +312,7 @@ open class M18MasterDataService( | |||
} | |||
// --------------------------------------------- Vendor --------------------------------------------- /// | |||
open fun getVendors(request: M18TestMasterDateRequest): M18VendorListResponse? { | |||
open fun getVendors(request: M18CommonRequest): M18VendorListResponse? { | |||
return getList<M18VendorListResponse>( | |||
stSearch = StSearchType.VENDOR.value, | |||
params = null, | |||
@@ -332,7 +330,7 @@ open class M18MasterDataService( | |||
) | |||
} | |||
open fun saveVendors(request: M18TestMasterDateRequest) { | |||
open fun saveVendors(request: M18CommonRequest) { | |||
logger.info("--------------------------------------------Start - Saving M18 Vendors--------------------------------------------") | |||
val vendors = getVendors(request) | |||
val exampleVendors = listOf<Long>(191L) | |||
@@ -397,7 +395,7 @@ open class M18MasterDataService( | |||
} | |||
// --------------------------------------------- Unit (UoM) --------------------------------------------- /// | |||
open fun getUnits(request: M18TestMasterDateRequest): M18UnitListResponse? { | |||
open fun getUnits(request: M18CommonRequest): M18UnitListResponse? { | |||
// seems no beId | |||
return getList<M18UnitListResponse>( | |||
stSearch = StSearchType.UNIT.value, | |||
@@ -416,7 +414,7 @@ open class M18MasterDataService( | |||
) | |||
} | |||
open fun saveUnits(request: M18TestMasterDateRequest) { | |||
open fun saveUnits(request: M18CommonRequest) { | |||
logger.info("--------------------------------------------Start - Saving M18 Units--------------------------------------------") | |||
val units = getUnits(request) | |||
@@ -481,7 +479,7 @@ open class M18MasterDataService( | |||
} | |||
// --------------------------------------------- Currency --------------------------------------------- /// | |||
open fun getCurrencies(request: M18TestMasterDateRequest): M18CurrencyListResponse? { | |||
open fun getCurrencies(request: M18CommonRequest): M18CurrencyListResponse? { | |||
return getList<M18CurrencyListResponse>( | |||
stSearch = StSearchType.CURRENCY.value, | |||
params = null, | |||
@@ -499,7 +497,7 @@ open class M18MasterDataService( | |||
) | |||
} | |||
open fun saveCurrencies(request: M18TestMasterDateRequest) { | |||
open fun saveCurrencies(request: M18CommonRequest) { | |||
logger.info("--------------------------------------------Start - Saving M18 Currencies--------------------------------------------") | |||
val currencies = getCurrencies(request) | |||
@@ -544,7 +542,7 @@ open class M18MasterDataService( | |||
} | |||
// --------------------------------------------- Bom --------------------------------------------- /// | |||
open fun getBoms(request: M18TestMasterDateRequest): M18BomListResponse? { | |||
open fun getBoms(request: M18CommonRequest): M18BomListResponse? { | |||
return getList<M18BomListResponse>( | |||
stSearch = StSearchType.BOM.value, | |||
params = null, | |||
@@ -562,7 +560,7 @@ open class M18MasterDataService( | |||
) | |||
} | |||
open fun saveBoms(request: M18TestMasterDateRequest) { | |||
open fun saveBoms(request: M18CommonRequest) { | |||
logger.info("--------------------------------------------Start - Saving M18 Boms--------------------------------------------") | |||
val boms = getBoms(request) | |||
@@ -657,7 +655,7 @@ open class M18MasterDataService( | |||
} | |||
// --------------------------------------------- Business Unit (Shop) --------------------------------------------- /// | |||
open fun getBusinessUnits(request: M18TestMasterDateRequest): M18BusinessUnitListResponse? { | |||
open fun getBusinessUnits(request: M18CommonRequest): M18BusinessUnitListResponse? { | |||
// seems no beId | |||
return getList<M18BusinessUnitListResponse>( | |||
stSearch = StSearchType.BUSINESS_UNIT.value, | |||
@@ -676,7 +674,7 @@ open class M18MasterDataService( | |||
) | |||
} | |||
open fun saveBusinessUnits(request: M18TestMasterDateRequest) { | |||
open fun saveBusinessUnits(request: M18CommonRequest) { | |||
logger.info("--------------------------------------------Start - Saving M18 Business Units (Shops)--------------------------------------------") | |||
val businessUnits = getBusinessUnits(request) | |||
@@ -6,7 +6,7 @@ import com.ffii.fpsms.m18.M18Config | |||
import com.ffii.fpsms.m18.enums.M18DataLogStatus | |||
import com.ffii.fpsms.m18.model.* | |||
import com.ffii.fpsms.m18.utils.CommonUtils | |||
import com.ffii.fpsms.m18.web.models.M18TestPoRequest | |||
import com.ffii.fpsms.m18.web.models.M18CommonRequest | |||
import com.ffii.fpsms.modules.deliveryOrder.service.DeliveryOrderLineService | |||
import com.ffii.fpsms.modules.deliveryOrder.service.DeliveryOrderService | |||
import com.ffii.fpsms.modules.master.service.ItemUomService | |||
@@ -55,7 +55,7 @@ open class M18PurchaseOrderService( | |||
val M18_FETCH_PURCHASE_ORDER_LIST_API = "/search/search" | |||
// Include material po, oem po | |||
open fun getPurchaseOrdersWithType(request: M18TestPoRequest): M18PurchaseOrderListResponseWithType? { | |||
open fun getPurchaseOrdersWithType(request: M18CommonRequest): M18PurchaseOrderListResponseWithType? { | |||
val purchaseOrders = M18PurchaseOrderListResponseWithType(mutableListOf()) | |||
val lastModifyDateConds = | |||
"lastModifyDate=largerOrEqual=${request.modifiedDateFrom ?: lastModifyDateStart}=and=lastModifyDate=lessOrEqual=${request.modifiedDateTo ?: lastModifyDateEnd}" | |||
@@ -162,7 +162,7 @@ open class M18PurchaseOrderService( | |||
return purchaseOrder | |||
} | |||
open fun savePurchaseOrders(request: M18TestPoRequest) { | |||
open fun savePurchaseOrders(request: M18CommonRequest) { | |||
logger.info("--------------------------------------------Start - Saving M18 Purchase Order--------------------------------------------") | |||
val purchaseOrdersWithType = getPurchaseOrdersWithType(request) | |||
val examplePurchaseOrders = listOf<Long>(4764034L) | |||
@@ -8,7 +8,7 @@ import com.ffii.fpsms.m18.model.M18PurchaseQuotationListResponse | |||
import com.ffii.fpsms.m18.model.M18PurchaseQuotationRequest | |||
import com.ffii.fpsms.m18.model.M18PurchaseQuotationResponse | |||
import com.ffii.fpsms.m18.utils.CommonUtils | |||
import com.ffii.fpsms.m18.web.models.M18TestPqRequest | |||
import com.ffii.fpsms.m18.web.models.M18CommonRequest | |||
import com.ffii.fpsms.modules.master.service.ItemUomService | |||
import com.ffii.fpsms.modules.master.service.ItemsService | |||
import com.ffii.fpsms.modules.purchaseQuotation.service.PurchaseQuotationLineService | |||
@@ -44,7 +44,7 @@ open class M18PurchaseQuotationService( | |||
val M18_LOAD_PURCHASE_QUOTATION_API = "/root/api/read/vqu" | |||
val M18_FETCH_PURCHASE_QUOTATION_LIST_API = "/search/search" | |||
open fun getPurchaseQuotations(request: M18TestPqRequest): M18PurchaseQuotationListResponse? { | |||
open fun getPurchaseQuotations(request: M18CommonRequest): M18PurchaseQuotationListResponse? { | |||
val lastModifyDateFromConds = request.modifiedDateFrom?.let { "lastModifyDate=largerOrEqual=${it}" } | |||
val lastModifyDateToConds = request.modifiedDateTo?.let{ "lastModifyDate=lessOrEqual=${it}" } | |||
val haveFromAndTo = lastModifyDateFromConds != null && lastModifyDateToConds != null | |||
@@ -94,7 +94,7 @@ open class M18PurchaseQuotationService( | |||
return purchaseQuotation | |||
} | |||
open fun savePurchaseQuotations(request: M18TestPqRequest) { | |||
open fun savePurchaseQuotations(request: M18CommonRequest) { | |||
logger.info("--------------------------------------------Start - Saving M18 Purchase Quotations--------------------------------------------") | |||
val purchaseQuotations = getPurchaseQuotations(request) | |||
@@ -1,7 +1,7 @@ | |||
package com.ffii.fpsms.m18.service | |||
import com.ffii.core.utils.JwtTokenUtil | |||
import com.ffii.fpsms.m18.web.models.M18TestPoRequest | |||
import com.ffii.fpsms.m18.web.models.M18CommonRequest | |||
import org.slf4j.Logger | |||
import org.slf4j.LoggerFactory | |||
import org.springframework.scheduling.annotation.Scheduled | |||
@@ -12,20 +12,22 @@ import java.time.format.DateTimeFormatter | |||
@Service | |||
open class M18SchedulerService( | |||
val m18PurchaseOrderService: M18PurchaseOrderService, | |||
val m18DeliveryOrderService: M18DeliveryOrderService, | |||
val m18MasterDataService: M18MasterDataService, | |||
) { | |||
var logger: Logger = LoggerFactory.getLogger(JwtTokenUtil::class.java) | |||
val dataStringFormat = DateTimeFormatter.ofPattern("yyyy-MM-dd") | |||
@Scheduled(cron = "0 0 0 * * *") | |||
open fun getPos() { | |||
open fun getM18Pos() { | |||
val today = LocalDateTime.now() | |||
val yesterday = today.minusDays(1L) | |||
val request = M18TestPoRequest( | |||
val request = M18CommonRequest( | |||
modifiedDateTo = today.format(dataStringFormat), | |||
modifiedDateFrom = yesterday.format(dataStringFormat) | |||
) | |||
m18PurchaseOrderService.savePurchaseOrders(request); | |||
m18DeliveryOrderService.saveDeliveryOrders(request); | |||
logger.info("today: ${today.format(dataStringFormat)}") | |||
logger.info("yesterday: ${yesterday.format(dataStringFormat)}") | |||
} |
@@ -6,10 +6,7 @@ import com.ffii.fpsms.m18.service.M18DeliveryOrderService | |||
import com.ffii.fpsms.m18.service.M18MasterDataService | |||
import com.ffii.fpsms.m18.service.M18PurchaseOrderService | |||
import com.ffii.fpsms.m18.service.M18PurchaseQuotationService | |||
import com.ffii.fpsms.m18.web.models.M18TestDoRequest | |||
import com.ffii.fpsms.m18.web.models.M18TestMasterDateRequest | |||
import com.ffii.fpsms.m18.web.models.M18TestPoRequest | |||
import com.ffii.fpsms.m18.web.models.M18TestPqRequest | |||
import com.ffii.fpsms.m18.web.models.M18CommonRequest | |||
import com.ffii.fpsms.modules.master.entity.ItemUom | |||
import com.ffii.fpsms.modules.master.entity.Items | |||
import com.ffii.fpsms.modules.master.entity.ShopRepository | |||
@@ -62,7 +59,7 @@ class M18TestController ( | |||
// --------------------------------------------- Master Data --------------------------------------------- /// | |||
@GetMapping("/all") | |||
fun m18All() { | |||
val mdRequest = M18TestMasterDateRequest() | |||
val mdRequest = M18CommonRequest() | |||
// Master Data | |||
m18MasterDataService.saveUnits(mdRequest) | |||
m18MasterDataService.saveProducts(mdRequest) | |||
@@ -71,13 +68,13 @@ class M18TestController ( | |||
m18MasterDataService.saveCurrencies(mdRequest) | |||
m18MasterDataService.saveBoms(mdRequest) | |||
val pqRequest = M18TestPqRequest() | |||
val pqRequest = M18CommonRequest() | |||
m18PurchaseQuotationService.savePurchaseQuotations(pqRequest) | |||
} | |||
// --------------------------------------------- Master Data --------------------------------------------- /// | |||
@PostMapping("/master-data") | |||
fun m18MasterData(@Valid @RequestBody request: M18TestMasterDateRequest) { | |||
fun m18MasterData(@Valid @RequestBody request: M18CommonRequest) { | |||
// Master Data | |||
m18MasterDataService.saveUnits(request) | |||
m18MasterDataService.saveProducts(request) | |||
@@ -88,7 +85,7 @@ class M18TestController ( | |||
} | |||
@PostMapping("/product") | |||
fun m18Products(@Valid @RequestBody request: M18TestMasterDateRequest) { | |||
fun m18Products(@Valid @RequestBody request: M18CommonRequest) { | |||
logger.info("Access token: ${m18Config.ACCESS_TOKEN}") | |||
m18MasterDataService.saveProducts(request) | |||
} | |||
@@ -100,52 +97,52 @@ class M18TestController ( | |||
} | |||
@PostMapping("/vendor") | |||
fun m18Vendor(@Valid @RequestBody request: M18TestMasterDateRequest) { | |||
fun m18Vendor(@Valid @RequestBody request: M18CommonRequest) { | |||
logger.info("Access token: ${m18Config.ACCESS_TOKEN}") | |||
m18MasterDataService.saveVendors(request) | |||
} | |||
@PostMapping("/unit") | |||
fun m18Unit(@Valid @RequestBody request: M18TestMasterDateRequest) { | |||
fun m18Unit(@Valid @RequestBody request: M18CommonRequest) { | |||
logger.info("Access token: ${m18Config.ACCESS_TOKEN}") | |||
m18MasterDataService.saveUnits(request) | |||
} | |||
@PostMapping("/currency") | |||
fun m18Currency(@Valid @RequestBody request: M18TestMasterDateRequest) { | |||
fun m18Currency(@Valid @RequestBody request: M18CommonRequest) { | |||
logger.info("Access token: ${m18Config.ACCESS_TOKEN}") | |||
m18MasterDataService.saveCurrencies(request) | |||
} | |||
@PostMapping("/bom") | |||
fun m18Bom(@Valid @RequestBody request: M18TestMasterDateRequest) { | |||
fun m18Bom(@Valid @RequestBody request: M18CommonRequest) { | |||
logger.info("Access token: ${m18Config.ACCESS_TOKEN}") | |||
m18MasterDataService.saveBoms(request) | |||
} | |||
@PostMapping("/businessUnit") | |||
fun m18BusinessUnit(@Valid @RequestBody request: M18TestMasterDateRequest) { | |||
fun m18BusinessUnit(@Valid @RequestBody request: M18CommonRequest) { | |||
logger.info("Access token: ${m18Config.ACCESS_TOKEN}") | |||
m18MasterDataService.saveBusinessUnits(request) | |||
} | |||
// --------------------------------------------- Purchase Order --------------------------------------------- /// | |||
@PostMapping("/po") | |||
fun m18PO(@Valid @RequestBody request: M18TestPoRequest) { | |||
fun m18PO(@Valid @RequestBody request: M18CommonRequest) { | |||
logger.info("Access token: ${m18Config.ACCESS_TOKEN}") | |||
m18PurchaseOrderService.savePurchaseOrders(request) | |||
} | |||
// --------------------------------------------- Delivery Order --------------------------------------------- /// | |||
@PostMapping("/do") | |||
fun m18DO(@Valid @RequestBody request: M18TestDoRequest) { | |||
fun m18DO(@Valid @RequestBody request: M18CommonRequest) { | |||
logger.info("Access token: ${m18Config.ACCESS_TOKEN}") | |||
m18DeliveryOrderService.saveDeliveryOrders(request) | |||
} | |||
// --------------------------------------------- Purchase Quotation --------------------------------------------- /// | |||
@PostMapping("/pq") | |||
fun m18PQ(@Valid @RequestBody request: M18TestPqRequest) { | |||
fun m18PQ(@Valid @RequestBody request: M18CommonRequest) { | |||
logger.info("Access token: ${m18Config.ACCESS_TOKEN}") | |||
m18PurchaseQuotationService.savePurchaseQuotations(request) | |||
} |
@@ -1,21 +1,6 @@ | |||
package com.ffii.fpsms.m18.web.models | |||
data class M18TestPoRequest( | |||
val modifiedDateFrom: String?, | |||
val modifiedDateTo: String?, | |||
) | |||
data class M18TestDoRequest( | |||
val modifiedDateFrom: String?, | |||
val modifiedDateTo: String?, | |||
) | |||
data class M18TestPqRequest( | |||
val modifiedDateFrom: String? = null, | |||
val modifiedDateTo: String? = null, | |||
) | |||
data class M18TestMasterDateRequest( | |||
data class M18CommonRequest( | |||
val modifiedDateFrom: String? = null, | |||
val modifiedDateTo: String? = null, | |||
) |