课程发布生成课程快照,并作废历史快照数据

master
xiaochanghai 11 months ago
parent 8e4747cfbe
commit 38385208ac
  1. 708
      Model/Tiobon.Web.pdm
  2. 14
      Tiobon.Core.Api/Controllers/Ghre/Ghre_CourseSnapController.cs
  3. 485
      Tiobon.Core.Api/Tiobon.Core.Model.xml
  4. 5
      Tiobon.Core.Api/Tiobon.Core.xml
  5. 12
      Tiobon.Core.IServices/Ghre/IGhre_CourseSnapServices.cs
  6. 282
      Tiobon.Core.Model/Base/Ghre/Ghre_CourseSnap.Dto.Base.cs
  7. 27
      Tiobon.Core.Model/Edit/Ghre/Ghre_CourseSnap.Dto.EditInput.cs
  8. 27
      Tiobon.Core.Model/Insert/Ghre/Ghre_CourseSnap.Dto.InsertInput.cs
  9. 284
      Tiobon.Core.Model/Models/Ghre/Ghre_CourseSnap.cs
  10. 34
      Tiobon.Core.Model/View/Ghre/Ghre_CourseSnap.Dto.View.cs
  11. 25
      Tiobon.Core.Services/Ghre/Ghre_CourseServices.cs
  12. 23
      Tiobon.Core.Services/Ghre/Ghre_CourseSnapServices.cs
  13. 485
      Tiobon.Core/Tiobon.Core.Model.xml
  14. 5
      Tiobon.Core/Tiobon.Core.xml

File diff suppressed because it is too large Load Diff

@ -0,0 +1,14 @@
namespace Tiobon.Core.Api.Controllers;
/// <summary>
/// Ghre_CourseSnap(Controller)
/// </summary>
[Route("api/[controller]")]
[ApiController, GlobalActionFilter]
[Authorize(Permissions.Name), ApiExplorerSettings(GroupName = Grouping.GroupName_Ghre)]
public class Ghre_CourseSnapController : BaseController<IGhre_CourseSnapServices, Ghre_CourseSnap, Ghre_CourseSnapDto, InsertGhre_CourseSnapInput, EditGhre_CourseSnapInput>
{
public Ghre_CourseSnapController(IGhre_CourseSnapServices service) : base(service)
{
}
}

@ -1680,6 +1680,236 @@
预留字段12
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghre_CourseSnapBase">
<summary>
Ghre_CourseSnap (Dto.Base)
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseId">
<summary>
课程ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseNo">
<summary>
课程编号
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseName">
<summary>
课程名称
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseClassId">
<summary>
课程分类ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseClass">
<summary>
课程分类
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseSceneId">
<summary>
课程场景ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseScene">
<summary>
课程场景
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseWareId">
<summary>
课件ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.StandardHour">
<summary>
标准课时
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CreditPoints">
<summary>
学分
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.ManagerId">
<summary>
课程负责人
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.ManagerDeptId">
<summary>
课程负责人部门ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.InOrOut">
<summary>
内/外训
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.TeacherId">
<summary>
讲师ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.TeacherDeptId">
<summary>
讲师部门ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.SchoolId">
<summary>
培训机构ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.SchoolTeacherId">
<summary>
培训机构讲师ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Price">
<summary>
市场价格
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.ChargeMethod">
<summary>
收费方式,天数、时间、项目
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.IsOPen">
<summary>
是否公开课
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.ValidityPeriod">
<summary>
培训有效期(月)
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.ExamPaperId">
<summary>
试卷ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.FeedbackOrderId">
<summary>
反馈单ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CoverUrl">
<summary>
封面图
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.UseDefaultCoverImage">
<summary>
是否使用默认封面
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.DefaultCoverImageName">
<summary>
默认封面图Name
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Outline">
<summary>
课程大纲
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.BeforeReady">
<summary>
课前准备
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Status">
<summary>
状态
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.RemarkSz">
<summary>
备注
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.SortNo">
<summary>
排序
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.IsDefault">
<summary>
默认标志
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse1">
<summary>
预留字段1
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse2">
<summary>
预留字段2
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse3">
<summary>
预留字段3
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse4">
<summary>
预留字段4
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse5">
<summary>
预留字段5
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse6">
<summary>
预留字段6
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse7">
<summary>
预留字段7
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse8">
<summary>
预留字段8
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse9">
<summary>
预留字段9
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse10">
<summary>
预留字段10
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.ReverseI1">
<summary>
预留字段11
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.ReverseI2">
<summary>
预留字段12
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseClass1">
<summary>
CourseClass1
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghre_CourseWareBase">
<summary>
课件 (Dto.Base)
@ -4907,6 +5137,11 @@
课程场景 (Dto.EditInput)
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.EditGhre_CourseSnapInput">
<summary>
Ghre_CourseSnap (Dto.EditInput)
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.EditGhre_CourseWareInput">
<summary>
课件 (Dto.EditInput)
@ -5087,6 +5322,11 @@
课程场景 (Dto.InsertInput)
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.InsertGhre_CourseSnapInput">
<summary>
Ghre_CourseSnap (Dto.InsertInput)
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.InsertGhre_CourseWareInput">
<summary>
课件 (Dto.InsertInput)
@ -7071,6 +7311,236 @@
预留字段12
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghre_CourseSnap">
<summary>
Ghre_CourseSnap (Model)
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseId">
<summary>
课程ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseNo">
<summary>
课程编号
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseName">
<summary>
课程名称
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseClassId">
<summary>
课程分类ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseClass">
<summary>
课程分类
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseSceneId">
<summary>
课程场景ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseScene">
<summary>
课程场景
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseWareId">
<summary>
课件ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.StandardHour">
<summary>
标准课时
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CreditPoints">
<summary>
学分
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.ManagerId">
<summary>
课程负责人
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.ManagerDeptId">
<summary>
课程负责人部门ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.InOrOut">
<summary>
内/外训
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.TeacherId">
<summary>
讲师ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.TeacherDeptId">
<summary>
讲师部门ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.SchoolId">
<summary>
培训机构ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.SchoolTeacherId">
<summary>
培训机构讲师ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Price">
<summary>
市场价格
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.ChargeMethod">
<summary>
收费方式,天数、时间、项目
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.IsOPen">
<summary>
是否公开课
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.ValidityPeriod">
<summary>
培训有效期(月)
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.ExamPaperId">
<summary>
试卷ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.FeedbackOrderId">
<summary>
反馈单ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CoverUrl">
<summary>
封面图
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.UseDefaultCoverImage">
<summary>
是否使用默认封面
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.DefaultCoverImageName">
<summary>
默认封面图Name
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Outline">
<summary>
课程大纲
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.BeforeReady">
<summary>
课前准备
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Status">
<summary>
状态
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.RemarkSz">
<summary>
备注
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.SortNo">
<summary>
排序
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.IsDefault">
<summary>
默认标志
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse1">
<summary>
预留字段1
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse2">
<summary>
预留字段2
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse3">
<summary>
预留字段3
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse4">
<summary>
预留字段4
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse5">
<summary>
预留字段5
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse6">
<summary>
预留字段6
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse7">
<summary>
预留字段7
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse8">
<summary>
预留字段8
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse9">
<summary>
预留字段9
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse10">
<summary>
预留字段10
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.ReverseI1">
<summary>
预留字段11
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.ReverseI2">
<summary>
预留字段12
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseClass1">
<summary>
CourseClass1
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghre_CourseWare">
<summary>
课件 (Model)
@ -11307,6 +11777,21 @@
修改信息
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghre_CourseSnapDto">
<summary>
Ghre_CourseSnap(Dto.View)
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapDto.CreateDataInfo">
<summary>
创建信息
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapDto.UpdateDataInfo">
<summary>
修改信息
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghre_CourseWareDto">
<summary>
课件(Dto.View)

@ -622,6 +622,11 @@
课程场景(Controller)
</summary>
</member>
<member name="T:Tiobon.Core.Api.Controllers.Ghre_CourseSnapController">
<summary>
Ghre_CourseSnap(Controller)
</summary>
</member>
<member name="T:Tiobon.Core.Api.Controllers.Ghre_CourseWareAttachmentController">
<summary>
课件附件(Controller)

@ -0,0 +1,12 @@
using Tiobon.Core.IServices.BASE;
using Tiobon.Core.Model.Models;
namespace Tiobon.Core.IServices
{
/// <summary>
/// Ghre_CourseSnap(自定义服务接口)
/// </summary>
public interface IGhre_CourseSnapServices :IBaseServices<Ghre_CourseSnap, Ghre_CourseSnapDto, InsertGhre_CourseSnapInput, EditGhre_CourseSnapInput>
{
}
}

@ -0,0 +1,282 @@
/* ,
* Ghre_CourseSnap.cs
*
* N / A
* Ghre_CourseSnap
*
* Ver
*
*V0.01 2024/7/29 13:29:11 SimonHsiao
*
* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
*
*  
* SimonHsiao
*
*/
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Tiobon.Core.Model.Models
{
/// <summary>
/// Ghre_CourseSnap (Dto.Base)
/// </summary>
public class Ghre_CourseSnapBase
{
/// <summary>
/// 课程ID
/// </summary>
public long? CourseId { get; set; }
/// <summary>
/// 课程编号
/// </summary>
[Display(Name = "CourseNo"), Description("课程编号"), MaxLength(32, ErrorMessage = "课程编号 不能超过 32 个字符")]
public string CourseNo { get; set; }
/// <summary>
/// 课程名称
/// </summary>
[Display(Name = "CourseName"), Description("课程名称"), MaxLength(32, ErrorMessage = "课程名称 不能超过 32 个字符")]
public string CourseName { get; set; }
/// <summary>
/// 课程分类ID
/// </summary>
[Display(Name = "CourseClassId"), Description("课程分类ID"), MaxLength(2000, ErrorMessage = "课程分类ID 不能超过 2000 个字符")]
public string CourseClassId { get; set; }
/// <summary>
/// 课程分类
/// </summary>
[Display(Name = "CourseClass"), Description("课程分类"), MaxLength(2000, ErrorMessage = "课程分类 不能超过 2000 个字符")]
public string CourseClass { get; set; }
/// <summary>
/// 课程场景ID
/// </summary>
public long? CourseSceneId { get; set; }
/// <summary>
/// 课程场景
/// </summary>
[Display(Name = "CourseScene"), Description("课程场景"), MaxLength(64, ErrorMessage = "课程场景 不能超过 64 个字符")]
public string CourseScene { get; set; }
/// <summary>
/// 课件ID
/// </summary>
[Display(Name = "CourseWareId"), Description("课件ID"), MaxLength(2000, ErrorMessage = "课件ID 不能超过 2000 个字符")]
public string CourseWareId { get; set; }
/// <summary>
/// 标准课时
/// </summary>
public int? StandardHour { get; set; }
/// <summary>
/// 学分
/// </summary>
public int? CreditPoints { get; set; }
/// <summary>
/// 课程负责人
/// </summary>
public int? ManagerId { get; set; }
/// <summary>
/// 课程负责人部门ID
/// </summary>
public int? ManagerDeptId { get; set; }
/// <summary>
/// 内/外训
/// </summary>
[Display(Name = "InOrOut"), Description("内/外训"), MaxLength(32, ErrorMessage = "内/外训 不能超过 32 个字符")]
public string InOrOut { get; set; }
/// <summary>
/// 讲师ID
/// </summary>
public int? TeacherId { get; set; }
/// <summary>
/// 讲师部门ID
/// </summary>
public int? TeacherDeptId { get; set; }
/// <summary>
/// 培训机构ID
/// </summary>
public long? SchoolId { get; set; }
/// <summary>
/// 培训机构讲师ID
/// </summary>
public long? SchoolTeacherId { get; set; }
/// <summary>
/// 市场价格
/// </summary>
[Display(Name = "Price"), Description("市场价格"), Column(TypeName = "decimal(20,2)")]
public decimal? Price { get; set; }
/// <summary>
/// 收费方式,天数、时间、项目
/// </summary>
[Display(Name = "ChargeMethod"), Description("收费方式,天数、时间、项目"), MaxLength(32, ErrorMessage = "收费方式,天数、时间、项目 不能超过 32 个字符")]
public string ChargeMethod { get; set; }
/// <summary>
/// 是否公开课
/// </summary>
public bool? IsOPen { get; set; }
/// <summary>
/// 培训有效期(月)
/// </summary>
public int? ValidityPeriod { get; set; }
/// <summary>
/// 试卷ID
/// </summary>
[Display(Name = "ExamPaperId"), Description("试卷ID"), MaxLength(2000, ErrorMessage = "试卷ID 不能超过 2000 个字符")]
public string ExamPaperId { get; set; }
/// <summary>
/// 反馈单ID
/// </summary>
public long? FeedbackOrderId { get; set; }
/// <summary>
/// 封面图
/// </summary>
[Display(Name = "CoverUrl"), Description("封面图"), MaxLength(2000, ErrorMessage = "封面图 不能超过 2000 个字符")]
public string CoverUrl { get; set; }
/// <summary>
/// 是否使用默认封面
/// </summary>
public bool? UseDefaultCoverImage { get; set; }
/// <summary>
/// 默认封面图Name
/// </summary>
[Display(Name = "DefaultCoverImageName"), Description("默认封面图Name"), MaxLength(32, ErrorMessage = "默认封面图Name 不能超过 32 个字符")]
public string DefaultCoverImageName { get; set; }
/// <summary>
/// 课程大纲
/// </summary>
[Display(Name = "Outline"), Description("课程大纲"), MaxLength(2000, ErrorMessage = "课程大纲 不能超过 2000 个字符")]
public string Outline { get; set; }
/// <summary>
/// 课前准备
/// </summary>
[Display(Name = "BeforeReady"), Description("课前准备"), MaxLength(2000, ErrorMessage = "课前准备 不能超过 2000 个字符")]
public string BeforeReady { get; set; }
/// <summary>
/// 状态
/// </summary>
[Display(Name = "Status"), Description("状态"), MaxLength(32, ErrorMessage = "状态 不能超过 32 个字符")]
public string Status { get; set; }
/// <summary>
/// 备注
/// </summary>
[Display(Name = "RemarkSz"), Description("备注"), MaxLength(2000, ErrorMessage = "备注 不能超过 2000 个字符")]
public string RemarkSz { get; set; }
/// <summary>
/// 排序
/// </summary>
public int? SortNo { get; set; }
/// <summary>
/// 默认标志
/// </summary>
public int? IsDefault { get; set; }
/// <summary>
/// 预留字段1
/// </summary>
[Display(Name = "Reverse1"), Description("预留字段1"), MaxLength(1000, ErrorMessage = "预留字段1 不能超过 1000 个字符")]
public string Reverse1 { get; set; }
/// <summary>
/// 预留字段2
/// </summary>
[Display(Name = "Reverse2"), Description("预留字段2"), MaxLength(1000, ErrorMessage = "预留字段2 不能超过 1000 个字符")]
public string Reverse2 { get; set; }
/// <summary>
/// 预留字段3
/// </summary>
[Display(Name = "Reverse3"), Description("预留字段3"), MaxLength(1000, ErrorMessage = "预留字段3 不能超过 1000 个字符")]
public string Reverse3 { get; set; }
/// <summary>
/// 预留字段4
/// </summary>
[Display(Name = "Reverse4"), Description("预留字段4"), MaxLength(1000, ErrorMessage = "预留字段4 不能超过 1000 个字符")]
public string Reverse4 { get; set; }
/// <summary>
/// 预留字段5
/// </summary>
[Display(Name = "Reverse5"), Description("预留字段5"), MaxLength(1000, ErrorMessage = "预留字段5 不能超过 1000 个字符")]
public string Reverse5 { get; set; }
/// <summary>
/// 预留字段6
/// </summary>
[Display(Name = "Reverse6"), Description("预留字段6"), MaxLength(1000, ErrorMessage = "预留字段6 不能超过 1000 个字符")]
public string Reverse6 { get; set; }
/// <summary>
/// 预留字段7
/// </summary>
[Display(Name = "Reverse7"), Description("预留字段7"), MaxLength(1000, ErrorMessage = "预留字段7 不能超过 1000 个字符")]
public string Reverse7 { get; set; }
/// <summary>
/// 预留字段8
/// </summary>
[Display(Name = "Reverse8"), Description("预留字段8"), MaxLength(1000, ErrorMessage = "预留字段8 不能超过 1000 个字符")]
public string Reverse8 { get; set; }
/// <summary>
/// 预留字段9
/// </summary>
[Display(Name = "Reverse9"), Description("预留字段9"), MaxLength(1000, ErrorMessage = "预留字段9 不能超过 1000 个字符")]
public string Reverse9 { get; set; }
/// <summary>
/// 预留字段10
/// </summary>
[Display(Name = "Reverse10"), Description("预留字段10"), MaxLength(1000, ErrorMessage = "预留字段10 不能超过 1000 个字符")]
public string Reverse10 { get; set; }
/// <summary>
/// 预留字段11
/// </summary>
public int? ReverseI1 { get; set; }
/// <summary>
/// 预留字段12
/// </summary>
public int? ReverseI2 { get; set; }
/// <summary>
/// CourseClass1
/// </summary>
[Display(Name = "CourseClass1"), Description("CourseClass1"), MaxLength(2000, ErrorMessage = "CourseClass1 不能超过 2000 个字符")]
public string CourseClass1 { get; set; }
}
}

@ -0,0 +1,27 @@
/* ,
* Ghre_CourseSnap.cs
*
* N / A
* Ghre_CourseSnap
*
* Ver
*
*V0.01 2024/7/29 13:29:11 SimonHsiao
*
* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
*
*  
* SimonHsiao
*
*/
namespace Tiobon.Core.Model.Models
{
/// <summary>
/// Ghre_CourseSnap (Dto.EditInput)
/// </summary>
public class EditGhre_CourseSnapInput : Ghre_CourseSnapBase
{
}
}

@ -0,0 +1,27 @@
/* ,
* Ghre_CourseSnap.cs
*
* N / A
* Ghre_CourseSnap
*
* Ver
*
*V0.01 2024/7/29 13:29:11 SimonHsiao
*
* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
*
*  
* SimonHsiao
*
*/
namespace Tiobon.Core.Model.Models
{
/// <summary>
/// Ghre_CourseSnap (Dto.InsertInput)
/// </summary>
public class InsertGhre_CourseSnapInput : Ghre_CourseSnapBase
{
}
}

@ -0,0 +1,284 @@
/* ,
* Ghre_CourseSnap.cs
*
* N / A
* Ghre_CourseSnap
*
* Ver
*
*V0.01 2024/7/29 13:29:11 SimonHsiao
*
* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
*
*  
* SimonHsiao
*
*/
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using SqlSugar;
namespace Tiobon.Core.Model.Models
{
/// <summary>
/// Ghre_CourseSnap (Model)
/// </summary>
[SugarTable("Ghre_CourseSnap", "Ghre_CourseSnap"), Entity(TableCnName = "Ghre_CourseSnap", TableName = "Ghre_CourseSnap")]
public class Ghre_CourseSnap : BasePoco
{
/// <summary>
/// 课程ID
/// </summary>
public long? CourseId { get; set; }
/// <summary>
/// 课程编号
/// </summary>
[Display(Name = "CourseNo"), Description("课程编号"), MaxLength(32, ErrorMessage = "课程编号 不能超过 32 个字符")]
public string CourseNo { get; set; }
/// <summary>
/// 课程名称
/// </summary>
[Display(Name = "CourseName"), Description("课程名称"), MaxLength(32, ErrorMessage = "课程名称 不能超过 32 个字符")]
public string CourseName { get; set; }
/// <summary>
/// 课程分类ID
/// </summary>
[Display(Name = "CourseClassId"), Description("课程分类ID"), MaxLength(2000, ErrorMessage = "课程分类ID 不能超过 2000 个字符")]
public string CourseClassId { get; set; }
/// <summary>
/// 课程分类
/// </summary>
[Display(Name = "CourseClass"), Description("课程分类"), MaxLength(2000, ErrorMessage = "课程分类 不能超过 2000 个字符")]
public string CourseClass { get; set; }
/// <summary>
/// 课程场景ID
/// </summary>
public long? CourseSceneId { get; set; }
/// <summary>
/// 课程场景
/// </summary>
[Display(Name = "CourseScene"), Description("课程场景"), MaxLength(64, ErrorMessage = "课程场景 不能超过 64 个字符")]
public string CourseScene { get; set; }
/// <summary>
/// 课件ID
/// </summary>
[Display(Name = "CourseWareId"), Description("课件ID"), MaxLength(2000, ErrorMessage = "课件ID 不能超过 2000 个字符")]
public string CourseWareId { get; set; }
/// <summary>
/// 标准课时
/// </summary>
public int? StandardHour { get; set; }
/// <summary>
/// 学分
/// </summary>
public int? CreditPoints { get; set; }
/// <summary>
/// 课程负责人
/// </summary>
public int? ManagerId { get; set; }
/// <summary>
/// 课程负责人部门ID
/// </summary>
public int? ManagerDeptId { get; set; }
/// <summary>
/// 内/外训
/// </summary>
[Display(Name = "InOrOut"), Description("内/外训"), MaxLength(32, ErrorMessage = "内/外训 不能超过 32 个字符")]
public string InOrOut { get; set; }
/// <summary>
/// 讲师ID
/// </summary>
public int? TeacherId { get; set; }
/// <summary>
/// 讲师部门ID
/// </summary>
public int? TeacherDeptId { get; set; }
/// <summary>
/// 培训机构ID
/// </summary>
public long? SchoolId { get; set; }
/// <summary>
/// 培训机构讲师ID
/// </summary>
public long? SchoolTeacherId { get; set; }
/// <summary>
/// 市场价格
/// </summary>
[Display(Name = "Price"), Description("市场价格"), Column(TypeName = "decimal(20,2)")]
public decimal? Price { get; set; }
/// <summary>
/// 收费方式,天数、时间、项目
/// </summary>
[Display(Name = "ChargeMethod"), Description("收费方式,天数、时间、项目"), MaxLength(32, ErrorMessage = "收费方式,天数、时间、项目 不能超过 32 个字符")]
public string ChargeMethod { get; set; }
/// <summary>
/// 是否公开课
/// </summary>
public bool? IsOPen { get; set; }
/// <summary>
/// 培训有效期(月)
/// </summary>
public int? ValidityPeriod { get; set; }
/// <summary>
/// 试卷ID
/// </summary>
[Display(Name = "ExamPaperId"), Description("试卷ID"), MaxLength(2000, ErrorMessage = "试卷ID 不能超过 2000 个字符")]
public string ExamPaperId { get; set; }
/// <summary>
/// 反馈单ID
/// </summary>
public long? FeedbackOrderId { get; set; }
/// <summary>
/// 封面图
/// </summary>
[Display(Name = "CoverUrl"), Description("封面图"), MaxLength(2000, ErrorMessage = "封面图 不能超过 2000 个字符")]
public string CoverUrl { get; set; }
/// <summary>
/// 是否使用默认封面
/// </summary>
public bool? UseDefaultCoverImage { get; set; }
/// <summary>
/// 默认封面图Name
/// </summary>
[Display(Name = "DefaultCoverImageName"), Description("默认封面图Name"), MaxLength(32, ErrorMessage = "默认封面图Name 不能超过 32 个字符")]
public string DefaultCoverImageName { get; set; }
/// <summary>
/// 课程大纲
/// </summary>
[Display(Name = "Outline"), Description("课程大纲"), MaxLength(2000, ErrorMessage = "课程大纲 不能超过 2000 个字符")]
public string Outline { get; set; }
/// <summary>
/// 课前准备
/// </summary>
[Display(Name = "BeforeReady"), Description("课前准备"), MaxLength(2000, ErrorMessage = "课前准备 不能超过 2000 个字符")]
public string BeforeReady { get; set; }
/// <summary>
/// 状态
/// </summary>
[Display(Name = "Status"), Description("状态"), MaxLength(32, ErrorMessage = "状态 不能超过 32 个字符")]
public string Status { get; set; }
/// <summary>
/// 备注
/// </summary>
[Display(Name = "RemarkSz"), Description("备注"), MaxLength(2000, ErrorMessage = "备注 不能超过 2000 个字符")]
public string RemarkSz { get; set; }
/// <summary>
/// 排序
/// </summary>
public int? SortNo { get; set; }
/// <summary>
/// 默认标志
/// </summary>
public int? IsDefault { get; set; }
/// <summary>
/// 预留字段1
/// </summary>
[Display(Name = "Reverse1"), Description("预留字段1"), MaxLength(1000, ErrorMessage = "预留字段1 不能超过 1000 个字符")]
public string Reverse1 { get; set; }
/// <summary>
/// 预留字段2
/// </summary>
[Display(Name = "Reverse2"), Description("预留字段2"), MaxLength(1000, ErrorMessage = "预留字段2 不能超过 1000 个字符")]
public string Reverse2 { get; set; }
/// <summary>
/// 预留字段3
/// </summary>
[Display(Name = "Reverse3"), Description("预留字段3"), MaxLength(1000, ErrorMessage = "预留字段3 不能超过 1000 个字符")]
public string Reverse3 { get; set; }
/// <summary>
/// 预留字段4
/// </summary>
[Display(Name = "Reverse4"), Description("预留字段4"), MaxLength(1000, ErrorMessage = "预留字段4 不能超过 1000 个字符")]
public string Reverse4 { get; set; }
/// <summary>
/// 预留字段5
/// </summary>
[Display(Name = "Reverse5"), Description("预留字段5"), MaxLength(1000, ErrorMessage = "预留字段5 不能超过 1000 个字符")]
public string Reverse5 { get; set; }
/// <summary>
/// 预留字段6
/// </summary>
[Display(Name = "Reverse6"), Description("预留字段6"), MaxLength(1000, ErrorMessage = "预留字段6 不能超过 1000 个字符")]
public string Reverse6 { get; set; }
/// <summary>
/// 预留字段7
/// </summary>
[Display(Name = "Reverse7"), Description("预留字段7"), MaxLength(1000, ErrorMessage = "预留字段7 不能超过 1000 个字符")]
public string Reverse7 { get; set; }
/// <summary>
/// 预留字段8
/// </summary>
[Display(Name = "Reverse8"), Description("预留字段8"), MaxLength(1000, ErrorMessage = "预留字段8 不能超过 1000 个字符")]
public string Reverse8 { get; set; }
/// <summary>
/// 预留字段9
/// </summary>
[Display(Name = "Reverse9"), Description("预留字段9"), MaxLength(1000, ErrorMessage = "预留字段9 不能超过 1000 个字符")]
public string Reverse9 { get; set; }
/// <summary>
/// 预留字段10
/// </summary>
[Display(Name = "Reverse10"), Description("预留字段10"), MaxLength(1000, ErrorMessage = "预留字段10 不能超过 1000 个字符")]
public string Reverse10 { get; set; }
/// <summary>
/// 预留字段11
/// </summary>
public int? ReverseI1 { get; set; }
/// <summary>
/// 预留字段12
/// </summary>
public int? ReverseI2 { get; set; }
/// <summary>
/// CourseClass1
/// </summary>
[Display(Name = "CourseClass1"), Description("CourseClass1"), MaxLength(2000, ErrorMessage = "CourseClass1 不能超过 2000 个字符")]
public string CourseClass1 { get; set; }
}
}

@ -0,0 +1,34 @@
/* ,
* Ghre_CourseSnap.cs
*
* N / A
* Ghre_CourseSnap
*
* Ver
*
*V0.01 2024/7/29 13:29:11 SimonHsiao
*
* Copyright(c) 2024 Tiobon Corporation. All Rights Reserved.
*
*  
* SimonHsiao
*
*/
namespace Tiobon.Core.Model.Models;
/// <summary>
/// Ghre_CourseSnap(Dto.View)
/// </summary>
public class Ghre_CourseSnapDto : Ghre_CourseSnap
{
/// <summary>
/// 创建信息
/// </summary>
public string CreateDataInfo { get; set; }
/// <summary>
/// 修改信息
/// </summary>
public string UpdateDataInfo { get; set; }
}

@ -13,6 +13,7 @@ using System.Data;
using Microsoft.AspNetCore.Http;
using Tiobon.Core.Common.UserManager;
using Tiobon.Core.Common.Helper;
using AgileObjects.AgileMapper;
namespace Tiobon.Core.Services;
@ -23,13 +24,16 @@ public class Ghre_CourseServices : BaseServices<Ghre_Course, Ghre_CourseDto, Ins
{
private readonly IBaseRepository<Ghre_Course> _dal;
private IGhre_CourseClassServices _ghre_CourseClassServices;
private IGhre_CourseSnapServices _ghre_CourseSnapServices;
public Ghre_CourseServices(IBaseRepository<Ghre_Course> dal,
ICaching caching,
IGhre_CourseClassServices ghre_CourseClassServices)
IGhre_CourseClassServices ghre_CourseClassServices,
IGhre_CourseSnapServices ghre_CourseSnapServices)
{
this._dal = dal;
base.BaseDal = dal;
_ghre_CourseClassServices = ghre_CourseClassServices;
_ghre_CourseSnapServices = ghre_CourseSnapServices;
base._caching = caching;
}
@ -283,10 +287,6 @@ public class Ghre_CourseServices : BaseServices<Ghre_Course, Ghre_CourseDto, Ins
if (examPaper != null)
return ServiceResult.OprateFailed($"课程【{entity.CourseName}({entity.CourseNo})】已与试卷【{examPaper.PaperName}({examPaper.PaperName})】关联,暂不可{(status == "Draft" ? "" : "")}");
//string sql = $"SELECT count(0) FROM Ghre_Exam WHERE CourseId='{id}' and IsEnable=1";
//if (await Db.Ado.GetIntAsync(sql) > 0)
// return ServiceResult.OprateFailed($"课程【{entity.CourseName}】已在考试中关联,不可{(status == "Disabled" ? "停用" : "取消发布")}!");
}
BasePoco ent = entity;
@ -297,6 +297,21 @@ public class Ghre_CourseServices : BaseServices<Ghre_Course, Ghre_CourseDto, Ins
entity.Status = status;
entities.Add(entity);
}
#region 生成课程快照
if (status == "Released")
{
var sql = $"UPDATE Ghre_CourseSnap SET IsEnable = 0 WHERE CourseId = '{id}' AND IsEnable = 1";
await Db.Ado.ExecuteCommandAsync(sql);
var entity1 = Mapper.Map(entity).ToANew<InsertGhre_CourseSnapInput>();
var courseClassIds = JsonConvert.DeserializeObject<List<long>>(entity1.CourseClassId);
var classs = await _ghre_CourseClassServices.Query(x => courseClassIds.Contains(x.Id));
entity1.CourseClass = string.Join("、", classs.Select(o => o.ClassName));
entity1.CourseClass1 = string.Join("、", classs.Select(o => o.ClassName + "(" + o.ClassNo + ")"));
entity1.CourseId = id;
await _ghre_CourseSnapServices.Add(entity1);
}
#endregion
}
var result = await BaseDal.Update(entities);

@ -0,0 +1,23 @@

using Tiobon.Core.IServices;
using Tiobon.Core.Model.Models;
using Tiobon.Core.Services.BASE;
using Tiobon.Core.IRepository.Base;
using Tiobon.Core.Common.Caches;
namespace Tiobon.Core.Services
{
/// <summary>
/// Ghre_CourseSnap (服务)
/// </summary>
public class Ghre_CourseSnapServices : BaseServices<Ghre_CourseSnap, Ghre_CourseSnapDto, InsertGhre_CourseSnapInput, EditGhre_CourseSnapInput>, IGhre_CourseSnapServices
{
private readonly IBaseRepository<Ghre_CourseSnap> _dal;
public Ghre_CourseSnapServices(ICaching caching, IBaseRepository<Ghre_CourseSnap> dal)
{
this._dal = dal;
base.BaseDal = dal;
base._caching = caching;
}
}
}

@ -1680,6 +1680,236 @@
预留字段12
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghre_CourseSnapBase">
<summary>
Ghre_CourseSnap (Dto.Base)
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseId">
<summary>
课程ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseNo">
<summary>
课程编号
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseName">
<summary>
课程名称
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseClassId">
<summary>
课程分类ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseClass">
<summary>
课程分类
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseSceneId">
<summary>
课程场景ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseScene">
<summary>
课程场景
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseWareId">
<summary>
课件ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.StandardHour">
<summary>
标准课时
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CreditPoints">
<summary>
学分
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.ManagerId">
<summary>
课程负责人
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.ManagerDeptId">
<summary>
课程负责人部门ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.InOrOut">
<summary>
内/外训
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.TeacherId">
<summary>
讲师ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.TeacherDeptId">
<summary>
讲师部门ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.SchoolId">
<summary>
培训机构ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.SchoolTeacherId">
<summary>
培训机构讲师ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Price">
<summary>
市场价格
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.ChargeMethod">
<summary>
收费方式,天数、时间、项目
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.IsOPen">
<summary>
是否公开课
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.ValidityPeriod">
<summary>
培训有效期(月)
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.ExamPaperId">
<summary>
试卷ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.FeedbackOrderId">
<summary>
反馈单ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CoverUrl">
<summary>
封面图
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.UseDefaultCoverImage">
<summary>
是否使用默认封面
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.DefaultCoverImageName">
<summary>
默认封面图Name
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Outline">
<summary>
课程大纲
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.BeforeReady">
<summary>
课前准备
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Status">
<summary>
状态
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.RemarkSz">
<summary>
备注
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.SortNo">
<summary>
排序
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.IsDefault">
<summary>
默认标志
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse1">
<summary>
预留字段1
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse2">
<summary>
预留字段2
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse3">
<summary>
预留字段3
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse4">
<summary>
预留字段4
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse5">
<summary>
预留字段5
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse6">
<summary>
预留字段6
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse7">
<summary>
预留字段7
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse8">
<summary>
预留字段8
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse9">
<summary>
预留字段9
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.Reverse10">
<summary>
预留字段10
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.ReverseI1">
<summary>
预留字段11
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.ReverseI2">
<summary>
预留字段12
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapBase.CourseClass1">
<summary>
CourseClass1
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghre_CourseWareBase">
<summary>
课件 (Dto.Base)
@ -4907,6 +5137,11 @@
课程场景 (Dto.EditInput)
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.EditGhre_CourseSnapInput">
<summary>
Ghre_CourseSnap (Dto.EditInput)
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.EditGhre_CourseWareInput">
<summary>
课件 (Dto.EditInput)
@ -5087,6 +5322,11 @@
课程场景 (Dto.InsertInput)
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.InsertGhre_CourseSnapInput">
<summary>
Ghre_CourseSnap (Dto.InsertInput)
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.InsertGhre_CourseWareInput">
<summary>
课件 (Dto.InsertInput)
@ -7071,6 +7311,236 @@
预留字段12
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghre_CourseSnap">
<summary>
Ghre_CourseSnap (Model)
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseId">
<summary>
课程ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseNo">
<summary>
课程编号
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseName">
<summary>
课程名称
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseClassId">
<summary>
课程分类ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseClass">
<summary>
课程分类
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseSceneId">
<summary>
课程场景ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseScene">
<summary>
课程场景
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseWareId">
<summary>
课件ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.StandardHour">
<summary>
标准课时
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CreditPoints">
<summary>
学分
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.ManagerId">
<summary>
课程负责人
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.ManagerDeptId">
<summary>
课程负责人部门ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.InOrOut">
<summary>
内/外训
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.TeacherId">
<summary>
讲师ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.TeacherDeptId">
<summary>
讲师部门ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.SchoolId">
<summary>
培训机构ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.SchoolTeacherId">
<summary>
培训机构讲师ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Price">
<summary>
市场价格
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.ChargeMethod">
<summary>
收费方式,天数、时间、项目
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.IsOPen">
<summary>
是否公开课
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.ValidityPeriod">
<summary>
培训有效期(月)
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.ExamPaperId">
<summary>
试卷ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.FeedbackOrderId">
<summary>
反馈单ID
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CoverUrl">
<summary>
封面图
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.UseDefaultCoverImage">
<summary>
是否使用默认封面
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.DefaultCoverImageName">
<summary>
默认封面图Name
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Outline">
<summary>
课程大纲
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.BeforeReady">
<summary>
课前准备
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Status">
<summary>
状态
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.RemarkSz">
<summary>
备注
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.SortNo">
<summary>
排序
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.IsDefault">
<summary>
默认标志
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse1">
<summary>
预留字段1
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse2">
<summary>
预留字段2
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse3">
<summary>
预留字段3
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse4">
<summary>
预留字段4
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse5">
<summary>
预留字段5
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse6">
<summary>
预留字段6
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse7">
<summary>
预留字段7
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse8">
<summary>
预留字段8
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse9">
<summary>
预留字段9
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.Reverse10">
<summary>
预留字段10
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.ReverseI1">
<summary>
预留字段11
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.ReverseI2">
<summary>
预留字段12
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnap.CourseClass1">
<summary>
CourseClass1
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghre_CourseWare">
<summary>
课件 (Model)
@ -11307,6 +11777,21 @@
修改信息
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghre_CourseSnapDto">
<summary>
Ghre_CourseSnap(Dto.View)
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapDto.CreateDataInfo">
<summary>
创建信息
</summary>
</member>
<member name="P:Tiobon.Core.Model.Models.Ghre_CourseSnapDto.UpdateDataInfo">
<summary>
修改信息
</summary>
</member>
<member name="T:Tiobon.Core.Model.Models.Ghre_CourseWareDto">
<summary>
课件(Dto.View)

@ -622,6 +622,11 @@
课程场景(Controller)
</summary>
</member>
<member name="T:Tiobon.Core.Api.Controllers.Ghre_CourseSnapController">
<summary>
Ghre_CourseSnap(Controller)
</summary>
</member>
<member name="T:Tiobon.Core.Api.Controllers.Ghre_CourseWareAttachmentController">
<summary>
课件附件(Controller)

Loading…
Cancel
Save