CompetitionAPI_dotnet/Competition.Mysql/DAL/pow_train_record.cs

469 lines
16 KiB
C#

/** 版本信息模板在安装目录下,可自行修改。
* pow_train_record.cs
*
* 功 能: N/A
* 类 名: pow_train_record
*
* Ver 变更日期 负责人 变更内容
* ───────────────────────────────────
* V0.01 2024/6/24 14:48:13 N/A 初版
*
* Copyright (c) 2012 Maticsoft Corporation. All rights reserved.
*┌──────────────────────────────────┐
*│ 此技术信息为本公司机密信息,未经本公司书面同意禁止向第三方披露. │
*│ 版权所有:动软卓越(北京)科技有限公司              │
*└──────────────────────────────────┘
*/
using System;
using System.Data;
using System.Text;
using MySql.Data.MySqlClient;
using Maticsoft.DBUtility;//Please add references
namespace Competition.Mysql.DAL
{
/// <summary>
/// 数据访问类:pow_train_record
/// </summary>
public partial class pow_train_record
{
public pow_train_record()
{}
#region BasicMethod
/// <summary>
/// 是否存在该记录
/// </summary>
public bool Exists(string RecordId)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("select count(1) from pow_train_record");
strSql.Append(" where RecordId=@RecordId ");
MySqlParameter[] parameters = {
new MySqlParameter("@RecordId", MySqlDbType.VarChar,32) };
parameters[0].Value = RecordId;
return DbHelperMySQL.Exists(strSql.ToString(),parameters);
}
/// <summary>
/// 增加一条数据
/// </summary>
public bool Add(Competition.Mysql.Model.pow_train_record model)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("insert into pow_train_record(");
strSql.Append("RecordId,ExamId,UserId,RealName,Schedule,TrainNumber,StudyTime,Comment,ReviewerId,Reviewer,ReviewerTime,CreateTime,R1,R2,R3)");
strSql.Append(" values (");
strSql.Append("@RecordId,@ExamId,@UserId,@RealName,@Schedule,@TrainNumber,@StudyTime,@Comment,@ReviewerId,@Reviewer,@ReviewerTime,@CreateTime,@R1,@R2,@R3)");
MySqlParameter[] parameters = {
new MySqlParameter("@RecordId", MySqlDbType.VarChar,32),
new MySqlParameter("@ExamId", MySqlDbType.VarChar,32),
new MySqlParameter("@UserId", MySqlDbType.VarChar,32),
new MySqlParameter("@RealName", MySqlDbType.VarChar,255),
new MySqlParameter("@Schedule", MySqlDbType.VarChar,255),
new MySqlParameter("@TrainNumber", MySqlDbType.Int32),
new MySqlParameter("@StudyTime", MySqlDbType.DateTime),
new MySqlParameter("@Comment", MySqlDbType.VarChar,2000),
new MySqlParameter("@ReviewerId", MySqlDbType.VarChar,255),
new MySqlParameter("@Reviewer", MySqlDbType.VarChar,255),
new MySqlParameter("@ReviewerTime", MySqlDbType.DateTime),
new MySqlParameter("@CreateTime", MySqlDbType.DateTime),
new MySqlParameter("@R1", MySqlDbType.VarChar,255),
new MySqlParameter("@R2", MySqlDbType.VarChar,255),
new MySqlParameter("@R3", MySqlDbType.VarChar,255)};
parameters[0].Value = model.RecordId;
parameters[1].Value = model.ExamId;
parameters[2].Value = model.UserId;
parameters[3].Value = model.RealName;
parameters[4].Value = model.Schedule;
parameters[5].Value = model.TrainNumber;
parameters[6].Value = model.StudyTime;
parameters[7].Value = model.Comment;
parameters[8].Value = model.ReviewerId;
parameters[9].Value = model.Reviewer;
parameters[10].Value = model.ReviewerTime;
parameters[11].Value = model.CreateTime;
parameters[12].Value = model.R1;
parameters[13].Value = model.R2;
parameters[14].Value = model.R3;
int rows=DbHelperMySQL.ExecuteSql(strSql.ToString(),parameters);
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 更新一条数据
/// </summary>
public bool Update(Competition.Mysql.Model.pow_train_record model)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("update pow_train_record set ");
strSql.Append("ExamId=@ExamId,");
strSql.Append("UserId=@UserId,");
strSql.Append("RealName=@RealName,");
strSql.Append("Schedule=@Schedule,");
strSql.Append("TrainNumber=@TrainNumber,");
strSql.Append("StudyTime=@StudyTime,");
strSql.Append("Comment=@Comment,");
strSql.Append("ReviewerId=@ReviewerId,");
strSql.Append("Reviewer=@Reviewer,");
strSql.Append("ReviewerTime=@ReviewerTime,");
strSql.Append("CreateTime=@CreateTime,");
strSql.Append("R1=@R1,");
strSql.Append("R2=@R2,");
strSql.Append("R3=@R3");
strSql.Append(" where RecordId=@RecordId ");
MySqlParameter[] parameters = {
new MySqlParameter("@ExamId", MySqlDbType.VarChar,32),
new MySqlParameter("@UserId", MySqlDbType.VarChar,32),
new MySqlParameter("@RealName", MySqlDbType.VarChar,255),
new MySqlParameter("@Schedule", MySqlDbType.VarChar,255),
new MySqlParameter("@TrainNumber", MySqlDbType.Int32),
new MySqlParameter("@StudyTime", MySqlDbType.DateTime),
new MySqlParameter("@Comment", MySqlDbType.VarChar,2000),
new MySqlParameter("@ReviewerId", MySqlDbType.VarChar,255),
new MySqlParameter("@Reviewer", MySqlDbType.VarChar,255),
new MySqlParameter("@ReviewerTime", MySqlDbType.DateTime),
new MySqlParameter("@CreateTime", MySqlDbType.DateTime),
new MySqlParameter("@R1", MySqlDbType.VarChar,255),
new MySqlParameter("@R2", MySqlDbType.VarChar,255),
new MySqlParameter("@R3", MySqlDbType.VarChar,255),
new MySqlParameter("@RecordId", MySqlDbType.VarChar,32)};
parameters[0].Value = model.ExamId;
parameters[1].Value = model.UserId;
parameters[2].Value = model.RealName;
parameters[3].Value = model.Schedule;
parameters[4].Value = model.TrainNumber;
parameters[5].Value = model.StudyTime;
parameters[6].Value = model.Comment;
parameters[7].Value = model.ReviewerId;
parameters[8].Value = model.Reviewer;
parameters[9].Value = model.ReviewerTime;
parameters[10].Value = model.CreateTime;
parameters[11].Value = model.R1;
parameters[12].Value = model.R2;
parameters[13].Value = model.R3;
parameters[14].Value = model.RecordId;
int rows=DbHelperMySQL.ExecuteSql(strSql.ToString(),parameters);
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 删除一条数据
/// </summary>
public bool Delete(string RecordId)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("delete from pow_train_record ");
strSql.Append(" where RecordId=@RecordId ");
MySqlParameter[] parameters = {
new MySqlParameter("@RecordId", MySqlDbType.VarChar,32) };
parameters[0].Value = RecordId;
int rows=DbHelperMySQL.ExecuteSql(strSql.ToString(),parameters);
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 批量删除数据
/// </summary>
public bool DeleteList(string RecordIdlist )
{
StringBuilder strSql=new StringBuilder();
strSql.Append("delete from pow_train_record ");
strSql.Append(" where RecordId in ("+RecordIdlist + ") ");
int rows=DbHelperMySQL.ExecuteSql(strSql.ToString());
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 得到一个对象实体
/// </summary>
public Competition.Mysql.Model.pow_train_record GetModel(string RecordId)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("select RecordId,ExamId,UserId,RealName,Schedule,TrainNumber,StudyTime,Comment,ReviewerId,Reviewer,ReviewerTime,CreateTime,R1,R2,R3 from pow_train_record ");
strSql.Append(" where RecordId=@RecordId ");
MySqlParameter[] parameters = {
new MySqlParameter("@RecordId", MySqlDbType.VarChar,32) };
parameters[0].Value = RecordId;
Competition.Mysql.Model.pow_train_record model=new Competition.Mysql.Model.pow_train_record();
DataSet ds=DbHelperMySQL.Query(strSql.ToString(),parameters);
if(ds.Tables[0].Rows.Count>0)
{
return DataRowToModel(ds.Tables[0].Rows[0]);
}
else
{
return null;
}
}
/// <summary>
/// 得到一个对象实体
/// </summary>
public Competition.Mysql.Model.pow_train_record DataRowToModel(DataRow row)
{
Competition.Mysql.Model.pow_train_record model=new Competition.Mysql.Model.pow_train_record();
if (row != null)
{
if(row["RecordId"]!=null)
{
model.RecordId=row["RecordId"].ToString();
}
if(row["ExamId"]!=null)
{
model.ExamId=row["ExamId"].ToString();
}
if(row["UserId"]!=null)
{
model.UserId=row["UserId"].ToString();
}
if(row["RealName"]!=null)
{
model.RealName=row["RealName"].ToString();
}
if(row["Schedule"]!=null)
{
model.Schedule=row["Schedule"].ToString();
}
if(row["TrainNumber"]!=null && row["TrainNumber"].ToString()!="")
{
model.TrainNumber=int.Parse(row["TrainNumber"].ToString());
}
if(row["StudyTime"]!=null && row["StudyTime"].ToString()!="")
{
model.StudyTime=DateTime.Parse(row["StudyTime"].ToString());
}
if(row["Comment"]!=null)
{
model.Comment=row["Comment"].ToString();
}
if(row["ReviewerId"]!=null)
{
model.ReviewerId=row["ReviewerId"].ToString();
}
if(row["Reviewer"]!=null)
{
model.Reviewer=row["Reviewer"].ToString();
}
if(row["ReviewerTime"]!=null && row["ReviewerTime"].ToString()!="")
{
model.ReviewerTime=DateTime.Parse(row["ReviewerTime"].ToString());
}
if(row["CreateTime"]!=null && row["CreateTime"].ToString()!="")
{
model.CreateTime=DateTime.Parse(row["CreateTime"].ToString());
}
if(row["R1"]!=null)
{
model.R1=row["R1"].ToString();
}
if(row["R2"]!=null)
{
model.R2=row["R2"].ToString();
}
if(row["R3"]!=null)
{
model.R3=row["R3"].ToString();
}
}
return model;
}
/// <summary>
/// 获得数据列表
/// </summary>
public DataSet GetList(string strWhere)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("select RecordId,ExamId,UserId,RealName,Schedule,TrainNumber,StudyTime,Comment,ReviewerId,Reviewer,ReviewerTime,CreateTime,R1,R2,R3 ");
strSql.Append(" FROM pow_train_record ");
if(strWhere.Trim()!="")
{
strSql.Append(" where "+strWhere);
}
return DbHelperMySQL.Query(strSql.ToString());
}
/// <summary>
/// 获取记录总数
/// </summary>
public int GetRecordCount(string strWhere)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("select count(1) FROM pow_train_record ");
if(strWhere.Trim()!="")
{
strSql.Append(" where "+strWhere);
}
object obj = DbHelperMySQL.GetSingle(strSql.ToString());
if (obj == null)
{
return 0;
}
else
{
return Convert.ToInt32(obj);
}
}
/// <summary>
/// 分页获取数据列表
/// </summary>
public DataSet GetListByPage(string strWhere, string orderby, int startIndex, int endIndex)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("SELECT * FROM ( ");
strSql.Append(" SELECT ROW_NUMBER() OVER (");
if (!string.IsNullOrEmpty(orderby.Trim()))
{
strSql.Append("order by T." + orderby );
}
else
{
strSql.Append("order by T.RecordId desc");
}
strSql.Append(")AS Row, T.* from pow_train_record T ");
if (!string.IsNullOrEmpty(strWhere.Trim()))
{
strSql.Append(" WHERE " + strWhere);
}
strSql.Append(" ) TT");
strSql.AppendFormat(" WHERE TT.Row between {0} and {1}", startIndex, endIndex);
return DbHelperMySQL.Query(strSql.ToString());
}
/*
/// <summary>
/// 分页获取数据列表
/// </summary>
public DataSet GetList(int PageSize,int PageIndex,string strWhere)
{
MySqlParameter[] parameters = {
new MySqlParameter("@tblName", MySqlDbType.VarChar, 255),
new MySqlParameter("@fldName", MySqlDbType.VarChar, 255),
new MySqlParameter("@PageSize", MySqlDbType.Int32),
new MySqlParameter("@PageIndex", MySqlDbType.Int32),
new MySqlParameter("@IsReCount", MySqlDbType.Bit),
new MySqlParameter("@OrderType", MySqlDbType.Bit),
new MySqlParameter("@strWhere", MySqlDbType.VarChar,1000),
};
parameters[0].Value = "pow_train_record";
parameters[1].Value = "RecordId";
parameters[2].Value = PageSize;
parameters[3].Value = PageIndex;
parameters[4].Value = 0;
parameters[5].Value = 0;
parameters[6].Value = strWhere;
return DbHelperMySQL.RunProcedure("UP_GetRecordByPage",parameters,"ds");
}*/
#endregion BasicMethod
#region ExtensionMethod
/// <summary>
/// 获取记录总数
/// </summary>
public int GetUserRecordCount(string strWhere, string ExamId)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select count(1) FROM admin_user T1 left join (select * from pow_train_record where ExamId='" + ExamId + "') T2 on T2.UserId=T1.user_id ");
if (strWhere.Trim() != "")
{
strSql.Append(" where " + strWhere);
}
object obj = DbHelperMySQL.GetSingle(strSql.ToString());
if (obj == null)
{
return 0;
}
else
{
return Convert.ToInt32(obj);
}
}
/// <summary>
/// 获得数据列表
/// </summary>
public DataSet GetUserList(string strWhere, string ExamId)
{
StringBuilder strSql = new StringBuilder();
strSql.Append("select T1.user_id as UserId,T1.real_name as RealName,T2.RecordId,T2.ExamId,IFNULL(T2.`Schedule`, 0) as `Schedule`,IFNULL(T2.`TrainNumber`, 0) as TrainNumber,T2.StudyTime,T2.`Comment`,T2.ReviewerId,T2.Reviewer,T2.ReviewerTime,T2.CreateTime,T2.R1,T2.R2,T2.R3 from admin_user T1 left join (select * from pow_train_record where ExamId='" + ExamId + "') T2 on T2.UserId=T1.user_id");
if (strWhere.Trim() != "")
{
strSql.Append(" where " + strWhere);
}
return DbHelperMySQL.Query(strSql.ToString());
}
/// <summary>
/// 获得数据列表
/// </summary>
public DataSet GetStudyList()
{
StringBuilder strSql = new StringBuilder();
strSql.Append("SELECT ps.ExamId, ps.ExamName, SUM(CASE WHEN pr.Schedule = '100' THEN 1 ELSE 0 END) AS LearnedStudents FROM pow_exam ps LEFT JOIN pow_train_record pr ON ps.ExamId = pr.ExamId WHERE ps.`Status` = '已发布' and ps.Type='实训' GROUP BY ps.ExamId, ps.ExamName ORDER BY ps.CreateTime desc ");
return DbHelperMySQL.Query(strSql.ToString());
}
/// <summary>
/// 得到一个对象实体
/// </summary>
public Competition.Mysql.Other.train_statistics DataRowToTrainModel(DataRow row)
{
Competition.Mysql.Other.train_statistics model = new Competition.Mysql.Other.train_statistics();
if (row != null)
{
if (row["ExamId"] != null)
{
model.TrainId = row["ExamId"].ToString();
}
if (row["ExamName"] != null)
{
model.TrainName = row["ExamName"].ToString();
}
if (row["LearnedStudents"] != null && row["LearnedStudents"].ToString() != "")
{
model.LearnedStudents = int.Parse(row["LearnedStudents"].ToString());
}
}
return model;
}
#endregion ExtensionMethod
}
}