近期修改

This commit is contained in:
z 2025-10-15 19:14:42 +08:00
parent 1b46f9a037
commit 41c8882d94
49 changed files with 592 additions and 223 deletions

View File

@ -81,4 +81,6 @@ public class MaterialPlanPageReqVO extends PageParam {
private String procedureName;
@Schema(description = "供应商")
private String supplierName;
@Schema(description = "客户简称")
private String customerName;
}

View File

@ -52,4 +52,8 @@ public class MatReqPageReqVO extends PageParam {
private String projectSubName;
@Schema(description = "物料名称", example = "李四")
private String materialName;
@Schema(description = "项目编码", example = "李四")
private String projectCode;
@Schema(description = "客户简称", example = "李四")
private String customerName;
}

View File

@ -1,6 +1,10 @@
package com.chanko.yunxi.mes.module.heli.controller.admin.pn;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.rg.RgDO;
import com.chanko.yunxi.mes.module.heli.dal.mysql.pn.PnMapper;
import com.chanko.yunxi.mes.module.heli.dal.mysql.rg.RgMapper;
import com.chanko.yunxi.mes.module.heli.service.rg.RgService;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
@ -19,6 +23,8 @@ import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
import com.chanko.yunxi.mes.framework.common.pojo.CommonResult;
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.error;
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.success;
import com.chanko.yunxi.mes.framework.excel.core.util.ExcelUtils;
@ -38,11 +44,20 @@ public class PnController {
@Resource
private PnService pnService;
@Resource
private PnMapper pnMapper;
@PostMapping("/create")
@Operation(summary = "创建库位")
@PreAuthorize("@ss.hasPermission('heli:pn:create')")
public CommonResult<Long> createPn(@Valid @RequestBody PnSaveReqVO createReqVO) {
LambdaQueryWrapper<PnDO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(PnDO::getWhId, createReqVO.getWhId());
lambdaQueryWrapper.eq(PnDO::getRgId, createReqVO.getRgId());
lambdaQueryWrapper.eq(PnDO::getPnName, createReqVO.getPnName());
if(pnMapper.selectCount(lambdaQueryWrapper)>0){
return error(400,"库位名称"+createReqVO.getPnName()+"已存在,请确认");
}
return success(pnService.createPn(createReqVO));
}
@ -50,6 +65,13 @@ public class PnController {
@Operation(summary = "更新库位")
@PreAuthorize("@ss.hasPermission('heli:pn:update')")
public CommonResult<Boolean> updatePn(@Valid @RequestBody PnSaveReqVO updateReqVO) {
LambdaQueryWrapper<PnDO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(PnDO::getWhId, updateReqVO.getWhId());
lambdaQueryWrapper.eq(PnDO::getRgId, updateReqVO.getRgId());
lambdaQueryWrapper.eq(PnDO::getPnName, updateReqVO.getPnName());
if(pnMapper.selectCount(lambdaQueryWrapper)>0){
return error(400,"库位名称"+updateReqVO.getPnName()+"已存在,请确认");
}
pnService.updatePn(updateReqVO);
return success(true);
}

View File

@ -109,4 +109,6 @@ public class ProcessDesignPageReqVO extends PageParam {
private String ownerName;
@Schema(description = "状态")
private Integer isOverProcess;
@Schema(description = "状态")
private Integer isOverPro;
}

View File

@ -79,4 +79,8 @@ public class PartPurchaseOrderPageReqVO extends PageParam {
private Integer documentStatus;
@Schema(description = "图号")
private String blueprintNo;
@Schema(description = "客户简称")
private String customerName;
@Schema(description = "工序")
private String procedureName;
}

View File

@ -108,5 +108,6 @@ public class PurchaseOrderMakeDetailPageReqVO extends PageParam {
@Schema(description = "责任人id", example = "25680")
private Long duEmpId;
@Schema(description = "客户简称")
private String customerName;
}

View File

@ -100,4 +100,8 @@ public class PurchaseOrderNoPageReqVO extends PageParam {
private String procedureName;
@Schema(description = "图号")
private String blueprintNo;
@Schema(description = "项目编码")
private String projectCode;
@Schema(description = "客户简称")
private String customerName;
}

View File

@ -1,6 +1,8 @@
package com.chanko.yunxi.mes.module.heli.controller.admin.rg;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.warehouse.WarehouseDO;
import com.chanko.yunxi.mes.module.heli.dal.mysql.rg.RgMapper;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
@ -19,6 +21,8 @@ import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
import com.chanko.yunxi.mes.framework.common.pojo.CommonResult;
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.error;
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.success;
import com.chanko.yunxi.mes.framework.excel.core.util.ExcelUtils;
@ -38,11 +42,19 @@ public class RgController {
@Resource
private RgService rgService;
@Resource
private RgMapper rgMapper;
@PostMapping("/create")
@Operation(summary = "创建库区")
@PreAuthorize("@ss.hasPermission('heli:rg:create')")
public CommonResult<Long> createRg(@Valid @RequestBody RgSaveReqVO createReqVO) {
LambdaQueryWrapper<RgDO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(RgDO::getWhId, createReqVO.getWhId());
lambdaQueryWrapper.eq(RgDO::getRgName, createReqVO.getRgName());
if(rgMapper.selectCount(lambdaQueryWrapper)>0){
return error(400,"库区名称"+createReqVO.getRgName()+"已存在,请确认");
}
return success(rgService.createRg(createReqVO));
}
@ -50,6 +62,13 @@ public class RgController {
@Operation(summary = "更新库区")
@PreAuthorize("@ss.hasPermission('heli:rg:update')")
public CommonResult<Boolean> updateRg(@Valid @RequestBody RgSaveReqVO updateReqVO) {
LambdaQueryWrapper<RgDO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(RgDO::getWhId, updateReqVO.getWhId());
lambdaQueryWrapper.eq(RgDO::getRgName, updateReqVO.getRgName());
lambdaQueryWrapper.ne(RgDO::getId, updateReqVO.getId());
if(rgMapper.selectCount(lambdaQueryWrapper)>0){
return error(400,"库区名称"+updateReqVO.getRgName()+"已存在,请确认");
}
rgService.updateRg(updateReqVO);
return success(true);
}

View File

@ -60,4 +60,10 @@ public class StorageInPageReqVO extends PageParam {
private String projectName;
@Schema(description = "供应商名称")
private String supplierName;
@Schema(description = "项目编码")
private String projectCode;
@Schema(description = "客户简称")
private String customerName;
@Schema(description = "零件名称")
private String boomName;
}

View File

@ -81,4 +81,6 @@ public class TaskDispatchPageReqVO extends PageParam {
@Schema(description = "图号")
private String blueprintNo;
@Schema(description = "零件名称")
private String boomName;
}

View File

@ -1,6 +1,8 @@
package com.chanko.yunxi.mes.module.heli.controller.admin.warehouse;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.chanko.yunxi.mes.framework.common.enums.CommonStatusEnum;
import com.chanko.yunxi.mes.module.heli.dal.mysql.warehouse.WarehouseMapper;
import com.chanko.yunxi.mes.module.system.controller.admin.user.vo.user.UserSimpleRespVO;
import com.chanko.yunxi.mes.module.system.convert.user.UserConvert;
import com.chanko.yunxi.mes.module.system.dal.dataobject.dept.DeptDO;
@ -23,6 +25,8 @@ import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
import com.chanko.yunxi.mes.framework.common.pojo.CommonResult;
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.error;
import static com.chanko.yunxi.mes.framework.common.pojo.CommonResult.success;
import com.chanko.yunxi.mes.framework.excel.core.util.ExcelUtils;
@ -44,11 +48,18 @@ public class WarehouseController {
@Resource
private WarehouseService warehouseService;
@Resource
private WarehouseMapper warehouseMapper;
@PostMapping("/create")
@Operation(summary = "创建仓库")
@PreAuthorize("@ss.hasPermission('heli:warehouse:create')")
public CommonResult<Long> createWarehouse(@Valid @RequestBody WarehouseSaveReqVO createReqVO) {
LambdaQueryWrapper<WarehouseDO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(WarehouseDO::getWhName, createReqVO.getWhName());
if(warehouseMapper.selectCount(lambdaQueryWrapper)>0){
return error(400,"仓库名称"+createReqVO.getWhName()+"已存在,请确认");
}
return success(warehouseService.createWarehouse(createReqVO));
}
@ -56,6 +67,12 @@ public class WarehouseController {
@Operation(summary = "更新仓库")
@PreAuthorize("@ss.hasPermission('heli:warehouse:update')")
public CommonResult<Boolean> updateWarehouse(@Valid @RequestBody WarehouseSaveReqVO updateReqVO) {
LambdaQueryWrapper<WarehouseDO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(WarehouseDO::getWhName, updateReqVO.getWhName());
lambdaQueryWrapper.ne(WarehouseDO::getId, updateReqVO.getId());
if(warehouseMapper.selectCount(lambdaQueryWrapper)>0){
return error(400,"仓库名称"+updateReqVO.getWhName()+"已存在,请确认");
}
warehouseService.updateWarehouse(updateReqVO);
return success(true);
}

View File

@ -10,6 +10,7 @@ import com.chanko.yunxi.mes.module.heli.dal.dataobject.customer.CustomerDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.materialplan.MaterialPlanDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.materialplanboom.MaterialPlanBoomDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.plan.PlanDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.procedure.ProcedureDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.processbom.ProcessBomDetailDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskreport.TaskReportDO;
@ -51,13 +52,18 @@ public interface MaterialPlanMapper extends BaseMapperX<MaterialPlanDO> {
query.selectAll(MaterialPlanDO.class)
.leftJoin(MaterialPlanBoomDO.class, "b", MaterialPlanBoomDO::getProjectMaterialPlanId, MaterialPlanDO::getId)
.leftJoin(ProcessBomDetailDO.class,"p",ProcessBomDetailDO::getId, MaterialPlanBoomDO::getBoomDetailId)
.leftJoin(ProjectOrderDO.class,"pro", ProjectOrderDO::getId, MaterialPlanDO::getProjectId)
.leftJoin(ProcedureDO.class,"pd",ProcedureDO::getId, MaterialPlanBoomDO::getProcedureId)
.groupBy(MaterialPlanDO::getId)
.orderByDesc(MaterialPlanDO::getCreateTime);
query.like(!StringUtils.isEmpty(pageReqVO.getProjectMaterialPlanNo()), MaterialPlanDO::getProjectMaterialPlanNo, pageReqVO.getProjectMaterialPlanNo())
.like(!StringUtils.isEmpty(pageReqVO.getProjectName()),MaterialPlanDO::getProjectName, pageReqVO.getProjectName())
.like(!StringUtils.isEmpty(pageReqVO.getProjectCode()),ProjectOrderDO::getCode, pageReqVO.getProjectCode())
.like(!StringUtils.isEmpty(pageReqVO.getCustomerName()),MaterialPlanDO::getBrief, pageReqVO.getCustomerName())
.like(!StringUtils.isEmpty(pageReqVO.getProjectSubName()), MaterialPlanDO::getName, pageReqVO.getProjectSubName())
.like(!StringUtils.isEmpty(pageReqVO.getMaterialName()), MaterialPlanBoomDO::getMatName, pageReqVO.getMaterialName())
.like(!StringUtils.isEmpty(pageReqVO.getBlueprintNo()), ProcessBomDetailDO::getBlueprintNo, pageReqVO.getBlueprintNo())
.like(!StringUtils.isEmpty(pageReqVO.getProcedureName()), ProcedureDO::getName, pageReqVO.getProcedureName())
.eq(!StringUtils.isEmpty(pageReqVO.getMatType()), MaterialPlanDO::getMatType, pageReqVO.getMatType());
if (pageReqVO.getMatPlanDate() != null) {
query.between( MaterialPlanDO::getMatPlanDate, pageReqVO.getMatPlanDate()[0], pageReqVO.getMatPlanDate()[1]);

View File

@ -104,6 +104,7 @@ public interface MaterialPlanBoomMapper extends BaseMapperX<MaterialPlanBoomDO>
query.like(ObjectUtil.isNotEmpty(pageReqVO.getProjectCode()),ProjectOrderDO::getCode, pageReqVO.getProjectCode());
query.like(ObjectUtil.isNotEmpty(pageReqVO.getOwnerName()),AdminUserDO::getNickname, pageReqVO.getOwnerName());
query.like(ObjectUtil.isNotEmpty(pageReqVO.getSupplierName()),SupplierDO::getBrief, pageReqVO.getSupplierName());
query.like(ObjectUtil.isNotEmpty(pageReqVO.getCustomerName()),MaterialPlanDO::getBrief, pageReqVO.getCustomerName());
query.like(ObjectUtil.isNotEmpty(pageReqVO.getProjectMaterialPlanNo()),MaterialPlanDO::getProjectMaterialPlanNo, pageReqVO.getProjectMaterialPlanNo());
if (pageReqVO.getMplanStatus() == 0){
query.in(MaterialPlanBoomDO::getMplanStatus,Arrays
@ -215,6 +216,7 @@ public interface MaterialPlanBoomMapper extends BaseMapperX<MaterialPlanBoomDO>
.like(!StringUtils.isEmpty(pageReqVO.getMaterialName()), MaterialPlanBoomDO::getMatName, pageReqVO.getMaterialName())
.like(!StringUtils.isEmpty(pageReqVO.getProjectCode()), ProjectOrderDO::getCode, pageReqVO.getProjectCode())
.eq(!StringUtils.isEmpty(pageReqVO.getMatType()), MaterialPlanDO::getMatType, pageReqVO.getMatType())
.like(!StringUtils.isEmpty(pageReqVO.getCustomerName()), MaterialPlanDO::getBrief, pageReqVO.getCustomerName())
.eq(!StringUtils.isEmpty(pageReqVO.getStatus()), MaterialPlanBoomDO::getIsPurYard, pageReqVO.getStatus());
return selectPage(pageReqVO, query);
}
@ -255,6 +257,7 @@ public interface MaterialPlanBoomMapper extends BaseMapperX<MaterialPlanBoomDO>
.eq(!StringUtils.isEmpty(pageReqVO.getMatType()), MaterialPlanDO::getMatType, pageReqVO.getMatType())
.eq(!StringUtils.isEmpty(pageReqVO.getStatus()), MaterialPlanBoomDO::getIsPurYard, pageReqVO.getStatus())
.like(ObjectUtil.isNotEmpty(pageReqVO.getSupplierName()), SupplierDO::getBrief, pageReqVO.getSupplierName())
.like(ObjectUtil.isNotEmpty(pageReqVO.getCustomerName()), MaterialPlanDO::getBrief, pageReqVO.getCustomerName())
.in(Objects.nonNull(pageReqVO.getMplanStatus()), MaterialPlanBoomDO::getMplanStatus, pageReqVO.getMplanStatus() != null && pageReqVO.getMplanStatus() != 0 ? Arrays.asList(pageReqVO.getMplanStatus()) : Arrays.asList(0, 3))
.eq(Objects.nonNull(pageReqVO.getProjectMaterialPlanNo()), MaterialPlanDO::getProjectMaterialPlanNo, pageReqVO.getProjectMaterialPlanNo());

View File

@ -6,11 +6,13 @@ import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
import com.chanko.yunxi.mes.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
import com.chanko.yunxi.mes.module.heli.controller.admin.matreqdetail.MatReqDetailController;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.customer.CustomerDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.material.MaterialDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.materialplan.MaterialPlanDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.materialplanboom.MaterialPlanBoomDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.matreq.MatReqDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.matreqdetail.MatReqDetailDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderSubDO;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.apache.ibatis.annotations.Mapper;
@ -30,6 +32,8 @@ public interface MatReqMapper extends BaseMapperX<MatReqDO> {
query.selectAll(MatReqDO.class)
.leftJoin(MatReqDetailDO.class, "d", MatReqDetailDO::getMatReqId, MatReqDO::getId)
.leftJoin(MaterialDO.class, "m", MaterialDO::getId, MatReqDetailDO::getMaterialId)
.leftJoin(ProjectOrderDO.class, "p", ProjectOrderDO::getId, MatReqDO::getProjectId)
.leftJoin(CustomerDO.class, "c", CustomerDO::getId, MatReqDO::getCustomerId)
.disableSubLogicDel()
.groupBy(MatReqDO::getId)
.orderByDesc(MatReqDO::getCreateTime);
@ -37,6 +41,8 @@ public interface MatReqMapper extends BaseMapperX<MatReqDO> {
.like(!StringUtils.isEmpty(reqVO.getProjectName()),MatReqDO::getProjectName, reqVO.getProjectName())
.like(!StringUtils.isEmpty(reqVO.getProjectSubName()), MatReqDetailDO::getName,reqVO.getProjectSubName())
.like(!StringUtils.isEmpty(reqVO.getMaterialName()), MaterialDO::getName, reqVO.getMaterialName())
.like(!StringUtils.isEmpty(reqVO.getProjectCode()), ProjectOrderDO::getCode, reqVO.getProjectCode())
.like(!StringUtils.isEmpty(reqVO.getCustomerName()), CustomerDO::getBrief, reqVO.getCustomerName())
.eq(!StringUtils.isEmpty(reqVO.getGoodsType()), MatReqDO::getGoodsType, reqVO.getGoodsType());
return selectPage(reqVO, query);
}

View File

@ -47,6 +47,9 @@ public interface PlanSubDetailMapper extends BaseMapperX<PlanSubDetailDO> {
MPJLambdaWrapper<PlanSubDetailDO> query = new MPJLambdaWrapper<>();
query.selectAll(PlanSubDetailDO.class)
.select("p.project_name as projectName","c.brief as customerBrief")
.leftJoin(ProjectOrderDO.class,"p",ProjectOrderDO::getId,PlanSubDetailDO::getProjectId)
.leftJoin(CustomerDO.class,"c",CustomerDO::getId,ProjectOrderDO::getCustomerId)
.orderByAsc(PlanSubDetailDO::getStartTwoDimDate);
query.eq(ObjectUtil.isNotEmpty(reqVO.getTwoDimOwner()), PlanSubDetailDO::getTwoDimOwner, reqVO.getTwoDimOwner())
.like(ObjectUtil.isNotEmpty(reqVO.getCode()), PlanSubDetailDO::getCode, reqVO.getCode())

View File

@ -227,7 +227,8 @@ public interface ProcessBomDetailMapper extends BaseMapperX<ProcessBomDetailDO>
.like(!StringUtils.isEmpty(pageReqVO.getMaterialName()), ProcessBomDetailDO::getMaterialName, pageReqVO.getMaterialName())
.like(!StringUtils.isEmpty(pageReqVO.getOwnerName()), AdminUserDO::getNickname, pageReqVO.getOwnerName())
.like(!StringUtils.isEmpty(pageReqVO.getProjectMaterialPlanNo()), MaterialPlanDO::getProjectMaterialPlanNo, pageReqVO.getProjectMaterialPlanNo())
.eq(!StringUtils.isEmpty(pageReqVO.getStatus()), ProcessBomDetailDO::getMplanStatus, pageReqVO.getStatus());
.eq(!StringUtils.isEmpty(pageReqVO.getStatus()), ProcessBomDetailDO::getMplanStatus, pageReqVO.getStatus())
.like(!StringUtils.isEmpty(pageReqVO.getCustomerName()), CustomerDO::getBrief, pageReqVO.getCustomerName());
// .eq(MaterialPlanBoomDO::getDeleted,0)
// .eq(MaterialPlanDO::getDeleted,0);
if (ObjectUtils.isEmpty(pageReqVO.getProjectMaterialPlanNo())) {

View File

@ -7,6 +7,7 @@ import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
import com.chanko.yunxi.mes.module.heli.controller.admin.processdesign.vo.ProcessDesignPageReqVO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.customer.CustomerDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.plan.PlanDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.plansub.PlanSubDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.processdesign.ProcessDesignDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderSubDO;
@ -53,11 +54,11 @@ public interface ProcessDesignMapper extends BaseMapperX<ProcessDesignDO> {
.leftJoin("(select progress,process_design_id,blueprint_link FROM pro_process_design_progress where id in (select max(id) FROM pro_process_design_progress GROUP BY process_design_id) ) z on z.process_design_id = t.id")
.disableSubLogicDel();
if(reqVO.getPgType()!=null && reqVO.getPgType() == 0){
query.orderByAsc(PlanDO::getPlanNo);
}else {
query.orderByDesc(PlanDO::getPlanNo);
}
// if(reqVO.getPgType()!=null && reqVO.getPgType() == 0){
// query.orderByAsc(PlanDO::getPlanNo);
// }else {
// query.orderByDesc(PlanDO::getPlanNo);
// }
query.like(!StringUtils.isEmpty(reqVO.getPlanCode()), PlanDO::getPlanNo, reqVO.getPlanCode())
@ -79,7 +80,26 @@ public interface ProcessDesignMapper extends BaseMapperX<ProcessDesignDO> {
.eq(reqVO.getProjectSubId() != null, ProcessDesignDO::getProjectSubId, reqVO.getProjectSubId())
.in(reqVO.getProjectSubIdList() != null && !reqVO.getProjectSubIdList().isEmpty(), ProcessDesignDO::getProjectSubId, reqVO.getProjectSubIdList())
;
if (ObjectUtil.isNotEmpty(reqVO.getProcessDesignType())){
if ("CASTING_DRAWING".equals(reqVO.getProcessDesignType())){
query.orderByDesc(PlanDO::getCastEndDate);
}else if ("BLUEPRINT_FOUNDRY_TECHNOLOGY".equals(reqVO.getProcessDesignType())){
query.orderByDesc(PlanDO::getCraftEndDate);
}else if ("BLUEPRINT_3D".equals(reqVO.getProcessDesignType())){
query.orderByDesc("b.three_dim_date");
}else if ("BLUEPRINT_2D".equals(reqVO.getProcessDesignType())){
query.orderByDesc("b.two_dim_date");
}else if ("BLUEPRINT_WORKBLANK".equals(reqVO.getProcessDesignType())){
query.orderByDesc("b.blank_date");
}
}
if ("BLUEPRINT_2D".equals(reqVO.getProcessDesignType())||"BLUEPRINT_3D".equals(reqVO.getProcessDesignType())){
if (ObjectUtil.isNotEmpty(reqVO.getIsOverPro())){
query.eq(ProcessDesignDO::getIsOverProcess, reqVO.getIsOverPro());
}else {
query.ne(ProcessDesignDO::getIsOverProcess, 1);
}
}
if(!StringUtils.isEmpty(reqVO.getOwner())){
query.and(QueryWrapper -> QueryWrapper.apply("u2.id = {0} and t.process_design_type = {1}", reqVO.getOwner(), ProcessDesignTypeEnum.BLUEPRINT_FOUNDRY_TECHNOLOGY.name())
.or()

View File

@ -13,6 +13,7 @@ import com.chanko.yunxi.mes.module.heli.controller.admin.materialplanboom.vo.Mat
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermake.vo.PartPurchaseOrderPageReqVO;
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermake.vo.PartPurchaseOrderPageRespVO;
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermake.vo.PurchaseOrderMakePageReqVO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.customer.CustomerDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.material.MaterialDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.materialplan.MaterialPlanDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.materialplanboom.MaterialPlanBoomDO;
@ -31,6 +32,7 @@ import com.chanko.yunxi.mes.module.system.dal.dataobject.user.AdminUserDO;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.apache.ibatis.annotations.Mapper;
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermakedetail.vo.*;
import sun.security.krb5.internal.crypto.dk.Des3DkCrypto;
/**
* 采购单明细 Mapper
@ -52,6 +54,7 @@ public interface PurchaseOrderMakeDetailMapper extends BaseMapperX<PurchaseOrder
.leftJoin(PurchaseOrderNoDetailDO.class,"no",PurchaseOrderNoDetailDO::getId,PurchaseOrderMakeDetailDO::getPurchaseOrderNoDetailId)
.leftJoin(MaterialDO.class,"m1",MaterialDO::getId,PurchaseOrderMakeDetailDO::getMaterialId)
.leftJoin(MaterialDO.class,"m",MaterialDO::getId,PurchaseOrderNoDetailDO::getMaterialId)
.leftJoin(CustomerDO.class,"c",CustomerDO::getId,ProjectOrderDO::getCustomerId)
.disableSubLogicDel()
.eq(PurchaseOrderMakeDO::getGoodsType,1)
.eq(PurchaseOrderMakeDetailDO::getStatus,2);
@ -70,7 +73,9 @@ public interface PurchaseOrderMakeDetailMapper extends BaseMapperX<PurchaseOrder
if (reqVO.getOrderStatus() != null){
query.eq(PurchaseOrderMakeDetailDO::getOrderStatus, reqVO.getOrderStatus());
}
if (ObjectUtil.isNotEmpty(reqVO.getCustomerName())){
query.like(CustomerDO::getBrief, reqVO.getCustomerName());
}
return selectPage(reqVO, query);
@ -111,8 +116,10 @@ public interface PurchaseOrderMakeDetailMapper extends BaseMapperX<PurchaseOrder
.like(StringUtils.isNotBlank(pageReqVO.getMaterialName()), PurchaseOrderMakeDetailDO::getBoomName, pageReqVO.getMaterialName())
.like(ObjectUtil.isNotEmpty(pageReqVO.getBlueprintNo()), ProcessBomDetailDO::getBlueprintNo, pageReqVO.getBlueprintNo())
.eq(Objects.nonNull(pageReqVO.getStatus()), PurchaseOrderMakeDetailDO::getOrderStatus, pageReqVO.getStatus())
.eq(Objects.nonNull(pageReqVO.getProjectCode()), ProjectOrderDO::getCode, pageReqVO.getProjectCode())
.like(Objects.nonNull(pageReqVO.getProjectCode()), ProjectOrderDO::getCode, pageReqVO.getProjectCode())
.like(Objects.nonNull(pageReqVO.getOwnerName()), AdminUserDO::getNickname, pageReqVO.getOwnerName())
.like(ObjectUtil.isNotEmpty(pageReqVO.getCustomerName()), PurchaseOrderMakeDO::getBrief, pageReqVO.getCustomerName())
.like(ObjectUtil.isNotEmpty(pageReqVO.getProcedureName()), ProcedureDO::getName, pageReqVO.getProcedureName())
.like(Objects.nonNull(pageReqVO.getSupplierName()), SupplierDO::getBrief, pageReqVO.getSupplierName());
PageResult<PartPurchaseOrderPageRespVO> pageResult = selectJoinPage(pageReqVO, PartPurchaseOrderPageRespVO.class, query);

View File

@ -7,10 +7,12 @@ import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
import com.chanko.yunxi.mes.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseorder.vo.PurchaseOrderPageReqVO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.customer.CustomerDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.equip.EquipDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.materialplan.MaterialPlanDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.procedure.ProcedureDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.processbom.ProcessBomDetailDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.purchaseorder.PurchaseOrderDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.purchaseorderno.PurchaseOrderNoDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.purchaseordernodetail.PurchaseOrderNoDetailDO;
@ -54,6 +56,8 @@ public interface PurchaseOrderNoMapper extends BaseMapperX<PurchaseOrderNoDO> {
.leftJoin(MaterialPlanDO.class, "m", MaterialPlanDO::getId, PurchaseOrderNoDO::getProjectMaterialPlanId)
.leftJoin(AdminUserDO.class,"u", AdminUserDO::getId, PurchaseOrderNoDetailDO::getDuEmpId)
.leftJoin(AdminUserDO.class,"u1", AdminUserDO::getId, PurchaseOrderNoDO::getCreator)
.leftJoin(ProjectOrderDO.class,"p", ProjectOrderDO::getId, PurchaseOrderNoDetailDO::getProjectId)
.leftJoin(CustomerDO.class,"c", CustomerDO::getId, PurchaseOrderNoDetailDO::getCustomerId)
.disableSubLogicDel()
.groupBy(PurchaseOrderNoDO::getId)
.orderByDesc(PurchaseOrderNoDO::getCreateTime);
@ -67,9 +71,11 @@ public interface PurchaseOrderNoMapper extends BaseMapperX<PurchaseOrderNoDO> {
.eq(reqVO.getPurchaseType() != null, PurchaseOrderNoDO::getPurchaseType, reqVO.getPurchaseType())
.eq(reqVO.getGoodsType() != null, PurchaseOrderNoDO::getGoodsType, reqVO.getGoodsType())
.like(!StringUtils.isEmpty(reqVO.getProjectName()), PurchaseOrderNoDetailDO::getProjectName, reqVO.getProjectName())
.like(!StringUtils.isEmpty(reqVO.getProjectCode()), ProjectOrderDO::getCode, reqVO.getProjectCode())
.like(!StringUtils.isEmpty(reqVO.getProjectSubName()), PurchaseOrderNoDetailDO::getName, reqVO.getProjectSubName())
.like(!StringUtils.isEmpty(reqVO.getUsername()), AdminUserDO::getNickname, reqVO.getUsername())
.like(!ObjectUtil.isEmpty(reqVO.getBoomName()), PurchaseOrderNoDetailDO::getBoomName, reqVO.getBoomName())
.like(!ObjectUtil.isEmpty(reqVO.getCustomerName()), CustomerDO::getBrief, reqVO.getCustomerName())
// .like(!ObjectUtil.isEmpty(reqVO.getProcedureName()), ProcedureDO::getName, reqVO.getProcedureName())
.like(!ObjectUtil.isEmpty(reqVO.getBlueprintNo()), ProcessBomDetailDO::getBlueprintNo, reqVO.getBlueprintNo())
.having(reqVO.getReceivingStatus() != null,"receivingStatus1 = {0}", reqVO.getReceivingStatus())

View File

@ -106,6 +106,7 @@ public interface PurchaseOrderNoDetailMapper extends BaseMapperX<PurchaseOrderNo
.leftJoin(SupplierDO.class, "s", SupplierDO::getId, PurchaseOrderNoDO::getSupplierId)
.leftJoin(MaterialDO.class,"m", MaterialDO::getId, PurchaseOrderNoDetailDO::getMaterialId)
.leftJoin(ProjectOrderDO.class,"pro", ProjectOrderDO::getId, PurchaseOrderNoDetailDO::getProjectId)
.leftJoin(CustomerDO.class,"c", CustomerDO::getId, ProjectOrderDO::getCustomerId)
.disableSubLogicDel()
.groupBy(PurchaseOrderNoDetailDO::getId)
.orderByDesc(PurchaseOrderNoDetailDO::getCreateTime);
@ -115,6 +116,7 @@ public interface PurchaseOrderNoDetailMapper extends BaseMapperX<PurchaseOrderNo
.like(!StringUtils.isEmpty(pageReqVO.getProjectName()), PurchaseOrderNoDetailDO::getProjectName, pageReqVO.getProjectName())
.like(!StringUtils.isEmpty(pageReqVO.getProjectSubName()), PurchaseOrderNoDetailDO::getName, pageReqVO.getProjectSubName())
.like(!StringUtils.isEmpty(pageReqVO.getProjectCode()), ProjectOrderDO::getCode, pageReqVO.getProjectCode())
.like(ObjectUtil.isNotEmpty(pageReqVO.getCustomerName()),CustomerDO::getBrief, pageReqVO.getCustomerName())
.ne(PurchaseOrderNoDO::getPurchaseType, 2)
.like(!StringUtils.isEmpty(pageReqVO.getBoomName()), PurchaseOrderNoDetailDO::getBoomName, pageReqVO.getBoomName());
@ -258,6 +260,8 @@ public interface PurchaseOrderNoDetailMapper extends BaseMapperX<PurchaseOrderNo
.leftJoin(MaterialPlanDO.class, "m", MaterialPlanDO::getId, PurchaseOrderNoDO::getProjectMaterialPlanId)
.leftJoin(AdminUserDO.class,"u", AdminUserDO::getId, PurchaseOrderNoDetailDO::getDuEmpId)
.leftJoin(AdminUserDO.class,"u1", AdminUserDO::getId, PurchaseOrderNoDO::getCreator)
.leftJoin(ProjectOrderDO.class,"p", ProjectOrderDO::getId, PurchaseOrderNoDetailDO::getProjectId)
.leftJoin(CustomerDO.class,"c", CustomerDO::getId, ProjectOrderDO::getCustomerId)
.disableSubLogicDel()
.groupBy(MaterialPlanDetailDO::getId);
query.like(!StringUtils.isEmpty(pageReqVO.getPurchaseNo()), PurchaseOrderDO::getPurchaseNo, pageReqVO.getPurchaseNo())
@ -268,6 +272,8 @@ public interface PurchaseOrderNoDetailMapper extends BaseMapperX<PurchaseOrderNo
.eq(pageReqVO.getPurchaseType() != null, PurchaseOrderNoDO::getPurchaseType, pageReqVO.getPurchaseType())
.eq(pageReqVO.getGoodsType() != null, PurchaseOrderNoDO::getGoodsType, pageReqVO.getGoodsType())
.like(!StringUtils.isEmpty(pageReqVO.getProjectName()), PurchaseOrderNoDetailDO::getProjectName, pageReqVO.getProjectName())
.like(!StringUtils.isEmpty(pageReqVO.getProjectCode()), ProjectOrderDO::getCode, pageReqVO.getProjectCode())
.like(!StringUtils.isEmpty(pageReqVO.getCustomerName()), CustomerDO::getName, pageReqVO.getCustomerName())
.like(!StringUtils.isEmpty(pageReqVO.getProjectSubName()), PurchaseOrderNoDetailDO::getName, pageReqVO.getProjectSubName())
.like(!StringUtils.isEmpty(pageReqVO.getUsername()), AdminUserDO::getNickname, pageReqVO.getUsername())
.like(!ObjectUtil.isEmpty(pageReqVO.getBoomName()), PurchaseOrderNoDetailDO::getBoomName, pageReqVO.getBoomName())

View File

@ -6,6 +6,7 @@ import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
import com.chanko.yunxi.mes.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.materialplan.MaterialPlanDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.purchaseorder.PurchaseOrderDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storagein.StorageInDO;
import com.chanko.yunxi.mes.module.heli.dal.dataobject.storageindetail.StorageInDetailDO;
@ -31,6 +32,7 @@ public interface StorageInMapper extends BaseMapperX<StorageInDO> {
.select("sup.brief as supplierName")
.leftJoin(StorageInDetailDO.class, "s", StorageInDetailDO::getStorageNoId, StorageInDO::getId)
.leftJoin(SupplierDO.class,"sup", SupplierDO::getId, StorageInDetailDO::getSupplierId)
.leftJoin(ProjectOrderDO.class, "p", ProjectOrderDO::getId, StorageInDetailDO::getProjectId)
.disableSubLogicDel()
.groupBy(StorageInDO::getId)
.orderByDesc(PurchaseOrderDO::getCreateTime);
@ -38,6 +40,9 @@ public interface StorageInMapper extends BaseMapperX<StorageInDO> {
query.like(!StringUtils.isEmpty(reqVO.getProjectName()), StorageInDetailDO::getProjectName, reqVO.getProjectName());
query.like(!StringUtils.isEmpty(reqVO.getProjectSubName()), StorageInDetailDO::getName, reqVO.getProjectSubName());
query.like(!StringUtils.isEmpty(reqVO.getSupplierName()), SupplierDO::getBrief, reqVO.getSupplierName());
query.like(!StringUtils.isEmpty(reqVO.getBoomName()), StorageInDetailDO::getBoomName, reqVO.getBoomName());
query.like(!StringUtils.isEmpty(reqVO.getProjectCode()), ProjectOrderDO::getCode, reqVO.getProjectCode());
query.like(!StringUtils.isEmpty(reqVO.getCustomerName()), StorageInDetailDO::getBrief, reqVO.getCustomerName());
query.eq(reqVO.getGoodsType() != null, StorageInDO::getGoodsType, reqVO.getGoodsType());
return selectPage(reqVO, query);
}

View File

@ -766,6 +766,7 @@ public interface TaskDispatchDetailMapper extends BaseMapperX<TaskDispatchDetail
.like(!StringUtils.isEmpty(pageReqVO.getProjectCode()), ProjectOrderDO::getCode, pageReqVO.getProjectCode())
.like(!StringUtils.isEmpty(pageReqVO.getBlueprintNo()), ProcessBomDetailDO::getBlueprintNo, pageReqVO.getBlueprintNo())
.like(!StringUtils.isEmpty(pageReqVO.getProjectName()), ProjectOrderDO::getProjectName, pageReqVO.getProjectName())
.like(!StringUtils.isEmpty(pageReqVO.getCustomerName()), CustomerDO::getBrief, pageReqVO.getCustomerName())
.like(!StringUtils.isEmpty(pageReqVO.getProjectSubName()), ProjectOrderSubDO::getName, pageReqVO.getProjectSubName())
.like(!StringUtils.isEmpty(pageReqVO.getMaterialName()), ProcessBomDetailDO::getMaterialName, pageReqVO.getMaterialName())
.like(!StringUtils.isEmpty(pageReqVO.getProcedureName()), ProcedureDO::getName, pageReqVO.getProcedureName())

View File

@ -48,7 +48,7 @@ public interface TaskDispatchMapper extends BaseMapperX<TaskDispatchDO> {
default PageResult<TaskDispatchDO> selectPage(TaskDispatchPageReqVO reqVO) {
MPJLambdaWrapper<TaskDispatchDO> query = new MPJLambdaWrapper<>();
query.selectAll(TaskDispatchDO.class)
.select("a.plan_no as planCode", "e.name as customerName", "a.craft_content as craftContent")
.select("a.plan_no as planCode", "e.brief as customerName", "a.craft_content as craftContent")
.select("d.code as projectCode", "d.project_name as projectName", "d.project_end_time as projectEndTime")
.select("c.name as projectSubName", "b.project_sub_code as projectSubCode")
.select("f.material_name as materialName", "f.composition_id as compositionId", "f.spec", "f.blueprint_no as blueprintNo")
@ -73,7 +73,7 @@ public interface TaskDispatchMapper extends BaseMapperX<TaskDispatchDO> {
query.like(!StringUtils.isEmpty(reqVO.getCode()), TaskDispatchDO::getCode, reqVO.getCode())
.like(!StringUtils.isEmpty(reqVO.getProjectCode()), ProjectOrderDO::getCode, reqVO.getProjectCode())
.like(!StringUtils.isEmpty(reqVO.getCustomerName()), CustomerDO::getName, reqVO.getCustomerName())
.like(!StringUtils.isEmpty(reqVO.getCustomerName()), CustomerDO::getBrief, reqVO.getCustomerName())
.like(!StringUtils.isEmpty(reqVO.getProjectName()), ProjectOrderDO::getProjectName, reqVO.getProjectName())
.like(!StringUtils.isEmpty(reqVO.getProjectSubName()), ProjectOrderSubDO::getName, reqVO.getProjectSubName())
.like(!StringUtils.isEmpty(reqVO.getProjectSubCode()), "b.project_sub_code", reqVO.getProjectSubCode())
@ -82,7 +82,8 @@ public interface TaskDispatchMapper extends BaseMapperX<TaskDispatchDO> {
.like(!StringUtils.isEmpty(reqVO.getOwnerName()), "u1.nickname", reqVO.getOwnerName())
.like(!StringUtils.isEmpty(reqVO.getTaskCode()), PlanTaskDO::getTaskNo, reqVO.getTaskCode())
.like(!StringUtils.isEmpty(reqVO.getPlanCode()), PlanDO::getPlanNo, reqVO.getPlanCode())
.like(ObjectUtil.isNotEmpty(reqVO.getBlueprintNo()),ProcessBomDetailDO::getBlueprintNo, reqVO.getBlueprintNo());
.like(ObjectUtil.isNotEmpty(reqVO.getBlueprintNo()),ProcessBomDetailDO::getBlueprintNo, reqVO.getBlueprintNo())
.like(ObjectUtil.isNotEmpty(reqVO.getBoomName()),ProcessBomDetailDO::getMaterialName, reqVO.getBoomName());
;
return selectPage(reqVO, query);
}

View File

@ -296,6 +296,7 @@ public class StorageInventoryServiceImpl implements StorageInventoryService {
lambdaQueryWrapper.eq(PnDO::getRgId, rgId);
lambdaQueryWrapper.eq(PnDO::getWhId, whId);
PnDO pnDO = pnMapper.selectOne(lambdaQueryWrapper);
if (ObjectUtil.isEmpty(pnDO)) {
errorMessages9.add("" + (i + 1) + "行库位" + vo.getPnName() + "不存在或未启用,请确认");
} else {

View File

@ -6,22 +6,30 @@
<ContentWrap class="borderxx">
<!-- 搜索工作栏 -->
<el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="130px">
<el-form-item label="需求计划单号" prop="projectMaterialPlanNo">
<el-input
v-model="queryParams.projectMaterialPlanNo" placeholder="物料计划单号" clearable @keyup.enter="handleQuery"
class="!w-240px" />
<el-form-item label="项目编码" prop="projectCode">
<el-input v-model="queryParams.projectCode" placeholder="请输入项目编号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="项目名称" prop="projectName">
<el-input
v-model="queryParams.projectName" placeholder="项目名称" clearable @keyup.enter="handleQuery"
v-model="queryParams.projectName" placeholder="项目名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="客户简称" prop="customerName">
<el-input v-model="queryParams.customerName" placeholder="请输入客户简称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="子项目名称" prop="projectSubName">
<el-input v-model="queryParams.projectSubName" placeholder="请输入子项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="零件名称" prop="materialName">
<el-input v-model="queryParams.materialName" placeholder="请输入零件名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="需求计划单号" prop="projectMaterialPlanNo">
<el-input
v-model="queryParams.projectMaterialPlanNo" placeholder="物料计划单号" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item style="margin-left:15px">
<el-button @click="handleQuery" type="primary">
<Icon icon="ep:search" class="mr-5px" /> 搜索
@ -112,6 +120,8 @@ const queryParams = reactive({
description: undefined,
createTime: [],
matType:0,
projectCode:undefined,
customerName:undefined,
})
const queryFormRef = ref() //
const exportLoading = ref(false) //

View File

@ -6,15 +6,27 @@
<ContentWrap class="borderxx">
<!-- 搜索工作栏 -->
<el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="120px">
<el-form-item label="项目编码" prop="projectCode">
<el-input v-model="queryParams.projectCode" placeholder="请输入项目编码" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="项目名称" prop="projectName">
<el-input v-model="queryParams.projectName" placeholder="请输入项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="客户简称" prop="customerName">
<el-input v-model="queryParams.customerName" placeholder="请输入客户简称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="子项目名称" prop="projectSubName">
<el-input v-model="queryParams.projectSubName" placeholder="请输入子项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="零件名称" prop="materialName">
<el-input v-model="queryParams.materialName" placeholder="请输入零件名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="图号" prop="blueprintNo">
<el-input v-model="queryParams.blueprintNo" placeholder="请输入图号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="工序" prop="procedureName">
<el-input v-model="queryParams.procedureName" placeholder="请输入工序" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="零件状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择零件状态" clearable class="!w-240px">
<el-option v-for="dict in getIntDictOptions(DICT_TYPE.HELI_MATERIAL_PLAN_BOOM_STATUS)" :key="dict.value" :label="dict.label" :value="dict.value" />
@ -23,12 +35,7 @@
<el-form-item label="物料需求单号" prop="projectMaterialPlanNo">
<el-input v-model="queryParams.projectMaterialPlanNo" placeholder="请输入物料需求单号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="零件号" prop="blueprintNo">
<el-input v-model="queryParams.blueprintNo" placeholder="请输入零件号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="工序" prop="procedureName">
<el-input v-model="queryParams.procedureName" placeholder="请输入工序" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item style="margin-left:30px">
<el-button @click="handleQuery" type="primary">
<Icon icon="ep:search" class="mr-5px" /> 搜索
@ -73,7 +80,7 @@
<el-table-column label="项目名称" align="center" prop="projectName" min-width="180" />
<el-table-column label="子项目名称" align="center" prop="projectSubName" min-width="180" />
<!-- <el-table-column label="客户简码" align="center" prop="customerName" min-width="100" />-->
<el-table-column label="零件号" align="center" prop="blueprintNo" min-width="100" />
<el-table-column label="号" align="center" prop="blueprintNo" min-width="100" />
<el-table-column label="零件名称" align="center" prop="materialName" min-width="180" />
<el-table-column label="工序名称" align="center" prop="procedureName" min-width="180" >
<template #default="scope">

View File

@ -6,24 +6,36 @@
<ContentWrap class="borderxx">
<!-- 搜索工作栏 -->
<el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="130px">
<el-form-item label="需求计划单号" prop="projectMaterialPlanNo">
<el-form-item label="项目编码" prop="projectCode">
<el-input
v-model="queryParams.projectMaterialPlanNo" placeholder="物料计划单号" clearable @keyup.enter="handleQuery"
v-model="queryParams.projectCode" placeholder="请输入项目编码" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="项目名称" prop="projectName">
<el-input
v-model="queryParams.projectName" placeholder="项目名称" clearable @keyup.enter="handleQuery"
v-model="queryParams.projectName" placeholder="请输入项目名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="客户简称" prop="customerName">
<el-input v-model="queryParams.customerName" placeholder="请输入客户简称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="子项目名称" prop="projectSubName">
<el-input v-model="queryParams.projectSubName" placeholder="请输入子项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="零件名称" prop="materialName">
<el-input v-model="queryParams.materialName" placeholder="请输入零件名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="件号" prop="blueprintNo">
<el-input v-model="queryParams.blueprintNo" placeholder="请输入件号" clearable @keyup.enter="handleQuery" class="!w-240px" />
<el-form-item label="图号" prop="blueprintNo">
<el-input v-model="queryParams.blueprintNo" placeholder="请输入图号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="工序" prop="procedureName">
<el-input v-model="queryParams.procedureName" placeholder="请输入工序" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="需求计划单号" prop="projectMaterialPlanNo">
<el-input
v-model="queryParams.projectMaterialPlanNo" placeholder="物料计划单号" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item style="margin-left:15px">
<el-button @click="handleQuery" type="primary">
@ -116,6 +128,9 @@ const queryParams = reactive({
createTime: [],
matType:1,
blueprintNo:undefined,
projectCode:undefined,
customerName:undefined,
procedureName:undefined
})
const queryFormRef = ref() //
const exportLoading = ref(false) //

View File

@ -48,7 +48,7 @@
<el-card class="hl-incard">
<el-table :data="formData.matBoomDOList" class="hl-table" v-loading="loading">
<el-table-column type="index" label="序号" fixed align="center" min-width="60" />
<el-table-column prop="blueprintNo" min-width="100" label="号" align="center"/>
<el-table-column prop="blueprintNo" min-width="100" label="号" align="center"/>
<el-table-column prop="matName" min-width="200" label="物料名称" align="center"/>
<el-table-column label="工序" align="center" prop="procedureName" min-width="100" >
<template #default="scope">

View File

@ -6,18 +6,22 @@
<ContentWrap class="borderxx">
<!-- 搜索工作栏 -->
<el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="120px">
<el-form-item label="项目编码" prop="projectCode">
<el-input v-model="queryParams.projectCode" placeholder="请输入项目编号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="项目名称" prop="projectName">
<el-input v-model="queryParams.projectName" placeholder="请输入项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="客户简称" prop="customerName">
<el-input v-model="queryParams.customerName" placeholder="请输入客户简称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="子项目名称" prop="projectSubName">
<el-input v-model="queryParams.projectSubName" placeholder="请输入子项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="零件名称" prop="boomName">
<el-input v-model="queryParams.boomName" placeholder="请输入零件名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="项目编码" prop="projectCode">
<el-input v-model="queryParams.projectCode" placeholder="请输入项目编号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="采购状态" prop="orderStatus">
<el-select @change="e => clearItem(e)" clearable v-model="queryParams.orderStatus" placeholder="请选择采购状态" class="!w-240px">
<el-option v-for="dict in getIntDictOptions(DICT_TYPE.HELI_PURCHASE_STATUS)" :key="dict.value" :label="dict.label" :value="dict.value" />

View File

@ -6,17 +6,25 @@
<ContentWrap class="borderxx">
<!-- 搜索工作栏 -->
<el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="120px">
<el-form-item label="项目编码" prop="projectCode">
<el-input v-model="queryParams.projectCode" placeholder="请输入项目编号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="项目名称" prop="projectName">
<el-input v-model="queryParams.projectName" placeholder="请输入项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="客户简称" prop="customerName">
<el-input v-model="queryParams.customerName" placeholder="请输入客户简称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="子项目名称" prop="projectSubName">
<el-input v-model="queryParams.projectSubName" placeholder="请输入子项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="零件名称" prop="materialName">
<el-input v-model="queryParams.materialName" placeholder="请输入零件名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="项目编码" prop="projectCode">
<el-input v-model="queryParams.projectCode" placeholder="请输入项目编号" clearable @keyup.enter="handleQuery" class="!w-240px" />
<el-form-item label="标准件状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择标准件状态" clearable class="!w-240px">
<el-option v-for="dict in getIntDictOptions(DICT_TYPE.HELI_MATERIAL_PLAN_BOOM_STATUS)" :key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="责任人" prop="ownerName">
<el-input
@ -27,11 +35,6 @@
class="!w-240px"
/>
</el-form-item>
<el-form-item label="标准件状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择标准件状态" clearable class="!w-240px">
<el-option v-for="dict in getIntDictOptions(DICT_TYPE.HELI_MATERIAL_PLAN_BOOM_STATUS)" :key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="物料需求单号" prop="projectMaterialPlanNo">
<el-input v-model="queryParams.projectMaterialPlanNo" placeholder="请输入物料需求单号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>

View File

@ -6,17 +6,25 @@
<ContentWrap class="borderxx">
<!-- 搜索工作栏 -->
<el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="120px">
<el-form-item label="项目编码" prop="projectCode">
<el-input v-model="queryParams.projectCode" placeholder="请输入项目编号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="项目名称" prop="projectName">
<el-input v-model="queryParams.projectName" placeholder="请输入项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="客户简称" prop="customerName">
<el-input v-model="queryParams.customerName" placeholder="请输入客户简称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="子项目名称" prop="projectSubName">
<el-input v-model="queryParams.projectSubName" placeholder="请输入子项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="零件名称" prop="materialName">
<el-input v-model="queryParams.materialName" placeholder="请输入零件名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="项目编码" prop="projectCode">
<el-input v-model="queryParams.projectCode" placeholder="请输入项目编号" clearable @keyup.enter="handleQuery" class="!w-240px" />
<el-form-item label="采购状态" prop="mplanStatus">
<el-select @change="e => clearItem(e)" v-model="queryParams.mplanStatus" placeholder="请选择标准件状态" class="!w-240px">
<el-option v-for="dict in getIntDictOptions(DICT_TYPE.HELI_STANDARD_BUY_TYPE)" :key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="责任人" prop="ownerName">
<el-input
@ -27,11 +35,7 @@
class="!w-240px"
/>
</el-form-item>
<el-form-item label="采购状态" prop="mplanStatus">
<el-select @change="e => clearItem(e)" v-model="queryParams.mplanStatus" placeholder="请选择标准件状态" class="!w-240px">
<el-option v-for="dict in getIntDictOptions(DICT_TYPE.HELI_STANDARD_BUY_TYPE)" :key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="物料需求单号" prop="projectMaterialPlanNo">
<el-input v-model="queryParams.projectMaterialPlanNo" placeholder="请输入物料需求单号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>

View File

@ -8,10 +8,10 @@
:inline="true"
label-width="120px"
>
<el-form-item label="领料单单号" prop="matReqNo">
<el-form-item label="项目编码" prop="projectCode">
<el-input
v-model="queryParams.matReqNo"
placeholder="请输入领料单单号"
v-model="queryParams.projectCode"
placeholder="请输入项目编码"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
@ -26,6 +26,9 @@
class="!w-240px"
/>
</el-form-item>
<el-form-item label="客户简称" prop="customerName">
<el-input v-model="queryParams.customerName" placeholder="请输入客户简称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="子项目名称" prop="projectSubName">
<el-input
v-model="queryParams.projectSubName"
@ -44,6 +47,15 @@
class="!w-240px"
/>
</el-form-item>
<el-form-item label="领料单单号" prop="matReqNo">
<el-input
v-model="queryParams.matReqNo"
placeholder="请输入领料单单号"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item>
<el-button @click="handleQuery"><Icon icon="ep:search" class="mr-5px" /> 搜索</el-button>
<el-button @click="resetQuery"><Icon icon="ep:refresh" class="mr-5px" /> 重置</el-button>
@ -128,6 +140,8 @@ const queryParams = reactive({
projectName: undefined,
projectSubName:undefined,
materialName:undefined,
projectCode:undefined,
customerName:undefined
})
const queryFormRef = ref() //
const exportLoading = ref(false) //

View File

@ -6,10 +6,17 @@
<ContentWrap class="borderxx">
<!-- 搜索工作栏 -->
<el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="130px">
<el-form-item label="项目编码" prop="projectCode">
<el-input v-model="queryParams.projectCode" placeholder="请输入项目编码" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="项目名称" prop="projectName">
<el-input v-model="queryParams.projectName" placeholder="项目名称" clearable @keyup.enter="handleQuery"
<el-input v-model="queryParams.projectName" placeholder="请输入项目名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="客户简称" prop="customerName">
<el-input v-model="queryParams.customerName" placeholder="请输入客户简称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="子项目名称" prop="projectSubName">
<el-input v-model="queryParams.projectSubName" placeholder="请输入子项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
@ -21,10 +28,6 @@
<el-option v-for="dict in getIntDictOptions(DICT_TYPE.HELI_MATERIAL_STATUS)" :key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="项目编码" prop="projectCode">
<el-input v-model="queryParams.projectCode" placeholder="项目编码" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item style="margin-left:15px">
<el-button @click="handleQuery" type="primary">
<Icon icon="ep:search" class="mr-5px" /> 搜索
@ -178,7 +181,8 @@ const queryParams = reactive({
createTime: [],
matType:0,
type:undefined,
projectCode:undefined
projectCode:undefined,
customerName:undefined
})
const materialSelectList = ref([])
const queryFormRef = ref() //

View File

@ -79,15 +79,15 @@
<el-form-item>
<el-button @click="handleQuery" type="primary"><Icon icon="ep:search" class="mr-5px" /> 搜索</el-button>
<el-button @click="resetQuery"><Icon icon="ep:refresh" class="mr-5px" /> 重置</el-button>
<el-button
type="success"
plain
@click="handleExport"
:loading="exportLoading"
v-hasPermi="['heli:pg-master:export']"
>
<Icon icon="ep:download" class="mr-5px" /> 导出
</el-button>
<!-- <el-button-->
<!-- type="success"-->
<!-- plain-->
<!-- @click="handleExport"-->
<!-- :loading="exportLoading"-->
<!-- v-hasPermi="['heli:pg-master:export']"-->
<!-- >-->
<!-- <Icon icon="ep:download" class="mr-5px" /> 导出-->
<!-- </el-button>-->
</el-form-item>
</el-form>
</ContentWrap>
@ -100,7 +100,7 @@
<el-table-column label="供应商简称" align="center" prop="supplierName" min-width="180" />
<el-table-column label="BOM编号" align="center" prop="boomCode" min-width="180" />
<el-table-column label="号" align="center" prop="blueprintNo" width="120"/>
<el-table-column label="号" align="center" prop="blueprintNo" width="120"/>
<el-table-column label="零件名称" align="center" prop="boomName" width="120"/>
<el-table-column label="材料" align="center" prop="composition" width="120"/>
<el-table-column label="规格" align="center" prop="boomSpec" width="120"/>
@ -191,19 +191,19 @@ const setDefaultDate = () => {
]
}
/** 导出按钮操作 */
const handleExport = async () => {
try {
//
await message.exportConfirm()
//
exportLoading.value = true
const data = await PurchaseOrderNoDetailApi.exportOutsourcing(queryParams)
download.excel(data, '外协费用查询.xlsx')
} catch {
} finally {
exportLoading.value = false
}
}
// const handleExport = async () => {
// try {
// //
// await message.exportConfirm()
// //
// exportLoading.value = true
// const data = await PurchaseOrderNoDetailApi.exportOutsourcing(queryParams)
// download.excel(data, '.xlsx')
// } catch {
// } finally {
// exportLoading.value = false
// }
// }
/** 初始化 **/
onMounted(() => {

View File

@ -6,31 +6,29 @@
<ContentWrap class="borderxx">
<!-- 搜索工作栏 -->
<el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="120px">
<el-form-item label="项目编码" prop="projectCode">
<el-input v-model="queryParams.projectCode" placeholder="请输入项目编号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="项目名称" prop="projectName">
<el-input v-model="queryParams.projectName" placeholder="请输入项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="客户简称" prop="customerName">
<el-input
v-model="queryParams.customerName"
placeholder="请输入客户简称"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="子项目名称" prop="projectSubName">
<el-input v-model="queryParams.projectSubName" placeholder="请输入子项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="零件名称" prop="matName">
<el-input v-model="queryParams.matName" placeholder="请输入零件名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="项目编码" prop="projectCode">
<el-input v-model="queryParams.projectCode" placeholder="请输入项目编号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="责任人" prop="duEmpName">
<el-input v-model="queryParams.duEmpName" placeholder="请输入责任人" clearable @keyup.enter="handleQuery" class="!w-240px"/>
</el-form-item>
<el-form-item label="采购状态" prop="mplanStatus">
<el-select v-model="queryParams.mplanStatus" placeholder="请选择采购状态" clearable class="!w-240px">
<el-option v-for="dict in getIntDictOptions(DICT_TYPE.MATERIAL_PLAN_BOOM_MPLAN_STATUS)" :key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="物料需求单号" prop="projectMaterialPlanNo">
<el-input v-model="queryParams.projectMaterialPlanNo" placeholder="请输入物料需求单号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="零件号" prop="blueprintNo">
<el-input v-model="queryParams.blueprintNo" placeholder="请输入零件号" clearable @keyup.enter="handleQuery" class="!w-240px" />
<el-form-item label="图号" prop="blueprintNo">
<el-input v-model="queryParams.blueprintNo" placeholder="请输入图号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="工序" prop="procedureName">
<el-input v-model="queryParams.procedureName" placeholder="请输入工序" clearable @keyup.enter="handleQuery" class="!w-240px" />
@ -38,6 +36,17 @@
<el-form-item label="供应商" prop="supplierName">
<el-input v-model="queryParams.supplierName" placeholder="请输入供应商" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="采购状态" prop="mplanStatus">
<el-select v-model="queryParams.mplanStatus" placeholder="请选择采购状态" clearable class="!w-240px">
<el-option v-for="dict in getIntDictOptions(DICT_TYPE.MATERIAL_PLAN_BOOM_MPLAN_STATUS)" :key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="责任人" prop="duEmpName">
<el-input v-model="queryParams.duEmpName" placeholder="请输入责任人" clearable @keyup.enter="handleQuery" class="!w-240px"/>
</el-form-item>
<el-form-item label="物料需求单号" prop="projectMaterialPlanNo">
<el-input v-model="queryParams.projectMaterialPlanNo" placeholder="请输入物料需求单号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item style="margin-left:30px">
<el-button @click="handleQuery" type="primary">
<Icon icon="ep:search" class="mr-5px" /> 搜索
@ -73,14 +82,14 @@
<el-col>
<el-card class="hl-incard">
<el-form ref="multipleTable" :model="list" v-loading="formLoading" label-width="0" >
<el-table v-loading="loading" :data="list" :show-overflow-tooltip="true" class="hl-table" @selection-change="handleSelectionChange" show-summary :summary-method="getSummaries">
<el-table v-loading="loading" :data="list" :show-overflow-tooltip="true" class="hl-table" @selection-change="handleSelectionChange" show-summary :summary-method="getSummaries" :row-class-name="tableRowClassName">
<el-table-column type="selection" width="70" />
<el-table-column fixed label="序号" align="center" type="index" width="60" />
<!-- <el-table-column label="客户简称" align="center" prop="brief" min-width="180" fixed />-->
<el-table-column label="项目名称" align="center" prop="projectName" min-width="180" fixed />
<el-table-column label="子项目名称" align="center" prop="projectSubName" min-width="180" />
<el-table-column label="零件号" align="center" prop="blueprintNo" min-width="120" />
<el-table-column label="号" align="center" prop="blueprintNo" min-width="120" />
<!-- <el-table-column label="泡沫" align="center" prop="isFoams">-->
<!-- <template #default="{ row }">-->
<!-- <el-checkbox v-model="row.isFoams" @change="handleOutsourcingChange(row)" disabled/>-->
@ -457,8 +466,25 @@ const change1 =(row:any)=>{
}
}
}
const tableRowClassName = ({ row }) => {
return row.isSelected ? 'selected-row' : '';
}
const handleSelectionChange = (val) => {
// multipleTable.value.clearSelection()
// isSelected false
list.value.forEach(row => {
row.isSelected = false;
});
// isSelected true
val.forEach(selectedRow => {
//
const targetRow = list.value.find(row => row.id === selectedRow.id);
if (targetRow) {
targetRow.isSelected = true;
}
});
multipleTable.value=val
multipleTable.value=val
var bomDetails = list.value;
if (val.length==0) {
@ -638,4 +664,7 @@ onMounted(async() => {
/* 方法2通过调整字体大小 */
/* font-size: 18px; */
}
.selected-row {
background-color: #ffe6cc !important;
}
</style>

View File

@ -7,44 +7,38 @@
<!-- 搜索工作栏 -->
<el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="130px">
<el-form-item label="项目编号" prop="projectCode">
<el-input v-model="queryParams.projectCode" placeholder="项目编号" clearable @keyup.enter="handleQuery"
<el-input v-model="queryParams.projectCode" placeholder="请输入项目编号" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="项目名称" prop="projectName">
<el-input v-model="queryParams.projectName" placeholder="请输入项目名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="客户简称" prop="brief">
<el-input v-model="queryParams.brief" placeholder="客户简称" clearable @keyup.enter="handleQuery" class="!w-240px" />
<el-input v-model="queryParams.brief" placeholder="请输入客户简称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="子项目名称" prop="projectSubName">
<el-input v-model="queryParams.projectSubName" placeholder="请输入子项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="零件名称" prop="materialName">
<el-input v-model="queryParams.materialName" placeholder="请输入零件名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="图号" prop="blueprintNo">
<el-input v-model="queryParams.blueprintNo" placeholder="图号" clearable @keyup.enter="handleQuery"
<el-input v-model="queryParams.blueprintNo" placeholder="请输入图号" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="零件名称" prop="materialName">
<el-input v-model="queryParams.materialName" placeholder="零件名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
<el-form-item label="工序" prop="procedureName">
<el-input v-model="queryParams.procedureName" placeholder="请输入工序" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="责任人" prop="ownerName">
<el-input v-model="queryParams.ownerName" placeholder="责任人" clearable @keyup.enter="handleQuery"
class="!w-240px" />
<el-form-item label="供应商" prop="supplierName">
<el-input v-model="queryParams.supplierName" placeholder="请输入供应商" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择状态" clearable class="!w-240px">
<el-option v-for="dict in getIntDictOptions(DICT_TYPE.HELI_DOCUMENT_STATUS).filter(item=>item.value==1 || item.value==2)" :key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="采购单类型" prop="goodType">
<el-select v-model="queryParams.goodsType" placeholder="请选择采购单类型" clearable class="!w-240px">
<el-option v-for="dict in getIntDictOptions(DICT_TYPE.HELI_PART_PURCHASE_ORDER_TYPE)" :key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="供应商" prop="supplierName">
<el-input v-model="queryParams.supplierName" placeholder="供应商" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="工序" prop="procedureName">
<el-input v-model="queryParams.procedureName" placeholder="工序" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="收货状态" prop="receivingStatus">
<el-select v-model="queryParams.receivingStatus" placeholder="下拉选择" clearable class="!w-240px">
<el-option
@ -52,6 +46,15 @@
:label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="采购单类型" prop="goodType">
<el-select v-model="queryParams.goodsType" placeholder="请选择采购单类型" clearable class="!w-240px">
<el-option v-for="dict in getIntDictOptions(DICT_TYPE.HELI_PART_PURCHASE_ORDER_TYPE)" :key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="责任人" prop="ownerName">
<el-input v-model="queryParams.ownerName" placeholder="请输入责任人" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="送审日期" prop="createTime">
<el-date-picker
v-model="queryParams.createTime"
@ -69,7 +72,15 @@
<el-button @click="resetQuery">
<Icon icon="ep:refresh" class="mr-5px" /> 重置
</el-button>
<!-- <el-button-->
<!-- type="success"-->
<!-- plain-->
<!-- @click="handleExport"-->
<!-- :loading="exportLoading"-->
<!-- v-hasPermi="['heli:pg-master:export']"-->
<!-- >-->
<!-- <Icon icon="ep:download" class="mr-5px" /> 导出-->
<!-- </el-button>-->
</el-form-item>
</el-form>
</ContentWrap>
@ -85,7 +96,6 @@
<el-table-column type="selection" width="70"/>
<el-table-column label="序号" type="index" align="center" fixed min-width="70px" />
<el-table-column label="送审日期" align="center" prop="createTime" min-width="150px" :formatter="dateFormatter1"/>
<!-- <el-table-column label="客户简称" align="center" prop="brief" min-width="100px" />-->
<el-table-column label="子项目编码" align="center" prop="projectSubCode" min-width="250px" />
<el-table-column label="图号" align="center" prop="blueprintNo" min-width="120px" />
<el-table-column label="零件名称" align="center" prop="boomName" min-width="180px" />
@ -104,6 +114,7 @@
</template>
</el-table-column>
<el-table-column label="要求到货日期" align="center" prop="requireTime" min-width="150px" :formatter="dateFormatter1"/>
<el-table-column label="客户简称" align="center" prop="brief" min-width="100px" />
<el-table-column label="操作" align="center" fixed="right" min-width="180">
<template #default="scope">
<el-button
@ -150,7 +161,7 @@ const updateParams = reactive({
id: undefined,
reason: undefined
})
// const exportLoading = ref(false) //
const loading = ref(true) //
const list = ref([]) //
const total = ref(0) //
@ -370,7 +381,20 @@ const handleDelete = async (id: number) => {
await getList()
} catch { }
}
/** 导出按钮操作 */
// const handleExport = async () => {
// try {
// //
// await message.exportConfirm()
// //
// exportLoading.value = true
// const data = await PurchaseOrderNoDetailApi.exportOutsourcing(queryParams)
// download.excel(data, '.xlsx')
// } catch {
// } finally {
// exportLoading.value = false
// }
// }
const setDefaultDate = () => {
queryParams.createTime = [
dayjs().startOf('day').format('YYYY-MM-DD HH:mm:ss'),

View File

@ -6,20 +6,35 @@
<ContentWrap class="borderxx">
<!-- 搜索工作栏 -->
<el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="120px">
<el-form-item label="项目编码" prop="projectCode">
<el-input v-model="queryParams.projectCode" placeholder="请输入项目编号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="项目名称" prop="projectName">
<el-input v-model="queryParams.projectName" placeholder="请输入项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="客户简称" prop="customerName">
<el-input
v-model="queryParams.customerName"
placeholder="请输入客户简称"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="子项目名称" prop="projectSubName">
<el-input v-model="queryParams.projectSubName" placeholder="请输入子项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<!-- <el-form-item label="零件名称" prop="materialName">-->
<!-- <el-input v-model="queryParams.materialName" placeholder="请输入零件名称" clearable @keyup.enter="handleQuery" class="!w-240px" />-->
<!-- </el-form-item>-->
<el-form-item label="零件名称" prop="materialName">
<el-input v-model="queryParams.materialName" placeholder="请输入零件名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="图号" prop="blueprintNo">
<el-input v-model="queryParams.blueprintNo" placeholder="请输入图号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="项目编码" prop="projectCode">
<el-input v-model="queryParams.projectCode" placeholder="请输入项目编号" clearable @keyup.enter="handleQuery" class="!w-240px" />
<el-form-item label="工序" prop="procedureName">
<el-input v-model="queryParams.procedureName" placeholder="请输入工序" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="供应商" prop="supplierName">
<el-input v-model="queryParams.supplierName" placeholder="请输入供应商" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="采购状态" prop="status">
<el-select v-model="queryParams.status" placeholder="请选择采购状态" clearable class="!w-240px">
@ -29,9 +44,7 @@
<el-form-item label="责任人" prop="ownerName">
<el-input v-model="queryParams.ownerName" placeholder="请输入责任人" clearable @keyup.enter="handleQuery" class="!w-240px"/>
</el-form-item>
<el-form-item label="供应商" prop="supplierName">
<el-input v-model="queryParams.supplierName" placeholder="请输入供应商" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item style="margin-left:30px">
<el-button @click="handleQuery" type="primary">
<Icon icon="ep:search" class="mr-5px" /> 搜索
@ -143,7 +156,8 @@ const queryParams = reactive({
materialName:undefined,
projectMaterialPlanNo:undefined,
supplierName:undefined,
blueprintNo:undefined
blueprintNo:undefined,
procedureName:undefined
})
const queryFormRef = ref() //
const exportLoading = ref(false) //

View File

@ -19,7 +19,6 @@
value-format="YYYY-MM-DD"
type="date"
clearable
@change="changeBeginDate()"
start-placeholder="开始日期"
end-placeholder="结束日期"
class="!w-280px"
@ -42,6 +41,8 @@
class="hl-table" @selection-change="handleSelectionChange" @row-click="clickRow" selection>
<el-table-column fixed label="序号" type="index" width="70" align="center" />
<el-table-column fixed label="项目编码" align="center" prop="code" min-width="130" />
<el-table-column fixed label="项目名称" align="center" prop="projectName" min-width="180" />
<el-table-column fixed label="客户简称" align="center" prop="customerBrief" min-width="100" />
<el-table-column fixed label="子项目名称" align="center" prop="name" min-width="180" />
<el-table-column label="设计类型" align="center" prop="type" width="100px">
<template #default="scope">
@ -135,7 +136,8 @@ const handleQuery = () => {
/** 重置按钮操作 */
const resetQuery = () => {
queryFormRef.value.resetFields()
queryParams.twoDimOwner=''
queryParams.beginTime=''
handleQuery()
}
@ -168,7 +170,8 @@ const open = async () => {
dialogVisible.value = true
userInit.value = await UserApi.getDeptName('设计部')
// handleQuery()
queryFormRef.value.resetFields()
queryParams.twoDimOwner=''
queryParams.beginTime=''
list.value=[]
total.value=0
}

View File

@ -34,6 +34,11 @@
<el-form-item label="子项目名称" prop="projectSubName">
<el-input v-model="queryParams.projectSubName" placeholder="请输入子项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="最新进度" prop="isOverPro">
<el-select clearable class="!w-240px" v-model="queryParams.isOverPro" placeholder="下拉选择">
<el-option v-for="dict in isOverProcess" :key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item style="margin-left:25px">
<el-button @click="handleQuery" type="primary">
<Icon icon="ep:search" class="mr-5px" /> 搜索
@ -122,7 +127,7 @@ const router = useRouter()
const commonStore = useCommonStateWithOut()
const userStore = useUserStore()
const username = userStore.getUser.nickname
const isOverProcess=[{label:"已完成",value:1},{label:"实施中",value: 0}]
const loading = ref(true) //
const list = ref([]) //
const total = ref(0) //
@ -137,7 +142,8 @@ const queryParams = reactive({
businessLine: undefined,
property: undefined,
projectSubName: undefined,
twoDimOwnerName: username
twoDimOwnerName: username,
isOverPro:undefined
})
const queryFormRef = ref() //
const exportLoading = ref(false) //

View File

@ -76,6 +76,11 @@
class="!w-240px"
/>
</el-form-item>
<el-form-item label="最新进度" prop="isOverPro">
<el-select clearable class="!w-240px" v-model="queryParams.isOverPro" placeholder="下拉选择">
<el-option v-for="dict in isOverProcess" :key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item style="margin-left: 20px">
<el-button @click="handleQuery" type="primary"><Icon icon="ep:search" class="mr-5px" /> 搜索</el-button>
<el-button @click="resetQuery"><Icon icon="ep:refresh" class="mr-5px" /> 重置</el-button>
@ -172,6 +177,7 @@ const router = useRouter()
const commonStore = useCommonStateWithOut()
const userStore = useUserStore()
const username = userStore.getUser.nickname
const isOverProcess=[{label:"已完成",value:1},{label:"实施中",value: 0}]
const loading = ref(true) //
const list = ref([]) //
@ -187,7 +193,8 @@ const queryParams = reactive({
businessLine: undefined,
property: undefined,
projectSubName: undefined,
threeDimOwnerName: username
threeDimOwnerName: username,
isOverPro:undefined
})
const queryFormRef = ref() //
const exportLoading = ref(false) //

View File

@ -6,21 +6,46 @@
<ContentWrap class="borderxx">
<!-- 搜索工作栏 -->
<el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="120px">
<el-form-item label="采购单号" prop="purchaseNo">
<el-form-item label="项目编码" prop="projectCode">
<el-input
v-model="queryParams.purchaseNo" placeholder="采购单号" clearable @keyup.enter="handleQuery"
v-model="queryParams.projectCode" placeholder="请输入项目编码" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="项目名称" prop="projectName">
<el-input
v-model="queryParams.projectName" placeholder="项目名称" clearable @keyup.enter="handleQuery"
v-model="queryParams.projectName" placeholder="请输入项目名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="客户简称" prop="customerName">
<el-input
v-model="queryParams.customerName"
placeholder="请输入客户简称"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="子项目名称" prop="projectSubName">
<el-input
v-model="queryParams.projectSubName" placeholder="子项目名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="零件名称" prop="boomName">
<el-input
v-model="queryParams.boomName" placeholder="请输入零件名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="工序" prop="procedureName">
<el-input
v-model="queryParams.procedureName" placeholder="请输入工序" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="图号" prop="blueprintNo">
<el-input
v-model="queryParams.blueprintNo" placeholder="请输入图号" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="供应商" prop="supplierName">
<el-input
v-model="queryParams.supplierName" placeholder="供应商" clearable @keyup.enter="handleQuery"
@ -38,19 +63,10 @@ v-model="queryParams.supplierName" placeholder="供应商" clearable @keyup.ente
:label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="零件" prop="boomName">
<el-form-item label="采购单号" prop="purchaseNo">
<el-input
v-model="queryParams.boomName" placeholder="请输入零件" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="工序" prop="procedureName">
<el-input
v-model="queryParams.procedureName" placeholder="请输入工序" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="图号" prop="blueprintNo">
<el-input
v-model="queryParams.blueprintNo" placeholder="请输入图号" clearable @keyup.enter="handleQuery"
v-model="queryParams.purchaseNo" placeholder="采购单号" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item style="margin-left:50px">
@ -166,7 +182,9 @@ const queryParams = reactive({
supplierName:undefined,
boomName:undefined,
blueprintNo:undefined,
procedureName:undefined
procedureName:undefined,
projectCode:undefined,
customerName:undefined,
})
const queryFormRef = ref() //
const exportLoading = ref(false) //

View File

@ -6,31 +6,41 @@
<ContentWrap class="borderxx">
<!-- 搜索工作栏 -->
<el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="120px">
<el-form-item label="采购单号" prop="purchaseNo">
<el-form-item label="项目编码" prop="projectCode">
<el-input
v-model="queryParams.purchaseNo" placeholder="采购单号" clearable @keyup.enter="handleQuery"
v-model="queryParams.projectCode" placeholder="请输入项目编码" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="项目名称" prop="projectName">
<el-input
v-model="queryParams.projectName" placeholder="项目名称" clearable @keyup.enter="handleQuery"
v-model="queryParams.projectName" placeholder="请输入项目名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="客户简称" prop="customerName">
<el-input v-model="queryParams.customerName" placeholder="请输入客户简称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="子项目名称" prop="projectSubName">
<el-input
v-model="queryParams.projectSubName" placeholder="子项目名称" clearable @keyup.enter="handleQuery"
v-model="queryParams.projectSubName" placeholder="请输入子项目名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="零件名称" prop="boomName">
<el-input
v-model="queryParams.boomName" placeholder="请输入零件名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="采购单号" prop="purchaseNo">
<el-input
v-model="queryParams.purchaseNo" placeholder="请输入采购单号" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="供应商" prop="supplierName">
<el-input
v-model="queryParams.supplierName" placeholder="供应商" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="零件" prop="boomName">
<el-input
v-model="queryParams.boomName" placeholder="请输入零件" clearable @keyup.enter="handleQuery"
v-model="queryParams.supplierName" placeholder="请输入供应商" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="图号" prop="blueprintNo">
<el-input
v-model="queryParams.blueprintNo" placeholder="请输入图号" clearable @keyup.enter="handleQuery"
@ -139,6 +149,8 @@ const queryParams = reactive({
supplierName:undefined,
boomName:undefined,
blueprintNo:undefined,
customerName:undefined,
projectCode:undefined
})
const queryFormRef = ref() //
const exportLoading = ref(false) //

View File

@ -11,16 +11,46 @@
<!--v-model="queryParams.purchaseNo" placeholder="采购单号" clearable @keyup.enter="handleQuery"-->
<!-- class="!w-240px" />-->
<!-- </el-form-item>-->
<el-form-item label="项目编码" prop="projectCode">
<el-input
v-model="queryParams.projectCode" placeholder="请输入项目编码" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="项目名称" prop="projectName">
<el-input
v-model="queryParams.projectName" placeholder="项目名称" clearable @keyup.enter="handleQuery"
v-model="queryParams.projectName" placeholder="请输入项目名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="客户简称" prop="customerName">
<el-input
v-model="queryParams.customerName"
placeholder="请输入客户简称"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="子项目名称" prop="projectSubName">
<el-input
v-model="queryParams.projectSubName" placeholder="子项目名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="零件" prop="boomName">
<el-input
v-model="queryParams.boomName" placeholder="请输入零件" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="图号" prop="blueprintNo">
<el-input
v-model="queryParams.blueprintNo" placeholder="请输入图号" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="工序" prop="procedureName">
<el-input
v-model="queryParams.procedureName" placeholder="请输入工序" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="供应商" prop="supplierName">
<el-input
v-model="queryParams.supplierName" placeholder="供应商" clearable @keyup.enter="handleQuery"
@ -38,21 +68,8 @@ v-model="queryParams.supplierName" placeholder="供应商" clearable @keyup.ente
:label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="零件" prop="boomName">
<el-input
v-model="queryParams.boomName" placeholder="请输入零件" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="工序" prop="procedureName">
<el-input
v-model="queryParams.procedureName" placeholder="请输入工序" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="图号" prop="blueprintNo">
<el-input
v-model="queryParams.blueprintNo" placeholder="请输入图号" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item style="margin-left:50px">
<el-button @click="handleQuery" type="primary">
<Icon icon="ep:search" class="mr-5px" /> 搜索
@ -181,7 +198,9 @@ const queryParams = reactive({
supplierName:undefined,
boomName:undefined,
blueprintNo:undefined,
procedureName:undefined
procedureName:undefined,
customerName:undefined,
projectCode:undefined
})
const queryFormRef = ref() //
const exportLoading = ref(false) //

View File

@ -6,27 +6,31 @@
<ContentWrap class="borderxx">
<!-- 搜索工作栏 -->
<el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="120px">
<el-form-item label="项目编码" prop="projectCode">
<el-input
v-model="queryParams.projectCode" placeholder="请输入项目编码" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="项目名称" prop="projectName">
<el-input
v-model="queryParams.projectName" placeholder="项目名称" clearable @keyup.enter="handleQuery"
v-model="queryParams.projectName" placeholder="请输入项目名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="客户简称" prop="customerName">
<el-input v-model="queryParams.customerName" placeholder="请输入客户简称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="子项目名称" prop="projectSubName">
<el-input
v-model="queryParams.projectSubName" placeholder="子项目名称" clearable @keyup.enter="handleQuery"
v-model="queryParams.projectSubName" placeholder="请输入子项目名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="零件名称" prop="boomName">
<el-input
v-model="queryParams.boomName" placeholder="零件名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="项目编码" prop="projectCode">
<el-input
v-model="queryParams.projectCode" placeholder="项目编码" clearable @keyup.enter="handleQuery"
v-model="queryParams.boomName" placeholder="请输入零件名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="订单状态" prop="receivingStatus">
<el-select v-model="queryParams.receivingStatus" placeholder="下拉选择" clearable class="!w-240px">
<el-option
@ -176,7 +180,8 @@ const queryParams = reactive({
projectSubName:undefined,
supplierName:undefined,
boomName:undefined,
projectCode:undefined
projectCode:undefined,
customerName:undefined
})
const queryFormRef = ref() //
const exportLoading = ref(false) //

View File

@ -6,24 +6,38 @@
<ContentWrap class="borderxx">
<!-- 搜索工作栏 -->
<el-form class="-mb-15px" :model="queryParams" ref="storageNo" :inline="true" label-width="120px">
<el-form-item label="入库单号" prop="storageNo">
<el-form-item label="项目编码" prop="projectCode">
<el-input
v-model="queryParams.purchaseNo" placeholder="入库单号" clearable @keyup.enter="handleQuery"
v-model="queryParams.projectCode" placeholder="请输入项目编码" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="项目名称" prop="projectName">
<el-input
v-model="queryParams.projectName" placeholder="项目名称" clearable @keyup.enter="handleQuery"
v-model="queryParams.projectName" placeholder="请输入项目名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="客户简称" prop="customerName">
<el-input v-model="queryParams.customerName" placeholder="请输入客户简称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="子项目名称" prop="projectSubName">
<el-input
v-model="queryParams.projectSubName" placeholder="子项目名称" clearable @keyup.enter="handleQuery"
v-model="queryParams.projectSubName" placeholder="请输入子项目名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="零件名称" prop="boomName">
<el-input
v-model="queryParams.boomName" placeholder="请输入零件名称" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="入库单号" prop="storageNo">
<el-input
v-model="queryParams.purchaseNo" placeholder="请输入入库单号" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="供应商" prop="supplierName">
<el-input
v-model="queryParams.supplierName" placeholder="供应商" clearable @keyup.enter="handleQuery"
v-model="queryParams.supplierName" placeholder="请输入供应商" clearable @keyup.enter="handleQuery"
class="!w-240px" />
</el-form-item>
<el-form-item label="入库单类型" prop="goodType">
@ -135,7 +149,9 @@ const queryParams = reactive({
projectName:undefined,
projectSubName:undefined,
username:username,
supplierName:undefined
supplierName:undefined,
projectCode:undefined,
boomName:undefined,
})
const queryFormRef = ref() //

View File

@ -39,10 +39,10 @@
class="!w-240px"
/>
</el-form-item>
<el-form-item label="客户称" prop="customerName">
<el-form-item label="客户称" prop="customerName">
<el-input
v-model="queryParams.customerName"
placeholder="请输入客户称"
placeholder="请输入客户称"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
@ -111,7 +111,7 @@
</el-table-column>
<el-table-column fixed label="生产计划单号" align="center" prop="planCode" width="180" />
<el-table-column label="项目编号" align="center" prop="projectCode" width="220" />
<el-table-column label="客户称" align="center" prop="customerName" width="240"/>
<el-table-column label="客户称" align="center" prop="customerName" width="240"/>
<el-table-column label="项目名称" align="center" prop="projectName" width="180" />
<el-table-column label="项目结束日期" align="center" prop="projectEndTime" :formatter="dateFormatter2" width="180"/>
<el-table-column label="子项目名称" align="center" prop="projectSubName" width="180" />

View File

@ -871,13 +871,15 @@ const clearWatches = () => {
};
const emit = defineEmits(['success'])
const handleClose = (done: () => void) => {
ElMessageBox.confirm('是否退出?')
.then(() => {
dialogVisible.value=false;
emit('success');
})
.catch(() => {
})
dialogVisible.value=false;
emit('success');
// ElMessageBox.confirm('退?')
// .then(() => {
// dialogVisible.value=false;
// emit('success');
// })
// .catch(() => {
// })
}
const dispatchTypeHasChange = (row) =>{
if(row.dispatchType == 1){

View File

@ -6,38 +6,41 @@
<ContentWrap class="borderxx">
<!-- 搜索工作栏 -->
<el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="120px">
<el-form-item label="生产派工单号" prop="code">
<el-input v-model="queryParams.code" placeholder="请输入生产派工单号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="生产任务单号" prop="taskCode">
<el-input v-model="queryParams.taskCode" placeholder="请输入生产任务单号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="项目编号" prop="projectCode">
<el-input v-model="queryParams.projectCode" placeholder="请输入项目编号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="客户名称" prop="customerName">
<el-input v-model="queryParams.customerName" placeholder="请输入客户名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="项目名称" prop="projectName">
<el-input v-model="queryParams.projectName" placeholder="请输入项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="客户简称" prop="customerName">
<el-input v-model="queryParams.customerName" placeholder="请输入客户简称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="子项目名称" prop="projectSubName">
<el-input v-model="queryParams.projectSubName" placeholder="请输入子项目名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="子项目编号" prop="projectSubCode">
<el-input v-model="queryParams.projectSubCode" placeholder="请输入子项目编号" clearable @keyup.enter="handleQuery" class="!w-240px" />
<el-form-item label="零件名称" prop="boomName">
<el-input v-model="queryParams.boomName" placeholder="请输入零件名称" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="图号" prop="blueprintNo">
<el-input v-model="queryParams.blueprintNo" placeholder="请输入图号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="单据状态" prop="dispatchStatus">
<el-select v-model="queryParams.dispatchStatus" placeholder="请选择单据状态" clearable class="!w-240px">
<el-option v-for="dict in getIntDictOptions(DICT_TYPE.HELI_DISPATCH_PRODUCTION_STATUS)" :key="dict.value" :label="dict.label" :value="dict.value" />
</el-select>
</el-form-item>
<el-form-item label="生产派工单号" prop="code">
<el-input v-model="queryParams.code" placeholder="请输入生产派工单号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="生产任务单号" prop="taskCode">
<el-input v-model="queryParams.taskCode" placeholder="请输入生产任务单号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="子项目编号" prop="projectSubCode">
<el-input v-model="queryParams.projectSubCode" placeholder="请输入子项目编号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="任务负责人" prop="ownerName">
<el-input v-model="queryParams.ownerName" placeholder="请输入任务负责人" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item label="图号" prop="blueprintNo">
<el-input v-model="queryParams.blueprintNo" placeholder="请输入图号" clearable @keyup.enter="handleQuery" class="!w-240px" />
</el-form-item>
<el-form-item>
<el-button @click="handleQuery" type="primary">
<Icon icon="ep:search" class="mr-5px" /> 搜索
@ -63,7 +66,7 @@
<dict-tag :type="DICT_TYPE.HELI_MATERIAL_UNIT" :value="scope.row.unit" />
</template>
</el-table-column>
<el-table-column label="客户称" align="center" prop="customerName" width="180px" />
<el-table-column label="客户称" align="center" prop="customerName" width="180px" />
<el-table-column label="项目结束日期" align="center" prop="projectEndTime" :formatter="dateFormatter2" width="160px" />
<el-table-column label="项目名称" align="center" prop="projectName" width="180" />
<el-table-column label="子项目名称" align="center" prop="projectSubName" width="180" />
@ -142,6 +145,7 @@ const queryParams = reactive({
createTime: [],
ownerName: username,
blueprintNo:undefined,
boomName:undefined,
})
const queryFormRef = ref() //
const exportLoading = ref(false) //

View File

@ -46,10 +46,10 @@
/>
</el-form-item>
<el-form-item label="零件号" prop="blueprintNo">
<el-form-item label="号" prop="blueprintNo">
<el-input
v-model="queryParams.blueprintNo"
placeholder="请输入零件号"
placeholder="请输入号"
clearable
@keyup.enter="handleQuery"
class="!w-240px"