零件采购单审批
This commit is contained in:
parent
9284906254
commit
ee8e60d024
@ -2,10 +2,14 @@ package com.chanko.yunxi.mes.module.heli.dal.mysql.purchaseordermake;
|
|||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
|
|
||||||
|
import cn.smallbun.screw.core.util.ArrayUtils;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
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.query.LambdaQueryWrapperX;
|
||||||
import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
|
import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
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.supplier.SupplierDO;
|
||||||
|
import com.github.yulichang.wrapper.MPJLambdaWrapper;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermake.vo.*;
|
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermake.vo.*;
|
||||||
|
|
||||||
@ -43,4 +47,50 @@ public interface PurchaseOrderMakeMapper extends BaseMapperX<PurchaseOrderMakeDO
|
|||||||
.orderByDesc(PurchaseOrderMakeDO::getId));
|
.orderByDesc(PurchaseOrderMakeDO::getId));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
default PageResult<PurchaseOrderMakeDO> selectJoinPage(PurchaseOrderMakePageReqVO reqVO) {
|
||||||
|
// 引入 MPJLambdaWrapper(MyBatis-Plus-Join 提供)
|
||||||
|
MPJLambdaWrapper<PurchaseOrderMakeDO> wrapper = new MPJLambdaWrapper<>();
|
||||||
|
|
||||||
|
// 构建查询条件
|
||||||
|
wrapper
|
||||||
|
.selectAll(PurchaseOrderMakeDO.class) // 查询主表所有字段
|
||||||
|
|
||||||
|
.leftJoin(PurchaseOrderMakeDetailDO.class, "a", PurchaseOrderMakeDetailDO::getPurchaseOrderId, PurchaseOrderMakeDO::getId)
|
||||||
|
.like(Objects.nonNull(reqVO.getProjectSubName()), PurchaseOrderMakeDetailDO::getName, reqVO.getProjectSubName())
|
||||||
|
|
||||||
|
.leftJoin(SupplierDO.class, "b", SupplierDO::getId, PurchaseOrderMakeDetailDO::getSupplierId)
|
||||||
|
.like(Objects.nonNull(reqVO.getSupplierName()), SupplierDO::getName, reqVO.getSupplierName())
|
||||||
|
|
||||||
|
// eqIfPresent 替换为 eq 方法,并结合 Objects.nonNull 判断
|
||||||
|
.eq(Objects.nonNull(reqVO.getPurchaseNo()), PurchaseOrderMakeDO::getPurchaseNo, reqVO.getPurchaseNo())
|
||||||
|
.eq(Objects.nonNull(reqVO.getContractNo()), PurchaseOrderMakeDO::getContractNo, reqVO.getContractNo())
|
||||||
|
.eq(Objects.nonNull(reqVO.getPurchaseType()), PurchaseOrderMakeDO::getPurchaseType, reqVO.getPurchaseType())
|
||||||
|
.eq(Objects.nonNull(reqVO.getGoodsType()), PurchaseOrderMakeDO::getGoodsType, reqVO.getGoodsType())
|
||||||
|
.eq(Objects.nonNull(reqVO.getCurrencyType()), PurchaseOrderMakeDO::getCurrencyType, reqVO.getCurrencyType())
|
||||||
|
.eq(Objects.nonNull(reqVO.getTaxRatio()), PurchaseOrderMakeDO::getTaxRatio, reqVO.getTaxRatio())
|
||||||
|
.eq(Objects.nonNull(reqVO.getEstimatedPrice()), PurchaseOrderMakeDO::getEstimatedPrice, reqVO.getEstimatedPrice())
|
||||||
|
.eq(Objects.nonNull(reqVO.getActualPrice()), PurchaseOrderMakeDO::getActualPrice, reqVO.getActualPrice())
|
||||||
|
.eq(Objects.nonNull(reqVO.getStatus()), PurchaseOrderMakeDO::getStatus, reqVO.getStatus())
|
||||||
|
.eq(Objects.nonNull(reqVO.getSubmitUserId()), PurchaseOrderMakeDO::getSubmitUserId, reqVO.getSubmitUserId())
|
||||||
|
|
||||||
|
.eq(Objects.nonNull(reqVO.getAuditor()), PurchaseOrderMakeDO::getAuditor, reqVO.getAuditor())
|
||||||
|
|
||||||
|
.eq(Objects.nonNull(reqVO.getDescription()), PurchaseOrderMakeDO::getDescription, reqVO.getDescription())
|
||||||
|
|
||||||
|
.eq(Objects.nonNull(reqVO.getProjectId()), PurchaseOrderMakeDO::getProjectId, reqVO.getProjectId())
|
||||||
|
.eq(Objects.nonNull(reqVO.getProjectPlanId()), PurchaseOrderMakeDO::getProjectPlanId, reqVO.getProjectPlanId())
|
||||||
|
.eq(Objects.nonNull(reqVO.getCustomerId()), PurchaseOrderMakeDO::getCustomerId, reqVO.getCustomerId())
|
||||||
|
.eq(Objects.nonNull(reqVO.getBrief()), PurchaseOrderMakeDO::getBrief, reqVO.getBrief())
|
||||||
|
|
||||||
|
// likeIfPresent 替换为 like
|
||||||
|
.like(Objects.nonNull(reqVO.getProjectName()), PurchaseOrderMakeDO::getProjectName, reqVO.getProjectName())
|
||||||
|
|
||||||
|
.eq(Objects.nonNull(reqVO.getProjectNameSim()), PurchaseOrderMakeDO::getProjectNameSim, reqVO.getProjectNameSim())
|
||||||
|
.orderByDesc(PurchaseOrderMakeDO::getId);
|
||||||
|
|
||||||
|
// 使用 selectJoinPage 进行分页查询
|
||||||
|
return selectJoinPage(reqVO, PurchaseOrderMakeDO.class, wrapper);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -133,7 +133,7 @@ public class PartPurchaseOrderServiceImpl implements PartPurchaseOrderService{
|
|||||||
|
|
||||||
List<PurchaseOrderMakeDetailDO> list= purchaseOrderMakeDetailMapper.selectList("purchase_order_id", updateReqVO.getId());
|
List<PurchaseOrderMakeDetailDO> list= purchaseOrderMakeDetailMapper.selectList("purchase_order_id", updateReqVO.getId());
|
||||||
list.forEach(detailDO -> {
|
list.forEach(detailDO -> {
|
||||||
purchaseOrderNoDetailMapper.deleteById(detailDO.getId());
|
purchaseOrderNoDetailMapper.deleteById(detailDO);
|
||||||
});
|
});
|
||||||
|
|
||||||
List<MaterialPlanBoomDO> materialPlanBoomDOs= materialPlanBoomMapper.selectList("project_purchase_order_make_id", updateReqVO.getId());
|
List<MaterialPlanBoomDO> materialPlanBoomDOs= materialPlanBoomMapper.selectList("project_purchase_order_make_id", updateReqVO.getId());
|
||||||
|
@ -1,74 +1,74 @@
|
|||||||
package com.chanko.yunxi.mes.module.heli.service.purchaseordermake;
|
package com.chanko.yunxi.mes.module.heli.service.purchaseordermake;
|
||||||
|
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermake.vo.*;
|
import com.chanko.yunxi.mes.module.heli.controller.admin.purchaseordermake.vo.*;
|
||||||
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.framework.common.pojo.PageResult;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageResult;
|
||||||
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
import com.chanko.yunxi.mes.framework.common.pojo.PageParam;
|
||||||
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.module.heli.dal.mysql.purchaseordermake.PurchaseOrderMakeMapper;
|
import com.chanko.yunxi.mes.module.heli.dal.mysql.purchaseordermake.PurchaseOrderMakeMapper;
|
||||||
|
|
||||||
import static com.chanko.yunxi.mes.framework.common.exception.util.ServiceExceptionUtil.exception;
|
import static com.chanko.yunxi.mes.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||||
import static com.chanko.yunxi.mes.module.heli.enums.ErrorCodeConstants.*;
|
import static com.chanko.yunxi.mes.module.heli.enums.ErrorCodeConstants.*;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 采购单主 Service 实现类
|
* 采购单主 Service 实现类
|
||||||
*
|
*
|
||||||
* @author 管理员
|
* @author 管理员
|
||||||
*/
|
*/
|
||||||
@Service
|
@Service
|
||||||
@Validated
|
@Validated
|
||||||
public class PurchaseOrderMakeServiceImpl implements PurchaseOrderMakeService {
|
public class PurchaseOrderMakeServiceImpl implements PurchaseOrderMakeService {
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private PurchaseOrderMakeMapper purchaseOrderMakeMapper;
|
private PurchaseOrderMakeMapper purchaseOrderMakeMapper;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Long createPurchaseOrderMake(PurchaseOrderMakeSaveReqVO createReqVO) {
|
public Long createPurchaseOrderMake(PurchaseOrderMakeSaveReqVO createReqVO) {
|
||||||
// 插入
|
// 插入
|
||||||
PurchaseOrderMakeDO purchaseOrderMake = BeanUtils.toBean(createReqVO, PurchaseOrderMakeDO.class);
|
PurchaseOrderMakeDO purchaseOrderMake = BeanUtils.toBean(createReqVO, PurchaseOrderMakeDO.class);
|
||||||
purchaseOrderMakeMapper.insert(purchaseOrderMake);
|
purchaseOrderMakeMapper.insert(purchaseOrderMake);
|
||||||
// 返回
|
// 返回
|
||||||
return purchaseOrderMake.getId();
|
return purchaseOrderMake.getId();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void updatePurchaseOrderMake(PurchaseOrderMakeSaveReqVO updateReqVO) {
|
public void updatePurchaseOrderMake(PurchaseOrderMakeSaveReqVO updateReqVO) {
|
||||||
// 校验存在
|
// 校验存在
|
||||||
validatePurchaseOrderMakeExists(updateReqVO.getId());
|
validatePurchaseOrderMakeExists(updateReqVO.getId());
|
||||||
// 更新
|
// 更新
|
||||||
PurchaseOrderMakeDO updateObj = BeanUtils.toBean(updateReqVO, PurchaseOrderMakeDO.class);
|
PurchaseOrderMakeDO updateObj = BeanUtils.toBean(updateReqVO, PurchaseOrderMakeDO.class);
|
||||||
purchaseOrderMakeMapper.updateById(updateObj);
|
purchaseOrderMakeMapper.updateById(updateObj);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void deletePurchaseOrderMake(Long id) {
|
public void deletePurchaseOrderMake(Long id) {
|
||||||
// 校验存在
|
// 校验存在
|
||||||
validatePurchaseOrderMakeExists(id);
|
validatePurchaseOrderMakeExists(id);
|
||||||
// 删除
|
// 删除
|
||||||
purchaseOrderMakeMapper.deleteById(id);
|
purchaseOrderMakeMapper.deleteById(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void validatePurchaseOrderMakeExists(Long id) {
|
private void validatePurchaseOrderMakeExists(Long id) {
|
||||||
if (purchaseOrderMakeMapper.selectById(id) == null) {
|
if (purchaseOrderMakeMapper.selectById(id) == null) {
|
||||||
throw exception(PURCHASE_ORDER_MAKE_NOT_EXISTS);
|
throw exception(PURCHASE_ORDER_MAKE_NOT_EXISTS);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public PurchaseOrderMakeDO getPurchaseOrderMake(Long id) {
|
public PurchaseOrderMakeDO getPurchaseOrderMake(Long id) {
|
||||||
return purchaseOrderMakeMapper.selectById(id);
|
return purchaseOrderMakeMapper.selectById(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public PageResult<PurchaseOrderMakeDO> getPurchaseOrderMakePage(PurchaseOrderMakePageReqVO pageReqVO) {
|
public PageResult<PurchaseOrderMakeDO> getPurchaseOrderMakePage(PurchaseOrderMakePageReqVO pageReqVO) {
|
||||||
return purchaseOrderMakeMapper.selectPage(pageReqVO);
|
return purchaseOrderMakeMapper.selectJoinPage(pageReqVO);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -60,8 +60,10 @@
|
|||||||
</el-card>
|
</el-card>
|
||||||
</el-form>
|
</el-form>
|
||||||
<div class="hl-footer text-center">
|
<div class="hl-footer text-center">
|
||||||
<el-button v-if="formData.type === 'check'" @click="approve" size="large">批 准</el-button>
|
<template v-if="formData.type === 'check'">
|
||||||
<el-button v-if="formData.type === 'cehck'" @click="handleReject" size="large">驳 回</el-button>
|
<el-button @click="approve" size="large">批 准</el-button>
|
||||||
|
<el-button @click="handleReject" size="large">驳 回</el-button>
|
||||||
|
</template>
|
||||||
</div>
|
</div>
|
||||||
</el-card>
|
</el-card>
|
||||||
|
|
||||||
@ -115,7 +117,7 @@ const formData = ref({
|
|||||||
matBoomDOList: [],
|
matBoomDOList: [],
|
||||||
matItemRemoveList: [],
|
matItemRemoveList: [],
|
||||||
attachments: [],
|
attachments: [],
|
||||||
type: query.type
|
type: undefined,
|
||||||
})
|
})
|
||||||
|
|
||||||
const formRef = ref() // 表单 Ref
|
const formRef = ref() // 表单 Ref
|
||||||
@ -131,7 +133,8 @@ const updateParams = reactive({
|
|||||||
|
|
||||||
const approve = async () => {
|
const approve = async () => {
|
||||||
await PartPurchaseOrderApi.updatePurchaseOrderMake(formData.value.id)
|
await PartPurchaseOrderApi.updatePurchaseOrderMake(formData.value.id)
|
||||||
console.log("批准成功")
|
message.success("提交成功");
|
||||||
|
getList();
|
||||||
}
|
}
|
||||||
|
|
||||||
const handleReject = async () => {
|
const handleReject = async () => {
|
||||||
@ -158,7 +161,8 @@ const reject = async(reason) => {
|
|||||||
updateParams.reason = reason
|
updateParams.reason = reason
|
||||||
// 这里可以执行提交驳回逻辑
|
// 这里可以执行提交驳回逻辑
|
||||||
await PartPurchaseOrderApi.updatePurchaseOrderMakeNo(updateParams)
|
await PartPurchaseOrderApi.updatePurchaseOrderMakeNo(updateParams)
|
||||||
console.log("驳回成功")
|
message.success("已驳回");
|
||||||
|
getList();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -177,6 +181,7 @@ const queryParams = reactive({
|
|||||||
onMounted(async () => {
|
onMounted(async () => {
|
||||||
// 获取物料需求计划信息
|
// 获取物料需求计划信息
|
||||||
formData.value = await PartPurchaseOrderApi.getPurchaseOrderMake(query.id)
|
formData.value = await PartPurchaseOrderApi.getPurchaseOrderMake(query.id)
|
||||||
|
formData.value.type = query.type
|
||||||
getList();
|
getList();
|
||||||
})
|
})
|
||||||
const getList = async () => {
|
const getList = async () => {
|
||||||
|
@ -80,7 +80,7 @@
|
|||||||
v-if="scope.row.status === 1"
|
v-if="scope.row.status === 1"
|
||||||
link
|
link
|
||||||
type="primary"
|
type="primary"
|
||||||
@click="openForm('detail', scope.row.id)"
|
@click="openForm('check', scope.row.id)"
|
||||||
>
|
>
|
||||||
去审核
|
去审核
|
||||||
</el-button>
|
</el-button>
|
||||||
|
Loading…
Reference in New Issue
Block a user