| | |
| | | import cn.flightfeather.supervision.infrastructure.utils.FileUtil |
| | | import cn.flightfeather.supervision.infrastructure.utils.UUIDGenerator |
| | | import cn.flightfeather.supervision.lightshare.service.LedgerService |
| | | import cn.flightfeather.supervision.lightshare.vo.LedgerSubTypeVo |
| | | import cn.flightfeather.supervision.lightshare.vo.LedgerVo |
| | | import cn.flightfeather.supervision.lightshare.vo.* |
| | | import com.fasterxml.jackson.core.type.TypeReference |
| | | import com.fasterxml.jackson.databind.ObjectMapper |
| | | import com.github.pagehelper.PageHelper |
| | |
| | | it.getlTypename(), |
| | | needUpdate = it.getlNeedupdate(), |
| | | sceneType = it.getlScenetype(), |
| | | iconUrl = it.getlIconurl() |
| | | iconUrl = it.getlIconurl(), |
| | | realTime = it.getlRealTime() |
| | | ) |
| | | for (r in records) { |
| | | if (l.ledgerSubTypeId == r.lsSubtypeid) { |
| | | l.ledgerFinished = true |
| | | l.upLoad = true |
| | | l.checkStatus = r.lrVerifyrst?.toIntOrNull() ?: LedgerCheckStatus.UnCheck.value |
| | | // l.checkStatus = r.lrVerifyrst?.toIntOrNull() ?: LedgerCheckStatus.UnCheck.value |
| | | l.verified |
| | | l.verifierName = r.lrVerifierrealname |
| | | l.verified = r.lrIsverify |
| | | l.verifyRst = l.verifyRst |
| | | break |
| | | } |
| | | } |
| | |
| | | |
| | | return records |
| | | } |
| | | |
| | | override fun copyLedger(userId: String, time: String, copyLedgerList: List<CopyLedgerVo>): BaseResponse<String> { |
| | | val year = time.split("-")[0] |
| | | val month = time.split("-")[1] |
| | | copyLedgerList.forEach { |
| | | //去重判断 |
| | | val r = ledgerRecordMapper.selectByExample(Example(LedgerRecord::class.java).apply { |
| | | createCriteria().andEqualTo("lrSubmitid", userId) |
| | | .andEqualTo("lsSubtypeid", it.subTypeId) |
| | | .andEqualTo("lrYear", year) |
| | | .andEqualTo("lrMonth", month) |
| | | }) |
| | | if (r.size > 0) { |
| | | return@forEach |
| | | } |
| | | |
| | | val y = it.time?.split("-")?.get(0) ?: return@forEach |
| | | val m = it.time?.split("-")?.get(1) ?: return@forEach |
| | | ledgerRecordMapper.selectByExample(Example(LedgerRecord::class.java).apply { |
| | | createCriteria().andEqualTo("lrSubmitid", userId) |
| | | .andEqualTo("lsSubtypeid", it.subTypeId) |
| | | .andEqualTo("lrYear", y) |
| | | .andEqualTo("lrMonth", m) |
| | | }).forEach record@ {lr -> |
| | | //获取记录对应的文件信息 |
| | | val fileList = ledgerMediaFileMapper.selectByExample(Example(LedgerMediaFile::class.java).apply { |
| | | createCriteria().andEqualTo("lrGuid", lr.lrGuid) |
| | | }) |
| | | if (fileList.size == 0) return@record |
| | | val file = fileList[0] ?: return@record |
| | | |
| | | //修改记录信息,复制为新的台账 |
| | | lr.lrGuid = UUIDGenerator.generate16ShortUUID() |
| | | lr.lrYear = year.toInt() |
| | | lr.lrMonth = month.toByte() |
| | | lr.lrIssubmitontime = true |
| | | lr.lrSubmitdate = Date() |
| | | lr.lrExtension2 = "copy"//表明是复制的台账 |
| | | ledgerRecordMapper.insert(lr) |
| | | |
| | | //修改对应的文件信息 |
| | | file.apply { |
| | | mfGuid = UUIDGenerator.generate16ShortUUID() |
| | | lrGuid = lr.lrGuid |
| | | mfSavetime = Date() |
| | | } |
| | | ledgerMediaFileMapper.insert(file) |
| | | } |
| | | } |
| | | |
| | | return BaseResponse(true) |
| | | } |
| | | |
| | | override fun checkLedger(verifierId: String, remark: String?, recordList: List<LedgerCheckVo>): BaseResponse<Boolean> { |
| | | val recordIdList = mutableListOf<String?>() |
| | | recordList.forEach { recordIdList.add(it.recordId) } |
| | | val records = ledgerRecordMapper.selectByExample(Example(LedgerRecord::class.java).apply { |
| | | createCriteria().andIn("lrGuid", recordIdList) |
| | | .andIsNotNull("lrGuid") |
| | | }) |
| | | return if (records.isEmpty()) { |
| | | BaseResponse(false, "所选记录不存在") |
| | | } else { |
| | | records.forEach { |
| | | for (r in recordList) { |
| | | if (r.recordId == it.lrGuid) { |
| | | it.lrVerifierid = verifierId |
| | | it.lrVerifierrealname |
| | | it.lrVerifydate = Date() |
| | | it.lrIsverify = r.result |
| | | it.lrVerifyrst = r.remark |
| | | it.lrAiverifytime = if (it.lrAiverifytime == null) 0 else it.lrAiverifytime++ |
| | | it.lrIsai = false |
| | | |
| | | ledgerRecordMapper.updateByPrimaryKey(it) |
| | | continue |
| | | } |
| | | } |
| | | } |
| | | BaseResponse(true) |
| | | } |
| | | } |
| | | } |