From 2e121f643a6776e6063796c104c95647faa000a8 Mon Sep 17 00:00:00 2001 From: CZT <czt18638530771@163.com> Date: 星期三, 16 八月 2023 11:52:32 +0800 Subject: [PATCH] 优化定时更新库存信息 --- igds-inout/src/main/java/com/ld/igds/timer/InoutScheduled.java | 119 +---------------------------------------------------------- 1 files changed, 2 insertions(+), 117 deletions(-) diff --git a/igds-inout/src/main/java/com/ld/igds/timer/InoutScheduled.java b/igds-inout/src/main/java/com/ld/igds/timer/InoutScheduled.java index 11e9d06..787fe38 100644 --- a/igds-inout/src/main/java/com/ld/igds/timer/InoutScheduled.java +++ b/igds-inout/src/main/java/com/ld/igds/timer/InoutScheduled.java @@ -1,26 +1,19 @@ package com.ld.igds.timer; import com.bstek.bdf2.core.model.DefaultCompany; -import com.bstek.dorado.annotation.Expose; import com.ld.igds.common.CoreCommonService; -import com.ld.igds.constant.DepotStatus; -import com.ld.igds.inout.InoutConstant; import com.ld.igds.inout.dto.InoutData; import com.ld.igds.inout.dto.InoutParam; import com.ld.igds.inout.service.InoutService; import com.ld.igds.m.service.InoutCommonService; import com.ld.igds.models.*; -import com.ld.igds.util.ContextUtil; import com.ld.igds.util.DateUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; - import javax.annotation.Resource; import java.util.Date; -import java.util.HashMap; import java.util.List; -import java.util.Map; /** * @Desc: 鍑哄叆搴撳畾鏃朵换鍔°�� 1銆侀�氱煡鍗曞畬鎴愰噺缁熻 2銆佸嚭鍏ュ簱搴撳瓨绠$悊缁熻 @@ -31,7 +24,7 @@ @Component(InoutScheduled.BEAN_ID) public class InoutScheduled { - public static final String BEAN_ID = "basic.inoutScheduled"; + public static final String BEAN_ID = "inout.inoutScheduled"; @Resource private InoutCommonService inoutCommonService; @@ -62,116 +55,8 @@ param.setCompanyId(company.getId()); listRecord = inoutService.listRecordData(param); + //鏍规嵁鍑哄叆搴撲俊鎭悓姝ラ�氱煡鍗曞畬鎴愰噺 noticeCompleteExe(company.getId(), listRecord); - - sumDepotStoreExe(company.getId(), listRecord); - } - - } - - /** - * basic.inoutScheduled#sumDepotStoreExeByHand - * <p> - * <p> - * 鎵嬪姩鎵ц鍑哄叆搴撳簱瀛樼粺璁″叆鍙� - * - * @param start - * @return - */ - @Expose - public String sumDepotStoreExeByHand(Date start) { - - if (null == start) - start = new Date(); - - start = DateUtil.getCurZero(start); - - // 鑾峰彇3澶╁唴鐨勫嚭鍏ュ簱璁板綍锛屽鏋滄湁璁板綍鍒欐墽琛岋紝濡傛灉娌℃湁锛屽垯鏃犻渶鎵ц - start = DateUtil.getNewByDay(null, -3); - String companyId = ContextUtil.getCompanyId(); - - InoutParam param = new InoutParam(); - param.setStart(start); - param.setCompanyId(companyId); - - List<InoutData> listRecord = inoutService.listRecordData(param); - - sumDepotStoreExe(companyId, listRecord); - - return "SUCCESS"; - } - - /** - * 鍚屾浠撳簱搴撳瓨锛屾牴鎹繎鏈熷嚭鍏ュ簱璁板綍锛屽鏋滄病鏈夎褰曞垯琛ㄧず鏃犲嚭鍏ュ簱鎿嶄綔锛屽彇娑堟墽琛� - * - * @param companyId - * @param listRecord - */ - private void sumDepotStoreExe(String companyId, List<InoutData> listRecord) { - - if (null == listRecord || listRecord.isEmpty()) { - log.info("-----------绯荤粺鑷姩鍚屾搴撳瓨锛岃繎鏈熸棤鍑哄叆搴撹褰曪紝鍙栨秷鍚屾浠撳簱搴撳瓨鈥︹�}", companyId); - return; - } - - // 鑾峰彇鏈夊嚭鍏ュ簱璁板綍鐨勪粨搴� - Map<String, InoutRecord> map = new HashMap<>(); - String key; - DepotStore lastStore; - double sumRecordWeight = 0.0; - InoutParam param; - for (InoutData data : listRecord) { - key = data.getDepotId() + "_" + data.getType(); - if (null != map.get(key)) - continue; - - map.put(key, data); - - // 鏍规嵁鏈�鍚庝竴杞﹁繘琛屾眹鎬荤粺璁★紝寮�濮嬫椂闂存槸浠撳簱搴撳瓨鏈�鍚庝竴涓椂闂存埅姝㈠埌褰撳墠 - lastStore = commonService.getLastDepotStore(data.getDepotId()); - if (null == lastStore) { - log.error( - "--------鍑哄叆搴撳畾鏃朵换鍔�-----娌℃湁鑾峰彇鍒颁粨搴撴渶鍚庡簱瀛樹俊鎭紝鍙栨秷鑷姩缁熻锛岃鏍稿涓氬姟閫昏緫--浠撳簱-{}", - data.getDepotId()); - continue; - } - - // 鍙湁鍑哄叆搴撶姸鎬佺殑浠撳簱鎵嶈繘琛岀粺璁★紝鍏朵粬鐘舵�佽〃绀哄嚭鍏ュ簱浣滀笟瀹屾垚锛屼笉鍦ㄦ墽琛岀粺璁� - if (DepotStatus.STATUS_2.getCode().equals( - lastStore.getDepotStatus()) - || DepotStatus.STATUS_4.getCode().equals( - lastStore.getDepotStatus())) { - - param = new InoutParam(); - // param.setStart(lastStore.getCreateDate()); - param.setEnd(new Date()); - param.setDeptId(data.getDeptId()); - param.setDepotId(data.getDepotId()); - param.setCompanyId(data.getCompanyId()); - param.setType(data.getType()); - - // 鍑哄叆搴撻噸閲忓悎璁� - sumRecordWeight = inoutService.sumRecordWeight(param); - - // 鏂板涓�鏉″簱瀛樿褰� - lastStore.setRemark("绯荤粺瀹氭椂鐢熸垚璁板綍"); - lastStore.setId(ContextUtil.getUUID()); - lastStore.setUpdateUser(null); - lastStore.setUpdateDate(new Date()); - // lastStore.setCreateDate(new Date()); - - if (InoutConstant.TYPE_IN.equals(data.getType())) { - lastStore.setStorageReal(lastStore.getStorageReal() - + sumRecordWeight); - } - - if (InoutConstant.TYPE_OUT.equals(data.getType())) { - lastStore.setStorageReal(lastStore.getStorageReal() - - sumRecordWeight); - } - - commonService.addDepotStore(lastStore, true); - } } } -- Gitblit v1.9.3