package com.chinaztt.mes.plan.service;
|
|
import com.alibaba.fastjson.JSONArray;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.chinaztt.mes.plan.dto.ManufacturingOrderDTO;
|
import com.chinaztt.mes.plan.dto.MoStructureComponentDTO;
|
import com.chinaztt.mes.plan.dto.UploadRefreshIfsOrderNoResultDTO;
|
import com.chinaztt.mes.plan.entity.*;
|
import com.chinaztt.mes.plan.excel.ManufacturingOderUploadData;
|
import com.chinaztt.mes.technology.dto.RoutingOperationDTO;
|
import com.chinaztt.mes.technology.entity.RoutingOperation;
|
import com.chinaztt.ztt.common.core.util.R;
|
|
import javax.servlet.http.HttpServletResponse;
|
import java.io.IOException;
|
import java.math.BigDecimal;
|
import java.util.List;
|
|
/**
|
* 制造订单表
|
*
|
* @author cxf
|
* @date 2020-09-24 14:26:01
|
*/
|
public interface ManufacturingOrderService extends IService<ManufacturingOrder> {
|
|
/**
|
* 分页查询
|
*
|
* @param page
|
* @param query
|
* @param list
|
* @return
|
*/
|
IPage<List<ManufacturingOrder>> getManufacturingOrderPage(Page page, QueryWrapper<ManufacturingOrderDTO> query, List<Long> list);
|
|
|
/**
|
* 导出
|
*
|
* @param response
|
* @throws IOException
|
*/
|
void export(HttpServletResponse response, QueryWrapper<ManufacturingOrderDTO> wrapper, List<Long> list) throws IOException;
|
|
/**
|
* 通过id查询制造订单
|
*
|
* @param id
|
* @return
|
*/
|
ManufacturingOrderDTO selectById(Long id);
|
|
/**
|
* 保存
|
*
|
* @param manufacturingOrderDTO
|
* @return
|
*/
|
R saveDto(ManufacturingOrderDTO manufacturingOrderDTO);
|
|
/**
|
* 生产计划创建车间订单
|
*
|
* @param manufacturingOrderDTO
|
* @return
|
*/
|
R fullSave(ManufacturingOrderDTO manufacturingOrderDTO);
|
|
/**
|
* 修改
|
*
|
* @param manufacturingOrderDTO
|
* @return
|
*/
|
R updateDtoById(ManufacturingOrderDTO manufacturingOrderDTO);
|
|
/**
|
* 根据零件判断是否存在工艺路线/工艺结构
|
*
|
* @param partId
|
* @return
|
*/
|
ManufacturingOrderDTO checkPart(Long partId, String workshopTypeCode);
|
|
/**
|
* Description: 改变状态
|
*
|
* @param ids
|
* @param event
|
* @return
|
* @date: 2020/11/19 11:06
|
*/
|
boolean changeState(List<Long> ids, String event);
|
|
/**
|
* 根据制造订单id和工艺id校验该制造订单对应的工艺是否一致
|
*
|
* @param manufacturingOrderDTO
|
* @return
|
*/
|
Object checkoutManufacturingOrder(ManufacturingOrderDTO manufacturingOrderDTO);
|
|
/**
|
* 根据工艺id和工序id获取复制的工序模板
|
*
|
* @param manufacturingOrderDTO
|
* @return
|
*/
|
List<ManufacturingOrderOperationTemplate> getOperationTemplate(ManufacturingOrderDTO manufacturingOrderDTO);
|
|
/**
|
* 根据复制工序模板的id删除工序模板
|
*
|
* @param id
|
* @return
|
*/
|
boolean deleteRoutingTemplate(Long id);
|
|
/**
|
* 根据工艺工序id关联添加工序模板
|
*
|
* @param manufacturingOrderDTO
|
* @return
|
*/
|
List<ManufacturingOrderOperationTemplate> addOperationTemplate(ManufacturingOrderDTO manufacturingOrderDTO);
|
|
/**
|
* 根据工艺工序id和工序模板id获取工序参数
|
*
|
* @param manufacturingOrderDTO
|
* @return
|
*/
|
List<ManufacturingOrderOperationParam> getOperationTemplateParam(ManufacturingOrderDTO manufacturingOrderDTO);
|
|
/**
|
* 根据复制工序参数的id删除工序参数
|
*
|
* @param id
|
* @return
|
*/
|
boolean deleteRoutingTemplateParam(Long id);
|
|
/**
|
* 根据工艺工序id和工序模板id关联添加工序参数
|
*
|
* @param manufacturingOrderDTO
|
* @return
|
*/
|
List<ManufacturingOrderOperationParam> addOperationTemplateParam(ManufacturingOrderDTO manufacturingOrderDTO);
|
|
/**
|
* 工序参数的参数值的修改
|
*
|
* @param manufacturingOrderDTO
|
* @return
|
*/
|
boolean updateRoutingTemplateParamById(ManufacturingOrderDTO manufacturingOrderDTO);
|
|
/**
|
* 修改制造订单模板
|
*
|
* @param manufacturingOrderOperationTemplate
|
* @return
|
*/
|
ManufacturingOrderOperationTemplate updateTemplate(ManufacturingOrderOperationTemplate manufacturingOrderOperationTemplate);
|
|
|
/**
|
* 根据bomid 查询结构
|
*
|
* @param bomId
|
* @return
|
*/
|
MoStructureComponentDTO bomSelectChange(Long bomId);
|
|
/**
|
* 通过制造订单id查询客户订单
|
*
|
* @param id
|
* @return
|
*/
|
List<CustomerOrder> getCustomer(Long id);
|
|
/**
|
* 分页查询制造订单报表
|
*
|
* @param page
|
* @param gen
|
* @return
|
*/
|
IPage<ManufacturingOrderDTO> getStatementPage(Page page, QueryWrapper<ManufacturingOrderDTO> gen);
|
|
/**
|
* 通过订单id和零件id查找所需数量和盘数
|
*
|
* @param id
|
* @param partId
|
* @return
|
*/
|
List<MoStructureComponentDTO> getQpaNumber(Long id, Long partId);
|
|
/**
|
* ifs 车间订单计划查询接口
|
*
|
* @param manufacturingOrderDTO
|
* @return
|
*/
|
R queryShopOrderReqStd(ManufacturingOrderDTO manufacturingOrderDTO);
|
|
/**
|
* ifs 车间订单创建更新接口
|
*
|
* @param
|
* @return
|
*/
|
R importShopOrderStd(List<Long> ids);
|
|
/**
|
* ifs车间订单物料更新
|
*
|
* @param ids
|
* @return
|
*/
|
R modifyShopMaterialAllocStd(List<Long> ids);
|
|
|
/**
|
* 处理对接IFS车间订单更新新增接口后的回写处理
|
*
|
* @param jsonArray
|
*/
|
void moIfsResult(JSONArray jsonArray);
|
|
/**
|
* ifs车间订单工序更新
|
*
|
* @param ids
|
* @return
|
*/
|
R modifyShopOperationStd(List<Long> ids);
|
|
/**
|
* 根据生产计划id 快速创建车间订单
|
*
|
* @param manufacturingOrderDTOS
|
* @return
|
*/
|
R addBatch(List<ManufacturingOrderDTO> manufacturingOrderDTOS);
|
|
/**
|
* 车间订单新增
|
*
|
* @param manufacturingOrderDTOS
|
* @return
|
* @throws Exception
|
*/
|
List<ManufacturingOrderDTO> addAll(List<ManufacturingOrderDTO> manufacturingOrderDTOS) throws Exception;
|
|
/**
|
* 段长任务,根据生产计划id 快速创建车间订单
|
*
|
* @param manufacturingOrderDTOS
|
* @return
|
*/
|
void addBatchForMerge(List<ManufacturingOrderDTO> manufacturingOrderDTOS, List<RoutingOperationDTO> routingOperations, Boolean isGenerateSn);
|
|
/**
|
* 车间订单BOM修改
|
*
|
* @param moStructureComponentDTO
|
* @return
|
*/
|
boolean updateMoBom(MoStructureComponentDTO moStructureComponentDTO);
|
|
/**
|
* 根据车间订单BOM的id删除节点
|
*
|
* @param id
|
* @return
|
*/
|
boolean delMoBom(Long id);
|
|
|
/**
|
* 新增车间订单bom节点
|
*
|
* @param moStructureComponentDTO bom节点
|
* @return
|
*/
|
MoStructureComponentDTO addMoBomCompont(MoStructureComponentDTO moStructureComponentDTO);
|
|
/**
|
* 判断车间订单是否可以合并
|
*
|
* @param ids
|
* @return
|
*/
|
boolean mergeCheck(List<Long> ids);
|
|
/**
|
* 后台拼接合并车间订单
|
*
|
* @param id 被合并
|
* @param ids 合并的list
|
* @return
|
*/
|
ManufacturingOrder mergeOrder(Long id, List<Long> ids);
|
|
/**
|
* 车间订单合并保存
|
*
|
* @param manufacturingOrderDTO
|
* @return
|
*/
|
boolean mergeUpdate(ManufacturingOrderDTO manufacturingOrderDTO);
|
|
/**
|
* 车间订单状态修改
|
*
|
* @param manufacturingOrder
|
* @param state
|
* @return
|
*/
|
R changeState(ManufacturingOrder manufacturingOrder, String state);
|
|
/**
|
* 车间订单预处理
|
*
|
* @param manufacturingOrder
|
* @param b true 预关闭 false 取消预关闭
|
* @return
|
*/
|
R changeState(ManufacturingOrder manufacturingOrder, Boolean b);
|
|
/**
|
* 更新月结拆单后IFS订单号
|
*/
|
void refreshIfsOrderNo();
|
|
/**
|
* 更新未执行缓存中ifs订单号参数
|
*/
|
|
void refreshIfsLogOrderNo();
|
|
/**
|
* 根据上传文件更新ifs车间订单号
|
*/
|
void refreshUploadIfsOrderNo(List<ManufacturingOderUploadData> list, List<UploadRefreshIfsOrderNoResultDTO> resultDTOList);
|
}
|