(defeatletedata): 新增销售订单取消签证和删除功能

- 新增 cancelSignatureSoSaleReadExcel20250528V2 方法,用于取消销售订单签证并删除
- 新增 abandonmentReviewSoSaleinvoice2505282107 方法,用于弃审并删除销售发票- 新增 cancelSignatureSoSaleReadExcel2505282140V2 方法,用于取消销售订单签证并删除
- 在 DeleteU8cDataUtilEntity 中添加 csaleid 和 fstatus 字段
- 在 DeleteU8cDataUtilDao 中添加新的查询方法
- 优化现有的删除逻辑,提高处理效率
This commit is contained in:
liuy 2025-05-28 22:26:21 +08:00
parent 12a1acb3f5
commit 781994dff1
5 changed files with 410 additions and 2 deletions

View File

@ -80,6 +80,10 @@ public class DeleteU8cDataUtil {
// saleOutSign("'0001A110000000001TH6', '0001A1100000000VKCOK'"); // saleOutSign("'0001A110000000001TH6', '0001A1100000000VKCOK'");
// cancelSignatureSoSaleReadExcelV2(); // cancelSignatureSoSaleReadExcelV2();
cancelSignatureSoSaleReadExcel20250528V2();
abandonmentReviewSoSaleinvoice2505282107();
cancelSignatureSoSaleReadExcel2505282140V2();
} }
} }
} }
@ -879,7 +883,7 @@ public class DeleteU8cDataUtil {
JsonRootBean jsonRootBean = new JsonRootBean(); JsonRootBean jsonRootBean = new JsonRootBean();
jsonRootBean.setDeleteinfo(deleteinfo); jsonRootBean.setDeleteinfo(deleteinfo);
jsonRootBean.setQueryinfo(queryinfo); jsonRootBean.setQueryinfo(queryinfo);
sendU8C("http://39.170.109.90:8088/u8cloud/api/so/saleorder/delete", JSON.toJSONString(jsonRootBean), 1); // sendU8C("http://39.170.109.90:8088/u8cloud/api/so/saleorder/delete", JSON.toJSONString(jsonRootBean), 1);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
@ -1020,7 +1024,7 @@ public class DeleteU8cDataUtil {
JsonRootBean jsonRootBean = new JsonRootBean(); JsonRootBean jsonRootBean = new JsonRootBean();
jsonRootBean.setDeleteinfo(deleteinfo); jsonRootBean.setDeleteinfo(deleteinfo);
jsonRootBean.setQueryinfo(queryinfo); jsonRootBean.setQueryinfo(queryinfo);
sendU8C("http://39.170.109.90:8088/u8cloud/api/so/saleorder/delete", JSON.toJSONString(jsonRootBean), vreceiptcodeList.size()); // sendU8C("http://39.170.109.90:8088/u8cloud/api/so/saleorder/delete", JSON.toJSONString(jsonRootBean), vreceiptcodeList.size());
} }
} }
} }
@ -1049,4 +1053,285 @@ public class DeleteU8cDataUtil {
} }
return resultMap; return resultMap;
} }
/**
* 销售出库单取消签证并删除
*/
public void cancelSignatureSoSaleReadExcel20250528V2() {
try {
//确定销售订单范围19648
List<DeleteU8cDataUtilEntity> deleteU8cDataUtilEntities = deleteU8cDataUtilDao.cancelSignatureSoSaleReadExcel20250528V2();
//按100行拆分
List<List<DeleteU8cDataUtilEntity>> lists = SplitListByCountUtil.splitListByCount(deleteU8cDataUtilEntities, 100);
if (lists.size() > 0) {
for (int i = 0; i < lists.size(); i++) {
List<DeleteU8cDataUtilEntity> deleteU8cDataUtilEntities1 = lists.get(i);
//逗号拼接
String concatenatedIds = deleteU8cDataUtilEntities1.stream().map(DeleteU8cDataUtilEntity::getCsaleid).map(csaleid -> "'" + csaleid + "'").collect(Collectors.joining(","));
//根据销售订单主键查询对应的销售出库单
DeleteIcGeneralHVo deleteIcGeneralHVo = new DeleteIcGeneralHVo();
deleteIcGeneralHVo.setDataSourceCode("lets_u8c");
deleteIcGeneralHVo.setCfirstbillhids(concatenatedIds);
deleteIcGeneralHVo.setFbillflag("3");//签字状态
List<DeleteU8cDataUtilEntity> soSaleinvoiceEntities = deleteU8cDataUtilDao.queryIcGeneralHByCancelSignatureV2(deleteIcGeneralHVo);
Map<String, List<DeleteU8cDataUtilEntity>> stringListMap = groupByDbilldatev2(soSaleinvoiceEntities);
if (stringListMap.size() > 0) {
for (Map.Entry<String, List<DeleteU8cDataUtilEntity>> entry : stringListMap.entrySet()) {
String key = entry.getKey();
List<DeleteU8cDataUtilEntity> valueList = entry.getValue();
List<String> vreceiptcodeList = valueList.stream().map(DeleteU8cDataUtilEntity::getVbillcode).collect(Collectors.toList());
String[] split = key.split("@@@@");
//批量销售出库单取消签字
Deleteinfo deleteinfo = new Deleteinfo();
deleteinfo.setCoperator("tbadmin");
Queryinfo queryinfo = new Queryinfo();
queryinfo.setCorp(split[1]);
queryinfo.setDate_begin(split[0]);
queryinfo.setDate_end(split[0]);
queryinfo.setBillcode(vreceiptcodeList);
JsonRootBean jsonRootBean = new JsonRootBean();
jsonRootBean.setUnsignInfo(deleteinfo);
jsonRootBean.setQueryInfo(queryinfo);
sendU8C("http://39.170.109.90:8088/u8cloud/api/ic/saleout/unsign", JSON.toJSONString(jsonRootBean), vreceiptcodeList.size());
}
}
//根据销售订单主键查询对应的销售出库单
DeleteIcGeneralHVo deleteIcGeneralHVo2 = new DeleteIcGeneralHVo();
deleteIcGeneralHVo2.setDataSourceCode("lets_u8c");
deleteIcGeneralHVo2.setCfirstbillhids(concatenatedIds);
deleteIcGeneralHVo2.setFbillflag("2");//自由状态
List<DeleteU8cDataUtilEntity> soSaleinvoiceEntities2 = deleteU8cDataUtilDao.queryIcGeneralHByCancelSignatureV2(deleteIcGeneralHVo2);
Map<String, List<DeleteU8cDataUtilEntity>> stringListMap2 = groupByDbilldatev2(soSaleinvoiceEntities2);
if (stringListMap2.size() > 0) {
for (Map.Entry<String, List<DeleteU8cDataUtilEntity>> entry : stringListMap.entrySet()) {
String key = entry.getKey();
List<DeleteU8cDataUtilEntity> valueList = entry.getValue();
List<String> vreceiptcodeList = valueList.stream().map(DeleteU8cDataUtilEntity::getVbillcode).collect(Collectors.toList());
String[] split = key.split("@@@@");
//批量销售出库单删除
Deleteinfo deleteinfo2 = new Deleteinfo();
deleteinfo2.setCoperator("tbadmin");
Queryinfo queryinfo2 = new Queryinfo();
queryinfo2.setCorp(split[1]);
queryinfo2.setDate_begin(split[0]);
queryinfo2.setDate_end(split[0]);
queryinfo2.setBillcode(vreceiptcodeList);
JsonRootBean jsonRootBean2 = new JsonRootBean();
jsonRootBean2.setDeleteInfo(deleteinfo2);
jsonRootBean2.setQueryInfo(queryinfo2);
sendU8C("http://39.170.109.90:8088/u8cloud/api/ic/saleout/delete", JSON.toJSONString(jsonRootBean2), vreceiptcodeList.size());
}
}
}
}
//验证是否还存在需要取消签字并删除的销售出库单
List<DeleteU8cDataUtilEntity> soSaleinvoiceEntitieAll = new ArrayList<>();
List<List<DeleteU8cDataUtilEntity>> lists2 = SplitListByCountUtil.splitListByCount(deleteU8cDataUtilEntities, 999);
for (int i = 0; i < lists2.size(); i++) {
List<DeleteU8cDataUtilEntity> deleteU8cDataUtilEntities1 = lists2.get(i);
String concatenatedIds = deleteU8cDataUtilEntities1.stream().map(DeleteU8cDataUtilEntity::getCsaleid).map(csaleid -> "'" + csaleid + "'").collect(Collectors.joining(","));
DeleteIcGeneralHVo deleteIcGeneralHVo = new DeleteIcGeneralHVo();
deleteIcGeneralHVo.setDataSourceCode("lets_u8c");
deleteIcGeneralHVo.setCfirstbillhids(concatenatedIds);
List<DeleteU8cDataUtilEntity> soSaleinvoiceEntities = deleteU8cDataUtilDao.queryIcGeneralHByCancelSignatureV2(deleteIcGeneralHVo);
soSaleinvoiceEntitieAll.addAll(soSaleinvoiceEntities);
}
if (soSaleinvoiceEntitieAll.size() > 0) {
Thread.sleep(10000);
cancelSignatureSoSaleReadExcel20250528V2();
}
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 弃审销售发票并删除销售发票
*/
public void abandonmentReviewSoSaleinvoice2505282107() {
try {
//确定销售订单范围19648
List<DeleteU8cDataUtilEntity> deleteU8cDataUtilEntities = deleteU8cDataUtilDao.cancelSignatureSoSaleReadExcel20250528V2();
List<List<DeleteU8cDataUtilEntity>> lists = SplitListByCountUtil.splitListByCount(deleteU8cDataUtilEntities, 100);
if (lists.size() > 0) {
for (int i = 0; i < lists.size(); i++) {
List<DeleteU8cDataUtilEntity> deleteU8cDataUtilEntities1 = lists.get(i);
String concatenatedIds = deleteU8cDataUtilEntities1.stream().map(DeleteU8cDataUtilEntity::getCsaleid).map(csaleid -> "'" + csaleid + "'").collect(Collectors.joining(","));
//取消审核销售发票
DeleteU8cDataUtilEntity soSaleinvoiceEntity = new DeleteU8cDataUtilEntity();
soSaleinvoiceEntity.setDataSourceCode("lets_u8c");
soSaleinvoiceEntity.setCsaleid(concatenatedIds);
soSaleinvoiceEntity.setFstatus("2");//审批状态
List<DeleteU8cDataUtilEntity> soSaleinvoiceEntities = deleteU8cDataUtilDao.querySoSaleinvoiceByCancelApprovalV2(soSaleinvoiceEntity);
Map<String, List<DeleteU8cDataUtilEntity>> stringListMap = groupByDbilldate(soSaleinvoiceEntities);
for (Map.Entry<String, List<DeleteU8cDataUtilEntity>> entry : stringListMap.entrySet()) {
String key = entry.getKey();
List<DeleteU8cDataUtilEntity> valueList = entry.getValue();
List<String> vreceiptcodeList = valueList.stream().map(DeleteU8cDataUtilEntity::getVreceiptcode).collect(Collectors.toList());
String[] split = key.split("@@@@");
Map<String, Object> stringStringMap = new HashMap<>();
stringStringMap.put("approvid", "tbadmin");
Map<String, Object> stringStringMap2 = new HashMap<>();
stringStringMap2.put("corp", split[1]);
stringStringMap2.put("code", vreceiptcodeList);
stringStringMap2.put("date_begin", split[0]);
stringStringMap2.put("date_end", split[0]);
Map<String, Map<String, Object>> stringStringMap3 = new HashMap<>();
stringStringMap3.put("approveinfo", stringStringMap);
stringStringMap3.put("queryinfo", stringStringMap2);
sendU8C("http://39.170.109.90:8088/u8cloud/api/so/saleinvoice/unapprove", JSON.toJSONString(stringStringMap3), vreceiptcodeList.size());
}
//删除销售发票
DeleteU8cDataUtilEntity soSaleinvoiceEntity2 = new DeleteU8cDataUtilEntity();
soSaleinvoiceEntity2.setDataSourceCode("lets_u8c");
soSaleinvoiceEntity2.setFstatus("1");//自由状态
soSaleinvoiceEntity2.setCsaleid(concatenatedIds);
List<DeleteU8cDataUtilEntity> soSaleinvoiceEntities2 = deleteU8cDataUtilDao.querySoSaleinvoiceByCancelApprovalV2(soSaleinvoiceEntity2);
logger.info("条数:{}", soSaleinvoiceEntities2.size());
if (soSaleinvoiceEntities2 != null && soSaleinvoiceEntities2.size() > 0) {
List<List<DeleteU8cDataUtilEntity>> splitListByCount = SplitListByCountUtil.splitListByCount(soSaleinvoiceEntities2, 100);
for (int j = 0; j < splitListByCount.size(); j++) {
List<DeleteU8cDataUtilEntity> deleteU8cDataUtilEntities2 = splitListByCount.get(j);
Map<String, List<DeleteU8cDataUtilEntity>> stringListMap2 = groupByDbilldate(deleteU8cDataUtilEntities2);
for (Map.Entry<String, List<DeleteU8cDataUtilEntity>> entry : stringListMap2.entrySet()) {
String key = entry.getKey();
List<DeleteU8cDataUtilEntity> valueList = entry.getValue();
List<String> vreceiptcodeList = valueList.stream().map(DeleteU8cDataUtilEntity::getVreceiptcode).collect(Collectors.toList());
String[] split = key.split("@@@@");
Map<String, Object> objectMap = new HashMap<>();
objectMap.put("coperator", "tbadmin");
Map<String, Object> objectMap2 = new HashMap<>();
objectMap2.put("corp", split[1]);
objectMap2.put("date_begin", split[0]);
objectMap2.put("date_end", split[0]);
objectMap2.put("code", vreceiptcodeList);
Map<String, Object> objectMap3 = new HashMap<>();
objectMap3.put("deleteinfo", objectMap);
objectMap3.put("queryinfo", objectMap2);
sendU8C("http://39.170.109.90:8088/u8cloud/api/so/saleinvoice/delete", JSON.toJSONString(objectMap3), vreceiptcodeList.size());
}
}
}
}
}
//判断是否还存在需要删除的发票
List<DeleteU8cDataUtilEntity> soSaleinvoiceEntities2All = new ArrayList<>();
List<DeleteU8cDataUtilEntity> deleteU8cDataUtilEntities2 = deleteU8cDataUtilDao.cancelSignatureSoSaleReadExcel20250528V2();
List<List<DeleteU8cDataUtilEntity>> lists2 = SplitListByCountUtil.splitListByCount(deleteU8cDataUtilEntities2, 999);
for (int i = 0; i < lists2.size(); i++) {
List<DeleteU8cDataUtilEntity> deleteU8cDataUtilEntities1 = lists2.get(i);
String concatenatedIds = deleteU8cDataUtilEntities1.stream().map(DeleteU8cDataUtilEntity::getCsaleid).map(csaleid -> "'" + csaleid + "'").collect(Collectors.joining(","));
DeleteU8cDataUtilEntity soSaleinvoiceEntity2 = new DeleteU8cDataUtilEntity();
soSaleinvoiceEntity2.setDataSourceCode("lets_u8c");
soSaleinvoiceEntity2.setCsaleid(concatenatedIds);
List<DeleteU8cDataUtilEntity> soSaleinvoiceEntities2 = deleteU8cDataUtilDao.querySoSaleinvoiceByCancelApprovalV2(soSaleinvoiceEntity2);
soSaleinvoiceEntities2All.addAll(soSaleinvoiceEntities2);
}
if (soSaleinvoiceEntities2All.size() > 0) {
Thread.sleep(10000);
abandonmentReviewSoSaleinvoice2505282107();
}
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 销售订单取消签字+删除
*/
public void cancelSignatureSoSaleReadExcel2505282140V2() {
try {
//确定销售订单范围19648
List<DeleteU8cDataUtilEntity> deleteU8cDataUtilEntities = deleteU8cDataUtilDao.cancelSignatureSoSaleReadExcel20250528V2();
if (deleteU8cDataUtilEntities.size() > 0) {
List<List<DeleteU8cDataUtilEntity>> lists = SplitListByCountUtil.splitListByCount(deleteU8cDataUtilEntities, 100);
for (int i = 0; i < lists.size(); i++) {
List<DeleteU8cDataUtilEntity> deleteU8cDataUtilEntities1 = lists.get(i);
String concatenatedIds = deleteU8cDataUtilEntities1.stream().map(DeleteU8cDataUtilEntity::getCsaleid).map(csaleid -> "'" + csaleid + "'").collect(Collectors.joining(","));
//销售订单取消审核
DeleteSoSaleVo deleteSoSaleVo = new DeleteSoSaleVo();
deleteSoSaleVo.setDataSourceCode("lets_u8c");
deleteSoSaleVo.setCsaleids(concatenatedIds);
deleteSoSaleVo.setFstatus(2L);
List<DeleteU8cDataUtilEntity> deleteU8cDataUtilEntities2 = deleteU8cDataUtilDao.querySoSaleByDeletev2(deleteSoSaleVo);
Map<String, List<DeleteU8cDataUtilEntity>> deleteU8cDataUtilEntitiesMap = groupByDbilldatev2(deleteU8cDataUtilEntities2);
if (deleteU8cDataUtilEntitiesMap.size() > 0) {
for (Map.Entry<String, List<DeleteU8cDataUtilEntity>> entry : deleteU8cDataUtilEntitiesMap.entrySet()) {
String key = entry.getKey();
List<DeleteU8cDataUtilEntity> valueList = entry.getValue();
List<String> vreceiptcodeList = valueList.stream().map(DeleteU8cDataUtilEntity::getVreceiptcode).collect(Collectors.toList());
String[] split = key.split("@@@@");
//批量销售订单取消审核
JsonRootBeanCancelSignature jsonRootBeanCancelSignature = new JsonRootBeanCancelSignature();
QueryinfoCancelSignature queryinfoCancelSignature = new QueryinfoCancelSignature();
queryinfoCancelSignature.setDate_begin(split[0]);
queryinfoCancelSignature.setDate_end(split[0]);
queryinfoCancelSignature.setCorp(split[1]);
queryinfoCancelSignature.setCode(vreceiptcodeList);
ApproveinfoCancelSignature approveinfoCancelSignature = new ApproveinfoCancelSignature();
approveinfoCancelSignature.setApprovid("tbadmin");
jsonRootBeanCancelSignature.setApproveinfo(approveinfoCancelSignature);
jsonRootBeanCancelSignature.setQueryinfo(queryinfoCancelSignature);
sendU8C("http://39.170.109.90:8088/u8cloud/api/so/saleorder/unapprove", JSON.toJSONString(jsonRootBeanCancelSignature), vreceiptcodeList.size());
}
}
}
}
List<DeleteU8cDataUtilEntity> deleteU8cDataUtilEntities22All = new ArrayList<>();
List<DeleteU8cDataUtilEntity> deleteU8cDataUtilEntities2 = deleteU8cDataUtilDao.cancelSignatureSoSaleReadExcel20250528V2();
if (deleteU8cDataUtilEntities2 != null) {
List<List<DeleteU8cDataUtilEntity>> lists = SplitListByCountUtil.splitListByCount(deleteU8cDataUtilEntities, 999);
for (int i = 0; i < lists.size(); i++) {
List<DeleteU8cDataUtilEntity> deleteU8cDataUtilEntities1 = lists.get(i);
String concatenatedIds = deleteU8cDataUtilEntities1.stream().map(DeleteU8cDataUtilEntity::getCsaleid).map(csaleid -> "'" + csaleid + "'").collect(Collectors.joining(","));
DeleteSoSaleVo deleteSoSaleVo = new DeleteSoSaleVo();
deleteSoSaleVo.setDataSourceCode("lets_u8c");
deleteSoSaleVo.setCsaleids(concatenatedIds);
deleteSoSaleVo.setFstatus(2L);
List<DeleteU8cDataUtilEntity> deleteU8cDataUtilEntities22 = deleteU8cDataUtilDao.querySoSaleByDeletev2(deleteSoSaleVo);
deleteU8cDataUtilEntities22All.addAll(deleteU8cDataUtilEntities22);
}
}
if (deleteU8cDataUtilEntities22All.size() > 0) {
Thread.sleep(10000);
cancelSignatureSoSaleReadExcel2505282140V2();
}
} catch (Exception e) {
e.printStackTrace();
}
}
} }

View File

@ -86,4 +86,19 @@ public interface DeleteU8cDataUtilDao extends IBaseDao<DeleteU8cDataUtilEntity,
*/ */
List<DeleteU8cDataUtilEntity> querySoSaleinvoiceByCancelApproval(DeleteU8cDataUtilEntity deleteU8cDataUtilEntity) throws Exception; List<DeleteU8cDataUtilEntity> querySoSaleinvoiceByCancelApproval(DeleteU8cDataUtilEntity deleteU8cDataUtilEntity) throws Exception;
/**
* 查询需要处理的销售订单
*
* @author liuyang
*/
List<DeleteU8cDataUtilEntity> cancelSignatureSoSaleReadExcel20250528V2() throws Exception;
/**
* 查询需要审批的销售发票
*
* @author liuyang
*/
List<DeleteU8cDataUtilEntity> querySoSaleinvoiceByCancelApprovalV2(DeleteU8cDataUtilEntity deleteU8cDataUtilEntity) throws Exception;
} }

View File

@ -80,5 +80,17 @@ public class DeleteU8cDataUtilDaoImpl extends MybatisGenericDao<DeleteU8cDataUti
public List<DeleteU8cDataUtilEntity> querySoSaleinvoiceByCancelApproval(DeleteU8cDataUtilEntity soSaleinvoiceEntity) throws Exception { public List<DeleteU8cDataUtilEntity> querySoSaleinvoiceByCancelApproval(DeleteU8cDataUtilEntity soSaleinvoiceEntity) throws Exception {
return query("com.hzya.frame.deletedata.dao.impl.DeleteU8cDataUtilDaoImpl.querySoSaleinvoiceByCancelApproval", soSaleinvoiceEntity); return query("com.hzya.frame.deletedata.dao.impl.DeleteU8cDataUtilDaoImpl.querySoSaleinvoiceByCancelApproval", soSaleinvoiceEntity);
} }
@DS("lets_u8c")
@Override
public List<DeleteU8cDataUtilEntity> cancelSignatureSoSaleReadExcel20250528V2() throws Exception {
return query("com.hzya.frame.deletedata.dao.impl.DeleteU8cDataUtilDaoImpl.cancelSignatureSoSaleReadExcel20250528V2", new DeleteU8cDataUtilEntity());
}
@DS("lets_u8c")
@Override
public List<DeleteU8cDataUtilEntity> querySoSaleinvoiceByCancelApprovalV2(DeleteU8cDataUtilEntity deleteU8cDataUtilEntity) throws Exception {
return query("com.hzya.frame.deletedata.dao.impl.DeleteU8cDataUtilDaoImpl.querySoSaleinvoiceByCancelApprovalV2", deleteU8cDataUtilEntity);
}
} }

View File

@ -20,6 +20,26 @@ public class DeleteU8cDataUtilEntity extends BaseEntity {
private String dwbm; private String dwbm;
// private String vouchid; // private String vouchid;
private String csaleid;
private String fstatus;
public String getFstatus() {
return fstatus;
}
public void setFstatus(String fstatus) {
this.fstatus = fstatus;
}
public String getCsaleid() {
return csaleid;
}
public void setCsaleid(String csaleid) {
this.csaleid = csaleid;
}
public String getDjbh() { public String getDjbh() {
return djbh; return djbh;
} }

View File

@ -10,6 +10,8 @@
<result property="djbh" column="djbh" jdbcType="VARCHAR"/> <result property="djbh" column="djbh" jdbcType="VARCHAR"/>
<result property="dwbm" column="dwbm" jdbcType="VARCHAR"/> <result property="dwbm" column="dwbm" jdbcType="VARCHAR"/>
<result property="csaleid" column="csaleid" jdbcType="VARCHAR"/>
</resultMap> </resultMap>
<!--查询需要删除的销售发票--> <!--查询需要删除的销售发票-->
@ -109,6 +111,9 @@
AND cfirstbillhid in (${cfirstbillhids}) AND cfirstbillhid in (${cfirstbillhids})
</if> </if>
) and a.dr = 0 ) and a.dr = 0
<if test="fbillflag!=null and fbillflag!=null">
and a.fbillflag = #{fbillflag}
</if>
</select> </select>
<select id="queryIcGeneralHBySign" parameterType="com.hzya.frame.deletedata.vo.DeleteIcGeneralHVo" resultMap="get-IcGeneralHByDelete-result"> <select id="queryIcGeneralHBySign" parameterType="com.hzya.frame.deletedata.vo.DeleteIcGeneralHVo" resultMap="get-IcGeneralHByDelete-result">
@ -183,6 +188,9 @@
<if test="csaleids!=null and csaleids!=''"> <if test="csaleids!=null and csaleids!=''">
AND a.csaleid in (${csaleids}) AND a.csaleid in (${csaleids})
</if> </if>
<if test="fstatus!=null">
AND a.fstatus = #{fstatus}
</if>
AND a.dr = 0 AND a.dr = 0
ORDER BY ORDER BY
a.DBILLDATE, a.DBILLDATE,
@ -260,5 +268,73 @@
AND a.dr = 0 AND a.dr = 0
</select> </select>
<select id="cancelSignatureSoSaleReadExcel20250528V2" resultMap="get-DeleteU8cDataUtilEntity-result" parameterType="com.hzya.frame.deletedata.entity.DeleteU8cDataUtilEntity">
SELECT
-- 单据主键
a.csaleid,
-- 单据编码
a.vreceiptcode,
-- 单据对应公司主键
a.pk_corp,
-- 单据对应公司名称
b.unitname,
-- 单据对应公司编码
b.unitcode,
-- 单据对应的业务流程主键
a.cbiztype,
-- 单据对应的业务流程名称
d.businame,
-- 部门主键
a.cdeptid,
-- 部门名称
c.deptname,
-- 部门对应公司主键
c.pk_corp pk_corp2
FROM
so_sale a
LEFT JOIN bd_corp b ON a.PK_CORP = b.PK_CORP
LEFT JOIN bd_deptdoc c ON c.pk_deptdoc = a.cdeptid
LEFT JOIN bd_busitype d ON d.pk_busitype = a.cbiztype
WHERE
a.cbiztype IN (
SELECT
pk_busitype
FROM
bd_busitype
WHERE
( businame = 'TOC无源件退货入库' OR businame = 'TOC无源件退款' OR businame = 'TOC销售' OR businame = 'TOC冲发出商品' OR businame = 'TOC确认收入' OR businame = 'TOC销售退货' OR businame = 'TOC销售退款' )
)
AND a.dr = 0
AND a.dbilldate >= '2025-05-01'
AND a.dbilldate &lt;= '2025-05-31'
AND a.cdeptid NOT IN ( SELECT pk_deptdoc FROM bd_deptdoc WHERE deptname = '业务部门' AND dr = 0 )
AND a.cdeptid IS NOT NULL
and a.pk_corp != c.pk_corp
</select>
<!--查询审批状态下的销售发票-->
<select id="querySoSaleinvoiceByCancelApprovalV2" parameterType="com.hzya.frame.deletedata.entity.DeleteU8cDataUtilEntity" resultMap="get-DeleteU8cDataUtilEntity-result">
SELECT
a.csaleid,
a.vreceiptcode,
a.dbilldate,
a.cbiztype,
a.fstatus,
a.pk_corp,
b.unitname,
b.unitcode
FROM
so_saleinvoice a
LEFT JOIN bd_corp b ON b.pk_corp = a.pk_corp
WHERE
1=1
<if test="fstatus!=null and fstatus!=''">
AND a.FSTATUS = #{fstatus}
</if>
and a.csaleid in (
SELECT csaleid FROM so_saleinvoice_b WHERE csourcebillid IN ( ${csaleid} ) AND dr = 0
)
AND a.dr = 0
</select>
</mapper> </mapper>