10-15-承包合同竣工结算
This commit is contained in:
@ -7,6 +7,7 @@ import lombok.Data;
|
|||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
import org.springframework.format.annotation.DateTimeFormat;
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
import java.io.Serial;
|
import java.io.Serial;
|
||||||
@ -31,6 +32,11 @@ public class XzdContractAccount extends BaseEntity {
|
|||||||
@TableId(value = "id")
|
@TableId(value = "id")
|
||||||
private Long id;
|
private Long id;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单据编号
|
||||||
|
*/
|
||||||
|
private String documentCodeThis;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 标题
|
* 标题
|
||||||
*/
|
*/
|
||||||
@ -66,12 +72,12 @@ public class XzdContractAccount extends BaseEntity {
|
|||||||
/**
|
/**
|
||||||
* 送审造价
|
* 送审造价
|
||||||
*/
|
*/
|
||||||
private Long submittedCost;
|
private BigDecimal submittedCost;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 审定总价
|
* 审定总价
|
||||||
*/
|
*/
|
||||||
private Long totalPrice;
|
private BigDecimal totalPrice;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 审定日期
|
* 审定日期
|
||||||
@ -118,7 +124,7 @@ public class XzdContractAccount extends BaseEntity {
|
|||||||
/**
|
/**
|
||||||
* 本期应收金额
|
* 本期应收金额
|
||||||
*/
|
*/
|
||||||
private Long amountReceivable;
|
private BigDecimal amountReceivable;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 竣工日期
|
* 竣工日期
|
||||||
@ -135,12 +141,12 @@ public class XzdContractAccount extends BaseEntity {
|
|||||||
/**
|
/**
|
||||||
* 本期决算总额
|
* 本期决算总额
|
||||||
*/
|
*/
|
||||||
private Long settlementAmount;
|
private BigDecimal settlementAmount;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 质保金金额(客户)
|
* 质保金金额(客户)
|
||||||
*/
|
*/
|
||||||
private Long warrantyAmount;
|
private BigDecimal warrantyAmount;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 业主单位(客户)
|
* 业主单位(客户)
|
||||||
@ -157,5 +163,6 @@ public class XzdContractAccount extends BaseEntity {
|
|||||||
*/
|
*/
|
||||||
private Long review;
|
private Long review;
|
||||||
|
|
||||||
|
private String fileId;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -11,6 +11,7 @@ import lombok.EqualsAndHashCode;
|
|||||||
import jakarta.validation.constraints.*;
|
import jakarta.validation.constraints.*;
|
||||||
import org.springframework.format.annotation.DateTimeFormat;
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -29,6 +30,11 @@ public class XzdContractAccountBo extends BaseEntity {
|
|||||||
*/
|
*/
|
||||||
private Long id;
|
private Long id;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单据编号
|
||||||
|
*/
|
||||||
|
private String documentCodeThis;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 标题
|
* 标题
|
||||||
*/
|
*/
|
||||||
@ -63,12 +69,12 @@ public class XzdContractAccountBo extends BaseEntity {
|
|||||||
/**
|
/**
|
||||||
* 送审造价
|
* 送审造价
|
||||||
*/
|
*/
|
||||||
private Long submittedCost;
|
private BigDecimal submittedCost;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 审定总价
|
* 审定总价
|
||||||
*/
|
*/
|
||||||
private Long totalPrice;
|
private BigDecimal totalPrice;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 审定日期
|
* 审定日期
|
||||||
@ -100,7 +106,7 @@ public class XzdContractAccountBo extends BaseEntity {
|
|||||||
/**
|
/**
|
||||||
* 本期应收金额
|
* 本期应收金额
|
||||||
*/
|
*/
|
||||||
private Long amountReceivable;
|
private BigDecimal amountReceivable;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 竣工日期
|
* 竣工日期
|
||||||
@ -117,12 +123,12 @@ public class XzdContractAccountBo extends BaseEntity {
|
|||||||
/**
|
/**
|
||||||
* 本期决算总额
|
* 本期决算总额
|
||||||
*/
|
*/
|
||||||
private Long settlementAmount;
|
private BigDecimal settlementAmount;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 质保金金额(客户)
|
* 质保金金额(客户)
|
||||||
*/
|
*/
|
||||||
private Long warrantyAmount;
|
private BigDecimal warrantyAmount;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 业主单位(客户)
|
* 业主单位(客户)
|
||||||
@ -139,5 +145,6 @@ public class XzdContractAccountBo extends BaseEntity {
|
|||||||
*/
|
*/
|
||||||
private Long review;
|
private Long review;
|
||||||
|
|
||||||
|
private String fileId;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,5 +1,6 @@
|
|||||||
package org.dromara.xzd.domain.vo;
|
package org.dromara.xzd.domain.vo;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
@ -35,6 +36,11 @@ public class XzdContractAccountVo implements Serializable {
|
|||||||
@ExcelProperty(value = "id")
|
@ExcelProperty(value = "id")
|
||||||
private Long id;
|
private Long id;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单据编号
|
||||||
|
*/
|
||||||
|
private String documentCodeThis;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 标题
|
* 标题
|
||||||
*/
|
*/
|
||||||
@ -130,7 +136,7 @@ public class XzdContractAccountVo implements Serializable {
|
|||||||
* 本期应收金额
|
* 本期应收金额
|
||||||
*/
|
*/
|
||||||
@ExcelProperty(value = "本期应收金额")
|
@ExcelProperty(value = "本期应收金额")
|
||||||
private Long amountReceivable;
|
private BigDecimal amountReceivable;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 竣工日期
|
* 竣工日期
|
||||||
@ -150,13 +156,13 @@ public class XzdContractAccountVo implements Serializable {
|
|||||||
* 本期决算总额
|
* 本期决算总额
|
||||||
*/
|
*/
|
||||||
@ExcelProperty(value = "本期决算总额")
|
@ExcelProperty(value = "本期决算总额")
|
||||||
private Long settlementAmount;
|
private BigDecimal settlementAmount;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 质保金金额(客户)
|
* 质保金金额(客户)
|
||||||
*/
|
*/
|
||||||
@ExcelProperty(value = "质保金金额(客户)")
|
@ExcelProperty(value = "质保金金额(客户)")
|
||||||
private Long warrantyAmount;
|
private BigDecimal warrantyAmount;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 业主单位(客户)
|
* 业主单位(客户)
|
||||||
@ -164,17 +170,33 @@ public class XzdContractAccountVo implements Serializable {
|
|||||||
@ExcelProperty(value = "业主单位(客户)")
|
@ExcelProperty(value = "业主单位(客户)")
|
||||||
private Long owner;
|
private Long owner;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 业主单位名称
|
||||||
|
*/
|
||||||
|
private String ownerName;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 监理单位(客户)
|
* 监理单位(客户)
|
||||||
*/
|
*/
|
||||||
@ExcelProperty(value = "监理单位(客户)")
|
@ExcelProperty(value = "监理单位(客户)")
|
||||||
private Long supervision;
|
private Long supervision;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 监理单位名称
|
||||||
|
*/
|
||||||
|
private String supervisionName;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 审核单位(客户)
|
* 审核单位(客户)
|
||||||
*/
|
*/
|
||||||
@ExcelProperty(value = "审核单位(客户)")
|
@ExcelProperty(value = "审核单位(客户)")
|
||||||
private Long review;
|
private Long review;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 审核单位名称
|
||||||
|
*/
|
||||||
|
private String reviewName;
|
||||||
|
|
||||||
|
private String fileId;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
package org.dromara.xzd.service.impl;
|
package org.dromara.xzd.service.impl;
|
||||||
|
|
||||||
|
import cn.hutool.core.util.IdUtil;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.ParameterUtils;
|
import com.baomidou.mybatisplus.core.toolkit.ParameterUtils;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import org.dromara.common.core.domain.R;
|
||||||
import org.dromara.common.core.utils.MapstructUtils;
|
import org.dromara.common.core.utils.MapstructUtils;
|
||||||
import org.dromara.common.core.utils.StringUtils;
|
import org.dromara.common.core.utils.StringUtils;
|
||||||
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
import org.dromara.common.mybatis.core.page.TableDataInfo;
|
||||||
@ -10,9 +12,12 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import org.dromara.system.service.impl.SysOssServiceImpl;
|
||||||
import org.dromara.xzd.domain.XzdSettlementRules;
|
import org.dromara.xzd.domain.XzdSettlementRules;
|
||||||
|
import org.dromara.xzd.domain.dto.QuerCorrespondentDto;
|
||||||
import org.dromara.xzd.domain.vo.XzdContractDetailsVo;
|
import org.dromara.xzd.domain.vo.XzdContractDetailsVo;
|
||||||
import org.dromara.xzd.domain.vo.XzdSettlementRulesVo;
|
import org.dromara.xzd.domain.vo.XzdSettlementRulesVo;
|
||||||
|
import org.dromara.xzd.service.IXzdCorrespondentList;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import org.dromara.xzd.domain.bo.XzdContractAccountBo;
|
import org.dromara.xzd.domain.bo.XzdContractAccountBo;
|
||||||
@ -21,6 +26,7 @@ import org.dromara.xzd.domain.XzdContractAccount;
|
|||||||
import org.dromara.xzd.mapper.XzdContractAccountMapper;
|
import org.dromara.xzd.mapper.XzdContractAccountMapper;
|
||||||
import org.dromara.xzd.service.IXzdContractAccountService;
|
import org.dromara.xzd.service.IXzdContractAccountService;
|
||||||
|
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
@ -40,6 +46,10 @@ public class XzdContractAccountServiceImpl extends ServiceImpl<XzdContractAccoun
|
|||||||
private XzdContractDetailsServiceImpl xzdContractDetailsService;
|
private XzdContractDetailsServiceImpl xzdContractDetailsService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private XzdSettlementRulesServiceImpl xzdSettlementRulesService;
|
private XzdSettlementRulesServiceImpl xzdSettlementRulesService;
|
||||||
|
@Autowired
|
||||||
|
private IXzdCorrespondentList iXzdCorrespondentList;
|
||||||
|
@Autowired
|
||||||
|
private SysOssServiceImpl sysOssService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询承包合同竣工结算
|
* 查询承包合同竣工结算
|
||||||
@ -63,6 +73,7 @@ public class XzdContractAccountServiceImpl extends ServiceImpl<XzdContractAccoun
|
|||||||
public TableDataInfo<XzdContractAccountVo> queryPageList(XzdContractAccountBo bo, PageQuery pageQuery) {
|
public TableDataInfo<XzdContractAccountVo> queryPageList(XzdContractAccountBo bo, PageQuery pageQuery) {
|
||||||
LambdaQueryWrapper<XzdContractAccount> lqw = buildQueryWrapper(bo);
|
LambdaQueryWrapper<XzdContractAccount> lqw = buildQueryWrapper(bo);
|
||||||
Page<XzdContractAccountVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
Page<XzdContractAccountVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||||
|
setValue(result.getRecords());
|
||||||
return TableDataInfo.build(result);
|
return TableDataInfo.build(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -115,11 +126,12 @@ public class XzdContractAccountServiceImpl extends ServiceImpl<XzdContractAccoun
|
|||||||
public Boolean insertByBo(XzdContractAccountBo bo) {
|
public Boolean insertByBo(XzdContractAccountBo bo) {
|
||||||
XzdContractAccount add = MapstructUtils.convert(bo, XzdContractAccount.class);
|
XzdContractAccount add = MapstructUtils.convert(bo, XzdContractAccount.class);
|
||||||
validEntityBeforeSave(add);
|
validEntityBeforeSave(add);
|
||||||
|
add.setDocumentCodeThis(IdUtil.getSnowflakeNextIdStr());
|
||||||
boolean flag = baseMapper.insert(add) > 0;
|
boolean flag = baseMapper.insert(add) > 0;
|
||||||
if (flag) {
|
if (!flag) {
|
||||||
bo.setId(add.getId());
|
return false;
|
||||||
}
|
}
|
||||||
return flag;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -132,7 +144,27 @@ public class XzdContractAccountServiceImpl extends ServiceImpl<XzdContractAccoun
|
|||||||
public Boolean updateByBo(XzdContractAccountBo bo) {
|
public Boolean updateByBo(XzdContractAccountBo bo) {
|
||||||
XzdContractAccount update = MapstructUtils.convert(bo, XzdContractAccount.class);
|
XzdContractAccount update = MapstructUtils.convert(bo, XzdContractAccount.class);
|
||||||
validEntityBeforeSave(update);
|
validEntityBeforeSave(update);
|
||||||
return baseMapper.updateById(update) > 0;
|
XzdContractAccountVo old = queryById(update.getId());
|
||||||
|
boolean b = baseMapper.updateById(update) > 0;
|
||||||
|
//更新文件
|
||||||
|
if (bo.getFileId() != null && !bo.getFileId().isEmpty()){
|
||||||
|
if (old.getFileId() != null && !old.getFileId().isEmpty()) {
|
||||||
|
List<Long> oldFileId = Arrays.stream(old.getFileId().split(",")).map(Long::valueOf).toList();
|
||||||
|
List<Long> nowFileId = Arrays.stream(bo.getFileId().split(",")).map(Long::valueOf).toList();
|
||||||
|
for (Long l : oldFileId) {
|
||||||
|
if (!nowFileId.contains(l)) {
|
||||||
|
sysOssService.deleteWithValidByIds(List.of(l), false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
if (old.getFileId()!= null && !old.getFileId().isEmpty()){
|
||||||
|
List<Long> deleteIds = Arrays.stream(old.getFileId().split(",")).map(Long::valueOf).toList();
|
||||||
|
sysOssService.deleteWithValidByIds(deleteIds, false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return b;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -183,6 +215,35 @@ public class XzdContractAccountServiceImpl extends ServiceImpl<XzdContractAccoun
|
|||||||
vo.setSettlementRules(settlementRulesVo);
|
vo.setSettlementRules(settlementRulesVo);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
//业主单位
|
||||||
|
if (vo.getOwner() != null){
|
||||||
|
R<QuerCorrespondentDto> byid2 = iXzdCorrespondentList.getCustomerByid(vo.getOwner());
|
||||||
|
if (byid2 != null) {
|
||||||
|
if (byid2.getData().getXzdCustomerinformation() != null) {
|
||||||
|
vo.setOwnerName(byid2.getData().getXzdCustomerinformation().getUnitName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//监理单位
|
||||||
|
if (vo.getSupervision() != null){
|
||||||
|
if (vo.getOwner() != null){
|
||||||
|
R<QuerCorrespondentDto> byid2 = iXzdCorrespondentList.getCustomerByid(vo.getSupervision());
|
||||||
|
if (byid2 != null) {
|
||||||
|
if (byid2.getData().getXzdCustomerinformation() != null) {
|
||||||
|
vo.setOwnerName(byid2.getData().getXzdCustomerinformation().getUnitName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//审核单位
|
||||||
|
if (vo.getReview() != null){
|
||||||
|
R<QuerCorrespondentDto> byid2 = iXzdCorrespondentList.getCustomerByid(vo.getReview());
|
||||||
|
if (byid2 != null) {
|
||||||
|
if (byid2.getData().getXzdCustomerinformation() != null) {
|
||||||
|
vo.setReviewName(byid2.getData().getXzdCustomerinformation().getUnitName());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user