Compare commits

...

12 Commits

Author SHA1 Message Date
liweidong-hj 0cee5eef70 物流更新 2 weeks ago
sunjianxi cca0fbdf4c 功能修改-sjx 2 weeks ago
绫Umbrella 54a4de8199 物流改写 2 weeks ago
绫Umbrella 4642a014b3 物流改写 2 weeks ago
绫Umbrella 88866e8718 物流改写 2 weeks ago
绫Umbrella 70d809e085 物流改写 2 weeks ago
绫Umbrella f5baf6d538 物流改写 2 weeks ago
绫Umbrella 1e1cc3c2e4 物流改写 2 weeks ago
pangyang 60fd8edf71 转试记录详情001 2 weeks ago
pangyang 892719729d 转试记录详情 2 weeks ago
pangyang 6e3d8fe656 Merge branch 'master' of http://42.192.7.176:3000/suojin/jonhon-mes-svr 2 weeks ago
pangyang aac20497ed 循环依赖 2 weeks ago
  1. 2
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/order/feign/IApsOrderClient.java
  2. 3
      blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpPartoplinkFirseqClient.java
  3. 2
      blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/pojo/dto/view/MesRbPurtoso.java
  4. 1
      blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/pojo/dto/view/MesRbWo.java
  5. 5
      blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/mapper/StationMapper.xml
  6. 24
      blade-service/blade-desk/src/main/java/org/springblade/desk/logistics/service/impl/IOrderBoxServiceImpl.java
  7. 21
      blade-service/blade-desk/src/main/java/org/springblade/desk/order/feign/ApsOrderClient.java
  8. 7
      blade-service/blade-desk/src/main/java/org/springblade/desk/order/service/impl/YieldOrderCraftServiceImpl.java
  9. 23
      blade-service/blade-desk/src/main/java/org/springblade/desk/quality/service/impl/PlanTestServiceImpl.java
  10. 8
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpMesRbPartoplinkMapper.xml
  11. 2
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/mapper/ErpPartoplinkFirseqMapper.xml
  12. 195
      blade-service/blade-erpdata/src/main/java/org/springblade/erpdata/service/impl/ErpMesRbWoServiceImpl.java
  13. 4
      blade-service/blade-scheduling/src/main/java/org/springblade/scheduling/scheduling/service/impl/WorkOrderServiceImpl.java

@ -68,7 +68,7 @@ public interface IApsOrderClient {
@PostMapping(GET_SELECT_TIME)
String getSelectTime(@RequestParam("sycnTime") String sycnTime);
@GetMapping(GET_CRAFT_CODE)
List<DsPartEntity> getDsCraftListByCode(@RequestParam("prtno") String prtno);
DsPartEntity getDsCraftListByCode(@RequestParam("prtno") String prtno);
@PostMapping(SAVE_ORDER_LIST)
void saveOrderList(@RequestBody List<YieldOrder> yieldOrderList);
@GetMapping (UP_DATE_MAX)

@ -6,6 +6,7 @@ import org.springblade.core.tool.api.R;
import org.springblade.erpdata.pojo.dto.PartoplinkFirseqDTO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
@ -30,5 +31,5 @@ public interface IErpPartoplinkFirseqClient {
* @return
*/
@GetMapping(LIST_BY_PART_CODE)
R<List<PartoplinkFirseqDTO>> listByPartCode(String partCode);
R<List<PartoplinkFirseqDTO>> listByPartCode(@RequestParam("partCode") String partCode);
}

@ -39,7 +39,7 @@ public class MesRbPurtoso {
private String prtudept;
private Date soreqdat;
private String soplanner;
private String soreldat;
private Date soreldat;
private String rouclp;
private String splcode;
private String newlevsoqty;

@ -35,4 +35,5 @@ public class MesRbWo {
private String processline; //工艺路线
private String processlinedesc; //工艺路线详情
private String prodline; //产品系列
private Double prtarea; //单件面积平方毫米
}

@ -90,12 +90,12 @@
from LM_STATION l
left join LM_STATION_CENTER r
on l.id = r.STATION_ID
where l.IS_DELETED = 0
<!-- wcId 条件放到 on 中,不破坏左连接 -->
<if test="wcId != null">
and r.WC_ID = #{wcId}
</if>
where l.IS_DELETED = 0
<!-- 去掉 stationStatus 的空字符串判断 -->
<if test="stationStatus != null">
<if test="stationStatusInclude">
@ -116,4 +116,5 @@
</if>
</if>
</select>
</mapper>

@ -253,9 +253,7 @@ public class IOrderBoxServiceImpl implements IOrderBoxService {
@Override
public R<List<BsWorkCenterVO>> returnToWarehouseList() {
log.info("【回库工位查询】开始查询空闲站点关联工位");
// 1. 查询空闲状态的站点
List<StationVO> freeStationList = stationService.getStatusStationList(STATUS_FREE, true, null, CONVEYOR_LINE_RECEIVE_ONLY, false);
// 2. 构建返回列表(默认添加输送线回库选项)
List<BsWorkCenterVO> resultList = new ArrayList<>();
@ -535,9 +533,10 @@ public class IOrderBoxServiceImpl implements IOrderBoxService {
} else {
List<StationVO> statusStationList = stationService.getStatusStationList(null, true, wcID, CONVEYOR_LINE_RECEIVE_ONLY, false);
List<StationVO> statusStationList = stationService.getStatusStationList(null, false, (Long) map.get("wcId"), STATION_RECEIVE_ONLY, false);
map.put("stationRegion", statusStationList.get(0).getStationRegion());
}
log.info("获取当前方法返回值:"+map);
return R.data(map);
}
@ -948,7 +947,7 @@ public class IOrderBoxServiceImpl implements IOrderBoxService {
* 校验订单是否已绑定
* <p>避免同一订单被重复绑定到不同箱条码</p>
*
* @param cardNo 订单ID列表
* @param cardNoList 订单ID列表
* @return R<?> 校验结果
*/
private R<?> checkOrderIdBoundStatus(List<String> cardNoList) {
@ -1235,6 +1234,7 @@ public class IOrderBoxServiceImpl implements IOrderBoxService {
// 1. 查询所有空闲站点
List<StationVO> freeStationList = stationService.getStatusStationList(STATUS_FREE, false, null, CONVEYOR_LINE_RECEIVE_ONLY, false);
// 2. 判空:无空闲站点则返回失败
if (freeStationList == null || freeStationList.size() == 0) {
return R.fail("没有占用区域");
@ -1434,7 +1434,7 @@ public class IOrderBoxServiceImpl implements IOrderBoxService {
if (prWorkOrderList != null && !prWorkOrderList.isEmpty()) {
PrWorkOrder prWorkOrder = prWorkOrderList.get(0);
List<PrWorkPlan> workPlanList = prWorkPlanService.lambdaQuery()
.select(PrWorkPlan::getStatus, PrWorkPlan::getNextWpId, PrWorkPlan::getWpId, PrWorkPlan::getMakeTeam)
.select(PrWorkPlan::getStatus, PrWorkPlan::getNextWpId, PrWorkPlan::getWpId, PrWorkPlan::getMakeTeam,PrWorkPlan::getSubsidiaryTeam)
.eq(PrWorkPlan::getWpId, prWorkOrder.getWpId())
.list();
@ -1446,12 +1446,13 @@ public class IOrderBoxServiceImpl implements IOrderBoxService {
Long workCenterId;
if (workPlan.getStatus() < 3) {
if (workPlan.getMakeTeam() == null) {
if (workPlan.getMakeTeam() == null&&workPlan.getSubsidiaryTeam() == null) {
return R.fail(orderCardNo + "车间订单班次异常");
} else {
List<CenterTeam> list = iCenterTeamService.list(new LambdaQueryWrapper<CenterTeam>()
.select(CenterTeam::getWcId, CenterTeam::getTsId)
.eq(CenterTeam::getTsId, (workPlan.getMakeTeam())));
.eq(workPlan.getSubsidiaryTeam()!=null&&!workPlan.getSubsidiaryTeam().equals(""),CenterTeam::getTsId, (workPlan.getMakeTeam()))
.eq(workPlan.getSubsidiaryTeam()==null||workPlan.getSubsidiaryTeam().equals(""),CenterTeam::getTsId, (workPlan.getMakeTeam())));
if (list == null || list.size() == 0) {
return R.fail(orderCardNo + "车间订单班次查询作业中心异常");
} else {
@ -1460,20 +1461,21 @@ public class IOrderBoxServiceImpl implements IOrderBoxService {
}
} else {
List<PrWorkPlan> nextWorkPlanList = prWorkPlanService.lambdaQuery()
.select(PrWorkPlan::getStatus, PrWorkPlan::getNextWpId, PrWorkPlan::getWpId, PrWorkPlan::getMakeTeam)
.select(PrWorkPlan::getStatus, PrWorkPlan::getNextWpId, PrWorkPlan::getWpId, PrWorkPlan::getMakeTeam,PrWorkPlan::getSubsidiaryTeam)
.eq(PrWorkPlan::getWpId, workPlan.getNextWpId())
.list();
if (nextWorkPlanList == null || nextWorkPlanList.isEmpty()) {
return R.fail(orderCardNo + "车间订单异常");
return R.fail(orderCardNo + "订单已结束不可配送");
}
workPlan = nextWorkPlanList.get(0);
if (workPlan.getMakeTeam() == null) {
if (workPlan.getMakeTeam() == null&&workPlan.getSubsidiaryTeam() == null) {
return R.fail(orderCardNo + "车间订单班次异常");
} else {
List<CenterTeam> list = iCenterTeamService.list(new LambdaQueryWrapper<CenterTeam>()
.select(CenterTeam::getWcId, CenterTeam::getTsId)
.eq(CenterTeam::getTsId, (workPlan.getMakeTeam())));
.eq(workPlan.getSubsidiaryTeam()!=null&&!workPlan.getSubsidiaryTeam().equals(""),CenterTeam::getTsId, (workPlan.getMakeTeam()))
.eq(workPlan.getSubsidiaryTeam()==null||workPlan.getSubsidiaryTeam().equals(""),CenterTeam::getTsId, (workPlan.getMakeTeam())));
if (list == null || list.size() == 0) {
return R.fail(orderCardNo + "车间订单班次查询作业中心异常");
} else {

@ -3,13 +3,17 @@ package org.springblade.desk.order.feign;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import io.swagger.v3.oas.annotations.Hidden;
import lombok.RequiredArgsConstructor;
import org.apache.commons.collections4.CollectionUtils;
import org.springblade.core.tenant.annotation.NonDS;
import org.springblade.desk.dashboard.pojo.entity.DsCraftEntity;
import org.springblade.desk.dashboard.pojo.entity.DsPartEntity;
import org.springblade.desk.dashboard.pojo.entity.DsPartVersionEntity;
import org.springblade.desk.dashboard.service.IDsCraftService;
import org.springblade.desk.dashboard.service.IDsPartService;
import org.springblade.desk.dashboard.service.IDsPartVersionService;
import org.springblade.desk.order.pojo.entity.YieldOrder;
import org.springblade.desk.order.pojo.entity.YieldPlan;
import org.springblade.desk.order.service.IYieldOrderService;
@ -17,6 +21,7 @@ import org.springblade.desk.order.service.IYieldPlanService;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.Comparator;
import java.util.List;
/**
@ -38,6 +43,8 @@ public class ApsOrderClient implements IApsOrderClient {
private final IDsPartService dsPartService;
private final IDsPartVersionService dsPartVersionService;
//private final IErpMesRbWoClient mesRbWoClient;
@Override
@ -117,9 +124,17 @@ public class ApsOrderClient implements IApsOrderClient {
return yieldPlanService.getSelectTime(sycnTime);
}
@Override
public List<DsPartEntity> getDsCraftListByCode(String prtno) {
return dsPartService.list(new QueryWrapper<DsPartEntity>().lambda()
.eq(DsPartEntity::getPartCode, prtno));
public DsPartEntity getDsCraftListByCode(String prtno) {
DsPartEntity part = null;
List<DsPartVersionEntity> partVersionList = dsPartVersionService.list(Wrappers.<DsPartVersionEntity>lambdaQuery().eq(DsPartVersionEntity::getPartCode,prtno));
if(CollectionUtils.isNotEmpty(partVersionList)){
Long partId = partVersionList.stream()
.max(Comparator.comparing(DsPartVersionEntity::getPartVersion))
.map(DsPartVersionEntity::getPartId)
.orElse(null);
part = dsPartService.getById(partId);
}
return part;
}
@Override

@ -72,6 +72,13 @@ public class YieldOrderCraftServiceImpl extends BaseServiceImpl<YieldOrderCraftM
.eq(YieldOrderCraft::getYoId, yoId)
.eq(YieldOrderCraft::getIsDeleted, CommonConstant.DELETE_FALSE);
List<YieldOrderCraft> craftList = baseMapper.selectList(queryWrapper);
craftList.stream().forEach(item ->{
BsProcessSetEntity processSet = processSetService.getById(item.getPpsId());
if(processSet != null){
item.setProcessCode(processSet.getCode());
item.setProcessName(processSet.getName());
}
});
return craftList;
}

@ -14,6 +14,7 @@ import lombok.EqualsAndHashCode;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.tool.api.R;
import org.springblade.desk.produce.mapper.WorkOrderMapper;
import org.springblade.desk.produce.pojo.entity.WorkOrder;
import org.springblade.desk.produce.pojo.entity.WorkPlan;
import org.springblade.desk.produce.service.IWorkOrderService;
@ -59,20 +60,36 @@ public class PlanTestServiceImpl extends BaseServiceImpl<PlanTestMapper, PlanTes
private String limsUrl;
@Resource
private IWorkPlanService workPlanService;
// @Resource
// private IWorkOrderService workOrderService;
@Resource
private IWorkOrderService workOrderService;
private WorkOrderMapper workOrderMapper;
@Override
public JSONArray detailPage(PlanTest prPlanTest) {
PlanTest test = baseMapper.selectById(prPlanTest.getId());
WorkPlan prWorkPlan = workPlanService.getById(test.getWpId());
WorkOrder prWorkOrder = workOrderService.getById(prWorkPlan.getWoId());
WorkOrder prWorkOrder = workOrderMapper.selectById(prWorkPlan.getWoId());
JSONObject obj = testRec(prWorkOrder.getWoCode(), test.getErpId(),test.getDataId());
if (obj != null) {
JSONObject data = obj.getJSONObject("data");
return data.getJSONArray("nodeEndTime");
}
// if(null != test){
// WorkPlan prWorkPlan = workPlanService.getById(test.getWpId());
// if(null != prWorkPlan){
// WorkOrder prWorkOrder = workOrderMapper.selectById(prWorkPlan.getWoId());
// if(null != prWorkOrder){
// JSONObject obj = testRec(prWorkOrder.getWoCode(), test.getErpId(),test.getDataId());
// if (obj != null) {
// JSONObject data = obj.getJSONObject("data");
// return data.getJSONArray("nodeEndTime");
// }
// }
//
// }
// }
return null;
}

@ -9,12 +9,8 @@
SELECT count(1) as vCount
FROM dba_mgr.v_mes_rb_partoplink a
<where>
<if test="prtno != null">
AND a.prtno = #{prtno}
</if>
<if test="firseq != null">
AND a.firseq = #{firseq}
</if>
a.prtno = #{prtno}
AND a.firseq = #{firseq}
</where>
</select>
<select id = "getRoamNo" resultType = "java.lang.String">

@ -2,7 +2,7 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace = "org.springblade.erpdata.mapper.ErpPartoplinkFirseqMapper">
<select id = "listByPartCode" resultType = "org.springblade.erpdata.pojo.dto.PartoplinkFirseqDTO">
select a.partno as partcode, a.partname, a.firpp, a.firppname, a.firseq, a.firseqname, a.firseqno
select a.prtno as partcode, a.prtname as partname, a.firpp, a.firppname, a.firseq, a.firseqname, a.firseqno
from dba_mgr.v_partoplink_firseq a
where prtno = #{partCode}
</select>

@ -4,7 +4,9 @@ import com.alibaba.nacos.shaded.com.google.gson.Gson;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.time.DateUtils;
import org.springblade.core.tool.api.R;
import org.springblade.desk.dashboard.pojo.entity.DsCraftEntity;
import org.springblade.desk.dashboard.pojo.entity.DsPartEntity;
@ -22,6 +24,7 @@ import org.springblade.system.cache.DictCache;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.text.ParseException;
import java.util.*;
import java.util.stream.Collectors;
@ -154,28 +157,21 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
List<YieldPlan> yieldPlanList=new ArrayList<>();
mesRbWoList.forEach(mesRbWo -> {
YieldPlan yieldPlan=new YieldPlan();
mesRbWo.getPlnsign();
mesRbWo.getWorelstat();
mesRbWo.getWoexcstat();
mesRbWo.getPrtmeterial();
mesRbWo.getRigidity();
mesRbWo.getProcesslinedesc();
mesRbWo.getPlndept();
yieldPlan.setProductIdent(mesRbWo.getPrtlotno());
yieldPlan.setYpQty(Long.valueOf(mesRbWo.getWoporqty()));
DsPartEntity part = apsOrderClient.getDsCraftListByCode(mesRbWo.getPrtno());
if(part != null){
yieldPlan.setYpArea(part.getArea());
yieldPlan.setProductType(part.getProductType());
yieldPlan.setPartName(part.getPartName());
yieldPlan.setPrimaryCraft(part.getCraftWay());
}
yieldPlan.setUseDept(Long.valueOf(mesRbWo.getPlndept()));
yieldPlan.setPlate(mesRbWo.getKdofplat());
yieldPlan.setPartName(mesRbWo.getPrtdesc());
yieldPlan.setMemo(mesRbWo.getRemark());
yieldPlan.setDominantDept(mesRbWo.getPrtmdept());
yieldPlan.setPrimaryCraft(mesRbWo.getProcessline());
yieldPlan.setProductLine(mesRbWo.getProdline());
yieldPlan.setPlanType(Long.valueOf(YieldPlanEnum.PLAN_TYPE_1.getCode()));//赋值默认值12001
// if(mesRbWo.getProcesslinedesc().contains("封接")
// ||"LX08-05-028,LX08-05-030,LX08-05-031".contains(mesRbWo.getProcessline())){
// yieldPlan.setPlanType(12002L);
// yieldPlan.setPlate("烧结电镀");
// }
if (StringUtils.isNotEmpty(mesRbWo.getProcesslinedesc())) {
List<String> targetProcessLines = Arrays.asList("LX08-05-028", "LX08-05-030", "LX08-05-031");
if (mesRbWo.getProcesslinedesc().contains("封接")
@ -190,9 +186,13 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
yieldPlan.setRoamNo("");
yieldPlan.setYpCode(mesRbWo.getWono());
yieldPlan.setPartCode(mesRbWo.getPrtno());
yieldPlan.setProductIdent(mesRbWo.getWoreqdat());
yieldPlan.setYpQty(Long.valueOf(mesRbWo.getWoporqty()));
yieldPlan.setDemandDate(mesRbWo.getWopordat());
try {
yieldPlan.setDemandDate(DateUtils.parseDate(mesRbWo.getWoreqdat(),"yyyy-MM-dd HH:mm:ss"));
} catch (ParseException e) {
throw new RuntimeException(e);
}
yieldPlan.setYpQty(Long.valueOf(mesRbWo.getWoporqty()));
yieldPlan.setReleaseDate(mesRbWo.getWopordat());
yieldPlanList.add(yieldPlan);
});
@ -280,13 +280,13 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
yieldOrder.setYpMemo("物资转车间协作加工");
yieldOrder.setManualIncrease(false);
yieldOrder.setYoCode(mesRbPurtoso.getSono());//生产单号
yieldOrder.setBatchNo(mesRbPurtoso.getQutno());//批次号
yieldOrder.setBatchNo(mesRbPurtoso.getSplcode());//批次号
yieldOrder.setPartCode(mesRbPurtoso.getPrtno());//零件号
yieldOrder.setProductIdent(mesRbPurtoso.getPrtlotno());
yieldOrder.setUseDept(mesRbPurtoso.getPrtudept());
yieldOrder.setDemandDate(mesRbPurtoso.getSoreqdat());//需求日期
yieldOrder.setPlanUser(mesRbPurtoso.getSoplanner());
yieldOrder.setReleaseDate(mesRbPurtoso.getSoreqdat());
yieldOrder.setReleaseDate(mesRbPurtoso.getSoreldat());
yieldOrder.setCardNo(mesRbPurtoso.getRouclp());
yieldOrder.setYpQty(Double.valueOf(mesRbPurtoso.getNewlevsoqty()));//生产数量
yieldOrder.setCustodian(mesRbPurtoso.getWarctlr());//保管员
@ -294,10 +294,16 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
yieldOrder.setUseDeptCode(mesRbPurtoso.getPrtudeptcode());
yieldOrder.setPkUsername(mesRbPurtoso.getNewlevname());
yieldOrder.setPkDate(mesRbPurtoso.getNewlevdate());
List<DsPartEntity> dsPartList=apsOrderClient.getDsCraftListByCode(mesRbPurtoso.getPrtno());
yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_1.getCode());
yieldOrder.setReceiveTime(new Date());
yieldOrder.setStatus(YieldOrderEnum.STATUS_NORMAL.getCode());
yieldOrder.setReceiveUser(2038615120549822465L);
yieldOrder.setPriorityAps(YieldOrderEnum.PRIORITY_APS_NORMAL.getCode());
yieldOrder.setPriorityErp(YieldOrderEnum.PRIORITY_ERP_NORMAL.getCode());
yieldOrder = updateYieldType(yieldOrder,mesRbPurtoso.getPrtno(),mesRbPurtoso.getFirseq());
/*List<DsPartEntity> dsPartList=apsOrderClient.getDsCraftListByCode(mesRbPurtoso.getPrtno());
//若零件不为空,查询零件的工艺路线
if (dsPartList != null && dsPartList.get(0).getCraftWay().contains("封接")) {
if (CollectionUtils.isNotEmpty(dsPartList) && dsPartList.get(0).getCraftWay().contains("封接")) {
yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_2.getCode());
}
yieldOrder.setRoamNo("");//当前b号
@ -308,7 +314,7 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
yieldOrder.setRoamNo(roamNo);//当前b号
String roamNoNext=mesRbPartoplinkService.getRoamNoNext(mesRbPurtoso.getPrtno(),mesRbPurtoso.getFirseq());
yieldOrder.setRoamNoNext(roamNoNext);//下级b号
}
}*/
yieldOrderList.add(yieldOrder);
});
// this.saveOrder(yieldOrderList);
@ -346,17 +352,22 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
yieldOrder.setPlanUser(mesRbPacturnrecord.getPlanner());
yieldOrder.setReleaseDate(mesRbPacturnrecord.getRecdate());
yieldOrder.setCardNo(mesRbPacturnrecord.getRouclp());
yieldOrder.setYpQty(Double.valueOf(mesRbPacturnrecord.getRecsoqty()));//生产数量
yieldOrder.setYpQty(Double.valueOf(mesRbPacturnrecord.getSeqavlqty()));//生产数量
yieldOrder.setCustodian(mesRbPacturnrecord.getWarctlr());//保管员
yieldOrder.setEntrustDept(mesRbPacturnrecord.getUsedept());
yieldOrder.setUseDeptCode(mesRbPacturnrecord.getUsedeptcode());
yieldOrder.setPkUsername(mesRbPacturnrecord.getRecname());
yieldOrder.setPkDate(mesRbPacturnrecord.getWoreqdat());
// List<DsPartEntity> dsPartList=apsOrderClient.getDsCraftListByCode(mesRbPacturnrecord.getPrtno());
yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_1.getCode());
// if(dsPartList!=null&&dsPartList.get(0).getCraftWay().contains("封接")){
// yieldOrder.setYieldType(12002);
// }
yieldOrder.setReceiveTime(new Date());
yieldOrder.setStatus(YieldOrderEnum.STATUS_NORMAL.getCode());
yieldOrder.setPriorityAps(YieldOrderEnum.PRIORITY_APS_NORMAL.getCode());
yieldOrder.setPriorityErp(YieldOrderEnum.PRIORITY_ERP_NORMAL.getCode());
yieldOrder.setReceiveUser(2038615120549822465L);
DsPartEntity part = apsOrderClient.getDsCraftListByCode(mesRbPacturnrecord.getPrtno());
if(part != null && part.getCraftWay() != null && part.getCraftWay().contains("封接")){
yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_2.getCode());
}
yieldOrder.setRoamNoNext("");//下级b号
if(StringUtils.isNotEmpty(mesRbPacturnrecord.getFirseq())){
String roamNoNext=mesRbPartoplinkService.getRoamNoNext(mesRbPacturnrecord.getPrtno(),mesRbPacturnrecord.getFirseq());
@ -407,6 +418,11 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
yieldOrder.setPkUsername(mesRbtoso.getNewlevname());
yieldOrder.setPkDate(mesRbtoso.getNewlevdate());
yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_2.getCode());
yieldOrder.setReceiveTime(new Date());
yieldOrder.setStatus(YieldOrderEnum.STATUS_NORMAL.getCode());
yieldOrder.setPriorityAps(YieldOrderEnum.PRIORITY_APS_NORMAL.getCode());
yieldOrder.setPriorityErp(YieldOrderEnum.PRIORITY_ERP_NORMAL.getCode());
yieldOrder.setReceiveUser(2038615120549822465L);
yieldOrder.setRoamNoNext( "");
if(StringUtils.isNotEmpty(mesRbtoso.getFirseq())){
String roamNoNext=mesRbPartoplinkService.getRoamNoNext(mesRbtoso.getPrtno(),mesRbtoso.getFirseq());
@ -455,20 +471,27 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
yieldOrder.setUseDeptCode(mesRbWxpromotion.getPrtudeptcode());
yieldOrder.setPkUsername(mesRbWxpromotion.getNewlevname());
yieldOrder.setPkDate(mesRbWxpromotion.getNewlevdate());
// List<DsPartEntity> dsPartList=apsOrderClient.getDsCraftListByCode(mesRbWxpromotion.getPrtno());
// yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_1.getCode());
// if (dsPartList != null && dsPartList.get(0).getCraftWay().contains("封接")) {
// yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_2.getCode());
// }
yieldOrder.setReceiveTime(new Date());
yieldOrder.setStatus(YieldOrderEnum.STATUS_NORMAL.getCode());
yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_1.getCode());
yieldOrder.setReceiveUser(2038615120549822465L);
yieldOrder.setPriorityAps(YieldOrderEnum.PRIORITY_APS_NORMAL.getCode());
yieldOrder.setPriorityErp(YieldOrderEnum.PRIORITY_ERP_NORMAL.getCode());
yieldOrder = updateYieldType(yieldOrder,mesRbWxpromotion.getPrtno(),mesRbWxpromotion.getFirseq());
/*List<DsPartEntity> dsPartList=apsOrderClient.getDsCraftListByCode(mesRbWxpromotion.getPrtno());
yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_1.getCode());
if (CollectionUtils.isNotEmpty(dsPartList) && dsPartList.get(0).getCraftWay().contains("封接")) {
yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_2.getCode());
}
yieldOrder.setRoamNo("");//当前b号
yieldOrder.setRoamNoNext("");//下级b号
// Long vCount=mesRbPartoplinkService.getVcount(mesRbWxpromotion.getPrtno(),mesRbWxpromotion.getFirseq());
// if(vCount>0){
// String roamNo=mesRbPartoplinkService.getRoamNo(mesRbWxpromotion.getPrtno(),mesRbWxpromotion.getFirseq());
// yieldOrder.setRoamNo(roamNo);//当前b号
// String roamNoNext=mesRbPartoplinkService.getRoamNoNext(mesRbWxpromotion.getPrtno(),mesRbWxpromotion.getFirseq());
// yieldOrder.setRoamNoNext(roamNoNext);//下级b号
// }
Long vCount=mesRbPartoplinkService.getVcount(mesRbWxpromotion.getPrtno(),mesRbWxpromotion.getFirseq());
if(vCount>0){
String roamNo=mesRbPartoplinkService.getRoamNo(mesRbWxpromotion.getPrtno(),mesRbWxpromotion.getFirseq());
yieldOrder.setRoamNo(roamNo);//当前b号
String roamNoNext=mesRbPartoplinkService.getRoamNoNext(mesRbWxpromotion.getPrtno(),mesRbWxpromotion.getFirseq());
yieldOrder.setRoamNoNext(roamNoNext);//下级b号
}*/
yieldOrderList.add(yieldOrder);
});
apsOrderClient.saveOrderList(yieldOrderList);
@ -510,20 +533,26 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
yieldOrder.setUseDeptCode(mesRbSodelrecwx.getPrtudeptcode());
yieldOrder.setPkUsername(mesRbSodelrecwx.getNewlevname());
yieldOrder.setPkDate(mesRbSodelrecwx.getNewlevdate());
List<DsPartEntity> dsPartList=apsOrderClient.getDsCraftListByCode(mesRbSodelrecwx.getPrtno());
yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_1.getCode());
// if(dsPartList!=null&&dsPartList.get(0).getCraftWay().contains("封接")){
// yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_2.getCode());
// }
yieldOrder.setReceiveTime(new Date());
yieldOrder.setStatus(YieldOrderEnum.STATUS_NORMAL.getCode());
yieldOrder.setReceiveUser(2038615120549822465L);
yieldOrder.setPriorityAps(YieldOrderEnum.PRIORITY_APS_NORMAL.getCode());
yieldOrder.setPriorityErp(YieldOrderEnum.PRIORITY_ERP_NORMAL.getCode());
yieldOrder = updateYieldType(yieldOrder,mesRbSodelrecwx.getPrtno(),mesRbSodelrecwx.getFirseq());
/*List<DsPartEntity> dsPartList=apsOrderClient.getDsCraftListByCode(mesRbSodelrecwx.getPrtno());
if(CollectionUtils.isNotEmpty(dsPartList)&&dsPartList.get(0).getCraftWay().contains("封接")){
yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_2.getCode());
}
yieldOrder.setRoamNo("");//当前b号
yieldOrder.setRoamNoNext("");//下级b号
Long vCount=mesRbPartoplinkService.getVcount(mesRbSodelrecwx.getPrtno(),mesRbSodelrecwx.getFirseq());
// if(vCount>0){
// String roamNo=mesRbPartoplinkService.getRoamNo(mesRbSodelrecwx.getPrtno(),mesRbSodelrecwx.getFirseq());
// yieldOrder.setRoamNo(roamNo);//当前b号
// String roamNoNext=mesRbPartoplinkService.getRoamNoNext(mesRbSodelrecwx.getPrtno(),mesRbSodelrecwx.getFirseq());
// yieldOrder.setRoamNoNext(roamNoNext);//下级b号
// }
if(vCount>0){
String roamNo=mesRbPartoplinkService.getRoamNo(mesRbSodelrecwx.getPrtno(),mesRbSodelrecwx.getFirseq());
yieldOrder.setRoamNo(roamNo);//当前b号
String roamNoNext=mesRbPartoplinkService.getRoamNoNext(mesRbSodelrecwx.getPrtno(),mesRbSodelrecwx.getFirseq());
yieldOrder.setRoamNoNext(roamNoNext);//下级b号
}*/
yieldOrderList.add(yieldOrder);
});
// this.saveOrder(yieldOrderList);
@ -569,25 +598,31 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
yieldOrder.setUseDeptCode(mesRbSodelreczg.getPrtudeptcode());
yieldOrder.setPkUsername(mesRbSodelreczg.getNewlevname());
yieldOrder.setPkDate(mesRbSodelreczg.getNewlevdate());
//从零件表中查询零件信息
// List<DsPartEntity> dsPartList=apsOrderClient.getDsCraftListByCode(mesRbSodelreczg.getPrtno());
// yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_1.getCode());
// //若零件不为空,查询零件的工艺路线
// if (dsPartList != null && dsPartList.get(0).getCraftWay().contains("封接")) {
// yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_2.getCode());
// }
yieldOrder.setReceiveTime(new Date());
yieldOrder.setStatus(YieldOrderEnum.STATUS_NORMAL.getCode());
yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_1.getCode());
yieldOrder.setReceiveUser(2038615120549822465L);
yieldOrder.setPriorityAps(YieldOrderEnum.PRIORITY_APS_NORMAL.getCode());
yieldOrder.setPriorityErp(YieldOrderEnum.PRIORITY_ERP_NORMAL.getCode());
yieldOrder = updateYieldType(yieldOrder,mesRbSodelreczg.getPrtno(),mesRbSodelreczg.getFirseq());
/*//从零件表中查询零件信息
List<DsPartEntity> dsPartList=apsOrderClient.getDsCraftListByCode(mesRbSodelreczg.getPrtno());
//若零件不为空,查询零件的工艺路线
if (CollectionUtils.isNotEmpty(dsPartList) && dsPartList.get(0).getCraftWay().contains("封接")) {
yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_2.getCode());
}
yieldOrder.setRoamNo("");//当前b号
yieldOrder.setRoamNoNext("");//下级b号
//根据零件号和上级b号查询视图
// Long vCount=mesRbPartoplinkService.getVcount(mesRbSodelreczg.getPrtno(),mesRbSodelreczg.getFirseq());
// if(vCount>0){
// //从ERP视图中查询当前B号
// String roamNo=mesRbPartoplinkService.getRoamNo(mesRbSodelreczg.getPrtno(),mesRbSodelreczg.getFirseq());
// yieldOrder.setRoamNo(roamNo);//当前b号
// //从ERP视图中查询下级B号
// String roamNoNext=mesRbPartoplinkService.getRoamNoNext(mesRbSodelreczg.getPrtno(),mesRbSodelreczg.getFirseq());
// yieldOrder.setRoamNoNext(roamNoNext);//下级b号
// }
Long vCount=mesRbPartoplinkService.getVcount(mesRbSodelreczg.getPrtno(),mesRbSodelreczg.getFirseq());
if(vCount>0){
//从ERP视图中查询当前B号
String roamNo=mesRbPartoplinkService.getRoamNo(mesRbSodelreczg.getPrtno(),mesRbSodelreczg.getFirseq());
yieldOrder.setRoamNo(roamNo);//当前b号
//从ERP视图中查询下级B号
String roamNoNext=mesRbPartoplinkService.getRoamNoNext(mesRbSodelreczg.getPrtno(),mesRbSodelreczg.getFirseq());
yieldOrder.setRoamNoNext(roamNoNext);//下级b号
}*/
yieldOrderList.add(yieldOrder);
});
log.info("qyl:同步工艺工单 data: {}", gson.toJson(yieldOrderList));
@ -635,6 +670,11 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
yieldOrder.setPkUsername(mesRbPk.getNewlevname());
yieldOrder.setPkDate(mesRbPk.getNewlevdate());
yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_1.getCode());
yieldOrder.setReceiveTime(new Date());
yieldOrder.setStatus(YieldOrderEnum.STATUS_NORMAL.getCode());
yieldOrder.setReceiveUser(2038615120549822465L);
yieldOrder.setPriorityAps(YieldOrderEnum.PRIORITY_APS_NORMAL.getCode());
yieldOrder.setPriorityErp(YieldOrderEnum.PRIORITY_ERP_NORMAL.getCode());
yieldOrder.setRoamNoNext("");
if(StringUtils.isNotEmpty(mesRbPk.getFirseq())){
String roamNoNext=mesRbPartoplinkService.getRoamNoNext(mesRbPk.getPrtno(),mesRbPk.getFirseq());
@ -655,4 +695,27 @@ public class ErpMesRbWoServiceImpl implements IErpMesRbWoService {
apsOrderClient.saveOrder(yieldOrderList);
// apsOrderClient.saveOrderList(yieldOrderList);
}
private YieldOrder updateYieldType(YieldOrder yieldOrder,String pritno,String firseq){
//从零件表中查询零件信息
DsPartEntity part=apsOrderClient.getDsCraftListByCode(pritno);
yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_1.getCode());
//若零件不为空,查询零件的工艺路线
if (part != null && part.getCraftWay() != null && part.getCraftWay().contains("封接")) {
yieldOrder.setYieldType(YieldOrderEnum.YIELD_TYPE_2.getCode());
}
yieldOrder.setRoamNo("");//当前b号
yieldOrder.setRoamNoNext("");//下级b号
//根据零件号和上级b号查询视图
Long vCount=mesRbPartoplinkService.getVcount(pritno,firseq);
if(vCount>0){
//从ERP视图中查询当前B号
String roamNo=mesRbPartoplinkService.getRoamNo(pritno,firseq);
yieldOrder.setRoamNo(roamNo);//当前b号
//从ERP视图中查询下级B号
String roamNoNext=mesRbPartoplinkService.getRoamNoNext(pritno,firseq);
yieldOrder.setRoamNoNext(roamNoNext);//下级b号
}
return yieldOrder;
}
}

@ -952,9 +952,9 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
if(CollectionUtils.isNotEmpty(glassCakeOutList)){
glassCakeOutClient.batchGeneratePreOutOrder(glassCakeOutList);
}
if (CollectionUtils.isNotEmpty(workOrderList)) {
/* if (CollectionUtils.isNotEmpty(workOrderList)) {
this.sendWorkOrderToOldMes(workOrderList);
}
}*/
}
//获取下一个整数点

Loading…
Cancel
Save