TATModuleLogic.cs 52 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080
  1. /*******************************************************************************
  2. * Copyright(c) 2014 DongkeSoft All rights reserved. / Confidential
  3. * 类的信息:
  4. * 1.程序名称:TATModuleLogic.cs
  5. * 2.功能描述:策略管理信息与数据库的交互类
  6. * 编辑履历:
  7. * 作者 日期 版本 修改内容
  8. * 庄天威 2014/11/18 1.00 新建
  9. *******************************************************************************/
  10. using System;
  11. using System.Data;
  12. using System.Text;
  13. using Dongke.IBOSS.PRD.Basics.BaseResources;
  14. using Dongke.IBOSS.PRD.Basics.DataAccess;
  15. using Dongke.IBOSS.PRD.Service.DataModels;
  16. using Dongke.IBOSS.PRD.WCF.DataModels;
  17. using Oracle.ManagedDataAccess.Client;
  18. namespace Dongke.IBOSS.PRD.Service.TATModuleLogic
  19. {
  20. /// <summary>
  21. /// 策略管理信息与数据库的交互类
  22. /// </summary>
  23. public partial class TATModuleLogic
  24. {
  25. #region 缺陷扣罚
  26. /// <summary>
  27. /// 查询缺陷扣罚信息
  28. /// </summary>
  29. /// <param name="dfEntity">查询条件实体</param>
  30. /// <param name="userInfo">基本用户信息</param>
  31. /// <returns>ServiceResultEntity查询结果实体</returns>
  32. public static ServiceResultEntity GetDefectFine(DefectFineEntity dfEntity, SUserInfo userInfo)
  33. {
  34. ServiceResultEntity srEntity = new ServiceResultEntity();
  35. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  36. try
  37. {
  38. con.Open();
  39. OracleParameter[] DFParas = new OracleParameter[]{
  40. new OracleParameter("In_DefectFineID",OracleDbType.Int32,
  41. dfEntity.DefectFineID,ParameterDirection.Input),
  42. new OracleParameter("In_AccountID",OracleDbType.Int32,
  43. userInfo.AccountID,ParameterDirection.Input),
  44. new OracleParameter("In_DefectFineName",OracleDbType.NVarchar2,
  45. dfEntity.DefectFineName,ParameterDirection.Input),
  46. new OracleParameter("In_SalaryType",OracleDbType.Int32,
  47. dfEntity.SalaryType,ParameterDirection.Input),
  48. new OracleParameter("In_DefectFine",OracleDbType.Int32,
  49. dfEntity.DefectFine,ParameterDirection.Input),
  50. new OracleParameter("In_FineType",OracleDbType.Int32,
  51. dfEntity.FineType,ParameterDirection.Input),
  52. new OracleParameter("In_BeginAccountMonthS",OracleDbType.Date,
  53. dfEntity.BeginAccountMonth,ParameterDirection.Input),
  54. new OracleParameter("In_BeginAccountMonthE",OracleDbType.Date,
  55. dfEntity.BeginAccountMonthEnd,ParameterDirection.Input),
  56. new OracleParameter("In_EndAccountMonthS",OracleDbType.Date,
  57. dfEntity.EndAccountMonth,ParameterDirection.Input),
  58. new OracleParameter("In_EndAccountMonthE",OracleDbType.Date,
  59. dfEntity.EndAccountMonthEnd,ParameterDirection.Input),
  60. new OracleParameter("In_Remarks",OracleDbType.NVarchar2,
  61. dfEntity.Remarks,ParameterDirection.Input),
  62. new OracleParameter("In_AuditStatus",OracleDbType.Int32,
  63. dfEntity.AuditStatus,ParameterDirection.Input),
  64. new OracleParameter("Out_Result",OracleDbType.RefCursor,
  65. ParameterDirection.Output),
  66. };
  67. DataSet dsDefectFine = con.ExecStoredProcedure("PRO_PM_GetDefectFine", DFParas);
  68. if (dsDefectFine.Tables.Count == 0 || dsDefectFine.Tables[0].Rows.Count == 0)
  69. {
  70. srEntity.Status = Constant.ServiceResultStatus.NoSearchResults;
  71. srEntity.Message = Messages.MSG_CMN_I002;
  72. }
  73. else
  74. {
  75. srEntity.Status = Constant.ServiceResultStatus.Success;
  76. //srEntity.Result = dsDefectFine;
  77. srEntity.Data = dsDefectFine;
  78. }
  79. return srEntity;
  80. }
  81. catch (Exception ex)
  82. {
  83. srEntity.Status = Constant.ServiceResultStatus.SystemError;
  84. srEntity.Exception = ex;
  85. return srEntity;
  86. }
  87. finally
  88. {
  89. if (con.ConnState == ConnectionState.Open)
  90. {
  91. con.Close();
  92. }
  93. }
  94. }
  95. /// <summary>
  96. /// 根据主信息ID获取明细信息
  97. /// </summary>
  98. /// <param name="DefectId">主信息ID</param>
  99. /// <returns>数据集中两个Table,第一个是工种集合,第二个是全部信息</returns>
  100. public static ServiceResultEntity GetDefectFineDetailById(int DefectId)
  101. {
  102. ServiceResultEntity srEntity = new ServiceResultEntity();
  103. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  104. DataSet dsDetail = new DataSet();
  105. try
  106. {
  107. StringBuilder sbSql = new StringBuilder();
  108. //首先根据主信息ID查询工种信息(绑定在前台明细页左侧)
  109. sbSql.Append(@"Select Distinct detail.jobsId,jobs.jobscode,jobs.jobsname,1 as isHave
  110. From TP_TAT_DefectFineDetail detail
  111. Inner join TP_MST_JOBS jobs
  112. On detail.jobsid = jobs.jobsid
  113. where detail.DefectFineID = :DefectFineID and detail.ValueFlag = 1");
  114. OracleParameter[] JobsParas = new OracleParameter[]{
  115. new OracleParameter(":DefectFineID",OracleDbType.Int32,
  116. DefectId,ParameterDirection.Input),
  117. };
  118. DataTable dtJobs = con.GetSqlResultToDt(sbSql.ToString(), JobsParas);
  119. dsDetail.Tables.Add(dtJobs);
  120. //然后根据主信息ID查询所有信息
  121. sbSql.Clear();
  122. sbSql.Append(@"select detail.defectfineid,detail.JobsID,detail.GoodsId,
  123. detail.FinEamount,goods.goodscode,goods.goodsname
  124. from TP_TAT_DefectFineDetail detail
  125. inner join TP_MST_GOODS goods
  126. on detail.goodsid = goods.goodsid
  127. where detail.DefectFineID = :DefectFineID and detail.ValueFlag = 1");
  128. OracleParameter[] DetailParas = new OracleParameter[]{
  129. new OracleParameter(":DefectFineID",OracleDbType.Int32,
  130. DefectId,ParameterDirection.Input),
  131. };
  132. DataTable dtDetail = con.GetSqlResultToDt(sbSql.ToString(), DetailParas);
  133. dsDetail.Tables.Add(dtDetail);
  134. srEntity.Status = Constant.ServiceResultStatus.Success;
  135. srEntity.Result = dsDetail;
  136. return srEntity;
  137. }
  138. catch (Exception ex)
  139. {
  140. srEntity.Status = Constant.ServiceResultStatus.SystemError;
  141. srEntity.Exception = ex;
  142. return srEntity;
  143. }
  144. finally
  145. {
  146. if (con.ConnState == ConnectionState.Open)
  147. {
  148. con.Close();
  149. }
  150. }
  151. }
  152. #endregion
  153. #region 基本工资策略
  154. /// <summary>
  155. /// 查询基本工资策略信息
  156. /// </summary>
  157. /// <param name="basicSalaryEntity">查询条件实体</param>
  158. /// <param name="userInfo">基本用户信息</param>
  159. /// <returns>ServiceResultEntity查询结果实体</returns>
  160. /// <remarks>
  161. /// 2014.12.10 任海 新建
  162. /// </remarks>
  163. public static ServiceResultEntity GetBasicSalary(BasicSalaryEntity basicSalaryEntity, SUserInfo userInfo)
  164. {
  165. ServiceResultEntity srEntity = new ServiceResultEntity();
  166. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  167. try
  168. {
  169. oracleConn.Open();
  170. OracleParameter[] DFParas = new OracleParameter[]{
  171. new OracleParameter("In_BasicSalaryID",OracleDbType.Int32,
  172. basicSalaryEntity.BasicSalaryID,ParameterDirection.Input),
  173. new OracleParameter("In_AccountID",OracleDbType.Int32,
  174. userInfo.AccountID,ParameterDirection.Input),
  175. new OracleParameter("In_BasicSalaryName",OracleDbType.NVarchar2,
  176. basicSalaryEntity.BasicSalaryName,ParameterDirection.Input),
  177. new OracleParameter("In_SalaryType",OracleDbType.Int32,
  178. basicSalaryEntity.SalaryType,ParameterDirection.Input),
  179. new OracleParameter("In_BeginAccountMonthS",OracleDbType.Date,
  180. basicSalaryEntity.BeginAccountMonth,ParameterDirection.Input),
  181. new OracleParameter("In_BeginAccountMonthE",OracleDbType.Date,
  182. basicSalaryEntity.BeginAccountMonthEnd,ParameterDirection.Input),
  183. new OracleParameter("In_EndAccountMonthS",OracleDbType.Date,
  184. basicSalaryEntity.EndAccountMonth,ParameterDirection.Input),
  185. new OracleParameter("In_EndAccountMonthE",OracleDbType.Date,
  186. basicSalaryEntity.EndAccountMonthEnd,ParameterDirection.Input),
  187. new OracleParameter("In_Remarks",OracleDbType.NVarchar2,
  188. basicSalaryEntity.Remarks,ParameterDirection.Input),
  189. new OracleParameter("In_AuditStatus",OracleDbType.Int32,
  190. basicSalaryEntity.AuditStatus,ParameterDirection.Input),
  191. new OracleParameter("Out_Result",OracleDbType.RefCursor,
  192. ParameterDirection.Output),
  193. };
  194. DataSet dsBasicSalary = oracleConn.ExecStoredProcedure("PRO_PM_GetBasicSalary", DFParas);
  195. if (dsBasicSalary.Tables.Count == 0 || dsBasicSalary.Tables[0].Rows.Count == 0)
  196. {
  197. srEntity.Status = Constant.ServiceResultStatus.NoSearchResults;
  198. srEntity.Message = Messages.MSG_CMN_I002;
  199. }
  200. else
  201. {
  202. srEntity.Status = Constant.ServiceResultStatus.Success;
  203. //srEntity.Result = dsBasicSalary;
  204. srEntity.Data = dsBasicSalary;
  205. }
  206. return srEntity;
  207. }
  208. catch (Exception ex)
  209. {
  210. srEntity.Status = Constant.ServiceResultStatus.SystemError;
  211. srEntity.Exception = ex;
  212. return srEntity;
  213. }
  214. finally
  215. {
  216. if (oracleConn.ConnState == ConnectionState.Open)
  217. {
  218. oracleConn.Close();
  219. }
  220. }
  221. }
  222. /// <summary>
  223. /// 查询基本工资策略明细
  224. /// </summary>
  225. /// <param name="BasicSalaryID">主信息ID</param>
  226. /// <param name="sUserInfo">基本用户信息</param>
  227. /// <returns>ServiceResultEntity服务实体对象,包含工种明细数据源</returns>
  228. /// <remarks>
  229. /// 2014.12.12 任海 新建
  230. /// </remarks>
  231. public static ServiceResultEntity GetBasicSalaryDetailById(int BasicSalaryID, SUserInfo sUserInfo)
  232. {
  233. ServiceResultEntity srEntity = new ServiceResultEntity();
  234. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  235. DataSet dsDetail = new DataSet();
  236. try
  237. {
  238. StringBuilder sbSql = new StringBuilder();
  239. sbSql.Append(@"Select bs.basicsalaryid,bs.jobsid,jobs.jobscode,jobs.jobsname,bs.basicsalary,bs.subsidy,bs.minimumsalary,
  240. bs.accountid,bs.valueflag,bs.createtime,bs.createuserid,bs.updatetime,bs.updateuserid,bs.optimestamp
  241. from TP_TAT_BasicSalaryDetail bs
  242. inner join TP_MST_JOBS jobs
  243. On bs.jobsid = jobs.jobsid
  244. where bs.AccountID = :AccountID
  245. and bs.BasicSalaryID = :BasicSalaryID
  246. and bs.valueflag = 1");
  247. OracleParameter[] JobsParas = new OracleParameter[]{
  248. new OracleParameter(":BasicSalaryID",OracleDbType.Int32,
  249. BasicSalaryID,ParameterDirection.Input),
  250. new OracleParameter(":AccountID",OracleDbType.Int32,
  251. sUserInfo.AccountID,ParameterDirection.Input),
  252. };
  253. DataTable dtJobs = con.GetSqlResultToDt(sbSql.ToString(), JobsParas);
  254. dsDetail.Tables.Add(dtJobs);
  255. srEntity.Status = Constant.ServiceResultStatus.Success;
  256. //srEntity.Result = dsDetail;
  257. srEntity.Data = dsDetail;
  258. return srEntity;
  259. }
  260. catch (Exception ex)
  261. {
  262. srEntity.Status = Constant.ServiceResultStatus.SystemError;
  263. srEntity.Exception = ex;
  264. return srEntity;
  265. }
  266. finally
  267. {
  268. if (con.ConnState == ConnectionState.Open)
  269. {
  270. con.Close();
  271. }
  272. }
  273. }
  274. #endregion
  275. #region 出勤考核
  276. /// <summary>
  277. /// 查询出勤考核信息
  278. /// </summary>
  279. /// <param name="attendanceEntity">查询条件实体</param>
  280. /// <param name="userInfo">基本用户信息</param>
  281. /// <returns>ServiceResultEntity查询结果实体</returns>
  282. /// <remarks>
  283. /// 2014.12.15 任海 新建
  284. /// </remarks>
  285. public static ServiceResultEntity GetAttendance(AttendanceEntity attendanceEntity, SUserInfo userInfo)
  286. {
  287. ServiceResultEntity srEntity = new ServiceResultEntity();
  288. IDBConnection oracleConn = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  289. try
  290. {
  291. oracleConn.Open();
  292. OracleParameter[] DFParas = new OracleParameter[]{
  293. new OracleParameter("In_AttendanceID",OracleDbType.Int32,
  294. attendanceEntity.AttendanceID,ParameterDirection.Input),
  295. new OracleParameter("In_AccountID",OracleDbType.Int32,
  296. userInfo.AccountID,ParameterDirection.Input),
  297. new OracleParameter("In_AttendanceName",OracleDbType.NVarchar2,
  298. attendanceEntity.AttendanceName,ParameterDirection.Input),
  299. new OracleParameter("In_BeginAccountMonthS",OracleDbType.Date,
  300. attendanceEntity.BeginAccountMonth,ParameterDirection.Input),
  301. new OracleParameter("In_BeginAccountMonthE",OracleDbType.Date,
  302. attendanceEntity.BeginAccountMonthEnd,ParameterDirection.Input),
  303. new OracleParameter("In_EndAccountMonthS",OracleDbType.Date,
  304. attendanceEntity.EndAccountMonth,ParameterDirection.Input),
  305. new OracleParameter("In_EndAccountMonthE",OracleDbType.Date,
  306. attendanceEntity.EndAccountMonthEnd,ParameterDirection.Input),
  307. new OracleParameter("In_Remarks",OracleDbType.NVarchar2,
  308. attendanceEntity.Remarks,ParameterDirection.Input),
  309. new OracleParameter("In_AuditStatus",OracleDbType.Int32,
  310. attendanceEntity.AuditStatus,ParameterDirection.Input),
  311. new OracleParameter("Out_Result",OracleDbType.RefCursor,
  312. ParameterDirection.Output),
  313. };
  314. DataSet dsAttendance = oracleConn.ExecStoredProcedure("PRO_PM_GetAttendance", DFParas);
  315. if (dsAttendance.Tables.Count == 0 || dsAttendance.Tables[0].Rows.Count == 0)
  316. {
  317. srEntity.Status = Constant.ServiceResultStatus.NoSearchResults;
  318. srEntity.Message = Messages.MSG_CMN_I002;
  319. }
  320. else
  321. {
  322. srEntity.Status = Constant.ServiceResultStatus.Success;
  323. // srEntity.Result = dsAttendance;
  324. srEntity.Data = dsAttendance;
  325. }
  326. return srEntity;
  327. }
  328. catch (Exception ex)
  329. {
  330. srEntity.Status = Constant.ServiceResultStatus.SystemError;
  331. srEntity.Exception = ex;
  332. return srEntity;
  333. }
  334. finally
  335. {
  336. if (oracleConn.ConnState == ConnectionState.Open)
  337. {
  338. oracleConn.Close();
  339. }
  340. }
  341. }
  342. /// <summary>
  343. /// 查询出勤考核的明细对应工种
  344. /// </summary>
  345. /// <param name="AttendanceID">主信息ID</param>
  346. /// <param name="sUserInfo">基本用户信息</param>
  347. /// <returns>ServiceResultEntity服务实体对象,包含工种明细数据源</returns>
  348. /// <remarks>
  349. /// 2014.12.16 任海 新建
  350. /// </remarks>
  351. public static ServiceResultEntity GetAttendanceEntityById(int AttendanceID, SUserInfo sUserInfo)
  352. {
  353. ServiceResultEntity srEntity = new ServiceResultEntity();
  354. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  355. DataSet dsDetail = new DataSet();
  356. try
  357. {
  358. StringBuilder sbSql = new StringBuilder();
  359. sbSql.Append(@"Select at.AttendanceID,at.jobsid,jobs.jobscode,jobs.jobsname,
  360. at.accountid,at.valueflag,at.createtime,at.createuserid,at.updatetime,at.updateuserid,at.optimestamp,1 as isHave
  361. from TP_TAT_AttendanceDetail at
  362. inner join TP_MST_JOBS jobs
  363. On at.jobsid = jobs.jobsid
  364. where at.AccountID = :AccountID
  365. and at.AttendanceID = :AttendanceID
  366. and at.valueflag = 1");
  367. OracleParameter[] JobsParas = new OracleParameter[]{
  368. new OracleParameter(":AttendanceID",OracleDbType.Int32,
  369. AttendanceID,ParameterDirection.Input),
  370. new OracleParameter(":AccountID",OracleDbType.Int32,
  371. sUserInfo.AccountID,ParameterDirection.Input),
  372. };
  373. DataTable dtJobs = con.GetSqlResultToDt(sbSql.ToString(), JobsParas);
  374. dsDetail.Tables.Add(dtJobs);
  375. srEntity.Status = Constant.ServiceResultStatus.Success;
  376. //srEntity.Result = dsDetail;
  377. srEntity.Data = dsDetail;
  378. return srEntity;
  379. }
  380. catch (Exception ex)
  381. {
  382. srEntity.Status = Constant.ServiceResultStatus.SystemError;
  383. srEntity.Exception = ex;
  384. return srEntity;
  385. }
  386. finally
  387. {
  388. if (con.ConnState == ConnectionState.Open)
  389. {
  390. con.Close();
  391. }
  392. }
  393. }
  394. /// <summary>
  395. /// 查询出勤考核明细的信息
  396. /// </summary>
  397. /// <param name="attendanceDetailEntity">查询条件实体</param>
  398. /// <param name="userInfo">基本用户信息</param>
  399. /// <returns>ServiceResultEntity查询结果实体</returns>
  400. /// <remarks>
  401. /// 2014.12.1 任海 新建
  402. /// </remarks>
  403. public static ServiceResultEntity GetAttendanceDetail(AttendanceDetailEntity attendanceDetailEntity, SUserInfo userInfo)
  404. {
  405. ServiceResultEntity srEntity = new ServiceResultEntity();
  406. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  407. DataSet dsDetail = new DataSet();
  408. try
  409. {
  410. StringBuilder sbSql = new StringBuilder();
  411. sbSql.Append(@"Select AttendanceID,JobsID,RestmMode,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday,RestDays,PunishMode,
  412. AccountID,ValueFlag,CreateTime,CreateUserID,UpdateTime,UpdateUserID,OPTimeStamp
  413. From TP_TAT_AttendanceDetail
  414. where AccountID = :AccountID and ValueFlag = 1 and AttendanceID = :AttendanceID and JobsID = :JobsID
  415. ");
  416. OracleParameter[] JobsParas = new OracleParameter[]{
  417. new OracleParameter(":AttendanceID",OracleDbType.Int32,
  418. attendanceDetailEntity.AttendanceID,ParameterDirection.Input),
  419. new OracleParameter(":AccountID",OracleDbType.Int32,
  420. userInfo.AccountID,ParameterDirection.Input),
  421. new OracleParameter(":JobsID",OracleDbType.Int32,
  422. attendanceDetailEntity.JobsID,ParameterDirection.Input),
  423. };
  424. DataTable dtJobs = con.GetSqlResultToDt(sbSql.ToString(), JobsParas);
  425. dsDetail.Tables.Add(dtJobs);
  426. srEntity.Status = Constant.ServiceResultStatus.Success;
  427. //srEntity.Result = dsDetail;
  428. srEntity.Data = dsDetail;
  429. return srEntity;
  430. }
  431. catch (Exception ex)
  432. {
  433. srEntity.Status = Constant.ServiceResultStatus.SystemError;
  434. srEntity.Exception = ex;
  435. return srEntity;
  436. }
  437. finally
  438. {
  439. if (con.ConnState == ConnectionState.Open)
  440. {
  441. con.Close();
  442. }
  443. }
  444. }
  445. /// <summary>
  446. /// 查询出勤考核的明细对应扣款
  447. /// </summary>
  448. /// <param name="AttendanceID">主信息ID</param>
  449. /// <param name="sUserInfo">基本用户信息</param>
  450. /// <returns>ServiceResultEntity服务实体对象,包含工种明细数据源</returns>
  451. /// <remarks>
  452. /// 2014.12.18 任海 新建
  453. /// </remarks>
  454. public static ServiceResultEntity GetAttFinesRulesById(int AttendanceID, int JobsID, SUserInfo sUserInfo)
  455. {
  456. ServiceResultEntity srEntity = new ServiceResultEntity();
  457. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  458. DataSet dsDetail = new DataSet();
  459. try
  460. {
  461. StringBuilder sbSql = new StringBuilder();
  462. sbSql.Append(@"Select at.AttendanceID,at.jobsid,afr.FinesRulesID,afr.BeginAbsentDays,afr.EndAbsentDays,afr.PunishAmount,
  463. at.accountid,at.valueflag,at.createtime,at.createuserid,at.updatetime,at.updateuserid,at.optimestamp
  464. from TP_TAT_AttendanceDetail at
  465. inner join TP_TAT_AttFinesRules afr
  466. On at.jobsid = afr.jobsid
  467. and at.AttendanceID = afr.AttendanceID
  468. where at.AccountID = :AccountID
  469. and at.AttendanceID = :AttendanceID
  470. and at.JobsID=:JobsID
  471. and at.valueflag = 1");
  472. OracleParameter[] JobsParas = new OracleParameter[]{
  473. new OracleParameter(":AttendanceID",OracleDbType.Int32,
  474. AttendanceID,ParameterDirection.Input),
  475. new OracleParameter(":JobsID",OracleDbType.Int32,
  476. JobsID,ParameterDirection.Input),
  477. new OracleParameter(":AccountID",OracleDbType.Int32,
  478. sUserInfo.AccountID,ParameterDirection.Input),
  479. };
  480. DataTable dtJobs = con.GetSqlResultToDt(sbSql.ToString(), JobsParas);
  481. dsDetail.Tables.Add(dtJobs);
  482. srEntity.Status = Constant.ServiceResultStatus.Success;
  483. //srEntity.Result = dsDetail;
  484. srEntity.Data = dsDetail;
  485. return srEntity;
  486. }
  487. catch (Exception ex)
  488. {
  489. srEntity.Status = Constant.ServiceResultStatus.SystemError;
  490. srEntity.Exception = ex;
  491. return srEntity;
  492. }
  493. finally
  494. {
  495. if (con.ConnState == ConnectionState.Open)
  496. {
  497. con.Close();
  498. }
  499. }
  500. }
  501. #endregion
  502. #region 工价策略
  503. /// <summary>
  504. /// 查询工价策略信息
  505. /// </summary>
  506. /// <param name="wagesEntity">工价策略查询条件实体</param>
  507. /// <param name="userInfo">基本用户信息</param>
  508. /// <returns>ServiceResultEntity查询结果实体</returns>
  509. public static ServiceResultEntity GetWages(WagesEntity wagesEntity, SUserInfo userInfo)
  510. {
  511. ServiceResultEntity srEntity = new ServiceResultEntity();
  512. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  513. try
  514. {
  515. con.Open();
  516. OracleParameter[] DFParas = new OracleParameter[]{
  517. new OracleParameter("In_WagesID",OracleDbType.Int32,
  518. wagesEntity.WagesID,ParameterDirection.Input),
  519. new OracleParameter("In_AccountID",OracleDbType.Int32,
  520. userInfo.AccountID,ParameterDirection.Input),
  521. new OracleParameter("In_WagesName",OracleDbType.NVarchar2,
  522. wagesEntity.WagesName,ParameterDirection.Input),
  523. new OracleParameter("In_SalaryType",OracleDbType.Int32,
  524. wagesEntity.SalaryType,ParameterDirection.Input),
  525. new OracleParameter("In_BeginAccountMonthS",OracleDbType.Date,
  526. wagesEntity.BeginAccountMonth,ParameterDirection.Input),
  527. new OracleParameter("In_BeginAccountMonthE",OracleDbType.Date,
  528. wagesEntity.BeginAccountMonthEnd,ParameterDirection.Input),
  529. new OracleParameter("In_EndAccountMonthS",OracleDbType.Date,
  530. wagesEntity.EndAccountMonth,ParameterDirection.Input),
  531. new OracleParameter("In_EndAccountMonthE",OracleDbType.Date,
  532. wagesEntity.EndAccountMonthEnd,ParameterDirection.Input),
  533. new OracleParameter("In_Remarks",OracleDbType.NVarchar2,
  534. wagesEntity.Remarks,ParameterDirection.Input),
  535. new OracleParameter("In_AuditStatus",OracleDbType.Int32,
  536. wagesEntity.AuditStatus,ParameterDirection.Input),
  537. new OracleParameter("Out_Result",OracleDbType.RefCursor,
  538. ParameterDirection.Output),
  539. };
  540. DataSet dsWages = con.ExecStoredProcedure("PRO_PM_GetWages", DFParas);
  541. if (dsWages.Tables.Count == 0 || dsWages.Tables[0].Rows.Count == 0)
  542. {
  543. srEntity.Status = Constant.ServiceResultStatus.NoSearchResults;
  544. srEntity.Message = Messages.MSG_CMN_I002;
  545. }
  546. else
  547. {
  548. srEntity.Status = Constant.ServiceResultStatus.Success;
  549. //srEntity.Result = dsWages;
  550. srEntity.Data = dsWages;
  551. }
  552. return srEntity;
  553. }
  554. catch (Exception ex)
  555. {
  556. srEntity.Status = Constant.ServiceResultStatus.SystemError;
  557. srEntity.Exception = ex;
  558. return srEntity;
  559. }
  560. finally
  561. {
  562. if (con.ConnState == ConnectionState.Open)
  563. {
  564. con.Close();
  565. }
  566. }
  567. }
  568. /// <summary>
  569. /// 根据工价策略主信息ID获取对应工种明细信息
  570. /// </summary>
  571. /// <param name="WagesId">工价策略主ID</param>
  572. /// <returns>ServiceResultEntity服务实体对象,包含工种明细数据源</returns>
  573. public static ServiceResultEntity GetWagesDetailById(int WagesId)
  574. {
  575. ServiceResultEntity srEntity = new ServiceResultEntity();
  576. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  577. DataSet dsDetail = new DataSet();
  578. try
  579. {
  580. StringBuilder sbSql = new StringBuilder();
  581. //首先根据主信息ID查询工种信息(绑定在前台明细页左侧)
  582. sbSql.Append(@"Select detail.wagesid,jobs.jobscode,jobs.jobsname,detail.jobsid,detail.pricetype,
  583. decode(detail.pricetype, 0, null, 1, null,2, null,3, detail.Kilncarnum,4, detail.Weight, null) as OneCount,
  584. decode(detail.pricetype,0, null, 1, null,2, null,3, detail.CarPricing,4, detail.WeightPricing, null) as OnePrice,
  585. 1 as isHave
  586. From TP_TAT_WagesDetail detail
  587. Inner join TP_MST_JOBS jobs
  588. On detail.jobsid = jobs.jobsid
  589. where detail.WagesID = :WagesID and detail.ValueFlag = 1");
  590. OracleParameter[] JobsParas = new OracleParameter[]{
  591. new OracleParameter(":WagesID",OracleDbType.Int32,
  592. WagesId,ParameterDirection.Input),
  593. };
  594. DataTable dtJobs = con.GetSqlResultToDt(sbSql.ToString(), JobsParas);
  595. dsDetail.Tables.Add(dtJobs);
  596. srEntity.Status = Constant.ServiceResultStatus.Success;
  597. //srEntity.Result = dsDetail;
  598. srEntity.Data = dsDetail;
  599. return srEntity;
  600. }
  601. catch (Exception ex)
  602. {
  603. srEntity.Status = Constant.ServiceResultStatus.SystemError;
  604. srEntity.Exception = ex;
  605. return srEntity;
  606. }
  607. finally
  608. {
  609. if (con.ConnState == ConnectionState.Open)
  610. {
  611. con.Close();
  612. }
  613. }
  614. }
  615. /// <summary>
  616. /// 根据工价策略主信息ID以及对应的工种ID获取对应的产品设定数据源
  617. /// </summary>
  618. /// <param name="WagesId">工价策略主ID</param>
  619. /// <param name="JobsId">对应工种ID</param>
  620. /// <returns>ServiceResultEntity包含对应产品数据源的服务返回实体</returns>
  621. public static ServiceResultEntity GetWagesGoodsDetail(int WagesId, int JobsId)
  622. {
  623. ServiceResultEntity srEntity = new ServiceResultEntity();
  624. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  625. DataSet dsDetail = new DataSet();
  626. try
  627. {
  628. StringBuilder sbSql = new StringBuilder();
  629. //根据主信息ID以及工种ID获取对应的对应产品数据源
  630. sbSql.Append(@"Select * From TP_TAT_WagesGoodsDetail detail
  631. Inner join TP_MST_JOBS jobs
  632. On detail.jobsid = jobs.jobsid
  633. Inner join TP_MST_Goods goods
  634. On Detail.goodsid = goods.goodsid
  635. where detail.WagesID = :WagesID
  636. and detail.JobsId = :JobsId and detail.ValueFlag = 1");
  637. OracleParameter[] GoodsParas = new OracleParameter[]{
  638. new OracleParameter(":WagesID",OracleDbType.Int32,
  639. WagesId,ParameterDirection.Input),
  640. new OracleParameter(":JobsId",OracleDbType.Int32,
  641. JobsId,ParameterDirection.Input),
  642. };
  643. DataTable dtGoods = con.GetSqlResultToDt(sbSql.ToString(), GoodsParas);
  644. dsDetail.Tables.Add(dtGoods);
  645. srEntity.Status = Constant.ServiceResultStatus.Success;
  646. //srEntity.Result = dsDetail;
  647. srEntity.Data = dsDetail;
  648. return srEntity;
  649. }
  650. catch (Exception ex)
  651. {
  652. srEntity.Status = Constant.ServiceResultStatus.SystemError;
  653. srEntity.Exception = ex;
  654. return srEntity;
  655. }
  656. finally
  657. {
  658. if (con.ConnState == ConnectionState.Open)
  659. {
  660. con.Close();
  661. }
  662. }
  663. }
  664. #endregion
  665. #region 质量考核
  666. /// <summary>
  667. /// 查询质量考核信息
  668. /// </summary>
  669. /// <param name="quality">质量考核查询条件实体</param>
  670. /// <param name="userInfo">基本用户信息</param>
  671. /// <returns>ServiceResultEntity查询结果实体</returns>
  672. public static ServiceResultEntity GetQuality(QualityEntity quality, SUserInfo userInfo)
  673. {
  674. ServiceResultEntity srEntity = new ServiceResultEntity();
  675. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  676. try
  677. {
  678. con.Open();
  679. OracleParameter[] DFParas = new OracleParameter[]{
  680. new OracleParameter("in_qualityId",OracleDbType.Int32,
  681. quality.QualityID,ParameterDirection.Input),
  682. new OracleParameter("in_qualityName",OracleDbType.Varchar2,
  683. quality.QualityName,ParameterDirection.Input),
  684. new OracleParameter("in_remarks",OracleDbType.Varchar2,
  685. quality.Remarks,ParameterDirection.Input),
  686. new OracleParameter("in_salaryType",OracleDbType.Int32,
  687. quality.SalaryType,ParameterDirection.Input),
  688. new OracleParameter("in_auditStatus",OracleDbType.Int32,
  689. quality.AuditStatus,ParameterDirection.Input),
  690. new OracleParameter("in_beginAccountMonthStart",OracleDbType.Varchar2,
  691. quality.BeginAccountMonthStart,ParameterDirection.Input),
  692. new OracleParameter("in_beginAccountMonthEnd",OracleDbType.Varchar2,
  693. quality.BeginAccountMonthEnd,ParameterDirection.Input),
  694. new OracleParameter("in_endAccountMonthStart",OracleDbType.Varchar2,
  695. quality.EndAccountMonthStart,ParameterDirection.Input),
  696. new OracleParameter("in_endAccountMonthEnd",OracleDbType.Varchar2,
  697. quality.EndAccountMonthEnd,ParameterDirection.Input),
  698. new OracleParameter("In_AccountID",OracleDbType.Int32,
  699. userInfo.AccountID,ParameterDirection.Input),
  700. new OracleParameter("Out_Result",OracleDbType.RefCursor,
  701. ParameterDirection.Output),
  702. };
  703. DataSet dsSearchReport = con.ExecStoredProcedure("PRO_TAT_GetQualityData", DFParas);
  704. if (dsSearchReport.Tables.Count == 0 || dsSearchReport.Tables[0].Rows.Count == 0)
  705. {
  706. srEntity.Status = Constant.ServiceResultStatus.NoSearchResults;
  707. srEntity.Message = Messages.MSG_CMN_I002;
  708. }
  709. else
  710. {
  711. srEntity.Status = Constant.ServiceResultStatus.Success;
  712. }
  713. //srEntity.Result = dsSearchReport;
  714. srEntity.Data = dsSearchReport;
  715. return srEntity;
  716. }
  717. catch (Exception ex)
  718. {
  719. throw ex;
  720. }
  721. finally
  722. {
  723. if (con.ConnState == ConnectionState.Open)
  724. {
  725. con.Close();
  726. }
  727. }
  728. }
  729. /// <summary>
  730. /// 根据主信息ID获取明细信息
  731. /// </summary>
  732. /// <param name="qualityID">主信息ID</param>
  733. /// <returns>ServiceResultEntity数据集中两个Table,第一个是工种集合,第二个是全部信息</returns>
  734. public static ServiceResultEntity GetQualityDetailById(int qualityID)
  735. {
  736. ServiceResultEntity srEntity = new ServiceResultEntity();
  737. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  738. try
  739. {
  740. con.Open();
  741. OracleParameter[] DFParas = new OracleParameter[]{
  742. new OracleParameter("in_qualityId",OracleDbType.Int32,
  743. qualityID,ParameterDirection.Input),
  744. new OracleParameter("out_resultDetail",OracleDbType.RefCursor,
  745. ParameterDirection.Output),
  746. new OracleParameter("out_resultGoods",OracleDbType.RefCursor,
  747. ParameterDirection.Output),
  748. };
  749. DataSet dsSearchReport = con.ExecStoredProcedure("PRO_TAT_GetQualityDetailById", DFParas);
  750. if (dsSearchReport.Tables.Count == 0 || dsSearchReport.Tables[0].Rows.Count == 0)
  751. {
  752. srEntity.Status = Constant.ServiceResultStatus.NoSearchResults;
  753. srEntity.Message = Messages.MSG_CMN_I002;
  754. }
  755. else
  756. {
  757. srEntity.Status = Constant.ServiceResultStatus.Success;
  758. }
  759. // srEntity.Result = dsSearchReport;
  760. srEntity.Data = dsSearchReport;
  761. return srEntity;
  762. }
  763. catch (Exception ex)
  764. {
  765. throw ex;
  766. }
  767. finally
  768. {
  769. if (con.ConnState == ConnectionState.Open)
  770. {
  771. con.Close();
  772. }
  773. }
  774. }
  775. #endregion
  776. #region 进度考核
  777. /// <summary>
  778. /// 查询进度考核信息
  779. /// </summary>
  780. /// <param name="progres">查询条件实体</param>
  781. /// <param name="userInfo">基本用户信息</param>
  782. /// <returns>ServiceResultEntity查询结果实体</returns>
  783. public static ServiceResultEntity GetProgress(ProgressEntity progres, SUserInfo userInfo)
  784. {
  785. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  786. try
  787. {
  788. con.Open();
  789. OracleParameter[] DFParas = new OracleParameter[]{
  790. new OracleParameter("in_progressId",OracleDbType.Int32,
  791. progres.ProgressID,ParameterDirection.Input),
  792. new OracleParameter("in_progressName",OracleDbType.Varchar2,
  793. progres.ProgressName,ParameterDirection.Input),
  794. new OracleParameter("in_remarks",OracleDbType.Varchar2,
  795. progres.Remarks,ParameterDirection.Input),
  796. new OracleParameter("in_salaryType",OracleDbType.Int32,
  797. progres.SalaryType,ParameterDirection.Input),
  798. new OracleParameter("in_auditStatus",OracleDbType.Int32,
  799. progres.AuditStatus,ParameterDirection.Input),
  800. new OracleParameter("in_beginAccountMonthStart",OracleDbType.Varchar2,
  801. progres.BeginAccountMonthStart,ParameterDirection.Input),
  802. new OracleParameter("in_beginAccountMonthEnd",OracleDbType.Varchar2,
  803. progres.BeginAccountMonthEnd,ParameterDirection.Input),
  804. new OracleParameter("in_endAccountMonthStart",OracleDbType.Varchar2,
  805. progres.EndAccountMonthStart,ParameterDirection.Input),
  806. new OracleParameter("in_endAccountMonthEnd",OracleDbType.Varchar2,
  807. progres.EndAccountMonthEnd,ParameterDirection.Input),
  808. new OracleParameter("In_AccountID",OracleDbType.Int32,
  809. userInfo.AccountID,ParameterDirection.Input),
  810. new OracleParameter("Out_Result",OracleDbType.RefCursor,
  811. ParameterDirection.Output),
  812. };
  813. DataSet dsSearchReport = con.ExecStoredProcedure("PRO_TAT_GetProgressData", DFParas);
  814. ServiceResultEntity srEntity = new ServiceResultEntity();
  815. if (dsSearchReport.Tables.Count == 0 || dsSearchReport.Tables[0].Rows.Count == 0)
  816. {
  817. srEntity.Status = Constant.ServiceResultStatus.NoSearchResults;
  818. srEntity.Message = Messages.MSG_CMN_I002;
  819. }
  820. else
  821. {
  822. srEntity.Status = Constant.ServiceResultStatus.Success;
  823. }
  824. //srEntity.Result = dsSearchReport;
  825. srEntity.Data = dsSearchReport;
  826. return srEntity;
  827. }
  828. catch (Exception ex)
  829. {
  830. throw ex;
  831. }
  832. finally
  833. {
  834. if (con.ConnState == ConnectionState.Open)
  835. {
  836. con.Close();
  837. }
  838. }
  839. }
  840. /// <summary>
  841. /// 根据主信息ID获取明细信息
  842. /// </summary>
  843. /// <param name="progresID">主信息ID</param>
  844. /// <returns>ServiceResultEntity数据集中两个Table,第一个是工种集合,第二个是全部信息</returns>
  845. public static ServiceResultEntity GetProgressDetailById(int progressID)
  846. {
  847. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  848. try
  849. {
  850. con.Open();
  851. OracleParameter[] DFParas = new OracleParameter[]{
  852. new OracleParameter("in_progressID",OracleDbType.Int32,
  853. progressID,ParameterDirection.Input),
  854. new OracleParameter("Out_Result",OracleDbType.RefCursor,
  855. ParameterDirection.Output),
  856. };
  857. DataSet dsSearchReport = con.ExecStoredProcedure("PRO_TAT_GetProgressDetailById", DFParas);
  858. ServiceResultEntity srEntity = new ServiceResultEntity();
  859. if (dsSearchReport.Tables.Count == 0 || dsSearchReport.Tables[0].Rows.Count == 0)
  860. {
  861. srEntity.Status = Constant.ServiceResultStatus.NoSearchResults;
  862. srEntity.Message = Messages.MSG_CMN_I002;
  863. }
  864. else
  865. {
  866. srEntity.Status = Constant.ServiceResultStatus.Success;
  867. }
  868. //srEntity.Result = dsSearchReport;
  869. srEntity.Data = dsSearchReport;
  870. return srEntity;
  871. }
  872. catch (Exception ex)
  873. {
  874. throw ex;
  875. }
  876. finally
  877. {
  878. if (con.ConnState == ConnectionState.Open)
  879. {
  880. con.Close();
  881. }
  882. }
  883. }
  884. #endregion
  885. #region 行政考核
  886. /// <summary>
  887. /// 查询行政考核信息
  888. /// </summary>
  889. /// <param name="administration">查询条件实体</param>
  890. /// <param name="userInfo">基本用户信息</param>
  891. /// <returns>ServiceResultEntity查询结果实体</returns>
  892. public static ServiceResultEntity GetAdministration(AdministrationEntity administration, SUserInfo userInfo)
  893. {
  894. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  895. try
  896. {
  897. con.Open();
  898. OracleParameter[] DFParas = new OracleParameter[]{
  899. new OracleParameter("in_administrationID",OracleDbType.Int32,
  900. administration.AdministrationID,ParameterDirection.Input),
  901. new OracleParameter("in_administrationName",OracleDbType.Varchar2,
  902. administration.AdministrationName,ParameterDirection.Input),
  903. new OracleParameter("in_remarks",OracleDbType.Varchar2,
  904. administration.Remarks,ParameterDirection.Input),
  905. new OracleParameter("in_salaryType",OracleDbType.Int32,
  906. administration.SalaryType,ParameterDirection.Input),
  907. new OracleParameter("in_administrationType",OracleDbType.Int32,
  908. administration.AdministrationType,ParameterDirection.Input),
  909. new OracleParameter("in_auditStatus",OracleDbType.Int32,
  910. administration.AuditStatus,ParameterDirection.Input),
  911. new OracleParameter("in_beginAccountMonthStart",OracleDbType.Varchar2,
  912. administration.BeginAccountMonthStart,ParameterDirection.Input),
  913. new OracleParameter("in_beginAccountMonthEnd",OracleDbType.Varchar2,
  914. administration.BeginAccountMonthEnd,ParameterDirection.Input),
  915. new OracleParameter("in_endAccountMonthStart",OracleDbType.Varchar2,
  916. administration.EndAccountMonthStart,ParameterDirection.Input),
  917. new OracleParameter("in_endAccountMonthEnd",OracleDbType.Varchar2,
  918. administration.EndAccountMonthEnd,ParameterDirection.Input),
  919. new OracleParameter("in_accountID",OracleDbType.Int32,
  920. userInfo.AccountID,ParameterDirection.Input),
  921. new OracleParameter("out_result",OracleDbType.RefCursor,
  922. ParameterDirection.Output),
  923. };
  924. DataSet dsSearchReport = con.ExecStoredProcedure("PRO_TAT_GetAdministrationData", DFParas);
  925. ServiceResultEntity srEntity = new ServiceResultEntity();
  926. if (dsSearchReport.Tables.Count == 0 || dsSearchReport.Tables[0].Rows.Count == 0)
  927. {
  928. srEntity.Status = Constant.ServiceResultStatus.NoSearchResults;
  929. srEntity.Message = Messages.MSG_CMN_I002;
  930. }
  931. else
  932. {
  933. srEntity.Status = Constant.ServiceResultStatus.Success;
  934. }
  935. //srEntity.Result = dsSearchReport;
  936. srEntity.Data = dsSearchReport;
  937. return srEntity;
  938. }
  939. catch (Exception ex)
  940. {
  941. throw ex;
  942. }
  943. finally
  944. {
  945. if (con.ConnState == ConnectionState.Open)
  946. {
  947. con.Close();
  948. }
  949. }
  950. }
  951. /// <summary>
  952. /// 根据主信息ID获取明细信息
  953. /// </summary>
  954. /// <param name="administrationID">主信息ID</param>
  955. /// <returns>ServiceResultEntity数据集中两个Table,第一个是工种集合,第二个是全部信息</returns>
  956. public static ServiceResultEntity GetAdminDetailEntityById(int administrationID)
  957. {
  958. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  959. try
  960. {
  961. con.Open();
  962. OracleParameter[] DFParas = new OracleParameter[]{
  963. new OracleParameter("in_administrationID",OracleDbType.Int32,
  964. administrationID,ParameterDirection.Input),
  965. new OracleParameter("out_resultDetail",OracleDbType.RefCursor,
  966. ParameterDirection.Output),
  967. };
  968. DataSet dsSearchReport = con.ExecStoredProcedure("PRO_TAT_GetAdminDetailById", DFParas);
  969. ServiceResultEntity srEntity = new ServiceResultEntity();
  970. if (dsSearchReport.Tables.Count == 0 || dsSearchReport.Tables[0].Rows.Count == 0)
  971. {
  972. srEntity.Status = Constant.ServiceResultStatus.NoSearchResults;
  973. srEntity.Message = Messages.MSG_CMN_I002;
  974. }
  975. else
  976. {
  977. srEntity.Status = Constant.ServiceResultStatus.Success;
  978. }
  979. //srEntity.Result = dsSearchReport;
  980. srEntity.Data = dsSearchReport;
  981. return srEntity;
  982. }
  983. catch (Exception ex)
  984. {
  985. throw ex;
  986. }
  987. finally
  988. {
  989. if (con.ConnState == ConnectionState.Open)
  990. {
  991. con.Close();
  992. }
  993. }
  994. }
  995. #endregion
  996. /// <summary>
  997. /// 获取全部使用中的策略明细数据集
  998. /// </summary>
  999. /// <param name="SalaryTimeS">结算时间起</param>
  1000. /// <param name="userInfo">当前用户</param>
  1001. /// <returns>各策略明细集</returns>
  1002. public static DataSet GetAllUseStrategy(DateTime SalaryTimeS,SUserInfo userInfo)
  1003. {
  1004. IDBConnection con = ClsDbFactory.CreateDBConnection(DataBaseType.ORACLE, DataManager.ConnectionString);
  1005. try
  1006. {
  1007. con.Open();
  1008. OracleParameter[] DFParas = new OracleParameter[]{
  1009. new OracleParameter("In_SalaryTimeS",OracleDbType.Date,
  1010. SalaryTimeS.Date,ParameterDirection.Input),
  1011. new OracleParameter("In_AccountID",OracleDbType.Int32,
  1012. userInfo.AccountID,ParameterDirection.Input),
  1013. new OracleParameter("Out_BasicSalary",OracleDbType.RefCursor,
  1014. ParameterDirection.Output),
  1015. new OracleParameter("Out_Attendance",OracleDbType.RefCursor,
  1016. ParameterDirection.Output),
  1017. new OracleParameter("Out_WagesS",OracleDbType.RefCursor,
  1018. ParameterDirection.Output),
  1019. new OracleParameter("Out_WagesE",OracleDbType.RefCursor,
  1020. ParameterDirection.Output),
  1021. new OracleParameter("Out_DefectFine",OracleDbType.RefCursor,
  1022. ParameterDirection.Output),
  1023. new OracleParameter("Out_Administration",OracleDbType.RefCursor,
  1024. ParameterDirection.Output),
  1025. new OracleParameter("Out_Progress",OracleDbType.RefCursor,
  1026. ParameterDirection.Output),
  1027. new OracleParameter("Out_Managers",OracleDbType.RefCursor,
  1028. ParameterDirection.Output)
  1029. };
  1030. DataSet dsDefectFine = con.ExecStoredProcedure("PRO_TAT_GetAllUseStrategy", DFParas);
  1031. return dsDefectFine;
  1032. }
  1033. catch (Exception ex)
  1034. {
  1035. throw ex;
  1036. }
  1037. finally
  1038. {
  1039. if (con.ConnState == ConnectionState.Open)
  1040. {
  1041. con.Close();
  1042. }
  1043. }
  1044. }
  1045. }
  1046. }