Commit 5692ca77 by liyanlin

fix

parent 4eaed01a
......@@ -8,7 +8,6 @@ import org.apache.ibatis.annotations.Select;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.Date;
/**
* <p>
......@@ -24,7 +23,7 @@ public interface DcSemiDailyStockMapper extends BaseMapper<DcSemiDailyStock> {
"select #{lastDay},l.final_stock * ifnull(ol.price,0),l.sku_code,l.sku_name,l.final_stock,ifnull(ol.price,0),l.warehouse_id,l.warehouse_name," +
"case when l.redundancy_stock is null then 0 when l.redundancy_stock < 0 then 0 else l.redundancy_stock end " +
"from dc_semi_stock_log l left join dc_semi_supplier_offer_log ol on l.sku_code = ol.sku_code")
void insertSemiDailyStock(@Param("lastDay") Date lastDay);
void insertSemiDailyStock(@Param("lastDay") LocalDate lastDay);
@Select("select ifnull(sum(inventory_amount),0) from dc_semi_daily_stock where day = #{lastDay}")
BigDecimal getSemiDailyStockSum(@Param("lastDay") LocalDate lastDay);
......
......@@ -49,15 +49,17 @@
<select id="selectOutStockQuantity" resultType="com.bailuntec.domain.DcMidTransit">
SELECT t1.bailun_sku as bailunSku,
t1.warehouse_code as warehouseCode,
t1.bailun_sku_quantity_ordered - t1.bailun_sku_quantity_pushed - t2.usable_stock - t2.occupy_stock +
SELECT t2.bailun_sku as bailunSku,
t2.warehouse_code as warehouseCode,
ifnull(t1.bailun_sku_quantity_ordered,0) - ifnull(t1.bailun_sku_quantity_pushed,0) - t2.usable_stock - t2.occupy_stock +
ifnull(t3.safe_stock, 0) as quantity_out_stock,
if((t1.aliexpress_quantity - t2.usable_stock - t2.occupy_stock + ifnull(t3.safe_stock, 0)) &lt; 0, 0,
(t1.aliexpress_quantity - t2.usable_stock - t2.occupy_stock +
ifnull(t3.safe_stock, 0))) as quantity_out_stock_aliexpress,
t4.id
FROM (
FROM
dc_base_stock t2
left JOIN (
SELECT bailun_sku,
warehouse_code,
SUM(bailun_sku_quantity_ordered) AS bailun_sku_quantity_ordered,
......@@ -80,12 +82,12 @@
and platform_type != 'FBA'
GROUP BY bailun_sku, warehouse_code
) t1
INNER JOIN dc_base_stock t2 ON t1.bailun_sku = t2.bailun_sku and t1.warehouse_code = t2.warehouse_code
ON t1.bailun_sku = t2.bailun_sku and t1.warehouse_code = t2.warehouse_code
LEFT JOIN dc_auto_jit_inventory t3
ON t1.bailun_sku = t3.bailun_sku and t1.warehouse_code = t3.warehouse_code and t3.status = 1
left join dc_mid_transit t4 ON t1.bailun_sku = t4.bailun_sku and t1.warehouse_code = t4.warehouse_code
WHERE (t1.bailun_sku_quantity_ordered - t1.bailun_sku_quantity_pushed - t2.usable_stock - t2.occupy_stock +
ifnull(t3.safe_stock, 0)) >= 0
ON t2.bailun_sku = t3.bailun_sku and t2.warehouse_code = t3.warehouse_code and t3.status = 1
left join dc_mid_transit t4 ON t2.bailun_sku = t4.bailun_sku and t2.warehouse_code = t4.warehouse_code
WHERE (ifnull(t1.bailun_sku_quantity_ordered,0) - ifnull(t1.bailun_sku_quantity_pushed,0) - t2.usable_stock - t2.occupy_stock +
ifnull(t3.safe_stock, 0)) > 0
limit #{pageStart},#{pageOffset}
</select>
......
package com.bailuntec;
import feign.Request;
import feign.Retryer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.util.concurrent.TimeUnit;
/**
* @Author: li.yanlin
* @Description:
* @Date: Created in
* @Modified by:
*/
@Configuration
public class FeignConfig {
@Bean
public Request.Options options() {
return new Request.Options(2L, TimeUnit.MINUTES,2,TimeUnit.MINUTES,true);
}
@Bean
public Retryer feignRetryer(){
Retryer retryer = new Retryer.Default(100, 2000, 5);
return retryer;
}
}
......@@ -139,7 +139,7 @@ public class BalanceSheetJob {
* </p>
* 数据来源
*/
@Scheduled(cron = "0 0 3 * * ?")
@Scheduled(cron = "0 0 8 * * ?")
public void generateBalanceSheet() {
try {
log.info("每天1点 生成资产负债表 开始");
......@@ -159,7 +159,7 @@ public class BalanceSheetJob {
* </p>
* 数据来源
*/
@Scheduled(cron = "0 0 4 * * ?")
@Scheduled(cron = "0 0 9 * * ?")
public void generateBalanceSheetNewResult() {
try {
log.info("每天1点 生成新资产负债结果表 开始");
......
......@@ -39,7 +39,10 @@ import java.time.DayOfWeek;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.stream.Collectors;
/**
......@@ -85,9 +88,9 @@ public class BalanceSheetService {
*/
// @Transactional(rollbackFor = Exception.class)
public void syncBankAccount() {
DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(financeSyncBankAccount);
//DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(financeSyncBankAccount);
LocalDate date = dcJobConfig.getStartTime().toLocalDate();
LocalDate date = LocalDate.now().minusDays(1);
//从财务系统查询银行账户余额
List<BankAccountBalanceDTO> bankAccountBalanceDTOList = cwApi.getBankAccountSummary().getData();
......@@ -127,7 +130,7 @@ public class BalanceSheetService {
dcBankAccountBalanceMapper.deleteUnusedData2(date);
//更新任务时间
dcJobConfigMapper.updateById(dcJobConfig.refresh());
//dcJobConfigMapper.updateById(dcJobConfig.refresh());
}
/**
......@@ -140,17 +143,17 @@ public class BalanceSheetService {
*/
@Transactional(rollbackFor = Exception.class)
public void syncWithdrawOnWaySummary() {
DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(financeSyncWithdrawOnWaySummary);
//DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(financeSyncWithdrawOnWaySummary);
List<WithdrawOnWayDTO> withdrawOnWayDTOList = cwApi.getWithdrawOnWaySummary().getData();
LocalDate date = dcJobConfig.getStartTime().toLocalDate();
LocalDate date = LocalDate.now().minusDays(1);
LambdaQueryWrapper<DcWithdrawOnWay> wrapper = new LambdaQueryWrapper<DcWithdrawOnWay>()
.eq(DcWithdrawOnWay::getStatisticalTime, date);
//如果指定日期在途金额 快照已经存在 跳过
if (dcWithdrawOnWayService.count(wrapper) > 0) {
dcJobConfigMapper.updateById(dcJobConfig.refresh());
//dcJobConfigMapper.updateById(dcJobConfig.refresh());
return;
}
......@@ -173,7 +176,7 @@ public class BalanceSheetService {
dcWithdrawOnWayMapper.updateWithdrawOnWayCompany();
//更新任务时间
dcJobConfigMapper.updateById(dcJobConfig.refresh());
//dcJobConfigMapper.updateById(dcJobConfig.refresh());
}
@Resource
......@@ -187,9 +190,9 @@ public class BalanceSheetService {
*/
@Transactional(rollbackFor = Exception.class)
public void syncShortBorrowBalance() {
DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(financeSyncShortBorrowBalance);
//DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(financeSyncShortBorrowBalance);
//任务时间
LocalDate date = dcJobConfig.getStartTime().toLocalDate();
LocalDate date = LocalDate.now().minusDays(1);
List<BorrowBalanceDTO> borrowBalanceDTOList = cwApi.getBorrows().getData();
......@@ -209,7 +212,7 @@ public class BalanceSheetService {
dcShortTermBorrowService.saveBatch(dcShortTermBorrowList);
//更新任务时间
dcJobConfigMapper.updateById(dcJobConfig.refresh());
//dcJobConfigMapper.updateById(dcJobConfig.refresh());
}
@Resource
......@@ -226,9 +229,9 @@ public class BalanceSheetService {
*/
@Transactional(rollbackFor = Exception.class)
public void syncCost() {
DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(financeSyncCost);
//DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(financeSyncCost);
LocalDate date = dcJobConfig.getStartTime().toLocalDate();
LocalDate date = LocalDate.now().minusDays(1);
// List<CostDto> costDtoList = costApi.balanceSheetCostList(dcJobConfig.getStartTimeStr(), dcJobConfig.getEndTimeStr()).getData();
// costDtoList.forEach(costDto -> {
......@@ -256,7 +259,7 @@ public class BalanceSheetService {
dcOtherCostMapper.insertOneDayOtherPay(date);
//更新任务时间
dcJobConfigMapper.updateById(dcJobConfig.refresh());
//dcJobConfigMapper.updateById(dcJobConfig.refresh());
}
@Resource
......@@ -273,10 +276,11 @@ public class BalanceSheetService {
*/
@Transactional(rollbackFor = Exception.class)
public void syncBuy() throws ParseException {
DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(financeSyncBuy);
//DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(financeSyncBuy);
LocalDate date = dcJobConfig.getStartTime().toLocalDate();
List<BuyDomain> buyList = buyApi.balanceSheetBuyList(dcJobConfig.getStartTimeStr(), dcJobConfig.getEndTimeStr()).getData();
LocalDate date = LocalDate.now().minusDays(1);
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd");
List<BuyDomain> buyList = buyApi.balanceSheetBuyList(date.format(dtf), date.plusDays(1).format(dtf)).getData();
buyList.forEach(buyDomain -> {
DcBaseBuy dcBaseBuy = dcBaseBuyMapper.selectByBuyNo(buyDomain.getBuyno());
......@@ -284,7 +288,7 @@ public class BalanceSheetService {
dcBaseBuy = new DcBaseBuy();
}
BeanUtils.copyProperties(buyDomain, dcBaseBuy, "id");
dcBaseBuy.setDay(dcJobConfig.getStartTime().toLocalDate());
dcBaseBuy.setDay(date);
dcBaseBuyService.saveOrUpdate(dcBaseBuy);
});
......@@ -294,7 +298,7 @@ public class BalanceSheetService {
dcFixedAssetsDetailMapper.insertFixedAssetsDetail(date);
//更新任务时间
dcJobConfigMapper.updateById(dcJobConfig.refresh());
//dcJobConfigMapper.updateById(dcJobConfig.refresh());
}
......@@ -357,8 +361,8 @@ public class BalanceSheetService {
@Transactional(rollbackFor = Exception.class)
public void syncPayPal() {
DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(financeSyncPayPal);
//DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(financeSyncPayPal);
LocalDateTime dateTime = LocalDateTime.now().minusDays(1);
List<PayPalBalanceDTO> payPalBalanceDTOList = cwApi.getPayPalBalance();
if (ListUtil.isNotEmpty(payPalBalanceDTOList)) {
......@@ -377,8 +381,8 @@ public class BalanceSheetService {
dcPlatformBalance.setAmountRmb(BigDecimal.ZERO);
dcPlatformBalance.setUserableAmountRmb(BigDecimal.ZERO);
dcPlatformBalance.setFreezeAmountRmb(BigDecimal.ZERO);
dcPlatformBalance.setDay(dcJobConfig.getStartTime().toLocalDate());
dcPlatformBalance.setPuttime(dcJobConfig.getStartTime());
dcPlatformBalance.setDay(dateTime.toLocalDate());
dcPlatformBalance.setPuttime(dateTime);
dcPlatformBalance.setDelstatus(0);
dcPlatformBalance.setFromsource("PayPal");
dcPlatformBalance.setCreatetime(LocalDateTime.now());
......@@ -389,14 +393,14 @@ public class BalanceSheetService {
.collect(Collectors.toList());
dcPlatformBalanceService.remove(new LambdaQueryWrapper<DcPlatformBalance>()
.eq(DcPlatformBalance::getDay, dcJobConfig.getStartTime().toLocalDate()));
.eq(DcPlatformBalance::getDay, dateTime.toLocalDate()));
dcPlatformBalanceService.saveBatch(dcPlatformBalanceList);
dcPlatformBalanceMapper.updatePayPalBalance(dcJobConfig.getStartTime().toLocalDate());
dcPlatformBalanceMapper.updatePayPalBalance(dateTime.toLocalDate());
}
dcJobConfigMapper.updateById(dcJobConfig.refresh());
//dcJobConfigMapper.updateById(dcJobConfig.refresh());
}
@Resource
......@@ -487,13 +491,13 @@ public class BalanceSheetService {
*/
@Transactional(rollbackFor = Exception.class)
public void generateBalanceSheet() {
DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(financeGenerateBalanceSheet);
//DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(financeGenerateBalanceSheet);
Integer companyValue = 0;
String companyName = "百伦供应链";
LocalDate date = dcJobConfig.getStartTime().toLocalDate();
LocalDate date = LocalDate.now().minusDays(1);
//取供应商往来数据:应付账款和预付账款
getSupplierTransaction(date);
......@@ -509,25 +513,25 @@ public class BalanceSheetService {
DcBalanceSheet dcBalanceSheet = dcBalanceSheetMapper.selectOne(new LambdaQueryWrapper<DcBalanceSheet>()
.eq(DcBalanceSheet::getCompanyValue, companyValue)
.eq(DcBalanceSheet::getCompanyName, companyName)
.eq(DcBalanceSheet::getStatisticalTime, dcJobConfig.getStartTime().toLocalDate()));
.eq(DcBalanceSheet::getStatisticalTime, LocalDate.now().minusDays(1)));
DcBalanceSheetNew dcBalanceSheetNew = dcBalanceSheetNewMapper.selectOne(new LambdaQueryWrapper<DcBalanceSheetNew>()
.eq(DcBalanceSheetNew::getCompanyValue, companyValue)
.eq(DcBalanceSheetNew::getCompanyName, companyName)
.eq(DcBalanceSheetNew::getStatisticalTime, dcJobConfig.getStartTime().toLocalDate()));
.eq(DcBalanceSheetNew::getStatisticalTime, LocalDate.now().minusDays(1)));
if (dcBalanceSheet == null) {
dcBalanceSheet = new DcBalanceSheet();
dcBalanceSheet.setCompanyValue(companyValue);
dcBalanceSheet.setCompanyName(companyName);
dcBalanceSheet.setStatisticalTime(dcJobConfig.getStartTime().toLocalDate());
dcBalanceSheet.setStatisticalTime(LocalDate.now().minusDays(1));
}
if (dcBalanceSheetNew == null) {
dcBalanceSheetNew = new DcBalanceSheetNew();
dcBalanceSheetNew.setCompanyValue(companyValue);
dcBalanceSheetNew.setCompanyName(companyName);
dcBalanceSheetNew.setStatisticalTime(dcJobConfig.getStartTime().toLocalDate());
dcBalanceSheetNew.setStatisticalTime(LocalDate.now().minusDays(1));
}
//银行账户余额汇总
......@@ -678,7 +682,7 @@ public class BalanceSheetService {
dcBalanceSheetNewService.saveOrUpdate(dcBalanceSheetNew);
//更新任务时间
dcJobConfigMapper.updateById(dcJobConfig.refresh());
//dcJobConfigMapper.updateById(dcJobConfig.refresh());
}
......@@ -694,10 +698,10 @@ public class BalanceSheetService {
*/
public void getSupplierTransaction(LocalDate date){
try {
PurchaseResult<List<SupplierTransactionDTO>> result = purchaseApi.GetSupplierTransactionStatictis(date.plusDays(1), null, null, "{}");
PurchaseResult<List<SupplierTransactionDTO>> result = purchaseApi.GetSupplierTransactionStatictis(date, null, null, "{}");
if (result.getIsSuccessed() && result.getData().size() > 0) {
dcSupplierTransactionMapper.insertOrUpdateSupplierTransaction(result.getData());
updateSuppliserTransactionOfBalanceSheet(date.plusDays(1));
updateSuppliserTransactionOfBalanceSheet(date);
}
}catch (Exception ex){
log.error(ex.toString());
......@@ -961,11 +965,11 @@ public class BalanceSheetService {
*/
@Transactional(rollbackFor = Exception.class)
public void syncSemiInventoryBalance() {
DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(baseSyncSemiStock);
//DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(baseSyncSemiStock);
boolean isOk = true;
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd");
String startDate = dcJobConfig.getStartTime().toLocalDate().format(dtf);
String endDate = dcJobConfig.getEndTime().toLocalDate().format(dtf);
String startDate = LocalDate.now().minusDays(1).format(dtf);
String endDate = LocalDate.now().format(dtf);
try {
MjgysResult<List<SupofferLogResp>> supofferLogs = mjgysApi.supofferLog(startDate, endDate);
if (supofferLogs.isSuccess() && supofferLogs.getData().size() > 0) {
......@@ -1005,11 +1009,9 @@ public class BalanceSheetService {
}
// 生成半成品每日存货
if (isOk) {
//Date lastDay = Date.from(dcJobConfig.getStartTime().toInstant(ZoneOffset.ofHours(8)));
Date lastDay = java.sql.Date.valueOf(dcJobConfig.getStartTime().toLocalDate());
dcSemiDailyStockMapper.insertSemiDailyStock(lastDay);
dcSemiDailyStockMapper.insertSemiDailyStock(LocalDate.now().minusDays(1));
}
dcJobConfigMapper.updateById(dcJobConfig.refresh());
//dcJobConfigMapper.updateById(dcJobConfig.refresh());
}
@Resource
......@@ -1054,17 +1056,17 @@ public class BalanceSheetService {
DcBalanceSheetNewModifyMapper dcBalanceSheetNewModifyMapper;
public void generateBalanceSheetNewResult() {
DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(financeGenerateBalanceSheetNewResult);
//DcJobConfig dcJobConfig = dcJobConfigMapper.selectByName(financeGenerateBalanceSheetNewResult);
Integer companyValue = 0;
String companyName = "百伦供应链";
LocalDate date = dcJobConfig.getStartTime().toLocalDate();
LocalDate date = LocalDate.now().minusDays(1);
this.setBalanceSheetNewResult(date);
//更新任务时间
dcJobConfigMapper.updateById(dcJobConfig.refresh());
//dcJobConfigMapper.updateById(dcJobConfig.refresh());
}
public void setBalanceSheetNewResult(LocalDate statisticalTime) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment