UU跑腿标准版

T_Call_CallRecords.cs 41KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998
  1. 
  2. using System;
  3. using System.Data;
  4. using System.Text;
  5. using System.Data.SqlClient;
  6. using HySoft.DBUtility;//Please add references
  7. namespace HySoft.BaseCallCenter.DAL
  8. {
  9. /// <summary>
  10. /// 数据访问类:T_Call_CallRecords
  11. /// </summary>
  12. public partial class T_Call_CallRecords
  13. {
  14. public T_Call_CallRecords()
  15. { }
  16. #region BasicMethod
  17. /// <summary>
  18. /// 得到最大ID
  19. /// </summary>
  20. public int GetMaxId()
  21. {
  22. return DbHelperSQL.GetMaxID("CallRecordsId", "T_Call_CallRecords");
  23. }
  24. /// <summary>
  25. /// 是否存在该记录
  26. /// </summary>
  27. public bool Exists(int CallRecordsId)
  28. {
  29. StringBuilder strSql = new StringBuilder();
  30. strSql.Append("select count(1) from T_Call_CallRecords");
  31. strSql.Append(" where CallRecordsId=@CallRecordsId");
  32. SqlParameter[] parameters = {
  33. new SqlParameter("@CallRecordsId", SqlDbType.Int,4)
  34. };
  35. parameters[0].Value = CallRecordsId;
  36. return DbHelperSQL.Exists(strSql.ToString(), parameters);
  37. }
  38. /// <summary>
  39. /// 增加一条数据
  40. /// </summary>
  41. public int Add(HySoft.BaseCallCenter.Model.T_Call_CallRecords model)
  42. {
  43. StringBuilder strSql = new StringBuilder();
  44. strSql.Append("insert into T_Call_CallRecords(");
  45. strSql.Append("CallId,CallNumber,CusId,CusCode,CallType,CallState,DealType,BeginTime,IvrStartTime,IvrEndTime,RingStartTime,RingEndTime,TalkStartTime,TalkEndTime,EndTime,LongTime,IvrLongTime,RingLongTime,TalkLongTime,UserId,UserCode,UserName,ExtNumber,FilePath,IsExitWorkOrder,IsDeal,OperateType,OperateObject,OperateTime,Remark,MYD,BusinessType,Location,WaitStartTime,WaitEndTime,WaitLongTime,NoCallState,WorkTimesDiff,F_ZXReasonID,F_LSReasonID,F_ZSReasonID)");
  46. strSql.Append(" values (");
  47. strSql.Append("@CallId,@CallNumber,@CusId,@CusCode,@CallType,@CallState,@DealType,@BeginTime,@IvrStartTime,@IvrEndTime,@RingStartTime,@RingEndTime,@TalkStartTime,@TalkEndTime,@EndTime,@LongTime,@IvrLongTime,@RingLongTime,@TalkLongTime,@UserId,@UserCode,@UserName,@ExtNumber,@FilePath,@IsExitWorkOrder,@IsDeal,@OperateType,@OperateObject,@OperateTime,@Remark,@MYD,@BusinessType,@Location,@WaitStartTime,@WaitEndTime,@WaitLongTime,@NoCallState,@WorkTimesDiff,@F_ZXReasonID,@F_LSReasonID,@F_ZSReasonID)");
  48. strSql.Append(";select @@IDENTITY");
  49. SqlParameter[] parameters = {
  50. new SqlParameter("@CallId", SqlDbType.VarChar,50),
  51. new SqlParameter("@CallNumber", SqlDbType.VarChar,100),
  52. new SqlParameter("@CusId", SqlDbType.VarChar,50),
  53. new SqlParameter("@CusCode", SqlDbType.VarChar,50),
  54. new SqlParameter("@CallType", SqlDbType.Int,4),
  55. new SqlParameter("@CallState", SqlDbType.Int,4),
  56. new SqlParameter("@DealType", SqlDbType.Int,4),
  57. new SqlParameter("@BeginTime", SqlDbType.DateTime),
  58. new SqlParameter("@IvrStartTime", SqlDbType.DateTime),
  59. new SqlParameter("@IvrEndTime", SqlDbType.DateTime),
  60. new SqlParameter("@RingStartTime", SqlDbType.DateTime),
  61. new SqlParameter("@RingEndTime", SqlDbType.DateTime),
  62. new SqlParameter("@TalkStartTime", SqlDbType.DateTime),
  63. new SqlParameter("@TalkEndTime", SqlDbType.DateTime),
  64. new SqlParameter("@EndTime", SqlDbType.DateTime),
  65. new SqlParameter("@LongTime", SqlDbType.Int,4),
  66. new SqlParameter("@IvrLongTime", SqlDbType.Int,4),
  67. new SqlParameter("@RingLongTime", SqlDbType.Int,4),
  68. new SqlParameter("@TalkLongTime", SqlDbType.Int,4),
  69. new SqlParameter("@UserId", SqlDbType.Int,4),
  70. new SqlParameter("@UserCode", SqlDbType.VarChar,50),
  71. new SqlParameter("@UserName", SqlDbType.NVarChar,20),
  72. new SqlParameter("@ExtNumber", SqlDbType.VarChar,50),
  73. new SqlParameter("@FilePath", SqlDbType.VarChar,200),
  74. new SqlParameter("@IsExitWorkOrder", SqlDbType.Bit,1),
  75. new SqlParameter("@IsDeal", SqlDbType.Int,4),
  76. new SqlParameter("@OperateType", SqlDbType.Int,4),
  77. new SqlParameter("@OperateObject", SqlDbType.VarChar,20),
  78. new SqlParameter("@OperateTime", SqlDbType.DateTime),
  79. new SqlParameter("@Remark", SqlDbType.NVarChar,1000),
  80. new SqlParameter("@MYD", SqlDbType.Int,4),
  81. new SqlParameter("@BusinessType", SqlDbType.Int,4),
  82. new SqlParameter("@Location", SqlDbType.NVarChar,100),
  83. new SqlParameter("@WaitStartTime", SqlDbType.DateTime),
  84. new SqlParameter("@WaitEndTime", SqlDbType.DateTime),
  85. new SqlParameter("@WaitLongTime", SqlDbType.Int,4),
  86. new SqlParameter("@NoCallState", SqlDbType.Int,4),
  87. new SqlParameter("@WorkTimesDiff", SqlDbType.Int,4),
  88. new SqlParameter("@F_ReasonID", SqlDbType.Int,4),
  89. new SqlParameter("@F_ZXReasonID", SqlDbType.Int,4),
  90. new SqlParameter("@F_LSReasonID", SqlDbType.Int,4),
  91. new SqlParameter("@F_ZSReasonID", SqlDbType.Int,4)
  92. };
  93. parameters[0].Value = model.CallId;
  94. parameters[1].Value = model.CallNumber;
  95. parameters[2].Value = model.CusId;
  96. parameters[3].Value = model.CusCode;
  97. parameters[4].Value = model.CallType;
  98. parameters[5].Value = model.CallState;
  99. parameters[6].Value = model.DealType;
  100. parameters[7].Value = model.BeginTime;
  101. parameters[8].Value = model.IvrStartTime;
  102. parameters[9].Value = model.IvrEndTime;
  103. parameters[10].Value = model.RingStartTime;
  104. parameters[11].Value = model.RingEndTime;
  105. parameters[12].Value = model.TalkStartTime;
  106. parameters[13].Value = model.TalkEndTime;
  107. parameters[14].Value = model.EndTime;
  108. parameters[15].Value = model.LongTime;
  109. parameters[16].Value = model.IvrLongTime;
  110. parameters[17].Value = model.RingLongTime;
  111. parameters[18].Value = model.TalkLongTime;
  112. parameters[19].Value = model.UserId;
  113. parameters[20].Value = model.UserCode;
  114. parameters[21].Value = model.UserName;
  115. parameters[22].Value = model.ExtNumber;
  116. parameters[23].Value = model.FilePath;
  117. parameters[24].Value = model.IsExitWorkOrder;
  118. parameters[25].Value = model.IsDeal;
  119. parameters[26].Value = model.OperateType;
  120. parameters[27].Value = model.OperateObject;
  121. parameters[28].Value = model.OperateTime;
  122. parameters[29].Value = model.Remark;
  123. parameters[30].Value = model.MYD;
  124. parameters[31].Value = model.BusinessType;
  125. parameters[32].Value = model.Location;
  126. parameters[33].Value = model.WaitStartTime;
  127. parameters[34].Value = model.WaitEndTime;
  128. parameters[35].Value = model.WaitLongTime;
  129. parameters[36].Value = model.NoCallState;
  130. parameters[37].Value = model.WorkTimesDiff;
  131. parameters[38].Value = model.F_ZXreasonid;
  132. parameters[39].Value = model.F_LSreasonid;
  133. parameters[40].Value = model.F_ZSreasonid;
  134. object obj = DbHelperSQL.GetSingle(strSql.ToString(), parameters);
  135. if (obj == null)
  136. {
  137. return 0;
  138. }
  139. else
  140. {
  141. return Convert.ToInt32(obj);
  142. }
  143. }
  144. /// <summary>
  145. /// 更新一条数据
  146. /// </summary>
  147. public bool Update(HySoft.BaseCallCenter.Model.T_Call_CallRecords model)
  148. {
  149. StringBuilder strSql = new StringBuilder();
  150. strSql.Append("update T_Call_CallRecords set ");
  151. strSql.Append("CallId=@CallId,");
  152. strSql.Append("CallNumber=@CallNumber,");
  153. strSql.Append("CusId=@CusId,");
  154. strSql.Append("CusCode=@CusCode,");
  155. strSql.Append("CallType=@CallType,");
  156. strSql.Append("CallState=@CallState,");
  157. strSql.Append("DealType=@DealType,");
  158. strSql.Append("BeginTime=@BeginTime,");
  159. strSql.Append("IvrStartTime=@IvrStartTime,");
  160. strSql.Append("IvrEndTime=@IvrEndTime,");
  161. strSql.Append("RingStartTime=@RingStartTime,");
  162. strSql.Append("RingEndTime=@RingEndTime,");
  163. strSql.Append("TalkStartTime=@TalkStartTime,");
  164. strSql.Append("TalkEndTime=@TalkEndTime,");
  165. strSql.Append("EndTime=@EndTime,");
  166. strSql.Append("LongTime=@LongTime,");
  167. strSql.Append("IvrLongTime=@IvrLongTime,");
  168. strSql.Append("RingLongTime=@RingLongTime,");
  169. strSql.Append("TalkLongTime=@TalkLongTime,");
  170. strSql.Append("UserId=@UserId,");
  171. strSql.Append("UserCode=@UserCode,");
  172. strSql.Append("UserName=@UserName,");
  173. strSql.Append("ExtNumber=@ExtNumber,");
  174. strSql.Append("FilePath=@FilePath,");
  175. strSql.Append("IsExitWorkOrder=@IsExitWorkOrder,");
  176. strSql.Append("IsDeal=@IsDeal,");
  177. strSql.Append("OperateType=@OperateType,");
  178. strSql.Append("OperateObject=@OperateObject,");
  179. strSql.Append("OperateTime=@OperateTime,");
  180. strSql.Append("Remark=@Remark,");
  181. strSql.Append("MYD=@MYD,");
  182. strSql.Append("BusinessType=@BusinessType,");
  183. strSql.Append("Location=@Location,");
  184. strSql.Append("WaitStartTime=@WaitStartTime,");
  185. strSql.Append("WaitEndTime=@WaitEndTime,");
  186. strSql.Append("WaitLongTime=@WaitLongTime,");
  187. strSql.Append("NoCallState=@NoCallState,");
  188. strSql.Append("WorkTimesDiff=@WorkTimesDiff,");
  189. strSql.Append("F_ZXReasonID=@F_ZXReasonID,");
  190. strSql.Append("F_LSReasonID=@F_LSReasonID,");
  191. strSql.Append("F_ZSReasonID=@F_ZSReasonID");
  192. strSql.Append(" where CallRecordsId=@CallRecordsId");
  193. SqlParameter[] parameters = {
  194. new SqlParameter("@CallId", SqlDbType.VarChar,50),
  195. new SqlParameter("@CallNumber", SqlDbType.VarChar,100),
  196. new SqlParameter("@CusId", SqlDbType.VarChar,50),
  197. new SqlParameter("@CusCode", SqlDbType.VarChar,50),
  198. new SqlParameter("@CallType", SqlDbType.Int,4),
  199. new SqlParameter("@CallState", SqlDbType.Int,4),
  200. new SqlParameter("@DealType", SqlDbType.Int,4),
  201. new SqlParameter("@BeginTime", SqlDbType.DateTime),
  202. new SqlParameter("@IvrStartTime", SqlDbType.DateTime),
  203. new SqlParameter("@IvrEndTime", SqlDbType.DateTime),
  204. new SqlParameter("@RingStartTime", SqlDbType.DateTime),
  205. new SqlParameter("@RingEndTime", SqlDbType.DateTime),
  206. new SqlParameter("@TalkStartTime", SqlDbType.DateTime),
  207. new SqlParameter("@TalkEndTime", SqlDbType.DateTime),
  208. new SqlParameter("@EndTime", SqlDbType.DateTime),
  209. new SqlParameter("@LongTime", SqlDbType.Int,4),
  210. new SqlParameter("@IvrLongTime", SqlDbType.Int,4),
  211. new SqlParameter("@RingLongTime", SqlDbType.Int,4),
  212. new SqlParameter("@TalkLongTime", SqlDbType.Int,4),
  213. new SqlParameter("@UserId", SqlDbType.Int,4),
  214. new SqlParameter("@UserCode", SqlDbType.VarChar,50),
  215. new SqlParameter("@UserName", SqlDbType.NVarChar,20),
  216. new SqlParameter("@ExtNumber", SqlDbType.VarChar,50),
  217. new SqlParameter("@FilePath", SqlDbType.VarChar,200),
  218. new SqlParameter("@IsExitWorkOrder", SqlDbType.Bit,1),
  219. new SqlParameter("@IsDeal", SqlDbType.Int,4),
  220. new SqlParameter("@OperateType", SqlDbType.Int,4),
  221. new SqlParameter("@OperateObject", SqlDbType.VarChar,20),
  222. new SqlParameter("@OperateTime", SqlDbType.DateTime),
  223. new SqlParameter("@Remark", SqlDbType.NVarChar,1000),
  224. new SqlParameter("@MYD", SqlDbType.Int,4),
  225. new SqlParameter("@BusinessType", SqlDbType.Int,4),
  226. new SqlParameter("@Location", SqlDbType.NVarChar,100),
  227. new SqlParameter("@WaitStartTime", SqlDbType.DateTime),
  228. new SqlParameter("@WaitEndTime", SqlDbType.DateTime),
  229. new SqlParameter("@WaitLongTime", SqlDbType.Int,4),
  230. new SqlParameter("@NoCallState", SqlDbType.Int,4),
  231. new SqlParameter("@WorkTimesDiff", SqlDbType.Int,4),
  232. new SqlParameter("@F_ZXReasonID", SqlDbType.Int,4),
  233. new SqlParameter("@F_LSReasonID", SqlDbType.Int,4),
  234. new SqlParameter("@F_ZSReasonID", SqlDbType.Int,4),
  235. new SqlParameter("@CallRecordsId", SqlDbType.Int,4)};
  236. parameters[0].Value = model.CallId;
  237. parameters[1].Value = model.CallNumber;
  238. parameters[2].Value = model.CusId;
  239. parameters[3].Value = model.CusCode;
  240. parameters[4].Value = model.CallType;
  241. parameters[5].Value = model.CallState;
  242. parameters[6].Value = model.DealType;
  243. parameters[7].Value = model.BeginTime;
  244. parameters[8].Value = model.IvrStartTime;
  245. parameters[9].Value = model.IvrEndTime;
  246. parameters[10].Value = model.RingStartTime;
  247. parameters[11].Value = model.RingEndTime;
  248. parameters[12].Value = model.TalkStartTime;
  249. parameters[13].Value = model.TalkEndTime;
  250. parameters[14].Value = model.EndTime;
  251. parameters[15].Value = model.LongTime;
  252. parameters[16].Value = model.IvrLongTime;
  253. parameters[17].Value = model.RingLongTime;
  254. parameters[18].Value = model.TalkLongTime;
  255. parameters[19].Value = model.UserId;
  256. parameters[20].Value = model.UserCode;
  257. parameters[21].Value = model.UserName;
  258. parameters[22].Value = model.ExtNumber;
  259. parameters[23].Value = model.FilePath;
  260. parameters[24].Value = model.IsExitWorkOrder;
  261. parameters[25].Value = model.IsDeal;
  262. parameters[26].Value = model.OperateType;
  263. parameters[27].Value = model.OperateObject;
  264. parameters[28].Value = model.OperateTime;
  265. parameters[29].Value = model.Remark;
  266. parameters[30].Value = model.MYD;
  267. parameters[31].Value = model.BusinessType;
  268. parameters[32].Value = model.Location;
  269. parameters[33].Value = model.WaitStartTime;
  270. parameters[34].Value = model.WaitEndTime;
  271. parameters[35].Value = model.WaitLongTime;
  272. parameters[36].Value = model.NoCallState;
  273. parameters[37].Value = model.WorkTimesDiff;
  274. parameters[38].Value = model.F_ZXreasonid;
  275. parameters[39].Value = model.F_LSreasonid;
  276. parameters[40].Value = model.F_ZSreasonid;
  277. parameters[41].Value = model.CallRecordsId;
  278. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  279. if (rows > 0)
  280. {
  281. return true;
  282. }
  283. else
  284. {
  285. return false;
  286. }
  287. }
  288. /// <summary>
  289. /// 删除一条数据
  290. /// </summary>
  291. public bool Delete(int CallRecordsId)
  292. {
  293. StringBuilder strSql = new StringBuilder();
  294. strSql.Append("delete from T_Call_CallRecords ");
  295. strSql.Append(" where CallRecordsId=@CallRecordsId");
  296. SqlParameter[] parameters = {
  297. new SqlParameter("@CallRecordsId", SqlDbType.Int,4)
  298. };
  299. parameters[0].Value = CallRecordsId;
  300. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  301. if (rows > 0)
  302. {
  303. return true;
  304. }
  305. else
  306. {
  307. return false;
  308. }
  309. }
  310. /// <summary>
  311. /// 批量删除数据
  312. /// </summary>
  313. public bool DeleteList(string CallRecordsIdlist)
  314. {
  315. StringBuilder strSql = new StringBuilder();
  316. strSql.Append("delete from T_Call_CallRecords ");
  317. strSql.Append(" where CallRecordsId in (" + CallRecordsIdlist + ") ");
  318. int rows = DbHelperSQL.ExecuteSql(strSql.ToString());
  319. if (rows > 0)
  320. {
  321. return true;
  322. }
  323. else
  324. {
  325. return false;
  326. }
  327. }
  328. /// <summary>
  329. /// 得到一个对象实体
  330. /// </summary>
  331. public HySoft.BaseCallCenter.Model.T_Call_CallRecords GetModel(int CallRecordsId)
  332. {
  333. StringBuilder strSql = new StringBuilder();
  334. strSql.Append("select top 1 * from T_Call_CallRecords ");
  335. strSql.Append(" where CallRecordsId=@CallRecordsId");
  336. SqlParameter[] parameters = {
  337. new SqlParameter("@CallRecordsId", SqlDbType.Int,4)
  338. };
  339. parameters[0].Value = CallRecordsId;
  340. HySoft.BaseCallCenter.Model.T_Call_CallRecords model = new HySoft.BaseCallCenter.Model.T_Call_CallRecords();
  341. DataSet ds = DbHelperSQL.Query(strSql.ToString(), parameters);
  342. if (ds.Tables[0].Rows.Count > 0)
  343. {
  344. return DataRowToModel(ds.Tables[0].Rows[0]);
  345. }
  346. else
  347. {
  348. return null;
  349. }
  350. }
  351. /// <summary>
  352. /// 得到一个对象实体
  353. /// </summary>
  354. public HySoft.BaseCallCenter.Model.T_Call_CallRecords DataRowToModel(DataRow row)
  355. {
  356. HySoft.BaseCallCenter.Model.T_Call_CallRecords model = new HySoft.BaseCallCenter.Model.T_Call_CallRecords();
  357. if (row != null)
  358. {
  359. if (row["CallId"] != null)
  360. {
  361. model.CallId = row["CallId"].ToString();
  362. }
  363. if (row["CallNumber"] != null)
  364. {
  365. model.CallNumber = row["CallNumber"].ToString();
  366. }
  367. if (row["CusId"] != null)
  368. {
  369. model.CusId = row["CusId"].ToString();
  370. }
  371. if (row["CusCode"] != null)
  372. {
  373. model.CusCode = row["CusCode"].ToString();
  374. }
  375. if (row["CallType"] != null && row["CallType"].ToString() != "")
  376. {
  377. model.CallType = int.Parse(row["CallType"].ToString());
  378. }
  379. if (row["CallState"] != null && row["CallState"].ToString() != "")
  380. {
  381. model.CallState = int.Parse(row["CallState"].ToString());
  382. }
  383. if (row["DealType"] != null && row["DealType"].ToString() != "")
  384. {
  385. model.DealType = int.Parse(row["DealType"].ToString());
  386. }
  387. if (row["BeginTime"] != null && row["BeginTime"].ToString() != "")
  388. {
  389. model.BeginTime = DateTime.Parse(row["BeginTime"].ToString());
  390. }
  391. if (row["IvrStartTime"] != null && row["IvrStartTime"].ToString() != "")
  392. {
  393. model.IvrStartTime = DateTime.Parse(row["IvrStartTime"].ToString());
  394. }
  395. if (row["IvrEndTime"] != null && row["IvrEndTime"].ToString() != "")
  396. {
  397. model.IvrEndTime = DateTime.Parse(row["IvrEndTime"].ToString());
  398. }
  399. if (row["RingStartTime"] != null && row["RingStartTime"].ToString() != "")
  400. {
  401. model.RingStartTime = DateTime.Parse(row["RingStartTime"].ToString());
  402. }
  403. if (row["RingEndTime"] != null && row["RingEndTime"].ToString() != "")
  404. {
  405. model.RingEndTime = DateTime.Parse(row["RingEndTime"].ToString());
  406. }
  407. if (row["TalkStartTime"] != null && row["TalkStartTime"].ToString() != "")
  408. {
  409. model.TalkStartTime = DateTime.Parse(row["TalkStartTime"].ToString());
  410. }
  411. if (row["TalkEndTime"] != null && row["TalkEndTime"].ToString() != "")
  412. {
  413. model.TalkEndTime = DateTime.Parse(row["TalkEndTime"].ToString());
  414. }
  415. if (row["EndTime"] != null && row["EndTime"].ToString() != "")
  416. {
  417. model.EndTime = DateTime.Parse(row["EndTime"].ToString());
  418. }
  419. if (row["LongTime"] != null && row["LongTime"].ToString() != "")
  420. {
  421. model.LongTime = int.Parse(row["LongTime"].ToString());
  422. }
  423. if (row["IvrLongTime"] != null && row["IvrLongTime"].ToString() != "")
  424. {
  425. model.IvrLongTime = int.Parse(row["IvrLongTime"].ToString());
  426. }
  427. if (row["RingLongTime"] != null && row["RingLongTime"].ToString() != "")
  428. {
  429. model.RingLongTime = int.Parse(row["RingLongTime"].ToString());
  430. }
  431. if (row["TalkLongTime"] != null && row["TalkLongTime"].ToString() != "")
  432. {
  433. model.TalkLongTime = int.Parse(row["TalkLongTime"].ToString());
  434. }
  435. if (row["UserId"] != null && row["UserId"].ToString() != "")
  436. {
  437. model.UserId = int.Parse(row["UserId"].ToString());
  438. }
  439. if (row["UserCode"] != null)
  440. {
  441. model.UserCode = row["UserCode"].ToString();
  442. }
  443. if (row["UserName"] != null)
  444. {
  445. model.UserName = row["UserName"].ToString();
  446. }
  447. if (row["ExtNumber"] != null)
  448. {
  449. model.ExtNumber = row["ExtNumber"].ToString();
  450. }
  451. if (row["FilePath"] != null)
  452. {
  453. model.FilePath = row["FilePath"].ToString();
  454. }
  455. if (row["IsExitWorkOrder"] != null && row["IsExitWorkOrder"].ToString() != "")
  456. {
  457. if ((row["IsExitWorkOrder"].ToString() == "1") || (row["IsExitWorkOrder"].ToString().ToLower() == "true"))
  458. {
  459. model.IsExitWorkOrder = true;
  460. }
  461. else
  462. {
  463. model.IsExitWorkOrder = false;
  464. }
  465. }
  466. if (row["IsDeal"] != null && row["IsDeal"].ToString() != "")
  467. {
  468. model.IsDeal = int.Parse(row["IsDeal"].ToString());
  469. }
  470. if (row["OperateType"] != null && row["OperateType"].ToString() != "")
  471. {
  472. model.OperateType = int.Parse(row["OperateType"].ToString());
  473. }
  474. if (row["OperateObject"] != null)
  475. {
  476. model.OperateObject = row["OperateObject"].ToString();
  477. }
  478. if (row["OperateTime"] != null && row["OperateTime"].ToString() != "")
  479. {
  480. model.OperateTime = DateTime.Parse(row["OperateTime"].ToString());
  481. }
  482. if (row["Remark"] != null)
  483. {
  484. model.Remark = row["Remark"].ToString();
  485. }
  486. if (row["MYD"] != null && row["MYD"].ToString() != "")
  487. {
  488. model.MYD = int.Parse(row["MYD"].ToString());
  489. }
  490. if (row["BusinessType"] != null && row["BusinessType"].ToString() != "")
  491. {
  492. model.BusinessType = int.Parse(row["BusinessType"].ToString());
  493. }
  494. if (row["Location"] != null)
  495. {
  496. model.Location = row["Location"].ToString();
  497. }
  498. if (row["CallRecordsId"] != null && row["CallRecordsId"].ToString() != "")
  499. {
  500. model.CallRecordsId = int.Parse(row["CallRecordsId"].ToString());
  501. }
  502. if (row["WaitStartTime"] != null && row["WaitStartTime"].ToString() != "")
  503. {
  504. model.WaitStartTime = DateTime.Parse(row["WaitStartTime"].ToString());
  505. }
  506. if (row["WaitEndTime"] != null && row["WaitEndTime"].ToString() != "")
  507. {
  508. model.WaitEndTime = DateTime.Parse(row["WaitEndTime"].ToString());
  509. }
  510. if (row["WaitLongTime"] != null && row["WaitLongTime"].ToString() != "")
  511. {
  512. model.WaitLongTime = int.Parse(row["WaitLongTime"].ToString());
  513. }
  514. if (row["NoCallState"] != null && row["NoCallState"].ToString() != "")
  515. {
  516. model.NoCallState = int.Parse(row["NoCallState"].ToString());
  517. }
  518. if (row["WorkTimesDiff"] != null && row["WorkTimesDiff"].ToString() != "")
  519. {
  520. model.WorkTimesDiff = int.Parse(row["WorkTimesDiff"].ToString());
  521. }
  522. if (row["F_ZXReasonID"] != null && row["F_ZXReasonID"].ToString() != "")
  523. {
  524. model.F_ZXreasonid = int.Parse(row["F_ZXReasonID"].ToString());
  525. }
  526. if (row["F_LSreasonid"] != null && row["F_LSreasonid"].ToString() != "")
  527. {
  528. model.F_LSreasonid = int.Parse(row["F_LSreasonid"].ToString());
  529. }
  530. if (row["F_ZSreasonid"] != null && row["F_ZSreasonid"].ToString() != "")
  531. {
  532. model.F_ZSreasonid = int.Parse(row["F_ZSreasonid"].ToString());
  533. }
  534. }
  535. return model;
  536. }
  537. /// <summary>
  538. /// 获得数据列表
  539. /// </summary>
  540. public DataSet GetList(string strWhere)
  541. {
  542. StringBuilder strSql = new StringBuilder();
  543. strSql.Append("select * ");
  544. strSql.Append(" FROM T_Call_CallRecords ");
  545. if (strWhere.Trim() != "")
  546. {
  547. strSql.Append(" where " + strWhere);
  548. }
  549. return DbHelperSQL.Query(strSql.ToString());
  550. }
  551. /// <summary>
  552. /// 获得前几行数据
  553. /// </summary>
  554. public DataSet GetList(int Top, string strWhere, string filedOrder)
  555. {
  556. StringBuilder strSql = new StringBuilder();
  557. strSql.Append("select ");
  558. if (Top > 0)
  559. {
  560. strSql.Append(" top " + Top.ToString());
  561. }
  562. strSql.Append(" * ");
  563. strSql.Append(" FROM T_Call_CallRecords ");
  564. if (strWhere.Trim() != "")
  565. {
  566. strSql.Append(" where " + strWhere);
  567. }
  568. strSql.Append(" order by " + filedOrder);
  569. return DbHelperSQL.Query(strSql.ToString());
  570. }
  571. /// <summary>
  572. /// 获取记录总数
  573. /// </summary>
  574. public int GetRecordCount(string strWhere)
  575. {
  576. StringBuilder strSql = new StringBuilder();
  577. strSql.Append("select count(1) FROM T_Call_CallRecords ");
  578. if (strWhere.Trim() != "")
  579. {
  580. strSql.Append(" where " + strWhere);
  581. }
  582. object obj = DbHelperSQL.GetSingle(strSql.ToString());
  583. if (obj == null)
  584. {
  585. return 0;
  586. }
  587. else
  588. {
  589. return Convert.ToInt32(obj);
  590. }
  591. }
  592. /// <summary>
  593. /// 分页获取数据列表
  594. /// </summary>
  595. public DataSet GetListByPage(string strWhere, string orderby, int startIndex, int endIndex)
  596. {
  597. StringBuilder strSql = new StringBuilder();
  598. strSql.Append("SELECT * FROM ( ");
  599. strSql.Append(" SELECT ROW_NUMBER() OVER (");
  600. if (!string.IsNullOrEmpty(orderby.Trim()))
  601. {
  602. strSql.Append("order by T." + orderby);
  603. }
  604. else
  605. {
  606. strSql.Append("order by T.CallRecordsId desc");
  607. }
  608. strSql.Append(")AS Row, T.* from T_Call_CallRecords T ");
  609. if (!string.IsNullOrEmpty(strWhere.Trim()))
  610. {
  611. strSql.Append(" WHERE " + strWhere);
  612. }
  613. strSql.Append(" ) TT");
  614. strSql.AppendFormat(" WHERE TT.Row between {0} and {1}", startIndex, endIndex);
  615. return DbHelperSQL.Query(strSql.ToString());
  616. }
  617. /*
  618. /// <summary>
  619. /// 分页获取数据列表
  620. /// </summary>
  621. public DataSet GetList(int PageSize,int PageIndex,string strWhere)
  622. {
  623. SqlParameter[] parameters = {
  624. new SqlParameter("@tblName", SqlDbType.VarChar, 255),
  625. new SqlParameter("@fldName", SqlDbType.VarChar, 255),
  626. new SqlParameter("@PageSize", SqlDbType.Int),
  627. new SqlParameter("@PageIndex", SqlDbType.Int),
  628. new SqlParameter("@IsReCount", SqlDbType.Bit),
  629. new SqlParameter("@OrderType", SqlDbType.Bit),
  630. new SqlParameter("@strWhere", SqlDbType.VarChar,1000),
  631. };
  632. parameters[0].Value = "T_Call_CallRecords";
  633. parameters[1].Value = "CallRecordsId";
  634. parameters[2].Value = PageSize;
  635. parameters[3].Value = PageIndex;
  636. parameters[4].Value = 0;
  637. parameters[5].Value = 0;
  638. parameters[6].Value = strWhere;
  639. return DbHelperSQL.RunProcedure("UP_GetRecordByPage",parameters,"ds");
  640. }*/
  641. #endregion BasicMethod
  642. #region ExtensionMethod
  643. #endregion ExtensionMethod
  644. #region 更新来电振铃信息
  645. /// <summary>
  646. /// 更新来电振铃信息
  647. /// </summary>
  648. public bool UpdateCallInRingTelRecord(Model.T_Call_CallRecords model)
  649. {
  650. StringBuilder strSql = new StringBuilder();
  651. strSql.Append("update T_Call_CallRecords set ");
  652. strSql.Append("IvrLongTime=datediff(second,IvrStartTime,IvrEndTime),");
  653. strSql.Append("WaitEndTime=getdate(),");
  654. strSql.Append("WaitLongTime=datediff(second,WaitStartTime,getdate()),");
  655. strSql.Append("RingStartTime=getdate(),");
  656. strSql.Append("UserId=@UserId,");
  657. strSql.Append("UserCode=@UserCode,");
  658. strSql.Append("UserName=@UserName,");
  659. strSql.Append("ExtNumber=@ExtNumber,");
  660. strSql.Append("NoCallState=3,");//未接状态为振铃
  661. strSql.Append("DealType=@DealType");
  662. strSql.Append(" where CallId=@CallId ");
  663. SqlParameter[] parameters = {
  664. new SqlParameter("@UserId", SqlDbType.Int,4),
  665. new SqlParameter("@UserCode", SqlDbType.VarChar,50),
  666. new SqlParameter("@UserName", SqlDbType.NVarChar,20),
  667. new SqlParameter("@ExtNumber", SqlDbType.VarChar,50),
  668. new SqlParameter("@CallId", SqlDbType.VarChar,50),
  669. new SqlParameter("@DealType", SqlDbType.Int,4)};
  670. parameters[0].Value = model.UserId;
  671. parameters[1].Value = model.UserCode;
  672. parameters[2].Value = model.UserName;
  673. parameters[3].Value = model.ExtNumber;
  674. parameters[4].Value = model.CallId;
  675. parameters[5].Value = model.DealType;
  676. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  677. if (rows > 0)
  678. {
  679. return true;
  680. }
  681. else
  682. {
  683. return false;
  684. }
  685. }
  686. #endregion
  687. #region 更新来电接通信息
  688. /// <summary>
  689. /// 更新来电接通信息
  690. /// </summary>
  691. public bool UpdateCallInAnswerTelRecord(Model.T_Call_CallRecords model)
  692. {
  693. StringBuilder strSql = new StringBuilder();
  694. strSql.Append("update T_Call_CallRecords set ");
  695. strSql.Append("CallState=@CallState,");
  696. strSql.Append("RingEndTime=getdate(),");
  697. strSql.Append("RingLongTime=datediff(second,RingStartTime,getdate()),");
  698. strSql.Append("TalkStartTime=getdate(),");
  699. strSql.Append("DealType=@DealType");
  700. strSql.Append(" where CallId=@CallId");
  701. SqlParameter[] parameters = {
  702. new SqlParameter("@CallId", SqlDbType.VarChar,50),
  703. new SqlParameter("@CallState", SqlDbType.Int,4),
  704. new SqlParameter("@DealType", SqlDbType.Int,4)};
  705. parameters[0].Value = model.CallId;
  706. parameters[1].Value = model.CallState;
  707. parameters[2].Value = model.DealType;
  708. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  709. if (rows > 0)
  710. {
  711. return true;
  712. }
  713. else
  714. {
  715. return false;
  716. }
  717. }
  718. #endregion
  719. #region 更新来电挂断电话记录信息
  720. /// <summary>
  721. /// 更新来电挂断电话记录信息
  722. /// </summary>
  723. public bool UpdateCallInHookTelRecord(string p_CallId)
  724. {
  725. StringBuilder strSql = new StringBuilder();
  726. strSql.Append("update T_Call_CallRecords SET TalkLongTime=datediff(second,TalkStartTime,getdate()), LongTime=datediff(second,BeginTime,getdate()), RingEndTime=(case when RingEndTime is null then GETDATE() else RingEndTime end ),TalkEndTime=(case when TalkStartTime is null then null else GETDATE() end),EndTime=GETDATE(),DealType=(case CallState when 1 then 6 else DealType end)");
  727. strSql.Append(" where CallId=@CallId");
  728. SqlParameter[] parameters = {
  729. new SqlParameter("@CallId", SqlDbType.VarChar,50)};
  730. parameters[0].Value = p_CallId;
  731. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  732. if (rows > 0)
  733. {
  734. return true;
  735. }
  736. else
  737. {
  738. return false;
  739. }
  740. }
  741. #endregion
  742. #region 更新来电录音开始信息
  743. /// <summary>
  744. /// 更新来电录音开始信息
  745. /// </summary>
  746. public bool UpdateCallInPathTelRecord(Model.T_Call_CallRecords model)
  747. {
  748. StringBuilder strSql = new StringBuilder();
  749. strSql.Append("update T_Call_CallRecords set ");
  750. strSql.Append("CallState=@CallState,");
  751. strSql.Append("FilePath=@FilePath,");
  752. strSql.Append("DealType=@DealType");
  753. strSql.Append(" where CallId=@CallId");
  754. SqlParameter[] parameters = {
  755. new SqlParameter("@CallId", SqlDbType.VarChar,50),
  756. new SqlParameter("@CallState", SqlDbType.Int,4),
  757. new SqlParameter("@FilePath", SqlDbType.VarChar,200),
  758. new SqlParameter("@DealType", SqlDbType.Int,4)};
  759. parameters[0].Value = model.CallId;
  760. parameters[1].Value = model.CallState;
  761. parameters[2].Value = model.FilePath;
  762. parameters[3].Value = model.DealType;
  763. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  764. if (rows > 0)
  765. {
  766. return true;
  767. }
  768. else
  769. {
  770. return false;
  771. }
  772. }
  773. #endregion
  774. #region 根据来电号码获取电话记录
  775. public HySoft.BaseCallCenter.Model.T_Call_CallRecords GetModelByTelphone(string CallNumber)
  776. {
  777. StringBuilder strSql = new StringBuilder();
  778. strSql.Append("select top 1 * from T_Call_CallRecords ");
  779. strSql.Append(" where CallNumber=@CallNumber order by BeginTime desc");
  780. SqlParameter[] parameters = {
  781. new SqlParameter("@CallNumber", SqlDbType.VarChar,100)
  782. };
  783. parameters[0].Value = CallNumber;
  784. HySoft.BaseCallCenter.Model.T_Call_CallRecords model = new HySoft.BaseCallCenter.Model.T_Call_CallRecords();
  785. DataSet ds = DbHelperSQL.Query(strSql.ToString(), parameters);
  786. if (ds.Tables[0].Rows.Count > 0)
  787. {
  788. return DataRowToModel(ds.Tables[0].Rows[0]);
  789. }
  790. else
  791. {
  792. return null;
  793. }
  794. }
  795. #endregion
  796. #region 根据CallId获取电话记录
  797. public HySoft.BaseCallCenter.Model.T_Call_CallRecords GetModelByCallId(string CallId)
  798. {
  799. StringBuilder strSql = new StringBuilder();
  800. strSql.Append("select top 1 * from T_Call_CallRecords ");
  801. strSql.Append(" where CallId=@CallId order by BeginTime desc");
  802. SqlParameter[] parameters = {
  803. new SqlParameter("@CallId", SqlDbType.VarChar,50)
  804. };
  805. parameters[0].Value = CallId;
  806. HySoft.BaseCallCenter.Model.T_Call_CallRecords model = new HySoft.BaseCallCenter.Model.T_Call_CallRecords();
  807. DataSet ds = DbHelperSQL.Query(strSql.ToString(), parameters);
  808. if (ds.Tables[0].Rows.Count > 0)
  809. {
  810. return DataRowToModel(ds.Tables[0].Rows[0]);
  811. }
  812. else
  813. {
  814. return null;
  815. }
  816. }
  817. public HySoft.BaseCallCenter.Model.T_Call_CallRecords GetModelByRecordId(string CallId)
  818. {
  819. StringBuilder strSql = new StringBuilder();
  820. strSql.Append("select top 1 * from T_Call_CallRecords ");
  821. strSql.Append(" where CallRecordsId=@CallRecordsId order by BeginTime desc");
  822. SqlParameter[] parameters = {
  823. new SqlParameter("@CallRecordsId", SqlDbType.Int)
  824. };
  825. parameters[0].Value = Convert.ToInt32(CallId);
  826. HySoft.BaseCallCenter.Model.T_Call_CallRecords model = new HySoft.BaseCallCenter.Model.T_Call_CallRecords();
  827. DataSet ds = DbHelperSQL.Query(strSql.ToString(), parameters);
  828. if (ds.Tables[0].Rows.Count > 0)
  829. {
  830. return DataRowToModel(ds.Tables[0].Rows[0]);
  831. }
  832. else
  833. {
  834. return null;
  835. }
  836. }
  837. #endregion
  838. #region 更新来电处理状态信息
  839. /// <summary>
  840. /// 更新来电处理状态信息
  841. /// </summary>
  842. public bool UpdateCallInRecordDealType(string callid, int type)
  843. {
  844. StringBuilder strSql = new StringBuilder();
  845. strSql.Append("update T_Call_CallRecords set ");
  846. strSql.Append("DealType=@DealType");
  847. strSql.Append(" where CallId=@CallId ");
  848. SqlParameter[] parameters = {
  849. new SqlParameter("@CallId", SqlDbType.VarChar,50),
  850. new SqlParameter("@DealType", SqlDbType.Int,4)};
  851. parameters[0].Value = callid;
  852. parameters[1].Value = type;
  853. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  854. if (rows > 0)
  855. {
  856. return true;
  857. }
  858. else
  859. {
  860. return false;
  861. }
  862. }
  863. #endregion
  864. #region 更新咨询来电原因ID
  865. /// <summary>
  866. /// 更新咨询来电原因ID
  867. /// </summary>
  868. public bool UpdateCallInZXReasonID(string callid, int reasonid)
  869. {
  870. StringBuilder strSql = new StringBuilder();
  871. strSql.Append("update T_Call_CallRecords set ");
  872. strSql.Append("F_ZXReasonID=@F_ZXReasonID");
  873. strSql.Append(" where CallRecordsId=@CallRecordsId ");
  874. SqlParameter[] parameters = {
  875. new SqlParameter("@CallRecordsId", SqlDbType.VarChar,50),
  876. new SqlParameter("@F_ZXReasonID", SqlDbType.Int,4)};
  877. parameters[0].Value = callid;
  878. parameters[1].Value = reasonid;
  879. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  880. if (rows > 0)
  881. {
  882. return true;
  883. }
  884. else
  885. {
  886. return false;
  887. }
  888. }
  889. #endregion
  890. #region 更新临时来电原因ID
  891. /// <summary>
  892. /// 更新临时来电原因ID
  893. /// </summary>
  894. public bool UpdateCallInLSReasonID(string callid, int reasonid)
  895. {
  896. StringBuilder strSql = new StringBuilder();
  897. strSql.Append("update T_Call_CallRecords set ");
  898. strSql.Append("F_LSReasonID=@F_LSReasonID");
  899. strSql.Append(" where CallRecordsId=@CallRecordsId ");
  900. SqlParameter[] parameters = {
  901. new SqlParameter("@CallRecordsId", SqlDbType.VarChar,50),
  902. new SqlParameter("@F_LSReasonID", SqlDbType.Int,4)};
  903. parameters[0].Value = callid;
  904. parameters[1].Value = reasonid;
  905. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  906. if (rows > 0)
  907. {
  908. return true;
  909. }
  910. else
  911. {
  912. return false;
  913. }
  914. }
  915. #endregion
  916. #region 更新招商来电原因ID
  917. /// <summary>
  918. /// 更新招商来电原因ID
  919. /// </summary>
  920. public bool UpdateCallInZSReasonID(string callid, int reasonid)
  921. {
  922. StringBuilder strSql = new StringBuilder();
  923. strSql.Append("update T_Call_CallRecords set ");
  924. strSql.Append("F_ZSReasonID=@F_ZSReasonID");
  925. strSql.Append(" where CallRecordsId=@CallRecordsId ");
  926. SqlParameter[] parameters = {
  927. new SqlParameter("@CallRecordsId", SqlDbType.VarChar,50),
  928. new SqlParameter("@F_ZSReasonID", SqlDbType.Int,4)};
  929. parameters[0].Value = callid;
  930. parameters[1].Value = reasonid;
  931. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  932. if (rows > 0)
  933. {
  934. return true;
  935. }
  936. else
  937. {
  938. return false;
  939. }
  940. }
  941. #endregion
  942. }
  943. }