fix:修复ERP回传物料信息不存在
This commit is contained in:
@@ -1,17 +1,17 @@
|
||||
##货位分配原则 出入库
|
||||
|
||||
###1、上轻下重原则
|
||||
根据货物重量选择摆放位置。把重的东西放在下层,把轻放在货架上层。需要人工搬运的大型货物以腰部的高度摆放。这样提高效率、保证安全。
|
||||
###2、优先靠近出入口原则
|
||||
根据出入库频率选定位置。出入库频率高的货物应放在靠近出入口,易于作业的地方;流动性差的货物放在离出入口较远的地方;季节性物品按季节特性来选定场所摆放。
|
||||
###3、先进先出原则
|
||||
一般企业为了加快周转,先入先出一同种物料出库时,先入库的物资,需要先提取出库,以加快物料周转,从而避免因物料长期积压产生锈蚀、变形、变质及其他损坏造成的损失。因此在货位分配时要方便先进物品优先出库。
|
||||
###4、同类物品集中原则
|
||||
同一品种同一地方保管。为提高作业效率和保管效率同一物品或类似物品应在同一地方保管,提高仓储工作效率。
|
||||
###5、多巷道分布原则
|
||||
货位分配是应提高可靠性,分巷道存放一仓库有多个巷道时,同种物品分散在不同的巷道进行存放。以防止因某巷道堵塞影响某种物料的出库,造成生产中断。
|
||||
###6.超限分配原则:
|
||||
对于货位超限:横向/纵向暂用多个货位.高度超限
|
||||
###1、上轻下重原则
|
||||
根据货物重量选择摆放位置。把重的东西放在下层,把轻放在货架上层。需要人工搬运的大型货物以腰部的高度摆放。这样提高效率、保证安全。
|
||||
###2、优先靠近出入口原则
|
||||
根据出入库频率选定位置。出入库频率高的货物应放在靠近出入口,易于作业的地方;流动性差的货物放在离出入口较远的地方;季节性物品按季节特性来选定场所摆放。
|
||||
###3、先进先出原则
|
||||
一般企业为了加快周转,先入先出一同种物料出库时,先入库的物资,需要先提取出库,以加快物料周转,从而避免因物料长期积压产生锈蚀、变形、变质及其他损坏造成的损失。因此在货位分配时要方便先进物品优先出库。
|
||||
###4、同类物品集中原则
|
||||
同一品种同一地方保管。为提高作业效率和保管效率同一物品或类似物品应在同一地方保管,提高仓储工作效率。
|
||||
###5、多巷道分布原则
|
||||
货位分配是应提高可靠性,分巷道存放一仓库有多个巷道时,同种物品分散在不同的巷道进行存放。以防止因某巷道堵塞影响某种物料的出库,造成生产中断。
|
||||
###6.超限分配原则:
|
||||
对于货位超限:横向/纵向暂用多个货位.高度超限
|
||||
|
||||
##规则处理方式:责任链模式
|
||||
list->5
|
||||
|
||||
@@ -40,7 +40,7 @@ import java.util.stream.Collectors;
|
||||
* @Date 2025/2/6 14:34
|
||||
* 二楼入库任务
|
||||
*/
|
||||
@Service
|
||||
@Service("secondFloorInStorage")
|
||||
@Slf4j
|
||||
public class SecondFloorInStorageTask extends AbstractTask {
|
||||
|
||||
@@ -109,8 +109,7 @@ public class SecondFloorInStorageTask extends AbstractTask {
|
||||
QueryWrapper<StIvtStructattr> query = new QueryWrapper<StIvtStructattr>()
|
||||
.eq("is_used", true)
|
||||
.eq("lock_type", StatusEnum.LOCK.code("无锁"))
|
||||
.eq("stor_code", "FStockId")
|
||||
.eq("sect_code", "LXHCK01");
|
||||
.eq("stor_code", "CStockId");
|
||||
query.isNull("vehicle_code");
|
||||
List<StIvtStructattr> list = iStIvtStructattrService.list(query);
|
||||
List<StIvtStructattr> structList = sameBlockNumRuleHandler.handler(list, null);
|
||||
|
||||
@@ -49,7 +49,6 @@ public class AcsToWmsService {
|
||||
|
||||
public void applyTask(String service,String type,JSONObject data){
|
||||
if (service.equals("InStorage")){
|
||||
|
||||
applyTaskMap.get(type).createTask(data);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package org.nl.wms.flow_manage.flow.service.classprocessimpl;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
@@ -157,6 +158,9 @@ public class SyncReceiptProcessHandler implements ClassProcess {
|
||||
for (int i = 0; i < fEntityArray.size(); i++) {
|
||||
JSONObject fEntity = fEntityArray.getJSONObject(i);
|
||||
List<MdMeMaterialbase> materialList = iMdMeMaterialbaseService.list(new LambdaQueryWrapper<MdMeMaterialbase>().eq(MdMeMaterialbase::getMaterial_code,JSON.parseObject(fEntity.getString("FMaterialId")).getString("FNumber")));
|
||||
if (ObjectUtil.isEmpty(materialList)) {
|
||||
throw new BadRequestException("回传失败:查询物料信息,物料编码不存在:"+JSON.parseObject(fEntity.getString("FMaterialId")).getString("FNumber"));
|
||||
}
|
||||
MdMeMaterialbase materialInfo = materialList.get(0);
|
||||
//没有启用批次号
|
||||
if ("0".equals(materialInfo.getPrint_no())) {
|
||||
|
||||
@@ -56,12 +56,17 @@ public class PdaOutController {
|
||||
|
||||
public ResponseEntity<List<Map>> orderType() {
|
||||
List<Map> result = new ArrayList<>();
|
||||
List<BmFormStruc> list = iBmFormStrucService.list(new QueryWrapper<BmFormStruc>()
|
||||
.like("form_desc","出库")
|
||||
.select("form_type","form_name"));
|
||||
for (BmFormStruc formStruc : list) {
|
||||
result.add(MapOf.of("text",formStruc.getForm_name(),"value",formStruc.getForm_type()));
|
||||
}
|
||||
// List<BmFormStruc> list = iBmFormStrucService.list(new QueryWrapper<BmFormStruc>()
|
||||
// .like("form_desc","出库")
|
||||
// .select("form_type","form_name"));
|
||||
// for (BmFormStruc formStruc : list) {
|
||||
// result.add(MapOf.of("text",formStruc.getForm_name(),"value",formStruc.getForm_type()));
|
||||
// }
|
||||
result.add(MapOf.of("text","生产用料清单","value","PRD_PPBOM"));
|
||||
result.add(MapOf.of("text","委外用料清单","value","SUB_PickMtrl"));
|
||||
result.add(MapOf.of("text","直接调拨单","value","STK_TransferDirect"));
|
||||
result.add(MapOf.of("text","简单领料申请单","value","ka7c19edf9d4b4b39b8cc4a06802163b0"));
|
||||
result.add(MapOf.of("text","其他出库单","value","STK_MisDelivery"));
|
||||
return new ResponseEntity<>(result,HttpStatus.OK);
|
||||
}
|
||||
|
||||
|
||||
@@ -232,6 +232,7 @@ public class SyncErpBillsScheduleService {
|
||||
filterString += "AND FDocumentStatus = 'C' AND F_PMSY_BillStatus = 'A' AND F_PMSY_CreateDate >= '" + timeStart + " 00:00:00' AND F_PMSY_CreateDate <= '" + timeEnd + " 23:59:59' ";
|
||||
} else if ("SAL_SaleOrder".equals(formType)) {
|
||||
filterString += " AND FDocumentStatus = 'C' AND FCloseStatus ='A' AND FCreateDate >= '" + timeStart + " 00:00:00' and FCreateDate <= '" + timeEnd + " 23:59:59' ";
|
||||
//调拨出入库,采购退料单,销售退货入库单,其他出库单
|
||||
} else if ("STK_TransferDirect".equals(formType) || "STK_MisDelivery".equals(formType) || "PUR_MRB".equals(formType) || "SAL_RETURNSTOCK".equals(formType)) {
|
||||
filterString += " AND FDocumentStatus ='B' AND FCreateDate >= '" + timeStart + " 00:00:00' and FCreateDate <= '" + timeEnd + " 23:59:59' ";
|
||||
} else {
|
||||
|
||||
@@ -96,7 +96,39 @@
|
||||
<appender-ref ref="luceneAppender" />
|
||||
<queueSize>512</queueSize>
|
||||
</appender>
|
||||
|
||||
<springProfile name="dev">
|
||||
<root level="info">
|
||||
<appender-ref ref="asyncLuceneAppender"/>
|
||||
<appender-ref ref="CONSOLE"/>
|
||||
</root>
|
||||
<logger name="org.nl.wms.system_manage.service.quartz.task" level="ERROR" additivity="true">
|
||||
<appender-ref ref="CONSOLE"/>
|
||||
</logger>
|
||||
<logger name="jdbc" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.springframework" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.hibernate" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.quartz" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="com.google" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.redisson" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.nl.modules.wql" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
<logger name="org.springframework.data" level="ERROR" additivity="true">
|
||||
<appender-ref ref="asyncFileAppender"/>
|
||||
</logger>
|
||||
</springProfile>
|
||||
<!--开发环境:打印控制台-->
|
||||
<springProfile name="dev3">
|
||||
<root level="info">
|
||||
|
||||
Reference in New Issue
Block a user