2024-05-30 15:52:57 +00:00
|
|
|
|
using DeviceRepair.Models;
|
|
|
|
|
using DeviceRepair.Models.SFC;
|
2024-07-22 07:50:10 +00:00
|
|
|
|
using NLog;
|
2024-05-30 15:52:57 +00:00
|
|
|
|
using SqlSugar;
|
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
|
|
|
|
|
namespace DeviceRepair.DataAccess
|
|
|
|
|
{
|
|
|
|
|
public class TsSFCAccess : DbContext<InspBatchInfo>
|
|
|
|
|
{
|
2024-07-22 07:50:10 +00:00
|
|
|
|
private static readonly Logger log = LogManager.GetCurrentClassLogger();
|
|
|
|
|
|
2024-05-30 15:52:57 +00:00
|
|
|
|
private static TsSFCAccess manager;
|
|
|
|
|
public static TsSFCAccess Instance
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
if (manager == null)
|
|
|
|
|
manager = new TsSFCAccess();
|
|
|
|
|
return manager;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 判断批次是否存在
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="Batch"></param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public APIResponseData GetBatchInfoToStaff(string Batch)
|
|
|
|
|
{
|
|
|
|
|
APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = $"获取数据失败!" };
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
db.ChangeDatabase("data");
|
|
|
|
|
int Count = db.Queryable<InspBatchInfo>().Count(x => x.Batch.ToUpper().Equals(Batch.ToUpper()));
|
|
|
|
|
|
|
|
|
|
apiResponseData.Code = 1;
|
|
|
|
|
apiResponseData.Message = "";
|
|
|
|
|
apiResponseData.Data = Count;
|
|
|
|
|
}
|
|
|
|
|
catch (SqlSugarException ex)
|
|
|
|
|
{
|
2024-07-22 07:50:10 +00:00
|
|
|
|
log.Error(ex);
|
2024-05-30 15:52:57 +00:00
|
|
|
|
apiResponseData.Code = -1;
|
|
|
|
|
apiResponseData.Message = ex.Message;
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
2024-07-22 07:50:10 +00:00
|
|
|
|
log.Error(ex);
|
2024-05-30 15:52:57 +00:00
|
|
|
|
apiResponseData.Code = -1;
|
|
|
|
|
apiResponseData.Message = ex.Message;
|
|
|
|
|
}
|
|
|
|
|
return apiResponseData;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 判断当前账户是否PE QE
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="UserCode"></param>
|
|
|
|
|
/// <param name="UserName"></param>
|
|
|
|
|
/// <param name="Post"></param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public APIResponseData CurrentIsManager(string UserCode)
|
|
|
|
|
{
|
|
|
|
|
APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = $"获取数据失败!" };
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
db.ChangeDatabase("addon");
|
2024-06-04 09:25:13 +00:00
|
|
|
|
|
|
|
|
|
List<PostsInfo> Datas = db.Queryable<UserPostsInfo, PostsInfo>((t1, t2) => new object[] {
|
|
|
|
|
JoinType.Left,t1.Post == t2.Guid
|
2024-06-10 17:33:11 +00:00
|
|
|
|
}).Where((t1, t2) => t1.UserCode.Equals(UserCode, StringComparison.CurrentCultureIgnoreCase) && t2.Status == "A").Select((t1, t2) => t2).ToList();
|
2024-06-04 09:25:13 +00:00
|
|
|
|
|
|
|
|
|
int PostType = -1;
|
|
|
|
|
|
|
|
|
|
if (Datas.Any(x => x.PostName == "OEM-QE"))
|
2024-06-05 17:09:59 +00:00
|
|
|
|
PostType = 0;
|
2024-06-04 09:25:13 +00:00
|
|
|
|
|
|
|
|
|
if (Datas.Any(x => x.PostName == "OEM-PE"))
|
|
|
|
|
PostType = 1;
|
2024-05-30 15:52:57 +00:00
|
|
|
|
|
|
|
|
|
apiResponseData.Code = 1;
|
|
|
|
|
apiResponseData.Message = "";
|
2024-06-04 09:25:13 +00:00
|
|
|
|
apiResponseData.Data = PostType;
|
2024-05-30 15:52:57 +00:00
|
|
|
|
}
|
|
|
|
|
catch (SqlSugarException ex)
|
|
|
|
|
{
|
2024-07-22 07:50:10 +00:00
|
|
|
|
log.Error(ex);
|
2024-05-30 15:52:57 +00:00
|
|
|
|
apiResponseData.Code = -1;
|
|
|
|
|
apiResponseData.Message = ex.Message;
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
2024-07-22 07:50:10 +00:00
|
|
|
|
log.Error(ex);
|
2024-05-30 15:52:57 +00:00
|
|
|
|
apiResponseData.Code = -1;
|
|
|
|
|
apiResponseData.Message = ex.Message;
|
|
|
|
|
}
|
|
|
|
|
return apiResponseData;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 获取当前批次的QE PE邮箱
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="Batch"></param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public APIResponseData CurrentBatchManagerEmail(string Batch)
|
|
|
|
|
{
|
|
|
|
|
APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = $"获取数据失败!" };
|
|
|
|
|
List<string> emailLst = new List<string>();
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
db.ChangeDatabase("data");
|
|
|
|
|
InspBatchInfo BatchInfo = db.Queryable<InspBatchInfo>().First(x => x.Batch.ToUpper().Equals(Batch.ToUpper()));
|
|
|
|
|
if (BatchInfo != null)
|
|
|
|
|
{
|
|
|
|
|
db.ChangeDatabase("addon");
|
|
|
|
|
List<ResourceAllocationsInfo> allocationsInfos = db.Queryable<ResourceAllocationsInfo>().Where(x => x.Product.Trim().Equals(BatchInfo.Product.ToUpper()) &&
|
|
|
|
|
x.Technology.Trim().ToUpper() == BatchInfo.Technology.Trim().ToUpper()).ToList();
|
|
|
|
|
|
|
|
|
|
if (allocationsInfos != null)
|
|
|
|
|
{
|
|
|
|
|
Guid[] guids = allocationsInfos.Select(x => x.Staff).ToArray();
|
|
|
|
|
List<StaffsInfo> staffs = db.Queryable<StaffsInfo>().Where(x => SqlFunc.ContainsArray(guids, x.Guid) && (x.Post == "0" || x.Post == "1")).ToList();
|
|
|
|
|
if (staffs != null && staffs.Count > 0)
|
|
|
|
|
{
|
|
|
|
|
emailLst.AddRange(staffs.Select(x => x.EMail).ToArray());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
apiResponseData.Code = 1;
|
|
|
|
|
apiResponseData.Message = "";
|
|
|
|
|
apiResponseData.Data = emailLst;
|
|
|
|
|
}
|
|
|
|
|
catch (SqlSugarException ex)
|
|
|
|
|
{
|
2024-07-22 07:50:10 +00:00
|
|
|
|
log.Error(ex);
|
2024-05-30 15:52:57 +00:00
|
|
|
|
apiResponseData.Code = -1;
|
|
|
|
|
apiResponseData.Message = ex.Message;
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
2024-07-22 07:50:10 +00:00
|
|
|
|
log.Error(ex);
|
2024-05-30 15:52:57 +00:00
|
|
|
|
apiResponseData.Code = -1;
|
|
|
|
|
apiResponseData.Message = ex.Message;
|
|
|
|
|
}
|
|
|
|
|
return apiResponseData;
|
|
|
|
|
}
|
|
|
|
|
|
2024-06-02 16:38:52 +00:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// 验证用户
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="UserCode"></param>
|
|
|
|
|
/// <param name="Password"></param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public APIResponseData ValideteToekn(string UserCode, string Password)
|
|
|
|
|
{
|
|
|
|
|
APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = $"获取数据失败!" };
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
db.ChangeDatabase("data");
|
|
|
|
|
int Count = db.Queryable<UserInfoInfo>().Count(x => x.UserCode.Equals(UserCode) && x.Password.Equals(Password) && x.Status == "A");
|
|
|
|
|
|
|
|
|
|
apiResponseData.Code = 1;
|
|
|
|
|
apiResponseData.Message = "";
|
|
|
|
|
apiResponseData.Data = Count;
|
|
|
|
|
}
|
|
|
|
|
catch (SqlSugarException ex)
|
|
|
|
|
{
|
2024-07-22 07:50:10 +00:00
|
|
|
|
log.Error(ex);
|
2024-06-02 16:38:52 +00:00
|
|
|
|
apiResponseData.Code = -1;
|
|
|
|
|
apiResponseData.Message = ex.Message;
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
2024-07-22 07:50:10 +00:00
|
|
|
|
log.Error(ex);
|
2024-06-02 16:38:52 +00:00
|
|
|
|
apiResponseData.Code = -1;
|
|
|
|
|
apiResponseData.Message = ex.Message;
|
|
|
|
|
}
|
|
|
|
|
return apiResponseData;
|
|
|
|
|
}
|
2024-07-17 02:32:45 +00:00
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 获取TsSFC系统用户权限
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="UserGuid"></param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public APIResponseData GetUserAuths(Guid UserGuid)
|
|
|
|
|
{
|
|
|
|
|
APIResponseData apiResponseData = new APIResponseData { Code = -1, Message = $"获取数据失败!" };
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
db.ChangeDatabase("data");
|
|
|
|
|
|
|
|
|
|
List<string> UserAuths = db.Ado.SqlQuery<string>(@"SELECT b.AuthCode FROM dbo.UserRoles a
|
|
|
|
|
INNER JOIN dbo.RoleAuths b ON a.RoleGuid = b.RoleGuid AND b.Status = 'A'
|
|
|
|
|
WHERE a.Status = 'A' AND a.UserGuid = @UserGuid", new { UserGuid }).ToList();
|
|
|
|
|
|
|
|
|
|
apiResponseData.Code = 1;
|
|
|
|
|
apiResponseData.Message = "";
|
|
|
|
|
apiResponseData.Data = UserAuths;
|
|
|
|
|
}
|
|
|
|
|
catch (SqlSugarException ex)
|
|
|
|
|
{
|
2024-07-22 07:50:10 +00:00
|
|
|
|
log.Error(ex);
|
2024-07-17 02:32:45 +00:00
|
|
|
|
apiResponseData.Code = -1;
|
|
|
|
|
apiResponseData.Message = ex.Message;
|
|
|
|
|
}
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
{
|
2024-07-22 07:50:10 +00:00
|
|
|
|
log.Error(ex);
|
2024-07-17 02:32:45 +00:00
|
|
|
|
apiResponseData.Code = -1;
|
|
|
|
|
apiResponseData.Message = ex.Message;
|
|
|
|
|
}
|
|
|
|
|
return apiResponseData;
|
|
|
|
|
}
|
|
|
|
|
|
2024-05-30 15:52:57 +00:00
|
|
|
|
}
|
|
|
|
|
}
|