生产管理修改

liweidong
李涛 1 day ago
parent 118e2075d4
commit ada5274998
  1. 51
      blade-service-api/blade-desk-api/src/main/java/org/springblade/desk/produce/pojo/entity/WorkOrderAdjust.java
  2. 26
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/controller/DisTaskingController.java
  3. 14
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/mapper/WorkOrderAdjustMapper.java
  4. 16
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/IWorkOrderAdjustService.java
  5. 28
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderAdjustServiceImpl.java
  6. 47
      blade-service/blade-desk/src/main/java/org/springblade/desk/produce/service/impl/WorkOrderServiceImpl.java

@ -1,6 +1,5 @@
package org.springblade.desk.produce.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@ -8,51 +7,35 @@ import lombok.EqualsAndHashCode;
import org.springblade.core.mp.base.BaseEntity;
/**
* 车间作业计划修改日志 实体类
* 订单调整记录 实体类
*
* @author BladeX
*/
@Data
@TableName("MES_WORK_ORDER_ADJUST")
@Schema(description = "WorkPlanLog对象")
@Schema(description = "WorkOrderAdjust对象")
@EqualsAndHashCode(callSuper = true)
public class WorkOrderAdjust extends BaseEntity {
/**
* 未完成
*/
public static Integer CUR_STATUS_UNFINISHED = 1;
/**
* 已完成
*/
public static Integer CUR_STATUS_COMPLETE = 2;
@Schema(description = "车间订单")
private Long woId;
@Schema(description = "订单编号")
private String woCode;
@Schema(description = "路线卡号")
private String cardNo;
@Schema(description = "零件号")
private String partCode;
@Schema(description = "批次")
private String batchNo;
@Schema(description = "工序")
private String ppsName;
@Schema(description = "数量")
private Double workQty;
@Schema(description = "原班组")
private String oriMakeTeam;
@Schema(description = "现班组")
private String makeTeam;
@Schema(description = "原接收人")
private String oriReceiveMan;
@Schema(description = "旧班组")
private Long oldTeam;
@Schema(description = "现接收人")
private String receiveMan;
@Schema(description = "新班组")
private Long newTeam;
@TableField(exist = false)
@Schema(description = "调整人")
private String adjustName;
@Schema(description = "定额")
private Double quota;
}

@ -1,6 +1,7 @@
package org.springblade.desk.produce.controller;
import com.alibaba.nacos.common.utils.CollectionUtils;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
@ -15,18 +16,17 @@ import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springblade.desk.produce.pojo.dto.ShiftTransferDTO;
import org.springblade.desk.produce.pojo.dto.TaskCompleteDTO;
import org.springblade.desk.produce.pojo.dto.TaskCompleteOrderDTO;
import org.springblade.desk.produce.pojo.dto.UploadPlanDto;
import org.springblade.desk.produce.pojo.entity.DisTasking;
import org.springblade.desk.produce.pojo.entity.MakeRec;
import org.springblade.desk.produce.pojo.entity.WorkPlan;
import org.springblade.desk.produce.pojo.entity.WorkPlanLog;
import org.springblade.desk.produce.pojo.entity.*;
import org.springblade.desk.produce.pojo.vo.ByCardNoByPlanVO;
import org.springblade.desk.produce.pojo.vo.TaskCompleteVO;
import org.springblade.desk.produce.service.IDisTaskingService;
import org.springblade.desk.produce.service.IPdaSaveService;
import org.springblade.desk.produce.service.IWorkOrderAdjustService;
import org.springblade.desk.produce.service.IWorkPlanLogService;
import org.springblade.system.cache.UserCache;
import org.springblade.system.pojo.entity.User;
@ -52,6 +52,8 @@ public class DisTaskingController extends BladeController {
private final IPdaSaveService pdaSaveService;
private final IWorkOrderAdjustService workOrderAdjustService;
@GetMapping("/disTaskHandle")
@ApiOperationSupport(order = 1)
@Operation(summary = "调度任务分派", description = "传入taskCompleteDTO")
@ -161,4 +163,20 @@ public class DisTaskingController extends BladeController {
return R.status(disTaskingService.syncDisTasking(true));
}
@GetMapping("/queryUnfinished")
@ApiOperationSupport(order = 11)
@Operation(summary = "加载未处理调整记录", description = "加载未处理调整记录")
public R<IPage<WorkOrderAdjust>> queryUnfinished(WorkOrderAdjust workOrderAdjust, Query query) {
LambdaQueryWrapper<WorkOrderAdjust> queryWrapper = Condition.getQueryWrapper(workOrderAdjust).lambda();
queryWrapper.eq(WorkOrderAdjust::getStatus, 1);
return R.data(workOrderAdjustService.page(Condition.getPage(query), queryWrapper));
}
@PostMapping("/markComplete")
@ApiOperationSupport(order = 12)
@Operation(summary = "标记完成", description = "标记完成")
public R markComplete(@RequestParam String ids) {
return R.status(workOrderAdjustService.markComplete(Func.toLongList(ids)));
}
}

@ -0,0 +1,14 @@
package org.springblade.desk.produce.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springblade.desk.produce.pojo.entity.WorkOrderAdjust;
/**
* 订单调整记录 Mapper 接口
*
* @author BladeX
*/
public interface WorkOrderAdjustMapper extends BaseMapper<WorkOrderAdjust> {
}

@ -0,0 +1,16 @@
package org.springblade.desk.produce.service;
import org.springblade.core.mp.base.BaseService;
import org.springblade.desk.produce.pojo.entity.WorkOrderAdjust;
import java.util.List;
/**
* 订单调整记录 服务类
*
* @author BladeX
*/
public interface IWorkOrderAdjustService extends BaseService<WorkOrderAdjust> {
boolean markComplete(List<Long> longList);
}

@ -0,0 +1,28 @@
package org.springblade.desk.produce.service.impl;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.desk.produce.mapper.WorkOrderAdjustMapper;
import org.springblade.desk.produce.pojo.entity.WorkOrderAdjust;
import org.springblade.desk.produce.service.IWorkOrderAdjustService;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 订单调整记录 服务实现类
*
* @author BladeX
*/
@Slf4j
@Service
@RequiredArgsConstructor
public class WorkOrderAdjustServiceImpl extends BaseServiceImpl<WorkOrderAdjustMapper, WorkOrderAdjust> implements IWorkOrderAdjustService {
@Override
public boolean markComplete(List<Long> longList) {
return this.update(Wrappers.lambdaUpdate(WorkOrderAdjust.class).in(WorkOrderAdjust::getId, longList).set(WorkOrderAdjust::getStatus, WorkOrderAdjust.CUR_STATUS_COMPLETE));
}
}

@ -65,6 +65,7 @@ import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.math.BigDecimal;
import java.text.NumberFormat;
import java.time.Duration;
import java.time.Instant;
import java.time.LocalDateTime;
@ -159,6 +160,8 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
private final IInspectionItemService inspectionService;
private final IWorkOrderAdjustService workOrderAdjustService;
@Override
public IPage<WorkOrderVO> selectWorkOrderPage(IPage<WorkOrderVO> page, WorkOrderDTO workOrder) {
return page.setRecords(baseMapper.selectWorkOrderPage(page, workOrder));
@ -737,26 +740,15 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
@Override
public void saveAdjust(Long woId, Long oldTsId, Long newTsId, Long userId) {
WorkOrder wo = this.getById(woId);
// PrWorkOrderAdjust woa = new PrWorkOrderAdjust();
//
// BsTeamSet newMakeTeam = new BsTeamSet();
// newMakeTeam.setTsId(newTsId);
// BsTeamSet oldMakeTeam = new BsTeamSet();
// oldMakeTeam.setTsId(oldTsId);
//
// woa.setOldTeam(oldMakeTeam);
// woa.setNewTeam(newMakeTeam);
// woa.setPrWorkOrder(wo);
// woa.setCreateMan(userInfo);
// woa.setCreateTime(new Date());
// woa.setQuota(wo.getPlateSingleQuotaTotal());
// if (woa.getQuota() > 0) {
// woa.setCurStatus(PrWorkOrderAdjust.CUR_STATUS_UNFINISHED);
// } else {
// woa.setCurStatus(PrWorkOrderAdjust.CUR_STATUS_COMPLETE);
// }
//
// prWorkOrderAdjustDao.save(woa);
YieldOrder yieldOrder = yieldOrderService.getById(wo.getYoId());
WorkOrderAdjust woa = new WorkOrderAdjust();
woa.setOldTeam(oldTsId);
woa.setNewTeam(newTsId);
woa.setWoId(woId);
String quota = this.formatDouble(wo.getPlateSingleQuota().doubleValue() * (yieldOrder.getYpQty() != null ? yieldOrder.getYpQty() : wo.getMakeQty()), 10, 6, false);
woa.setQuota(Double.valueOf(quota));
woa.setStatus(woa.getQuota() > 0 ? WorkOrderAdjust.CUR_STATUS_UNFINISHED : WorkOrderAdjust.CUR_STATUS_COMPLETE);
workOrderAdjustService.save(woa);
}
private String getVersionByPartCode(String partCode) {
@ -2592,4 +2584,19 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO
return stringToFix;
}
private String formatDouble(double n, int maxDigits, int minDigits, boolean useGrouping) {
if (maxDigits > 10) {
maxDigits = 10;
}
if (minDigits < 0) {
minDigits = 0;
}
NumberFormat nf = NumberFormat.getInstance();
nf.setMaximumFractionDigits(maxDigits);
nf.setMinimumFractionDigits(minDigits);
nf.setGroupingUsed(useGrouping);
return nf.format(n);
}
}

Loading…
Cancel
Save