| | |
| | | slots: {filter: 'num1_filter'} |
| | | ,filterMethod:filterChanged |
| | | }, |
| | | {field: 'landingSequence', title: '落架顺序', filters: [{data: ''}], slots: {filter: 'num1_filter'},filterMethod:filterChanged}, |
| | | {field: 'landingSequence', title: '小片顺序', filters: [{data: ''}], slots: {filter: 'num1_filter'},filterMethod:filterChanged}, |
| | | {field: 'shape', title: '形状', filters: [{data: ''}], slots: {filter: 'num1_filter'},filterMethod:filterChanged}, |
| | | {field: 'width', title: '宽', showOverflow: "ellipsis"}, |
| | | {field: 'height', title: '高'}, |
| | |
| | | //定义表头数据 |
| | | const titleUploadData = ref({ |
| | | //流程卡号 |
| | | processId: 'NG24030501A02/2', |
| | | processId: 'NG24030701B01/1', |
| | | //销售单号 |
| | | orderId: '', |
| | | //生产单号 |
| | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import lombok.Data; |
| | | |
| | | import java.time.LocalDate; |
| | | |
| | | @Data |
| | | @TableName("sd.order_glass_detail") |
| | | public class OrderGlassDetail { |
| | | @TableId(type = IdType.AUTO) |
| | | |
| | |
| | | private Integer group; |
| | | private LocalDate productionTime; |
| | | private LocalDate createTime; |
| | | // @TableField(select = false) |
| | | @TableField(select = false,exist = false) |
| | | private Order order; |
| | | //@TableField(select = false) |
| | | // @ManyToOne(fetch = FetchType.LAZY) |
| | | @TableField(select = false,exist = false) |
| | | private OrderDetail orderDetail; |
| | | |
| | | |
| | |
| | | import com.alibaba.fastjson.JSONArray; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.baomidou.dynamic.datasource.annotation.DS; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.example.erp.entity.pp.FlowCard; |
| | | import com.example.erp.entity.sd.Order; |
| | | import com.example.erp.entity.sd.OrderDetail; |
| | | import com.example.erp.entity.sd.OrderGlassDetail; |
| | | import com.example.erp.entity.sd.OrderProcessDetail; |
| | | import com.example.erp.mapper.pp.FlowCardMapper; |
| | | import com.example.erp.mapper.sd.OrderGlassDetailMapper; |
| | | import com.example.erp.mapper.sd.OrderProcessDetailMapper; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | import static com.example.erp.service.sd.OrderService.getOrderProcessDetails; |
| | | |
| | | @Service |
| | | @DS("pp") |
| | | public class FlowCardService { |
| | | @Autowired |
| | | final |
| | | FlowCardMapper flowCardMapper; |
| | | final |
| | | OrderGlassDetailMapper orderGlassDetailMapper; |
| | | final |
| | | OrderProcessDetailMapper orderProcessDetailMapper; |
| | | |
| | | public FlowCardService(FlowCardMapper flowCardMapper, OrderGlassDetailMapper orderGlassDetailMapper, OrderProcessDetailMapper orderProcessDetailMapper) { |
| | | this.flowCardMapper = flowCardMapper; |
| | | this.orderGlassDetailMapper = orderGlassDetailMapper; |
| | | this.orderProcessDetailMapper = orderProcessDetailMapper; |
| | | } |
| | | |
| | | //流程卡管理查询 |
| | | public Map<String, Object> selectProcessCard(Integer pageNum, Integer pageSize,Date selectTime1, Date selectTime2, FlowCard flowCard) { |
| | |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("data", flowCardMapper.selectFlowCard(offset, pageSize,selectTime1, selectTime2, flowCard)); |
| | | map.put("total",flowCardMapper.getPageTotal(offset, pageSize, selectTime1, selectTime2, flowCard)); |
| | | System.out.println(map); |
| | | return map; |
| | | } |
| | | |
| | |
| | | //修改订单表分架状态为1,未全部分架完成 |
| | | flowCardMapper.updateProcessingCard(productionId, 1); |
| | | } |
| | | //查询订单小片表获取工艺传入小片工艺表 |
| | | List<OrderGlassDetail> orderGlassDetailList = |
| | | orderGlassDetailMapper.selectList( |
| | | new QueryWrapper<OrderGlassDetail>() |
| | | .eq("order_id", flowCard.getProcessId().substring(0,10)) |
| | | .eq("order_number", flowCard.getOrderNumber()) |
| | | ); |
| | | List<OrderProcessDetail> orderProcessDetailList = getOrderProcessDetails(orderGlassDetailList); |
| | | orderProcessDetailList.forEach( |
| | | orderGlassDetail ->orderGlassDetail.setProcessId(flowCard.getProcessId())); |
| | | |
| | | |
| | | //赋值订单工艺表 |
| | | orderProcessDetailMapper.insertOrderProcessDetail(orderProcessDetailList); |
| | | } |
| | | |
| | | return true; |
| | | } else { |
| | | return false; |
| | |
| | | |
| | | //判断是否大于当前数量并且抛出异常 |
| | | if(processNum<(reportingWorkDetail.getBreakageQuantity()+reportingWorkDetail.getCompletedQuantity())){ |
| | | System.out.println(processNum); |
| | | System.out.println(reportingWorkDetail.getBreakageQuantity()); |
| | | System.out.println(reportingWorkDetail.getCompletedQuantity()); |
| | | // System.out.println(processNum); |
| | | // System.out.println(reportingWorkDetail.getBreakageQuantity()); |
| | | // System.out.println(reportingWorkDetail.getCompletedQuantity()); |
| | | throw new ServiceException(Constants.Code_600,"当前工序数量大于流程卡表数量"); |
| | | } |
| | | |
| | |
| | | |
| | | |
| | | |
| | | //System.out.println(reportingWorkDetail); |
| | | OrderProcessDetail orderProcessDetail = new OrderProcessDetail(); |
| | | orderProcessDetail.setBrokenNum(reportingWorkDetail.getBreakageQuantity()); |
| | | orderProcessDetail.setReportingWorkNum(reportingWorkDetail.getCompletedQuantity()); |
| | |
| | | //根据订单id,订单序号,以及小片序号 更新小片流程的完工数量以及刺破数量 |
| | | LambdaUpdateWrapper<OrderProcessDetail> updateWrapper = new LambdaUpdateWrapper<>(); |
| | | updateWrapper.eq(OrderProcessDetail::getOrderNumber, reportingWorkDetail.getOrderNumber()) |
| | | .eq(OrderProcessDetail::getProcessId, reportingWork.getProcessId().substring(0,13)) |
| | | .eq(OrderProcessDetail::getOrderId, reportingWork.getOrderId()) |
| | | .eq(OrderProcessDetail::getProcess, reportingWork.getThisProcess()) |
| | | .eq(OrderProcessDetail::getTechnologyNumber, reportingWorkDetail.getTechnologyNumber()) |
| | |
| | | ON odpd.order_id = fc.order_id |
| | | AND odpd.order_number = fc.order_number |
| | | AND odpd.technology_number = fc.technology_number |
| | | and odpd.process_id = fc.process_id |
| | | left join |
| | | (select sum(patch_num) as patchNumSum,order_sort,technology_number,process_id |
| | | from patch_log |
| | |
| | | ON odpd.order_id = fc.order_id |
| | | AND odpd.order_number = fc.order_number |
| | | AND odpd.technology_number = fc.technology_number |
| | | and odpd.process_id = fc.process_id |
| | | left join sd.order_process_detail as odpds |
| | | ON odpds.id = odpd.id-1 |
| | | left join |
| | |
| | | and b.technology_number = a.technology_number |
| | | and b.order_id = SUBSTR(#{processId} from 1 for 10) |
| | | and b.process = #{thisProcess} |
| | | and b.process_id = a.process_id |
| | | left join sd.order_process_detail as d |
| | | on d.id=b.id-1 |
| | | left join (select sum(patch_num) as patchNumSum,order_sort,technology_number,process_id |
| | |
| | | and b.technology_number = a.technology_number |
| | | and b.order_id = SUBSTR(#{processId} from 1 for 10) |
| | | and b.process = #{thisProcess} |
| | | and b.process_id = a.process_id |
| | | left join (select sum(patch_num) as patchNumSum,order_sort,technology_number,process_id |
| | | from patch_log |
| | | group by reporting_work_id,order_sort,technology_number) as c |
| | |
| | | order_id, |
| | | order_number, |
| | | technology_number, |
| | | process |
| | | process, |
| | | process_id |
| | | ) |
| | | values |
| | | <foreach collection ="processDetailList" item="processDetail" separator =","> |
| | |
| | | #{processDetail.orderId}, |
| | | #{processDetail.orderNumber}, |
| | | #{processDetail.technologyNumber}, |
| | | #{processDetail.process} |
| | | #{processDetail.process}, |
| | | #{processDetail.processId} |
| | | ) |
| | | </foreach> |
| | | |
| | |
| | | ON odpd.order_id = fc.order_id |
| | | AND odpd.order_number = fc.order_number |
| | | AND odpd.technology_number = fc.technology_number |
| | | and odpd.process_id = fc.process_id |
| | | left join |
| | | (select sum(patch_num) as patchNumSum,order_sort,technology_number,process_id |
| | | from patch_log |
| | |
| | | ON odpd.order_id = fc.order_id |
| | | AND odpd.order_number = fc.order_number |
| | | AND odpd.technology_number = fc.technology_number |
| | | and odpd.process_id = fc.process_id |
| | | left join sd.order_process_detail as odpds |
| | | ON odpds.id = odpd.id-1 |
| | | left join |
| | |
| | | and b.technology_number = a.technology_number |
| | | and b.order_id = SUBSTR(#{processId} from 1 for 10) |
| | | and b.process = #{thisProcess} |
| | | and b.process_id = a.process_id |
| | | left join sd.order_process_detail as d |
| | | on d.id=b.id-1 |
| | | left join (select sum(patch_num) as patchNumSum,order_sort,technology_number,process_id |
| | |
| | | and b.technology_number = a.technology_number |
| | | and b.order_id = SUBSTR(#{processId} from 1 for 10) |
| | | and b.process = #{thisProcess} |
| | | and b.process_id = a.process_id |
| | | left join (select sum(patch_num) as patchNumSum,order_sort,technology_number,process_id |
| | | from patch_log |
| | | group by reporting_work_id,order_sort,technology_number) as c |
| | |
| | | order_id, |
| | | order_number, |
| | | technology_number, |
| | | process |
| | | process, |
| | | process_id |
| | | ) |
| | | values |
| | | <foreach collection ="processDetailList" item="processDetail" separator =","> |
| | |
| | | #{processDetail.orderId}, |
| | | #{processDetail.orderNumber}, |
| | | #{processDetail.technologyNumber}, |
| | | #{processDetail.process} |
| | | #{processDetail.process}, |
| | | #{processDetail.processId} |
| | | ) |
| | | </foreach> |
| | | |