platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/BusinessCustomer.java
@@ -117,4 +117,13 @@ @Column(columnDefinition = "bigint comment '市场类型'") private Long className; @Schema(description = "出口服务属性") @Column(columnDefinition = "bigint comment '出口服务属性'") private Long exportServiceAttr; @Schema(description = "销售模式") @Column(columnDefinition = "bigint comment '销售模式'") private Long salesModel; } platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/ContractOutBound.java
@@ -21,6 +21,10 @@ @jakarta.persistence.Table(name = "contract_out_bound")//数据库创建的表明 public class ContractOutBound extends BaseModel<ContractOutBound> { @Schema(description = "Erp出库Id") @Column(columnDefinition = "bigint not null comment 'Erp出库Id'") private Long OutBoundId; @Schema(description = "关联合同ID") @Column(columnDefinition = "bigint not null comment '关联合同ID'") private Long contractId; @@ -75,8 +79,54 @@ @Column(columnDefinition="text comment '到货单据路径'") private String arrivalAttPaths; @Schema(description = "erp出库ID") @Column(columnDefinition="bigint comment 'erp出库ID'") private Long outBoundId; //以下开票相关 @Schema(description = "销售挂账id") @Column(columnDefinition = "bigint default null comment '销售挂账id'") private Long saleCreditId; @Schema(description = "开票状态(0-未开票 1-开票中 2-已开票)") @Column(columnDefinition = "tinyint(2) default 0 comment '开票状态(0-未开票 1-开票中 2-已开票)'") private Integer invoiceSatus; @Schema(description = "总单价") @Column(columnDefinition = "decimal(10,0) comment '出库数量'") private BigDecimal totalPrice; @Schema(description = "总税额") @Column(columnDefinition = "decimal(10,0) comment '总税额'") private BigDecimal totalTax; //产品信息 @Schema(description = "产品id") @Column(columnDefinition = "bigint not null comment '产品id'") private Long productId; @Schema(description = "税率(百分比,如13表示13%)") @Column(columnDefinition = "double default 0.00 comment '税率'") private Double taxRate; @Schema(description = "税收分类") @Column(columnDefinition = "VARCHAR(50) comment '税收分类'") private String taxClass; @Schema(description = "税收编码") @Column(columnDefinition = "VARCHAR(80) comment '税收编码'") private String taxCode; //合同标的物中信息 @Schema(description = "标的物规格/型号") @Column(columnDefinition = "VARCHAR(200) comment '标的物规格/型号'") private String specification; @Schema(description = "计量单位(个/台/吨/项/套等)") @Column(columnDefinition = "VARCHAR(20) comment '计量单位'") private String unit; @Schema(description = "单价") @Column(columnDefinition = "decimal(10,2) comment '单价'") private BigDecimal unitPrice; } platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/PlanSubjectMatter.java
@@ -31,6 +31,10 @@ @Column(columnDefinition = "VARCHAR(50) comment '产品名称'") private String productName; @Schema(description = "产品型号") @Column(columnDefinition = "VARCHAR(50) comment '产品型号'") private String productType; @Schema(description = "产品Erp编码") @Column(columnDefinition = "VARCHAR(50) comment '产品Erp编码'") private String erpCode; platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/Product.java
@@ -51,6 +51,10 @@ @Column(columnDefinition = "VARCHAR(50) comment '税收分类'") private String taxClass; @Schema(description = "税收编码") @Column(columnDefinition = "VARCHAR(80) comment '税收编码'") private String taxCode; @Schema(description = "父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
@@ -77,8 +77,8 @@ @Column(columnDefinition = "tinyint(2) default 0 comment '供应属性 0-成品 1-备件 2-大修 3-其他'") private Integer supplyAttribute;*/ @Schema(description = "计划状态(0-草稿 1-已生效 2-已终止 3-已过期)") @Column(columnDefinition = "tinyint(2) default 0 comment '计划状态'") @Schema(description = "计划状态(0-已失效 1-已生效)") @Column(columnDefinition = "tinyint(2) default 1 comment '计划状态'") private Integer status; @Schema(description = "是否推送erp(0-没有 1-推送)") platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/entity/SaleCredit.java
New file @@ -0,0 +1,160 @@ package com.by4cloud.platformx.business.entity; import com.baomidou.mybatisplus.annotation.TableField; import com.by4cloud.platformx.business.vo.ContractOutBoundVo; import com.by4cloud.platformx.common.data.mybatis.BaseModel; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.persistence.Column; import jakarta.persistence.Entity; import jakarta.persistence.Table; import jakarta.persistence.Transient; import lombok.Data; import org.hibernate.annotations.Comment; import java.math.BigDecimal; import java.util.List; /** * @author wjli * @description * @date 2026/4/29 10:51 **/ @Data @Entity @Table(name = "sale_credit") @Comment("销售挂账") public class SaleCredit extends BaseModel<SaleCredit> { @Schema(description = "销售编号") @Column(columnDefinition = "VARCHAR(64) comment '销售编号'") private String entrustCode; @Schema(description = "关联合同ID") @Column(columnDefinition = "bigint not null comment '关联合同ID'") private Long contractId; @Schema(description = "合同编号") @Column(columnDefinition = "VARCHAR(64) comment '合同编号'") private String contractNo; @Schema(description = "合同名称") @Column(columnDefinition = "VARCHAR(64) comment '合同名称'") private String contractName; @Schema(description = "甲方id") @Column(name = "party_a_id",columnDefinition = "bigint comment '甲方id'") private Long partyAId; @Schema(description = "甲方名称") @Column(name = "party_a",columnDefinition = "VARCHAR(100) comment '甲方名称'") private String partyA; @Schema(description = "甲方统一社会信用代码") @Column(name = "credit_code_a",columnDefinition = "VARCHAR(30) comment '甲方统一社会信用代码'") private String creditCodeA; @Schema(description = "甲方开户银行") @Column(name = "bank_name_a",columnDefinition = "VARCHAR(20) comment '甲方开户银行'") private String bankNameA; @Schema(description = "甲方银行账号") @Column(name = "bank_account_a",columnDefinition = "VARCHAR(50) comment '甲方银行账号'") private String bankAccountA; @Schema(description = "甲方联系电话") @Column(name = "contact_phone_a",columnDefinition = "VARCHAR(50) comment '甲方联系电话'") private String contactPhoneA; @Schema(description = "乙方id") @Column(name = "party_b_id",columnDefinition = "bigint comment '乙方id'") private Long partyBId; @Schema(description = "乙方名称") @Column(name = "party_b",columnDefinition = "VARCHAR(100) comment '乙方名称'") private String partyB; @Schema(description = "乙方统一社会信用代码") @Column(name = "credit_code_b",columnDefinition = "VARCHAR(30) comment '乙方统一社会信用代码'") private String creditCodeB; @Schema(description = "乙方开户银行") @Column(name = "bank_name_b",columnDefinition = "VARCHAR(20) comment '乙方开户银行'") private String bankNameB; @Schema(description = "乙方银行账号") @Column(name = "bank_account_b",columnDefinition = "VARCHAR(50) comment '乙方银行账号'") private String bankAccountB; @Schema(description = "乙方联系电话") @Column(name = "contact_phone_b",columnDefinition = "VARCHAR(50) comment '乙方联系电话'") private String contactPhoneB; @Schema(description = "挂账金额") @Column(columnDefinition = "decimal(10,2) comment '挂账金额'") private BigDecimal totalAmount; @Schema(description = "挂账金额总税额") @Column(columnDefinition = "decimal(10,2) comment '挂账金额总税额'") private BigDecimal totalTax; @Schema(description = "标的物详情") @Column(columnDefinition = "TEXT comment '标的物详情'") private String matterStr; @Schema(description = "对应出货单") @Column(columnDefinition = "varchar(300) comment '对应出货单'") private String outBoundIds; @Schema(description = "状态(0-生效 1-失效)") @Column(columnDefinition = "tinyint(2) default 0 comment '状态(0-生效 1-失效)'") private Integer status; @Schema(description = "状态(200)") @Column(columnDefinition = "tinyint(2) default 0 comment '状态(200)'") private Integer bipStatus; @Schema(description = "开票结果状态 0未提交默认 1处理中 2通过 3驳回 4开票失败") @javax.persistence.Column(columnDefinition="int(1) comment '排序'") private Integer blueResultStatus; @Schema(description = "开红票结果状态 0未提交默认 1处理中 2通过 3驳回 4开票失败") @javax.persistence.Column(columnDefinition="int(1) comment '排序'") private Integer redResultStatus; @Schema(description = "蓝票id") @Column(columnDefinition = "bigint default null comment '蓝票id'") private Long blueInvoiceResultId; @Schema(description = "红票id") @Column(columnDefinition = "bigint default null comment '红票id'") private Long redInvoiceResultId; @Schema(description = "开票详情") @Column(columnDefinition = "TEXT comment '开票详情'") private String invoiceRemark; @Schema(description = "蓝票地址") @Column(columnDefinition = "varchar(300) comment '蓝票地址'") private String invoicPath; @Schema(description = "红票地址") @Column(columnDefinition = "varchar(300) comment '红票地址'") private String invoicRedPath; @Schema(description = "发票url") @javax.persistence.Column(columnDefinition="VARCHAR(50) comment '发票url'") private String invoicUrl; @Schema(description = "红冲发票url") @javax.persistence.Column(columnDefinition="VARCHAR(50) comment '红冲发票url'") private String invoicRedUrl; /** * 出货单列表 */ @Transient @TableField(exist = false) private List<ContractOutBoundVo> contractOutBoundList; } platformx-business-finance-api/src/main/java/com/by4cloud/platformx/business/vo/ContractOutBoundVo.java
New file @@ -0,0 +1,36 @@ package com.by4cloud.platformx.business.vo; import com.by4cloud.platformx.business.entity.ContractOutBound; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import java.math.BigDecimal; @Data public class ContractOutBoundVo extends ContractOutBound { //产品中信息 @Schema(description = "产品id") private Long productId; @Schema(description = "税率(百分比,如13表示13%)") private Double taxRate; @Schema(description = "税收分类") private String taxClass; @Schema(description = "税收编码") private String taxCode; //合同标的物中信息 @Schema(description = "标的物规格/型号") private String specification; @Schema(description = "计量单位(个/台/吨/项/套等)") private String unit; @Schema(description = "单价") private BigDecimal unitPrice; } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/ProductionPlanController.java
@@ -205,4 +205,15 @@ public List<ProductionPlan> export(ProductionPlan productionPlan,Long[] ids) { return productionPlanService.list(Wrappers.lambdaQuery(productionPlan).in(ArrayUtil.isNotEmpty(ids), ProductionPlan::getId, ids)); } /** * 启动审核流程 * @param id id * @return R */ @Operation(summary = "通过id启动审核流程" , description = "通过id合同生效" ) @GetMapping("/startApproval/{id}" ) public R startApproval(@PathVariable("id" ) Long id) { return productionPlanService.startApproval(id); } } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/controller/SaleCreditController.java
New file @@ -0,0 +1,269 @@ package com.by4cloud.platformx.business.controller; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ArrayUtil; 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.admin.api.entity.SysDept; import com.by4cloud.platformx.admin.api.feign.RemoteDeptService; import com.by4cloud.platformx.business.entity.*; import com.by4cloud.platformx.business.service.*; import com.by4cloud.platformx.business.vo.ContractOutBoundVo; import com.by4cloud.platformx.common.core.util.R; import com.by4cloud.platformx.common.excel.annotation.ResponseExcel; import com.by4cloud.platformx.common.log.annotation.SysLog; import com.by4cloud.platformx.common.security.annotation.Inner; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.security.SecurityRequirement; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.RequiredArgsConstructor; import org.springdoc.core.annotations.ParameterObject; import org.springframework.http.HttpHeaders; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import java.util.ArrayList; import java.util.List; /** * 销售挂账 * * @author wjli * @date 2026-05-21 16:16:31 */ @RestController @RequiredArgsConstructor @RequestMapping("/saleCredit" ) @Tag(description = "saleCredit" , name = "销售挂账管理" ) @SecurityRequirement(name = HttpHeaders.AUTHORIZATION) public class SaleCreditController { private final SaleCreditService saleCreditService; private final ContractService contractService; private final BusinessCustomerService businessCustomerService; private final ContractOutBoundService contractOutBoundService; private final ProductService productService; private final ContractSubjectMatterService contractSubjectMatterService; private final RemoteDeptService remoteDeptService; /** * 分页查询 * @param page 分页对象 * @param saleCredit 销售挂账 * @return */ @Operation(summary = "分页查询" , description = "分页查询" ) @GetMapping("/page" ) @PreAuthorize("@pms.hasPermission('business_saleCredit_view')" ) public R getSaleCreditPage(@ParameterObject Page page, @ParameterObject SaleCredit saleCredit) { LambdaQueryWrapper<SaleCredit> wrapper = Wrappers.lambdaQuery(); return R.ok(saleCreditService.page(page, wrapper)); } /** * 通过id查询销售挂账 * @param id id * @return R */ @Operation(summary = "通过id查询" , description = "通过id查询" ) @GetMapping("/{id}" ) @PreAuthorize("@pms.hasPermission('business_saleCredit_view')" ) public R getById(@PathVariable("id" ) Long id) { return R.ok(saleCreditService.getById(id)); } /** * 新增销售挂账 * @param saleCredit 销售挂账 * @return R */ @Operation(summary = "新增销售挂账" , description = "新增销售挂账" ) @SysLog("新增销售挂账" ) @PostMapping @PreAuthorize("@pms.hasPermission('business_saleCredit_add')" ) public R save(@RequestBody SaleCredit saleCredit) { return R.ok(saleCreditService.save(saleCredit)); } /** * 新增销售挂账 * @param saleCredit 销售挂账 * @return R */ @Operation(summary = "销售挂账生成" , description = "销售挂账生成" ) @SysLog("销售挂账生成" ) @PostMapping("/saveSaleCredit") @PreAuthorize("@pms.hasPermission('business_saleCredit_add')" ) public R saveInvoice(@RequestBody SaleCredit saleCredit) { //开票中 saleCredit.setStatus(1); saleCreditService.save(saleCredit); //标记出库单被标识 List<ContractOutBoundVo> contractOutBoundList = saleCredit.getContractOutBoundList(); if(contractOutBoundList==null){ return R.failed("请选择出库单!"); } if(contractOutBoundList.size()==0){ return R.failed("请选择出库单!"); } String outBoundIds = ""; for(ContractOutBoundVo vo : contractOutBoundList){ if(StrUtil.isEmpty(outBoundIds)){ outBoundIds = "" + vo.getId(); }else{ outBoundIds += "," + vo.getId(); } ContractOutBound outBound = contractOutBoundService.getById(vo.getId()); outBound.setSaleCreditId(saleCredit.getId()); outBound.setTotalPrice(vo.getTotalPrice()); outBound.setTotalTax(vo.getTotalTax()); outBound.setProductId(vo.getProductId()); outBound.setTaxRate(vo.getTaxRate()); outBound.setTaxClass(vo.getTaxClass()); outBound.setTaxCode(vo.getTaxCode()); outBound.setSpecification(vo.getSpecification()); outBound.setUnit(vo.getUnit()); outBound.setUnitPrice(vo.getUnitPrice()); outBound.setInvoiceSatus(1); contractOutBoundService.updateById(outBound); } saleCredit.setOutBoundIds(outBoundIds); saleCreditService.save(saleCredit); return R.ok("销售挂账生成!"); } /** * 拼接销售挂账 * @param saleCredit 销售挂账 * @return R */ @Operation(summary = "拼接销售挂账" , description = "拼接销售挂账" ) @SysLog("拼接销售挂账" ) @GetMapping("/generatorInvoice") @PreAuthorize("@pms.hasPermission('business_saleCredit_view')" ) @Inner(value = false) public R generatorInvoice(@ParameterObject SaleCredit saleCredit) { if(saleCredit.getContractId()==null){ return R.failed("合同id不能为空"); } Contract contract = contractService.getById(saleCredit.getContractId()); if(contract==null){ return R.failed("合同id错误"); } saleCredit.setContractName(contract.getContractName()); saleCredit.setContractNo(contract.getContractNo()); BusinessCustomer partA = businessCustomerService.getById(contract.getPartyAId()); if(partA!=null){ saleCredit.setPartyA(partA.getCompanyName()); saleCredit.setCreditCodeA(partA.getCreditCode()); saleCredit.setBankAccountA(partA.getBankAccount()); saleCredit.setBankNameA(partA.getBankName()); } R<SysDept> r = remoteDeptService.getById(contract.getPartyBId()); SysDept dept = r.getData(); if(dept!=null){ saleCredit.setPartyB(dept.getOrgName()); saleCredit.setCreditCodeB(dept.getOrgCode()); saleCredit.setBankAccountB(dept.getOrgBankAccount()); saleCredit.setBankNameB(dept.getOrgBank()); } List<ContractOutBound> outBoundList = contractOutBoundService.list(new LambdaQueryWrapper<ContractOutBound>() .eq(ContractOutBound::getContractId,contract.getId()) .eq(ContractOutBound::getInvoiceSatus,0) .orderByAsc(ContractOutBound::getOutBoundTime) ); if(outBoundList!=null){ if(!outBoundList.isEmpty()){ List<ContractOutBoundVo> list = new ArrayList<>(); for(ContractOutBound outBound : outBoundList){ ContractOutBoundVo vo = new ContractOutBoundVo(); BeanUtil.copyProperties(outBound,vo); Product product = productService.getOne(new LambdaQueryWrapper<Product>().eq(Product::getErpCode,outBound.getSubjectMatterCode()).last("limit 1")); if(product!=null){ vo.setProductId(product.getId()); vo.setTaxClass(product.getTaxClass()); vo.setTaxCode(product.getTaxCode()); vo.setTaxRate(product.getTaxRate()); } ContractSubjectMatter matter = contractSubjectMatterService.getOne(new LambdaQueryWrapper<ContractSubjectMatter>() .eq(ContractSubjectMatter::getContractId,contract.getId()) .eq(ContractSubjectMatter::getMaterialCode,outBound.getSubjectMatterCode()) .last("limit 1") ); if(matter!=null){ vo.setSpecification(matter.getSpecification()); vo.setUnit(matter.getUnit()); vo.setUnitPrice(matter.getUnitPrice()); } list.add(vo); } saleCredit.setContractOutBoundList(list); } } return R.ok(saleCredit); } /** * 修改销售挂账 * @param saleCredit 销售挂账 * @return R */ @Operation(summary = "修改销售挂账" , description = "修改销售挂账" ) @SysLog("修改销售挂账" ) @PutMapping @PreAuthorize("@pms.hasPermission('business_saleCredit_edit')" ) public R updateById(@RequestBody SaleCredit saleCredit) { return R.ok(saleCreditService.updateById(saleCredit)); } /** * 通过id删除销售挂账 * @param ids id列表 * @return R */ @Operation(summary = "通过id删除销售挂账" , description = "通过id删除销售挂账" ) @SysLog("通过id删除销售挂账" ) @DeleteMapping @PreAuthorize("@pms.hasPermission('business_saleCredit_del')" ) public R removeById(@RequestBody Long[] ids) { return R.ok(saleCreditService.removeBatchByIds(CollUtil.toList(ids))); } /** * 导出excel 表格 * @param saleCredit 查询条件 * @param ids 导出指定ID * @return excel 文件流 */ @ResponseExcel @GetMapping("/export") @PreAuthorize("@pms.hasPermission('business_saleCredit_export')" ) public List<SaleCredit> export(SaleCredit saleCredit,Long[] ids) { return saleCreditService.list(Wrappers.lambdaQuery(saleCredit).in(ArrayUtil.isNotEmpty(ids), SaleCredit::getId, ids)); } } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/mapper/SaleCreditMapper.java
New file @@ -0,0 +1,11 @@ package com.by4cloud.platformx.business.mapper; import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper; import com.by4cloud.platformx.business.entity.SaleCredit; import org.apache.ibatis.annotations.Mapper; @Mapper public interface SaleCreditMapper extends PlatformxBaseMapper<SaleCredit> { } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/ProductionPlanService.java
@@ -2,7 +2,10 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.by4cloud.platformx.business.entity.ProductionPlan; import com.by4cloud.platformx.common.core.util.R; public interface ProductionPlanService extends IService<ProductionPlan> { R startApproval(Long id); } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/SaleCreditService.java
New file @@ -0,0 +1,8 @@ package com.by4cloud.platformx.business.service; import com.baomidou.mybatisplus.extension.service.IService; import com.by4cloud.platformx.business.entity.SaleCredit; public interface SaleCreditService extends IService<SaleCredit> { } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/ProductionPlanServiceImpl.java
@@ -1,10 +1,20 @@ package com.by4cloud.platformx.business.service.impl; import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.by4cloud.platformx.business.api.feign.RemoteFlowProcessService; import com.by4cloud.platformx.business.constant.FlowNameEnum; import com.by4cloud.platformx.business.entity.Contract; import com.by4cloud.platformx.business.entity.ProductionPlan; import com.by4cloud.platformx.business.mapper.ProductionPlanMapper; import com.by4cloud.platformx.business.service.ProductionPlanService; import com.by4cloud.platformx.common.core.util.R; import com.by4cloud.platformx.flow.task.dto.ProcessInstanceParamDto; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import java.util.Map; /** * 排产计划 * @@ -12,5 +22,27 @@ * @date 2026-05-07 10:27:42 */ @Service @RequiredArgsConstructor public class ProductionPlanServiceImpl extends ServiceImpl<ProductionPlanMapper, ProductionPlan> implements ProductionPlanService { private final RemoteFlowProcessService remoteFlowProcessService; @Override public R startApproval(Long id) { ProductionPlan plan = baseMapper.selectById(id); //启动流程 ProcessInstanceParamDto dto = new ProcessInstanceParamDto(); Map<String, Object> map = BeanUtil.beanToMap(plan); dto.setParamMap(map); dto.setFlowName(FlowNameEnum.排产计划审批.name()); R r1 = remoteFlowProcessService.startProcessInstance(dto); if (r1.getCode() == 1) { return R.failed("流程启动失败"); } plan.setStatus(1); baseMapper.updateById(plan); return R.ok(); } } platformx-business-finance-biz/src/main/java/com/by4cloud/platformx/business/service/impl/SaleCreditServiceImpl.java
New file @@ -0,0 +1,18 @@ package com.by4cloud.platformx.business.service.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.by4cloud.platformx.business.entity.SaleCredit; import com.by4cloud.platformx.business.mapper.SaleCreditMapper; import com.by4cloud.platformx.business.service.SaleCreditService; import org.springframework.stereotype.Service; /** * 销售挂账 * * @author wjli * @date 2026-05-21 16:16:31 */ @Service public class SaleCreditServiceImpl extends ServiceImpl<SaleCreditMapper, SaleCredit> implements SaleCreditService { } platformx-business-finance-biz/src/main/resources/mapper/SaleCreditMapper.xml
New file @@ -0,0 +1,31 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.by4cloud.platformx.business.mapper.SaleCreditMapper"> <resultMap id="saleCreditMap" type="com.by4cloud.platformx.business.entity.SaleCredit"> <id property="id" column="id"/> <result property="contractId" column="contract_id"/> <result property="contractNo" column="contract_no"/> <result property="contractName" column="contract_name"/> <result property="partyAId" column="party_a_id"/> <result property="partyA" column="party_a"/> <result property="creditCodeA" column="credit_code_a"/> <result property="bankNameA" column="bank_name_a"/> <result property="bankAccountA" column="bank_account_a"/> <result property="partyBId" column="party_b_id"/> <result property="partyB" column="party_b"/> <result property="creditCodeB" column="credit_code_b"/> <result property="bankNameB" column="bank_name_b"/> <result property="bankAccountB" column="bank_account_b"/> <result property="totalAmount" column="total_amount"/> <result property="matterStr" column="matter_str"/> <result property="outBoundIds" column="out_bound_ids"/> <result property="compId" column="comp_id"/> <result property="createBy" column="create_by"/> <result property="createTime" column="create_time"/> <result property="updateBy" column="update_by"/> <result property="updateTime" column="update_time"/> <result property="delFlag" column="del_flag"/> </resultMap> </mapper>