parent
dd003ba913
commit
136e9e591e
10 changed files with 645 additions and 2 deletions
@ -0,0 +1,52 @@ |
||||
package org.springblade.desk.produce.controller; |
||||
|
||||
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; |
||||
import io.swagger.v3.oas.annotations.Operation; |
||||
import io.swagger.v3.oas.annotations.tags.Tag; |
||||
import lombok.RequiredArgsConstructor; |
||||
import org.springblade.core.mp.support.Condition; |
||||
import org.springblade.core.secure.utils.AuthUtil; |
||||
import org.springblade.core.tool.api.R; |
||||
import org.springblade.desk.device.pojo.entity.RackSetEntity; |
||||
import org.springblade.desk.device.pojo.vo.RackSetVO; |
||||
import org.springblade.desk.device.wrapper.RackSetWrapper; |
||||
import org.springblade.desk.produce.pojo.dto.TurnTypeDTO; |
||||
import org.springblade.desk.produce.service.IPdaLoadService; |
||||
import org.springframework.web.bind.annotation.*; |
||||
|
||||
/** |
||||
* @ClassName PdaLoadController |
||||
* @Description: 手持移动端数据查询接口 |
||||
* @Author qjh |
||||
* @Date 2022-10-28 14:41 |
||||
* @Version 1.0 |
||||
* 注意:本内容仅限于内部传阅,禁止外泄及用于其他的商业目的 |
||||
*/ |
||||
@RestController |
||||
@RequiredArgsConstructor |
||||
@RequestMapping("/pdaLoad") |
||||
@Tag(name = "手持移动端数据查询接口", description = "接口") |
||||
public class PdaLoadController { |
||||
|
||||
private final IPdaLoadService pdaLoadService; |
||||
@GetMapping(value = "/loadBindData/{cardNo}") |
||||
@ApiOperationSupport(order = 1) |
||||
@Operation(summary = "加载绑定需要的流程卡数据", description = "传入cardNo") |
||||
public R loadBindData(@PathVariable String cardNo) { |
||||
return R.data(pdaLoadService.loadBindData(AuthUtil.getUser(), cardNo)); |
||||
} |
||||
@GetMapping(value = "getBsFeiBaSetByCode/{rsCode}") |
||||
@ApiOperationSupport(order = 2) |
||||
@Operation(summary = "根据挂具编码查询数据", description = "传入rsCode") |
||||
public R getBsFeiBaSetByCode(@PathVariable String rsCode) { |
||||
return R.data(pdaLoadService.getBsRackSetByCode(rsCode)); |
||||
} |
||||
@GetMapping(value = "/getBsFeiBaSetByCodeUn/{fsCode}") |
||||
@ApiOperationSupport(order = 3) |
||||
@Operation(summary = "根据挂具编码查询数据(解绑)", description = "传入fsCode") |
||||
public R getBsFeiBaSetByCodeUn(@PathVariable String fsCode) { |
||||
return R.data(pdaLoadService.getBsFeiBaSetByCode(fsCode)); |
||||
} |
||||
|
||||
|
||||
} |
||||
@ -0,0 +1,89 @@ |
||||
package org.springblade.desk.produce.controller; |
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; |
||||
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
||||
import io.swagger.v3.oas.annotations.Operation; |
||||
import io.swagger.v3.oas.annotations.tags.Tag; |
||||
import lombok.RequiredArgsConstructor; |
||||
import org.springblade.core.tool.api.R; |
||||
import org.springblade.desk.basic.pojo.entity.BasicClazz; |
||||
import org.springblade.desk.basic.service.IBasicClazzService; |
||||
import org.springblade.desk.produce.service.IPdaSaveService; |
||||
import org.springframework.web.bind.annotation.*; |
||||
|
||||
/** |
||||
* @ClassName PdaLoadController |
||||
* @Description: 手持移动端数据查询接口 |
||||
* @Author qjh |
||||
* @Date 2022-10-28 14:41 |
||||
* @Version 1.0 |
||||
* 注意:本内容仅限于内部传阅,禁止外泄及用于其他的商业目的 |
||||
*/ |
||||
@RestController |
||||
@RequiredArgsConstructor |
||||
@RequestMapping("/pdaSave") |
||||
@Tag(name = "手持移动端数据查询接口", description = "接口") |
||||
public class PdaSaveController { |
||||
|
||||
private final IPdaSaveService pdaSaveService; |
||||
|
||||
private final IBasicClazzService basicClazzService; |
||||
@Operation(summary = "流程卡与挂具绑定") |
||||
@PostMapping("/gjBindingCrad") |
||||
public R gjBindingCrad(@RequestParam(value = "rsId") Long rsId,@RequestParam(value = "planListIds") String planListIds) { |
||||
pdaSaveService.bindingCard(rsId, null, null, planListIds); |
||||
return R.success() ; |
||||
} |
||||
@Operation(summary = "挂具与飞靶绑定") |
||||
@PostMapping("/gjBindingFb") |
||||
public R gjBindingFb(@RequestParam(value = "fsId") Long fsId,@RequestParam(value = "rsListIds") String rsListIds) { |
||||
pdaSaveService.binding(fsId, null, null,null, rsListIds); |
||||
return R.success() ; |
||||
} |
||||
@Operation(summary = "飞靶与设备绑定") |
||||
@PostMapping("/fbBindingEc") |
||||
public R fbBindingEc(@RequestParam(value = "fsId") Long fsId,@RequestParam(value = "ecId") Long ecId, |
||||
@RequestParam(value = "hangNum") Long hangNum,@RequestParam(value = "unFsBool") Boolean unFsBool) { |
||||
String hangNumName = ""; |
||||
BasicClazz bsBasicClass = null; |
||||
if(hangNum != null&&hangNum != -1){ |
||||
bsBasicClass = basicClazzService.getById(hangNum); |
||||
if(bsBasicClass != null){ |
||||
hangNumName = bsBasicClass.getName(); |
||||
} |
||||
}else if(hangNum == -1){ |
||||
hangNumName = "-1"; |
||||
} |
||||
pdaSaveService.binding(fsId, ecId, unFsBool, hangNumName,null); |
||||
// 删除产线设备对应的挂次号之前的数据
|
||||
if(bsBasicClass!= null){ |
||||
LambdaUpdateWrapper<BasicClazz> wrapper = new LambdaUpdateWrapper<>(); |
||||
wrapper.eq(BasicClazz::getCode,bsBasicClass.getCode()); |
||||
wrapper.eq(BasicClazz::getBizType,"6"); |
||||
wrapper.lt(BasicClazz::getUpdateTime,bsBasicClass.getUpdateTime()); |
||||
wrapper.set(BasicClazz::getIsDeleted,1); |
||||
basicClazzService.update(null, wrapper); |
||||
} |
||||
return R.success() ; |
||||
} |
||||
@Operation(summary = "流程卡与飞靶绑定") |
||||
@PostMapping("/fbBindingCrad") |
||||
public R fbBindingCrad(@RequestParam(value = "fsId") Long fsId,@RequestParam(value = "planListIds") String planListIds) { |
||||
pdaSaveService.bindingCard(null, fsId, null, planListIds); |
||||
return R.success() ; |
||||
} |
||||
@Operation(summary = "流程卡与设备绑定") |
||||
@PostMapping("/ecBindingCrad") |
||||
public R ecBindingCrad(@RequestParam(value = "ecId") Long ecId,@RequestParam(value = "planListIds") String planListIds) { |
||||
pdaSaveService.bindingCard(null, null, ecId, planListIds); |
||||
return R.success() ; |
||||
} |
||||
@Operation(summary = "挂具与设备绑定") |
||||
@PostMapping("/gjBindingEc") |
||||
public R gjBindingEc(@RequestParam(value = "ecId") Long ecId,@RequestParam(value = "rsListIds") String rsListIds) { |
||||
pdaSaveService.binding(null, ecId, null,null, rsListIds); |
||||
return R.success() ; |
||||
} |
||||
|
||||
|
||||
} |
||||
@ -0,0 +1,44 @@ |
||||
package org.springblade.desk.produce.service; |
||||
|
||||
import org.springblade.core.mp.base.BaseService; |
||||
import org.springblade.core.secure.BladeUser; |
||||
import org.springblade.desk.device.pojo.entity.FeiBaSetEntity; |
||||
import org.springblade.desk.device.pojo.entity.RackSetEntity; |
||||
import org.springblade.desk.produce.pojo.entity.WorkOrder; |
||||
import org.springblade.desk.produce.pojo.entity.WorkPlan; |
||||
|
||||
import java.util.List; |
||||
|
||||
/** |
||||
* 车间作业计划 服务类 |
||||
* |
||||
* @author BladeX |
||||
* @since 2025-11-28 |
||||
*/ |
||||
public interface IPdaLoadService extends BaseService<WorkPlan> { |
||||
/** |
||||
* <p>方法名: loadBindData </p> |
||||
* <p>方法描述: 加载绑定数据 </p> |
||||
* |
||||
* @param user 用户 |
||||
* @param cardNo 卡号 |
||||
* @return org.springblade.desk.produce.pojo.entity.WorkPlan |
||||
*/ |
||||
WorkPlan loadBindData(BladeUser user, String cardNo); |
||||
/** |
||||
* <p>方法名: getBsRackSetByCode </p> |
||||
* <p>方法描述: 根据挂具编码查询数据 </p> |
||||
* |
||||
* @param rsCode 挂具编码 |
||||
* @return org.springblade.desk.device.pojo.entity.RackSetEntity |
||||
*/ |
||||
RackSetEntity getBsRackSetByCode(String rsCode); |
||||
/** |
||||
* <p>方法名: getBsFeiBaSetByCode </p> |
||||
* <p>方法描述: 根据飞靶编码查询数据 </p> |
||||
* |
||||
* @param fsCode 飞靶编码 |
||||
* @return org.springblade.desk.device.pojo.entity.BsFeiBaSet |
||||
*/ |
||||
FeiBaSetEntity getBsFeiBaSetByCode(String fsCode); |
||||
} |
||||
@ -0,0 +1,32 @@ |
||||
package org.springblade.desk.produce.service; |
||||
|
||||
import org.springblade.core.mp.base.BaseService; |
||||
import org.springblade.desk.produce.pojo.entity.WorkPlan; |
||||
|
||||
/** |
||||
* 车间作业计划 服务类 |
||||
* |
||||
* @author BladeX |
||||
* @since 2025-11-28 |
||||
*/ |
||||
public interface IPdaSaveService extends BaseService<WorkPlan> { |
||||
/** |
||||
* <p>方法名: bindingCard </p> |
||||
* <p>方法描述: 绑定卡 </p> |
||||
* |
||||
* @param rsId 挂具id |
||||
* @param planListIds 绑定数据 |
||||
*/ |
||||
void bindingCard(Long rsId, Long fsId, Long ecId, String planListIds); |
||||
/** |
||||
* <p>方法名: binding </p> |
||||
* <p>方法描述: 绑定 </p> |
||||
* |
||||
* @param rsId 挂具id |
||||
* @param ecId 设备id |
||||
* @param unFsBool 是否解绑 |
||||
* @param rsListIds 绑定数据 |
||||
* @param listIds |
||||
*/ |
||||
void binding(Long rsId, Long ecId, Boolean unFsBool,String hangNum,String rsListIds); |
||||
} |
||||
@ -0,0 +1,163 @@ |
||||
package org.springblade.desk.produce.service.impl; |
||||
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
||||
import lombok.RequiredArgsConstructor; |
||||
import lombok.extern.slf4j.Slf4j; |
||||
import org.apache.commons.lang3.ObjectUtils; |
||||
import org.springblade.common.exception.BusinessException; |
||||
import org.springblade.core.log.exception.ServiceException; |
||||
import org.springblade.core.mp.base.BaseServiceImpl; |
||||
import org.springblade.core.secure.BladeUser; |
||||
import org.springblade.desk.basic.pojo.entity.RelTeamSetUser; |
||||
import org.springblade.desk.basic.service.IRelTeamSetUserService; |
||||
import org.springblade.desk.dashboard.pojo.entity.BsProcessSetEntity; |
||||
import org.springblade.desk.dashboard.pojo.entity.BsTeamSetEntity; |
||||
import org.springblade.desk.dashboard.pojo.entity.DsProcessMeasuringToolEntity; |
||||
import org.springblade.desk.dashboard.pojo.entity.DsProcessProjectEntity; |
||||
import org.springblade.desk.dashboard.service.*; |
||||
import org.springblade.desk.device.pojo.entity.FeiBaSetEntity; |
||||
import org.springblade.desk.device.pojo.entity.RackSetEntity; |
||||
import org.springblade.desk.device.service.IFeiBaSetService; |
||||
import org.springblade.desk.device.service.IRackSetService; |
||||
import org.springblade.desk.produce.mapper.WorkPlanMapper; |
||||
import org.springblade.desk.produce.pojo.entity.*; |
||||
import org.springblade.desk.produce.service.*; |
||||
import org.springblade.desk.quality.pojo.entity.InspectionTask; |
||||
import org.springblade.desk.quality.pojo.entity.WorkPlanItem; |
||||
import org.springblade.desk.quality.pojo.vo.WorkPlanItemDetailVO; |
||||
import org.springblade.desk.quality.pojo.vo.WorkPlanItemVO; |
||||
import org.springblade.desk.quality.service.IInspectionTaskService; |
||||
import org.springblade.desk.quality.service.IPlanTestService; |
||||
import org.springblade.desk.quality.service.IWorkPlanItemService; |
||||
import org.springframework.beans.BeanUtils; |
||||
import org.springframework.stereotype.Service; |
||||
|
||||
import java.util.ArrayList; |
||||
import java.util.Date; |
||||
import java.util.List; |
||||
import java.util.Map; |
||||
import java.util.stream.Collectors; |
||||
|
||||
/** |
||||
* 车间作业计划 服务实现类 |
||||
* |
||||
* @author BladeX |
||||
*/ |
||||
@Slf4j |
||||
@Service |
||||
@RequiredArgsConstructor |
||||
public class PdaLoadServiceImpl extends BaseServiceImpl<WorkPlanMapper, WorkPlan> implements IPdaLoadService { |
||||
|
||||
private final IBsProcedureTeamService bsProcedureTeamService; |
||||
|
||||
private final IBsProcessSetService bsProcessSetService; |
||||
|
||||
private final IDsProcessService dsProcessService; |
||||
|
||||
private final IPrReworkProcessService prReworkProcessService; |
||||
|
||||
private final IWorkPlanItemService workPlanItemService; |
||||
|
||||
private final IInspectionTaskService inspectionTaskService; |
||||
|
||||
private final IWorkOrderRunService workOrderRunService; |
||||
|
||||
private final IDsProcessMeasuringToolService processMeasuringToolService; |
||||
|
||||
private final IDsProcessProjectService dsProcessProjectService; |
||||
|
||||
private final IMakeRecService makeRecService; |
||||
|
||||
private final IMacToolUseService macToolUseService; |
||||
|
||||
private final IPlanTestService planTestService; |
||||
|
||||
private final IWorkOrderService workOrderService; |
||||
|
||||
private final IRelTeamSetUserService relTeamSetUserService; |
||||
|
||||
private final IRackSetService rackSetService; |
||||
|
||||
private final IFeiBaSetService feiBaSetService; |
||||
|
||||
@Override |
||||
public WorkPlan loadBindData(BladeUser user, String cardNo) { |
||||
WorkPlan prWorkPlan = this.getCurrentWorkPlan(cardNo, user, false, false); |
||||
return prWorkPlan; |
||||
} |
||||
|
||||
@Override |
||||
public RackSetEntity getBsRackSetByCode(String rsCode) { |
||||
return rackSetService.getOne(Wrappers.lambdaQuery(RackSetEntity.class) |
||||
.eq(RackSetEntity::getRsCode, rsCode)); |
||||
} |
||||
|
||||
@Override |
||||
public FeiBaSetEntity getBsFeiBaSetByCode(String fsCode) { |
||||
return feiBaSetService.getOne(Wrappers.lambdaQuery(FeiBaSetEntity.class) |
||||
.eq(FeiBaSetEntity::getFsCode, fsCode)); |
||||
} |
||||
|
||||
private WorkPlan getCurrentWorkPlan(String cardNo, BladeUser user, boolean checkCurrentProcess, boolean checkAfterPlating) { |
||||
//获取并验证车间订单
|
||||
WorkOrder prWorkOrder = this.checkPrWorkOrder(cardNo); |
||||
//获取当前登录人班组
|
||||
List<Long> tsIds = relTeamSetUserService. |
||||
list(Wrappers.lambdaQuery(RelTeamSetUser.class) |
||||
.eq(RelTeamSetUser::getUserId, user.getUserId())) |
||||
.stream().map(RelTeamSetUser::getUserId).collect(Collectors.toList()); |
||||
//获取作业计划
|
||||
WorkPlan prWorkPlan = this.getOne(Wrappers.lambdaQuery(WorkPlan.class) |
||||
.eq(WorkPlan::getId, prWorkOrder.getWpId())); |
||||
//获取当前工序的下序
|
||||
WorkPlan nextPrWorkPlan = this.getOne(Wrappers.lambdaQuery(WorkPlan.class) |
||||
.eq(WorkPlan::getId, prWorkPlan.getNextWpId())); |
||||
//获取当前工序的上序
|
||||
WorkPlan frontPrWorkPlan = this.getOne(Wrappers.lambdaQuery(WorkPlan.class) |
||||
.eq(WorkPlan::getId, prWorkPlan.getFrontWpId())); |
||||
//如果是最后一道工序(当前序下序为空或者下序的下序为空)
|
||||
if (nextPrWorkPlan == null || nextPrWorkPlan.getNextWpId() == null) { |
||||
//如果是镀后入库则不验证
|
||||
if (checkAfterPlating) { |
||||
throw new ServiceException("pda.nextWorkPlan.noNext"); |
||||
} |
||||
} |
||||
//验证作业中心
|
||||
//this.checkWorkCenter(checkCurrentProcess, frontPrWorkPlan, prWorkPlan, nextPrWorkPlan, tsIds, checkAfterPlating);
|
||||
//状态是false或者上序为空,并且当前序(首道)状态未未开工时,获取当前序;
|
||||
if (!checkCurrentProcess || (frontPrWorkPlan == null && prWorkPlan.getStatus().equals(WorkPlan.STATUS_NO_START))) { |
||||
return prWorkPlan; |
||||
} |
||||
//如果是镀后入库则不验证
|
||||
if (checkAfterPlating) { |
||||
if (prWorkPlan != null) { |
||||
//验证上道工序是否报工完成
|
||||
if (!WorkPlan.STATUS_WORK_OK.equals(prWorkPlan.getStatus())) { |
||||
throw new ServiceException("product.frontWpNotWork"); |
||||
} |
||||
} |
||||
} |
||||
return nextPrWorkPlan; |
||||
} |
||||
|
||||
private void checkWorkCenter(boolean checkCurrentProcess, WorkPlan frontPrWorkPlan, WorkPlan prWorkPlan, WorkPlan nextPrWorkPlan, List<Long> tsIds, boolean checkAfterPlating) { |
||||
|
||||
} |
||||
|
||||
private WorkOrder checkPrWorkOrder(String cardNo) { |
||||
WorkOrder prWorkOrder = this.checkWo(cardNo); |
||||
//车间订单状态小于已下达并且大于加工中的情况下,不允许下序接收
|
||||
if (prWorkOrder.getRunStatus() < WorkOrder.RUN_STATUS_ISSUED || prWorkOrder.getRunStatus() > WorkOrder.RUN_STATUS_RECEIVE) { |
||||
throw new ServiceException("pda.prWorkOrder.runStatus"+prWorkOrder.getRunStatus()); |
||||
} |
||||
return prWorkOrder; |
||||
} |
||||
|
||||
private WorkOrder checkWo(String cardNo) { |
||||
WorkOrder prWorkOrder = workOrderService.getOne(Wrappers.lambdaQuery(WorkOrder.class).eq(WorkOrder::getCardNo, cardNo)); |
||||
if (prWorkOrder == null) { |
||||
throw new ServiceException("pda.prWorkOrder.absent"+null); |
||||
} |
||||
return prWorkOrder; |
||||
} |
||||
} |
||||
@ -0,0 +1,208 @@ |
||||
package org.springblade.desk.produce.service.impl; |
||||
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
||||
import lombok.RequiredArgsConstructor; |
||||
import lombok.extern.slf4j.Slf4j; |
||||
import org.apache.commons.lang3.StringUtils; |
||||
import org.springblade.core.mp.base.BaseServiceImpl; |
||||
import org.springblade.core.secure.utils.AuthUtil; |
||||
import org.springblade.desk.basic.service.IRelTeamSetUserService; |
||||
import org.springblade.desk.dashboard.service.*; |
||||
import org.springblade.desk.device.pojo.entity.FeiBaSetEntity; |
||||
import org.springblade.desk.device.pojo.entity.RackSetEntity; |
||||
import org.springblade.desk.device.service.IFeiBaSetService; |
||||
import org.springblade.desk.device.service.IRackSetService; |
||||
import org.springblade.desk.produce.mapper.WorkPlanMapper; |
||||
import org.springblade.desk.produce.pojo.entity.MacToolUse; |
||||
import org.springblade.desk.produce.pojo.entity.WorkPlan; |
||||
import org.springblade.desk.produce.service.*; |
||||
import org.springblade.desk.quality.service.IInspectionTaskService; |
||||
import org.springblade.desk.quality.service.IPlanTestService; |
||||
import org.springblade.desk.quality.service.IWorkPlanItemService; |
||||
import org.springframework.stereotype.Service; |
||||
|
||||
import java.util.Date; |
||||
import java.util.List; |
||||
|
||||
/** |
||||
* 车间作业计划 服务实现类 |
||||
* |
||||
* @author BladeX |
||||
*/ |
||||
@Slf4j |
||||
@Service |
||||
@RequiredArgsConstructor |
||||
public class PdaSaveServiceImpl extends BaseServiceImpl<WorkPlanMapper, WorkPlan> implements IPdaSaveService { |
||||
|
||||
private final IBsProcedureTeamService bsProcedureTeamService; |
||||
|
||||
private final IBsProcessSetService bsProcessSetService; |
||||
|
||||
private final IDsProcessService dsProcessService; |
||||
|
||||
private final IPrReworkProcessService prReworkProcessService; |
||||
|
||||
private final IWorkPlanItemService workPlanItemService; |
||||
|
||||
private final IInspectionTaskService inspectionTaskService; |
||||
|
||||
private final IWorkOrderRunService workOrderRunService; |
||||
|
||||
private final IDsProcessMeasuringToolService processMeasuringToolService; |
||||
|
||||
private final IDsProcessProjectService dsProcessProjectService; |
||||
|
||||
private final IMakeRecService makeRecService; |
||||
|
||||
private final IMacToolUseService macToolUseService; |
||||
|
||||
private final IPlanTestService planTestService; |
||||
|
||||
private final IWorkOrderService workOrderService; |
||||
|
||||
private final IRelTeamSetUserService relTeamSetUserService; |
||||
|
||||
private final IRackSetService rackSetService; |
||||
|
||||
private final IFeiBaSetService feiBaSetService; |
||||
|
||||
@Override |
||||
public void bindingCard(Long rsId, Long fsId, Long ecId, String planListIds) { |
||||
RackSetEntity rackSet = rackSetService.getById(rsId); |
||||
//BsFeiBaSet bsFeiBaSet = this.getFeiBaSetByFsId(fsId);
|
||||
//DeEquipmentCard equipmentCard = this.getEquipmentCardByEcId(ecId);
|
||||
|
||||
//同槽号
|
||||
String code = null; |
||||
//rsId挂具绑定流程卡,fsId飞靶绑定流程卡
|
||||
if(rsId!=null){ |
||||
List<MacToolUse> macToolUseList = macToolUseService.list(Wrappers.<MacToolUse>query().lambda() |
||||
.eq(MacToolUse::getBsRackSet, rsId) |
||||
.eq(MacToolUse::getFinished, false) |
||||
.eq(MacToolUse::getIsDeleted, 0).orderByDesc(MacToolUse::getMtnCode) |
||||
); |
||||
if(macToolUseList.size()>0){ |
||||
code = macToolUseList.get(0).getMtnCode(); |
||||
} |
||||
//如果未找到满足条件的同槽号
|
||||
if (StringUtils.isBlank(code)) { |
||||
code = macToolUseService.nextCode(0); |
||||
} |
||||
//修改挂具状态
|
||||
rackSetService.updateById(rackSet); |
||||
} |
||||
//fsId 是空,逻辑不会走
|
||||
//处理绑定信息
|
||||
WorkPlan prWorkPlan = null; |
||||
MacToolUse mtu = null; |
||||
//绑定日期
|
||||
Date nowDate = new Date(); |
||||
String [] str= planListIds.split(","); |
||||
for (int i = 0; i < str.length; i++) { |
||||
Long planId = Long.parseLong(str[i]); |
||||
prWorkPlan = this.getById(planId); |
||||
mtu = new MacToolUse(); |
||||
mtu.setMtnCode(code); |
||||
mtu.setBsRackSet(rsId); |
||||
mtu.setWpId(prWorkPlan.getId()); |
||||
mtu.setCreateMan(AuthUtil.getUser().getUserId()); |
||||
mtu.setUpdateTime(nowDate); |
||||
mtu.setCreateTime(nowDate); |
||||
macToolUseService.saveOrUpdate(mtu); |
||||
//修改作业计划绑定状态为绑定
|
||||
prWorkPlan.setBindStatus(WorkPlan.BIND_STATUS_BIND); |
||||
if (rsId == null) { |
||||
prWorkPlan.setPrintType(WorkPlan.PRINT_TYPE_PROCESS); |
||||
} |
||||
this.updateById(prWorkPlan); |
||||
} |
||||
// 存储同槽额外面积 没有表,后期添加
|
||||
this.setBsAdditionalMess(code); |
||||
} |
||||
|
||||
@Override |
||||
public void binding(Long fsId, Long ecId, Boolean unFsBool,String hangNum, String rsListIds) { |
||||
//获取同槽号
|
||||
String code = null; |
||||
Date nowDate = new Date(); |
||||
FeiBaSetEntity frackSet = feiBaSetService.getById(fsId); |
||||
//挂具集合不为空,则代表是挂具相关绑定,反之则是飞靶绑定设备
|
||||
if (rsListIds != null) { |
||||
if (fsId != null) { |
||||
List<MacToolUse> macToolUseList = macToolUseService.list(Wrappers.<MacToolUse>query().lambda() |
||||
.eq(MacToolUse::getBsRackSet, fsId) |
||||
.eq(MacToolUse::getFinished, false) |
||||
.eq(MacToolUse::getIsDeleted, 0).orderByDesc(MacToolUse::getMtnCode) |
||||
); |
||||
if(macToolUseList.size()>0){ |
||||
code = macToolUseList.get(0).getMtnCode(); |
||||
} |
||||
//修改飞靶状态
|
||||
feiBaSetService.updateById(frackSet); |
||||
//如果未找到满足条件的同槽号,则自动生成一个同槽号(飞靶)
|
||||
if (StringUtils.isBlank(code)) { |
||||
code = macToolUseService.nextCode(0); |
||||
} |
||||
}else { |
||||
//如果未找到满足条件的同槽号,则自动生成一个同槽号(设备)
|
||||
if (StringUtils.isBlank(code)) { |
||||
code = macToolUseService.nextCode(2); |
||||
} |
||||
} |
||||
//挂具
|
||||
RackSetEntity rackSet = null; |
||||
String [] str= rsListIds.split(","); |
||||
for (int i = 0; i < str.length; i++) { |
||||
Long rsId = Long.parseLong(str[i]); |
||||
rackSet = rackSetService.getById(rsId); |
||||
List<MacToolUse> macToolUseList = macToolUseService.list(Wrappers.<MacToolUse>query().lambda() |
||||
.eq(MacToolUse::getBsRackSet, rsId) |
||||
.eq(MacToolUse::getFinished, false) |
||||
.eq(MacToolUse::getIsDeleted, 0) |
||||
); |
||||
//开始绑定
|
||||
for (int i1 = 0; i1 < macToolUseList.size(); i1++) { |
||||
MacToolUse mtu = macToolUseList.get(i1); |
||||
mtu.setMtnCode(code); |
||||
mtu.setBsRackSet(rsId); |
||||
mtu.setUpdateTime(nowDate); |
||||
mtu.setCreateMan(AuthUtil.getUser().getUserId()); |
||||
macToolUseService.updateById(mtu); |
||||
} |
||||
// 存储同槽额外面积
|
||||
this.setBsAdditionalMess(code); |
||||
} |
||||
|
||||
}else { |
||||
List<MacToolUse> macToolUseList = macToolUseService.list(Wrappers.<MacToolUse>query().lambda() |
||||
.eq(MacToolUse::getBsFeiBaSet, frackSet.getId()) |
||||
.eq(MacToolUse::getIsDeleted, 0) |
||||
); |
||||
//未标记解绑飞靶,则代表正常绑定
|
||||
if (unFsBool == null){ |
||||
//获取以设备为基准的同槽号
|
||||
code = macToolUseService.nextCode(2); |
||||
//开始绑定
|
||||
for (int i = 0; i < macToolUseList.size(); i++) { |
||||
MacToolUse mtu = macToolUseList.get(i); |
||||
mtu.setMtnCode(code); |
||||
mtu.setHangNum(null); |
||||
mtu.setMtnCode(code); |
||||
mtu.setUpdateTime(nowDate); |
||||
mtu.setCreateMan(AuthUtil.getUser().getUserId()); |
||||
macToolUseService.updateById(mtu); |
||||
} |
||||
} //else 逻辑不走
|
||||
} |
||||
} |
||||
|
||||
/** |
||||
* 存储同槽额外面积 |
||||
* @param code |
||||
*/ |
||||
private void setBsAdditionalMess(String code) { |
||||
|
||||
} |
||||
|
||||
|
||||
} |
||||
Loading…
Reference in new issue