8个文件已修改
131 ■■■■■ 已修改文件
platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ContractSubjectMatter.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/Product.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ProductionPlan.java 14 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/BusinessCustomerController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ProductController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ProductionPlanController.java 77 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/SalesManController.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ProductServiceImpl.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ContractSubjectMatter.java
@@ -25,6 +25,14 @@
@EqualsAndHashCode(callSuper = true)
public class ContractSubjectMatter extends BaseModel<ContractSubjectMatter> {
    @Schema(description = "排产计划ID")
    @Column(columnDefinition = "bigint comment '排产计划ID'")
    private Long productionPlanId;
    @Schema(description = "排产计划名称")
    @Column(columnDefinition = "VARCHAR(200) comment '排产计划名称'")
    private String productionPlanName;
    @Schema(description = "关联合同ID")
    @Column(columnDefinition = "bigint comment '关联合同ID'")
    private Long contractId;
platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/Product.java
@@ -35,6 +35,10 @@
    @Column(columnDefinition = "VARCHAR(50) comment '产品Erp编码'")
    private String erpCode;
    @Schema(description = "产品型号")
    @Column(columnDefinition = "VARCHAR(50) comment '产品型号'")
    private String productType;
    @Schema(description = "产品价格")
    @Column(columnDefinition = "double comment '产品价格'")
    private Double price;
@@ -43,8 +47,12 @@
    @Column(columnDefinition = "double default 0.00 comment '税率'")
    private Double taxRate;
    @Schema(description = "税收分类")
    @Column(columnDefinition = "VARCHAR(50) comment '税收分类'")
    private String taxClass;
    @Schema(description = "父ID")
    @Column(columnDefinition = "bigint comment '父ID'")
    @Column(columnDefinition = "bigint default 0 comment '父ID'")
    private Long parentId;
    /**
platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ProductionPlan.java
@@ -43,19 +43,19 @@
    @Schema(description = "甲方id")
    @Column(columnDefinition = "bigint comment '甲方id'")
    private Long partyAId;
    private Long partyaid;
    @Schema(description = "甲方名称")
    @Column(columnDefinition = "VARCHAR(100) comment '甲方名称'")
    private String partyA;
    private String partya;
    @Schema(description = "乙方id")
    @Column(columnDefinition = "bigint comment '乙方id'")
    private Long partyBId;
    private Long partybid;
    @Schema(description = "乙方名称")
    @Column(columnDefinition = "VARCHAR(100) comment '乙方名称'")
    private String partyB;
    private String partyb;
    @Schema(description = "金额")
    @Column(columnDefinition = "double comment '金额'")
@@ -109,6 +109,12 @@
    @Column(columnDefinition = "datetime comment '审批时间'")
    private String approveTime;
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm")
    @Schema(description = "转成合同时间")
    @Column(columnDefinition = "datetime comment '转成合同时间'")
    private String contractTime;
    /**
     * 标的物
     */
platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/BusinessCustomerController.java
@@ -2,6 +2,7 @@
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -48,6 +49,9 @@
    @PreAuthorize("@pms.hasPermission('business_businessCustomer_view')" )
    public R getBusinessCustomerPage(@ParameterObject Page page, @ParameterObject BusinessCustomer businessCustomer) {
        LambdaQueryWrapper<BusinessCustomer> wrapper = Wrappers.lambdaQuery();
        wrapper.eq(businessCustomer.getIndustryId()!=null,BusinessCustomer::getIndustryId,businessCustomer.getIndustryId());
        wrapper.eq(businessCustomer.getAreaId()!=null,BusinessCustomer::getAreaId,businessCustomer.getAreaId());
        wrapper.like(StrUtil.isNotEmpty(businessCustomer.getCompanyName()),BusinessCustomer::getCompanyName,businessCustomer.getCompanyName());
        return R.ok(businessCustomerService.page(page, wrapper));
    }
platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ProductController.java
@@ -2,6 +2,7 @@
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -49,6 +50,10 @@
    @PreAuthorize("@pms.hasPermission('business_product_view')" )
    public R getProductPage(@ParameterObject Page page, @ParameterObject Product product) {
        LambdaQueryWrapper<Product> wrapper = Wrappers.lambdaQuery();
        wrapper.eq(product.getParentId()!=null,Product::getParentId,product.getParentId());
        wrapper.like(StrUtil.isNotEmpty(product.getProductName()),Product::getProductName,product.getProductName());
        wrapper.like(StrUtil.isNotEmpty(product.getMainCode()),Product::getMainCode,product.getMainCode());
        wrapper.like(StrUtil.isNotEmpty(product.getErpCode()),Product::getErpCode,product.getErpCode());
        return R.ok(productService.page(page, wrapper));
    }
platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ProductionPlanController.java
@@ -2,10 +2,14 @@
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.by4cloud.platformx.business.entity.ContractSubjectMatter;
import com.by4cloud.platformx.business.service.ContractSubjectMatterService;
import com.by4cloud.platformx.common.core.util.R;
import com.by4cloud.platformx.common.data.mybatis.BaseModel;
import com.by4cloud.platformx.common.log.annotation.SysLog;
import com.by4cloud.platformx.business.entity.ProductionPlan;
import com.by4cloud.platformx.business.service.ProductionPlanService;
@@ -19,8 +23,10 @@
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/**
 * 排产计划
@@ -36,6 +42,7 @@
public class ProductionPlanController {
    private final  ProductionPlanService productionPlanService;
    private final ContractSubjectMatterService contractSubjectMatterService;
    /**
     * 分页查询
@@ -48,7 +55,20 @@
    @PreAuthorize("@pms.hasPermission('business_productionPlan_view')" )
    public R getProductionPlanPage(@ParameterObject Page page, @ParameterObject ProductionPlan productionPlan) {
        LambdaQueryWrapper<ProductionPlan> wrapper = Wrappers.lambdaQuery();
        return R.ok(productionPlanService.page(page, wrapper));
        wrapper.like(StrUtil.isNotEmpty(productionPlan.getProductionPlanName()),ProductionPlan::getProductionPlanName,productionPlan.getProductionPlanName());
        wrapper.eq(productionPlan.getPartyaid()!=null,ProductionPlan::getPartyaid,productionPlan.getPartyaid());
        wrapper.eq(productionPlan.getPartybid()!=null,ProductionPlan::getPartybid,productionPlan.getPartybid());
        wrapper.eq(productionPlan.getStatus()!=null,ProductionPlan::getStatus,productionPlan.getStatus());
        Page<ProductionPlan> page1 = productionPlanService.page(page, wrapper);
        List<ProductionPlan> list = page1.getRecords();
        for(ProductionPlan plan : list){
            List<ContractSubjectMatter> metterList = contractSubjectMatterService.list(new LambdaQueryWrapper<ContractSubjectMatter>()
                    .eq(ContractSubjectMatter::getProductionPlanId,plan.getId())
            );
            plan.setContractSubjectMatterList(metterList);
        }
        page1.setRecords(list);
        return R.ok(page1);
    }
    /**
@@ -73,7 +93,15 @@
    @GetMapping("/{id}" )
    @PreAuthorize("@pms.hasPermission('business_productionPlan_view')" )
    public R getById(@PathVariable("id" ) Long id) {
        return R.ok(productionPlanService.getById(id));
        ProductionPlan productionPlan = productionPlanService.getById(id);
        if(productionPlan==null){
            return R.failed("id错误!");
        }
        List<ContractSubjectMatter> list = contractSubjectMatterService.list(new LambdaQueryWrapper<ContractSubjectMatter>()
                .eq(ContractSubjectMatter::getProductionPlanId,productionPlan.getId())
        );
        productionPlan.setContractSubjectMatterList(list);
        return R.ok(productionPlan);
    }
    /**
@@ -86,7 +114,20 @@
    @PostMapping
    @PreAuthorize("@pms.hasPermission('business_productionPlan_add')" )
    public R save(@RequestBody ProductionPlan productionPlan) {
        return R.ok(productionPlanService.save(productionPlan));
        if(StrUtil.isEmpty(productionPlan.getProductionPlanName())){
            return R.failed("排产计划名称不能为空!");
        }
        productionPlanService.save(productionPlan);
        if(productionPlan.getContractSubjectMatterList()!=null){
            for(ContractSubjectMatter matter1 : productionPlan.getContractSubjectMatterList()){
                matter1.setProductionPlanId(productionPlan.getId());
                matter1.setProductionPlanName(productionPlan.getProductionPlanName());
            }
            contractSubjectMatterService.saveBatch(productionPlan.getContractSubjectMatterList());
        }
        return R.ok(true);
    }
    /**
@@ -99,6 +140,36 @@
    @PutMapping
    @PreAuthorize("@pms.hasPermission('business_productionPlan_edit')" )
    public R updateById(@RequestBody ProductionPlan productionPlan) {
        List<ContractSubjectMatter> list = contractSubjectMatterService.list(new LambdaQueryWrapper<ContractSubjectMatter>()
                .eq(ContractSubjectMatter::getProductionPlanId,productionPlan.getId())
        );
        List<Long> idsO = new ArrayList<>();
        if(list!=null){
            if(!list.isEmpty()){
                idsO = list.stream().map(BaseModel::getId).collect(Collectors.toList());
            }
        }
        if(productionPlan.getContractSubjectMatterList()!=null){
            List<Long> idsN = new ArrayList<>();
            for(ContractSubjectMatter matter : productionPlan.getContractSubjectMatterList()){
                if(matter.getId()==null){
                    matter.setProductionPlanId(productionPlan.getId());
                    matter.setProductionPlanName(productionPlan.getProductionPlanName());
                }else{
                    idsN.add(matter.getId());
                }
            }
            contractSubjectMatterService.saveOrUpdateBatch(productionPlan.getContractSubjectMatterList());
            if(!idsO.isEmpty()) {
                for (Long id : idsO) {
                    if (!idsN.contains(id)) {
                        contractSubjectMatterService.removeById(id);
                    }
                }
            }
        }
        return R.ok(productionPlanService.updateById(productionPlan));
    }
platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/SalesManController.java
@@ -2,6 +2,7 @@
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -48,6 +49,8 @@
    @PreAuthorize("@pms.hasPermission('business_salesMan_view')" )
    public R getSalesManPage(@ParameterObject Page page, @ParameterObject SalesMan salesMan) {
        LambdaQueryWrapper<SalesMan> wrapper = Wrappers.lambdaQuery();
        wrapper.eq(salesMan.getCustomerId()!=null,SalesMan::getCustomerId,salesMan.getCustomerId());
        wrapper.like(StrUtil.isNotEmpty(salesMan.getSalesName()),SalesMan::getSalesName,salesMan.getSalesName());
        return R.ok(salesManService.page(page, wrapper));
    }
platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ProductServiceImpl.java
@@ -57,7 +57,7 @@
            node.setId(product.getId());
            node.setName(product.getProductName());
            node.setParentId(product.getParentId());
            node.setWeight(product.getParentId());
            //node.setWeight(product.getParentId());
            // 扩展属性
            Map<String, Object> extra = new HashMap<>();
//            extra.put("picPath", category.getPicPath());
@@ -68,11 +68,11 @@
            // 适配 vue3
            Map<String, Object> meta = new HashMap<>();
            meta.put("title", product.getProductName());
            meta.put("icon", product.getPrice());
           /* meta.put("title", product.getProductName());
            meta.put("icon", product.getPrice());*/
            extra.put("meta", meta);
            node.setExtra(extra);
            //extra.put("meta", meta);
            //node.setExtra(extra);
            return node;
        };
    }