This commit is contained in:
mashuai 2025-12-29 17:41:53 +08:00
parent 73c64cf1ab
commit a6e1d9e2b8
12 changed files with 171 additions and 32 deletions

View File

@ -17,7 +17,9 @@ public enum QrBoxStatusEnum {
QR_BOX_STATUS_WAIT_TRANSFER(2, "待移交"), QR_BOX_STATUS_WAIT_TRANSFER(2, "待移交"),
QR_BOX_STATUS_WAIT_RECEIVE(3, "待接收"), QR_BOX_STATUS_WAIT_RECEIVE(3, "待接收"),
QR_BOX_STATUS_ON_RECEIVE(4, "已接收"), QR_BOX_STATUS_ON_RECEIVE(4, "已接收"),
QR_BOX_STATUS_REJECT(5, "移交被驳回"); QR_BOX_STATUS_REJECT(5, "移交被驳回"),
// 已录入
QR_BOX_STATUS_COMPLETE(6, "已录入");

View File

@ -141,8 +141,6 @@ public class ProjUsingRecord {
@ApiModelProperty(value = "总在用数量") @ApiModelProperty(value = "总在用数量")
private BigDecimal allUsNum; private BigDecimal allUsNum;
private String jijuType;
@ApiModelProperty(value = "竣工状态") @ApiModelProperty(value = "竣工状态")
@Excel(name = "竣工状态", readConverterExp = "0=未竣工,1=已竣工") @Excel(name = "竣工状态", readConverterExp = "0=未竣工,1=已竣工")
private String isFinish; private String isFinish;
@ -152,4 +150,12 @@ public class ProjUsingRecord {
@DateTimeFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date actualEndDate; private Date actualEndDate;
@ApiModelProperty("机具类型1施工机具2安全工器具")
@Excel(name = "机具类型", readConverterExp = "1=施工机具,2=安全工器具")
private String jijuType;
@ApiModelProperty("是否班组 0是1否")
@Excel(name = "是否班组", readConverterExp = "0=是,1=否")
private String isTeam;
} }

View File

@ -234,4 +234,14 @@ public class DirectApplyInfo extends BaseEntity {
@ApiModelProperty(value = "业务联单集合") @ApiModelProperty(value = "业务联单集合")
private List<String> codeList; private List<String> codeList;
/**
* 审核工程id
*/
private String auditProId;
/**
* 审核单位id
*/
private String auditUnitId;
} }

View File

@ -296,4 +296,11 @@ public interface MachineMapper
* @return * @return
*/ */
int insertMaStatusLog(Machine machine); int insertMaStatusLog(Machine machine);
/**
* 根据qrCode去ws_ma_info表查询二维码信息
* @param machine
* @return
*/
List<Machine> getInfoByCode(Machine machine);
} }

View File

@ -466,6 +466,10 @@ public class MachineServiceImpl implements IMachineService
@Override @Override
public AjaxResult getHisByCode(Machine machine) { public AjaxResult getHisByCode(Machine machine) {
List<Machine> maList = machineMapper.getListByCode(machine); List<Machine> maList = machineMapper.getListByCode(machine);
if (CollectionUtils.isEmpty(maList)){
// 根据qrCode去ws_ma_info表查询二维码信息
maList = machineMapper.getInfoByCode(machine);
}
if (CollectionUtils.isEmpty(maList)) { if (CollectionUtils.isEmpty(maList)) {
if (!StringHelper.isNullOrEmptyString(machine.getQrCode())){ if (!StringHelper.isNullOrEmptyString(machine.getQrCode())){
return AjaxResult.error("扫描二维码信息为空"); return AjaxResult.error("扫描二维码信息为空");

View File

@ -1768,6 +1768,7 @@ public class SltAgreementInfoController extends BaseController {
// 查询每个协议的各项费用明细 // 查询每个协议的各项费用明细
SltInfoVo vo = sltAgreementInfoService.getSltInfoReportBatch(info); SltInfoVo vo = sltAgreementInfoService.getSltInfoReportBatch(info);
vo.setIsFinish(info.getIsFinish()); vo.setIsFinish(info.getIsFinish());
vo.setActualEndDate(info.getActualEndDate());
if (vo != null && !ObjectUtil.isEmpty(vo)) { if (vo != null && !ObjectUtil.isEmpty(vo)) {
vo.setAgreementId(info.getAgreementId()); vo.setAgreementId(info.getAgreementId());
vo.setAgreementCode(info.getAgreementCode()); vo.setAgreementCode(info.getAgreementCode());
@ -1845,6 +1846,7 @@ public class SltAgreementInfoController extends BaseController {
// 查询每个协议的各项费用明细 // 查询每个协议的各项费用明细
SltInfoVo vo = sltAgreementInfoService.getSltInfoReportBatch(info); SltInfoVo vo = sltAgreementInfoService.getSltInfoReportBatch(info);
vo.setIsFinish(info.getIsFinish()); vo.setIsFinish(info.getIsFinish());
vo.setActualEndDate(info.getActualEndDate());
if (vo != null) { if (vo != null) {
vo.setAgreementId(info.getAgreementId()); vo.setAgreementId(info.getAgreementId());
vo.setAgreementCode(info.getAgreementCode()); vo.setAgreementCode(info.getAgreementCode());
@ -1858,8 +1860,15 @@ public class SltAgreementInfoController extends BaseController {
}); });
// 清空缓存防止内存泄漏 // 清空缓存防止内存泄漏
sltAgreementInfoService.clearCache(); sltAgreementInfoService.clearCache();
String fileName = "未结算报表";
// 根据list集合数去填充序号
for (int i = 0; i < dataList.size(); i++) {
dataList.get(i).setSeq(i + 1);
}
// 获取当前年月日时分秒导出时间用括号拼接在后面
String title = "未结算报表" + "" + "导出时间:" + DateUtils.getTime() + "";
ExcelUtil<SltInfoVo> util = new ExcelUtil<>(SltInfoVo.class); ExcelUtil<SltInfoVo> util = new ExcelUtil<>(SltInfoVo.class);
util.exportExcel(response, dataList, "导出未结算报表列表"); util.exportExcel(response, dataList, fileName, title);
} }

View File

@ -23,8 +23,12 @@ import java.util.List;
@Accessors(chain = true) @Accessors(chain = true)
public class SltInfoVo { public class SltInfoVo {
@ApiModelProperty(value = "序号")
@Excel(name = "序号", cellType = Excel.ColumnType.NUMERIC, width = 5,sort = 0)
private Integer seq;
@ApiModelProperty(value = "分公司") @ApiModelProperty(value = "分公司")
@Excel(name = "分公司") @Excel(name = "分公司", sort = 1)
private String impUnitName; private String impUnitName;
/** /**
@ -121,7 +125,7 @@ public class SltInfoVo {
* 协议编号 * 协议编号
*/ */
@ApiModelProperty(value = "协议编号") @ApiModelProperty(value = "协议编号")
@Excel(name = "协议编号",sort = 1) @Excel(name = "协议编号",sort = 0)
private String agreementCode; private String agreementCode;
/** 协议 ids */ /** 协议 ids */
@ -180,6 +184,6 @@ public class SltInfoVo {
@ApiModelProperty(value = "竣工日期") @ApiModelProperty(value = "竣工日期")
@DateTimeFormat(pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
//@Excel(name = "竣工日期") @Excel(name = "竣工日期", dateFormat = "yyyy-MM-dd")
private Date actualEndDate; private Date actualEndDate;
} }

View File

@ -1800,6 +1800,8 @@ public class SltAgreementInfoServiceImpl implements ISltAgreementInfoService {
summary.setQueryStartDate(queryStartDate); summary.setQueryStartDate(queryStartDate);
summary.setQueryEndDate(queryEndDate); summary.setQueryEndDate(queryEndDate);
summary.setRemark(firstDetail.getRemark()); summary.setRemark(firstDetail.getRemark());
summary.setIsFinish(firstDetail.getIsFinish());
summary.setActualEndDate(firstDetail.getActualEndDate());
// 计算汇总数据 // 计算汇总数据
int equipmentTypeCount = agreementDetails.size(); // 设备种类数量 int equipmentTypeCount = agreementDetails.size(); // 设备种类数量

View File

@ -31,9 +31,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
ROUND( IFNULL( mt.buy_price, 0 ) * IFNULL( SUM( sai.num ), 0 ), 2 ) AS totalPrice, ROUND( IFNULL( mt.buy_price, 0 ) * IFNULL( SUM( sai.num ), 0 ), 2 ) AS totalPrice,
CASE CASE
WHEN bp.actual_end_date is not null THEN '1' WHEN bp.actual_end_date is not null THEN '1'
WHEN bp.actual_end_date is null and bp.external_id is null THEN '2'
ELSE '0' ELSE '0'
END as isFinish, END as isFinish,
bp.actual_end_date as actualEndDate bp.actual_end_date as actualEndDate,
mt.jiju_type as jijuType,
CASE
WHEN bu.type_id = 1731 THEN '0'
ELSE '1'
END as isTeam
FROM FROM
bm_agreement_info bai bm_agreement_info bai
LEFT JOIN slt_agreement_info sai ON sai.agreement_id = bai.agreement_id LEFT JOIN slt_agreement_info sai ON sai.agreement_id = bai.agreement_id
@ -74,7 +80,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
AND bp.actual_end_date is not null AND bp.actual_end_date is not null
</if> </if>
<if test="isFinish != null and isFinish == 0"> <if test="isFinish != null and isFinish == 0">
AND bp.actual_end_date is null AND (bp.actual_end_date is null and bp.external_id is not null)
</if>
<if test="isFinish != null and isFinish == 2">
AND (bp.actual_end_date is null and bp.external_id is null)
</if> </if>
<if test="unitId != null"> <if test="unitId != null">
and bu.unit_id = #{unitId} and bu.unit_id = #{unitId}
@ -88,6 +97,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="isSlt != null and isSlt != ''"> <if test="isSlt != null and isSlt != ''">
and sai.is_slt = #{isSlt} and sai.is_slt = #{isSlt}
</if> </if>
<if test="jijuType != null and jijuType != '' ">
and mt.jiju_type = #{jijuType}
</if>
<if test="isTeam != null">
and bu.type_id
<choose>
<when test="isTeam == 0">= 1731</when>
<when test="isTeam == 1">!= 1731</when>
</choose>
</if>
GROUP BY GROUP BY
bai.agreement_id, bai.agreement_id,
mt.type_id mt.type_id

View File

@ -131,6 +131,12 @@
<if test="unitId != null and unitId != ''"> <if test="unitId != null and unitId != ''">
and bui.unit_id = #{unitId} and bui.unit_id = #{unitId}
</if> </if>
<if test="auditProId != null and auditProId != ''">
and (bpl.pro_id = #{auditProId} OR bpl1.pro_id = #{auditProId})
</if>
<if test="auditUnitId != null and auditUnitId != ''">
and (bui.unit_id = #{auditUnitId} OR bui1.unit_id = #{auditUnitId})
</if>
<if test="status != null and status != ''"> <if test="status != null and status != ''">
and swr.workflow_status = #{status} and swr.workflow_status = #{status}
</if> </if>

View File

@ -1317,6 +1317,28 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
FROM tm_task FROM tm_task
WHERE task_id = #{taskId} limit 1 WHERE task_id = #{taskId} limit 1
</select> </select>
<select id="getInfoByCode" resultType="com.bonus.material.ma.domain.Machine">
SELECT
id as maId,
ma_name as maName,
ma_model as maModel,
model_id as typeId,
ma_code as maCode,
qr_code as qrCode,
supplier as maVender,
check_man as checkMan,
this_check_time as thisCheckTime,
next_check_time as nextCheckTime
FROM
ws_ma_info
where 1=1
<if test="maId != null">and id = #{maId}</if>
<if test="maCode != null">and ma_code LIKE CONCAT('%',#{maCode},'%') </if>
<if test="qrCode != null">and qr_code = #{qrCode} </if>
limit 100
</select>
<insert id="insertMaStatusLog"> <insert id="insertMaStatusLog">
insert into update_ma_status_log insert into update_ma_status_log
<trim prefix="(" suffix=")" suffixOverrides=","> <trim prefix="(" suffix=")" suffixOverrides=",">

View File

@ -53,6 +53,8 @@
<result property="markTime" column="mark_time"/> <result property="markTime" column="mark_time"/>
<result property="leaseCost" column="lease_cost"/> <result property="leaseCost" column="lease_cost"/>
<result property="impUnitName" column="impUnit_name"/> <result property="impUnitName" column="impUnit_name"/>
<result property="isFinish" column="is_finish"/>
<result property="actualEndDate" column="actual_endDate"/>
</resultMap> </resultMap>
<sql id="selectSltAgreementInfoVo"> <sql id="selectSltAgreementInfoVo">
@ -886,11 +888,13 @@
sd.dept_name AS impUnitName, sd.dept_name AS impUnitName,
CASE CASE
WHEN bp.actual_end_date is not null THEN '1' WHEN bp.actual_end_date is not null THEN '1'
WHEN bp.actual_end_date is null and bp.external_id is null THEN '2'
ELSE '0' ELSE '0'
END as isFinish, END as isFinish,
bp.actual_end_date as actualEndDate, bp.actual_end_date as actualEndDate,
CASE CASE
WHEN bp.actual_end_date is not null THEN '已竣工' WHEN bp.actual_end_date is not null THEN '已竣工'
WHEN bp.actual_end_date is null and bp.external_id is null THEN ' '
ELSE '未竣工' ELSE '未竣工'
END as proStatus END as proStatus
FROM FROM
@ -945,7 +949,10 @@
AND bp.actual_end_date is not null AND bp.actual_end_date is not null
</if> </if>
<if test="isFinish != null and isFinish == 0"> <if test="isFinish != null and isFinish == 0">
AND bp.actual_end_date is null AND (bp.actual_end_date is null and bp.external_id is not null)
</if>
<if test="isFinish != null and isFinish == 2">
AND (bp.actual_end_date is null and bp.external_id is null)
</if> </if>
GROUP BY bai.agreement_id, saa.settlement_type GROUP BY bai.agreement_id, saa.settlement_type
ORDER BY saa.create_time desc ORDER BY saa.create_time desc
@ -972,9 +979,11 @@
END as sltStatus, END as sltStatus,
CASE CASE
WHEN bp.actual_end_date is not null THEN '1' WHEN bp.actual_end_date is not null THEN '1'
WHEN bp.actual_end_date is null and bp.external_id is null THEN '2'
ELSE '0' ELSE '0'
END as isFinish, END as isFinish,
sd.dept_name AS impUnitName sd.dept_name AS impUnitName,
bp.actual_end_date as actualEndDate
FROM bm_agreement_info bai FROM bm_agreement_info bai
INNER JOIN bm_unit bui ON bui.unit_id = bai.unit_id AND bui.type_id != '1731' INNER JOIN bm_unit bui ON bui.unit_id = bai.unit_id AND bui.type_id != '1731'
LEFT JOIN bm_project bp ON bp.pro_id = bai.project_id LEFT JOIN bm_project bp ON bp.pro_id = bai.project_id
@ -988,6 +997,9 @@
#{item} #{item}
</foreach> </foreach>
</if> </if>
<if test="unitId != null and unitId != ''">
AND bai.unit_id = #{unitId}
</if>
<if test="projectId != null and projectId != ''"> <if test="projectId != null and projectId != ''">
AND bai.project_id = #{projectId} AND bai.project_id = #{projectId}
</if> </if>
@ -1007,7 +1019,10 @@
AND bp.actual_end_date is not null AND bp.actual_end_date is not null
</if> </if>
<if test="isFinish != null and isFinish == 0"> <if test="isFinish != null and isFinish == 0">
AND bp.actual_end_date is null AND (bp.actual_end_date is null and bp.external_id is not null)
</if>
<if test="isFinish != null and isFinish == 2">
AND (bp.actual_end_date is null and bp.external_id is null)
</if> </if>
ORDER BY bai.create_time DESC ORDER BY bai.create_time DESC
</select> </select>
@ -1129,6 +1144,7 @@
sd.dept_name AS impUnitName, sd.dept_name AS impUnitName,
CASE CASE
WHEN bp.actual_end_date is not null THEN '1' WHEN bp.actual_end_date is not null THEN '1'
WHEN bp.actual_end_date is null and bp.external_id is null THEN '2'
ELSE '0' ELSE '0'
END as isFinish, END as isFinish,
bp.actual_end_date as actualEndDate bp.actual_end_date as actualEndDate
@ -1167,7 +1183,10 @@
and bp.actual_end_date is not null and bp.actual_end_date is not null
</if> </if>
<if test="info.isFinish != null and info.isFinish == 0"> <if test="info.isFinish != null and info.isFinish == 0">
and bp.actual_end_date is null AND (bp.actual_end_date is null and bp.external_id is not null)
</if>
<if test="info.isFinish != null and info.isFinish == 2">
AND (bp.actual_end_date is null and bp.external_id is null)
</if> </if>
</select> </select>
@ -1191,6 +1210,7 @@
case rc.status when '0' then '未审核' when '1' then '已审核' when '2' then '已驳回' else '' end as repairStatus, case rc.status when '0' then '未审核' when '1' then '已审核' when '2' then '已驳回' else '' end as repairStatus,
CASE CASE
WHEN bp.actual_end_date is not null THEN '1' WHEN bp.actual_end_date is not null THEN '1'
WHEN bp.actual_end_date is null and bp.external_id is null THEN '2'
ELSE '0' ELSE '0'
END as isFinish, END as isFinish,
bp.actual_end_date as actualEndDate, bp.actual_end_date as actualEndDate,
@ -1225,7 +1245,10 @@
and bp.actual_end_date is not null and bp.actual_end_date is not null
</if> </if>
<if test="info.isFinish != null and info.isFinish == 0"> <if test="info.isFinish != null and info.isFinish == 0">
and bp.actual_end_date is null and (bp.actual_end_date is null and bp.external_id is not null)
</if>
<if test="info.isFinish != null and info.isFinish == 2">
AND (bp.actual_end_date is null and bp.external_id is null)
</if> </if>
</select> </select>
@ -1250,6 +1273,7 @@
sd.dept_name AS impUnitName, sd.dept_name AS impUnitName,
CASE CASE
WHEN bp.actual_end_date is not null THEN '1' WHEN bp.actual_end_date is not null THEN '1'
WHEN bp.actual_end_date is null and bp.external_id is null THEN '2'
ELSE '0' ELSE '0'
END as isFinish, END as isFinish,
bp.actual_end_date as actualEndDate bp.actual_end_date as actualEndDate
@ -1288,7 +1312,10 @@
AND bp.actual_end_date is not null AND bp.actual_end_date is not null
</if> </if>
<if test="info.isFinish != null and info.isFinish == 0"> <if test="info.isFinish != null and info.isFinish == 0">
AND bp.actual_end_date is null AND (bp.actual_end_date is null and bp.external_id is not null)
</if>
<if test="info.isFinish != null and info.isFinish == 2">
AND (bp.actual_end_date is null and bp.external_id is null)
</if> </if>
</select> </select>
@ -1313,6 +1340,7 @@
sd.dept_name AS impUnitName, sd.dept_name AS impUnitName,
CASE CASE
WHEN bp.actual_end_date is not null THEN '1' WHEN bp.actual_end_date is not null THEN '1'
WHEN bp.actual_end_date is null and bp.external_id is null THEN '2'
ELSE '0' ELSE '0'
END as isFinish, END as isFinish,
bp.actual_end_date as actualEndDate bp.actual_end_date as actualEndDate
@ -1346,7 +1374,10 @@
AND bp.actual_end_date is not null AND bp.actual_end_date is not null
</if> </if>
<if test="info.isFinish != null and info.isFinish == 0"> <if test="info.isFinish != null and info.isFinish == 0">
AND bp.actual_end_date is null AND (bp.actual_end_date is null and bp.external_id is not null)
</if>
<if test="info.isFinish != null and info.isFinish == 2">
AND (bp.actual_end_date is null and bp.external_id is null)
</if> </if>
</select> </select>
@ -1425,6 +1456,7 @@
sd.dept_name AS impUnitName, sd.dept_name AS impUnitName,
CASE CASE
WHEN bp.actual_end_date is not null THEN '1' WHEN bp.actual_end_date is not null THEN '1'
WHEN bp.actual_end_date is null and bp.external_id is null THEN '2'
ELSE '0' ELSE '0'
END as isFinish, END as isFinish,
bp.actual_end_date as actualEndDate bp.actual_end_date as actualEndDate
@ -1473,7 +1505,10 @@
AND bp.actual_end_date is not null AND bp.actual_end_date is not null
</if> </if>
<if test="isFinish != null and isFinish == 0"> <if test="isFinish != null and isFinish == 0">
AND bp.actual_end_date is null AND (bp.actual_end_date is null and bp.external_id is not null)
</if>
<if test="isFinish != null and isFinish == 2">
AND (bp.actual_end_date is null and bp.external_id is null)
</if> </if>
</where> </where>
) res ) res
@ -1606,13 +1641,10 @@
sd.dept_name AS impUnit_name, sd.dept_name AS impUnit_name,
CASE CASE
WHEN bp.actual_end_date is not null THEN '1' WHEN bp.actual_end_date is not null THEN '1'
WHEN bp.actual_end_date is null and bp.external_id is null THEN '2'
ELSE '0' ELSE '0'
END as isFinish, END as is_finish,
bp.actual_end_date as actualEndDate, bp.actual_end_date as actual_endDate
CASE
WHEN bp.actual_end_date is not null THEN '已竣工'
ELSE '未竣工'
END as proStatus
FROM bm_agreement_info bai FROM bm_agreement_info bai
INNER JOIN slt_agreement_info sai ON bai.agreement_id = sai.agreement_id INNER JOIN slt_agreement_info sai ON bai.agreement_id = sai.agreement_id
LEFT JOIN bm_unit bu ON bai.unit_id = bu.unit_id LEFT JOIN bm_unit bu ON bai.unit_id = bu.unit_id
@ -1634,7 +1666,10 @@
AND bp.actual_end_date is not null AND bp.actual_end_date is not null
</if> </if>
<if test="isFinish != null and isFinish == 0"> <if test="isFinish != null and isFinish == 0">
AND bp.actual_end_date is null AND (bp.actual_end_date is null and bp.external_id is not null)
</if>
<if test="isFinish != null and isFinish == 2">
AND (bp.actual_end_date is null and bp.external_id is null)
</if> </if>
<if test="agreementIds != null and agreementIds.size() > 0"> <if test="agreementIds != null and agreementIds.size() > 0">
AND bai.agreement_id IN AND bai.agreement_id IN
@ -1724,6 +1759,9 @@
#{item} #{item}
</foreach> </foreach>
</if> </if>
<if test="unitId != null and unitId != ''">
AND bai.unit_id = #{unitId}
</if>
<if test="projectId != null and projectId != ''"> <if test="projectId != null and projectId != ''">
AND bai.project_id = #{projectId} AND bai.project_id = #{projectId}
</if> </if>
@ -1739,6 +1777,15 @@
<if test="projectName != null and projectName != ''"> <if test="projectName != null and projectName != ''">
AND bp.pro_name LIKE CONCAT('%', #{projectName}, '%') AND bp.pro_name LIKE CONCAT('%', #{projectName}, '%')
</if> </if>
<if test="isFinish != null and isFinish == 1">
AND bp.actual_end_date is not null
</if>
<if test="isFinish != null and isFinish == 0">
AND (bp.actual_end_date is null and bp.external_id is not null)
</if>
<if test="isFinish != null and isFinish == 2">
AND (bp.actual_end_date is null and bp.external_id is null)
</if>
ORDER BY bai.create_time DESC ORDER BY bai.create_time DESC
</select> </select>
@ -1774,13 +1821,10 @@
sd.dept_name AS impUnit_name, sd.dept_name AS impUnit_name,
CASE CASE
WHEN bp.actual_end_date is not null THEN '1' WHEN bp.actual_end_date is not null THEN '1'
WHEN bp.actual_end_date is null and bp.external_id is null THEN '2'
ELSE '0' ELSE '0'
END as isFinish, END as is_finish,
bp.actual_end_date as actualEndDate, bp.actual_end_date as actual_endDate
CASE
WHEN bp.actual_end_date is not null THEN '已竣工'
ELSE '未竣工'
END as proStatus
FROM bm_agreement_info bai FROM bm_agreement_info bai
LEFT JOIN slt_agreement_apply saa on bai.agreement_id = saa.agreement_id LEFT JOIN slt_agreement_apply saa on bai.agreement_id = saa.agreement_id
LEFT JOIN slt_agreement_details sai ON saa.ID = sai.apply_id LEFT JOIN slt_agreement_details sai ON saa.ID = sai.apply_id
@ -1803,7 +1847,10 @@
AND bp.actual_end_date is not null AND bp.actual_end_date is not null
</if> </if>
<if test="isFinish != null and isFinish == 0"> <if test="isFinish != null and isFinish == 0">
AND bp.actual_end_date is null AND (bp.actual_end_date is null and bp.external_id is not null)
</if>
<if test="isFinish != null and isFinish == 2">
AND (bp.actual_end_date is null and bp.external_id is null)
</if> </if>
<if test="agreementIds != null and agreementIds.size() > 0"> <if test="agreementIds != null and agreementIds.size() > 0">
AND bai.agreement_id IN AND bai.agreement_id IN
@ -1855,7 +1902,8 @@
tt.task_id as taskId, tt.task_id as taskId,
tt.code as repairCode, tt.code as repairCode,
tt.task_type as taskType, tt.task_type as taskType,
sdd.dict_label as repairStatus sdd.dict_label as repairStatus,
tt.create_by as createBy
from from
tm_task tt tm_task tt
left join tm_task_agreement tta on tta.task_id = tt.task_id left join tm_task_agreement tta on tta.task_id = tt.task_id