Compare commits
2 Commits
972f286896
...
8f323c5038
Author | SHA1 | Date | |
---|---|---|---|
8f323c5038 | |||
00b39b070b |
@ -107,4 +107,16 @@ public class PurchaseOrderMakeController {
|
|||||||
return success(pageResult);
|
return success(pageResult);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PutMapping("/updatePartCheck")
|
||||||
|
@Operation(summary = "更新采购审批通过状态")
|
||||||
|
public CommonResult<Boolean> updatePartCheck(@RequestParam("id") Long id) {
|
||||||
|
return success(partPurchaseOrderService.updatePartCheckStatus(id));
|
||||||
|
}
|
||||||
|
|
||||||
|
@PutMapping("/updatePartCheckNo")
|
||||||
|
@Operation(summary = "更新采购审批驳回状态")
|
||||||
|
public CommonResult<Boolean> updatePartCheckNo(@Valid @RequestBody PurchaseOrderMakeSaveReqVO updateReqVO) {
|
||||||
|
return success(partPurchaseOrderService.updatePartCheckStatusNo(updateReqVO));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -28,11 +28,11 @@ public class PurchaseOrderMakeRespVO {
|
|||||||
|
|
||||||
@Schema(description = "采购单类型,1按物料需求计划采购,2备库采购", example = "1")
|
@Schema(description = "采购单类型,1按物料需求计划采购,2备库采购", example = "1")
|
||||||
@ExcelProperty("采购单类型,1按物料需求计划采购,2备库采购")
|
@ExcelProperty("采购单类型,1按物料需求计划采购,2备库采购")
|
||||||
private Boolean purchaseType;
|
private Integer purchaseType;
|
||||||
|
|
||||||
@Schema(description = "采购物类型,1物料,2加工件", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
@Schema(description = "采购物类型,1物料,2加工件", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||||
@ExcelProperty("采购物类型,1物料,2加工件")
|
@ExcelProperty("采购物类型,1物料,2加工件")
|
||||||
private Boolean goodsType;
|
private Integer goodsType;
|
||||||
|
|
||||||
@Schema(description = "结算币种", example = "2")
|
@Schema(description = "结算币种", example = "2")
|
||||||
@ExcelProperty("结算币种")
|
@ExcelProperty("结算币种")
|
||||||
@ -52,7 +52,7 @@ public class PurchaseOrderMakeRespVO {
|
|||||||
|
|
||||||
@Schema(description = "单据状态,0 待送审,1已送审,2已审核,3已打回 ,默认是1", example = "2")
|
@Schema(description = "单据状态,0 待送审,1已送审,2已审核,3已打回 ,默认是1", example = "2")
|
||||||
@ExcelProperty("单据状态,0 待送审,1已送审,2已审核,3已打回 ,默认是1")
|
@ExcelProperty("单据状态,0 待送审,1已送审,2已审核,3已打回 ,默认是1")
|
||||||
private Boolean status;
|
private Integer status;
|
||||||
|
|
||||||
@Schema(description = "送审人", example = "17514")
|
@Schema(description = "送审人", example = "17514")
|
||||||
@ExcelProperty("送审人")
|
@ExcelProperty("送审人")
|
||||||
|
@ -1,81 +1,84 @@
|
|||||||
package com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermake.vo;
|
package com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermake.vo;
|
||||||
|
|
||||||
import io.swagger.v3.oas.annotations.media.Schema;
|
import io.swagger.v3.oas.annotations.media.Schema;
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import javax.validation.constraints.*;
|
import javax.validation.constraints.*;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import org.springframework.format.annotation.DateTimeFormat;
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
|
|
||||||
@Schema(description = "管理后台 - 采购单主新增/修改 Request VO")
|
@Schema(description = "管理后台 - 采购单主新增/修改 Request VO")
|
||||||
@Data
|
@Data
|
||||||
public class PurchaseOrderMakeSaveReqVO {
|
public class PurchaseOrderMakeSaveReqVO {
|
||||||
|
|
||||||
@Schema(description = "自增字段,唯一", requiredMode = Schema.RequiredMode.REQUIRED, example = "29741")
|
@Schema(description = "自增字段,唯一", requiredMode = Schema.RequiredMode.REQUIRED, example = "29741")
|
||||||
private Long id;
|
private Long id;
|
||||||
|
|
||||||
@Schema(description = "采购单号", requiredMode = Schema.RequiredMode.REQUIRED)
|
@Schema(description = "采购单号", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||||
@NotEmpty(message = "采购单号不能为空")
|
@NotEmpty(message = "采购单号不能为空")
|
||||||
private String purchaseNo;
|
private String purchaseNo;
|
||||||
|
|
||||||
@Schema(description = "采购合同号")
|
@Schema(description = "采购合同号")
|
||||||
private String contractNo;
|
private String contractNo;
|
||||||
|
|
||||||
@Schema(description = "采购单类型,1按物料需求计划采购,2备库采购", example = "1")
|
@Schema(description = "采购单类型,1按物料需求计划采购,2备库采购", example = "1")
|
||||||
private Boolean purchaseType;
|
private Boolean purchaseType;
|
||||||
|
|
||||||
@Schema(description = "采购物类型,1物料,2加工件", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
@Schema(description = "采购物类型,1物料,2加工件", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||||
@NotNull(message = "采购物类型,1物料,2加工件不能为空")
|
@NotNull(message = "采购物类型,1物料,2加工件不能为空")
|
||||||
private Boolean goodsType;
|
private Boolean goodsType;
|
||||||
|
|
||||||
@Schema(description = "结算币种", example = "2")
|
@Schema(description = "结算币种", example = "2")
|
||||||
private Integer currencyType;
|
private Integer currencyType;
|
||||||
|
|
||||||
@Schema(description = "税率")
|
@Schema(description = "税率")
|
||||||
private Integer taxRatio;
|
private Integer taxRatio;
|
||||||
|
|
||||||
@Schema(description = "暂估价金额", example = "13902")
|
@Schema(description = "暂估价金额", example = "13902")
|
||||||
private BigDecimal estimatedPrice;
|
private BigDecimal estimatedPrice;
|
||||||
|
|
||||||
@Schema(description = "实际价金额", example = "14735")
|
@Schema(description = "实际价金额", example = "14735")
|
||||||
private BigDecimal actualPrice;
|
private BigDecimal actualPrice;
|
||||||
|
|
||||||
@Schema(description = "单据状态,0 待送审,1已送审,2已审核,3已打回 ,默认是1", example = "2")
|
@Schema(description = "单据状态,0 待送审,1已送审,2已审核,3已打回 ,默认是1", example = "2")
|
||||||
private Boolean status;
|
private Boolean status;
|
||||||
|
|
||||||
@Schema(description = "送审人", example = "17514")
|
@Schema(description = "送审人", example = "17514")
|
||||||
private Long submitUserId;
|
private Long submitUserId;
|
||||||
|
|
||||||
@Schema(description = "送审时间")
|
@Schema(description = "送审时间")
|
||||||
private LocalDateTime submitTime;
|
private LocalDateTime submitTime;
|
||||||
|
|
||||||
@Schema(description = "审核人")
|
@Schema(description = "审核人")
|
||||||
private Long auditor;
|
private Long auditor;
|
||||||
|
|
||||||
@Schema(description = "审核时间")
|
@Schema(description = "审核时间")
|
||||||
private LocalDateTime auditTime;
|
private LocalDateTime auditTime;
|
||||||
|
|
||||||
@Schema(description = "备注", example = "随便")
|
@Schema(description = "备注", example = "随便")
|
||||||
private String description;
|
private String description;
|
||||||
|
|
||||||
@Schema(description = "订单id", example = "14178")
|
@Schema(description = "订单id", example = "14178")
|
||||||
private Long projectId;
|
private Long projectId;
|
||||||
|
|
||||||
@Schema(description = "生产计划id", example = "707")
|
@Schema(description = "生产计划id", example = "707")
|
||||||
private Long projectPlanId;
|
private Long projectPlanId;
|
||||||
|
|
||||||
@Schema(description = "客户id", example = "20356")
|
@Schema(description = "客户id", example = "20356")
|
||||||
private Long customerId;
|
private Long customerId;
|
||||||
|
|
||||||
@Schema(description = "客户简称")
|
@Schema(description = "客户简称")
|
||||||
private String brief;
|
private String brief;
|
||||||
|
|
||||||
@Schema(description = "项目名称", example = "芋艿")
|
@Schema(description = "项目名称", example = "芋艿")
|
||||||
private String projectName;
|
private String projectName;
|
||||||
|
|
||||||
@Schema(description = "项目名称简码")
|
@Schema(description = "项目名称简码")
|
||||||
private String projectNameSim;
|
private String projectNameSim;
|
||||||
|
|
||||||
}
|
@Schema(description = "驳回原因")
|
||||||
|
private String reason;
|
||||||
|
|
||||||
|
}
|
||||||
|
@ -34,7 +34,6 @@ public class PurchaseOrderMakeDetailDO extends BaseDO {
|
|||||||
*/
|
*/
|
||||||
@TableId
|
@TableId
|
||||||
private Long id;
|
private Long id;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 采购单id
|
* 采购单id
|
||||||
*/
|
*/
|
||||||
@ -47,9 +46,6 @@ public class PurchaseOrderMakeDetailDO extends BaseDO {
|
|||||||
* 零件名称
|
* 零件名称
|
||||||
*/
|
*/
|
||||||
private String boomName;
|
private String boomName;
|
||||||
|
|
||||||
@TableField(exist = false)
|
|
||||||
private String boomCode;
|
|
||||||
/**
|
/**
|
||||||
* 规格型号
|
* 规格型号
|
||||||
*/
|
*/
|
||||||
@ -94,13 +90,10 @@ public class PurchaseOrderMakeDetailDO extends BaseDO {
|
|||||||
* 供应商id
|
* 供应商id
|
||||||
*/
|
*/
|
||||||
private Long supplierId;
|
private Long supplierId;
|
||||||
@TableField(exist = false)
|
|
||||||
private String supplierName;
|
|
||||||
/**
|
/**
|
||||||
* 物料需求计划id
|
* 物料需求计划id
|
||||||
*/
|
*/
|
||||||
private Long projectMaterialPlanId;
|
private Long projectMaterialPlanId;
|
||||||
private Long materialId;
|
|
||||||
/**
|
/**
|
||||||
* 物料需求计划子项目id
|
* 物料需求计划子项目id
|
||||||
*/
|
*/
|
||||||
@ -128,7 +121,6 @@ public class PurchaseOrderMakeDetailDO extends BaseDO {
|
|||||||
/**
|
/**
|
||||||
* 订单状态 未生成/已生成 1/2
|
* 订单状态 未生成/已生成 1/2
|
||||||
*/
|
*/
|
||||||
@TableField( "order_status")
|
|
||||||
private Integer orderStatus;
|
private Integer orderStatus;
|
||||||
/**
|
/**
|
||||||
* 子项目编码
|
* 子项目编码
|
||||||
|
@ -40,7 +40,6 @@ public interface PurchaseOrderMakeDetailMapper extends BaseMapperX<PurchaseOrder
|
|||||||
.select("b.material_name as boomName","m.code as boomCode","b.spec as boomSpec","b.unit as boomUnit")
|
.select("b.material_name as boomName","m.code as boomCode","b.spec as boomSpec","b.unit as boomUnit")
|
||||||
.select("pom.purchase_no as purchaseNo")
|
.select("pom.purchase_no as purchaseNo")
|
||||||
.leftJoin(ProcessBomDetailDO.class,"b",ProcessBomDetailDO::getId,PurchaseOrderMakeDetailDO::getBoomDetailId)
|
.leftJoin(ProcessBomDetailDO.class,"b",ProcessBomDetailDO::getId,PurchaseOrderMakeDetailDO::getBoomDetailId)
|
||||||
.leftJoin(MaterialDO.class,"m",MaterialDO::getId,PurchaseOrderMakeDetailDO::getMaterialId)
|
|
||||||
.leftJoin(ProjectOrderSubDO.class,"pos",ProjectOrderSubDO::getId,PurchaseOrderMakeDetailDO::getProjectPlanSubId)
|
.leftJoin(ProjectOrderSubDO.class,"pos",ProjectOrderSubDO::getId,PurchaseOrderMakeDetailDO::getProjectPlanSubId)
|
||||||
.leftJoin(ProjectOrderDO.class,"po",ProjectOrderDO::getId, ProjectOrderSubDO::getProjectOrderId)
|
.leftJoin(ProjectOrderDO.class,"po",ProjectOrderDO::getId, ProjectOrderSubDO::getProjectOrderId)
|
||||||
.leftJoin(PurchaseOrderMakeDO.class,"pom",PurchaseOrderMakeDO::getId,PurchaseOrderMakeDetailDO::getPurchaseOrderId)
|
.leftJoin(PurchaseOrderMakeDO.class,"pom",PurchaseOrderMakeDO::getId,PurchaseOrderMakeDetailDO::getPurchaseOrderId)
|
||||||
@ -98,7 +97,7 @@ public interface PurchaseOrderMakeDetailMapper extends BaseMapperX<PurchaseOrder
|
|||||||
.like(Objects.nonNull(pageReqVO.getOwnerName()), AdminUserDO::getNickname, pageReqVO.getOwnerName())
|
.like(Objects.nonNull(pageReqVO.getOwnerName()), AdminUserDO::getNickname, pageReqVO.getOwnerName())
|
||||||
.like(Objects.nonNull(pageReqVO.getSupplierName()), SupplierDO::getName, pageReqVO.getSupplierName());
|
.like(Objects.nonNull(pageReqVO.getSupplierName()), SupplierDO::getName, pageReqVO.getSupplierName());
|
||||||
|
|
||||||
System.out.println(query.getTargetSql());
|
String sqlStr= query.getTargetSql();
|
||||||
|
|
||||||
PageResult<PartPurchaseOrderPageRespVO> pageResult = selectJoinPage(pageReqVO, PartPurchaseOrderPageRespVO.class, query);
|
PageResult<PartPurchaseOrderPageRespVO> pageResult = selectJoinPage(pageReqVO, PartPurchaseOrderPageRespVO.class, query);
|
||||||
return pageResult;
|
return pageResult;
|
||||||
|
@ -4,6 +4,7 @@ import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
|||||||
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermake.vo.PartPurchaseOrderPageReqVO;
|
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.PartPurchaseOrderPageRespVO;
|
||||||
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermake.vo.PurchaseOrderMakePageReqVO;
|
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermake.vo.PurchaseOrderMakePageReqVO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermake.vo.PurchaseOrderMakeSaveReqVO;
|
||||||
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermakedetail.vo.PurchaseOrderMakeDetailRespVO;
|
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermakedetail.vo.PurchaseOrderMakeDetailRespVO;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.purchaseordermake.PurchaseOrderMakeDO;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.purchaseordermake.PurchaseOrderMakeDO;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.purchaseordermakedetail.PurchaseOrderMakeDetailDO;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.purchaseordermakedetail.PurchaseOrderMakeDetailDO;
|
||||||
@ -31,4 +32,28 @@ public interface PartPurchaseOrderService {
|
|||||||
* @return 零件采购订单生成信息提交
|
* @return 零件采购订单生成信息提交
|
||||||
*/
|
*/
|
||||||
boolean submit(List<PartPurchaseOrderPageRespVO> list);
|
boolean submit(List<PartPurchaseOrderPageRespVO> list);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获得零件采购单审批分页
|
||||||
|
*
|
||||||
|
* @param pageReqVO 分页查询
|
||||||
|
* @return 零件采购单审批分页
|
||||||
|
*/
|
||||||
|
PageResult<PartPurchaseOrderPageRespVO> getPartPurchaseOrderCheckPage(PartPurchaseOrderPageReqVO pageReqVO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新采购单审批状态为通过
|
||||||
|
*
|
||||||
|
* @param id
|
||||||
|
* @return 更新采购单审批状态
|
||||||
|
*/
|
||||||
|
boolean updatePartCheckStatus(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 更新采购单审批状态为驳回
|
||||||
|
*
|
||||||
|
* @param id
|
||||||
|
* @return 更新采购单审批状态
|
||||||
|
*/
|
||||||
|
boolean updatePartCheckStatusNo(PurchaseOrderMakeSaveReqVO updateReqVO);
|
||||||
}
|
}
|
||||||
|
@ -1,14 +1,20 @@
|
|||||||
package com.chanko.yunxi.mes.module.heli.service.partpurchaseorder;
|
package com.chanko.yunxi.mes.module.heli.service.partpurchaseorder;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
import com.chanko.yunxi.mes.framework.common.util.object.BeanUtils;
|
||||||
|
import com.chanko.yunxi.mes.framework.mybatis.core.query.QueryWrapperX;
|
||||||
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermake.vo.PartPurchaseOrderPageReqVO;
|
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.PartPurchaseOrderPageRespVO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermake.vo.PurchaseOrderMakeSaveReqVO;
|
||||||
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermakedetail.vo.PurchaseOrderMakeDetailRespVO;
|
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermakedetail.vo.PurchaseOrderMakeDetailRespVO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.materialplanboom.MaterialPlanBoomDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.purchaseordermake.PurchaseOrderMakeDO;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.purchaseordermakedetail.PurchaseOrderMakeDetailDO;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.purchaseordermakedetail.PurchaseOrderMakeDetailDO;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.purchaseorderno.PurchaseOrderNoDO;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.purchaseorderno.PurchaseOrderNoDO;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.purchaseordernodetail.PurchaseOrderNoDetailDO;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.purchaseordernodetail.PurchaseOrderNoDetailDO;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.dataobject.serialnumber.SerialNumberDO;
|
import com.chanko.yunxi.mes.module.heli.dal.dataobject.serialnumber.SerialNumberDO;
|
||||||
|
import com.chanko.yunxi.mes.module.heli.dal.mysql.materialplanboom.MaterialPlanBoomMapper;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.mysql.purchaseordermake.PurchaseOrderMakeMapper;
|
import com.chanko.yunxi.mes.module.heli.dal.mysql.purchaseordermake.PurchaseOrderMakeMapper;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.mysql.purchaseordermakedetail.PurchaseOrderMakeDetailMapper;
|
import com.chanko.yunxi.mes.module.heli.dal.mysql.purchaseordermakedetail.PurchaseOrderMakeDetailMapper;
|
||||||
import com.chanko.yunxi.mes.module.heli.dal.mysql.purchaseorderno.PurchaseOrderNoMapper;
|
import com.chanko.yunxi.mes.module.heli.dal.mysql.purchaseorderno.PurchaseOrderNoMapper;
|
||||||
@ -39,6 +45,8 @@ public class PartPurchaseOrderServiceImpl implements PartPurchaseOrderService{
|
|||||||
private PurchaseOrderNoDetailMapper purchaseOrderNoDetailMapper;
|
private PurchaseOrderNoDetailMapper purchaseOrderNoDetailMapper;
|
||||||
@Resource
|
@Resource
|
||||||
private SerialNumberService serialNumberService;
|
private SerialNumberService serialNumberService;
|
||||||
|
@Resource
|
||||||
|
private MaterialPlanBoomMapper materialPlanBoomMapper;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public PageResult<PartPurchaseOrderPageRespVO> getPartPurchaseOrderPage(PartPurchaseOrderPageReqVO pageReqVO) {
|
public PageResult<PartPurchaseOrderPageRespVO> getPartPurchaseOrderPage(PartPurchaseOrderPageReqVO pageReqVO) {
|
||||||
@ -90,4 +98,57 @@ public class PartPurchaseOrderServiceImpl implements PartPurchaseOrderService{
|
|||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PageResult<PartPurchaseOrderPageRespVO> getPartPurchaseOrderCheckPage(PartPurchaseOrderPageReqVO pageReqVO) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean updatePartCheckStatus(Long id) {
|
||||||
|
PurchaseOrderMakeDO purchaseOrderMakeDO = new PurchaseOrderMakeDO();
|
||||||
|
purchaseOrderMakeDO.setId(id);
|
||||||
|
purchaseOrderMakeDO.setStatus(2);
|
||||||
|
purchaseOrderMakeMapper.updateById(purchaseOrderMakeDO);
|
||||||
|
|
||||||
|
List<MaterialPlanBoomDO> materialPlanBoomDOs= materialPlanBoomMapper.selectList("project_purchase_order_make_id", id);
|
||||||
|
materialPlanBoomDOs.forEach(materialPlanBoomDO -> {
|
||||||
|
MaterialPlanBoomDO materialPlanBoom = new MaterialPlanBoomDO();
|
||||||
|
materialPlanBoom.setId(materialPlanBoomDO.getId());
|
||||||
|
materialPlanBoom.setMplanStatus(2);
|
||||||
|
materialPlanBoomMapper.updateById(materialPlanBoom);
|
||||||
|
});
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean updatePartCheckStatusNo(PurchaseOrderMakeSaveReqVO updateReqVO) {
|
||||||
|
PurchaseOrderMakeDO purchaseOrderMakeDO = new PurchaseOrderMakeDO();
|
||||||
|
purchaseOrderMakeDO.setId(updateReqVO.getId());
|
||||||
|
purchaseOrderMakeDO.setStatus(3);
|
||||||
|
purchaseOrderMakeDO.setDeleted(true);
|
||||||
|
purchaseOrderMakeMapper.updateById(purchaseOrderMakeDO);
|
||||||
|
|
||||||
|
List<PurchaseOrderMakeDetailDO> list= purchaseOrderMakeDetailMapper.selectList("purchase_order_id", updateReqVO.getId());
|
||||||
|
list.forEach(detailDO -> {
|
||||||
|
PurchaseOrderNoDetailDO purchaseOrderNoDetailDO = new PurchaseOrderNoDetailDO();
|
||||||
|
purchaseOrderNoDetailDO.setId(detailDO.getPurchaseOrderNoDetailId());
|
||||||
|
purchaseOrderNoDetailDO.setDeleted(true);
|
||||||
|
purchaseOrderNoDetailMapper.updateById(purchaseOrderNoDetailDO);
|
||||||
|
});
|
||||||
|
|
||||||
|
List<MaterialPlanBoomDO> materialPlanBoomDOs= materialPlanBoomMapper.selectList("project_purchase_order_make_id", updateReqVO.getId());
|
||||||
|
materialPlanBoomDOs.forEach(materialPlanBoom -> {
|
||||||
|
UpdateWrapper<MaterialPlanBoomDO> updateWrapper = new UpdateWrapper<>();
|
||||||
|
updateWrapper.eq("id", materialPlanBoom.getId())
|
||||||
|
.set("mplan_status", 3)
|
||||||
|
.set("project_purchase_order_make_id", null)
|
||||||
|
.set("purchase_no", null)
|
||||||
|
.set("project_purchase_order_make_detail_id", null)
|
||||||
|
.set("rej_remark", updateReqVO.getReason());
|
||||||
|
materialPlanBoomMapper.update(updateWrapper);
|
||||||
|
});
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -91,7 +91,6 @@ public class PurchaseOrderMakeDetailServiceImpl implements PurchaseOrderMakeDeta
|
|||||||
pd.setPurchaseOrderId(purchaseOrderNoDO.getId());
|
pd.setPurchaseOrderId(purchaseOrderNoDO.getId());
|
||||||
pd.setBoomDetailId(pmd.getBoomDetailId());
|
pd.setBoomDetailId(pmd.getBoomDetailId());
|
||||||
pd.setBoomName(pmd.getBoomName());
|
pd.setBoomName(pmd.getBoomName());
|
||||||
pd.setMaterialId(pmd.getMaterialId());
|
|
||||||
pd.setBoomSpec(pmd.getBoomSpec());
|
pd.setBoomSpec(pmd.getBoomSpec());
|
||||||
pd.setBoomUnit(pmd.getBoomUnit());
|
pd.setBoomUnit(pmd.getBoomUnit());
|
||||||
pd.setComposition(pmd.getComposition());
|
pd.setComposition(pmd.getComposition());
|
||||||
|
@ -16,7 +16,7 @@ export interface PartPurchaseOrderVO {
|
|||||||
description: string
|
description: string
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询零件采购订单计划分页
|
// 获取零件采购订单生成分页
|
||||||
export const getPartPage = async (params) => {
|
export const getPartPage = async (params) => {
|
||||||
return await request.get({ url: `/heli/purchase-order-make/getPartPurchaseOrderPage`, params })
|
return await request.get({ url: `/heli/purchase-order-make/getPartPurchaseOrderPage`, params })
|
||||||
}
|
}
|
||||||
@ -25,7 +25,23 @@ export const submitForm = async (data) => {
|
|||||||
return await request.post({ url: `/heli/purchase-order-no/submit`, data })
|
return await request.post({ url: `/heli/purchase-order-no/submit`, data })
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询采购单主分页
|
// 获取零件采购单审批分页
|
||||||
|
export const getPartCheckPage = async (params) => {
|
||||||
|
return await request.get({ url: `/heli/purchase-order-make/page`, params })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 查询采购单主
|
||||||
export const getPurchaseOrderMake = async (id: number) => {
|
export const getPurchaseOrderMake = async (id: number) => {
|
||||||
return await request.get({ url: `/heli/purchase-order-make/get?id=` + id })
|
return await request.get({ url: `/heli/purchase-order-make/get?id=` + id })
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 更新采购单主批准
|
||||||
|
export const updatePurchaseOrderMake = async (id: number) => {
|
||||||
|
return await request.put({ url: `/heli/purchase-order-make/updatePartCheck?id=` + id })
|
||||||
|
}
|
||||||
|
|
||||||
|
// 更新采购单主驳回
|
||||||
|
export const updatePurchaseOrderMakeNo = async (params) => {
|
||||||
|
return await request.put({ url: `/heli/purchase-order-make/updatePartCheckNo`, params })
|
||||||
|
}
|
||||||
|
|
||||||
|
@ -60,8 +60,8 @@
|
|||||||
</el-card>
|
</el-card>
|
||||||
</el-form>
|
</el-form>
|
||||||
<div class="hl-footer text-center">
|
<div class="hl-footer text-center">
|
||||||
<el-button @click="closeForm" size="large">批 准</el-button>
|
<el-button @click="approve(formData.contractNo)" size="large">批 准</el-button>
|
||||||
<el-button @click="closeForm" size="large">驳 回</el-button>
|
<el-button @click="handleReject" size="large">驳 回</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
@ -87,7 +87,8 @@ import { useTagsViewStore } from '@/store/modules/tagsView'
|
|||||||
import MaterialSelect from '@/views/heli/hlvuestyle/materialSelect.vue'
|
import MaterialSelect from '@/views/heli/hlvuestyle/materialSelect.vue'
|
||||||
import booms from './boom.vue'
|
import booms from './boom.vue'
|
||||||
import * as PartPurchaseOrderApi from "@/api/heli/partpurchaseorder";
|
import * as PartPurchaseOrderApi from "@/api/heli/partpurchaseorder";
|
||||||
import {getPartPage} from "@/api/heli/partpurchaseorder";
|
import { ElMessageBox } from 'element-plus'
|
||||||
|
import { ref } from 'vue'
|
||||||
|
|
||||||
const reload: any = inject('reload')
|
const reload: any = inject('reload')
|
||||||
const { t } = useI18n() // 国际化
|
const { t } = useI18n() // 国际化
|
||||||
@ -122,10 +123,40 @@ const loading = ref(true) // 列表的加载中
|
|||||||
const total = ref(0) // 列表的总页数
|
const total = ref(0) // 列表的总页数
|
||||||
const subBoomFormLoading = ref(false)
|
const subBoomFormLoading = ref(false)
|
||||||
const subBoomFormRef = ref()
|
const subBoomFormRef = ref()
|
||||||
|
const updateParams = reactive({
|
||||||
|
id: formData.value.id,
|
||||||
|
reason: undefined
|
||||||
|
})
|
||||||
|
|
||||||
|
const approve = async (contractNo: string) => {
|
||||||
|
await PartPurchaseOrderApi.updatePurchaseOrderMake(formData.value.id)
|
||||||
|
}
|
||||||
|
|
||||||
|
const handleReject = async () => {
|
||||||
|
try {
|
||||||
|
const { value, action } = await ElMessageBox.prompt('请输入驳回原因', '提示', {
|
||||||
|
confirmButtonText: '确定',
|
||||||
|
cancelButtonText: '取消',
|
||||||
|
inputPattern: /.+/, // 至少输入一个字符
|
||||||
|
inputErrorMessage: '内容不能为空'
|
||||||
|
})
|
||||||
|
|
||||||
|
if (action === 'confirm') {
|
||||||
|
reject(value) // 将输入内容传入 reject 方法
|
||||||
|
}
|
||||||
|
} catch (err) {
|
||||||
|
// 用户点击取消或输入不合法时会进入这里
|
||||||
|
console.log('操作取消或输入无效')
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 假设这是你要调用的 reject 方法
|
||||||
|
const reject = async(reason) => {
|
||||||
|
console.log('驳回原因:', reason)
|
||||||
|
updateParams.reason = reason
|
||||||
|
// 这里可以执行提交驳回逻辑
|
||||||
|
await PartPurchaseOrderApi.updatePurchaseOrderMakeNo(updateParams)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
const closeForm = async () => {
|
const closeForm = async () => {
|
||||||
|
@ -48,27 +48,43 @@
|
|||||||
<el-table-column label="序号" type="index" align="center" fixed min-width="70px" />
|
<el-table-column label="序号" type="index" align="center" fixed min-width="70px" />
|
||||||
<el-table-column label="采购单号" align="center" prop="contractNo" min-width="180" fixed>
|
<el-table-column label="采购单号" align="center" prop="contractNo" min-width="180" fixed>
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button text type="primary" @click="openForm('detail', scope.row.purchaseOrderId)">
|
<el-button text type="primary" @click="openForm('detail', scope.row.id)">
|
||||||
{{ scope.row.contractNo }}
|
{{ scope.row.contractNo }}
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="采购单类型" align="center" prop="goodsType" min-width="180px" />
|
<el-table-column label="采购单类型" align="center" prop="goodsType" min-width="180px" >
|
||||||
|
<template #default="scope">
|
||||||
|
{{
|
||||||
|
getIntDictOptions(DICT_TYPE.HELI_PART_PURCHASE_ORDER_TYPE).find(
|
||||||
|
(dict) => dict.value === scope.row.goodsType
|
||||||
|
)?.label || '未知状态'
|
||||||
|
}}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
<el-table-column label="客户简码" align="center" prop="brief" min-width="180px" />
|
<el-table-column label="客户简码" align="center" prop="brief" min-width="180px" />
|
||||||
<el-table-column label="项目名称" align="center" prop="projectName" min-width="180px" />
|
<el-table-column label="项目名称" align="center" prop="projectName" min-width="180px" />
|
||||||
<el-table-column label="项目简码" align="center" prop="projectNameSim" min-width="180px" />
|
<el-table-column label="项目简码" align="center" prop="projectNameSim" min-width="180px" />
|
||||||
<el-table-column label="单据状态" align="center" prop="status" min-width="180px" />
|
<el-table-column label="单据状态" align="center" prop="status" min-width="180px" >
|
||||||
|
<template #default="scope">
|
||||||
|
{{
|
||||||
|
getIntDictOptions(DICT_TYPE.HELI_DOCUMENT_STATUS).find(
|
||||||
|
(dict) => dict.value === scope.row.status
|
||||||
|
)?.label || '未知状态'
|
||||||
|
}}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
<el-table-column label="操作" align="center" fixed="right" min-width="180">
|
<el-table-column label="操作" align="center" fixed="right" min-width="180">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<el-button
|
<el-button
|
||||||
v-if="scope.row.status === 1"
|
v-if="scope.row.status === 1"
|
||||||
link
|
link
|
||||||
type="primary"
|
type="primary"
|
||||||
@click="openForm('detail', scope.row.purchaseOrderId)"
|
@click="openForm('detail', scope.row.id)"
|
||||||
>
|
>
|
||||||
去审核
|
去审核
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button link type="primary" @click="openForm('detail', scope.row.purchaseOrderId)">
|
<el-button link type="primary" @click="openForm('detail', scope.row.id)">
|
||||||
查看详情
|
查看详情
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
@ -88,6 +104,7 @@ import {DICT_TYPE, getIntDictOptions} from '@/utils/dict'
|
|||||||
import { dateFormatter1} from '@/utils/formatTime'
|
import { dateFormatter1} from '@/utils/formatTime'
|
||||||
import * as MaterialPlanApi from '@/api/heli/materialplan'
|
import * as MaterialPlanApi from '@/api/heli/materialplan'
|
||||||
import * as PartPurchaseOrderApi from "@/api/heli/partpurchaseorder";
|
import * as PartPurchaseOrderApi from "@/api/heli/partpurchaseorder";
|
||||||
|
import {getPartCheckPage} from "@/api/heli/partpurchaseorder";
|
||||||
|
|
||||||
|
|
||||||
defineOptions({ name: 'MaterialPlan' })
|
defineOptions({ name: 'MaterialPlan' })
|
||||||
@ -125,7 +142,7 @@ const exportLoading = ref(false) // 导出的加载中
|
|||||||
const getList = async () => {
|
const getList = async () => {
|
||||||
loading.value = true
|
loading.value = true
|
||||||
try {
|
try {
|
||||||
const data = await PartPurchaseOrderApi.getPartPage(queryParams)
|
const data = await PartPurchaseOrderApi.getPartCheckPage(queryParams)
|
||||||
list.value = data.list
|
list.value = data.list
|
||||||
total.value = data.total
|
total.value = data.total
|
||||||
} finally {
|
} finally {
|
||||||
|
Loading…
Reference in New Issue
Block a user