讲师维护

master
xiaochanghai 9 months ago
parent 30d0c8a438
commit 76b713e64a
  1. 2
      Tiobon.Core.Common/HttpContextUser/AspNetUser.cs
  2. 2
      Tiobon.Core.Common/HttpContextUser/IUser.cs
  3. 2
      Tiobon.Core.Model/Base/BasePoco.cs
  4. 2
      Tiobon.Core.Model/ViewModels/Menu.cs
  5. 18
      Tiobon.Core.Services/BASE/BaseServices.cs
  6. 320
      Tiobon.Core.Services/CommonServices.cs

@ -42,7 +42,7 @@ public class AspNetUser : IUser
return "";
}
public long ID => GetClaimValueByType("jti").FirstOrDefault().ObjToLong();
public int ID => GetClaimValueByType("jti").FirstOrDefault().ObjToInt();
public long TenantId => GetClaimValueByType("TenantId").FirstOrDefault().ObjToLong();
public bool IsAuthenticated()

@ -6,7 +6,7 @@ namespace Tiobon.Core.Common.HttpContextUser;
public interface IUser
{
string Name { get; }
long ID { get; }
int ID { get; }
long TenantId { get; }
bool IsAuthenticated();
IEnumerable<Claim> GetClaimsIdentity();

@ -33,7 +33,7 @@ public class BasePoco1 : IBaseDeleteFilter
/// 创建人
/// </summary>
[Display(Name = "创建人"), SugarColumn(IsOnlyIgnoreUpdate = true)]
public long? CreateBy { get; set; }
public int? CreateBy { get; set; }
/// <summary>
/// 创建时间

@ -208,7 +208,7 @@ public class FlowReturn
public List<DT_PageMutiMsg> DT_PageMutiMsg { get; set; } = new List<DT_PageMutiMsg>();
public JM_PageFormActionsT1 JM_PageFormActionsT1 { get; set; } = new JM_PageFormActionsT1();
public FlowJM_TableColumnT1 JM_TableColumnT1 { get; set; } = new FlowJM_TableColumnT1();
public DataTable DT_TableDataT1 { get; set; }
public object DT_TableDataT1 { get; set; }
}

@ -179,17 +179,17 @@ public class BaseServices<TEntity, TEntityDto, TInsertDto, TEditDto> : IBaseServ
#region JM_PageFormActionsT1
dynamic JM_PageFormActionsT1 = new ExpandoObject();
var toolbars = await _caching.GetAsync<List<FormToolbar>>(body.menuName + "FormToolbar");
if (toolbars == null || (toolbars != null && !toolbars.Any()))
{
sql = @$"SELECT field fnKey, [dbo].[FLangKeyToValue] (mkey, {body.langId}, label) fnTitle, icon
//var toolbars = await _caching.GetAsync<List<FormToolbar>>(body.menuName + "FormToolbar");
//if (toolbars == null || (toolbars != null && !toolbars.Any()))
//{
// if (toolbars.Any())
// await _caching.SetAsync(body.menuName + "FormToolbar", toolbars);
//}
sql = @$"SELECT field fnKey, [dbo].[FLangKeyToValue] (mkey, {body.langId}, label) fnTitle, icon
FROM Ghrs_PageSettingEdit
WHERE IsEnable = 1 AND pageNo = '{body.menuName}' AND elementType = 'FnKey'";
toolbars = await Db.Ado.SqlQueryAsync<FormToolbar>(sql);
if (toolbars.Any())
await _caching.SetAsync(body.menuName + "FormToolbar", toolbars);
}
var toolbars = await Db.Ado.SqlQueryAsync<FormToolbar>(sql);
JM_PageFormActionsT1.Toolbar = toolbars;
#endregion

@ -1150,7 +1150,6 @@ public partial class CommonServices : BaseServices<RootEntityTkey<int>>, ICommon
});
break;
case "F_Training_Demand_ToConfirm":
case "F_TeacherManageWaitConfirm":
toolbar = result.JM_PageControlT1.Toolbar.Where(x => x.fnKey == "NewYN").FirstOrDefault();
if (toolbar != null) { toolbar.fnKey = "TBD1YN"; }
toolbar = result.JM_PageControlT1.Toolbar.Where(x => x.fnKey == "UpdateYN").FirstOrDefault();
@ -1193,6 +1192,34 @@ public partial class CommonServices : BaseServices<RootEntityTkey<int>>, ICommon
toolbar = result.JM_PageControlT1.Toolbar.Where(x => x.fnKey == "CopyYN").FirstOrDefault();
if (toolbar != null) toolbar.fnKey = "TBD4YN";
break;
case "F_TeacherManageWaitConfirm":
toolbar = result.JM_PageControlT1.Toolbar.Where(x => x.fnKey == "NewYN").FirstOrDefault();
if (toolbar != null) { toolbar.fnKey = "TBD1YN"; }
toolbar = result.JM_PageControlT1.Toolbar.Where(x => x.fnKey == "UpdateYN").FirstOrDefault();
if (toolbar != null) { toolbar.fnKey = "TBD2YN"; }
toolbar = result.JM_PageControlT1.Toolbar.Where(x => x.fnKey == "DetailYN").FirstOrDefault();
if (toolbar != null) { toolbar.fnKey = "TBD3YN"; }
toolbar = result.JM_PageControlT1.Toolbar.Where(x => x.fnKey == "CopyYN").FirstOrDefault();
if (toolbar != null) toolbar.fnKey = "TBD4YN";
result.JM_PageControlT1.Toolbar.Insert(0, new Toolbar()
{
display = true,
fnKey = "TBD7YN",
fnTitle = "拒绝",
fnType = "table",
icon = "ess-icon-reject",
position = "left"
});
result.JM_PageControlT1.Toolbar.Insert(0, new Toolbar()
{
display = true,
fnKey = "TBD6YN",
fnTitle = "同意",
fnType = "table",
icon = "ess-icon-approval",
position = "left"
});
break;
}
#endregion
@ -1938,6 +1965,7 @@ public partial class CommonServices : BaseServices<RootEntityTkey<int>>, ICommon
WHERE WorkID = @ID --
END
END";
flowReturn.DT_TableDataT1 = await Db.Ado.GetDataTableAsync(sql);
break;
case "F_ESS_TrainRequestApply":
sql = @$"DECLARE
@ -2133,6 +2161,7 @@ public partial class CommonServices : BaseServices<RootEntityTkey<int>>, ICommon
WHERE WorkID = @ID --
END
END";
flowReturn.DT_TableDataT1 = await Db.Ado.GetDataTableAsync(sql);
break;
case "F_ESS_TrainRequestPersonalApply":
sql = @$"DECLARE
@ -2332,13 +2361,221 @@ public partial class CommonServices : BaseServices<RootEntityTkey<int>>, ICommon
WHERE WorkID = @ID --
END
END";
flowReturn.DT_TableDataT1 = await Db.Ado.GetDataTableAsync(sql);
break;
case "F_ESS_TrainTeacherApply":
sql = @$"DECLARE
@SQL NVARCHAR (MAX) = '',
@FlowID INT = {param.jsonParam.FlowID},
@langId INT = {param.langId},
@DoType NVARCHAR (MAX) = '{param.doType}',
@SQL2 NVARCHAR (MAX) = '',
@JsonString NVARCHAR (MAX) = '',
@JsonString1 NVARCHAR (MAX) = '',
@JsonString2 NVARCHAR (MAX) = '',
@ID INT = '{param.id}',
@userId INT = {param.userId}
BEGIN
IF @DoType IN ('Update', 'Copy') --
BEGIN
SELECT a.Id,
a.CreateBy,
a.CreateTime,
a.CreateProg,
a.CreateIP,
a.UpdateBy,
a.UpdateTime,
a.UpdateProg,
a.UpdateIP,
a.OperateLogID,
a.CourseSource,
a.RequestNo,
a.CourseName,
a.CourseId,
a.YearMonth,
a.RequestSource,
a.DeptId,
a.ApplicantId,
a.RequestNum,
a.TrainStaffId,
a.TrainClass,
a.TrainLevel,
a.InOrOut,
a.TeacherClass,
a.Reason,
a.PerCapitaBudget,
a.TotalBudget,
a.SponsorId,
a.Status,
a.RemarkSz,
a.IsDefault,
a.IsEnable,
a.WorkID,
a.WorkNo,
a.ToDoType,
a.BatchSID,
a.WorkState,
a.ShiftID,
a.ConfirmUserID,
a.ConfirmTime,
a.ConfirmComment,
a.AgreeUserId,
a.AgreeTime,
a.AgreeReason,
a.RefuseUserId,
a.RefuseTime,
a.RefuseReason,
a.Reverse1,
a.Reverse2,
a.Reverse3,
a.Reverse4,
a.Reverse5,
a.Reverse6,
a.Reverse7,
a.Reverse8,
a.Reverse9,
a.Reverse10,
a.ReverseI1,
a.ReverseI2,
isnull
(
(SELECT CASE
WHEN @langId = 1 THEN UserName
ELSE UserEname
END
FROM Ghrs_User kk
WHERE kk.UserId = a.CreateBy),
'')
+ ' '
+ [dbo].[FLangKeyToValue]
('GHR_Common_000078', @langId, ' ')
+ ' '
+ CONVERT (NVARCHAR (16), CreateTime, 121)
+ ' '
+ [dbo].[FLangKeyToValue]
('GHR_Common_000079', @langId, ' ') CreateDataInfo,
isnull
(
(SELECT CASE
WHEN @langId = 1 THEN UserName
ELSE UserEname
END
FROM Ghrs_User kk
WHERE kk.UserId = a.UpdateBy),
'')
+ ' '
+ [dbo].[FLangKeyToValue]
('GHR_Common_000078', @langId, '于')
+ ' '
+ CONVERT (NVARCHAR (16), UpdateTime, 121)
+ ' '
+ [dbo].[FLangKeyToValue]
('GHR_Common_000080', @langId, ' ') UpdateDataInfo
FROM Ghre_Request a
WHERE a.Id = @ID
END
IF @DoType = 'Insert' --
BEGIN
SELECT (SELECT UserStaffID
FROM dbo.Ghrs_User
WHERE UserId = @userId) CreateBy,
NULL SchoolId,
(SELECT DeptID
FROM Ghra_Staff
WHERE StaffID = (SELECT UserStaffID
FROM dbo.Ghrs_User
WHERE UserId = @userId)) DeptID,
NULL StaffId,
NULL TeacherType,
NULL TeacherNo,
NULL TeacherName,
NULL PhotoUrl,
NULL Gender,
NULL Email,
NULL Mobile,
NULL TeacherLevel,
NULL Price,
NULL SkillPoints,
NULL ApplyReason,
'Wait' Status,
0 IsDefault,
0 Id,
NULL RemarkSz
END
IF @DoType = 'ReApply' -- ReApply:
BEGIN
SELECT Id,
CreateBy,
CreateTime,
CreateProg,
CreateIP,
UpdateBy,
UpdateTime,
UpdateProg,
UpdateIP,
OperateLogID,
SchoolId,
DeptID,
StaffId,
TeacherType,
TeacherNo,
TeacherName,
PhotoUrl,
Gender,
Email,
Mobile,
TeacherLevel,
Price,
SkillPoints,
RemarkSz,
IsDefault,
IsEnable,
WorkID,
WorkNo,
ToDoType,
BatchSID,
WorkState,
ShiftID,
ConfirmUserID,
ConfirmTime,
ConfirmComment,
AgreeUserId,
AgreeTime,
AgreeReason,
RefuseUserId,
RefuseTime,
RefuseReason,
Reverse1,
Reverse2,
Reverse3,
Reverse4,
Reverse5,
Reverse6,
Reverse7,
Reverse8,
Reverse9,
Reverse10,
ReverseI1,
ReverseI2,
Status,
Id1,
ApplyReason
FROM Ghre_Teacher
WHERE WorkID = @ID --
END
END";
var data = await Db.Ado.SqlQueryAsync<Ghre_TeacherDto>(sql);
data.ForEach(x => x.TeacherAttachments = new List<Ghre_TeacherAttachmentDto>());
flowReturn.DT_TableDataT1 = data;
break;
}
#endregion
flowReturn.DT_TableDataT1 = await Db.Ado.GetDataTableAsync(sql);
#endregion
return new ServiceResult<FlowReturn>() { Success = true, Message = "查询成功", result = flowReturn };
@ -2380,6 +2617,7 @@ public partial class CommonServices : BaseServices<RootEntityTkey<int>>, ICommon
sql = $"SELECT FlowID FROM Ghrs_Menu b WHERE b.Menuno = '{param.menuName}' AND b.IsEnable = 1";
@FlowID = await Db.Ado.GetIntAsync(sql);
long id = 0;
switch (param.menuName)
{
@ -2398,7 +2636,16 @@ public partial class CommonServices : BaseServices<RootEntityTkey<int>>, ICommon
dict.SponsorId = GetStaffId();
dict.RequestNo = await GenerateContinuousSequence("Ghre_Request", "RequestNo", "R");
var id = await Db.Insertable(dict).ExecuteReturnSnowflakeIdAsync();
id = await Db.Insertable(dict).ExecuteReturnSnowflakeIdAsync();
#region 根据参数 处理数据默认状态
var config = await Db.Queryable<Ghre_Config>().FirstAsync(x => x.ConfigCode == "ESS_Request_Apply_Status");
if (config != null)
{
sql = $"UPDATE Ghre_Request SET Status='{config.ConfigValue}' WHERE Id ='{id}'";
await Db.Ado.ExecuteCommandAsync(sql);
}
#endregion
sql = $"SELECT ISNULL(MAX(id)+1,1) FROM Ghre_Request WHERE Id !='{id}'";
var id1 = await Db.Ado.GetLongAsync(sql);
@ -2408,27 +2655,40 @@ public partial class CommonServices : BaseServices<RootEntityTkey<int>>, ICommon
id = id1;
#endregion
#region 生成流程数据
sql = @$"DECLARE @return_value int;
break;
}
#endregion
DECLARE @ErrorMsg nvarchar(2000);
break;
case "F_ESS_TrainTeacherApply":
SET @ErrorMsg = NULL;
#region 写入数据,并判断是否有错误
switch (param.doType)
{
case "Apply":
case "BatchApply":
EXEC @return_value = GHR30.dbo.[PT_GHR30_FlowApply]
@ID = {id},
@FlowID = {@FlowID},
@UserID = {param.userId},
@LangID = {param.langId},
@ErrorMsg = @ErrorMsg out;
#region 写入数据,并判断是否有错误
string json = param.jsonParam.ToString();
var dict = JsonHelper.JsonToObj<Ghre_Teacher>(json);
SELECT @ErrorMsg as N'@ErrorMsg', @return_value as N'@Return Value';";
id = await Db.Insertable(dict).ExecuteReturnSnowflakeIdAsync();
var message = await Db.Ado.GetStringAsync(sql);
#region 根据参数 处理数据默认状态
var config = await Db.Queryable<Ghre_Config>().FirstAsync(x => x.ConfigCode == "ESS_Teacher_Apply_Status");
if (config != null)
{
sql = $"UPDATE Ghre_Teacher SET Status='{config.ConfigValue}' WHERE Id ='{id}'";
await Db.Ado.ExecuteCommandAsync(sql);
}
#endregion
if (message.IsNotEmptyOrNull())
return new ServiceResult() { Success = false, Message = message };
sql = $"SELECT ISNULL(MAX(id)+1,1) FROM Ghre_Teacher WHERE Id !='{id}'";
var id1 = await Db.Ado.GetLongAsync(sql);
sql = $"UPDATE Ghre_Teacher SET Id={id1} WHERE Id ='{id}'";
await Db.Ado.ExecuteCommandAsync(sql);
id = id1;
#endregion
break;
@ -2438,11 +2698,33 @@ public partial class CommonServices : BaseServices<RootEntityTkey<int>>, ICommon
break;
}
#region 生成流程数据
sql = @$"DECLARE @return_value int;
DECLARE @ErrorMsg nvarchar(2000);
SET @ErrorMsg = NULL;
EXEC @return_value = GHR30.dbo.[PT_GHR30_FlowApply]
@ID = {id},
@FlowID = {@FlowID},
@UserID = {param.userId},
@LangID = {param.langId},
@ErrorMsg = @ErrorMsg out;
SELECT @ErrorMsg as N'@ErrorMsg', @return_value as N'@Return Value';";
var message = await Db.Ado.GetStringAsync(sql);
if (message.IsNotEmptyOrNull())
return new ServiceResult() { Success = false, Message = message };
#endregion
return new ServiceResult() { Success = true, Message = "提交成功" };
}
#endregion
#region MyRegion
public int? GetStaffId()
{

Loading…
Cancel
Save