|
@@ -119,6 +119,7 @@ public class WebsitContractSignLogic {
|
|
|
.eq(WebsitContractSignItem::getWebsitContractSignRecordId, record.getId())
|
|
|
.eq(WebsitContractSignItem::getContractType, ContractTypeEnum.MAIN.getKey())
|
|
|
.one();
|
|
|
+
|
|
|
AdminWebsit websit = adminWebsitService.getById(record.getWebsitId());
|
|
|
|
|
|
// 未企业认证
|
|
@@ -136,14 +137,24 @@ public class WebsitContractSignLogic {
|
|
|
// 避免前端调用过快,法大大还没更新状态
|
|
|
Thread.sleep(1000);
|
|
|
|
|
|
- if (!bean.isJump() && item.getCompanySignStatus().equals(IsYesNoEnum.NO.getKey())) {
|
|
|
+ final List<WebsitContractSignItem> signItems = websitContractSignItemService.lambdaQuery()
|
|
|
+ .eq(WebsitContractSignItem::getWebsitContractSignRecordId, record.getId())
|
|
|
+ .list();
|
|
|
+
|
|
|
+ long companySign = signItems.stream()
|
|
|
+ .filter(v -> v.getNeedCompanySign().equals(IsYesNoEnum.YES.getKey()) && v.getCompanySignStatus().equals(IsYesNoEnum.NO.getKey()))
|
|
|
+ .count();
|
|
|
+ if (!bean.isJump() && companySign > 0) {
|
|
|
// 签约企业签约跳
|
|
|
this.companySignMethod(websit, item, bean, returnUrl);
|
|
|
}
|
|
|
|
|
|
+ long managerSign = signItems.stream()
|
|
|
+ .filter(v -> v.getNeedManagerSign().equals(IsYesNoEnum.YES.getKey()) && v.getManagerSignStatus().equals(IsYesNoEnum.NO.getKey()))
|
|
|
+ .count();
|
|
|
if (!bean.isJump()
|
|
|
- && item.getNeedManagerSign().equals(IsYesNoEnum.YES.getKey())
|
|
|
- && item.getManagerSignStatus().equals(IsYesNoEnum.NO.getKey())) {
|
|
|
+ && companySign == 0
|
|
|
+ && managerSign > 0) {
|
|
|
// 签约负责人签约跳
|
|
|
this.managerSignMethod(websit, item, bean, returnUrl);
|
|
|
}
|
|
@@ -155,12 +166,11 @@ public class WebsitContractSignLogic {
|
|
|
} else if (websit.getFadadaCustomerRealStatus().equals(IsYesNoEnum.NO.getKey())) {
|
|
|
bean.setJump(true);
|
|
|
bean.setUrl(websit.getFadadaCustomerAuthUrl());
|
|
|
- } else if (item.getCompanySignStatus().equals(IsYesNoEnum.NO.getKey())) {
|
|
|
+ } else if (companySign > 0) {
|
|
|
// 签约企业签约跳
|
|
|
bean.setJump(true);
|
|
|
bean.setUrl(item.getCompanySignUrl());
|
|
|
- } else if (item.getNeedManagerSign().equals(IsYesNoEnum.YES.getKey())
|
|
|
- && item.getManagerSignStatus().equals(IsYesNoEnum.NO.getKey())) {
|
|
|
+ } else if (managerSign > 0) {
|
|
|
// 签约负责人签约跳
|
|
|
bean.setJump(true);
|
|
|
bean.setUrl(item.getManagerSignUrl());
|
|
@@ -191,7 +201,7 @@ public class WebsitContractSignLogic {
|
|
|
// 第一步 查询可签网点电子合同
|
|
|
List<WebsitContractSignItem> websitFiles = websitContractSignItemService.lambdaQuery()
|
|
|
.eq(WebsitContractSignItem::getWebsitContractSignRecordId, item.getWebsitContractSignRecordId())
|
|
|
-// .eq(WebsitContractSignItem::getNeedCompanySign, IsYesNoEnum.YES.getKey())
|
|
|
+ .eq(WebsitContractSignItem::getNeedCompanySign, IsYesNoEnum.YES.getKey())
|
|
|
.isNotNull(WebsitContractSignItem::getFadadaTemplateId)
|
|
|
.list();
|
|
|
|
|
@@ -212,8 +222,9 @@ public class WebsitContractSignLogic {
|
|
|
Auth4FDDUtil.generateContract(websitFile.getFadadaTemplateId(), generateContractId,
|
|
|
websitFile.getContractName(), null, null, fddParams);
|
|
|
} else {
|
|
|
+ String urlWw = ossUtil.getUrlWw(ossUtil.replaceLongKeyUrl(websitFile.getContractTemplatePdf()));
|
|
|
Auth4FDDUtil.uploadContract(generateContractId, websitFile.getContractName(),
|
|
|
- null, websitFile.getContractTemplatePdf());
|
|
|
+ null, urlWw);
|
|
|
}
|
|
|
|
|
|
JSONObject jsonObject = new JSONObject();
|
|
@@ -458,6 +469,30 @@ public class WebsitContractSignLogic {
|
|
|
.update();
|
|
|
item.setCompanySignStatus(IsYesNoEnum.YES.getKey());
|
|
|
}
|
|
|
+
|
|
|
+ // 检查是否更新为待审核状态
|
|
|
+ final List<WebsitContractSignItem> signItems = websitContractSignItemService.lambdaQuery()
|
|
|
+ .eq(WebsitContractSignItem::getWebsitContractSignRecordId, item.getWebsitContractSignRecordId())
|
|
|
+ .list();
|
|
|
+
|
|
|
+ final long managerCount = signItems.stream()
|
|
|
+ .filter(v -> v.getNeedManagerSign().equals(IsYesNoEnum.YES.getKey()) && v.getManagerSignStatus().equals(IsYesNoEnum.NO.getKey()))
|
|
|
+ .count();
|
|
|
+ if (managerCount == 0) {
|
|
|
+ // 无需法人签,直接把记录改为待审核
|
|
|
+ websitContractSignItemService.lambdaUpdate()
|
|
|
+ .set(WebsitContractSignItem::getContractStatus, SignContractStatusEnum.WAIT.getKey())
|
|
|
+ .eq(WebsitContractSignItem::getWebsitContractSignRecordId, item.getWebsitContractSignRecordId())
|
|
|
+ .update();
|
|
|
+ websitContractSignRecordService.lambdaUpdate()
|
|
|
+ .set(WebsitContractSignRecord::getFadadaWebsitId, websit.getFadadaWebsitId())
|
|
|
+ .set(WebsitContractSignRecord::getFadadaWebsitNo, websit.getFadadaWebsitNo())
|
|
|
+ .set(WebsitContractSignRecord::getFadadaCustomerId, websit.getFadadaCustomerId())
|
|
|
+ .set(WebsitContractSignRecord::getFadadaCustomerNo, websit.getFadadaCustomerNo())
|
|
|
+ .set(WebsitContractSignRecord::getStatus, SignContractStatusEnum.WAIT.getKey())
|
|
|
+ .eq(WebsitContractSignRecord::getId, item.getWebsitContractSignRecordId())
|
|
|
+ .update();
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
private void managerSignMethod(AdminWebsit websit, WebsitContractSignItem item, AuthBean bean, String returnUrl) {
|