staging #55

Merged
hy merged 2 commits from staging into master 2025-12-08 18:20:45 +08:00
3 changed files with 45 additions and 22 deletions
Showing only changes of commit 1920c6ba9c - Show all commits

View File

@ -138,7 +138,6 @@ namespace Learn.Archives.API.Controllers
//处理数据 //处理数据
var errorExcelInfo = new List<SchoolBusinessImportError>(); var errorExcelInfo = new List<SchoolBusinessImportError>();
var insertInfo = new List<SchoolBusiness>(); var insertInfo = new List<SchoolBusiness>();
var db = schoolService.Context;
foreach (var imp in dataList) foreach (var imp in dataList)
{ {
var school = await schoolService.GetFirstAsync(s => s.Name == imp.School); var school = await schoolService.GetFirstAsync(s => s.Name == imp.School);
@ -167,7 +166,8 @@ namespace Learn.Archives.API.Controllers
.Select(s => s.Name).ToArrayAsync(); .Select(s => s.Name).ToArrayAsync();
if (adminArr == null || adminArr.Length!= adminNameArr.Length) if (adminArr == null || adminArr.Length!= adminNameArr.Length)
{ {
imp.Error = $"赴校人员未能完全识别成功"; var nStr = string.Join(',', adminNameArr.Where(s => !adminArr.Contains(s)));
imp.Error = $"赴校人员未能完全识别成功 ->{nStr}";
errorExcelInfo.Add(imp); errorExcelInfo.Add(imp);
continue; continue;
} }

View File

@ -456,8 +456,27 @@ namespace Learn.Archives.API.Controllers
s.JoinTime, s.JoinTime,
s.ExitTime, s.ExitTime,
s.Remark}.Any(x => !(x == default || x == null))).ToList(); s.Remark}.Any(x => !(x == default || x == null))).ToList();
// 测试IgnoreColumns是否真实有效 //查询差异
await baseService.AsUpdateable(updateArr) var addInfoUserArr = updateArr.Select(s => s.UserCenterId).ToArray();
var hasUIdArr = await baseService.AsQueryable()
.Where(s => addInfoUserArr.Contains(s.UserCenterId))
.Select(s => s.UserCenterId).ToArrayAsync();
var hasUIdHash = hasUIdArr.ToHashSet();
var updateData = new List<Student>(10);
var InsertData = new List<Student>(10);
foreach (var item in updateArr)
{
if (hasUIdHash.Contains(item.UserCenterId))
updateData.Add(item);
else
InsertData.Add(item);
}
//开启事务
baseService.Context.Ado
.UseTran(() =>
{
baseService.InsertRange(InsertData);
baseService.AsUpdateable(updateData)
.UpdateColumns(s => new .UpdateColumns(s => new
{ {
s.AmountRelief, s.AmountRelief,
@ -471,10 +490,14 @@ namespace Learn.Archives.API.Controllers
s.Remark s.Remark
}) })
//更新忽略null并且忽略默认值 (比如int默认值是0就不更新) //更新忽略null并且忽略默认值 (比如int默认值是0就不更新)
//如果修改为0会出现修改不了的问题
.IgnoreColumns(ignoreAllNullColumns: true, ignoreAllDefaultValue: true) .IgnoreColumns(ignoreAllNullColumns: true, ignoreAllDefaultValue: true)
.WhereColumns(it => new { it.UserCenterId }) .WhereColumns(it => new { it.UserCenterId })
.ExecuteCommandAsync(); .ExecuteCommand();
return true;
}, ex => { throw ex; });
} }
//写入选科方向
if (userCenterUpdate.Count > 0) if (userCenterUpdate.Count > 0)
await userService.AsUpdateable(userCenterUpdate) await userService.AsUpdateable(userCenterUpdate)
.UpdateColumns(s => new .UpdateColumns(s => new

View File

@ -14,7 +14,7 @@
"DB": { "DB": {
"ConnectionString": "AllowLoadLocalInfile=true;Server=58.17.132.2;User ID=marking;Password=qwe123!@#;Database=learn.archives;CharSet=utf8mb4;Port=43306;pooling=true;SslMode=None;", "ConnectionString": "AllowLoadLocalInfile=true;Server=58.17.132.2;User ID=marking;Password=qwe123!@#;Database=learn.archives;CharSet=utf8mb4;Port=43306;pooling=true;SslMode=None;",
// //
//"ConnectionString": "AllowLoadLocalInfile=true;Server=rm-2vc20nd3d11g0oh6g2o.rwlb.cn-chengdu.rds.aliyuncs.com;User ID=marking;Password=poiuytPOIUYT098765)(*&^%;Port=3306;Database=learn.archives;CharSet=utf8mb4;pooling=true;SslMode=None", //"ConnectionString": "AllowLoadLocalInfile=true;Server=archives-mysql.23544.com;User ID=archives;Password=MPsSSNuvFO7wBqADXC9zweh9tdOPNwm6;Port=3306;Database=learn.archives;CharSet=utf8mb4;pooling=true;SslMode=None",
"SqlType": "MySql", "SqlType": "MySql",
"UpdateTable": false "UpdateTable": false
}, },