| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- package service;
- import com.tencentcloudapi.essbasic.v20210526.models.DescribeFlowDetailInfoResponse;
- import com.tencentcloudapi.essbasic.v20210526.models.FlowDetailInfo;
- import common.ServiceController;
- import common.data.Row;
- import common.data.Rows;
- import common.data.SQLFactory;
- import common.data.UpdateSQL;
- import org.apache.commons.lang.StringUtils;
- import restcontroller.webmanage.sale.contracttask.WeChatContractUtil;
- import static restcontroller.webmanage.sale.contracttask.WeChatConfig.SuperProxyOperatorOpenId;
- import static restcontroller.webmanage.sale.contracttask.WeChatContractUtil.describeFlowDetailInfo;
- import static restcontroller.webmanage.sale.contracttask.WeChatContractUtil.setAgent;
- public class EsignContractTaskService extends ServiceController {
- @Override
- public ServiceParam paramSet() {
- return new ServiceParam("腾讯电子签合同状态查询", 30, RunType.second);
- }
- @Override
- public void serviceRun() throws Exception {
- System.err.println(getDateTime_Str() + ":开始查询腾讯电子签合同状态...");
- Rows rows = dbConnect.runSqlQuery("SELECT * from sa_esign_contract_taskmx WHERE status in ('合同创建','合同签署中','合同即将过期')");
- for (Row row : rows) {
- String flowid = row.getString("flowid");
- Long sa_esign_contract_taskmxid = row.getLong("sa_esign_contract_taskmxid");
- if (StringUtils.isBlank(flowid)) {
- continue;
- }
- String flowStatus = row.getString("status");
- String approveStatus = row.getString("approvestatus");
- String tempflowStatus = "";
- String tempapproveStatus = "";
- String[] flowIds = {flowid};
- DescribeFlowDetailInfoResponse res = describeFlowDetailInfo(setAgent(SuperProxyOperatorOpenId), flowIds);
- if (res.getFlowInfo().length > 0) {
- FlowDetailInfo flowDetailInfo = res.getFlowInfo()[0];
- tempflowStatus = WeChatContractUtil.getFlowStatus(flowDetailInfo.getFlowStatus());
- if (flowDetailInfo.getFlowApproverInfos().length > 0) {
- tempapproveStatus = WeChatContractUtil.getApproveStatus(flowDetailInfo.getFlowApproverInfos()[0].getApproveStatus());
- }
- }
- boolean isUpdate = false;
- UpdateSQL updateSQL = SQLFactory.createUpdateSQL(dbConnect, "sa_esign_contract_taskmx");
- updateSQL.setUniqueid(sa_esign_contract_taskmxid);
- if (!flowStatus.equals(tempflowStatus) && !tempflowStatus.equals("")) {
- updateSQL.setValue("status", tempflowStatus);
- isUpdate = true;
- System.err.println(getDateTime_Str() + ":更新合同状态:" + tempflowStatus);
- }
- if (!approveStatus.equals(tempapproveStatus) && !tempapproveStatus.equals("")) {
- updateSQL.setValue("approvestatus", tempapproveStatus);
- isUpdate = true;
- System.err.println(getDateTime_Str() + ":更新合同状态:" + tempapproveStatus);
- }
- if (isUpdate) {
- updateSQL.update();
- }
- }
- System.err.println(getDateTime_Str() + ":查询腾讯电子签合同状态完成");
- }
- }
|