512 lines
16 KiB
C#
512 lines
16 KiB
C#
/** 版本信息模板在安装目录下,可自行修改。
|
|
* pro_exam_batch.cs
|
|
*
|
|
* 功 能: N/A
|
|
* 类 名: pro_exam_batch
|
|
*
|
|
* Ver 变更日期 负责人 变更内容
|
|
* ───────────────────────────────────
|
|
* V0.01 2021/5/24 13:55:08 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
|
|
using System.Collections.Generic;
|
|
|
|
namespace DataService.DAL
|
|
{
|
|
/// <summary>
|
|
/// 数据访问类:pro_exam_batch
|
|
/// </summary>
|
|
public partial class pro_exam_batch
|
|
{
|
|
public pro_exam_batch()
|
|
{}
|
|
#region BasicMethod
|
|
|
|
/// <summary>
|
|
/// 是否存在该记录
|
|
/// </summary>
|
|
public bool Exists(string batch_id)
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
strSql.Append("select count(1) from pro_exam_batch");
|
|
strSql.Append(" where batch_id=@batch_id ");
|
|
MySqlParameter[] parameters = {
|
|
new MySqlParameter("@batch_id", MySqlDbType.VarChar,255) };
|
|
parameters[0].Value = batch_id;
|
|
|
|
return DbHelperMySQL.Exists(strSql.ToString(), parameters);
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// 增加一条数据
|
|
/// </summary>
|
|
public bool Add(DataService.Model.pro_exam_batch model)
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
strSql.Append("insert into pro_exam_batch(");
|
|
strSql.Append("batch_id,batch_name,school_id,grade,exam_id,major,sjms,state,ks_minute,start_time,end_time,create_time,r1,r2,r3)");
|
|
strSql.Append(" values (");
|
|
strSql.Append("@batch_id,@batch_name,@school_id,@grade,@exam_id,@major,@sjms,@state,@ks_minute,@start_time,@end_time,@create_time,@r1,@r2,@r3)");
|
|
MySqlParameter[] parameters = {
|
|
new MySqlParameter("@batch_id", MySqlDbType.VarChar,255),
|
|
new MySqlParameter("@batch_name", MySqlDbType.VarChar,255),
|
|
new MySqlParameter("@school_id", MySqlDbType.VarChar,50),
|
|
new MySqlParameter("@grade", MySqlDbType.VarChar,255),
|
|
new MySqlParameter("@exam_id", MySqlDbType.VarChar,50),
|
|
new MySqlParameter("@major", MySqlDbType.VarChar,255),
|
|
new MySqlParameter("@sjms", MySqlDbType.VarChar,255),
|
|
new MySqlParameter("@state", MySqlDbType.Int32),
|
|
new MySqlParameter("@ks_minute", MySqlDbType.Int32),
|
|
new MySqlParameter("@start_time", MySqlDbType.DateTime),
|
|
new MySqlParameter("@end_time", MySqlDbType.DateTime),
|
|
new MySqlParameter("@create_time", MySqlDbType.DateTime),
|
|
new MySqlParameter("@r1", MySqlDbType.VarChar,255),
|
|
new MySqlParameter("@r2", MySqlDbType.VarChar,255),
|
|
new MySqlParameter("@r3", MySqlDbType.VarChar,255)};
|
|
parameters[0].Value = model.batch_id;
|
|
parameters[1].Value = model.batch_name;
|
|
parameters[2].Value = model.school_id;
|
|
parameters[3].Value = model.grade;
|
|
parameters[4].Value = model.exam_id;
|
|
parameters[5].Value = model.major;
|
|
parameters[6].Value = model.sjms;
|
|
parameters[7].Value = model.state;
|
|
parameters[8].Value = model.ks_minute;
|
|
parameters[9].Value = model.start_time;
|
|
parameters[10].Value = model.end_time;
|
|
parameters[11].Value = model.create_time;
|
|
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(DataService.Model.pro_exam_batch model)
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
strSql.Append("update pro_exam_batch set ");
|
|
strSql.Append("batch_name=@batch_name,");
|
|
strSql.Append("school_id=@school_id,");
|
|
strSql.Append("grade=@grade,");
|
|
strSql.Append("exam_id=@exam_id,");
|
|
strSql.Append("major=@major,");
|
|
strSql.Append("sjms=@sjms,");
|
|
strSql.Append("state=@state,");
|
|
strSql.Append("ks_minute=@ks_minute,");
|
|
strSql.Append("start_time=@start_time,");
|
|
strSql.Append("end_time=@end_time,");
|
|
strSql.Append("create_time=@create_time,");
|
|
strSql.Append("r1=@r1,");
|
|
strSql.Append("r2=@r2,");
|
|
strSql.Append("r3=@r3");
|
|
strSql.Append(" where batch_id=@batch_id ");
|
|
MySqlParameter[] parameters = {
|
|
new MySqlParameter("@batch_name", MySqlDbType.VarChar,255),
|
|
new MySqlParameter("@school_id", MySqlDbType.VarChar,50),
|
|
new MySqlParameter("@grade", MySqlDbType.VarChar,255),
|
|
new MySqlParameter("@exam_id", MySqlDbType.VarChar,50),
|
|
new MySqlParameter("@major", MySqlDbType.VarChar,255),
|
|
new MySqlParameter("@sjms", MySqlDbType.VarChar,255),
|
|
new MySqlParameter("@state", MySqlDbType.Int32),
|
|
new MySqlParameter("@ks_minute", MySqlDbType.Int32),
|
|
new MySqlParameter("@start_time", MySqlDbType.DateTime),
|
|
new MySqlParameter("@end_time", MySqlDbType.DateTime),
|
|
new MySqlParameter("@create_time", MySqlDbType.DateTime),
|
|
new MySqlParameter("@r1", MySqlDbType.VarChar,255),
|
|
new MySqlParameter("@r2", MySqlDbType.VarChar,255),
|
|
new MySqlParameter("@r3", MySqlDbType.VarChar,255),
|
|
new MySqlParameter("@batch_id", MySqlDbType.VarChar,255)};
|
|
parameters[0].Value = model.batch_name;
|
|
parameters[1].Value = model.school_id;
|
|
parameters[2].Value = model.grade;
|
|
parameters[3].Value = model.exam_id;
|
|
parameters[4].Value = model.major;
|
|
parameters[5].Value = model.sjms;
|
|
parameters[6].Value = model.state;
|
|
parameters[7].Value = model.ks_minute;
|
|
parameters[8].Value = model.start_time;
|
|
parameters[9].Value = model.end_time;
|
|
parameters[10].Value = model.create_time;
|
|
parameters[11].Value = model.r1;
|
|
parameters[12].Value = model.r2;
|
|
parameters[13].Value = model.r3;
|
|
parameters[14].Value = model.batch_id;
|
|
|
|
int rows = DbHelperMySQL.ExecuteSql(strSql.ToString(), parameters);
|
|
if (rows > 0)
|
|
{
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
return false;
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 删除一条数据
|
|
/// </summary>
|
|
public bool Delete(string batch_id)
|
|
{
|
|
|
|
StringBuilder strSql = new StringBuilder();
|
|
strSql.Append("delete from pro_exam_batch ");
|
|
strSql.Append(" where batch_id=@batch_id ");
|
|
MySqlParameter[] parameters = {
|
|
new MySqlParameter("@batch_id", MySqlDbType.VarChar,255) };
|
|
parameters[0].Value = batch_id;
|
|
|
|
int rows = DbHelperMySQL.ExecuteSql(strSql.ToString(), parameters);
|
|
if (rows > 0)
|
|
{
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
return false;
|
|
}
|
|
}
|
|
/// <summary>
|
|
/// 批量删除数据
|
|
/// </summary>
|
|
public bool DeleteList(string batch_idlist)
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
strSql.Append("delete from pro_exam_batch ");
|
|
strSql.Append(" where batch_id in (" + batch_idlist + ") ");
|
|
int rows = DbHelperMySQL.ExecuteSql(strSql.ToString());
|
|
if (rows > 0)
|
|
{
|
|
return true;
|
|
}
|
|
else
|
|
{
|
|
return false;
|
|
}
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// 得到一个对象实体
|
|
/// </summary>
|
|
public DataService.Model.pro_exam_batch GetModel(string batch_id)
|
|
{
|
|
|
|
StringBuilder strSql = new StringBuilder();
|
|
strSql.Append("select batch_id,batch_name,school_id,grade,exam_id,major,sjms,state,ks_minute,start_time,end_time,create_time,r1,r2,r3 from pro_exam_batch ");
|
|
strSql.Append(" where batch_id=@batch_id ");
|
|
MySqlParameter[] parameters = {
|
|
new MySqlParameter("@batch_id", MySqlDbType.VarChar,255) };
|
|
parameters[0].Value = batch_id;
|
|
|
|
DataService.Model.pro_exam_batch model = new DataService.Model.pro_exam_batch();
|
|
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 DataService.Model.pro_exam_batch DataRowToModel(DataRow row)
|
|
{
|
|
DataService.Model.pro_exam_batch model = new DataService.Model.pro_exam_batch();
|
|
if (row != null)
|
|
{
|
|
if (row["batch_id"] != null)
|
|
{
|
|
model.batch_id = row["batch_id"].ToString();
|
|
}
|
|
if (row["batch_name"] != null)
|
|
{
|
|
model.batch_name = row["batch_name"].ToString();
|
|
}
|
|
if (row["school_id"] != null)
|
|
{
|
|
model.school_id = row["school_id"].ToString();
|
|
}
|
|
if (row["grade"] != null)
|
|
{
|
|
model.grade = row["grade"].ToString();
|
|
}
|
|
if (row["exam_id"] != null)
|
|
{
|
|
model.exam_id = row["exam_id"].ToString();
|
|
}
|
|
if (row["major"] != null)
|
|
{
|
|
model.major = row["major"].ToString();
|
|
}
|
|
if (row["sjms"] != null)
|
|
{
|
|
model.sjms = row["sjms"].ToString();
|
|
}
|
|
if (row["state"] != null && row["state"].ToString() != "")
|
|
{
|
|
model.state = int.Parse(row["state"].ToString());
|
|
}
|
|
if (row["ks_minute"] != null && row["ks_minute"].ToString() != "")
|
|
{
|
|
model.ks_minute = int.Parse(row["ks_minute"].ToString());
|
|
}
|
|
if (row["start_time"] != null && row["start_time"].ToString() != "")
|
|
{
|
|
model.start_time = DateTime.Parse(row["start_time"].ToString());
|
|
}
|
|
if (row["end_time"] != null && row["end_time"].ToString() != "")
|
|
{
|
|
model.end_time = DateTime.Parse(row["end_time"].ToString());
|
|
}
|
|
if (row["create_time"] != null && row["create_time"].ToString() != "")
|
|
{
|
|
model.create_time = DateTime.Parse(row["create_time"].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 batch_id,batch_name,school_id,grade,exam_id,major,sjms,state,ks_minute,start_time,end_time,create_time,r1,r2,r3 ");
|
|
strSql.Append(" FROM pro_exam_batch ");
|
|
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 pro_exam_batch ");
|
|
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.batch_id desc");
|
|
}
|
|
strSql.Append(")AS Row, T.* from pro_exam_batch 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 = "pro_exam_batch";
|
|
parameters[1].Value = "batch_id";
|
|
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>
|
|
/// 获取新记录id
|
|
/// </summary>
|
|
public string GetNewId()
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
strSql.Append(" select max(batch_id) FROM pro_exam_batch ");
|
|
object obj = DbHelperMySQL.GetSingle(strSql.ToString());
|
|
if (obj == null)
|
|
{
|
|
return "10001";
|
|
}
|
|
else
|
|
{
|
|
var v = int.Parse(obj.ToString()) + 1;
|
|
return v.ToString();
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 将其它考试批次的状态停用
|
|
/// </summary>
|
|
/// <param name="batch_id">启用的状态批次</param>
|
|
public int UpdateState(string batch_id)
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
strSql.Append(" update pro_exam_batch set state=0 where batch_id !='"+ batch_id + "'");
|
|
var ret = DbHelperMySQL.ExecuteSql(strSql.ToString());
|
|
return ret;
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
/// 查询考场
|
|
/// </summary>
|
|
/// <param name="strWhere"></param>
|
|
/// <param name="orderBy"></param>
|
|
/// <returns></returns>
|
|
public DataSet QueryResult(string strWhere, string orderBy)
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
strSql.Append(" SELECT ");
|
|
strSql.Append(" T1.batch_id, T1.batch_name, T1.school_id, T1.grade, T1.exam_id, ");
|
|
strSql.Append(" T1.major, T1.sjms, T1.state, T1.ks_minute, T1.start_time, ");
|
|
strSql.Append(" T1.end_time, T1.create_time, T2.exam_name, T2.exam_code, T3.school ");
|
|
strSql.Append(" ,(CASE WHEN T1.state= 0 then '停用' WHEN T1.state =1 then '启用' ELSE '未知' END) AS state_str ");
|
|
strSql.Append(" ,(CASE WHEN now()<start_time then '未开始' WHEN now()>=start_time and now()<end_time then '进行中' WHEN now()>=end_time then '已结束' ELSE '未知' END) AS process ");
|
|
strSql.Append(" FROM ");
|
|
strSql.Append(" pro_exam_batch AS T1 left JOIN pro_examination AS T2");
|
|
strSql.Append(" ON T1.exam_id = T2.id left JOIN admin_school AS T3");
|
|
strSql.Append(" ON T1.school_id = T3.id ");
|
|
if (!string.IsNullOrWhiteSpace(strWhere))
|
|
{
|
|
strSql.AppendFormat(" WHERE {0} ", strWhere);
|
|
}
|
|
if (!string.IsNullOrWhiteSpace(orderBy))
|
|
{
|
|
strSql.Append(orderBy);
|
|
}
|
|
return DbHelperMySQL.Query(strSql.ToString());
|
|
}
|
|
|
|
|
|
public DateTime GetServerTime()
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
strSql.Append("select now() ");
|
|
object obj = DbHelperMySQL.GetSingle(strSql.ToString());
|
|
return (DateTime)obj;
|
|
}
|
|
|
|
//删除批次及批次用户
|
|
public int DeleteBatchAndUser(string batch_id)
|
|
{
|
|
List<CommandInfo> listCmd = new List<CommandInfo>();
|
|
if (true)
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
strSql.Append("delete from pro_exam_batch ");
|
|
strSql.Append(" where batch_id=@batch_id ");
|
|
MySqlParameter[] parameters = {
|
|
new MySqlParameter("@batch_id", MySqlDbType.VarChar,255) };
|
|
parameters[0].Value = batch_id;
|
|
|
|
var cmd = new CommandInfo();
|
|
cmd.CommandText = strSql.ToString();
|
|
cmd.Parameters = parameters;
|
|
listCmd.Add(cmd);
|
|
}
|
|
if (true)
|
|
{
|
|
StringBuilder strSql = new StringBuilder();
|
|
strSql.Append("delete from pro_subject_batch_user ");
|
|
strSql.Append(" where batch_id=@batch_id ");
|
|
MySqlParameter[] parameters = {
|
|
new MySqlParameter("@batch_id", MySqlDbType.VarChar,50) };
|
|
parameters[0].Value = batch_id;
|
|
|
|
var cmd = new CommandInfo();
|
|
cmd.CommandText = strSql.ToString();
|
|
cmd.Parameters = parameters;
|
|
listCmd.Add(cmd);
|
|
}
|
|
int rows = DbHelperMySQL.ExecuteSqlTran(listCmd);
|
|
return rows;
|
|
}
|
|
|
|
|
|
|
|
#endregion ExtensionMethod
|
|
}
|
|
}
|
|
|