日计划管道气销售结算

This commit is contained in:
2026-02-10 17:48:26 +08:00
parent a50834f302
commit aa84a979e9
9 changed files with 102 additions and 52 deletions

View File

@ -3,6 +3,9 @@ package com.xjrsoft.module.dayPlan.vo;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import com.xjrsoft.common.annotation.Trans;
import com.xjrsoft.common.enums.TransType;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
@ -30,24 +33,30 @@ public class LngPngSettlePurDtlVo extends com.xjrsoft.common.model.base.BaseMode
/** /**
* 价格类型(基础量/增量) * 价格类型(基础量/增量)
*/ */
@ApiModelProperty("价格类型(基础量/增量)") @ApiModelProperty("价格类型(基础量/增量)")
private String priceCode; //@Trans(type = TransType.DIC, id = "2016806282214830081",transToFieldName = "priceName")
private String priceCode;
/** private String priceName;
* 优先级
*/
@ApiModelProperty("优先级") /**
private Byte sort; * 优先级
*/
@ApiModelProperty("优先级")
/** private Byte sort;
* 主计量单位(从lng_png_settle_pur带)
*/
@ApiModelProperty("主计量单位(从lng_png_settle_pur带)") /**
private String uomCode; * 主计量单位(从lng_png_settle_sales带)
*/
@ApiModelProperty("主计量单位(从lng_png_settle_sales带)")
//@Trans(type = TransType.DIC, id = "2007987645607911425",transToFieldName = "uomName")
private String uomCode;
private String uomName;
/** /**

View File

@ -279,5 +279,5 @@ public class LngPngSettlePurVo extends com.xjrsoft.common.model.base.BaseModel{
@ApiModelProperty("lngPngSettlePurDtl子表") @ApiModelProperty("lngPngSettlePurDtl子表")
private List<LngPngSettlePurDtlVo> lngPngSettlePurDtlList; private List<LngPngSettlePurDtlVo> lngPngSettlePurDtlList;
private String ksName;
} }

View File

@ -3,6 +3,9 @@ package com.xjrsoft.module.dayPlan.vo;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import com.xjrsoft.common.annotation.Trans;
import com.xjrsoft.common.enums.TransType;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
@ -33,8 +36,11 @@ public class LngPngSettleSalesDtlVo extends com.xjrsoft.common.model.base.BaseMo
* 价格类型(基础量/增量) * 价格类型(基础量/增量)
*/ */
@ApiModelProperty("价格类型(基础量/增量)") @ApiModelProperty("价格类型(基础量/增量)")
// @Trans(type = TransType.DIC, id = "2016806282214830081",transToFieldName = "priceName")
private String priceCode; private String priceCode;
private String priceName;
/** /**
* 优先级 * 优先级
@ -47,8 +53,11 @@ public class LngPngSettleSalesDtlVo extends com.xjrsoft.common.model.base.BaseMo
* 主计量单位(从lng_png_settle_sales带) * 主计量单位(从lng_png_settle_sales带)
*/ */
@ApiModelProperty("主计量单位(从lng_png_settle_sales带)") @ApiModelProperty("主计量单位(从lng_png_settle_sales带)")
// @Trans(type = TransType.DIC, id = "2007987645607911425",transToFieldName = "uomName")
private String uomCode; private String uomCode;
private String uomName;
/** /**
* 阶梯量(吉焦) * 阶梯量(吉焦)

View File

@ -242,6 +242,8 @@ public class LngPngSettleSalesVo extends com.xjrsoft.common.model.base.BaseModel
*/ */
@ApiModelProperty("lngPngSettleSalesDtl子表") @ApiModelProperty("lngPngSettleSalesDtl子表")
private List<LngPngSettleSalesDtlVo> lngPngSettleSalesDtlList; private List<LngPngSettleSalesDtlVo> lngPngSettleSalesDtlList;
private String ksName;
} }

View File

@ -3,7 +3,14 @@ package com.xjrsoft.module.dayPlan.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.yulichang.base.MPJBaseMapper; import com.github.yulichang.base.MPJBaseMapper;
import com.xjrsoft.module.dayPlan.entity.LngPngSettlePurDtl; import com.xjrsoft.module.dayPlan.entity.LngPngSettlePurDtl;
import com.xjrsoft.module.dayPlan.vo.LngPngSettlePurDtlVo;
import com.xjrsoft.module.dayPlan.vo.LngPngSettleSalesDtlVo;
import java.util.List;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
/** /**
* @title: mapper * @title: mapper
@ -14,4 +21,13 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper @Mapper
public interface LngPngSettlePurDtlMapper extends MPJBaseMapper<LngPngSettlePurDtl>,BaseMapper<LngPngSettlePurDtl> { public interface LngPngSettlePurDtlMapper extends MPJBaseMapper<LngPngSettlePurDtl>,BaseMapper<LngPngSettlePurDtl> {
@Select("SELECT spd.*, dd_a.name AS uom_name,dd_b.name as price_name" +
" FROM lng_png_settle_pur_dtl spd" +
" LEFT JOIN xjr_dictionary_item di_a on di_a.code='LNG_UOM'" +
" LEFT JOIN xjr_dictionary_detail dd_a on dd_a.item_id=di_a.id AND dd_a.code=spd.uom_code" +
" LEFT JOIN xjr_dictionary_item di_b on di_b.code='LNG_BASE'" +
" LEFT JOIN xjr_dictionary_detail dd_b on dd_b.item_id=di_b.id AND dd_b.code=spd.price_code" +
" WHERE spd.settle_id = #{id}" +
" ORDER BY spd.sort")
List<LngPngSettlePurDtlVo> queryDtlList(@Param("id")Long id);
} }

View File

@ -3,7 +3,14 @@ package com.xjrsoft.module.dayPlan.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.yulichang.base.MPJBaseMapper; import com.github.yulichang.base.MPJBaseMapper;
import com.xjrsoft.module.dayPlan.entity.LngPngSettleSalesDtl; import com.xjrsoft.module.dayPlan.entity.LngPngSettleSalesDtl;
import com.xjrsoft.module.dayPlan.vo.LngPngDemandPurVo;
import com.xjrsoft.module.dayPlan.vo.LngPngSettleSalesDtlVo;
import java.util.List;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
/** /**
* @title: mapper * @title: mapper
@ -14,4 +21,13 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper @Mapper
public interface LngPngSettleSalesDtlMapper extends MPJBaseMapper<LngPngSettleSalesDtl>,BaseMapper<LngPngSettleSalesDtl> { public interface LngPngSettleSalesDtlMapper extends MPJBaseMapper<LngPngSettleSalesDtl>,BaseMapper<LngPngSettleSalesDtl> {
@Select("SELECT ssd.*, dd_a.name AS uom_name,dd_b.name as price_name" +
" FROM lng_png_settle_sales_dtl ssd" +
" LEFT JOIN xjr_dictionary_item di_a on di_a.code='LNG_UOM'" +
" LEFT JOIN xjr_dictionary_detail dd_a on dd_a.item_id=di_a.id AND dd_a.code=ssd.uom_code" +
" LEFT JOIN xjr_dictionary_item di_b on di_b.code='LNG_BASE'" +
" LEFT JOIN xjr_dictionary_detail dd_b on dd_b.item_id=di_b.id AND dd_b.code=ssd.price_code" +
" WHERE ssd.settle_id = #{id}" +
" ORDER BY ssd.sort")
List<LngPngSettleSalesDtlVo> queryDtlList(@Param("id")Long id);
} }

View File

@ -203,7 +203,7 @@ public class DemandServiceImpl extends MPJBaseServiceImpl<LngPngDemandMapper, Ln
public void submit(@Valid List<Long> ids) { public void submit(@Valid List<Long> ids) {
List<UpdateLngPngDemandDto> tempList = Lists.newArrayList(); List<UpdateLngPngDemandDto> tempList = Lists.newArrayList();
for(Long id:ids) { for(Long id:ids) {
LngPngDemand lngPngDemand = this.getByIdDeep(id); LngPngDemandVo lngPngDemand = this.getInfoById(id);
if (lngPngDemand == null) { if (lngPngDemand == null) {
throw new BusinessException(BusinessCode.of(10500,"找不到此数据!")); throw new BusinessException(BusinessCode.of(10500,"找不到此数据!"));
@ -358,7 +358,7 @@ public class DemandServiceImpl extends MPJBaseServiceImpl<LngPngDemandMapper, Ln
@Override @Override
public void update(@Valid UpdateLngPngDemandDto dto) { public void update(@Valid UpdateLngPngDemandDto dto) {
LngPngDemand lngPngDemand = this.getByIdDeep(dto.getId()); LngPngDemand lngPngDemand = this.getById(dto.getId());
if (lngPngDemand == null) { if (lngPngDemand == null) {
throw new BusinessException(BusinessCode.of(10500,"找不到此数据!")); throw new BusinessException(BusinessCode.of(10500,"找不到此数据!"));
} }

View File

@ -28,6 +28,8 @@ import com.xjrsoft.module.dayPlan.mapper.LngPngSettlePurDtlMapper;
import com.xjrsoft.module.dayPlan.mapper.LngPngSettlePurMapper; import com.xjrsoft.module.dayPlan.mapper.LngPngSettlePurMapper;
import com.xjrsoft.module.dayPlan.service.IPngSettleHdrPurService; import com.xjrsoft.module.dayPlan.service.IPngSettleHdrPurService;
import com.xjrsoft.module.dayPlan.vo.LngPngSettleHdrPurVo; import com.xjrsoft.module.dayPlan.vo.LngPngSettleHdrPurVo;
import com.xjrsoft.module.dayPlan.vo.LngPngSettlePurDtlVo;
import com.xjrsoft.module.dayPlan.vo.LngPngSettlePurVo;
import com.xjrsoft.module.system.client.IFileClient; import com.xjrsoft.module.system.client.IFileClient;
import com.xjrsoft.module.system.vo.LngFileUploadVo; import com.xjrsoft.module.system.vo.LngFileUploadVo;
@ -62,16 +64,15 @@ public class PngSettleHdrPurServiceImpl extends MPJBaseServiceImpl<LngPngSettleH
if(lngPngSettleHdr == null) { if(lngPngSettleHdr == null) {
return null; return null;
} }
LngPngSettleHdrPurVo vo = BeanUtil.toBean(lngPngSettleHdr, LngPngSettleHdrPurVo.class);
if(CollectionUtils.isNotEmpty(lngPngSettleHdr.getLngPngSettlePurList())) { if(CollectionUtils.isNotEmpty(vo.getLngPngSettlePurList())) {
for(LngPngSettlePur sp:lngPngSettleHdr.getLngPngSettlePurList()) { for(LngPngSettlePurVo sp:vo.getLngPngSettlePurList()) {
sp.setKsName(lngPngSettlePurMapper.getKsNameBygId(sp.getKsId())); sp.setKsName(lngPngSettlePurMapper.getKsNameBygId(sp.getKsId()));
List<LngPngSettlePurDtl> list = lngPngSettlePurDtlMapper.selectList(new LambdaQueryWrapper<LngPngSettlePurDtl>() List<LngPngSettlePurDtlVo> list = lngPngSettlePurDtlMapper.queryDtlList(sp.getId());
.eq(LngPngSettlePurDtl::getSettleId, sp.getId()));
sp.setLngPngSettlePurDtlList(list); sp.setLngPngSettlePurDtlList(list);
} }
} }
LngPngSettleHdrPurVo vo = BeanUtil.toBean(lngPngSettleHdr, LngPngSettleHdrPurVo.class);
List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_png_settle_hdr", "lngFileUploadList", vo.getId()); List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_png_settle_hdr", "lngFileUploadList", vo.getId());
vo.setLngFileUploadList(fileList); vo.setLngFileUploadList(fileList);
@ -83,32 +84,27 @@ public class PngSettleHdrPurServiceImpl extends MPJBaseServiceImpl<LngPngSettleH
@Override @Override
public void cancel(@Valid List<Long> ids) { public void cancel(@Valid List<Long> ids) {
List<UpdateLngPngSettleHdrPurDto> tempList = Lists.newArrayList(); List<LngPngSettleHdrPur> tempList = Lists.newArrayList();
for(Long id:ids) { for(Long id:ids) {
LngPngSettleHdrPur lngPngSettleHdr = this.getByIdDeep(id); LngPngSettleHdrPur lngPngSettleHdr = this.getById(id);
if (lngPngSettleHdr == null) { if (lngPngSettleHdr == null) {
throw new BusinessException(BusinessCode.of(10500,"找不到此数据!")); throw new BusinessException(BusinessCode.of(10500,"找不到此数据!"));
} }
/**
if(!ApproveCodeEnum.WTJ.getCode().equals(lngPngDemand.getApproCode()) &&
!ApproveCodeEnum.YBH.getCode().equals(lngPngDemand.getApproCode()) ) {
throw new BusinessException(BusinessCode.of(10500,"审批状态变化,不能提交"));
}
**/
lngPngSettleHdr.setApproCode(ApproveCodeEnum.WTJ.getCode()); lngPngSettleHdr.setApproCode(ApproveCodeEnum.WTJ.getCode());
tempList.add(BeanUtil.copyProperties(lngPngSettleHdr,UpdateLngPngSettleHdrPurDto.class)); tempList.add(lngPngSettleHdr);
} }
dataService.updateBatch(tempList,new DataOperationListener<UpdateLngPngSettleHdrPurDto>() { dataService.updateBatch(tempList,new DataOperationListener<LngPngSettleHdrPur>() {
@Override @Override
public UpdateLngPngSettleHdrPurDto before(DataOperationContent<UpdateLngPngSettleHdrPurDto> content) { public LngPngSettleHdrPur before(DataOperationContent<LngPngSettleHdrPur> content) {
return null; return null;
} }
@Override @Override
public UpdateLngPngSettleHdrPurDto after(DataOperationContent<UpdateLngPngSettleHdrPurDto> content) { public LngPngSettleHdrPur after(DataOperationContent<LngPngSettleHdrPur> content) {
String sql = StringUtils.format("{? = call pc_lng_png_settle.f_submit_x(?)}", String sql = StringUtils.format("{? = call pc_lng_png_settle.f_submit_x(?)}",
content.getTableName()); content.getTableName());

View File

@ -28,6 +28,8 @@ import com.xjrsoft.module.dayPlan.mapper.LngPngSettleSalesDtlMapper;
import com.xjrsoft.module.dayPlan.mapper.LngPngSettleSalesMapper; import com.xjrsoft.module.dayPlan.mapper.LngPngSettleSalesMapper;
import com.xjrsoft.module.dayPlan.service.IPngSettleHdrService; import com.xjrsoft.module.dayPlan.service.IPngSettleHdrService;
import com.xjrsoft.module.dayPlan.vo.LngPngSettleHdrVo; import com.xjrsoft.module.dayPlan.vo.LngPngSettleHdrVo;
import com.xjrsoft.module.dayPlan.vo.LngPngSettleSalesDtlVo;
import com.xjrsoft.module.dayPlan.vo.LngPngSettleSalesVo;
import com.xjrsoft.module.system.client.IFileClient; import com.xjrsoft.module.system.client.IFileClient;
import com.xjrsoft.module.system.vo.LngFileUploadVo; import com.xjrsoft.module.system.vo.LngFileUploadVo;
@ -44,7 +46,8 @@ import shade.powerjob.com.google.common.collect.Lists;
@Service @Service
@AllArgsConstructor @AllArgsConstructor
public class PngSettleHdrServiceImpl extends MPJBaseServiceImpl<LngPngSettleHdrMapper, LngPngSettleHdr> implements IPngSettleHdrService { public class PngSettleHdrServiceImpl extends MPJBaseServiceImpl<LngPngSettleHdrMapper, LngPngSettleHdr> implements IPngSettleHdrService {
private final LngPngSettleHdrMapper lngPngSettleHdrMapper;
private final LngPngSettleHdrMapper lngPngSettleHdrMapper;
private final LngPngSettleSalesMapper lngPngSettleSalesMapper; private final LngPngSettleSalesMapper lngPngSettleSalesMapper;
@ -61,16 +64,15 @@ public class PngSettleHdrServiceImpl extends MPJBaseServiceImpl<LngPngSettleHdrM
if(lngPngSettleHdr == null) { if(lngPngSettleHdr == null) {
return null; return null;
} }
LngPngSettleHdrVo vo = BeanUtil.toBean(lngPngSettleHdr, LngPngSettleHdrVo.class);
if(CollectionUtils.isNotEmpty(lngPngSettleHdr.getLngPngSettleSalesList())) { if(CollectionUtils.isNotEmpty(vo.getLngPngSettleSalesList())) {
for(LngPngSettleSales ss:lngPngSettleHdr.getLngPngSettleSalesList()) { for(LngPngSettleSalesVo ss:vo.getLngPngSettleSalesList()) {
ss.setKsName(lngPngSettleSalesMapper.getKsNameBygId(ss.getKsId())); ss.setKsName(lngPngSettleSalesMapper.getKsNameBygId(ss.getKsId()));
List<LngPngSettleSalesDtl> list = lngPngSettleSalesDtlMapper.selectList(new LambdaQueryWrapper<LngPngSettleSalesDtl>() List<LngPngSettleSalesDtlVo> list = lngPngSettleSalesDtlMapper.queryDtlList(ss.getId());
.eq(LngPngSettleSalesDtl::getSettleId, ss.getId()));
ss.setLngPngSettleSalesDtlList(list); ss.setLngPngSettleSalesDtlList(list);
} }
} }
LngPngSettleHdrVo vo = BeanUtil.toBean(lngPngSettleHdr, LngPngSettleHdrVo.class);
List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_png_settle_hdr", "lngFileUploadList", vo.getId()); List<LngFileUploadVo> fileList = fileClient.getTableFiles("lng_png_settle_hdr", "lngFileUploadList", vo.getId());
vo.setLngFileUploadList(fileList); vo.setLngFileUploadList(fileList);
@ -81,9 +83,9 @@ public class PngSettleHdrServiceImpl extends MPJBaseServiceImpl<LngPngSettleHdrM
@Override @Override
public void cancel(@Valid List<Long> ids) { public void cancel(@Valid List<Long> ids) {
List<UpdateLngPngSettleHdrDto> tempList = Lists.newArrayList(); List<LngPngSettleHdr> tempList = Lists.newArrayList();
for(Long id:ids) { for(Long id:ids) {
LngPngSettleHdr lngPngSettleHdr = this.getByIdDeep(id); LngPngSettleHdr lngPngSettleHdr = this.getById(id);
if (lngPngSettleHdr == null) { if (lngPngSettleHdr == null) {
throw new BusinessException(BusinessCode.of(10500,"找不到此数据!")); throw new BusinessException(BusinessCode.of(10500,"找不到此数据!"));
@ -91,17 +93,17 @@ public class PngSettleHdrServiceImpl extends MPJBaseServiceImpl<LngPngSettleHdrM
lngPngSettleHdr.setApproCode(ApproveCodeEnum.WTJ.getCode()); lngPngSettleHdr.setApproCode(ApproveCodeEnum.WTJ.getCode());
tempList.add(BeanUtil.copyProperties(lngPngSettleHdr,UpdateLngPngSettleHdrDto.class)); tempList.add(lngPngSettleHdr);
} }
dataService.updateBatch(tempList,new DataOperationListener<UpdateLngPngSettleHdrDto>() { dataService.updateBatch(tempList,new DataOperationListener<LngPngSettleHdr>() {
@Override @Override
public UpdateLngPngSettleHdrDto before(DataOperationContent<UpdateLngPngSettleHdrDto> content) { public LngPngSettleHdr before(DataOperationContent<LngPngSettleHdr> content) {
return null; return null;
} }
@Override @Override
public UpdateLngPngSettleHdrDto after(DataOperationContent<UpdateLngPngSettleHdrDto> content) { public LngPngSettleHdr after(DataOperationContent<LngPngSettleHdr> content) {
String sql = StringUtils.format("{? = call pc_lng_png_settle.f_submit_x(?)}", String sql = StringUtils.format("{? = call pc_lng_png_settle.f_submit_x(?)}",
content.getTableName()); content.getTableName());