/** 版本信息模板在安装目录下,可自行修改。 * pow_study_record.cs * * 功 能: N/A * 类 名: pow_study_record * * Ver 变更日期 负责人 变更内容 * ─────────────────────────────────── * V0.01 2024/5/16 16:16:35 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 { /// /// 数据访问类:pow_study_record /// public partial class pow_study_record { public pow_study_record() { } #region BasicMethod /// /// 是否存在该记录 /// public bool Exists(string RecordId) { StringBuilder strSql = new StringBuilder(); strSql.Append("select count(1) from pow_study_record"); strSql.Append(" where RecordId=@RecordId "); MySqlParameter[] parameters = { new MySqlParameter("@RecordId", MySqlDbType.VarChar,32) }; parameters[0].Value = RecordId; return DbHelperMySQL.Exists(strSql.ToString(), parameters); } /// /// 增加一条数据 /// public bool Add(Competition.Mysql.Model.pow_study_record model) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into pow_study_record("); strSql.Append("RecordId,StudyId,UserId,RealName,Schedule,StudyTime,Comment,ReviewerId,Reviewer,ReviewerTime,CreateTime,R1,R2,R3)"); strSql.Append(" values ("); strSql.Append("@RecordId,@StudyId,@UserId,@RealName,@Schedule,@StudyTime,@Comment,@ReviewerId,@Reviewer,@ReviewerTime,@CreateTime,@R1,@R2,@R3)"); MySqlParameter[] parameters = { new MySqlParameter("@RecordId", MySqlDbType.VarChar,32), new MySqlParameter("@StudyId", MySqlDbType.VarChar,32), new MySqlParameter("@UserId", MySqlDbType.VarChar,32), new MySqlParameter("@RealName", MySqlDbType.VarChar,255), new MySqlParameter("@Schedule", MySqlDbType.VarChar,255), 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.StudyId; parameters[2].Value = model.UserId; parameters[3].Value = model.RealName; parameters[4].Value = model.Schedule; 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; int rows = DbHelperMySQL.ExecuteSql(strSql.ToString(), parameters); if (rows > 0) { return true; } else { return false; } } /// /// 更新一条数据 /// public bool Update(Competition.Mysql.Model.pow_study_record model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update pow_study_record set "); strSql.Append("StudyId=@StudyId,"); strSql.Append("UserId=@UserId,"); strSql.Append("RealName=@RealName,"); strSql.Append("Schedule=@Schedule,"); 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("@StudyId", MySqlDbType.VarChar,32), new MySqlParameter("@UserId", MySqlDbType.VarChar,32), new MySqlParameter("@RealName", MySqlDbType.VarChar,255), new MySqlParameter("@Schedule", MySqlDbType.VarChar,255), 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.StudyId; parameters[1].Value = model.UserId; parameters[2].Value = model.RealName; parameters[3].Value = model.Schedule; parameters[4].Value = model.StudyTime; parameters[5].Value = model.Comment; parameters[6].Value = model.ReviewerId; parameters[7].Value = model.Reviewer; parameters[8].Value = model.ReviewerTime; parameters[9].Value = model.CreateTime; parameters[10].Value = model.R1; parameters[11].Value = model.R2; parameters[12].Value = model.R3; parameters[13].Value = model.RecordId; int rows = DbHelperMySQL.ExecuteSql(strSql.ToString(), parameters); if (rows > 0) { return true; } else { return false; } } /// /// 删除一条数据 /// public bool Delete(string RecordId) { StringBuilder strSql = new StringBuilder(); strSql.Append("delete from pow_study_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; } } /// /// 批量删除数据 /// public bool DeleteList(string RecordIdlist) { StringBuilder strSql = new StringBuilder(); strSql.Append("delete from pow_study_record "); strSql.Append(" where RecordId in (" + RecordIdlist + ") "); int rows = DbHelperMySQL.ExecuteSql(strSql.ToString()); if (rows > 0) { return true; } else { return false; } } /// /// 得到一个对象实体 /// public Competition.Mysql.Model.pow_study_record GetModel(string RecordId) { StringBuilder strSql = new StringBuilder(); strSql.Append("select RecordId,StudyId,UserId,RealName,Schedule,StudyTime,Comment,ReviewerId,Reviewer,ReviewerTime,CreateTime,R1,R2,R3 from pow_study_record "); strSql.Append(" where RecordId=@RecordId "); MySqlParameter[] parameters = { new MySqlParameter("@RecordId", MySqlDbType.VarChar,32) }; parameters[0].Value = RecordId; Competition.Mysql.Model.pow_study_record model = new Competition.Mysql.Model.pow_study_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; } } /// /// 得到一个对象实体 /// public Competition.Mysql.Model.pow_study_record DataRowToModel(DataRow row) { Competition.Mysql.Model.pow_study_record model = new Competition.Mysql.Model.pow_study_record(); if (row != null) { if (row["RecordId"] != null) { model.RecordId = row["RecordId"].ToString(); } if (row["StudyId"] != null) { model.StudyId = row["StudyId"].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["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; } /// /// 获得数据列表 /// public DataSet GetList(string strWhere) { StringBuilder strSql = new StringBuilder(); strSql.Append("select RecordId,StudyId,UserId,RealName,Schedule,StudyTime,Comment,ReviewerId,Reviewer,ReviewerTime,CreateTime,R1,R2,R3 "); strSql.Append(" FROM pow_study_record "); if (strWhere.Trim() != "") { strSql.Append(" where " + strWhere); } return DbHelperMySQL.Query(strSql.ToString()); } /// /// 获取记录总数 /// public int GetRecordCount(string strWhere) { StringBuilder strSql = new StringBuilder(); strSql.Append("select count(1) FROM pow_study_record "); if (strWhere.Trim() != "") { strSql.Append(" where " + strWhere); } object obj = DbHelperMySQL.GetSingle(strSql.ToString()); if (obj == null) { return 0; } else { return Convert.ToInt32(obj); } } /// /// 分页获取数据列表 /// 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_study_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()); } /* /// /// 分页获取数据列表 /// 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_study_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 /// /// 获取记录总数 /// public int GetUserRecordCount(string strWhere, string StudyId) { StringBuilder strSql = new StringBuilder(); strSql.Append("select count(1) FROM admin_user T1 left join (select * from pow_study_record where StudyId='" + StudyId + "') 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); } } /// /// 获得数据列表 /// public DataSet GetUserList(string strWhere, string StudyId) { StringBuilder strSql = new StringBuilder(); strSql.Append("select T1.user_id as UserId,T1.real_name as RealName,T2.RecordId,T2.StudyId,IFNULL(T2.`Schedule`, 0) as `Schedule`,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_study_record where StudyId='" + StudyId + "') T2 on T2.UserId=T1.user_id"); if (strWhere.Trim() != "") { strSql.Append(" where " + strWhere); } return DbHelperMySQL.Query(strSql.ToString()); } /// /// 使用事务批量操作新增 /// /// public int OperationEditOrAddData(string StudyId, string UserId, int Schedule, DateTime StudyTime, Competition.Mysql.Model.pow_study_file_record model) { List com = new List(); if (!string.IsNullOrEmpty(StudyId)) { StringBuilder strSql = new StringBuilder(); strSql.Append("update pow_study_record set "); strSql.Append("Schedule=@Schedule,"); strSql.Append("StudyTime=@StudyTime"); strSql.Append(" where StudyId=@StudyId and UserId=@UserId "); MySqlParameter[] parameters = { new MySqlParameter("@Schedule", MySqlDbType.VarChar,255), new MySqlParameter("@StudyTime", MySqlDbType.DateTime), new MySqlParameter("@StudyId", MySqlDbType.VarChar,32), new MySqlParameter("@UserId", MySqlDbType.VarChar,32)}; parameters[0].Value = Schedule; parameters[1].Value = StudyTime; parameters[2].Value = StudyId; parameters[3].Value = UserId; com.Add(new CommandInfo(strSql.ToString(), parameters)); } if (model != null) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into pow_study_file_record("); strSql.Append("FileRecordId,StudyId,FileId,UserId,CreateTime,R1,R2,R3)"); strSql.Append(" values ("); strSql.Append("@FileRecordId,@StudyId,@FileId,@UserId,@CreateTime,@R1,@R2,@R3)"); MySqlParameter[] parameters = { new MySqlParameter("@FileRecordId", MySqlDbType.VarChar,32), new MySqlParameter("@StudyId", MySqlDbType.VarChar,32), new MySqlParameter("@FileId", MySqlDbType.VarChar,32), new MySqlParameter("@UserId", MySqlDbType.VarChar,32), 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.FileRecordId; parameters[1].Value = model.StudyId; parameters[2].Value = model.FileId; parameters[3].Value = model.UserId; parameters[4].Value = model.CreateTime; parameters[5].Value = model.R1; parameters[6].Value = model.R2; parameters[7].Value = model.R3; com.Add(new CommandInfo(strSql.ToString(), parameters)); } return DbHelperMySQL.ExecuteSqlTran(com); } /// /// 使用事务批量操作新增 /// /// public int OperationAddData(Competition.Mysql.Model.pow_study_record record, Competition.Mysql.Model.pow_study_file_record model) { List com = new List(); if (record != null) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into pow_study_record("); strSql.Append("RecordId,StudyId,UserId,RealName,Schedule,StudyTime,Comment,ReviewerId,Reviewer,ReviewerTime,CreateTime,R1,R2,R3)"); strSql.Append(" values ("); strSql.Append("@RecordId,@StudyId,@UserId,@RealName,@Schedule,@StudyTime,@Comment,@ReviewerId,@Reviewer,@ReviewerTime,@CreateTime,@R1,@R2,@R3)"); MySqlParameter[] parameters = { new MySqlParameter("@RecordId", MySqlDbType.VarChar,32), new MySqlParameter("@StudyId", MySqlDbType.VarChar,32), new MySqlParameter("@UserId", MySqlDbType.VarChar,32), new MySqlParameter("@RealName", MySqlDbType.VarChar,255), new MySqlParameter("@Schedule", MySqlDbType.VarChar,255), 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 = record.RecordId; parameters[1].Value = record.StudyId; parameters[2].Value = record.UserId; parameters[3].Value = record.RealName; parameters[4].Value = record.Schedule; parameters[5].Value = record.StudyTime; parameters[6].Value = record.Comment; parameters[7].Value = record.ReviewerId; parameters[8].Value = record.Reviewer; parameters[9].Value = record.ReviewerTime; parameters[10].Value = record.CreateTime; parameters[11].Value = record.R1; parameters[12].Value = record.R2; parameters[13].Value = record.R3; com.Add(new CommandInfo(strSql.ToString(), parameters)); } if (model != null) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into pow_study_file_record("); strSql.Append("FileRecordId,StudyId,FileId,UserId,CreateTime,R1,R2,R3)"); strSql.Append(" values ("); strSql.Append("@FileRecordId,@StudyId,@FileId,@UserId,@CreateTime,@R1,@R2,@R3)"); MySqlParameter[] parameters = { new MySqlParameter("@FileRecordId", MySqlDbType.VarChar,32), new MySqlParameter("@StudyId", MySqlDbType.VarChar,32), new MySqlParameter("@FileId", MySqlDbType.VarChar,32), new MySqlParameter("@UserId", MySqlDbType.VarChar,32), 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.FileRecordId; parameters[1].Value = model.StudyId; parameters[2].Value = model.FileId; parameters[3].Value = model.UserId; parameters[4].Value = model.CreateTime; parameters[5].Value = model.R1; parameters[6].Value = model.R2; parameters[7].Value = model.R3; com.Add(new CommandInfo(strSql.ToString(), parameters)); } return DbHelperMySQL.ExecuteSqlTran(com); } /// /// 获得数据列表 /// public DataSet GetStudyList() { StringBuilder strSql = new StringBuilder(); strSql.Append("SELECT ps.StudyId, ps.StudyName, SUM(CASE WHEN pr.Schedule = '100' THEN 1 ELSE 0 END) AS LearnedStudents FROM pow_study ps LEFT JOIN pow_study_record pr ON ps.StudyId = pr.StudyId WHERE ps.`Status` = '已发布' GROUP BY ps.StudyId, ps.StudyName ORDER BY ps.CreateTime desc "); return DbHelperMySQL.Query(strSql.ToString()); } /// /// 得到一个对象实体 /// public Competition.Mysql.Other.study_statistics DataRowToStudyModel(DataRow row) { Competition.Mysql.Other.study_statistics model = new Competition.Mysql.Other.study_statistics(); if (row != null) { if (row["StudyId"] != null) { model.StudyId = row["StudyId"].ToString(); } if (row["StudyName"] != null) { model.StudyName = row["StudyName"].ToString(); } if (row["LearnedStudents"] != null && row["LearnedStudents"].ToString() != "") { model.LearnedStudents = int.Parse(row["LearnedStudents"].ToString()); } } return model; } #endregion ExtensionMethod } }