diff --git a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/scheduler_sourcetype_chk.kt b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/scheduler_sourcetype_chk.kt
index 1190337..7da32f1 100644
--- a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/scheduler_sourcetype_chk.kt
+++ b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/scheduler_sourcetype_chk.kt
@@ -99,7 +99,7 @@
 
     private fun canStartCheck(sourcetype: TSourceType): Boolean {
         val hosttime = systemUtilService.sysdatetime.hosttime
-        if(DateUtil.checkDatetimeValid(sourcetype.startChktime,DateUtil.TIME_FMT) && DateUtil.compareDatetime(hosttime, sourcetype.startChktime, DateUtil.TIME_FMT)<=0){
+        if (DateUtil.checkDatetimeValid(sourcetype.startChktime, DateUtil.TIME_FMT) && DateUtil.compareDatetime(hosttime, sourcetype.startChktime, DateUtil.TIME_FMT) <= 0) {
             return false //sourcetype 设定了每天开始对账时间,小于这个对账时间不能对账
         }
         return true
@@ -159,7 +159,7 @@
     @Scheduled(cron = "\${payapi.sourcetype.checker.scheduler:-}")
     @SchedulerLock(name = "payapiSourceTypeCheckLock", lockAtMostForString = "PT30M")
     fun runCheck() {
-        if(TenantContext.getTenantSchema()==null) TenantContext.setTenantSchema(Constants.DEFAULT_TENANTID)
+        if (TenantContext.getTenantSchema() == null) TenantContext.setTenantSchema(Constants.DEFAULT_TENANTID)
 
         val allSourcetype = sourceTypeService.allEnabledSourcetype
                 ?: return
@@ -270,7 +270,7 @@
     fun checkAndDownloadChkfile(checkStatus: TSourceTypeCheckStatus): Future<ExecutorResult> {
         // 2. 根据对账日期下载对账文件
         try {
-            if(TenantContext.getTenantSchema()==null) TenantContext.setTenantSchema(Constants.DEFAULT_TENANTID)
+            if (TenantContext.getTenantSchema() == null) TenantContext.setTenantSchema(checkStatus.tenantId)
             if (checkStatus.settleStatus) {
                 return AsyncResult(ExecutorResult(checkStatus, FAIL, "[${checkStatus.checkAccdate}]日对账已完成"))
             }
@@ -313,7 +313,7 @@
     @Async("sourcetypeCheckTaskExecutor")
     fun reconciliation(checkStatus: TSourceTypeCheckStatus): Future<ExecutorResult> {
         // 3. 完成对账
-        if(TenantContext.getTenantSchema()==null) TenantContext.setTenantSchema(Constants.DEFAULT_TENANTID)
+        if (TenantContext.getTenantSchema() == null) TenantContext.setTenantSchema(checkStatus.tenantId)
         if (!checkStatus.checkFileOk) {
             return AsyncResult(ExecutorResult(checkStatus, FAIL, "checkAccdate=[${checkStatus.checkAccdate}]对账单未完成下载，不能对账"))
         } else if (checkStatus.settleStatus) {
@@ -321,12 +321,12 @@
             return AsyncResult(ExecutorResult(checkStatus, SUCCESS, "checkAccdate=[${checkStatus.checkAccdate}]对账已成功"))
         }
 
-        val result =transactionReconciliationService.getTransactionChkfile(checkStatus.checkAccdate, checkStatus.sourceType)?.let { chkfile ->
+        val result = transactionReconciliationService.getTransactionChkfile(checkStatus.checkAccdate, checkStatus.sourceType)?.let { chkfile ->
             try {
-                doCheckProcess(chkfile, checkStatus) //执行对账过程
-                when (checkStatus.settleStatus) {
-                    true -> ExecutorResult(checkStatus, SUCCESS, "对账成功，双方一致")
-                    false -> ExecutorResult(checkStatus, FAIL, chkfile.remark)
+                val chkStatus = doCheckProcess(chkfile, checkStatus) //执行对账过程
+                when (chkStatus.settleStatus) {
+                    true -> ExecutorResult(chkStatus, SUCCESS, "对账成功，双方一致")
+                    false -> ExecutorResult(chkStatus, FAIL, chkfile.remark)
                 }
             } catch (ex: Exception) {
                 ex.printStackTrace()
@@ -360,7 +360,7 @@
         return AsyncResult(result)
     }
 
-    fun doCheckProcess(chkfile: TTransactionChkfile, checkStatus: TSourceTypeCheckStatus) {
+    fun doCheckProcess(chkfile: TTransactionChkfile, checkStatus: TSourceTypeCheckStatus): TSourceTypeCheckStatus {
         //step1: 假设绝大多数记录都是一致的情况下，下面的逻辑采用每1000条批量处理提高性能,统一处理交易一致的记录
         (0..chkfile.othercnt step 1000).forEach {
             try {
@@ -378,7 +378,8 @@
         if (transactionReconciliationService.checkUncheckExists(chkfile.id)) {
             throw TransactionException(-2, "存在未对账的明细记录")
         }
-        //step4: 判断本地是否有多余成功流水，并保存
+
+        //step4: 判断本地是否有多余成功流水，并保存recordno为负值
         try {
             transactionReconciliationService.doCheckLocalMoreDtls(chkfile)
         } catch (e1: TransactionException) {
@@ -387,8 +388,7 @@
             checkStatus.repairStatus = false
             checkStatus.settleStatus = false
             checkStatus.remark = e1.message
-            sourceTypeService.saveOrUpdateSourceTypeCheckStatus(checkStatus)
-            return //直接返回
+            return sourceTypeService.saveOrUpdateSourceTypeCheckStatus(checkStatus)
         }
 
         /**
@@ -397,7 +397,7 @@
          * 2. 对"是否可以补帐"的定义是必须"对账完成"
          * 3. 当所有明细完成对账或补帐才能结算
          */
-        transactionReconciliationService.doFinishChkfileStatus(chkfile, checkStatus)
+        transactionReconciliationService.doFinishChkfileStatus(chkfile, checkStatus) //乐观锁，此事务不更新数据库。否则会影响两表的version
 
         //补账, result为equal或unequal时补帐，error跳过
         if (checkStatus.checkStatus && checkStatus.repairStatus) {
@@ -416,6 +416,6 @@
             }
         }
 
-        transactionReconciliationService.doConfirmChkfileStatus(chkfile, checkStatus)
+        return transactionReconciliationService.doConfirmChkfileStatus(chkfile, checkStatus)
     }
 }
\ No newline at end of file
diff --git a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/transaction_reconciliation_service_impl.kt b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/transaction_reconciliation_service_impl.kt
index 2fbe26a..b368d5a 100644
--- a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/transaction_reconciliation_service_impl.kt
+++ b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/impl/transaction_reconciliation_service_impl.kt
@@ -258,8 +258,9 @@
             checkStatus.repairStatus = true
         }
         checkStatus.remark = chkfile.remark
-        transactionChkfileDao.save(chkfile)
-        sourceTypeService.saveOrUpdateSourceTypeCheckStatus(checkStatus)
+
+//        transactionChkfileDao.save(chkfile)
+//        sourceTypeService.saveOrUpdateSourceTypeCheckStatus(checkStatus)
     }
 
     override fun getNeedRepairChkdtls(chkfile: TTransactionChkfile): List<TTransactionChkdtl> {
@@ -277,7 +278,7 @@
         transactionChkdtlDao.save(chkdtl)
     }
 
-    override fun doConfirmChkfileStatus(chkfile: TTransactionChkfile, checkStatus: TSourceTypeCheckStatus): TTransactionChkfile {
+    override fun doConfirmChkfileStatus(chkfile: TTransactionChkfile, checkStatus: TSourceTypeCheckStatus): TSourceTypeCheckStatus {
         val personSumInfo = persondtlDao.getPersondtlSumInfo(chkfile.accdate, chkfile.sourcetype, chkfile.tenantid)
         chkfile.localcnt = personSumInfo.totalcnt ?: 0
         chkfile.localamt = personSumInfo.totalamt ?: 0.00
@@ -301,7 +302,7 @@
             }
         }
 
-        sourceTypeService.saveOrUpdateSourceTypeCheckStatus(checkStatus)
-        return transactionChkfileDao.save(chkfile)
+        transactionChkfileDao.save(chkfile)
+        return sourceTypeService.saveOrUpdateSourceTypeCheckStatus(checkStatus)
     }
 }
\ No newline at end of file
diff --git a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/transaction_reconciliation_service.kt b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/transaction_reconciliation_service.kt
index 21a16a8..d7ce27d 100644
--- a/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/transaction_reconciliation_service.kt
+++ b/payapi/src/main/kotlin/com/supwisdom/dlpay/api/service/transaction_reconciliation_service.kt
@@ -63,7 +63,7 @@
 
 
     @Transactional(rollbackFor = [Exception::class])
-    fun doConfirmChkfileStatus(chkfile: TTransactionChkfile, checkStatus: TSourceTypeCheckStatus): TTransactionChkfile
+    fun doConfirmChkfileStatus(chkfile: TTransactionChkfile, checkStatus: TSourceTypeCheckStatus): TSourceTypeCheckStatus
 
 
 
