fix 优化同步factory,workspace

This commit is contained in:
2025-02-12 11:22:21 +08:00
parent 81d9699f0e
commit 5a9e1acf5e
4 changed files with 23 additions and 25 deletions

View File

@@ -34,8 +34,8 @@ public class SapPersonComparer : IEqualityComparer<SapPersonItem>
&& (x.MNTXT ?? string.Empty) == (y.MNTXT ?? string.Empty)
&& (x.ZXUELI ?? string.Empty).Trim() == (y.ZXUELI ?? string.Empty).Trim()
//&& (x.ZZ_KLX ?? string.Empty) == (y.ZZ_KLX ?? string.Empty)
&& (x.ZZ_GZDJDNM ?? string.Empty) == (y.ZZ_GZDJDNM ?? string.Empty)
&& (x.ZZ_GZDCQNM ?? string.Empty) == (y.ZZ_GZDCQNM ?? string.Empty)
&& (x.ZZ_GZDJD ?? string.Empty) == (y.ZZ_GZDJD ?? string.Empty)
&& (x.ZZ_GZDCQ ?? string.Empty) == (y.ZZ_GZDCQ ?? string.Empty)
;
}
@@ -61,8 +61,8 @@ public class SapPersonComparer : IEqualityComparer<SapPersonItem>
^ obj.MNTXT.SafeGetHashCode()
^ obj.ZXUELI.SafeGetHashCode()
//^ obj.ZZ_KLX.SafeGetHashCode()
^ obj.ZZ_GZDJDNM.SafeGetHashCode()
^ obj.ZZ_GZDCQNM.SafeGetHashCode()
^ obj.ZZ_GZDJD.SafeGetHashCode()
^ obj.ZZ_GZDCQ.SafeGetHashCode()
;
return r;

View File

@@ -6,7 +6,6 @@ using Dlhis.Entity.Sys.Entities;
using Dlhis.Entity.Sys.Enums;
using Dlhis.Jip.Api.Dto;
using Dlhis.Sys.Api;
using Dlhis.Sys.Api.Response;
using Kurisu.AspNetCore.DataAccess.SqlSugar.Services;
using Kurisu.AspNetCore.Utils.Extensions;
@@ -21,8 +20,6 @@ public class GainfoUpdateService : IGainfoUpdateService
private readonly IGainfoPermissionService _gainfoPermissionService;
private readonly IIdentityUserSyncService _identityUserSyncService;
private List<TenantResponse> _tenants;
public GainfoUpdateService(IDbContext dbContext,
ILogger<GainfoUpdateService> logger,
ITenantApi tenantApi,
@@ -117,8 +114,6 @@ public class GainfoUpdateService : IGainfoUpdateService
private async Task SavePersonAsync(List<SapPersonItem> persons)
{
_tenants = await _tenantApi.GetTenantsInternalAsync();
var workCodes = persons.Select(x => x.ZWORKCODE).ToList();
var chunks = workCodes.Chunk(4000).ToList();
@@ -221,8 +216,8 @@ public class GainfoUpdateService : IGainfoUpdateService
CostId = item.KOSTL,
EntryDate = item.createdate,
ResignationDate = item.ZLZRQ,
Workplace = _tenants.LastOrDefault(x => x.Name == item.ZZ_GZDJDNM)?.Code ?? item.ZZ_GZDJDNM,
Factory = _tenants.FirstOrDefault(x => x.Name == item.ZZ_GZDCQNM)?.Code ?? item.ZZ_GZDCQNM,
Workplace = item.ZZ_GZDJD,
Factory = item.ZZ_GZDCQ
};
return info;
@@ -253,8 +248,8 @@ public class GainfoUpdateService : IGainfoUpdateService
ZLZRQ = item.ZLZRQ,
STELL_NM = item.STELL_NM,
createdate = item.createdate,
ZZ_GZDJDNM = item.ZZ_GZDJDNM,
ZZ_GZDCQNM = item.ZZ_GZDCQNM,
ZZ_GZDJD = item.ZZ_GZDJD,
ZZ_GZDCQ = item.ZZ_GZDCQ,
}).Where(x => x.ename == item.ename).ExecuteCommandAsync();
//获取当前在职人员
@@ -263,9 +258,9 @@ public class GainfoUpdateService : IGainfoUpdateService
//默认人员存在
if (gainfo != null)
{
var workplace = _tenants.FirstOrDefault(x => x.Name == item.ZZ_GZDJDNM)?.Code ?? item.ZZ_GZDJDNM;
var factory = _tenants.LastOrDefault(x => x.Name == item.ZZ_GZDCQNM)?.Code ?? item.ZZ_GZDCQNM;
var workplace = item.ZZ_GZDJD;
var factory = item.ZZ_GZDCQ;
if (item.isowner == "T")
{
var change = string.Empty;
@@ -382,8 +377,8 @@ public class GainfoUpdateService : IGainfoUpdateService
MASSN = x.MASSN,
MNTXT = x.MNTXT,
ZZ_COUNNM = x.ZZ_COUNNM,
ZZ_GZDJDNM = x.ZZ_GZDJDNM,
ZZ_GZDCQNM = x.ZZ_GZDCQNM
ZZ_GZDJD = x.ZZ_GZDJD,
ZZ_GZDCQ = x.ZZ_GZDCQ
}).ToList();
}
@@ -442,8 +437,8 @@ public class GainfoUpdateService : IGainfoUpdateService
nation = "01",
idcls = "ID",
ZZ_COUNNM = person.ZZ_COUNNM,
ZZ_GZDJDNM = person.ZZ_GZDJDNM,
ZZ_GZDCQNM = person.ZZ_GZDCQNM,
ZZ_GZDJD = person.ZZ_GZDJD,
ZZ_GZDCQ = person.ZZ_GZDCQ
};
return o;

View File

@@ -117,7 +117,10 @@ namespace Dlhis.Entity.Basic.Entity
public DateTime? DAT01 { get; set; }
public string ZZ_COUNNM { get; set; }
public string ZZ_GZDJDNM { get; set; }
public string ZZ_GZDCQNM { get; set; }
// public string ZZ_GZDJDNM { get; set; }
// public string ZZ_GZDCQNM { get; set; }
public string ZZ_GZDJD { get; set; }
public string ZZ_GZDCQ { get; set; }
}
}

View File

@@ -198,14 +198,14 @@ public class SapPersonItem
/// 国家
/// </summary>
public string ZZ_COUNNM { get; set; }
/// <summary>
/// 基地
/// </summary>
public string ZZ_GZDJDNM { get; set; }
public string ZZ_GZDJD { get; set; }
/// <summary>
/// 厂区
/// </summary>
public string ZZ_GZDCQNM { get; set; }
public string ZZ_GZDCQ { get; set; }
}