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-07-11 14:34 /// 描 述:宿舍调换申请 /// public class YKTStateMentService : RepositoryFactory { #region 获取数据 /// /// 获取页面显示列表数据 /// /// 分页参数 /// 查询参数 /// public IEnumerable GetPageList(Pagination pagination, string queryJson) { try { var queryParam = queryJson.ToJObject(); var strSql = new StringBuilder(); strSql.Append(@"SELECT A.OUTID AS STUPHONE,A.CUSTOMERID AS YKTNO,round(A.OPFARE/100,2) AS MONEY,round(A.ODDFARE/100,2) AS BALANCE,A.OPDT AS HAPPENTIME,A.DSCRP AS SUBJECT,B.TERMNAME,C.StuNo,C.StuName,d.DeptName,e.ClassName,c.identityno as IdentityCardNo, f.MajorName,c.GenderNo FROM M_REC_CONSUME@ykt A LEFT JOIN M_BASE_TERM@ykt B ON A.TERMID = B.TERMID left join ds_stuinfo C on A.OUTID = C.mobile left join ds_dept d on c.deptno = d.deptno left join ds_classinfo e on c.classno = e.classno left join ds_major f on c.majorno=f.majorno where 1=1 and stuno is not null "); if (!queryParam["StuNo"].IsEmpty()) { strSql.Append($" AND C.StuNo like '%{queryParam["StuNo"].ToString()}%' "); } if (!queryParam["StuName"].IsEmpty()) { strSql.Append($" AND C.StuName like '%{queryParam["StuName"].ToString()}%' "); } if (!queryParam["DeptNo"].IsEmpty()) { strSql.Append($" AND C.DeptNo='{queryParam["DeptNo"].ToString()}' "); } if (!queryParam["ClassNo"].IsEmpty()) { strSql.Append($" AND C.ClassNo ='{queryParam["ClassNo"].ToString()}' "); } if (!queryParam["YKTNO"].IsEmpty()) { strSql.Append($" AND a.CUSTOMERID like '%{queryParam["CUSTOMERID"].ToString()}%' "); } if (!queryParam["StartDate"].IsEmpty() && !queryParam["EndDate"].IsEmpty()) { strSql.Append(" and (A.OPDT>=to_date('" + queryParam["StartDate"] + "','yyyy-mm-dd hh24:mi:ss') and A.OPDT<=to_date('" + queryParam["EndDate"] + "','yyyy-mm-dd hh24:mi:ss'))"); } return BaseRepository("TLMZYMIDDLEString").FindList(strSql.ToString(), pagination); } catch (Exception ex) { if (ex is ExceptionEx) { throw; } else { throw ExceptionEx.ThrowServiceException(ex); } } } /// /// 一卡通学生月统计 /// /// /// /// public IEnumerable GetAnalysisByMonthForStudentPageList(Pagination pagination, string queryJson) { try { var queryParam = queryJson.ToJObject(); var strSql = new StringBuilder(); strSql.Append( @"SELECT C.StuNo,C.StuName,c.GenderNo,d.DeptName,f.MajorName,e.ClassName,c.identityno as IdentityCardNo, sum(round(A.OPFARE/100,2)) AS MONEY,count(stuno) as PayTimes,round(sum(round(A.OPFARE/100,2))/count(stuno),2) as PerMoney FROM M_REC_CONSUME@ykt A LEFT JOIN M_BASE_TERM@ykt B ON A.TERMID = B.TERMID left join ds_stuinfo C on A.OUTID = C.mobile left join ds_dept d on c.deptno = d.deptno left join ds_classinfo e on c.classno = e.classno left join ds_major f on c.majorno=f.majorno where 1=1 and stuno is not null "); if (!queryParam["DeptNo"].IsEmpty()) { strSql.Append($" AND C.DeptNo='{queryParam["DeptNo"].ToString()}' "); } if (!queryParam["MajorNo"].IsEmpty()) { strSql.Append($" AND C.MajorNo='{queryParam["MajorNo"].ToString()}' "); } if (!queryParam["ClassNo"].IsEmpty()) { strSql.Append($" AND C.ClassNo ='{queryParam["ClassNo"].ToString()}' "); } if (!queryParam["Months"].IsEmpty()) { strSql.Append(" and extract(month from A.OPDT) in("+ queryParam["Months"].ToString() + ")"); } if (!queryParam["Year"].IsEmpty()) { strSql.Append(" and extract(year from A.OPDT) in(" + queryParam["Year"].ToString() + ")"); } strSql.Append("group by C.StuNo,c.GenderNo, C.StuName,d.DeptNo, d.DeptName, f.MajorName,f.MajorNo, e.ClassNo,e.ClassName, c.identityno"); return BaseRepository("TLMZYMIDDLEString").FindList(strSql.ToString(), pagination); } catch (Exception ex) { if (ex is ExceptionEx) { throw; } else { throw ExceptionEx.ThrowServiceException(ex); } } } public IEnumerable GetTeacherPageList(Pagination pagination, string queryJson) { try { var queryParam = queryJson.ToJObject(); var strSql = new StringBuilder(); strSql.Append(@"SELECT A.OUTID AS STUPHONE,A.CUSTOMERID AS YKTNO,round(A.OPFARE/100,2) AS MONEY,round(A.ODDFARE/100,2) AS BALANCE,A.OPDT AS HAPPENTIME,A.DSCRP AS SUBJECT, B.TERMNAME,c.EmpNo,c.EmpName,d.Name as DepartmentName,c.identityno as IdentityCardNo,c.GenderNo FROM M_REC_CONSUME@ykt A LEFT JOIN M_BASE_TERM@ykt B ON A.TERMID = B.TERMID left join ds_empinfo C on A.OUTID = C.mobile left join ds_department d on c.departmentid=d.id where 1=1 and EmpNo is not null"); if (!queryParam["EmpNo"].IsEmpty()) { strSql.Append($" AND C.EmpNo like '%{queryParam["EmpNo"].ToString()}%' "); } if (!queryParam["EmpName"].IsEmpty()) { strSql.Append($" AND C.EmpName like '%{queryParam["EmpName"].ToString()}%' "); } if (!queryParam["DepartmentId"].IsEmpty()) { strSql.Append($" AND C.DepartmentId='{queryParam["DepartmentId"].ToString()}' "); } if (!queryParam["YKTNO"].IsEmpty()) { strSql.Append($" AND a.CUSTOMERID like '%{queryParam["CUSTOMERID"].ToString()}%' "); } if (!queryParam["StartDate"].IsEmpty() && !queryParam["EndDate"].IsEmpty()) { strSql.Append(" and (A.OPDT>=to_date('" + queryParam["StartDate"] + "','yyyy-mm-dd hh24:mi:ss') and A.OPDT<=to_date('" + queryParam["EndDate"] + "','yyyy-mm-dd hh24:mi:ss'))"); } return BaseRepository("TLMZYMIDDLEString").FindList(strSql.ToString(), pagination); } catch (Exception ex) { if (ex is ExceptionEx) { throw; } else { throw ExceptionEx.ThrowServiceException(ex); } } } /// /// 一卡通教师月统计 /// /// /// /// public IEnumerable GetAnalysisByMonthForTeacherPageList(Pagination pagination, string queryJson) { try { var queryParam = queryJson.ToJObject(); var strSql = new StringBuilder(); strSql.Append( @"SELECT c.EmpNo,c.EmpName,d.Name as DepartmentName,c.identityno as IdentityCardNo, sum(round(A.OPFARE/100,2)) AS MONEY,count(EmpNo) as PayTimes,round(sum(round(A.OPFARE/100,2))/count(EmpNo),2) as PerMoney FROM M_REC_CONSUME@ykt A LEFT JOIN M_BASE_TERM@ykt B ON A.TERMID = B.TERMID left join ds_empinfo C on A.OUTID = C.mobile left join ds_department d on c.departmentid=d.id where 1=1 and EmpNo is not null "); if (!queryParam["EmpNo"].IsEmpty()) { strSql.Append($" AND C.EmpNo like '%{queryParam["EmpNo"].ToString()}%' "); } if (!queryParam["EmpName"].IsEmpty()) { strSql.Append($" AND C.EmpName like '%{queryParam["EmpName"].ToString()}%' "); } if (!queryParam["DepartmentId"].IsEmpty()) { strSql.Append($" AND C.DepartmentId='{queryParam["DepartmentId"].ToString()}' "); } if (!queryParam["Months"].IsEmpty()) { strSql.Append(" and extract(month from A.OPDT) in(" + queryParam["Months"].ToString() + ")"); } strSql.Append("group by c.EmpNo,c.EmpName,d.DepartmentId,d.Name,c.identityno"); return BaseRepository("TLMZYMIDDLEString").FindList(strSql.ToString(), pagination); } catch (Exception ex) { if (ex is ExceptionEx) { throw; } else { throw ExceptionEx.ThrowServiceException(ex); } } } #endregion } }