提交 3aaab560 作者: xiaowang

法大大合同模块

上级 247c3b95
......@@ -43,4 +43,8 @@ public class FddConstant {
public static final String UID_REGEX = "[-|_]";
public static final String YXF = "YXF";
public static final String SIGN_SUCCESS = "3000";
public static final String SIGN_FAIL = "3001";
}
......@@ -61,45 +61,14 @@ public class ContractController extends BaseController {
public ResultBody notifyStamp(@RequestParam Map<String, String> map) {
return contractService.notifyStamp(map);
}
//
// @ApiOperation(value = "合同签署信息-条件查询")
// @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
// @PostMapping("selectList")
// public ResultBody<List<UavContractInfoDTO>> selectList(@RequestBody UavContractInfoQO qo) {
// return uavContractManageService.selectList(qo);
// }*
//
// @ApiOperation(value = "归档")
// @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
// @GetMapping("/file")
// public ResultBody file(@RequestParam(value = "contractId") String contractId, HttpServletRequest request) {
// return uavContractManageService.file(contractId, this.getCurrentAccount(request).getId());
// }
//
// @ApiOperation(value = "通过无人机城订单id批量查询合同信息")
// @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
// @ApiIgnore
// @PostMapping("feignListUAVContractByOIds")
// public List<UavContractInfoDTO> feignListUAVContractByOIds(@RequestBody List<Long> orderIds) {
// return uavContractManageService.feignListUAVContractByOIds(orderIds);
// }
//
// @ApiOperation(value = "通过无人机城订单id单个合同信息")
// @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
// @ApiIgnore
// @GetMapping("feignGetUAVContractByOId")
// public UavContractInfoDTO feignGetUAVContractByOId(@RequestParam Long orderId) {
// return uavContractManageService.feignGetUAVContractByOId(orderId);
// }
//
// @ApiOperation(value = "根据orderId删除合同信息")
// @ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
// @ApiIgnore
// @GetMapping("feignRemoveContractByOrderId")
// public ResultBody feignRemoveContractByOrderId(@RequestParam Long orderId) {
// return uavContractManageService.feignRemoveContractByOrderId(orderId);
// }
//
@ApiOperation(value = "归档")
@ApiResponses({@ApiResponse(code = 200, message = "OK", response = ResultBody.class)})
@GetMapping("/file")
public ResultBody file(@ApiParam(value = "合同编号") @RequestParam(value = "contractId") String contractId,
HttpServletRequest request, @ApiParam(value = "端口:0小程序 1后台") @RequestParam(value = "port") Integer port) {
return contractService.file(contractId, this.getUserLoginInfoFromRedis(request), port);
}
}
......@@ -34,38 +34,6 @@ public interface ContractService {
* @return
*/
ResultBody notifyStamp(Map<String, String> map);
//
// /**
// * 选择列表
// *
// * @param qo 问:
// * @return {@link ResultBody}<{@link List}<{@link UavContractInfoDTO}>>
// */
// ResultBody<List<UavContractInfoDTO>> selectList(UavContractInfoQO qo);
//
// /**
// * 合同归档
// * @param contractId
// * @param id
// * @return
// */
// ResultBody file(String contractId, Integer id);
//
// /**
// * 列表uavcontract oid
// *
// * @param orderIds 订单id
// * @return {@link List}<{@link UavContractInfoDTO}>
// */
// List<UavContractInfoDTO> feignListUAVContractByOIds(List<Long> orderIds);
//
// /**
// * 假装被oid uavcontract
// *
// * @param orderId 订单id
// * @return {@link UavContractInfoDTO}
// */
// UavContractInfoDTO feignGetUAVContractByOId(Long orderId);
//
// ResultBody feignRemoveContractByOrderId(Long orderId);
ResultBody file(String contractId, LoginSuccessDTO loginSuccessDTO, Integer port);
}
......@@ -2,10 +2,7 @@ package com.mmc.iuav.user.service.fdd.impl;
import com.alibaba.fastjson.JSONObject;
import com.fadada.sdk.base.client.FddBaseClient;
import com.fadada.sdk.base.model.req.DownloadPdfParams;
import com.fadada.sdk.base.model.req.ExtSignParams;
import com.fadada.sdk.base.model.req.UploadDocsParams;
import com.fadada.sdk.base.model.req.ViewPdfURLParams;
import com.fadada.sdk.base.model.req.*;
import com.fadada.sdk.utils.crypt.FddEncryptTool;
import com.mmc.iuav.general.CodeUtil;
import com.mmc.iuav.response.ResultBody;
......@@ -24,6 +21,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.Map;
import java.util.UUID;
......@@ -171,6 +169,53 @@ public class ContractServiceImpl implements ContractService {
} catch (Exception e) {
return ResultBody.error(ResultEnum.NOT_FOUND);
}
// 获取合同信息
ContractInfoDO contractInfoDO = contractDao.contractInfoByOrderNo(null, contractId);
ContractInfoDO updateSignStatus = new ContractInfoDO();
updateSignStatus.setContractNo(contractId);
if (contractInfoDO.getSignStatus() == 0 && FddConstant.SIGN_SUCCESS.equals(resultCode) && contractInfoDO.getATransactionId().equals(transactionId)) {
// 甲方公司签章成功
updateSignStatus.setSignStatus(2);
updateSignStatus.setARemark(resultDesc);
} else if (contractInfoDO.getSignStatus() == 0 && FddConstant.SIGN_FAIL.equals(resultCode) && contractInfoDO.getATransactionId().equals(transactionId)) {
// 甲方公司签章失败
updateSignStatus.setSignStatus(1);
updateSignStatus.setBRemark(resultDesc);
} else if (contractInfoDO.getSignStatus() == 2 && FddConstant.SIGN_SUCCESS.equals(resultCode) && contractInfoDO.getBTransactionId().equals(transactionId)) {
// 乙方公司签章成功
updateSignStatus.setSignStatus(4);
updateSignStatus.setBRemark(resultDesc);
updateSignStatus.setSingerTime(new Date());
} else if (contractInfoDO.getSignStatus() == 2 && FddConstant.SIGN_FAIL.equals(resultCode) && contractInfoDO.getBTransactionId().equals(transactionId)) {
// 乙方公司签章失败
updateSignStatus.setSignStatus(3);
updateSignStatus.setBRemark(resultDesc);
}
contractDao.updateContractInfo(updateSignStatus);
return ResultBody.success();
}
@Override
public ResultBody file(String contractId, LoginSuccessDTO loginSuccessDTO, Integer port) {
sealManageService.checkAuthStatus(port, loginSuccessDTO);
// 判断该合同状态是否可以归档
ContractInfoDO contractInfoDO = contractDao.contractInfoByOrderNo(null, contractId);
if (!contractInfoDO.getSignStatus().equals(4)) {
return ResultBody.error("当前状态不可进行归档操作!");
}
FddBaseClient baseClient = new FddBaseClient(FddConnectConstant.APP_ID, FddConnectConstant.APP_KEY, FddConnectConstant.VERSION, FddConnectConstant.HOST);
ContractFillingParams params = new ContractFillingParams();
//此处传入调用上传或填充合同接口成功时定义的合同编号
params.setContractId(contractId);
String result = baseClient.invokeContractFilling(params);
if (!JSONObject.parseObject(result).getString(FddConstant.CODE).equals(FddConstant.SUCCESS_CODE)) {
return ResultBody.error(JSONObject.parseObject(result).getString(FddConstant.MSG));
}
ContractInfoDO contractDetailDO = new ContractInfoDO();
contractDetailDO.setContractNo(contractId);
contractDetailDO.setSignStatus(5);
contractDetailDO.setArchiveDate(new Date());
contractDao.updateContractInfo(contractDetailDO);
return ResultBody.success(JSONObject.parseObject(result));
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论