ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CalculateReportVO.java
@@ -6,6 +6,8 @@ import java.math.BigDecimal; import java.util.List; import java.time.LocalDateTime; import com.ycl.platform.domain.form.CalculateRecordForm; import org.springframework.lang.NonNull; import org.springframework.beans.BeanUtils; import io.swagger.annotations.ApiModel; @@ -46,6 +48,9 @@ /** 修改人 */ private Long updateBy; /** 明细 */ private List<CalculateRecordVO> recordList; public static CalculateReportVO getVoByEntity(@NonNull CalculateReport entity, CalculateReportVO vo) { if(vo == null) { vo = new CalculateReportVO(); ycl-server/src/main/java/com/ycl/platform/mapper/CalculateRecordMapper.java
@@ -4,8 +4,11 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ycl.platform.domain.vo.CalculateRecordVO; import com.ycl.platform.domain.form.CalculateRecordForm; import java.util.List; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; /** * 核算记录 Mapper 接口 @@ -16,4 +19,11 @@ @Mapper public interface CalculateRecordMapper extends BaseMapper<CalculateRecord> { /** * 格局合同ID获取明细 * * @param contractId 合同ID * @return */ List<CalculateRecordVO> getByContractId(@Param("contractId") Integer contractId); } ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateReportServiceImpl.java
@@ -4,6 +4,7 @@ import com.ycl.platform.domain.entity.CalculateRecord; import com.ycl.platform.domain.entity.CalculateReport; import com.ycl.platform.domain.form.CalculateReportBackfillForm; import com.ycl.platform.domain.vo.CalculateRecordVO; import com.ycl.platform.mapper.CalculateRecordMapper; import com.ycl.platform.mapper.CalculateReportMapper; import com.ycl.platform.service.CalculateReportService; @@ -121,10 +122,12 @@ */ @Override public Result detail(String id) { CalculateReport entity = baseMapper.selectById(id); Assert.notNull(entity, "记录不存在"); CalculateReportVO vo = CalculateReportVO.getVoByEntity(entity, null); // 明细列表 List<CalculateRecordVO> recordList = calculateRecordMapper.getByContractId(entity.getContractId()); vo.setRecordList(recordList); return Result.ok().data(vo); } ycl-server/src/main/resources/mapper/zgyw/CalculateRecordMapper.xml
@@ -7,9 +7,20 @@ <result column="id" property="id" /> <result column="create_time" property="createTime" /> <result column="rule_id" property="ruleId" /> <result column="rule_name" property="ruleName" /> <result column="contract_id" property="contractId" /> <result column="deduct_money" property="deductMoney" /> <result column="score" property="score" /> </resultMap> <select id="getByContractId" resultMap="BaseResultMap"> SELECT tcr.id, tcr.create_time, tcr.deduct_money, tcru.rule_name, tcr.score, tcr.rule_id FROM t_calculate_record tcr INNER JOIN t_calculate_rule tcru ON tcr.rule_id = tcru.id AND tcr.contract_id = #{contractId} WHERE tcru.deleted = 0 AND tcr.deleted = 0 </select> </mapper> ycl-server/src/main/resources/mapper/zgyw/CalculateReportMapper.xml
@@ -30,6 +30,7 @@ INNER JOIN t_contract tc ON tcr.contract_id = tc.id INNER JOIN t_yw_unit tyu ON tyu.id = tc.unit_id <where> AND tcr.deleted = 0 AND tc.deleted = 0 AND tyu.deleted = 0 <if test="query.unitName != null and query.unitName != '' "> AND tyu.unit_name like concat('%', #{query.unitName}, '%') </if>