From 196bb14112448857a885e32dc4149e308e00b01a Mon Sep 17 00:00:00 2001
From: feiyu02 <risaku@163.com>
Date: 星期四, 15 八月 2024 11:57:15 +0800
Subject: [PATCH] 2024.8.15 各项修正

---
 src/main/kotlin/cn/flightfeather/supervision/lightshare/vo/LedgerVo.kt |   96 ++++++++++++++++++++++++++++++++---------------
 1 files changed, 65 insertions(+), 31 deletions(-)

diff --git a/src/main/kotlin/cn/flightfeather/supervision/lightshare/vo/LedgerVo.kt b/src/main/kotlin/cn/flightfeather/supervision/lightshare/vo/LedgerVo.kt
index 62620ae..f91b6d7 100644
--- a/src/main/kotlin/cn/flightfeather/supervision/lightshare/vo/LedgerVo.kt
+++ b/src/main/kotlin/cn/flightfeather/supervision/lightshare/vo/LedgerVo.kt
@@ -1,7 +1,13 @@
 package cn.flightfeather.supervision.lightshare.vo
 
+import cn.flightfeather.supervision.domain.entity.LedgerRecord
+import cn.flightfeather.supervision.domain.entity.LedgerSubType
+import cn.flightfeather.supervision.domain.entity.Userinfo
 import cn.flightfeather.supervision.domain.enumeration.SceneType
+import cn.flightfeather.supervision.infrastructure.utils.UUIDGenerator
 import com.fasterxml.jackson.annotation.JsonIgnoreProperties
+import java.time.LocalDateTime
+import java.time.ZoneId
 import java.util.*
 
 /**
@@ -11,34 +17,62 @@
  */
 @JsonIgnoreProperties(ignoreUnknown = true)
 data class LedgerVo constructor(
-        //鍙拌处璁板綍id
-        var id: String? = null,
-        //鍙拌处瀛愮被鍨婭D
-        var ledgerSubTypeId: Int? = null,
-        //鍙拌处鍚嶇О
-        var ledgerName: String? = null,
-        //鍙拌处绫诲瀷ID
-        var ledgerTypeId: Int? = null,
-        //鍙拌处绫诲瀷
-        var ledgerType: String? = null,
-        //鍙拌处鏄惁鏈湴濉啓瀹屾垚
-        var ledgerFinished: Boolean = false,
-        //鍙拌处鏄惁涓婁紶
-        var isUpLoad: Boolean = false,
-        //鍙拌处鏇存柊鏃ユ湡
-        var updateDate: Date? = null,
-        //鍙拌处鏇存柊绫诲瀷锛�0閮ㄥ垎鏇存柊锛堥儴鍒嗙己澶便�侀仐澶憋級銆�1宸叉洿鏂般��2鏃犳洿鏂扮瓑锛�
-        var updateType: Byte? = null,
-        //鍙拌处澶氬獟浣撴枃浠剁被鍨�
-        var fileType: Int? = null,
-        //鍙拌处鍩虹澶氬獟浣撴枃浠惰矾寰�
-        var path1: String? = null,
-        //鍙拌处鍩虹澶氬獟浣撴枃浠跺娉�
-        var remark1: String? = null,
-        //鍙拌处琛ュ厖澶氬獟浣撴枃浠惰矾寰�
-        var path2: String? = null,
-        //鍙拌处琛ュ厖澶氬獟浣撴枃浠跺娉�
-        var remark2: String? = null,
-        //鍙拌处鎵�灞炵殑鍦烘櫙绫诲瀷
-        var sceneType: Int = SceneType.NoType.value
-)
\ No newline at end of file
+    //鍙拌处璁板綍id
+    var id: String? = null,
+    //鍙拌处瀛愮被鍨婭D
+    var ledgerSubTypeId: Int? = null,
+    //鍙拌处鍚嶇О
+    var ledgerName: String? = null,
+    //鍙拌处绫诲瀷ID
+    var ledgerTypeId: Int? = null,
+    //鍙拌处绫诲瀷
+    var ledgerType: String? = null,
+    //鍙拌处鏄惁鏈湴濉啓瀹屾垚
+    var ledgerFinished: Boolean = false,
+    //鍙拌处鏄惁涓婁紶
+    var isUpLoad: Boolean = false,
+    //鍙拌处鏇存柊鏃ユ湡
+    var updateDate: Date? = null,
+    //鍙拌处鏇存柊绫诲瀷锛�0閮ㄥ垎鏇存柊锛堥儴鍒嗙己澶便�侀仐澶憋級銆�1宸叉洿鏂般��2鏃犳洿鏂扮瓑锛�
+    var updateType: Byte? = null,
+    //鍙拌处澶氬獟浣撴枃浠剁被鍨�
+    var fileType: Int? = null,
+    //鍙拌处鍩虹澶氬獟浣撴枃浠惰矾寰�
+    var path1: String? = null,
+    //鍙拌处鍩虹澶氬獟浣撴枃浠跺娉�
+    var remark1: String? = null,
+    //鍙拌处琛ュ厖澶氬獟浣撴枃浠惰矾寰�
+    var path2: String? = null,
+    //鍙拌处琛ュ厖澶氬獟浣撴枃浠跺娉�
+    var remark2: String? = null,
+    //鍙拌处鎵�灞炵殑鍦烘櫙绫诲瀷
+    var sceneType: Int = SceneType.NoType.value,
+) {
+    companion object {
+        fun fromLedgerSubtype(ledger: LedgerSubType?) = LedgerVo().apply {
+            ledgerSubTypeId = ledger?.lsSubtypeid
+            ledgerName = ledger?.lsName
+            ledgerTypeId = ledger?.getlTypeid()
+            ledgerType = ledger?.getlTypename()
+            updateDate = Date()
+            fileType = 1
+        }
+    }
+
+    fun toLedgerRecord(userInfo: Userinfo?) = LedgerRecord().apply {
+        val updateTime = LocalDateTime.ofInstant(updateDate?.toInstant(), ZoneId.systemDefault())
+        lrGuid = UUIDGenerator.generate16ShortUUID()
+        lsSubtypeid = ledgerSubTypeId
+        lsSubtypename = ledgerName
+        lrYear = updateTime.year
+        lrMonth = updateTime.monthValue.toByte()
+        lrDay = updateTime.dayOfMonth.toByte()
+        lrEasubmitkind = fileType?.toByte() ?: 1
+        lrSubmitid = userInfo?.guid
+        lrSubmitname = userInfo?.acountname
+        lrIssubmitontime = updateTime.dayOfMonth <= 10
+        lrSubmitdate = Date()
+        lrUpdatetype = updateType
+        lrExtension1 = sceneType.toString()
+    }
+}
\ No newline at end of file

--
Gitblit v1.9.3