using Dapper;
using Learun.DataBase.Repository;
using Learun.Util;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
namespace Learun.Application.TwoDevelopment.EducationalAdministration
{
///
/// 版 本 Learun-ADMS V7.0.6 力软敏捷开发框架
/// Copyright (c) 2013-2020 力软信息技术(苏州)有限公司
/// 创 建:超级管理员
/// 日 期:2022-05-18 11:08
/// 描 述:一卡通交易流水
///
public class MealCardRunTabService : RepositoryFactory
{
#region 构造函数和属性
private string fieldSql;
///
/// 构造方法
///
public MealCardRunTabService()
{
fieldSql = @" * ";
}
#endregion
#region 获取数据
public List GetDept()
{
try
{
string sql = " select distinct DepName from MealCardRunTab order by depname ";
return this.BaseRepository("CollegeMIS").FindList(sql).ToList();
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
public List GetdentiName()
{
try
{
string sql = " select distinct identiName from MealCardRunTab order by identiName ";
return this.BaseRepository("CollegeMIS").FindList(sql).ToList();
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
public List Getflowtype()
{
try
{
string sql = " select distinct flowtype from MealCardRunTab order by flowtype ";
return this.BaseRepository("CollegeMIS").FindList(sql).ToList();
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
public List Getseg()
{
try
{
string sql = " select distinct seg from MealCardRunTab order by seg ";
return this.BaseRepository("CollegeMIS").FindList(sql).ToList();
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 获取列表数据
///
/// 条件参数
///
public IEnumerable GetList(string queryJson)
{
try
{
//参考写法
//var queryParam = queryJson.ToJObject();
// 虚拟参数
//var dp = new DynamicParameters(new { });
//dp.Add("startTime", queryParam["StartTime"].ToDate(), DbType.DateTime);
var strSql = new StringBuilder();
strSql.Append("SELECT ");
strSql.Append(fieldSql);
strSql.Append(" FROM MealCardRunTab t ");
return this.BaseRepository("CollegeMIS").FindList(strSql.ToString());
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 获取列表分页数据
///
/// 分页参数
/// 条件参数
///
public IEnumerable GetPageList(Pagination pagination, string queryJson)
{
try
{
var strSql = new StringBuilder();
strSql.Append("SELECT *");
strSql.Append(" FROM MealCardRunTab t where 1=1");
var queryParam = queryJson.ToJObject();
// 虚拟参数
var dp = new DynamicParameters(new { });
if (!queryParam["accountNo"].IsEmpty())
{
dp.Add("accountNo", "%" + queryParam["accountNo"].ToString() + "%", DbType.String);
strSql.Append(" AND t.accountNo Like @accountNo ");
}
if (!queryParam["accountName"].IsEmpty())
{
var IsPhone = "";
if (!queryParam["IsPhone"].IsEmpty())
{
IsPhone = queryParam["IsPhone"].ToString();
if (IsPhone == "0")
{
var accountName = queryParam["accountName"].ToString();
if (accountName != "超级管理员")
{
dp.Add("accountName", queryParam["accountName"].ToString(), DbType.String);
strSql.Append(" AND t.accountName = @accountName ");
}
}
}
else
{
dp.Add("accountName", "%" + queryParam["accountName"].ToString() + "%", DbType.String);
strSql.Append(" AND t.accountName Like @accountName ");
}
}
if (!queryParam["depName"].IsEmpty())
{
dp.Add("depName", queryParam["depName"].ToString(), DbType.String);
strSql.Append(" AND t.depName = @depName ");
}
if (!queryParam["personId"].IsEmpty())
{
dp.Add("personId", "%" + queryParam["personId"].ToString() + "%", DbType.String);
strSql.Append(" AND t.personId Like @personId ");
}
if (!queryParam["identiName"].IsEmpty())
{
dp.Add("identiName", queryParam["identiName"].ToString(), DbType.String);
strSql.Append(" AND t.identiName = @identiName ");
}
if (!queryParam["flowtype"].IsEmpty())
{
dp.Add("flowtype", queryParam["flowtype"].ToString(), DbType.String);
strSql.Append(" AND t.flowtype = @flowtype ");
}
if (!queryParam["cardNo"].IsEmpty())
{
dp.Add("cardNo", "%" + queryParam["cardNo"].ToString() + "%", DbType.String);
strSql.Append(" AND t.cardNo Like @cardNo ");
}
if (!queryParam["seg"].IsEmpty())
{
dp.Add("seg", queryParam["seg"].ToString(), DbType.String);
strSql.Append(" AND t.seg = @seg ");
}
if (!queryParam["StartTime"].IsEmpty() && !queryParam["EndTime"].IsEmpty())
{
dp.Add("startTime", queryParam["StartTime"].ToDate(), DbType.DateTime);
dp.Add("endTime", queryParam["EndTime"].ToDate(), DbType.DateTime);
strSql.Append(" AND ( t.occurTime >= @startTime AND t.occurTime <= @endTime ) ");
}
return this.BaseRepository("CollegeMIS").FindList(strSql.ToString(), dp, pagination);
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 获取实体数据
///
/// 主键
///
public MealCardRunTabEntity GetEntity(string keyValue)
{
try
{
return this.BaseRepository("CollegeMIS").FindEntity(keyValue);
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
#endregion
#region 提交数据
///
/// 删除实体数据
///
/// 主键
public void DeleteEntity(string keyValue)
{
try
{
this.BaseRepository("CollegeMIS").Delete(t => t.Id == keyValue);
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
///
/// 保存实体数据(新增、修改)
/// 主键
/// 实体
///
public void SaveEntity(string keyValue, MealCardRunTabEntity entity)
{
try
{
if (!string.IsNullOrEmpty(keyValue))
{
entity.Modify(keyValue);
this.BaseRepository("CollegeMIS").Update(entity);
}
else
{
entity.Create();
this.BaseRepository("CollegeMIS").Insert(entity);
}
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
#endregion
///
/// 获取页面显示列表数据
///
/// 查询参数
///
public IEnumerable GetListByAccount(string account)
{
try
{
var user = LoginUserInfo.Get();
return this.BaseRepository("CollegeMIS").FindList(x => x.personId == account && x.accountName == user.realName);
}
catch (Exception ex)
{
if (ex is ExceptionEx)
{
throw;
}
else
{
throw ExceptionEx.ThrowServiceException(ex);
}
}
}
}
}