UU跑腿标准版

T_Msg_NoticeInfo.cs 32KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737
  1. using HySoft.DBUtility;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Data;
  5. using System.Data.SqlClient;
  6. using System.Linq;
  7. using System.Text;
  8. using HySoft.Common;
  9. namespace HySoft.BaseCallCenter.DAL
  10. {
  11. /// <summary>
  12. /// 数据访问类:T_Msg_NoticeInfo
  13. /// </summary>
  14. public partial class T_Msg_NoticeInfo
  15. {
  16. public T_Msg_NoticeInfo()
  17. { }
  18. #region BasicMethod
  19. /// <summary>
  20. /// 得到最大ID
  21. /// </summary>
  22. public int GetMaxId()
  23. {
  24. return DbHelperSQL.GetMaxID("F_NoticeId", "T_Msg_NoticeInfo");
  25. }
  26. /// <summary>
  27. /// 是否存在该记录
  28. /// </summary>
  29. public bool Exists(int F_NoticeId)
  30. {
  31. StringBuilder strSql = new StringBuilder();
  32. strSql.Append("select count(1) from T_Msg_NoticeInfo");
  33. strSql.Append(" where F_NoticeId=@F_NoticeId");
  34. SqlParameter[] parameters = {
  35. new SqlParameter("@F_NoticeId", SqlDbType.Int,4)
  36. };
  37. parameters[0].Value = F_NoticeId;
  38. return DbHelperSQL.Exists(strSql.ToString(), parameters);
  39. }
  40. /// <summary>
  41. /// 增加一条数据
  42. /// </summary>
  43. public int Add(Model.T_Msg_NoticeInfo model)
  44. {
  45. StringBuilder strSql = new StringBuilder();
  46. strSql.Append("insert into T_Msg_NoticeInfo(");
  47. strSql.Append("F_CreateOn,F_CreateBy,F_CreateName,F_Code,F_Title,F_Resume,F_Content,F_ReceiveInfo,F_TypeId,F_TypeName,F_CustomerId,F_ModifyBy,F_ModifyName,F_ModifyDate,F_State)");
  48. strSql.Append(" values (");
  49. strSql.Append("@F_CreateOn,@F_CreateBy,@F_CreateName,@F_Code,@F_Title,@F_Resume,@F_Content,@F_ReceiveInfo,@F_TypeId,@F_TypeName,@F_CustomerId,@F_ModifyBy,@F_ModifyName,@F_ModifyDate,@F_State)");
  50. strSql.Append(";select @@IDENTITY");
  51. SqlParameter[] parameters = {
  52. new SqlParameter("@F_CreateOn", SqlDbType.DateTime),
  53. new SqlParameter("@F_CreateBy", SqlDbType.Int,4),
  54. new SqlParameter("@F_CreateName", SqlDbType.NVarChar,50),
  55. new SqlParameter("@F_Code", SqlDbType.NVarChar,50),
  56. new SqlParameter("@F_Title", SqlDbType.NVarChar,100),
  57. new SqlParameter("@F_Resume", SqlDbType.NVarChar,800),
  58. new SqlParameter("@F_Content", SqlDbType.Text),
  59. new SqlParameter("@F_ReceiveInfo", SqlDbType.NVarChar,500),
  60. new SqlParameter("@F_TypeId", SqlDbType.Int,4),
  61. new SqlParameter("@F_TypeName", SqlDbType.NVarChar,50),
  62. new SqlParameter("@F_CustomerId", SqlDbType.Int,4),
  63. new SqlParameter("@F_ModifyBy", SqlDbType.Int,4),
  64. new SqlParameter("@F_ModifyName", SqlDbType.NVarChar,50),
  65. new SqlParameter("@F_ModifyDate", SqlDbType.DateTime),
  66. new SqlParameter("@F_State", SqlDbType.SmallInt,2)};
  67. parameters[0].Value = model.F_CreateOn;
  68. parameters[1].Value = model.F_CreateBy;
  69. parameters[2].Value = model.F_CreateName;
  70. parameters[3].Value = model.F_Code;
  71. parameters[4].Value = model.F_Title;
  72. parameters[5].Value = model.F_Resume;
  73. parameters[6].Value = model.F_Content;
  74. parameters[7].Value = model.F_ReceiveInfo;
  75. parameters[8].Value = model.F_TypeId;
  76. parameters[9].Value = model.F_TypeName;
  77. parameters[10].Value = model.F_CustomerId;
  78. parameters[11].Value = model.F_ModifyBy;
  79. parameters[12].Value = model.F_ModifyName;
  80. parameters[13].Value = model.F_ModifyDate;
  81. parameters[14].Value = model.F_State;
  82. object obj = DbHelperSQL.GetSingle(strSql.ToString(), parameters);
  83. if (obj == null)
  84. {
  85. return 0;
  86. }
  87. else
  88. {
  89. return Convert.ToInt32(obj);
  90. }
  91. }
  92. /// <summary>
  93. /// 更新一条数据
  94. /// </summary>
  95. public bool Update(Model.T_Msg_NoticeInfo model)
  96. {
  97. StringBuilder strSql = new StringBuilder();
  98. strSql.Append("update T_Msg_NoticeInfo set ");
  99. strSql.Append("F_CreateOn=@F_CreateOn,");
  100. strSql.Append("F_CreateBy=@F_CreateBy,");
  101. strSql.Append("F_CreateName=@F_CreateName,");
  102. strSql.Append("F_Code=@F_Code,");
  103. strSql.Append("F_Title=@F_Title,");
  104. strSql.Append("F_Resume=@F_Resume,");
  105. strSql.Append("F_Content=@F_Content,");
  106. strSql.Append("F_ReceiveInfo=@F_ReceiveInfo,");
  107. strSql.Append("F_TypeId=@F_TypeId,");
  108. strSql.Append("F_TypeName=@F_TypeName,");
  109. strSql.Append("F_CustomerId=@F_CustomerId,");
  110. strSql.Append("F_ModifyBy=@F_ModifyBy,");
  111. strSql.Append("F_ModifyName=@F_ModifyName,");
  112. strSql.Append("F_ModifyDate=@F_ModifyDate,");
  113. strSql.Append("F_State=@F_State");
  114. strSql.Append(" where F_NoticeId=@F_NoticeId");
  115. SqlParameter[] parameters = {
  116. new SqlParameter("@F_CreateOn", SqlDbType.DateTime),
  117. new SqlParameter("@F_CreateBy", SqlDbType.Int,4),
  118. new SqlParameter("@F_CreateName", SqlDbType.NVarChar,50),
  119. new SqlParameter("@F_Code", SqlDbType.NVarChar,50),
  120. new SqlParameter("@F_Title", SqlDbType.NVarChar,100),
  121. new SqlParameter("@F_Resume", SqlDbType.NVarChar,800),
  122. new SqlParameter("@F_Content", SqlDbType.Text),
  123. new SqlParameter("@F_ReceiveInfo", SqlDbType.NVarChar,500),
  124. new SqlParameter("@F_TypeId", SqlDbType.Int,4),
  125. new SqlParameter("@F_TypeName", SqlDbType.NVarChar,50),
  126. new SqlParameter("@F_CustomerId", SqlDbType.Int,4),
  127. new SqlParameter("@F_ModifyBy", SqlDbType.Int,4),
  128. new SqlParameter("@F_ModifyName", SqlDbType.NVarChar,50),
  129. new SqlParameter("@F_ModifyDate", SqlDbType.DateTime),
  130. new SqlParameter("@F_State", SqlDbType.SmallInt,2),
  131. new SqlParameter("@F_NoticeId", SqlDbType.Int,4)};
  132. parameters[0].Value = model.F_CreateOn;
  133. parameters[1].Value = model.F_CreateBy;
  134. parameters[2].Value = model.F_CreateName;
  135. parameters[3].Value = model.F_Code;
  136. parameters[4].Value = model.F_Title;
  137. parameters[5].Value = model.F_Resume;
  138. parameters[6].Value = model.F_Content;
  139. parameters[7].Value = model.F_ReceiveInfo;
  140. parameters[8].Value = model.F_TypeId;
  141. parameters[9].Value = model.F_TypeName;
  142. parameters[10].Value = model.F_CustomerId;
  143. parameters[11].Value = model.F_ModifyBy;
  144. parameters[12].Value = model.F_ModifyName;
  145. parameters[13].Value = model.F_ModifyDate;
  146. parameters[14].Value = model.F_State;
  147. parameters[15].Value = model.F_NoticeId;
  148. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  149. if (rows > 0)
  150. {
  151. return true;
  152. }
  153. else
  154. {
  155. return false;
  156. }
  157. }
  158. /// <summary>
  159. /// 删除一条数据
  160. /// </summary>
  161. public bool Delete(int F_NoticeId)
  162. {
  163. StringBuilder strSql = new StringBuilder();
  164. strSql.Append("delete from T_Msg_NoticeInfo ");
  165. strSql.Append(" where F_NoticeId=@F_NoticeId");
  166. SqlParameter[] parameters = {
  167. new SqlParameter("@F_NoticeId", SqlDbType.Int,4)
  168. };
  169. parameters[0].Value = F_NoticeId;
  170. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  171. if (rows > 0)
  172. {
  173. return true;
  174. }
  175. else
  176. {
  177. return false;
  178. }
  179. }
  180. /// <summary>
  181. /// 批量删除数据
  182. /// </summary>
  183. public bool DeleteList(string F_NoticeIdlist)
  184. {
  185. StringBuilder strSql = new StringBuilder();
  186. strSql.Append("delete from T_Msg_NoticeInfo ");
  187. strSql.Append(" where F_NoticeId in (" + F_NoticeIdlist + ") ");
  188. int rows = DbHelperSQL.ExecuteSql(strSql.ToString());
  189. if (rows > 0)
  190. {
  191. return true;
  192. }
  193. else
  194. {
  195. return false;
  196. }
  197. }
  198. /// <summary>
  199. /// 得到一个对象实体
  200. /// </summary>
  201. public Model.T_Msg_NoticeInfo GetModel(int F_NoticeId)
  202. {
  203. StringBuilder strSql = new StringBuilder();
  204. strSql.Append("select top 1 F_NoticeId,F_CreateOn,F_CreateBy,F_CreateName,F_Code,F_Title,F_Resume,F_Content,F_ReceiveInfo,F_TypeId,F_TypeName,F_CustomerId,F_ModifyBy,F_ModifyName,F_ModifyDate,F_State from T_Msg_NoticeInfo ");
  205. strSql.Append(" where F_NoticeId=@F_NoticeId");
  206. SqlParameter[] parameters = {
  207. new SqlParameter("@F_NoticeId", SqlDbType.Int,4)
  208. };
  209. parameters[0].Value = F_NoticeId;
  210. Model.T_Msg_NoticeInfo model = new Model.T_Msg_NoticeInfo();
  211. DataSet ds = DbHelperSQL.Query(strSql.ToString(), parameters);
  212. if (ds.Tables[0].Rows.Count > 0)
  213. {
  214. return DataRowToModel(ds.Tables[0].Rows[0]);
  215. }
  216. else
  217. {
  218. return null;
  219. }
  220. }
  221. /// <summary>
  222. /// 得到一个对象实体
  223. /// </summary>
  224. public Model.T_Msg_NoticeInfo DataRowToModel(DataRow row)
  225. {
  226. Model.T_Msg_NoticeInfo model = new Model.T_Msg_NoticeInfo();
  227. if (row != null)
  228. {
  229. if (row["F_NoticeId"] != null && row["F_NoticeId"].ToString() != "")
  230. {
  231. model.F_NoticeId = int.Parse(row["F_NoticeId"].ToString());
  232. }
  233. if (row["F_CreateOn"] != null && row["F_CreateOn"].ToString() != "")
  234. {
  235. model.F_CreateOn = DateTime.Parse(row["F_CreateOn"].ToString());
  236. }
  237. if (row["F_CreateBy"] != null && row["F_CreateBy"].ToString() != "")
  238. {
  239. model.F_CreateBy = int.Parse(row["F_CreateBy"].ToString());
  240. }
  241. if (row["F_CreateName"] != null)
  242. {
  243. model.F_CreateName = row["F_CreateName"].ToString();
  244. }
  245. if (row["F_Code"] != null)
  246. {
  247. model.F_Code = row["F_Code"].ToString();
  248. }
  249. if (row["F_Title"] != null)
  250. {
  251. model.F_Title = row["F_Title"].ToString();
  252. }
  253. if (row["F_Resume"] != null)
  254. {
  255. model.F_Resume = row["F_Resume"].ToString();
  256. }
  257. if (row["F_Content"] != null)
  258. {
  259. model.F_Content = row["F_Content"].ToString();
  260. }
  261. if (row["F_ReceiveInfo"] != null)
  262. {
  263. model.F_ReceiveInfo = row["F_ReceiveInfo"].ToString();
  264. }
  265. if (row["F_TypeId"] != null && row["F_TypeId"].ToString() != "")
  266. {
  267. model.F_TypeId = int.Parse(row["F_TypeId"].ToString());
  268. }
  269. if (row["F_TypeName"] != null)
  270. {
  271. model.F_TypeName = row["F_TypeName"].ToString();
  272. }
  273. if (row["F_CustomerId"] != null && row["F_CustomerId"].ToString() != "")
  274. {
  275. model.F_CustomerId = int.Parse(row["F_CustomerId"].ToString());
  276. }
  277. if (row["F_ModifyBy"] != null && row["F_ModifyBy"].ToString() != "")
  278. {
  279. model.F_ModifyBy = int.Parse(row["F_ModifyBy"].ToString());
  280. }
  281. if (row["F_ModifyName"] != null)
  282. {
  283. model.F_ModifyName = row["F_ModifyName"].ToString();
  284. }
  285. if (row["F_ModifyDate"] != null && row["F_ModifyDate"].ToString() != "")
  286. {
  287. model.F_ModifyDate = DateTime.Parse(row["F_ModifyDate"].ToString());
  288. }
  289. if (row["F_State"] != null && row["F_State"].ToString() != "")
  290. {
  291. model.F_State = int.Parse(row["F_State"].ToString());
  292. }
  293. }
  294. return model;
  295. }
  296. /// <summary>
  297. /// 获得数据列表
  298. /// </summary>
  299. public DataSet GetList(string strWhere)
  300. {
  301. StringBuilder strSql = new StringBuilder();
  302. strSql.Append("select F_NoticeId,F_CreateOn,F_CreateBy,F_CreateName,F_Code,F_Title,F_Resume,F_Content,F_ReceiveInfo,F_TypeId,F_TypeName,F_CustomerId,F_ModifyBy,F_ModifyName,F_ModifyDate,F_State ");
  303. strSql.Append(" FROM T_Msg_NoticeInfo ");
  304. if (strWhere.Trim() != "")
  305. {
  306. strSql.Append(" where " + strWhere);
  307. }
  308. return DbHelperSQL.Query(strSql.ToString());
  309. }
  310. /// <summary>
  311. /// 获得前几行数据
  312. /// </summary>
  313. public DataSet GetList(int Top, string strWhere, string filedOrder)
  314. {
  315. StringBuilder strSql = new StringBuilder();
  316. strSql.Append("select ");
  317. if (Top > 0)
  318. {
  319. strSql.Append(" top " + Top.ToString());
  320. }
  321. strSql.Append(" F_NoticeId,F_CreateOn,F_CreateBy,F_CreateName,F_Code,F_Title,F_Resume,F_Content,F_ReceiveInfo,F_TypeId,F_TypeName,F_CustomerId,F_ModifyBy,F_ModifyName,F_ModifyDate,F_State ");
  322. strSql.Append(" FROM T_Msg_NoticeInfo ");
  323. if (strWhere.Trim() != "")
  324. {
  325. strSql.Append(" where " + strWhere);
  326. }
  327. strSql.Append(" order by " + filedOrder);
  328. return DbHelperSQL.Query(strSql.ToString());
  329. }
  330. /// <summary>
  331. /// 获取记录总数
  332. /// </summary>
  333. public int GetRecordCount(string strWhere)
  334. {
  335. StringBuilder strSql = new StringBuilder();
  336. strSql.Append("select count(1) FROM T_Msg_NoticeInfo ");
  337. if (strWhere.Trim() != "")
  338. {
  339. strSql.Append(" where " + strWhere);
  340. }
  341. object obj = DbHelperSQL.GetSingle(strSql.ToString());
  342. if (obj == null)
  343. {
  344. return 0;
  345. }
  346. else
  347. {
  348. return Convert.ToInt32(obj);
  349. }
  350. }
  351. /// <summary>
  352. /// 分页获取数据列表
  353. /// </summary>
  354. public DataSet GetListByPage(string strWhere, string orderby, int startIndex, int endIndex)
  355. {
  356. StringBuilder strSql = new StringBuilder();
  357. strSql.Append("SELECT * FROM ( ");
  358. strSql.Append(" SELECT ROW_NUMBER() OVER (");
  359. if (!string.IsNullOrEmpty(orderby.Trim()))
  360. {
  361. strSql.Append("order by T." + orderby);
  362. }
  363. else
  364. {
  365. strSql.Append("order by T.F_NoticeId desc");
  366. }
  367. strSql.Append(")AS Row, T.* from T_Msg_NoticeInfo T ");
  368. if (!string.IsNullOrEmpty(strWhere.Trim()))
  369. {
  370. strSql.Append(" WHERE " + strWhere);
  371. }
  372. strSql.Append(" ) TT");
  373. strSql.AppendFormat(" WHERE TT.Row between {0} and {1}", startIndex, endIndex);
  374. return DbHelperSQL.Query(strSql.ToString());
  375. }
  376. /*
  377. /// <summary>
  378. /// 分页获取数据列表
  379. /// </summary>
  380. public DataSet GetList(int PageSize,int PageIndex,string strWhere)
  381. {
  382. SqlParameter[] parameters = {
  383. new SqlParameter("@tblName", SqlDbType.VarChar, 255),
  384. new SqlParameter("@fldName", SqlDbType.VarChar, 255),
  385. new SqlParameter("@PageSize", SqlDbType.Int),
  386. new SqlParameter("@PageIndex", SqlDbType.Int),
  387. new SqlParameter("@IsReCount", SqlDbType.Bit),
  388. new SqlParameter("@OrderType", SqlDbType.Bit),
  389. new SqlParameter("@strWhere", SqlDbType.VarChar,1000),
  390. };
  391. parameters[0].Value = "T_Msg_NoticeInfo";
  392. parameters[1].Value = "F_NoticeId";
  393. parameters[2].Value = PageSize;
  394. parameters[3].Value = PageIndex;
  395. parameters[4].Value = 0;
  396. parameters[5].Value = 0;
  397. parameters[6].Value = strWhere;
  398. return DbHelperSQL.RunProcedure("UP_GetRecordByPage",parameters,"ds");
  399. }*/
  400. #endregion BasicMethod
  401. #region ExtensionMethod
  402. /// <summary>
  403. /// 使用事务,执行多条sql语句,实现更新公告信息
  404. /// </summary>
  405. /// <param name="model"></param>
  406. /// <returns></returns>
  407. public bool UpdateBySqlTran(Model.T_Msg_NoticeInfo model)
  408. {
  409. StringBuilder strSql = new StringBuilder();
  410. List<CommandInfo> sqllist = new List<CommandInfo>();
  411. try
  412. {
  413. #region 更新公告信息
  414. strSql.Append("update T_Msg_NoticeInfo set ");
  415. strSql.Append("F_Title=@F_Title,");
  416. strSql.Append("F_Content=@F_Content,");
  417. strSql.Append("F_ReceiveInfo=@F_ReceiveInfo,");
  418. strSql.Append("F_ModifyBy=@F_ModifyBy,");
  419. strSql.Append("F_ModifyName=@F_ModifyName,");
  420. strSql.Append("F_ModifyDate=@F_ModifyDate");
  421. strSql.Append(" where F_NoticeId=@F_NoticeId");
  422. SqlParameter[] parameters = {
  423. new SqlParameter("@F_Title", SqlDbType.NVarChar,100),
  424. new SqlParameter("@F_Content", SqlDbType.Text),
  425. new SqlParameter("@F_ReceiveInfo", SqlDbType.NVarChar,500),
  426. new SqlParameter("@F_ModifyBy", SqlDbType.Int,4),
  427. new SqlParameter("@F_ModifyName", SqlDbType.NVarChar,50),
  428. new SqlParameter("@F_ModifyDate", SqlDbType.DateTime),
  429. new SqlParameter("@F_NoticeId", SqlDbType.Int,4)};
  430. parameters[0].Value = model.F_Title;
  431. parameters[1].Value = model.F_Content;
  432. parameters[2].Value = model.F_ReceiveInfo;
  433. parameters[3].Value = model.F_ModifyBy;
  434. parameters[4].Value = model.F_ModifyName;
  435. parameters[5].Value = model.F_ModifyDate;
  436. parameters[6].Value = model.F_NoticeId;
  437. CommandInfo cmd = new CommandInfo(strSql.ToString(), parameters);
  438. sqllist.Add(cmd);
  439. #endregion
  440. #region 更新附件
  441. if (model.NoticeFilesList != null)
  442. {
  443. #region 删除附件
  444. StringBuilder sqlStr1 = new StringBuilder();
  445. var idstr = model.NoticeFilesList.Select(a => a.F_Id).ToList().hebingStr(",");
  446. sqlStr1.Append("delete T_Msg_NoticeFiles where F_Id not in (" + idstr + ") and F_NoticeId=@F_NoticeId");
  447. SqlParameter[] parameters1 ={
  448. new SqlParameter("@F_NoticeId",SqlDbType.Int,4)
  449. };
  450. parameters1[0].Value = model.F_NoticeId;
  451. cmd = new CommandInfo(sqlStr1.ToString(), parameters1);
  452. sqllist.Add(cmd);
  453. #endregion
  454. #region 修改或者添加附件
  455. foreach (Model.T_Msg_NoticeFiles item in model.NoticeFilesList)
  456. {
  457. if (item.F_Id > 0)
  458. {
  459. //修改
  460. StringBuilder strSql2 = new StringBuilder();
  461. strSql2.Append("update T_Msg_NoticeFiles set ");
  462. strSql2.Append("F_FileName=@F_FileName,");
  463. strSql2.Append("F_Format=@F_Format,");
  464. strSql2.Append("F_Size=@F_Size,");
  465. strSql2.Append("F_FileUrl=@F_FileUrl");
  466. strSql2.Append(" where F_Id=@F_Id");
  467. SqlParameter[] parameters2 = {
  468. new SqlParameter("@F_FileName", SqlDbType.NVarChar,50),
  469. new SqlParameter("@F_Format", SqlDbType.NVarChar,50),
  470. new SqlParameter("@F_Size", SqlDbType.Int,4),
  471. new SqlParameter("@F_FileUrl", SqlDbType.NVarChar,200),
  472. new SqlParameter("@F_Id", SqlDbType.Int,4)
  473. };
  474. parameters2[0].Value = item.F_FileName;
  475. parameters2[1].Value = item.F_Format;
  476. parameters2[2].Value = item.F_Size;
  477. parameters2[3].Value = item.F_FileUrl;
  478. parameters2[4].Value = item.F_Id;
  479. cmd = new CommandInfo(strSql2.ToString(), parameters2);
  480. sqllist.Add(cmd);
  481. }
  482. else
  483. {
  484. //添加
  485. StringBuilder strSql3 = new StringBuilder();
  486. strSql3.Append("insert into T_Msg_NoticeFiles(");
  487. strSql3.Append("F_NoticeId,F_ModelCode,F_FileName,F_Format,F_Size,F_FileUrl,F_CreateId,F_CreateName,F_CreateDate)");
  488. strSql3.Append(" values (");
  489. strSql3.Append("@F_NoticeId,@F_ModelCode,@F_FileName,@F_Format,@F_Size,@F_FileUrl,@F_CreateId,@F_CreateName,@F_CreateDate)");
  490. strSql3.Append(";select @@IDENTITY");
  491. SqlParameter[] parameters3 = {
  492. new SqlParameter("@F_NoticeId", SqlDbType.Int,4),
  493. new SqlParameter("@F_ModelCode", SqlDbType.NVarChar,50),
  494. new SqlParameter("@F_FileName", SqlDbType.NVarChar,50),
  495. new SqlParameter("@F_Format", SqlDbType.NVarChar,50),
  496. new SqlParameter("@F_Size", SqlDbType.Int,4),
  497. new SqlParameter("@F_FileUrl", SqlDbType.NVarChar,200),
  498. new SqlParameter("@F_CreateId", SqlDbType.Int,4),
  499. new SqlParameter("@F_CreateName", SqlDbType.NVarChar,50),
  500. new SqlParameter("@F_CreateDate", SqlDbType.DateTime)};
  501. parameters3[0].Value = model.F_NoticeId;
  502. parameters3[1].Value = item.F_ModelCode;
  503. parameters3[2].Value = item.F_FileName;
  504. parameters3[3].Value = item.F_Format;
  505. parameters3[4].Value = item.F_Size;
  506. parameters3[5].Value = item.F_FileUrl;
  507. parameters3[6].Value = item.F_CreateId;
  508. parameters3[7].Value = item.F_CreateName;
  509. parameters3[8].Value = item.F_CreateDate;
  510. cmd = new CommandInfo(strSql3.ToString(), parameters3);
  511. sqllist.Add(cmd);
  512. }
  513. }
  514. #endregion
  515. }
  516. else
  517. {
  518. #region 删除附件
  519. StringBuilder strsql4 = new StringBuilder();
  520. strsql4.Append("delete T_Msg_NoticeFiles where");
  521. strsql4.Append(" F_NoticeId=@F_NoticeId");
  522. SqlParameter[] parameters4 = {
  523. new SqlParameter("@F_NoticeId",SqlDbType.Int,4)};
  524. parameters4[0].Value = model.F_NoticeId;
  525. cmd = new CommandInfo(strsql4.ToString(), parameters4);
  526. sqllist.Add(cmd);
  527. #endregion
  528. }
  529. #endregion
  530. #region 修改接收公告的用户信息
  531. #region 删除现有用户信息
  532. StringBuilder sqlStr5 = new StringBuilder();
  533. sqlStr5.Append("delete T_Msg_NoticeUsers where F_NoticeId=@F_NoticeId");
  534. SqlParameter[] parameters5 ={
  535. new SqlParameter("@F_NoticeId",SqlDbType.Int,4)
  536. };
  537. parameters5[0].Value = model.F_NoticeId;
  538. cmd = new CommandInfo(sqlStr5.ToString(), parameters5);
  539. sqllist.Add(cmd);
  540. #endregion
  541. #region 重新添加用户
  542. if (model.NoticeUsersList != null)
  543. {
  544. StringBuilder strSql6;
  545. foreach (Model.T_Msg_NoticeUsers item in model.NoticeUsersList)
  546. {
  547. strSql6 = new StringBuilder();
  548. strSql6.Append("insert into T_Msg_NoticeUsers(");
  549. strSql6.Append("F_NoticeId,F_UserId,F_UserName,F_State)");
  550. strSql6.Append(" values (");
  551. strSql6.Append("@F_NoticeId,@F_UserId,@F_UserName,@F_State)");
  552. SqlParameter[] parameters6 = {
  553. new SqlParameter("@F_NoticeId", SqlDbType.Int,4),
  554. new SqlParameter("@F_UserId", SqlDbType.Int,4),
  555. new SqlParameter("@F_UserName", SqlDbType.NVarChar,50),
  556. new SqlParameter("@F_State", SqlDbType.SmallInt,2)
  557. };
  558. parameters6[0].Value = model.F_NoticeId;
  559. parameters6[1].Value = item.F_UserId;
  560. parameters6[2].Value = item.F_UserName;
  561. parameters6[3].Value = item.F_State;
  562. cmd = new CommandInfo(strSql6.ToString(), parameters6);
  563. sqllist.Add(cmd);
  564. }
  565. }
  566. #endregion
  567. #endregion
  568. DbHelperSQL.ExecuteSqlTranWithIndentity(sqllist);
  569. return true;
  570. }
  571. catch (Exception ex)
  572. {
  573. return false;
  574. }
  575. }
  576. /// <summary>
  577. /// 使用事务,执行多条sql语句,实现添加公告信息
  578. /// </summary>
  579. /// <param name="model"></param>
  580. /// <returns></returns>
  581. public bool AddBySqlTran(Model.T_Msg_NoticeInfo model)
  582. {
  583. List<CommandInfo> sqllist = new List<CommandInfo>();
  584. StringBuilder strSql = new StringBuilder();
  585. strSql.Append("insert into T_Msg_NoticeInfo(");
  586. strSql.Append("F_CreateOn,F_CreateBy,F_CreateName,F_Title,F_Content,F_ReceiveInfo)");
  587. strSql.Append(" values (");
  588. strSql.Append("@F_CreateOn,@F_CreateBy,@F_CreateName,@F_Title,@F_Content,@F_ReceiveInfo)");
  589. strSql.Append(";set @ReturnValue= @@IDENTITY");
  590. SqlParameter[] parameters = {
  591. new SqlParameter("@F_CreateOn", SqlDbType.DateTime),
  592. new SqlParameter("@F_CreateBy", SqlDbType.Int,4),
  593. new SqlParameter("@F_CreateName", SqlDbType.NVarChar,50),
  594. new SqlParameter("@F_Title", SqlDbType.NVarChar,100),
  595. new SqlParameter("@F_Content", SqlDbType.Text),
  596. new SqlParameter("@F_ReceiveInfo", SqlDbType.NVarChar,500),
  597. new SqlParameter("@ReturnValue",SqlDbType.Int)
  598. };
  599. parameters[0].Value = model.F_CreateOn;
  600. parameters[1].Value = model.F_CreateBy;
  601. parameters[2].Value = model.F_CreateName;
  602. parameters[3].Value = model.F_Title;
  603. parameters[4].Value = model.F_Content;
  604. parameters[5].Value = model.F_ReceiveInfo;
  605. parameters[6].Direction = ParameterDirection.Output;
  606. CommandInfo cmd = new CommandInfo(strSql.ToString(), parameters);
  607. sqllist.Add(cmd);
  608. if (model.NoticeFilesList != null)
  609. {
  610. StringBuilder strSql1;
  611. foreach (Model.T_Msg_NoticeFiles item in model.NoticeFilesList)
  612. {
  613. strSql1 = new StringBuilder();
  614. strSql1.Append("insert into T_Msg_NoticeFiles(");
  615. strSql1.Append("F_NoticeId,F_ModelCode,F_FileName,F_Format,F_Size,F_FileUrl,F_CreateId,F_CreateName,F_CreateDate)");
  616. strSql1.Append(" values (");
  617. strSql1.Append("@F_NoticeId,@F_ModelCode,@F_FileName,@F_Format,@F_Size,@F_FileUrl,@F_CreateId,@F_CreateName,@F_CreateDate);");
  618. SqlParameter[] parameters1 = {
  619. new SqlParameter("@F_NoticeId", SqlDbType.Int,4),
  620. new SqlParameter("@F_ModelCode", SqlDbType.NVarChar,50),
  621. new SqlParameter("@F_FileName", SqlDbType.NVarChar,50),
  622. new SqlParameter("@F_Format", SqlDbType.NVarChar,50),
  623. new SqlParameter("@F_Size", SqlDbType.Int,4),
  624. new SqlParameter("@F_FileUrl", SqlDbType.NVarChar,200),
  625. new SqlParameter("@F_CreateId", SqlDbType.Int,4),
  626. new SqlParameter("@F_CreateName", SqlDbType.NVarChar,50),
  627. new SqlParameter("@F_CreateDate", SqlDbType.DateTime)};
  628. parameters1[0].Direction = ParameterDirection.InputOutput;
  629. parameters1[1].Value = item.F_ModelCode;
  630. parameters1[2].Value = item.F_FileName;
  631. parameters1[3].Value = item.F_Format;
  632. parameters1[4].Value = item.F_Size;
  633. parameters1[5].Value = item.F_FileUrl;
  634. parameters1[6].Value = item.F_CreateId;
  635. parameters1[7].Value = item.F_CreateName;
  636. parameters1[8].Value = item.F_CreateDate;
  637. cmd = new CommandInfo(strSql1.ToString(), parameters1);
  638. sqllist.Add(cmd);
  639. }
  640. }
  641. if (model.NoticeUsersList != null)
  642. {
  643. StringBuilder strSql2;
  644. foreach (Model.T_Msg_NoticeUsers item in model.NoticeUsersList)
  645. {
  646. strSql2 = new StringBuilder();
  647. strSql2.Append("insert into T_Msg_NoticeUsers(");
  648. strSql2.Append("F_NoticeId,F_UserId,F_UserName,F_State)");
  649. strSql2.Append(" values (");
  650. strSql2.Append("@F_NoticeId,@F_UserId,@F_UserName,@F_State)");
  651. SqlParameter[] parameters2 = {
  652. new SqlParameter("@F_NoticeId", SqlDbType.Int,4),
  653. new SqlParameter("@F_UserId", SqlDbType.Int,4),
  654. new SqlParameter("@F_UserName", SqlDbType.NVarChar,50),
  655. new SqlParameter("@F_State", SqlDbType.SmallInt,2)
  656. };
  657. parameters2[0].Direction = ParameterDirection.InputOutput;
  658. parameters2[1].Value = item.F_UserId;
  659. parameters2[2].Value = item.F_UserName;
  660. parameters2[3].Value = item.F_State;
  661. cmd = new CommandInfo(strSql2.ToString(), parameters2);
  662. sqllist.Add(cmd);
  663. }
  664. }
  665. DbHelperSQL.ExecuteSqlTranWithIndentity(sqllist);
  666. return true;
  667. }
  668. /// <summary>
  669. /// 更新公告表中阅读人数,更新公告用户阅览记录表中记录
  670. /// </summary>
  671. /// <param name="NoticeId"></param>
  672. /// <param name="UserId"></param>
  673. /// <returns></returns>
  674. public bool UpdateViewState(int NoticeId, int UserId)
  675. {
  676. int rowsAffected = 0;
  677. SqlParameter[] parameters = {
  678. new SqlParameter("@NoticeId", SqlDbType.Int,4),
  679. new SqlParameter("@UserId", SqlDbType.Int,4)
  680. };
  681. parameters[0].Value = NoticeId;
  682. parameters[1].Value = UserId;
  683. return DbHelperSQL.RunProcedure("UP_MSG_ViewState", parameters, out rowsAffected) > 0;
  684. }
  685. #endregion ExtensionMethod
  686. }
  687. }