Эх сурвалжийг харах

同步数据时UpdateTime不自动赋值

jeremy 11 сар өмнө
parent
commit
8d9473cd37

+ 1 - 1
src/VitalMixtureService/DBService/Repositories/CacheDBRepository.cs

@@ -58,7 +58,7 @@ namespace VitalService.Repositories
             return result;
         }
 
-        public override async Task<long> UpdateOneAsync(FilterDefinition<T> filter, UpdateDefinition<T> update, bool isvalidate = true)
+        public override async Task<long> UpdateOneAsync(FilterDefinition<T> filter, UpdateDefinition<T> update, bool isvalidate = true, bool setUpdateTime = true)
         {
             var result = await base.UpdateOneAsync(filter, update);
             if(result>0)

+ 13 - 5
src/VitalMixtureService/DBService/Repositories/SimpleDBRepository.cs

@@ -76,7 +76,7 @@ namespace VitalService.Repositories
         /// <returns>
         /// The number of documents modified.
         /// </returns>
-        public virtual async Task<long> UpdateOneAsync(FilterDefinition<T> filter, UpdateDefinition<T> update, bool isvalidate = true)
+        public virtual async Task<long> UpdateOneAsync(FilterDefinition<T> filter, UpdateDefinition<T> update, bool isvalidate = true, bool setUpdateTime = true)
         {
             var validator = ValidatorFactory.Instance.Resolve<T>(ValidatorTypeEnum.Update);
             if (validator != null && isvalidate)
@@ -86,10 +86,18 @@ namespace VitalService.Repositories
             }
             if (filter != null && update != null)
             {
-                var updateDateTime = Builders<T>.Update.Set(f => f.UpdateTime, DateTime.UtcNow);
-                var combineUpdate = Builders<T>.Update.Combine(update, updateDateTime);
-                var result = await _collect.UpdateOneAsync(filter, combineUpdate);
-                return result.ModifiedCount;
+                if (setUpdateTime)
+                {
+                    var updateDateTime = Builders<T>.Update.Set(f => f.UpdateTime, DateTime.UtcNow);
+                    var combineUpdate = Builders<T>.Update.Combine(update, updateDateTime);
+                    var result = await _collect.UpdateOneAsync(filter, combineUpdate);
+                    return result.ModifiedCount;
+                }
+                else
+                {
+                    var result = await _collect.UpdateOneAsync(filter, update);
+                    return result.ModifiedCount;
+                }
             }
             return 0;
         }

+ 2 - 2
src/VitalMixtureService/DBService/Service/ExamDBService.cs

@@ -1151,11 +1151,11 @@ namespace VitalService.Service
 
                     if (request.Key == "LNRZLNLPG")
                     {
-                        await _elderlySelfCareInfoDBRepository.UpdateOneAsync(filter2, update, false);
+                        await _elderlySelfCareInfoDBRepository.UpdateOneAsync(filter2, update, false, false);
                     }
                     else
                     {
-                        await _examDBRepository.UpdateOneAsync(filter2, update, false);
+                        await _examDBRepository.UpdateOneAsync(filter2, update, false, false);
                     }
                 }
                 else

+ 10 - 10
src/VitalMixtureService/DBService/Service/FollowUpDBService.cs

@@ -309,38 +309,38 @@ namespace VitalService.Service
             updates.Add(Builders<FollowUpEntity>.Update.Set(f => f.UpdateTime, DateTime.UtcNow));
             var update = Builders<FollowUpEntity>.Update.Combine(updates);
 
-            return await UpdateFollowUpAsync(request.Key, filter, update);
+            return await UpdateFollowUpAsync(request.Key, filter, update, true, true);
         }
 
-        private async Task<bool> UpdateFollowUpAsync(string followUpKey, FilterDefinition<FollowUpEntity> filter, UpdateDefinition<FollowUpEntity> update)
+        private async Task<bool> UpdateFollowUpAsync(string followUpKey, FilterDefinition<FollowUpEntity> filter, UpdateDefinition<FollowUpEntity> update, bool isvalidate = true, bool setUpdateTime = true)
         {
             if (followUpKey == "TNB")
             {
-                return await _followUpDiabetesDBRepository.UpdateOneAsync(filter, update) > 0;
+                return await _followUpDiabetesDBRepository.UpdateOneAsync(filter, update, isvalidate, setUpdateTime) > 0;
             }
             else if (followUpKey == "GXY")
             {
-                return await _followUpGXYDBRepository.UpdateOneAsync(filter, update) > 0;
+                return await _followUpGXYDBRepository.UpdateOneAsync(filter, update, isvalidate, setUpdateTime) > 0;
             }
             else if (followUpKey == "YZJSZASFFW")
             {
-                return await _followUpSEVDBRepository.UpdateOneAsync(filter, update) > 0;
+                return await _followUpSEVDBRepository.UpdateOneAsync(filter, update, isvalidate, setUpdateTime) > 0;
             }
             else if (IsKidFollowUp(followUpKey))
             {
-                return await _followUpKidDBRepository.UpdateOneAsync(filter, update) > 0;
+                return await _followUpKidDBRepository.UpdateOneAsync(filter, update, isvalidate, setUpdateTime) > 0;
             }
             else if (IsGravidaFollowUp(followUpKey))
             {
-                return await _followUpGravidaDBRepository.UpdateOneAsync(filter, update) > 0;
+                return await _followUpGravidaDBRepository.UpdateOneAsync(filter, update, isvalidate, setUpdateTime) > 0;
             }
             else if (IsTBFollowUp(followUpKey))
             {
-                return await _followUpTBDBRepository.UpdateOneAsync(filter, update) > 0;
+                return await _followUpTBDBRepository.UpdateOneAsync(filter, update, isvalidate, setUpdateTime) > 0;
             }
             else
             {
-                return await _followUpDBRepository.UpdateOneAsync(filter, update) > 0;
+                return await _followUpDBRepository.UpdateOneAsync(filter, update, isvalidate, setUpdateTime) > 0;
             }
         }
 
@@ -727,7 +727,7 @@ namespace VitalService.Service
                     .Set(f => f.IsDelete, followUpDO.IsDelete)
                     .Set(f => f.CreateTime, followUpDO.CreateTime)
                     .Set(f => f.UpdateTime, followUpDO.UpdateTime);
-                await UpdateFollowUpAsync(request.Key, filter2, update);
+                await UpdateFollowUpAsync(request.Key, filter2, update, false, false);
             }
             else
             {

+ 1 - 1
src/VitalMixtureService/DBService/Service/PatientDBService.cs

@@ -521,7 +521,7 @@ namespace VitalService.Service
                         .Set(f => f.IsDelete, patientDO.IsDelete)
                         .Set(f => f.CreateTime, patientDO.CreateTime)
                         .Set(f => f.UpdateTime, patientDO.UpdateTime);
-                    await _patientDBRepository.UpdateOneAsync(filter2, update, false);
+                    await _patientDBRepository.UpdateOneAsync(filter2, update, false, false);
                 }
                 else
                 {

+ 1 - 1
src/VitalMixtureService/DBService/Service/PatientExtensionDBService.cs

@@ -270,7 +270,7 @@ namespace VitalService.Service
                         .Set(f => f.IsDelete, patientExtensionDO.IsDelete)
                         .Set(f => f.CreateTime, patientExtensionDO.CreateTime)
                         .Set(f => f.UpdateTime, patientExtensionDO.UpdateTime);
-                    await _patientExtensionDBRepository.UpdateOneAsync(filter2, update, false);
+                    await _patientExtensionDBRepository.UpdateOneAsync(filter2, update, false, false);
                 }
                 else
                 {

+ 1 - 1
src/VitalMixtureService/DBService/Service/ReportDBService.cs

@@ -320,7 +320,7 @@ namespace VitalService.Service
                     .Set(f => f.DoctorName, reportEntity.DoctorName)
                     .Set(f => f.IsDelete, reportEntity.IsDelete)
                     .Set(f => f.UpdateTime, reportEntity.UpdateTime);
-                await _reportDBRepository.UpdateOneAsync(filter2, update);
+                await _reportDBRepository.UpdateOneAsync(filter2, update, false, false);
             }
             else
             {