地铁二期项目正式开始

T_Wo_WorkOrderBase.cs 126KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327
  1. using System;
  2. using System.Data;
  3. using System.Text;
  4. using System.Data.SqlClient;
  5. using YTSoft.DBUtility;//Please add references
  6. using YTSoft.Common;
  7. namespace YTSoft.BaseCallCenter.DAL
  8. {
  9. /// <summary>
  10. /// 数据访问类:T_Wo_WorkOrderBase
  11. /// </summary>
  12. public partial class T_Wo_WorkOrderBase
  13. {
  14. DAL.T_Sys_UserAccount userBll = new DAL.T_Sys_UserAccount();
  15. DAL.T_Sys_Department depBll = new DAL.T_Sys_Department();
  16. DAL.T_Wo_WorkOrderNotice NoticeBll = new DAL.T_Wo_WorkOrderNotice();
  17. public T_Wo_WorkOrderBase()
  18. { }
  19. #region Method
  20. //public bool UpdateWorkOrderInfoModel(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model)
  21. //{
  22. // //历史工单id
  23. // int historyId = 0;
  24. // //转办
  25. // if (model.F_WORKORDERTYPEID == 1)
  26. // {
  27. // Model.T_Wo_WorkOrderHistory historyModel = new Model.T_Wo_WorkOrderHistory();
  28. // historyModel.F_INSTANCEID = model.F_WORKORDERID;
  29. // historyModel.F_OPTBTNID = model.F_DEPTID;//部门
  30. // historyModel.F_NEXTOWNERARRID = model.F_DEPTCODE;//部门
  31. // historyModel.F_OPTUSERID = model.F_CREATEBY;//人员
  32. // historyModel.F_UserName = model.F_USERNAME;//人员
  33. // historyModel.F_OPTDATE = DateTime.Now;
  34. // historyModel.F_WORKORDERSTATEID = 0;
  35. // historyModel.F_StateName = "未处理";
  36. // historyModel.NeedReplayTime = model.F_REQUESTSERVICETIME;
  37. // historyId = InsertWorkOrderHistoryModel(historyModel);
  38. // }
  39. // StringBuilder strSql = new StringBuilder();
  40. // strSql.Append("update T_Wo_WorkOrderBase set ");
  41. // strSql.Append("F_CUSTOMERID=@F_CUSTOMERID,");
  42. // strSql.Append("F_CUSTOMERNAME=@F_CUSTOMERNAME,");
  43. // strSql.Append("F_CUSTOMERTELEPHONE=@F_CUSTOMERTELEPHONE,");
  44. // strSql.Append("F_WORKORDERFROM=@F_WORKORDERFROM,");
  45. // strSql.Append("F_RETURNVISITPROBLEM=@F_RETURNVISITPROBLEM,");
  46. // strSql.Append("F_REPAIRLEVEL=@F_REPAIRLEVEL,");
  47. // strSql.Append("F_ADSLACCOUNT=@F_ADSLACCOUNT,");
  48. // strSql.Append("F_WORKORDERLEVELID=@F_WORKORDERLEVELID,");
  49. // strSql.Append("F_WORKORDERNAME=@F_WORKORDERNAME,");
  50. // strSql.Append("F_CONTENT=@F_CONTENT,");
  51. // strSql.Append("F_WORKORDERTYPEID=@F_WORKORDERTYPEID,");
  52. // strSql.Append("F_USERID=@F_USERID,");
  53. // strSql.Append("F_REPAIRMANNAME=@F_REPAIRMANNAME,");
  54. // strSql.Append("F_CREATEDATE=@F_CREATEDATE,");
  55. // strSql.Append("F_WORKORDERSTATEID=@F_WORKORDERSTATEID,");
  56. // strSql.Append("F_REPAIRREQUEST=@F_REPAIRREQUEST,");
  57. // strSql.Append("F_INSTALLADDRESS=@F_INSTALLADDRESS,");
  58. // strSql.Append("F_DEPTID=@F_DEPTID,");
  59. // strSql.Append("F_DEPTCODE=@F_DEPTCODE,");
  60. // strSql.Append("F_CREATEBY=@F_CREATEBY,");
  61. // strSql.Append("F_USERNAME=@F_USERNAME,");
  62. // strSql.Append("F_REQUESTSERVICETIME=@F_REQUESTSERVICETIME,");
  63. // strSql.Append("F_RETURNVISITCONTENT=@F_RETURNVISITCONTENT,");
  64. // strSql.Append("F_RETURNVISITFLAG=@F_RETURNVISITFLAG,");
  65. // strSql.Append("F_RETURNVISITTIME =@F_RETURNVISITTIME,");
  66. // strSql.Append("F_LINKMAN =@F_LINKMAN,");
  67. // strSql.Append("F_REPAIRMANID =@F_REPAIRMANID,");
  68. // strSql.Append("F_FORMID =@F_FORMID");
  69. // strSql.Append(" where F_WORKORDERID=@F_WORKORDERID");
  70. // SqlParameter[] parameters = {
  71. // new SqlParameter("@F_CUSTOMERID", SqlDbType.Int,4),
  72. // new SqlParameter("@F_CUSTOMERNAME", SqlDbType.NVarChar,200),
  73. // new SqlParameter("@F_CUSTOMERTELEPHONE", SqlDbType.NVarChar,200),
  74. // new SqlParameter("@F_WORKORDERFROM", SqlDbType.NVarChar,200),
  75. // new SqlParameter("@F_RETURNVISITPROBLEM", SqlDbType.NVarChar,2000),
  76. // new SqlParameter("@F_REPAIRLEVEL",SqlDbType.Int,4),
  77. // new SqlParameter("@F_ADSLACCOUNT", SqlDbType.NVarChar,200),
  78. // new SqlParameter("@F_WORKORDERLEVELID", SqlDbType.Int,4),
  79. // new SqlParameter("@F_WORKORDERNAME", SqlDbType.NVarChar,200),
  80. // new SqlParameter("@F_CONTENT", SqlDbType.Text),
  81. // new SqlParameter("@F_WORKORDERTYPEID",SqlDbType.Int,4),
  82. // new SqlParameter("@F_USERID", SqlDbType.Int,4),
  83. // new SqlParameter("@F_REPAIRMANNAME", SqlDbType.NVarChar,200),
  84. // new SqlParameter("@F_CREATEDATE", SqlDbType.DateTime),
  85. // new SqlParameter("@F_WORKORDERSTATEID", SqlDbType.Int,4),
  86. // new SqlParameter("@F_REPAIRREQUEST", SqlDbType.NVarChar,200),
  87. // new SqlParameter("@F_INSTALLADDRESS", SqlDbType.NVarChar,200),
  88. // new SqlParameter("@F_DEPTID", SqlDbType.Int,4),
  89. // new SqlParameter("@F_DEPTCODE", SqlDbType.NVarChar,200),
  90. // new SqlParameter("@F_CREATEBY", SqlDbType.Int,4),
  91. // new SqlParameter("@F_USERNAME", SqlDbType.NVarChar,200),
  92. // new SqlParameter("@F_REQUESTSERVICETIME",SqlDbType.DateTime),
  93. // new SqlParameter("@F_RETURNVISITCONTENT", SqlDbType.VarChar,800),
  94. // new SqlParameter("@F_RETURNVISITFLAG", SqlDbType.Int,4),
  95. // new SqlParameter("@F_RETURNVISITTIME ", SqlDbType.DateTime),
  96. // new SqlParameter("@F_LINKMAN", SqlDbType.NVarChar,200),
  97. // new SqlParameter("@F_REPAIRMANID", SqlDbType.Int,4),
  98. // new SqlParameter("@F_FORMID", SqlDbType.Int,4),
  99. // new SqlParameter("@F_WORKORDERID", SqlDbType.Int,4)};
  100. // parameters[0].Value = model.F_CUSTOMERID;
  101. // parameters[1].Value = model.F_CUSTOMERNAME;
  102. // parameters[2].Value = model.F_CUSTOMERTELEPHONE;
  103. // parameters[3].Value = model.F_WORKORDERFROM;
  104. // parameters[4].Value = model.F_RETURNVISITPROBLEM;
  105. // parameters[5].Value = model.F_REPAIRLEVEL;
  106. // parameters[6].Value = model.F_ADSLACCOUNT;
  107. // parameters[7].Value = model.F_WORKORDERLEVELID;
  108. // parameters[8].Value = model.F_WORKORDERNAME;
  109. // parameters[9].Value = model.F_CONTENT;
  110. // parameters[10].Value = model.F_WORKORDERTYPEID;
  111. // parameters[11].Value = model.F_USERID;
  112. // parameters[12].Value = model.F_REPAIRMANNAME;
  113. // parameters[13].Value = DateTime.Now;
  114. // parameters[14].Value = model.F_WORKORDERSTATEID;
  115. // parameters[15].Value = model.F_REPAIRREQUEST;
  116. // parameters[16].Value = model.F_INSTALLADDRESS;
  117. // parameters[17].Value = model.F_DEPTID;
  118. // parameters[18].Value = model.F_DEPTCODE;
  119. // parameters[19].Value = model.F_CREATEBY;
  120. // parameters[20].Value = model.F_USERNAME;
  121. // parameters[21].Value = model.F_REQUESTSERVICETIME;
  122. // parameters[22].Value = model.F_RETURNVISITCONTENT;
  123. // parameters[23].Value = model.F_RETURNVISITFLAG;
  124. // parameters[24].Value = model.F_RETURNVISITTIME;
  125. // parameters[25].Value = model.F_LINKMAN;
  126. // parameters[26].Value = model.F_REPAIRMANID;
  127. // parameters[27].Value = historyId;
  128. // parameters[28].Value = model.F_WORKORDERID;
  129. // int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  130. // if (rows > 0)
  131. // {
  132. // return true;
  133. // }
  134. // else
  135. // {
  136. // return false;
  137. // }
  138. //}
  139. /// <summary>
  140. /// 增加一条数据
  141. /// </summary>
  142. public int Add(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model)
  143. {
  144. StringBuilder strSql = new StringBuilder();
  145. strSql.Append("insert into T_Wo_WorkOrderBase(");
  146. strSql.Append(@"F_WORKORDERTYPEID,F_WORKORDERSTATEID,F_CODE,F_WORKORDERNAME,F_NUMBER,
  147. F_CUSTOMERNAME,F_CUSTOMERTELEPHONE,F_LINKMAN,F_LINKMANTELEPHONE,F_ADSLACCOUNT,F_BANDWIDTH,F_STANDARDADDRESS,
  148. F_INSTALLADDRESS,F_KSHADDRESSCODE,F_PROVINCE,F_CITY,F_AREA,F_ROAD,F_HOUSING,F_WORKORDERFROM,F_WORKORDERLEVELID,
  149. F_FILEFLAG,F_CONTENT,F_CREATEBY,F_CREATEDATE,F_DEPTCODE,F_EMPCODE,F_DEPTID,F_USERID,F_USERNAME,F_RETURNVISITFLAG,
  150. F_RETURNVISITSTATE,F_RETURNVISITRESULT,F_RETURNVISITCONTENT,F_DELETEFLAG,F_ALLUSETIMES,F_STARTTIME,F_ENDTIME,F_REMAINDERTIME,
  151. F_REMAINDERENDTIME,F_SUBSCRIBETIME1,F_SUBSCRIBETIME2,F_ACCEPTTIMELIMIT,F_ASKFINISHTIME,F_OVERTIMES,F_FORMID,F_HASTENCOUNTS,F_RANGEID,
  152. F_RANGEX,F_RANGEY,F_INSTANCEID,F_CUSTOMERID,F_REPAIRMANID,F_REPAIRMANNAME,F_REPAIRMANPHONE,F_REPAIRREQUEST,F_REPAIRCLOSEMANID,
  153. F_REPAIRCLOSEMANNAME,F_REPAIRCLOSEREASONS,F_REPAIRCLOSEREPTID,F_REPAIRCLOSEREPT,F_REPAIRLEVEL,F_REPAIRLEVELNAME,F_SENTORDERTIME,
  154. F_USERPHONE,F_RETURNVISITTIME,F_REQUESTSERVICETIME,F_SERVICETYPE,F_DECLARATIONTIME,F_SERVICENATURE,F_SERVICEWAY,F_RETURNVISITMAN,
  155. F_RETURNVISITID,F_RETURNVISITOPINION,F_RETURNVISITPROBLEM,F_CallId,F_CREATEBYids)");
  156. strSql.Append(" values (");
  157. strSql.Append(@"@F_WORKORDERTYPEID,@F_WORKORDERSTATEID,@F_CODE,@F_WORKORDERNAME,@F_NUMBER,@F_CUSTOMERNAME,
  158. @F_CUSTOMERTELEPHONE,@F_LINKMAN,@F_LINKMANTELEPHONE,@F_ADSLACCOUNT,@F_BANDWIDTH,@F_STANDARDADDRESS,@F_INSTALLADDRESS,
  159. @F_KSHADDRESSCODE,@F_PROVINCE,@F_CITY,@F_AREA,@F_ROAD,@F_HOUSING,@F_WORKORDERFROM,@F_WORKORDERLEVELID,@F_FILEFLAG,@F_CONTENT,
  160. @F_CREATEBY,@F_CREATEDATE,@F_DEPTCODE,@F_EMPCODE,@F_DEPTID,@F_USERID,@F_USERNAME,@F_RETURNVISITFLAG,@F_RETURNVISITSTATE,
  161. @F_RETURNVISITRESULT,@F_RETURNVISITCONTENT,@F_DELETEFLAG,@F_ALLUSETIMES,@F_STARTTIME,@F_ENDTIME,@F_REMAINDERTIME,@F_REMAINDERENDTIME,
  162. @F_SUBSCRIBETIME1,@F_SUBSCRIBETIME2,@F_ACCEPTTIMELIMIT,@F_ASKFINISHTIME,@F_OVERTIMES,@F_FORMID,@F_HASTENCOUNTS,@F_RANGEID,@F_RANGEX,
  163. @F_RANGEY,@F_INSTANCEID,@F_CUSTOMERID,@F_REPAIRMANID,@F_REPAIRMANNAME,@F_REPAIRMANPHONE,@F_REPAIRREQUEST,@F_REPAIRCLOSEMANID,
  164. @F_REPAIRCLOSEMANNAME,@F_REPAIRCLOSEREASONS,@F_REPAIRCLOSEREPTID,@F_REPAIRCLOSEREPT,@F_REPAIRLEVEL,@F_REPAIRLEVELNAME,@F_SENTORDERTIME,
  165. @F_USERPHONE,@F_RETURNVISITTIME,@F_REQUESTSERVICETIME,@F_SERVICETYPE,@F_DECLARATIONTIME,@F_SERVICENATURE,@F_SERVICEWAY,@F_RETURNVISITMAN,
  166. @F_RETURNVISITID,@F_RETURNVISITOPINION,@F_RETURNVISITPROBLEM,@F_CallId,@F_CREATEBYids)");
  167. strSql.Append(";select @@IDENTITY");
  168. SqlParameter[] parameters = {
  169. new SqlParameter("@F_WORKORDERTYPEID", SqlDbType.Int,4),
  170. new SqlParameter("@F_WORKORDERSTATEID", SqlDbType.Int,4),
  171. new SqlParameter("@F_CODE", SqlDbType.VarChar,50),
  172. new SqlParameter("@F_WORKORDERNAME", SqlDbType.VarChar,100),
  173. new SqlParameter("@F_NUMBER", SqlDbType.VarChar,50),
  174. new SqlParameter("@F_CUSTOMERNAME", SqlDbType.VarChar,50),
  175. new SqlParameter("@F_CUSTOMERTELEPHONE", SqlDbType.VarChar,50),
  176. new SqlParameter("@F_LINKMAN", SqlDbType.VarChar,50),
  177. new SqlParameter("@F_LINKMANTELEPHONE", SqlDbType.VarChar,50),
  178. new SqlParameter("@F_ADSLACCOUNT", SqlDbType.VarChar,50),
  179. new SqlParameter("@F_BANDWIDTH", SqlDbType.VarChar,50),
  180. new SqlParameter("@F_STANDARDADDRESS", SqlDbType.VarChar,200),
  181. new SqlParameter("@F_INSTALLADDRESS", SqlDbType.VarChar,200),
  182. new SqlParameter("@F_KSHADDRESSCODE", SqlDbType.VarChar,50),
  183. new SqlParameter("@F_PROVINCE", SqlDbType.VarChar,50),
  184. new SqlParameter("@F_CITY", SqlDbType.VarChar,50),
  185. new SqlParameter("@F_AREA", SqlDbType.VarChar,50),
  186. new SqlParameter("@F_ROAD", SqlDbType.VarChar,50),
  187. new SqlParameter("@F_HOUSING", SqlDbType.VarChar,50),
  188. new SqlParameter("@F_WORKORDERFROM", SqlDbType.VarChar,500),
  189. new SqlParameter("@F_WORKORDERLEVELID", SqlDbType.Int,4),
  190. new SqlParameter("@F_FILEFLAG", SqlDbType.Int,4),
  191. new SqlParameter("@F_CONTENT", SqlDbType.Text),
  192. new SqlParameter("@F_CREATEBY", SqlDbType.Int,4),
  193. new SqlParameter("@F_CREATEDATE", SqlDbType.DateTime),
  194. new SqlParameter("@F_DEPTCODE", SqlDbType.VarChar,50),
  195. new SqlParameter("@F_EMPCODE", SqlDbType.VarChar,50),
  196. new SqlParameter("@F_DEPTID", SqlDbType.Int,4),
  197. new SqlParameter("@F_USERID", SqlDbType.Int,4),
  198. new SqlParameter("@F_USERNAME", SqlDbType.VarChar,20),
  199. new SqlParameter("@F_RETURNVISITFLAG", SqlDbType.Int,4),
  200. new SqlParameter("@F_RETURNVISITSTATE", SqlDbType.Int,4),
  201. new SqlParameter("@F_RETURNVISITRESULT", SqlDbType.Int,4),
  202. new SqlParameter("@F_RETURNVISITCONTENT", SqlDbType.VarChar,800),
  203. new SqlParameter("@F_DELETEFLAG", SqlDbType.Int,4),
  204. new SqlParameter("@F_ALLUSETIMES", SqlDbType.Int,4),
  205. new SqlParameter("@F_STARTTIME", SqlDbType.DateTime),
  206. new SqlParameter("@F_ENDTIME", SqlDbType.DateTime),
  207. new SqlParameter("@F_REMAINDERTIME", SqlDbType.DateTime),
  208. new SqlParameter("@F_REMAINDERENDTIME", SqlDbType.DateTime),
  209. new SqlParameter("@F_SUBSCRIBETIME1", SqlDbType.DateTime),
  210. new SqlParameter("@F_SUBSCRIBETIME2", SqlDbType.DateTime),
  211. new SqlParameter("@F_ACCEPTTIMELIMIT", SqlDbType.DateTime),
  212. new SqlParameter("@F_ASKFINISHTIME", SqlDbType.DateTime),
  213. new SqlParameter("@F_OVERTIMES", SqlDbType.Int,4),
  214. new SqlParameter("@F_FORMID", SqlDbType.Int,4),
  215. new SqlParameter("@F_HASTENCOUNTS", SqlDbType.Int,4),
  216. new SqlParameter("@F_RANGEID", SqlDbType.Decimal,9),
  217. new SqlParameter("@F_RANGEX", SqlDbType.Decimal,9),
  218. new SqlParameter("@F_RANGEY", SqlDbType.Decimal,9),
  219. new SqlParameter("@F_INSTANCEID", SqlDbType.Int,4),
  220. new SqlParameter("@F_CUSTOMERID", SqlDbType.Int,4),
  221. new SqlParameter("@F_REPAIRMANID", SqlDbType.Int,4),
  222. new SqlParameter("@F_REPAIRMANNAME", SqlDbType.NVarChar,20),
  223. new SqlParameter("@F_REPAIRMANPHONE", SqlDbType.NVarChar,20),
  224. new SqlParameter("@F_REPAIRREQUEST", SqlDbType.NVarChar,2000),
  225. new SqlParameter("@F_REPAIRCLOSEMANID", SqlDbType.Int,4),
  226. new SqlParameter("@F_REPAIRCLOSEMANNAME", SqlDbType.NVarChar,20),
  227. new SqlParameter("@F_REPAIRCLOSEREASONS", SqlDbType.NVarChar,4000),
  228. new SqlParameter("@F_REPAIRCLOSEREPTID", SqlDbType.Int,4),
  229. new SqlParameter("@F_REPAIRCLOSEREPT", SqlDbType.NVarChar,50),
  230. new SqlParameter("@F_REPAIRLEVEL", SqlDbType.Int,4),
  231. new SqlParameter("@F_REPAIRLEVELNAME", SqlDbType.NVarChar,20),
  232. new SqlParameter("@F_SENTORDERTIME", SqlDbType.DateTime),
  233. new SqlParameter("@F_USERPHONE", SqlDbType.VarChar,20),
  234. new SqlParameter("@F_RETURNVISITTIME", SqlDbType.DateTime),
  235. new SqlParameter("@F_REQUESTSERVICETIME", SqlDbType.DateTime),
  236. new SqlParameter("@F_SERVICETYPE", SqlDbType.NVarChar,1000),
  237. new SqlParameter("@F_DECLARATIONTIME", SqlDbType.Decimal,9),
  238. new SqlParameter("@F_SERVICENATURE", SqlDbType.NVarChar,200),
  239. new SqlParameter("@F_SERVICEWAY", SqlDbType.NVarChar,20),
  240. new SqlParameter("@F_RETURNVISITMAN", SqlDbType.NVarChar,20),
  241. new SqlParameter("@F_RETURNVISITID", SqlDbType.Int,4),
  242. new SqlParameter("@F_RETURNVISITOPINION", SqlDbType.NChar,10),
  243. new SqlParameter("@F_RETURNVISITPROBLEM", SqlDbType.NVarChar,2000),
  244. new SqlParameter("@F_CallId", SqlDbType.Int,4),
  245. new SqlParameter("@F_CREATEBYids", SqlDbType.NVarChar,100)
  246. };
  247. parameters[0].Value = model.F_WORKORDERTYPEID;
  248. parameters[1].Value = model.F_WORKORDERSTATEID;
  249. parameters[2].Value = model.F_CODE;
  250. parameters[3].Value = model.F_WORKORDERNAME;
  251. parameters[4].Value = model.F_NUMBER;
  252. parameters[5].Value = model.F_CUSTOMERNAME;
  253. parameters[6].Value = model.F_CUSTOMERTELEPHONE;
  254. parameters[7].Value = model.F_LINKMAN;
  255. parameters[8].Value = model.F_LINKMANTELEPHONE;
  256. parameters[9].Value = model.F_ADSLACCOUNT;
  257. parameters[10].Value = model.F_BANDWIDTH;
  258. parameters[11].Value = model.F_STANDARDADDRESS;
  259. parameters[12].Value = model.F_INSTALLADDRESS;
  260. parameters[13].Value = model.F_KSHADDRESSCODE;
  261. parameters[14].Value = model.F_PROVINCE;
  262. parameters[15].Value = model.F_CITY;
  263. parameters[16].Value = model.F_AREA;
  264. parameters[17].Value = model.F_ROAD;
  265. parameters[18].Value = model.F_HOUSING;
  266. parameters[19].Value = model.F_WORKORDERFROM;
  267. parameters[20].Value = model.F_WORKORDERLEVELID;
  268. parameters[21].Value = model.F_FILEFLAG;
  269. parameters[22].Value = model.F_CONTENT;
  270. parameters[23].Value = model.F_CREATEBY;
  271. parameters[24].Value = model.F_CREATEDATE;
  272. parameters[25].Value = model.F_DEPTCODE;
  273. parameters[26].Value = model.F_EMPCODE;
  274. parameters[27].Value = model.F_DEPTID;
  275. parameters[28].Value = model.F_USERID;
  276. parameters[29].Value = model.F_USERNAME;
  277. parameters[30].Value = model.F_RETURNVISITFLAG;
  278. parameters[31].Value = model.F_RETURNVISITSTATE;
  279. parameters[32].Value = model.F_RETURNVISITRESULT;
  280. parameters[33].Value = model.F_RETURNVISITCONTENT;
  281. parameters[34].Value = model.F_DELETEFLAG;
  282. parameters[35].Value = model.F_ALLUSETIMES;
  283. parameters[36].Value = model.F_STARTTIME;
  284. parameters[37].Value = model.F_ENDTIME;
  285. parameters[38].Value = model.F_REMAINDERTIME;
  286. parameters[39].Value = model.F_REMAINDERENDTIME;
  287. parameters[40].Value = model.F_SUBSCRIBETIME1;
  288. parameters[41].Value = model.F_SUBSCRIBETIME2;
  289. parameters[42].Value = model.F_ACCEPTTIMELIMIT;
  290. parameters[43].Value = model.F_ASKFINISHTIME;
  291. parameters[44].Value = model.F_OVERTIMES;
  292. parameters[45].Value = model.F_FORMID;
  293. parameters[46].Value = model.F_HASTENCOUNTS;
  294. parameters[47].Value = model.F_RANGEID;
  295. parameters[48].Value = model.F_RANGEX;
  296. parameters[49].Value = model.F_RANGEY;
  297. parameters[50].Value = model.F_INSTANCEID;
  298. parameters[51].Value = model.F_CUSTOMERID;
  299. parameters[52].Value = model.F_REPAIRMANID;
  300. parameters[53].Value = model.F_REPAIRMANNAME;
  301. parameters[54].Value = model.F_REPAIRMANPHONE;
  302. parameters[55].Value = model.F_REPAIRREQUEST;
  303. parameters[56].Value = model.F_REPAIRCLOSEMANID;
  304. parameters[57].Value = model.F_REPAIRCLOSEMANNAME;
  305. parameters[58].Value = model.F_REPAIRCLOSEREASONS;
  306. parameters[59].Value = model.F_REPAIRCLOSEREPTID;
  307. parameters[60].Value = model.F_REPAIRCLOSEREPT;
  308. parameters[61].Value = model.F_REPAIRLEVEL;
  309. parameters[62].Value = model.F_REPAIRLEVELNAME;
  310. parameters[63].Value = model.F_SENTORDERTIME;
  311. parameters[64].Value = model.F_USERPHONE;
  312. parameters[65].Value = model.F_RETURNVISITTIME;
  313. parameters[66].Value = model.F_REQUESTSERVICETIME;
  314. parameters[67].Value = model.F_SERVICETYPE;
  315. parameters[68].Value = model.F_DECLARATIONTIME;
  316. parameters[69].Value = model.F_SERVICENATURE;
  317. parameters[70].Value = model.F_SERVICEWAY;
  318. parameters[71].Value = model.F_RETURNVISITMAN;
  319. parameters[72].Value = model.F_RETURNVISITID;
  320. parameters[73].Value = model.F_RETURNVISITOPINION;
  321. parameters[74].Value = model.F_RETURNVISITPROBLEM;
  322. parameters[75].Value = model.F_CallId;
  323. parameters[76].Value = model.F_CREATEBYids;
  324. object obj = DbHelperSQL.GetSingle(strSql.ToString(), parameters);
  325. if (obj == null)
  326. {
  327. return 0;
  328. }
  329. else
  330. {
  331. return Convert.ToInt32(obj);
  332. }
  333. }
  334. /// <summary>
  335. /// 增加一条手工微博工单数据
  336. /// </summary>
  337. public int AddWbgd(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model)
  338. {
  339. StringBuilder strSql = new StringBuilder();
  340. strSql.Append("insert into T_Wo_WorkOrderBase(");
  341. strSql.Append(@"F_WORKORDERTYPEID,F_WORKORDERSTATEID,F_CODE,F_WORKORDERNAME,F_NUMBER,F_CUSTOMERNAME,F_CUSTOMERTELEPHONE,
  342. F_LINKMAN,F_LINKMANTELEPHONE,F_ADSLACCOUNT,F_BANDWIDTH,F_STANDARDADDRESS,F_INSTALLADDRESS,F_KSHADDRESSCODE,F_PROVINCE,F_CITY,F_AREA,
  343. F_ROAD,F_HOUSING,F_WORKORDERFROM,F_WORKORDERLEVELID,F_FILEFLAG,F_CONTENT,F_CREATEBY,F_CREATEDATE,F_DEPTCODE,F_EMPCODE,F_DEPTID,F_USERID
  344. ,F_USERNAME,F_RETURNVISITFLAG,F_RETURNVISITSTATE,F_RETURNVISITRESULT,F_RETURNVISITCONTENT,F_DELETEFLAG,F_ALLUSETIMES,F_STARTTIME,F_ENDTIME,
  345. F_REMAINDERTIME,F_REMAINDERENDTIME,F_SUBSCRIBETIME1,F_SUBSCRIBETIME2,F_ACCEPTTIMELIMIT,F_ASKFINISHTIME,F_OVERTIMES,F_FORMID,F_HASTENCOUNTS,
  346. F_RANGEID,F_RANGEX,F_RANGEY,F_INSTANCEID,F_CUSTOMERID,F_REPAIRMANID,F_REPAIRMANNAME,F_REPAIRMANPHONE,F_REPAIRREQUEST,F_REPAIRCLOSEMANID,
  347. F_REPAIRCLOSEMANNAME,F_REPAIRCLOSEREASONS,F_REPAIRCLOSEREPTID,F_REPAIRCLOSEREPT,F_REPAIRLEVEL,F_REPAIRLEVELNAME,F_SENTORDERTIME,F_USERPHONE,
  348. F_RETURNVISITTIME,F_REQUESTSERVICETIME,F_SERVICETYPE,F_DECLARATIONTIME,F_SERVICENATURE,F_SERVICEWAY,F_RETURNVISITMAN,F_RETURNVISITID,
  349. F_RETURNVISITOPINION,F_RETURNVISITPROBLEM,F_CallId,F_CREATEBYids)");
  350. strSql.Append(" values (");
  351. strSql.Append(@"@F_WORKORDERTYPEID,@F_WORKORDERSTATEID,@F_CODE,@F_WORKORDERNAME,@F_NUMBER,@F_CUSTOMERNAME,@F_CUSTOMERTELEPHONE,
  352. @F_LINKMAN,@F_LINKMANTELEPHONE,@F_ADSLACCOUNT,@F_BANDWIDTH,@F_STANDARDADDRESS,@F_INSTALLADDRESS,@F_KSHADDRESSCODE,@F_PROVINCE,@F_CITY,@F_AREA,
  353. @F_ROAD,@F_HOUSING,@F_WORKORDERFROM,@F_WORKORDERLEVELID,@F_FILEFLAG,@F_CONTENT,@F_CREATEBY,@F_CREATEDATE,@F_DEPTCODE,@F_EMPCODE,@F_DEPTID,@F_USERID,
  354. @F_USERNAME,@F_RETURNVISITFLAG,@F_RETURNVISITSTATE,@F_RETURNVISITRESULT,@F_RETURNVISITCONTENT,@F_DELETEFLAG,@F_ALLUSETIMES,@F_STARTTIME,@F_ENDTIME,
  355. @F_REMAINDERTIME,@F_REMAINDERENDTIME,@F_SUBSCRIBETIME1,@F_SUBSCRIBETIME2,@F_ACCEPTTIMELIMIT,@F_ASKFINISHTIME,@F_OVERTIMES,@F_FORMID,@F_HASTENCOUNTS,
  356. @F_RANGEID,@F_RANGEX,@F_RANGEY,@F_INSTANCEID,@F_CUSTOMERID,@F_REPAIRMANID,@F_REPAIRMANNAME,@F_REPAIRMANPHONE,@F_REPAIRREQUEST,@F_REPAIRCLOSEMANID,
  357. @F_REPAIRCLOSEMANNAME,@F_REPAIRCLOSEREASONS,@F_REPAIRCLOSEREPTID,@F_REPAIRCLOSEREPT,@F_REPAIRLEVEL,@F_REPAIRLEVELNAME,@F_SENTORDERTIME,@F_USERPHONE,
  358. @F_RETURNVISITTIME,@F_REQUESTSERVICETIME,@F_SERVICETYPE,@F_DECLARATIONTIME,@F_SERVICENATURE,@F_SERVICEWAY,@F_RETURNVISITMAN,@F_RETURNVISITID,
  359. @F_RETURNVISITOPINION,@F_RETURNVISITPROBLEM,@F_CallId,@F_CREATEBYids)");
  360. strSql.Append(";select @@IDENTITY");
  361. SqlParameter[] parameters = {
  362. new SqlParameter("@F_WORKORDERTYPEID", SqlDbType.Int,4),
  363. new SqlParameter("@F_WORKORDERSTATEID", SqlDbType.Int,4),
  364. new SqlParameter("@F_CODE", SqlDbType.VarChar,50),
  365. new SqlParameter("@F_WORKORDERNAME", SqlDbType.VarChar,100),
  366. new SqlParameter("@F_NUMBER", SqlDbType.VarChar,50),
  367. new SqlParameter("@F_CUSTOMERNAME", SqlDbType.VarChar,50),
  368. new SqlParameter("@F_CUSTOMERTELEPHONE", SqlDbType.VarChar,50),
  369. new SqlParameter("@F_LINKMAN", SqlDbType.VarChar,50),
  370. new SqlParameter("@F_LINKMANTELEPHONE", SqlDbType.VarChar,50),
  371. new SqlParameter("@F_ADSLACCOUNT", SqlDbType.VarChar,50),
  372. new SqlParameter("@F_BANDWIDTH", SqlDbType.VarChar,50),
  373. new SqlParameter("@F_STANDARDADDRESS", SqlDbType.VarChar,200),
  374. new SqlParameter("@F_INSTALLADDRESS", SqlDbType.VarChar,200),
  375. new SqlParameter("@F_KSHADDRESSCODE", SqlDbType.VarChar,50),
  376. new SqlParameter("@F_PROVINCE", SqlDbType.VarChar,50),
  377. new SqlParameter("@F_CITY", SqlDbType.VarChar,50),
  378. new SqlParameter("@F_AREA", SqlDbType.VarChar,50),
  379. new SqlParameter("@F_ROAD", SqlDbType.VarChar,50),
  380. new SqlParameter("@F_HOUSING", SqlDbType.VarChar,50),
  381. new SqlParameter("@F_WORKORDERFROM", SqlDbType.VarChar,500),
  382. new SqlParameter("@F_WORKORDERLEVELID", SqlDbType.Int,4),
  383. new SqlParameter("@F_FILEFLAG", SqlDbType.Int,4),
  384. new SqlParameter("@F_CONTENT", SqlDbType.Text),
  385. new SqlParameter("@F_CREATEBY", SqlDbType.Int,4),
  386. new SqlParameter("@F_CREATEDATE", SqlDbType.DateTime),
  387. new SqlParameter("@F_DEPTCODE", SqlDbType.VarChar,50),
  388. new SqlParameter("@F_EMPCODE", SqlDbType.VarChar,50),
  389. new SqlParameter("@F_DEPTID", SqlDbType.Int,4),
  390. new SqlParameter("@F_USERID", SqlDbType.Int,4),
  391. new SqlParameter("@F_USERNAME", SqlDbType.VarChar,20),
  392. new SqlParameter("@F_RETURNVISITFLAG", SqlDbType.Int,4),
  393. new SqlParameter("@F_RETURNVISITSTATE", SqlDbType.Int,4),
  394. new SqlParameter("@F_RETURNVISITRESULT", SqlDbType.Int,4),
  395. new SqlParameter("@F_RETURNVISITCONTENT", SqlDbType.VarChar,800),
  396. new SqlParameter("@F_DELETEFLAG", SqlDbType.Int,4),
  397. new SqlParameter("@F_ALLUSETIMES", SqlDbType.Int,4),
  398. new SqlParameter("@F_STARTTIME", SqlDbType.DateTime),
  399. new SqlParameter("@F_ENDTIME", SqlDbType.DateTime),
  400. new SqlParameter("@F_REMAINDERTIME", SqlDbType.DateTime),
  401. new SqlParameter("@F_REMAINDERENDTIME", SqlDbType.DateTime),
  402. new SqlParameter("@F_SUBSCRIBETIME1", SqlDbType.DateTime),
  403. new SqlParameter("@F_SUBSCRIBETIME2", SqlDbType.DateTime),
  404. new SqlParameter("@F_ACCEPTTIMELIMIT", SqlDbType.DateTime),
  405. new SqlParameter("@F_ASKFINISHTIME", SqlDbType.DateTime),
  406. new SqlParameter("@F_OVERTIMES", SqlDbType.Int,4),
  407. new SqlParameter("@F_FORMID", SqlDbType.Int,4),
  408. new SqlParameter("@F_HASTENCOUNTS", SqlDbType.Int,4),
  409. new SqlParameter("@F_RANGEID", SqlDbType.Decimal,9),
  410. new SqlParameter("@F_RANGEX", SqlDbType.Decimal,9),
  411. new SqlParameter("@F_RANGEY", SqlDbType.Decimal,9),
  412. new SqlParameter("@F_INSTANCEID", SqlDbType.Int,4),
  413. new SqlParameter("@F_CUSTOMERID", SqlDbType.Int,4),
  414. new SqlParameter("@F_REPAIRMANID", SqlDbType.Int,4),
  415. new SqlParameter("@F_REPAIRMANNAME", SqlDbType.NVarChar,20),
  416. new SqlParameter("@F_REPAIRMANPHONE", SqlDbType.NVarChar,20),
  417. new SqlParameter("@F_REPAIRREQUEST", SqlDbType.NVarChar,2000),
  418. new SqlParameter("@F_REPAIRCLOSEMANID", SqlDbType.Int,4),
  419. new SqlParameter("@F_REPAIRCLOSEMANNAME", SqlDbType.NVarChar,20),
  420. new SqlParameter("@F_REPAIRCLOSEREASONS", SqlDbType.NVarChar,4000),
  421. new SqlParameter("@F_REPAIRCLOSEREPTID", SqlDbType.Int,4),
  422. new SqlParameter("@F_REPAIRCLOSEREPT", SqlDbType.NVarChar,50),
  423. new SqlParameter("@F_REPAIRLEVEL", SqlDbType.Int,4),
  424. new SqlParameter("@F_REPAIRLEVELNAME", SqlDbType.NVarChar,20),
  425. new SqlParameter("@F_SENTORDERTIME", SqlDbType.DateTime),
  426. new SqlParameter("@F_USERPHONE", SqlDbType.VarChar,20),
  427. new SqlParameter("@F_RETURNVISITTIME", SqlDbType.DateTime),
  428. new SqlParameter("@F_REQUESTSERVICETIME", SqlDbType.DateTime),
  429. new SqlParameter("@F_SERVICETYPE", SqlDbType.NVarChar,1000),
  430. new SqlParameter("@F_DECLARATIONTIME", SqlDbType.Decimal,9),
  431. new SqlParameter("@F_SERVICENATURE", SqlDbType.NVarChar,200),
  432. new SqlParameter("@F_SERVICEWAY", SqlDbType.NVarChar,20),
  433. new SqlParameter("@F_RETURNVISITMAN", SqlDbType.NVarChar,20),
  434. new SqlParameter("@F_RETURNVISITID", SqlDbType.Int,4),
  435. new SqlParameter("@F_RETURNVISITOPINION", SqlDbType.NChar,10),
  436. new SqlParameter("@F_RETURNVISITPROBLEM", SqlDbType.NVarChar,2000),
  437. new SqlParameter("@F_CallId", SqlDbType.Int,4),
  438. new SqlParameter("@F_CREATEBYids", SqlDbType.NVarChar,100)
  439. };
  440. parameters[0].Value = model.F_WORKORDERTYPEID;
  441. parameters[1].Value = model.F_WORKORDERSTATEID;
  442. parameters[2].Value = GetOrderNumber(int.Parse(model.F_REPAIRLEVEL.ToString()));
  443. parameters[3].Value = model.F_WORKORDERNAME;
  444. parameters[4].Value = model.F_NUMBER;
  445. parameters[5].Value = model.F_CUSTOMERNAME;
  446. parameters[6].Value = model.F_CUSTOMERTELEPHONE;
  447. parameters[7].Value = model.F_LINKMAN;
  448. parameters[8].Value = model.F_LINKMANTELEPHONE;
  449. parameters[9].Value = model.F_ADSLACCOUNT;
  450. parameters[10].Value = model.F_BANDWIDTH;
  451. parameters[11].Value = model.F_STANDARDADDRESS;
  452. parameters[12].Value = model.F_INSTALLADDRESS;
  453. parameters[13].Value = model.F_KSHADDRESSCODE;
  454. parameters[14].Value = model.F_PROVINCE;
  455. parameters[15].Value = model.F_CITY;
  456. parameters[16].Value = model.F_AREA;
  457. parameters[17].Value = model.F_ROAD;
  458. parameters[18].Value = model.F_HOUSING;
  459. parameters[19].Value = model.F_WORKORDERFROM;
  460. parameters[20].Value = model.F_WORKORDERLEVELID;
  461. parameters[21].Value = model.F_FILEFLAG;
  462. parameters[22].Value = model.F_CONTENT;
  463. parameters[23].Value = model.F_CREATEBY;
  464. parameters[24].Value = model.F_CREATEDATE;
  465. parameters[25].Value = model.F_DEPTCODE;
  466. parameters[26].Value = model.F_EMPCODE;
  467. parameters[27].Value = model.F_DEPTID;
  468. parameters[28].Value = model.F_USERID;
  469. parameters[29].Value = model.F_USERNAME;
  470. parameters[30].Value = model.F_RETURNVISITFLAG;
  471. parameters[31].Value = model.F_RETURNVISITSTATE;
  472. parameters[32].Value = model.F_RETURNVISITRESULT;
  473. parameters[33].Value = model.F_RETURNVISITCONTENT;
  474. parameters[34].Value = model.F_DELETEFLAG;
  475. parameters[35].Value = model.F_ALLUSETIMES;
  476. parameters[36].Value = model.F_STARTTIME;
  477. parameters[37].Value = model.F_ENDTIME;
  478. parameters[38].Value = model.F_REMAINDERTIME;
  479. parameters[39].Value = model.F_REMAINDERENDTIME;
  480. parameters[40].Value = model.F_SUBSCRIBETIME1;
  481. parameters[41].Value = model.F_SUBSCRIBETIME2;
  482. parameters[42].Value = model.F_ACCEPTTIMELIMIT;
  483. parameters[43].Value = model.F_ASKFINISHTIME;
  484. parameters[44].Value = model.F_OVERTIMES;
  485. parameters[45].Value = model.F_FORMID;
  486. parameters[46].Value = model.F_HASTENCOUNTS;
  487. parameters[47].Value = model.F_RANGEID;
  488. parameters[48].Value = model.F_RANGEX;
  489. parameters[49].Value = model.F_RANGEY;
  490. parameters[50].Value = model.F_INSTANCEID;
  491. parameters[51].Value = model.F_CUSTOMERID;
  492. parameters[52].Value = model.F_REPAIRMANID;
  493. parameters[53].Value = model.F_REPAIRMANNAME;
  494. parameters[54].Value = model.F_REPAIRMANPHONE;
  495. parameters[55].Value = model.F_REPAIRREQUEST;
  496. parameters[56].Value = model.F_REPAIRCLOSEMANID;
  497. parameters[57].Value = model.F_REPAIRCLOSEMANNAME;
  498. parameters[58].Value = model.F_REPAIRCLOSEREASONS;
  499. parameters[59].Value = model.F_REPAIRCLOSEREPTID;
  500. parameters[60].Value = model.F_REPAIRCLOSEREPT;
  501. parameters[61].Value = model.F_REPAIRLEVEL;
  502. parameters[62].Value = model.F_REPAIRLEVELNAME;
  503. parameters[63].Value = model.F_SENTORDERTIME;
  504. parameters[64].Value = model.F_USERPHONE;
  505. parameters[65].Value = model.F_RETURNVISITTIME;
  506. parameters[66].Value = model.F_REQUESTSERVICETIME;
  507. parameters[67].Value = model.F_SERVICETYPE;
  508. parameters[68].Value = model.F_DECLARATIONTIME;
  509. parameters[69].Value = model.F_SERVICENATURE;
  510. parameters[70].Value = model.F_SERVICEWAY;
  511. parameters[71].Value = model.F_RETURNVISITMAN;
  512. parameters[72].Value = model.F_RETURNVISITID;
  513. parameters[73].Value = model.F_RETURNVISITOPINION;
  514. parameters[74].Value = model.F_RETURNVISITPROBLEM;
  515. parameters[75].Value = model.F_CallId;
  516. parameters[76].Value = model.F_CREATEBYids;
  517. object obj = DbHelperSQL.GetSingle(strSql.ToString(), parameters);
  518. if (obj == null)
  519. {
  520. return 0;
  521. }
  522. else
  523. {
  524. return Convert.ToInt32(obj);
  525. }
  526. }
  527. /// <summary>
  528. /// 更新一条数据
  529. /// </summary>
  530. public bool Update(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model)
  531. {
  532. StringBuilder strSql = new StringBuilder();
  533. strSql.Append("update T_Wo_WorkOrderBase set ");
  534. strSql.Append("F_WORKORDERTYPEID=@F_WORKORDERTYPEID,");
  535. strSql.Append("F_WORKORDERSTATEID=@F_WORKORDERSTATEID,");
  536. strSql.Append("F_CODE=@F_CODE,");
  537. strSql.Append("F_WORKORDERNAME=@F_WORKORDERNAME,");
  538. strSql.Append("F_NUMBER=@F_NUMBER,");
  539. strSql.Append("F_CUSTOMERNAME=@F_CUSTOMERNAME,");
  540. strSql.Append("F_CUSTOMERTELEPHONE=@F_CUSTOMERTELEPHONE,");
  541. strSql.Append("F_LINKMAN=@F_LINKMAN,");
  542. strSql.Append("F_LINKMANTELEPHONE=@F_LINKMANTELEPHONE,");
  543. strSql.Append("F_ADSLACCOUNT=@F_ADSLACCOUNT,");
  544. strSql.Append("F_BANDWIDTH=@F_BANDWIDTH,");
  545. strSql.Append("F_STANDARDADDRESS=@F_STANDARDADDRESS,");
  546. strSql.Append("F_INSTALLADDRESS=@F_INSTALLADDRESS,");
  547. strSql.Append("F_KSHADDRESSCODE=@F_KSHADDRESSCODE,");
  548. strSql.Append("F_PROVINCE=@F_PROVINCE,");
  549. strSql.Append("F_CITY=@F_CITY,");
  550. strSql.Append("F_AREA=@F_AREA,");
  551. strSql.Append("F_ROAD=@F_ROAD,");
  552. strSql.Append("F_HOUSING=@F_HOUSING,");
  553. strSql.Append("F_WORKORDERFROM=@F_WORKORDERFROM,");
  554. strSql.Append("F_WORKORDERLEVELID=@F_WORKORDERLEVELID,");
  555. strSql.Append("F_FILEFLAG=@F_FILEFLAG,");
  556. strSql.Append("F_CONTENT=@F_CONTENT,");
  557. strSql.Append("F_CREATEBY=@F_CREATEBY,");
  558. strSql.Append("F_CREATEDATE=@F_CREATEDATE,");
  559. strSql.Append("F_DEPTCODE=@F_DEPTCODE,");
  560. strSql.Append("F_EMPCODE=@F_EMPCODE,");
  561. strSql.Append("F_DEPTID=@F_DEPTID,");
  562. strSql.Append("F_USERID=@F_USERID,");
  563. strSql.Append("F_USERNAME=@F_USERNAME,");
  564. strSql.Append("F_RETURNVISITFLAG=@F_RETURNVISITFLAG,");
  565. strSql.Append("F_RETURNVISITSTATE=@F_RETURNVISITSTATE,");
  566. strSql.Append("F_RETURNVISITRESULT=@F_RETURNVISITRESULT,");
  567. strSql.Append("F_RETURNVISITCONTENT=@F_RETURNVISITCONTENT,");
  568. strSql.Append("F_DELETEFLAG=@F_DELETEFLAG,");
  569. strSql.Append("F_ALLUSETIMES=@F_ALLUSETIMES,");
  570. strSql.Append("F_STARTTIME=@F_STARTTIME,");
  571. strSql.Append("F_ENDTIME=@F_ENDTIME,");
  572. strSql.Append("F_REMAINDERTIME=@F_REMAINDERTIME,");
  573. strSql.Append("F_REMAINDERENDTIME=@F_REMAINDERENDTIME,");
  574. strSql.Append("F_SUBSCRIBETIME1=@F_SUBSCRIBETIME1,");
  575. strSql.Append("F_SUBSCRIBETIME2=@F_SUBSCRIBETIME2,");
  576. strSql.Append("F_ACCEPTTIMELIMIT=@F_ACCEPTTIMELIMIT,");
  577. strSql.Append("F_ASKFINISHTIME=@F_ASKFINISHTIME,");
  578. strSql.Append("F_OVERTIMES=@F_OVERTIMES,");
  579. strSql.Append("F_FORMID=@F_FORMID,");
  580. strSql.Append("F_HASTENCOUNTS=@F_HASTENCOUNTS,");
  581. strSql.Append("F_RANGEID=@F_RANGEID,");
  582. strSql.Append("F_RANGEX=@F_RANGEX,");
  583. strSql.Append("F_RANGEY=@F_RANGEY,");
  584. strSql.Append("F_INSTANCEID=@F_INSTANCEID,");
  585. strSql.Append("F_CUSTOMERID=@F_CUSTOMERID,");
  586. strSql.Append("F_REPAIRMANID=@F_REPAIRMANID,");
  587. strSql.Append("F_REPAIRMANNAME=@F_REPAIRMANNAME,");
  588. strSql.Append("F_REPAIRMANPHONE=@F_REPAIRMANPHONE,");
  589. strSql.Append("F_REPAIRREQUEST=@F_REPAIRREQUEST,");
  590. strSql.Append("F_REPAIRCLOSEMANID=@F_REPAIRCLOSEMANID,");
  591. strSql.Append("F_REPAIRCLOSEMANNAME=@F_REPAIRCLOSEMANNAME,");
  592. strSql.Append("F_REPAIRCLOSEREASONS=@F_REPAIRCLOSEREASONS,");
  593. strSql.Append("F_REPAIRCLOSEREPTID=@F_REPAIRCLOSEREPTID,");
  594. strSql.Append("F_REPAIRCLOSEREPT=@F_REPAIRCLOSEREPT,");
  595. strSql.Append("F_REPAIRLEVEL=@F_REPAIRLEVEL,");
  596. strSql.Append("F_REPAIRLEVELNAME=@F_REPAIRLEVELNAME,");
  597. strSql.Append("F_SENTORDERTIME=@F_SENTORDERTIME,");
  598. strSql.Append("F_USERPHONE=@F_USERPHONE,");
  599. strSql.Append("F_RETURNVISITTIME=@F_RETURNVISITTIME,");
  600. strSql.Append("F_REQUESTSERVICETIME=@F_REQUESTSERVICETIME,");
  601. strSql.Append("F_SERVICETYPE=@F_SERVICETYPE,");
  602. strSql.Append("F_DECLARATIONTIME=@F_DECLARATIONTIME,");
  603. strSql.Append("F_SERVICENATURE=@F_SERVICENATURE,");
  604. strSql.Append("F_SERVICEWAY=@F_SERVICEWAY,");
  605. strSql.Append("F_RETURNVISITMAN=@F_RETURNVISITMAN,");
  606. strSql.Append("F_RETURNVISITID=@F_RETURNVISITID,");
  607. strSql.Append("F_RETURNVISITOPINION=@F_RETURNVISITOPINION,");
  608. strSql.Append("F_RETURNVISITPROBLEM=@F_RETURNVISITPROBLEM,");
  609. strSql.Append("F_CREATEBYids=@F_CREATEBYids,");
  610. strSql.Append("F_CallId=@F_CallId");
  611. strSql.Append(" where F_WORKORDERID=@F_WORKORDERID");
  612. SqlParameter[] parameters = {
  613. new SqlParameter("@F_WORKORDERTYPEID", SqlDbType.Int,4),
  614. new SqlParameter("@F_WORKORDERSTATEID", SqlDbType.Int,4),
  615. new SqlParameter("@F_CODE", SqlDbType.VarChar,50),
  616. new SqlParameter("@F_WORKORDERNAME", SqlDbType.VarChar,100),
  617. new SqlParameter("@F_NUMBER", SqlDbType.VarChar,50),
  618. new SqlParameter("@F_CUSTOMERNAME", SqlDbType.VarChar,50),
  619. new SqlParameter("@F_CUSTOMERTELEPHONE", SqlDbType.VarChar,50),
  620. new SqlParameter("@F_LINKMAN", SqlDbType.VarChar,50),
  621. new SqlParameter("@F_LINKMANTELEPHONE", SqlDbType.VarChar,50),
  622. new SqlParameter("@F_ADSLACCOUNT", SqlDbType.VarChar,50),
  623. new SqlParameter("@F_BANDWIDTH", SqlDbType.VarChar,50),
  624. new SqlParameter("@F_STANDARDADDRESS", SqlDbType.VarChar,200),
  625. new SqlParameter("@F_INSTALLADDRESS", SqlDbType.VarChar,200),
  626. new SqlParameter("@F_KSHADDRESSCODE", SqlDbType.VarChar,50),
  627. new SqlParameter("@F_PROVINCE", SqlDbType.VarChar,50),
  628. new SqlParameter("@F_CITY", SqlDbType.VarChar,50),
  629. new SqlParameter("@F_AREA", SqlDbType.VarChar,50),
  630. new SqlParameter("@F_ROAD", SqlDbType.VarChar,50),
  631. new SqlParameter("@F_HOUSING", SqlDbType.VarChar,50),
  632. new SqlParameter("@F_WORKORDERFROM", SqlDbType.VarChar,500),
  633. new SqlParameter("@F_WORKORDERLEVELID", SqlDbType.Int,4),
  634. new SqlParameter("@F_FILEFLAG", SqlDbType.Int,4),
  635. new SqlParameter("@F_CONTENT", SqlDbType.Text),
  636. new SqlParameter("@F_CREATEBY", SqlDbType.Int,4),
  637. new SqlParameter("@F_CREATEDATE", SqlDbType.DateTime),
  638. new SqlParameter("@F_DEPTCODE", SqlDbType.VarChar,50),
  639. new SqlParameter("@F_EMPCODE", SqlDbType.VarChar,50),
  640. new SqlParameter("@F_DEPTID", SqlDbType.Int,4),
  641. new SqlParameter("@F_USERID", SqlDbType.Int,4),
  642. new SqlParameter("@F_USERNAME", SqlDbType.VarChar,20),
  643. new SqlParameter("@F_RETURNVISITFLAG", SqlDbType.Int,4),
  644. new SqlParameter("@F_RETURNVISITSTATE", SqlDbType.Int,4),
  645. new SqlParameter("@F_RETURNVISITRESULT", SqlDbType.Int,4),
  646. new SqlParameter("@F_RETURNVISITCONTENT", SqlDbType.VarChar,800),
  647. new SqlParameter("@F_DELETEFLAG", SqlDbType.Int,4),
  648. new SqlParameter("@F_ALLUSETIMES", SqlDbType.Int,4),
  649. new SqlParameter("@F_STARTTIME", SqlDbType.DateTime),
  650. new SqlParameter("@F_ENDTIME", SqlDbType.DateTime),
  651. new SqlParameter("@F_REMAINDERTIME", SqlDbType.DateTime),
  652. new SqlParameter("@F_REMAINDERENDTIME", SqlDbType.DateTime),
  653. new SqlParameter("@F_SUBSCRIBETIME1", SqlDbType.DateTime),
  654. new SqlParameter("@F_SUBSCRIBETIME2", SqlDbType.DateTime),
  655. new SqlParameter("@F_ACCEPTTIMELIMIT", SqlDbType.DateTime),
  656. new SqlParameter("@F_ASKFINISHTIME", SqlDbType.DateTime),
  657. new SqlParameter("@F_OVERTIMES", SqlDbType.Int,4),
  658. new SqlParameter("@F_FORMID", SqlDbType.Int,4),
  659. new SqlParameter("@F_HASTENCOUNTS", SqlDbType.Int,4),
  660. new SqlParameter("@F_RANGEID", SqlDbType.Decimal,9),
  661. new SqlParameter("@F_RANGEX", SqlDbType.Decimal,9),
  662. new SqlParameter("@F_RANGEY", SqlDbType.Decimal,9),
  663. new SqlParameter("@F_INSTANCEID", SqlDbType.Int,4),
  664. new SqlParameter("@F_CUSTOMERID", SqlDbType.Int,4),
  665. new SqlParameter("@F_REPAIRMANID", SqlDbType.Int,4),
  666. new SqlParameter("@F_REPAIRMANNAME", SqlDbType.NVarChar,20),
  667. new SqlParameter("@F_REPAIRMANPHONE", SqlDbType.NVarChar,20),
  668. new SqlParameter("@F_REPAIRREQUEST", SqlDbType.NVarChar,2000),
  669. new SqlParameter("@F_REPAIRCLOSEMANID", SqlDbType.Int,4),
  670. new SqlParameter("@F_REPAIRCLOSEMANNAME", SqlDbType.NVarChar,20),
  671. new SqlParameter("@F_REPAIRCLOSEREASONS", SqlDbType.NVarChar,4000),
  672. new SqlParameter("@F_REPAIRCLOSEREPTID", SqlDbType.Int,4),
  673. new SqlParameter("@F_REPAIRCLOSEREPT", SqlDbType.NVarChar,50),
  674. new SqlParameter("@F_REPAIRLEVEL", SqlDbType.Int,4),
  675. new SqlParameter("@F_REPAIRLEVELNAME", SqlDbType.NVarChar,20),
  676. new SqlParameter("@F_SENTORDERTIME", SqlDbType.DateTime),
  677. new SqlParameter("@F_USERPHONE", SqlDbType.VarChar,20),
  678. new SqlParameter("@F_RETURNVISITTIME", SqlDbType.DateTime),
  679. new SqlParameter("@F_REQUESTSERVICETIME", SqlDbType.DateTime),
  680. new SqlParameter("@F_SERVICETYPE", SqlDbType.NVarChar,1000),
  681. new SqlParameter("@F_DECLARATIONTIME", SqlDbType.Decimal,9),
  682. new SqlParameter("@F_SERVICENATURE", SqlDbType.NVarChar,200),
  683. new SqlParameter("@F_SERVICEWAY", SqlDbType.NVarChar,20),
  684. new SqlParameter("@F_RETURNVISITMAN", SqlDbType.NVarChar,20),
  685. new SqlParameter("@F_RETURNVISITID", SqlDbType.Int,4),
  686. new SqlParameter("@F_RETURNVISITOPINION", SqlDbType.NChar,10),
  687. new SqlParameter("@F_RETURNVISITPROBLEM", SqlDbType.NVarChar,2000),
  688. new SqlParameter("@F_CREATEBYids", SqlDbType.NVarChar,100),
  689. new SqlParameter("@F_CallId", SqlDbType.Int,4),
  690. new SqlParameter("@F_WORKORDERID", SqlDbType.Int,4)};
  691. parameters[0].Value = model.F_WORKORDERTYPEID;
  692. parameters[1].Value = model.F_WORKORDERSTATEID;
  693. parameters[2].Value = model.F_CODE;
  694. parameters[3].Value = model.F_WORKORDERNAME;
  695. parameters[4].Value = model.F_NUMBER;
  696. parameters[5].Value = model.F_CUSTOMERNAME;
  697. parameters[6].Value = model.F_CUSTOMERTELEPHONE;
  698. parameters[7].Value = model.F_LINKMAN;
  699. parameters[8].Value = model.F_LINKMANTELEPHONE;
  700. parameters[9].Value = model.F_ADSLACCOUNT;
  701. parameters[10].Value = model.F_BANDWIDTH;
  702. parameters[11].Value = model.F_STANDARDADDRESS;
  703. parameters[12].Value = model.F_INSTALLADDRESS;
  704. parameters[13].Value = model.F_KSHADDRESSCODE;
  705. parameters[14].Value = model.F_PROVINCE;
  706. parameters[15].Value = model.F_CITY;
  707. parameters[16].Value = model.F_AREA;
  708. parameters[17].Value = model.F_ROAD;
  709. parameters[18].Value = model.F_HOUSING;
  710. parameters[19].Value = model.F_WORKORDERFROM;
  711. parameters[20].Value = model.F_WORKORDERLEVELID;
  712. parameters[21].Value = model.F_FILEFLAG;
  713. parameters[22].Value = model.F_CONTENT;
  714. parameters[23].Value = model.F_CREATEBY;
  715. parameters[24].Value = model.F_CREATEDATE;
  716. parameters[25].Value = model.F_DEPTCODE;
  717. parameters[26].Value = model.F_EMPCODE;
  718. parameters[27].Value = model.F_DEPTID;
  719. parameters[28].Value = model.F_USERID;
  720. parameters[29].Value = model.F_USERNAME;
  721. parameters[30].Value = model.F_RETURNVISITFLAG;
  722. parameters[31].Value = model.F_RETURNVISITSTATE;
  723. parameters[32].Value = model.F_RETURNVISITRESULT;
  724. parameters[33].Value = model.F_RETURNVISITCONTENT;
  725. parameters[34].Value = model.F_DELETEFLAG;
  726. parameters[35].Value = model.F_ALLUSETIMES;
  727. parameters[36].Value = model.F_STARTTIME;
  728. parameters[37].Value = model.F_ENDTIME;
  729. parameters[38].Value = model.F_REMAINDERTIME;
  730. parameters[39].Value = model.F_REMAINDERENDTIME;
  731. parameters[40].Value = model.F_SUBSCRIBETIME1;
  732. parameters[41].Value = model.F_SUBSCRIBETIME2;
  733. parameters[42].Value = model.F_ACCEPTTIMELIMIT;
  734. parameters[43].Value = model.F_ASKFINISHTIME;
  735. parameters[44].Value = model.F_OVERTIMES;
  736. parameters[45].Value = model.F_FORMID;
  737. parameters[46].Value = model.F_HASTENCOUNTS;
  738. parameters[47].Value = model.F_RANGEID;
  739. parameters[48].Value = model.F_RANGEX;
  740. parameters[49].Value = model.F_RANGEY;
  741. parameters[50].Value = model.F_INSTANCEID;
  742. parameters[51].Value = model.F_CUSTOMERID;
  743. parameters[52].Value = model.F_REPAIRMANID;
  744. parameters[53].Value = model.F_REPAIRMANNAME;
  745. parameters[54].Value = model.F_REPAIRMANPHONE;
  746. parameters[55].Value = model.F_REPAIRREQUEST;
  747. parameters[56].Value = model.F_REPAIRCLOSEMANID;
  748. parameters[57].Value = model.F_REPAIRCLOSEMANNAME;
  749. parameters[58].Value = model.F_REPAIRCLOSEREASONS;
  750. parameters[59].Value = model.F_REPAIRCLOSEREPTID;
  751. parameters[60].Value = model.F_REPAIRCLOSEREPT;
  752. parameters[61].Value = model.F_REPAIRLEVEL;
  753. parameters[62].Value = model.F_REPAIRLEVELNAME;
  754. parameters[63].Value = model.F_SENTORDERTIME;
  755. parameters[64].Value = model.F_USERPHONE;
  756. parameters[65].Value = model.F_RETURNVISITTIME;
  757. parameters[66].Value = model.F_REQUESTSERVICETIME;
  758. parameters[67].Value = model.F_SERVICETYPE;
  759. parameters[68].Value = model.F_DECLARATIONTIME;
  760. parameters[69].Value = model.F_SERVICENATURE;
  761. parameters[70].Value = model.F_SERVICEWAY;
  762. parameters[71].Value = model.F_RETURNVISITMAN;
  763. parameters[72].Value = model.F_RETURNVISITID;
  764. parameters[73].Value = model.F_RETURNVISITOPINION;
  765. parameters[74].Value = model.F_RETURNVISITPROBLEM;
  766. parameters[75].Value = model.F_CREATEBYids;
  767. parameters[76].Value = model.F_CallId;
  768. parameters[77].Value = model.F_WORKORDERID;
  769. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  770. if (rows > 0)
  771. {
  772. return true;
  773. }
  774. else
  775. {
  776. return false;
  777. }
  778. }
  779. public bool Update1(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model)
  780. {
  781. StringBuilder strSql = new StringBuilder();
  782. strSql.Append("update T_Wo_WorkOrderBase set ");
  783. strSql.Append("F_CONTENT=@F_CONTENT");
  784. strSql.Append(" where F_WORKORDERID=@F_WORKORDERID");
  785. SqlParameter[] parameters = {
  786. new SqlParameter("@F_CONTENT", SqlDbType.Text),
  787. new SqlParameter("@F_WORKORDERID", SqlDbType.Int,4)};
  788. parameters[0].Value = model.F_CONTENT;
  789. parameters[1].Value = model.F_WORKORDERID;
  790. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  791. if (rows > 0)
  792. {
  793. return true;
  794. }
  795. else
  796. {
  797. return false;
  798. }
  799. }
  800. /// <summary>
  801. /// 定责人员更新
  802. /// </summary>
  803. /// <param name="model"></param>
  804. /// <returns></returns>
  805. public bool UpdateDZuser(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model)
  806. {
  807. StringBuilder strSql = new StringBuilder();
  808. strSql.Append("update T_Wo_WorkOrderBase set ");
  809. strSql.Append(" F_ROAD=@F_ROAD");
  810. strSql.Append(" where F_WORKORDERID=@F_WORKORDERID AND (F_ROAD='' Or F_ROAD IS NULL)");
  811. SqlParameter[] parameters = {
  812. new SqlParameter("@F_ROAD", SqlDbType.VarChar,50),
  813. new SqlParameter("@F_WORKORDERID", SqlDbType.Int,4)};
  814. parameters[0].Value = model.F_ROAD;
  815. parameters[1].Value = model.F_WORKORDERID;
  816. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  817. if (rows > 0)
  818. {
  819. return true;
  820. }
  821. else
  822. {
  823. return false;
  824. }
  825. }
  826. /// <summary>
  827. /// 定责事件分类
  828. /// </summary>
  829. /// <param name="model"></param>
  830. /// <returns></returns>
  831. public bool UpdateDZClass(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model)
  832. {
  833. StringBuilder strSql = new StringBuilder();
  834. strSql.Append(" update T_Wo_WorkOrderBase set ");
  835. strSql.Append(" F_PROVINCE=@F_PROVINCE, ");
  836. strSql.Append(" F_WORKORDERSTATEID=5, ");
  837. strSql.Append(" F_REPAIRREQUEST='已定责', ");
  838. strSql.Append(" F_CITY=@F_CITY, ");
  839. strSql.Append(" F_SERVICENATURE=@F_SERVICENATURE, ");
  840. strSql.Append(" F_SERVICETYPE=@F_SERVICETYPE, ");
  841. strSql.Append(" F_HASTENCOUNTS=ISNULL(F_HASTENCOUNTS,0)+1, ");
  842. strSql.Append(" F_AREA=@F_AREA ");
  843. strSql.Append(" where F_WORKORDERID=@F_WORKORDERID AND F_WORKORDERSTATEID>3");
  844. SqlParameter[] parameters = {
  845. new SqlParameter("@F_PROVINCE",model.F_PROVINCE ),
  846. new SqlParameter("@F_CITY", model.F_CITY),
  847. new SqlParameter("@F_AREA", model.F_AREA),
  848. new SqlParameter("@F_WORKORDERID", model.F_WORKORDERID),
  849. new SqlParameter("@F_SERVICENATURE", model.F_SERVICENATURE),
  850. new SqlParameter("@F_SERVICETYPE", model.F_SERVICETYPE)
  851. };
  852. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  853. if (rows > 0)
  854. {
  855. return true;
  856. }
  857. else
  858. {
  859. return false;
  860. }
  861. }
  862. /// <summary>
  863. /// 删除一条数据
  864. /// </summary>
  865. public bool Delete(int F_WORKORDERID)
  866. {
  867. StringBuilder strSql = new StringBuilder();
  868. strSql.Append("delete from T_Wo_WorkOrderBase ");
  869. strSql.Append(" where F_WORKORDERID=@F_WORKORDERID");
  870. SqlParameter[] parameters = {
  871. new SqlParameter("@F_WORKORDERID", SqlDbType.Int,4)
  872. };
  873. parameters[0].Value = F_WORKORDERID;
  874. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  875. if (rows > 0)
  876. {
  877. return true;
  878. }
  879. else
  880. {
  881. return false;
  882. }
  883. }
  884. /// <summary>
  885. /// 批量删除数据
  886. /// </summary>
  887. public bool DeleteList(string F_WORKORDERIDlist)
  888. {
  889. StringBuilder strSql = new StringBuilder();
  890. strSql.Append("delete from T_Wo_WorkOrderBase ");
  891. strSql.Append(" where F_WORKORDERID in (" + F_WORKORDERIDlist + ") ");
  892. int rows = DbHelperSQL.ExecuteSql(strSql.ToString());
  893. if (rows > 0)
  894. {
  895. return true;
  896. }
  897. else
  898. {
  899. return false;
  900. }
  901. }
  902. /// <summary>
  903. /// 得到一个对象实体
  904. /// </summary>
  905. public YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase GetModel(int F_WORKORDERID)
  906. {
  907. StringBuilder strSql = new StringBuilder();
  908. strSql.Append(@"select top 1 F_WORKORDERID,F_WORKORDERTYPEID,F_WORKORDERSTATEID,
  909. F_CODE,F_WORKORDERNAME,F_NUMBER,F_CUSTOMERNAME,F_CUSTOMERTELEPHONE,F_LINKMAN,F_LINKMANTELEPHONE,
  910. F_ADSLACCOUNT,F_BANDWIDTH,F_STANDARDADDRESS,F_INSTALLADDRESS,F_KSHADDRESSCODE,F_PROVINCE,F_CITY,F_AREA,
  911. F_ROAD,F_HOUSING,F_WORKORDERFROM,F_WORKORDERLEVELID,F_FILEFLAG,F_CONTENT,F_CREATEBY,F_CREATEDATE,F_DEPTCODE,
  912. F_EMPCODE,F_DEPTID,F_USERID,F_USERNAME,F_RETURNVISITFLAG,F_RETURNVISITSTATE,F_RETURNVISITRESULT,F_RETURNVISITCONTENT,
  913. F_DELETEFLAG,F_ALLUSETIMES,F_STARTTIME,F_ENDTIME,F_REMAINDERTIME,F_REMAINDERENDTIME,F_SUBSCRIBETIME1,F_SUBSCRIBETIME2,
  914. F_ACCEPTTIMELIMIT,F_ASKFINISHTIME,F_OVERTIMES,F_FORMID,F_HASTENCOUNTS,F_RANGEID,F_RANGEX,F_RANGEY,F_INSTANCEID,F_CUSTOMERID,
  915. F_REPAIRMANID,F_REPAIRMANNAME,F_REPAIRMANPHONE,F_REPAIRREQUEST,F_REPAIRCLOSEMANID,F_REPAIRCLOSEMANNAME,F_REPAIRCLOSEREASONS
  916. ,F_REPAIRCLOSEREPTID,F_REPAIRCLOSEREPT,F_REPAIRLEVEL,F_REPAIRLEVELNAME,F_SENTORDERTIME,F_USERPHONE,F_RETURNVISITTIME,
  917. F_REQUESTSERVICETIME,F_SERVICETYPE,F_DECLARATIONTIME,F_SERVICENATURE,F_SERVICEWAY,F_RETURNVISITMAN,F_RETURNVISITID,
  918. F_RETURNVISITOPINION,F_RETURNVISITPROBLEM,F_CallId,F_CREATEBYids from T_Wo_WorkOrderBase ");
  919. strSql.Append(" where F_WORKORDERID=@F_WORKORDERID");
  920. SqlParameter[] parameters = {
  921. new SqlParameter("@F_WORKORDERID", SqlDbType.Int,4)
  922. };
  923. parameters[0].Value = F_WORKORDERID;
  924. YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model = new YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase();
  925. DataSet ds = DbHelperSQL.Query(strSql.ToString(), parameters);
  926. if (ds.Tables[0].Rows.Count > 0)
  927. {
  928. if (ds.Tables[0].Rows[0]["F_WORKORDERID"] != null && ds.Tables[0].Rows[0]["F_WORKORDERID"].ToString() != "")
  929. {
  930. model.F_WORKORDERID = int.Parse(ds.Tables[0].Rows[0]["F_WORKORDERID"].ToString());
  931. }
  932. if (ds.Tables[0].Rows[0]["F_WORKORDERTYPEID"] != null && ds.Tables[0].Rows[0]["F_WORKORDERTYPEID"].ToString() != "")
  933. {
  934. model.F_WORKORDERTYPEID = int.Parse(ds.Tables[0].Rows[0]["F_WORKORDERTYPEID"].ToString());
  935. }
  936. if (ds.Tables[0].Rows[0]["F_WORKORDERSTATEID"] != null && ds.Tables[0].Rows[0]["F_WORKORDERSTATEID"].ToString() != "")
  937. {
  938. model.F_WORKORDERSTATEID = int.Parse(ds.Tables[0].Rows[0]["F_WORKORDERSTATEID"].ToString());
  939. }
  940. if (ds.Tables[0].Rows[0]["F_CODE"] != null && ds.Tables[0].Rows[0]["F_CODE"].ToString() != "")
  941. {
  942. model.F_CODE = ds.Tables[0].Rows[0]["F_CODE"].ToString();
  943. }
  944. if (ds.Tables[0].Rows[0]["F_WORKORDERNAME"] != null && ds.Tables[0].Rows[0]["F_WORKORDERNAME"].ToString() != "")
  945. {
  946. model.F_WORKORDERNAME = ds.Tables[0].Rows[0]["F_WORKORDERNAME"].ToString();
  947. }
  948. if (ds.Tables[0].Rows[0]["F_NUMBER"] != null && ds.Tables[0].Rows[0]["F_NUMBER"].ToString() != "")
  949. {
  950. model.F_NUMBER = ds.Tables[0].Rows[0]["F_NUMBER"].ToString();
  951. }
  952. if (ds.Tables[0].Rows[0]["F_CUSTOMERNAME"] != null && ds.Tables[0].Rows[0]["F_CUSTOMERNAME"].ToString() != "")
  953. {
  954. model.F_CUSTOMERNAME = ds.Tables[0].Rows[0]["F_CUSTOMERNAME"].ToString();
  955. }
  956. if (ds.Tables[0].Rows[0]["F_CUSTOMERTELEPHONE"] != null && ds.Tables[0].Rows[0]["F_CUSTOMERTELEPHONE"].ToString() != "")
  957. {
  958. model.F_CUSTOMERTELEPHONE = ds.Tables[0].Rows[0]["F_CUSTOMERTELEPHONE"].ToString();
  959. }
  960. if (ds.Tables[0].Rows[0]["F_LINKMAN"] != null && ds.Tables[0].Rows[0]["F_LINKMAN"].ToString() != "")
  961. {
  962. model.F_LINKMAN = ds.Tables[0].Rows[0]["F_LINKMAN"].ToString();
  963. }
  964. if (ds.Tables[0].Rows[0]["F_LINKMANTELEPHONE"] != null && ds.Tables[0].Rows[0]["F_LINKMANTELEPHONE"].ToString() != "")
  965. {
  966. model.F_LINKMANTELEPHONE = ds.Tables[0].Rows[0]["F_LINKMANTELEPHONE"].ToString();
  967. }
  968. if (ds.Tables[0].Rows[0]["F_ADSLACCOUNT"] != null && ds.Tables[0].Rows[0]["F_ADSLACCOUNT"].ToString() != "")
  969. {
  970. model.F_ADSLACCOUNT = ds.Tables[0].Rows[0]["F_ADSLACCOUNT"].ToString();
  971. }
  972. if (ds.Tables[0].Rows[0]["F_BANDWIDTH"] != null && ds.Tables[0].Rows[0]["F_BANDWIDTH"].ToString() != "")
  973. {
  974. model.F_BANDWIDTH = ds.Tables[0].Rows[0]["F_BANDWIDTH"].ToString();
  975. }
  976. if (ds.Tables[0].Rows[0]["F_STANDARDADDRESS"] != null && ds.Tables[0].Rows[0]["F_STANDARDADDRESS"].ToString() != "")
  977. {
  978. model.F_STANDARDADDRESS = ds.Tables[0].Rows[0]["F_STANDARDADDRESS"].ToString();
  979. }
  980. if (ds.Tables[0].Rows[0]["F_INSTALLADDRESS"] != null && ds.Tables[0].Rows[0]["F_INSTALLADDRESS"].ToString() != "")
  981. {
  982. model.F_INSTALLADDRESS = ds.Tables[0].Rows[0]["F_INSTALLADDRESS"].ToString();
  983. }
  984. if (ds.Tables[0].Rows[0]["F_KSHADDRESSCODE"] != null && ds.Tables[0].Rows[0]["F_KSHADDRESSCODE"].ToString() != "")
  985. {
  986. model.F_KSHADDRESSCODE = ds.Tables[0].Rows[0]["F_KSHADDRESSCODE"].ToString();
  987. }
  988. if (ds.Tables[0].Rows[0]["F_PROVINCE"] != null && ds.Tables[0].Rows[0]["F_PROVINCE"].ToString() != "")
  989. {
  990. model.F_PROVINCE = ds.Tables[0].Rows[0]["F_PROVINCE"].ToString();
  991. }
  992. if (ds.Tables[0].Rows[0]["F_CITY"] != null && ds.Tables[0].Rows[0]["F_CITY"].ToString() != "")
  993. {
  994. model.F_CITY = ds.Tables[0].Rows[0]["F_CITY"].ToString();
  995. }
  996. if (ds.Tables[0].Rows[0]["F_AREA"] != null && ds.Tables[0].Rows[0]["F_AREA"].ToString() != "")
  997. {
  998. model.F_AREA = ds.Tables[0].Rows[0]["F_AREA"].ToString();
  999. }
  1000. if (ds.Tables[0].Rows[0]["F_ROAD"] != null && ds.Tables[0].Rows[0]["F_ROAD"].ToString() != "")
  1001. {
  1002. model.F_ROAD = ds.Tables[0].Rows[0]["F_ROAD"].ToString();
  1003. }
  1004. if (ds.Tables[0].Rows[0]["F_HOUSING"] != null && ds.Tables[0].Rows[0]["F_HOUSING"].ToString() != "")
  1005. {
  1006. model.F_HOUSING = ds.Tables[0].Rows[0]["F_HOUSING"].ToString();
  1007. }
  1008. if (ds.Tables[0].Rows[0]["F_WORKORDERFROM"] != null && ds.Tables[0].Rows[0]["F_WORKORDERFROM"].ToString() != "")
  1009. {
  1010. model.F_WORKORDERFROM = ds.Tables[0].Rows[0]["F_WORKORDERFROM"].ToString();
  1011. }
  1012. if (ds.Tables[0].Rows[0]["F_WORKORDERLEVELID"] != null && ds.Tables[0].Rows[0]["F_WORKORDERLEVELID"].ToString() != "")
  1013. {
  1014. model.F_WORKORDERLEVELID = int.Parse(ds.Tables[0].Rows[0]["F_WORKORDERLEVELID"].ToString());
  1015. }
  1016. if (ds.Tables[0].Rows[0]["F_FILEFLAG"] != null && ds.Tables[0].Rows[0]["F_FILEFLAG"].ToString() != "")
  1017. {
  1018. model.F_FILEFLAG = int.Parse(ds.Tables[0].Rows[0]["F_FILEFLAG"].ToString());
  1019. }
  1020. if (ds.Tables[0].Rows[0]["F_CONTENT"] != null && ds.Tables[0].Rows[0]["F_CONTENT"].ToString() != "")
  1021. {
  1022. model.F_CONTENT = ds.Tables[0].Rows[0]["F_CONTENT"].ToString();
  1023. }
  1024. if (ds.Tables[0].Rows[0]["F_CREATEBY"] != null && ds.Tables[0].Rows[0]["F_CREATEBY"].ToString() != "")
  1025. {
  1026. model.F_CREATEBY = int.Parse(ds.Tables[0].Rows[0]["F_CREATEBY"].ToString());
  1027. }
  1028. if (ds.Tables[0].Rows[0]["F_CREATEDATE"] != null && ds.Tables[0].Rows[0]["F_CREATEDATE"].ToString() != "")
  1029. {
  1030. model.F_CREATEDATE = DateTime.Parse(ds.Tables[0].Rows[0]["F_CREATEDATE"].ToString());
  1031. }
  1032. if (ds.Tables[0].Rows[0]["F_DEPTCODE"] != null && ds.Tables[0].Rows[0]["F_DEPTCODE"].ToString() != "")
  1033. {
  1034. model.F_DEPTCODE = ds.Tables[0].Rows[0]["F_DEPTCODE"].ToString();
  1035. }
  1036. if (ds.Tables[0].Rows[0]["F_EMPCODE"] != null && ds.Tables[0].Rows[0]["F_EMPCODE"].ToString() != "")
  1037. {
  1038. model.F_EMPCODE = ds.Tables[0].Rows[0]["F_EMPCODE"].ToString();
  1039. }
  1040. if (ds.Tables[0].Rows[0]["F_DEPTID"] != null && ds.Tables[0].Rows[0]["F_DEPTID"].ToString() != "")
  1041. {
  1042. model.F_DEPTID = int.Parse(ds.Tables[0].Rows[0]["F_DEPTID"].ToString());
  1043. }
  1044. if (ds.Tables[0].Rows[0]["F_USERID"] != null && ds.Tables[0].Rows[0]["F_USERID"].ToString() != "")
  1045. {
  1046. model.F_USERID = int.Parse(ds.Tables[0].Rows[0]["F_USERID"].ToString());
  1047. }
  1048. if (ds.Tables[0].Rows[0]["F_USERNAME"] != null && ds.Tables[0].Rows[0]["F_USERNAME"].ToString() != "")
  1049. {
  1050. model.F_USERNAME = ds.Tables[0].Rows[0]["F_USERNAME"].ToString();
  1051. }
  1052. if (ds.Tables[0].Rows[0]["F_RETURNVISITFLAG"] != null && ds.Tables[0].Rows[0]["F_RETURNVISITFLAG"].ToString() != "")
  1053. {
  1054. model.F_RETURNVISITFLAG = int.Parse(ds.Tables[0].Rows[0]["F_RETURNVISITFLAG"].ToString());
  1055. }
  1056. if (ds.Tables[0].Rows[0]["F_RETURNVISITSTATE"] != null && ds.Tables[0].Rows[0]["F_RETURNVISITSTATE"].ToString() != "")
  1057. {
  1058. model.F_RETURNVISITSTATE = int.Parse(ds.Tables[0].Rows[0]["F_RETURNVISITSTATE"].ToString());
  1059. }
  1060. if (ds.Tables[0].Rows[0]["F_RETURNVISITRESULT"] != null && ds.Tables[0].Rows[0]["F_RETURNVISITRESULT"].ToString() != "")
  1061. {
  1062. model.F_RETURNVISITRESULT = int.Parse(ds.Tables[0].Rows[0]["F_RETURNVISITRESULT"].ToString());
  1063. }
  1064. if (ds.Tables[0].Rows[0]["F_RETURNVISITCONTENT"] != null && ds.Tables[0].Rows[0]["F_RETURNVISITCONTENT"].ToString() != "")
  1065. {
  1066. model.F_RETURNVISITCONTENT = ds.Tables[0].Rows[0]["F_RETURNVISITCONTENT"].ToString();
  1067. }
  1068. if (ds.Tables[0].Rows[0]["F_DELETEFLAG"] != null && ds.Tables[0].Rows[0]["F_DELETEFLAG"].ToString() != "")
  1069. {
  1070. model.F_DELETEFLAG = int.Parse(ds.Tables[0].Rows[0]["F_DELETEFLAG"].ToString());
  1071. }
  1072. if (ds.Tables[0].Rows[0]["F_ALLUSETIMES"] != null && ds.Tables[0].Rows[0]["F_ALLUSETIMES"].ToString() != "")
  1073. {
  1074. model.F_ALLUSETIMES = int.Parse(ds.Tables[0].Rows[0]["F_ALLUSETIMES"].ToString());
  1075. }
  1076. if (ds.Tables[0].Rows[0]["F_STARTTIME"] != null && ds.Tables[0].Rows[0]["F_STARTTIME"].ToString() != "")
  1077. {
  1078. model.F_STARTTIME = DateTime.Parse(ds.Tables[0].Rows[0]["F_STARTTIME"].ToString());
  1079. }
  1080. if (ds.Tables[0].Rows[0]["F_ENDTIME"] != null && ds.Tables[0].Rows[0]["F_ENDTIME"].ToString() != "")
  1081. {
  1082. model.F_ENDTIME = DateTime.Parse(ds.Tables[0].Rows[0]["F_ENDTIME"].ToString());
  1083. }
  1084. if (ds.Tables[0].Rows[0]["F_REMAINDERTIME"] != null && ds.Tables[0].Rows[0]["F_REMAINDERTIME"].ToString() != "")
  1085. {
  1086. model.F_REMAINDERTIME = DateTime.Parse(ds.Tables[0].Rows[0]["F_REMAINDERTIME"].ToString());
  1087. }
  1088. if (ds.Tables[0].Rows[0]["F_REMAINDERENDTIME"] != null && ds.Tables[0].Rows[0]["F_REMAINDERENDTIME"].ToString() != "")
  1089. {
  1090. model.F_REMAINDERENDTIME = DateTime.Parse(ds.Tables[0].Rows[0]["F_REMAINDERENDTIME"].ToString());
  1091. }
  1092. if (ds.Tables[0].Rows[0]["F_SUBSCRIBETIME1"] != null && ds.Tables[0].Rows[0]["F_SUBSCRIBETIME1"].ToString() != "")
  1093. {
  1094. model.F_SUBSCRIBETIME1 = DateTime.Parse(ds.Tables[0].Rows[0]["F_SUBSCRIBETIME1"].ToString());
  1095. }
  1096. if (ds.Tables[0].Rows[0]["F_SUBSCRIBETIME2"] != null && ds.Tables[0].Rows[0]["F_SUBSCRIBETIME2"].ToString() != "")
  1097. {
  1098. model.F_SUBSCRIBETIME2 = DateTime.Parse(ds.Tables[0].Rows[0]["F_SUBSCRIBETIME2"].ToString());
  1099. }
  1100. if (ds.Tables[0].Rows[0]["F_ACCEPTTIMELIMIT"] != null && ds.Tables[0].Rows[0]["F_ACCEPTTIMELIMIT"].ToString() != "")
  1101. {
  1102. model.F_ACCEPTTIMELIMIT = DateTime.Parse(ds.Tables[0].Rows[0]["F_ACCEPTTIMELIMIT"].ToString());
  1103. }
  1104. if (ds.Tables[0].Rows[0]["F_ASKFINISHTIME"] != null && ds.Tables[0].Rows[0]["F_ASKFINISHTIME"].ToString() != "")
  1105. {
  1106. model.F_ASKFINISHTIME = DateTime.Parse(ds.Tables[0].Rows[0]["F_ASKFINISHTIME"].ToString());
  1107. }
  1108. if (ds.Tables[0].Rows[0]["F_OVERTIMES"] != null && ds.Tables[0].Rows[0]["F_OVERTIMES"].ToString() != "")
  1109. {
  1110. model.F_OVERTIMES = int.Parse(ds.Tables[0].Rows[0]["F_OVERTIMES"].ToString());
  1111. }
  1112. if (ds.Tables[0].Rows[0]["F_FORMID"] != null && ds.Tables[0].Rows[0]["F_FORMID"].ToString() != "")
  1113. {
  1114. model.F_FORMID = int.Parse(ds.Tables[0].Rows[0]["F_FORMID"].ToString());
  1115. }
  1116. if (ds.Tables[0].Rows[0]["F_HASTENCOUNTS"] != null && ds.Tables[0].Rows[0]["F_HASTENCOUNTS"].ToString() != "")
  1117. {
  1118. model.F_HASTENCOUNTS = int.Parse(ds.Tables[0].Rows[0]["F_HASTENCOUNTS"].ToString());
  1119. }
  1120. if (ds.Tables[0].Rows[0]["F_RANGEID"] != null && ds.Tables[0].Rows[0]["F_RANGEID"].ToString() != "")
  1121. {
  1122. model.F_RANGEID = decimal.Parse(ds.Tables[0].Rows[0]["F_RANGEID"].ToString());
  1123. }
  1124. if (ds.Tables[0].Rows[0]["F_RANGEX"] != null && ds.Tables[0].Rows[0]["F_RANGEX"].ToString() != "")
  1125. {
  1126. model.F_RANGEX = decimal.Parse(ds.Tables[0].Rows[0]["F_RANGEX"].ToString());
  1127. }
  1128. if (ds.Tables[0].Rows[0]["F_RANGEY"] != null && ds.Tables[0].Rows[0]["F_RANGEY"].ToString() != "")
  1129. {
  1130. model.F_RANGEY = decimal.Parse(ds.Tables[0].Rows[0]["F_RANGEY"].ToString());
  1131. }
  1132. if (ds.Tables[0].Rows[0]["F_INSTANCEID"] != null && ds.Tables[0].Rows[0]["F_INSTANCEID"].ToString() != "")
  1133. {
  1134. model.F_INSTANCEID = int.Parse(ds.Tables[0].Rows[0]["F_INSTANCEID"].ToString());
  1135. }
  1136. if (ds.Tables[0].Rows[0]["F_CUSTOMERID"] != null && ds.Tables[0].Rows[0]["F_CUSTOMERID"].ToString() != "")
  1137. {
  1138. model.F_CUSTOMERID = int.Parse(ds.Tables[0].Rows[0]["F_CUSTOMERID"].ToString());
  1139. }
  1140. if (ds.Tables[0].Rows[0]["F_REPAIRMANID"] != null && ds.Tables[0].Rows[0]["F_REPAIRMANID"].ToString() != "")
  1141. {
  1142. model.F_REPAIRMANID = int.Parse(ds.Tables[0].Rows[0]["F_REPAIRMANID"].ToString());
  1143. }
  1144. if (ds.Tables[0].Rows[0]["F_REPAIRMANNAME"] != null && ds.Tables[0].Rows[0]["F_REPAIRMANNAME"].ToString() != "")
  1145. {
  1146. model.F_REPAIRMANNAME = ds.Tables[0].Rows[0]["F_REPAIRMANNAME"].ToString();
  1147. }
  1148. if (ds.Tables[0].Rows[0]["F_REPAIRMANPHONE"] != null && ds.Tables[0].Rows[0]["F_REPAIRMANPHONE"].ToString() != "")
  1149. {
  1150. model.F_REPAIRMANPHONE = ds.Tables[0].Rows[0]["F_REPAIRMANPHONE"].ToString();
  1151. }
  1152. if (ds.Tables[0].Rows[0]["F_REPAIRREQUEST"] != null && ds.Tables[0].Rows[0]["F_REPAIRREQUEST"].ToString() != "")
  1153. {
  1154. model.F_REPAIRREQUEST = ds.Tables[0].Rows[0]["F_REPAIRREQUEST"].ToString();
  1155. }
  1156. if (ds.Tables[0].Rows[0]["F_REPAIRCLOSEMANID"] != null && ds.Tables[0].Rows[0]["F_REPAIRCLOSEMANID"].ToString() != "")
  1157. {
  1158. model.F_REPAIRCLOSEMANID = int.Parse(ds.Tables[0].Rows[0]["F_REPAIRCLOSEMANID"].ToString());
  1159. }
  1160. if (ds.Tables[0].Rows[0]["F_REPAIRCLOSEMANNAME"] != null && ds.Tables[0].Rows[0]["F_REPAIRCLOSEMANNAME"].ToString() != "")
  1161. {
  1162. model.F_REPAIRCLOSEMANNAME = ds.Tables[0].Rows[0]["F_REPAIRCLOSEMANNAME"].ToString();
  1163. }
  1164. if (ds.Tables[0].Rows[0]["F_REPAIRCLOSEREASONS"] != null && ds.Tables[0].Rows[0]["F_REPAIRCLOSEREASONS"].ToString() != "")
  1165. {
  1166. model.F_REPAIRCLOSEREASONS = ds.Tables[0].Rows[0]["F_REPAIRCLOSEREASONS"].ToString();
  1167. }
  1168. if (ds.Tables[0].Rows[0]["F_REPAIRCLOSEREPTID"] != null && ds.Tables[0].Rows[0]["F_REPAIRCLOSEREPTID"].ToString() != "")
  1169. {
  1170. model.F_REPAIRCLOSEREPTID = int.Parse(ds.Tables[0].Rows[0]["F_REPAIRCLOSEREPTID"].ToString());
  1171. }
  1172. if (ds.Tables[0].Rows[0]["F_REPAIRCLOSEREPT"] != null && ds.Tables[0].Rows[0]["F_REPAIRCLOSEREPT"].ToString() != "")
  1173. {
  1174. model.F_REPAIRCLOSEREPT = ds.Tables[0].Rows[0]["F_REPAIRCLOSEREPT"].ToString();
  1175. }
  1176. if (ds.Tables[0].Rows[0]["F_REPAIRLEVEL"] != null && ds.Tables[0].Rows[0]["F_REPAIRLEVEL"].ToString() != "")
  1177. {
  1178. model.F_REPAIRLEVEL = int.Parse(ds.Tables[0].Rows[0]["F_REPAIRLEVEL"].ToString());
  1179. }
  1180. if (ds.Tables[0].Rows[0]["F_REPAIRLEVELNAME"] != null && ds.Tables[0].Rows[0]["F_REPAIRLEVELNAME"].ToString() != "")
  1181. {
  1182. model.F_REPAIRLEVELNAME = ds.Tables[0].Rows[0]["F_REPAIRLEVELNAME"].ToString();
  1183. }
  1184. if (ds.Tables[0].Rows[0]["F_SENTORDERTIME"] != null && ds.Tables[0].Rows[0]["F_SENTORDERTIME"].ToString() != "")
  1185. {
  1186. model.F_SENTORDERTIME = DateTime.Parse(ds.Tables[0].Rows[0]["F_SENTORDERTIME"].ToString());
  1187. }
  1188. if (ds.Tables[0].Rows[0]["F_USERPHONE"] != null && ds.Tables[0].Rows[0]["F_USERPHONE"].ToString() != "")
  1189. {
  1190. model.F_USERPHONE = ds.Tables[0].Rows[0]["F_USERPHONE"].ToString();
  1191. }
  1192. if (ds.Tables[0].Rows[0]["F_RETURNVISITTIME"] != null && ds.Tables[0].Rows[0]["F_RETURNVISITTIME"].ToString() != "")
  1193. {
  1194. model.F_RETURNVISITTIME = DateTime.Parse(ds.Tables[0].Rows[0]["F_RETURNVISITTIME"].ToString());
  1195. }
  1196. if (ds.Tables[0].Rows[0]["F_REQUESTSERVICETIME"] != null && ds.Tables[0].Rows[0]["F_REQUESTSERVICETIME"].ToString() != "")
  1197. {
  1198. model.F_REQUESTSERVICETIME = DateTime.Parse(ds.Tables[0].Rows[0]["F_REQUESTSERVICETIME"].ToString());
  1199. }
  1200. if (ds.Tables[0].Rows[0]["F_SERVICETYPE"] != null && ds.Tables[0].Rows[0]["F_SERVICETYPE"].ToString() != "")
  1201. {
  1202. model.F_SERVICETYPE = ds.Tables[0].Rows[0]["F_SERVICETYPE"].ToString();
  1203. }
  1204. if (ds.Tables[0].Rows[0]["F_DECLARATIONTIME"] != null && ds.Tables[0].Rows[0]["F_DECLARATIONTIME"].ToString() != "")
  1205. {
  1206. model.F_DECLARATIONTIME = decimal.Parse(ds.Tables[0].Rows[0]["F_DECLARATIONTIME"].ToString());
  1207. }
  1208. if (ds.Tables[0].Rows[0]["F_SERVICENATURE"] != null && ds.Tables[0].Rows[0]["F_SERVICENATURE"].ToString() != "")
  1209. {
  1210. model.F_SERVICENATURE = ds.Tables[0].Rows[0]["F_SERVICENATURE"].ToString();
  1211. }
  1212. if (ds.Tables[0].Rows[0]["F_SERVICEWAY"] != null && ds.Tables[0].Rows[0]["F_SERVICEWAY"].ToString() != "")
  1213. {
  1214. model.F_SERVICEWAY = ds.Tables[0].Rows[0]["F_SERVICEWAY"].ToString();
  1215. }
  1216. if (ds.Tables[0].Rows[0]["F_RETURNVISITMAN"] != null && ds.Tables[0].Rows[0]["F_RETURNVISITMAN"].ToString() != "")
  1217. {
  1218. model.F_RETURNVISITMAN = ds.Tables[0].Rows[0]["F_RETURNVISITMAN"].ToString();
  1219. }
  1220. if (ds.Tables[0].Rows[0]["F_RETURNVISITID"] != null && ds.Tables[0].Rows[0]["F_RETURNVISITID"].ToString() != "")
  1221. {
  1222. model.F_RETURNVISITID = int.Parse(ds.Tables[0].Rows[0]["F_RETURNVISITID"].ToString());
  1223. }
  1224. if (ds.Tables[0].Rows[0]["F_RETURNVISITOPINION"] != null && ds.Tables[0].Rows[0]["F_RETURNVISITOPINION"].ToString() != "")
  1225. {
  1226. model.F_RETURNVISITOPINION = ds.Tables[0].Rows[0]["F_RETURNVISITOPINION"].ToString();
  1227. }
  1228. if (ds.Tables[0].Rows[0]["F_RETURNVISITPROBLEM"] != null && ds.Tables[0].Rows[0]["F_RETURNVISITPROBLEM"].ToString() != "")
  1229. {
  1230. model.F_RETURNVISITPROBLEM = ds.Tables[0].Rows[0]["F_RETURNVISITPROBLEM"].ToString();
  1231. }
  1232. if (ds.Tables[0].Rows[0]["F_CallId"] != null && ds.Tables[0].Rows[0]["F_CallId"].ToString() != "")
  1233. {
  1234. model.F_RETURNVISITID = int.Parse(ds.Tables[0].Rows[0]["F_CallId"].ToString());
  1235. }
  1236. if (ds.Tables[0].Rows[0]["F_CREATEBYids"] != null && ds.Tables[0].Rows[0]["F_CREATEBYids"].ToString() != "")
  1237. {
  1238. model.F_CREATEBYids = ds.Tables[0].Rows[0]["F_CREATEBYids"].ToString();
  1239. }
  1240. return model;
  1241. }
  1242. else
  1243. {
  1244. return null;
  1245. }
  1246. }
  1247. /// <summary>
  1248. /// 获得数据列表
  1249. /// </summary>
  1250. public DataSet GetList(string strWhere)
  1251. {
  1252. StringBuilder strSql = new StringBuilder();
  1253. strSql.Append(@"select F_WORKORDERID,F_WORKORDERTYPEID,F_WORKORDERSTATEID,
  1254. F_CODE,F_WORKORDERNAME,F_NUMBER,F_CUSTOMERNAME,F_CUSTOMERTELEPHONE,F_LINKMAN,F_LINKMANTELEPHONE,
  1255. F_ADSLACCOUNT,F_BANDWIDTH,F_STANDARDADDRESS,F_INSTALLADDRESS,F_KSHADDRESSCODE,F_PROVINCE,F_CITY,
  1256. F_AREA,F_ROAD,F_HOUSING,F_WORKORDERFROM,F_WORKORDERLEVELID,F_FILEFLAG,F_CONTENT,F_CREATEBY,F_CREATEDATE,
  1257. F_DEPTCODE,F_EMPCODE,F_DEPTID,F_USERID,F_USERNAME,F_RETURNVISITFLAG,F_RETURNVISITSTATE,F_RETURNVISITRESULT
  1258. ,F_RETURNVISITCONTENT,F_DELETEFLAG,F_ALLUSETIMES,F_STARTTIME,F_ENDTIME,F_REMAINDERTIME,F_REMAINDERENDTIME,
  1259. F_SUBSCRIBETIME1,F_SUBSCRIBETIME2,F_ACCEPTTIMELIMIT,F_ASKFINISHTIME,F_OVERTIMES,F_FORMID,F_HASTENCOUNTS,F_RANGEID,
  1260. F_RANGEX,F_RANGEY,F_INSTANCEID,F_CUSTOMERID,F_REPAIRMANID,F_REPAIRMANNAME,F_REPAIRMANPHONE,F_REPAIRREQUEST,F_REPAIRCLOSEMANID,
  1261. F_REPAIRCLOSEMANNAME,F_REPAIRCLOSEREASONS,F_REPAIRCLOSEREPTID,F_REPAIRCLOSEREPT,F_REPAIRLEVEL,F_REPAIRLEVELNAME,F_SENTORDERTIME,
  1262. F_USERPHONE,F_RETURNVISITTIME,F_REQUESTSERVICETIME,F_SERVICETYPE,F_DECLARATIONTIME,F_SERVICENATURE,F_SERVICEWAY,F_RETURNVISITMAN,
  1263. F_RETURNVISITID,F_RETURNVISITOPINION,F_RETURNVISITPROBLEM ,F_CallId,F_CREATEBYids ");
  1264. strSql.Append(" FROM T_Wo_WorkOrderBase ");
  1265. if (strWhere.Trim() != "")
  1266. {
  1267. strSql.Append(" where " + strWhere);
  1268. }
  1269. return DbHelperSQL.Query(strSql.ToString());
  1270. }
  1271. /// <summary>
  1272. /// 获得前几行数据
  1273. /// </summary>
  1274. public DataSet GetList(int Top, string strWhere, string filedOrder)
  1275. {
  1276. StringBuilder strSql = new StringBuilder();
  1277. strSql.Append("select ");
  1278. if (Top > 0)
  1279. {
  1280. strSql.Append(" top " + Top.ToString());
  1281. }
  1282. strSql.Append(@" F_WORKORDERID,F_WORKORDERTYPEID,F_WORKORDERSTATEID,
  1283. F_CODE,F_WORKORDERNAME,F_NUMBER,F_CUSTOMERNAME,F_CUSTOMERTELEPHONE,F_LINKMAN,F_LINKMANTELEPHONE,
  1284. F_ADSLACCOUNT,F_BANDWIDTH,F_STANDARDADDRESS,F_INSTALLADDRESS,F_KSHADDRESSCODE,F_PROVINCE,F_CITY,F_AREA,
  1285. F_ROAD,F_HOUSING,F_WORKORDERFROM,F_WORKORDERLEVELID,F_FILEFLAG,F_CONTENT,F_CREATEBY,F_CREATEDATE,F_DEPTCODE,
  1286. F_EMPCODE,F_DEPTID,F_USERID,F_USERNAME,F_RETURNVISITFLAG,F_RETURNVISITSTATE,F_RETURNVISITRESULT,F_RETURNVISITCONTENT,
  1287. F_DELETEFLAG,F_ALLUSETIMES,F_STARTTIME,F_ENDTIME,F_REMAINDERTIME,F_REMAINDERENDTIME,F_SUBSCRIBETIME1,F_SUBSCRIBETIME2,
  1288. F_ACCEPTTIMELIMIT,F_ASKFINISHTIME,F_OVERTIMES,F_FORMID,F_HASTENCOUNTS,F_RANGEID,F_RANGEX,F_RANGEY,F_INSTANCEID,F_CUSTOMERID,
  1289. F_REPAIRMANID,F_REPAIRMANNAME,F_REPAIRMANPHONE,F_REPAIRREQUEST,F_REPAIRCLOSEMANID,F_REPAIRCLOSEMANNAME,F_REPAIRCLOSEREASONS,
  1290. F_REPAIRCLOSEREPTID,F_REPAIRCLOSEREPT,F_REPAIRLEVEL,F_REPAIRLEVELNAME,F_SENTORDERTIME,F_USERPHONE,F_RETURNVISITTIME,F_REQUESTSERVICETIME,
  1291. F_SERVICETYPE,F_DECLARATIONTIME,F_SERVICENATURE,F_SERVICEWAY,F_RETURNVISITMAN,F_RETURNVISITID,F_RETURNVISITOPINION,F_RETURNVISITPROBLEM ,F_CallId,F_CREATEBYids");
  1292. strSql.Append(" FROM T_Wo_WorkOrderBase ");
  1293. if (strWhere.Trim() != "")
  1294. {
  1295. strSql.Append(" where " + strWhere);
  1296. }
  1297. strSql.Append(" order by " + filedOrder);
  1298. return DbHelperSQL.Query(strSql.ToString());
  1299. }
  1300. /// <summary>
  1301. /// 获取记录总数
  1302. /// </summary>
  1303. public int GetRecordCount(string strWhere)
  1304. {
  1305. StringBuilder strSql = new StringBuilder();
  1306. strSql.Append("select count(1) FROM T_Wo_WorkOrderBase ");
  1307. if (strWhere.Trim() != "")
  1308. {
  1309. strSql.Append(" where " + strWhere);
  1310. }
  1311. object obj = DbHelperSQL.GetSingle(strSql.ToString());
  1312. if (obj == null)
  1313. {
  1314. return 0;
  1315. }
  1316. else
  1317. {
  1318. return Convert.ToInt32(obj);
  1319. }
  1320. }
  1321. /// <summary>
  1322. /// 分页获取数据列表
  1323. /// </summary>
  1324. public DataSet GetListByPage(string strWhere, string orderby, int startIndex, int endIndex)
  1325. {
  1326. StringBuilder strSql = new StringBuilder();
  1327. strSql.Append("SELECT * FROM ( ");
  1328. strSql.Append(" SELECT ROW_NUMBER() OVER (");
  1329. if (!string.IsNullOrEmpty(orderby.Trim()))
  1330. {
  1331. strSql.Append("order by T." + orderby);
  1332. }
  1333. else
  1334. {
  1335. strSql.Append("order by T.F_WORKORDERID desc");
  1336. }
  1337. strSql.Append(")AS Row, T.* from T_Wo_WorkOrderBase T ");
  1338. if (!string.IsNullOrEmpty(strWhere.Trim()))
  1339. {
  1340. strSql.Append(" WHERE " + strWhere);
  1341. }
  1342. strSql.Append(" ) TT");
  1343. strSql.AppendFormat(" WHERE TT.Row between {0} and {1}", startIndex, endIndex);
  1344. return DbHelperSQL.Query(strSql.ToString());
  1345. }
  1346. /*
  1347. /// <summary>
  1348. /// 分页获取数据列表
  1349. /// </summary>
  1350. public DataSet GetList(int PageSize,int PageIndex,string strWhere)
  1351. {
  1352. SqlParameter[] parameters = {
  1353. new SqlParameter("@tblName", SqlDbType.VarChar, 255),
  1354. new SqlParameter("@fldName", SqlDbType.VarChar, 255),
  1355. new SqlParameter("@PageSize", SqlDbType.Int),
  1356. new SqlParameter("@PageIndex", SqlDbType.Int),
  1357. new SqlParameter("@IsReCount", SqlDbType.Bit),
  1358. new SqlParameter("@OrderType", SqlDbType.Bit),
  1359. new SqlParameter("@strWhere", SqlDbType.VarChar,1000),
  1360. };
  1361. parameters[0].Value = "T_Wo_WorkOrderBase";
  1362. parameters[1].Value = "F_WORKORDERID";
  1363. parameters[2].Value = PageSize;
  1364. parameters[3].Value = PageIndex;
  1365. parameters[4].Value = 0;
  1366. parameters[5].Value = 0;
  1367. parameters[6].Value = strWhere;
  1368. return DbHelperSQL.RunProcedure("UP_GetRecordByPage",parameters,"ds");
  1369. }*/
  1370. #endregion Method
  1371. #region 编辑工单信息
  1372. /// <summary>
  1373. /// 编辑工单信息
  1374. /// </summary>
  1375. /// <param name="model">工单实体</param>
  1376. /// <returns></returns>
  1377. public bool UpdateWorkOrderInfoModel(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model)
  1378. {
  1379. //历史工单id
  1380. int historyId = 0;
  1381. Model.T_Wo_WorkOrderBase modelbase = GetModel(model.F_WORKORDERID);
  1382. // 提交
  1383. if (model.F_WORKORDERSTATEID > 0)
  1384. {
  1385. if (model.F_RETURNVISITFLAG == null)
  1386. {
  1387. model.F_RETURNVISITFLAG = 0;
  1388. }
  1389. if (model.F_HOUSING == "表扬" || model.F_HOUSING == "咨询" || model.F_HOUSING == "挂失")
  1390. {
  1391. model.F_WORKORDERTYPEID = 3;
  1392. if (model.F_HOUSING == "表扬")
  1393. {
  1394. if (model.HistoryOrderList != null && model.HistoryOrderList.Count > 0)
  1395. {
  1396. foreach (Model.T_Wo_WorkOrderHistory historyModel in model.HistoryOrderList)
  1397. {
  1398. Model.T_Wo_WorkOrderNotice modelNotice = new Model.T_Wo_WorkOrderNotice();
  1399. modelNotice.OrderId = model.F_WORKORDERID;
  1400. modelNotice.NoticeType = 0;
  1401. modelNotice.NoticeState = 1;
  1402. modelNotice.NoticeDeptName = historyModel.F_NEXTOWNERARRID.ToMyString();
  1403. modelNotice.NoticeDeptId = historyModel.F_OPTBTNID.ToInt32();
  1404. NoticeBll.Add(modelNotice);
  1405. }
  1406. }
  1407. }
  1408. if (model.F_RETURNVISITFLAG == 1)
  1409. {
  1410. model.F_WORKORDERSTATEID = 3;
  1411. model.F_ENDTIME = DateTime.Now;
  1412. model.F_REPAIRREQUEST = "待回访";
  1413. }
  1414. else
  1415. {
  1416. model.F_ENDTIME = DateTime.Now;
  1417. model.F_WORKORDERSTATEID = 5;
  1418. model.F_REPAIRREQUEST = "已处理";
  1419. }
  1420. }
  1421. else if (model.F_WORKORDERTYPEID == 1)
  1422. {
  1423. //转单
  1424. model.F_WORKORDERSTATEID = 1;
  1425. if (model.F_REQUESTSERVICETIME.HasValue&& model.F_REQUESTSERVICETIME.Value.Year==1)
  1426. {
  1427. model.F_REQUESTSERVICETIME = null;
  1428. }
  1429. foreach (Model.T_Wo_WorkOrderHistory historyModel in model.HistoryOrderList)
  1430. {
  1431. historyModel.F_INSTANCEID = model.F_WORKORDERID;
  1432. historyModel.F_OPTDATE = DateTime.Now;
  1433. historyModel.F_WORKORDERSTATEID = 0;
  1434. historyModel.F_StateName = "未处理";
  1435. if (model.F_REQUESTSERVICETIME.HasValue)
  1436. {
  1437. historyModel.NeedReplayTime = model.F_REQUESTSERVICETIME.Value.AddDays(1).AddSeconds(-1);
  1438. }
  1439. else
  1440. {
  1441. historyModel.NeedReplayTime = model.F_REQUESTSERVICETIME;
  1442. }
  1443. historyId = InsertWorkOrderHistoryModel(historyModel);
  1444. }
  1445. historyId = model.HistoryOrderList.Count;
  1446. }
  1447. else if(model.F_HOUSING == "投诉")
  1448. {
  1449. if (model.F_RETURNVISITFLAG == 1)
  1450. {
  1451. model.F_WORKORDERSTATEID = 3;
  1452. model.F_ENDTIME = DateTime.Now;
  1453. model.F_REPAIRREQUEST = "待回访";
  1454. }
  1455. else
  1456. {
  1457. model.F_WORKORDERSTATEID = 4;
  1458. model.F_ENDTIME = DateTime.Now;
  1459. model.F_REPAIRREQUEST = "待定责";
  1460. }
  1461. foreach (Model.T_Wo_WorkOrderHistory historyModel in model.HistoryOrderList)
  1462. {
  1463. historyId = InsertWorkOrderHistoryModel(historyModel);
  1464. }
  1465. }
  1466. else if(model.F_HOUSING == "建议")
  1467. {
  1468. if (model.F_RETURNVISITFLAG == 1)
  1469. {
  1470. model.F_WORKORDERSTATEID = 3;
  1471. model.F_ENDTIME = DateTime.Now;
  1472. model.F_REPAIRREQUEST = "待回访";
  1473. }
  1474. else
  1475. {
  1476. model.F_WORKORDERSTATEID = 5;
  1477. model.F_ENDTIME = DateTime.Now;
  1478. model.F_REPAIRREQUEST = "已处理";
  1479. }
  1480. foreach (Model.T_Wo_WorkOrderHistory historyModel in model.HistoryOrderList)
  1481. {
  1482. historyId = InsertWorkOrderHistoryModel(historyModel);
  1483. }
  1484. }
  1485. //记录派单时间计算工单超时
  1486. model.F_SENTORDERTIME = DateTime.Now;
  1487. //超时时间 直接结束的工单超时时间为0
  1488. //int tempn = (int)DateUtil.DateDiff(DateInterval.Second, modelbase.F_CREATEBY.ToDateTime().AddDays(5), DateTime.Now);
  1489. //if (tempn < 0)
  1490. //{
  1491. // tempn = 0;
  1492. //}
  1493. model.F_OVERTIMES = 0;
  1494. }
  1495. StringBuilder strSql = new StringBuilder();
  1496. strSql.Append("update T_Wo_WorkOrderBase set ");
  1497. strSql.Append("F_CUSTOMERID=@F_CUSTOMERID,");
  1498. strSql.Append("F_OVERTIMES=@F_OVERTIMES,");
  1499. strSql.Append("F_SENTORDERTIME=@F_SENTORDERTIME,");
  1500. strSql.Append("F_CUSTOMERNAME=@F_CUSTOMERNAME,");
  1501. strSql.Append("F_CUSTOMERTELEPHONE=@F_CUSTOMERTELEPHONE,");
  1502. //strSql.Append("F_WORKORDERFROM=@F_WORKORDERFROM,");
  1503. strSql.Append("F_RETURNVISITPROBLEM=@F_RETURNVISITPROBLEM,");
  1504. strSql.Append("F_REPAIRLEVEL=@F_REPAIRLEVEL,");
  1505. strSql.Append("F_ADSLACCOUNT=@F_ADSLACCOUNT,");
  1506. strSql.Append("F_WORKORDERLEVELID=@F_WORKORDERLEVELID,");
  1507. strSql.Append("F_WORKORDERNAME=@F_WORKORDERNAME,");
  1508. strSql.Append("F_CONTENT=@F_CONTENT,");
  1509. strSql.Append("F_WORKORDERTYPEID=@F_WORKORDERTYPEID,");
  1510. //strSql.Append("F_USERID=@F_USERID,");
  1511. //strSql.Append("F_REPAIRMANNAME=@F_REPAIRMANNAME,");
  1512. // strSql.Append("F_CREATEDATE=@F_CREATEDATE,");
  1513. strSql.Append("F_WORKORDERSTATEID=@F_WORKORDERSTATEID,");
  1514. strSql.Append("F_REPAIRREQUEST=@F_REPAIRREQUEST,");
  1515. strSql.Append("F_INSTALLADDRESS=@F_INSTALLADDRESS,");
  1516. strSql.Append("F_DEPTID=@F_DEPTID,");
  1517. strSql.Append("F_DEPTCODE=@F_DEPTCODE,");
  1518. strSql.Append("F_CREATEBY=@F_CREATEBY,");
  1519. strSql.Append("F_USERNAME=@F_USERNAME,");
  1520. strSql.Append("F_REQUESTSERVICETIME=@F_REQUESTSERVICETIME,");
  1521. strSql.Append("F_RETURNVISITCONTENT=@F_RETURNVISITCONTENT,");
  1522. strSql.Append("F_RETURNVISITFLAG=@F_RETURNVISITFLAG,");
  1523. strSql.Append("F_RETURNVISITTIME =@F_RETURNVISITTIME,");
  1524. strSql.Append("F_CODE =@F_CODE,");
  1525. strSql.Append("F_FILEFLAG =@F_FILEFLAG,");
  1526. strSql.Append("F_HOUSING =@F_HOUSING,");
  1527. // strSql.Append("F_LINKMAN =@F_LINKMAN,");
  1528. //strSql.Append("F_REPAIRMANID =@F_REPAIRMANID,");
  1529. strSql.Append("F_REMAINDERENDTIME =@F_REMAINDERENDTIME,");
  1530. strSql.Append("F_RETURNVISITOPINION =@F_RETURNVISITOPINION,");
  1531. strSql.Append("F_ENDTIME =@F_ENDTIME,");
  1532. strSql.Append("F_FORMID =@F_FORMID");
  1533. strSql.Append(" where F_WORKORDERID=@F_WORKORDERID");
  1534. SqlParameter[] parameters = {
  1535. new SqlParameter("@F_CUSTOMERID", model.F_CUSTOMERID),
  1536. new SqlParameter("@F_CUSTOMERNAME", model.F_CUSTOMERNAME),
  1537. new SqlParameter("@F_CUSTOMERTELEPHONE", model.F_CUSTOMERTELEPHONE),
  1538. new SqlParameter("@F_OVERTIMES", model.F_OVERTIMES),
  1539. new SqlParameter("@F_RETURNVISITPROBLEM", model.F_RETURNVISITPROBLEM),
  1540. new SqlParameter("@F_REPAIRLEVEL", model.F_REPAIRLEVEL),
  1541. new SqlParameter("@F_ADSLACCOUNT", model.F_ADSLACCOUNT),
  1542. new SqlParameter("@F_WORKORDERLEVELID", model.F_WORKORDERLEVELID),
  1543. new SqlParameter("@F_WORKORDERNAME", model.F_WORKORDERNAME),
  1544. new SqlParameter("@F_CONTENT", model.F_CONTENT),
  1545. new SqlParameter("@F_WORKORDERTYPEID", model.F_WORKORDERTYPEID),
  1546. new SqlParameter("@F_USERID",model.F_USERID),
  1547. //new SqlParameter("@F_REPAIRMANNAME", SqlDbType.NVarChar,200),
  1548. //new SqlParameter("@F_CREATEDATE", DateTime.Now),
  1549. new SqlParameter("@F_WORKORDERSTATEID", model.F_WORKORDERSTATEID),
  1550. new SqlParameter("@F_REPAIRREQUEST", model.F_REPAIRREQUEST),
  1551. new SqlParameter("@F_INSTALLADDRESS", model.F_INSTALLADDRESS),
  1552. new SqlParameter("@F_DEPTID", model.F_DEPTID),
  1553. new SqlParameter("@F_DEPTCODE", model.F_DEPTCODE),
  1554. new SqlParameter("@F_CREATEBY", model.F_CREATEBY),
  1555. new SqlParameter("@F_USERNAME", model.F_USERNAME),
  1556. new SqlParameter("@F_REQUESTSERVICETIME",model.F_REQUESTSERVICETIME),
  1557. new SqlParameter("@F_RETURNVISITCONTENT", model.F_RETURNVISITCONTENT),
  1558. new SqlParameter("@F_RETURNVISITFLAG", model.F_RETURNVISITFLAG),
  1559. new SqlParameter("@F_RETURNVISITTIME ", model.F_RETURNVISITTIME),
  1560. new SqlParameter("@F_CODE ", model.F_CODE),
  1561. new SqlParameter("@F_FILEFLAG", model.F_FILEFLAG),
  1562. new SqlParameter("@F_HOUSING ", model.F_HOUSING),
  1563. // new SqlParameter("@F_LINKMAN", SqlDbType.NVarChar,200),
  1564. //new SqlParameter("@F_REPAIRMANID", SqlDbType.Int,4),
  1565. new SqlParameter("@F_REMAINDERENDTIME",model.F_REMAINDERENDTIME),
  1566. new SqlParameter("@F_RETURNVISITOPINION", model.F_RETURNVISITOPINION),
  1567. new SqlParameter("@F_FORMID", historyId),
  1568. new SqlParameter("@F_ENDTIME", model.F_ENDTIME),
  1569. new SqlParameter("@F_SENTORDERTIME", model.F_SENTORDERTIME),
  1570. new SqlParameter("@F_WORKORDERID", model.F_WORKORDERID)};
  1571. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  1572. if (rows > 0)
  1573. {
  1574. return true;
  1575. }
  1576. else
  1577. {
  1578. return false;
  1579. }
  1580. }
  1581. //业务类型
  1582. DAL.T_Wo_WorkOrderType dal = new T_Wo_WorkOrderType();
  1583. /// <summary>
  1584. /// 获取订单编号
  1585. /// </summary>
  1586. /// <param name="bussnessType">业务类型</param>
  1587. /// <returns></returns>
  1588. public string GetOrderNumber(int bussnessType)
  1589. {
  1590. string orderNumber = "";
  1591. if (bussnessType > 0)
  1592. {
  1593. Model.T_Wo_WorkOrderType model = dal.GetModel(bussnessType);
  1594. if (model != null && !string.IsNullOrEmpty(model.F_ParentName))
  1595. {
  1596. orderNumber += model.F_ParentName;
  1597. }
  1598. }
  1599. orderNumber += DateTime.Now.ToString("yyyyMMdd");
  1600. //当前最大编号
  1601. string maxOrderNum = GetMaxOrderNumber(orderNumber);
  1602. if (!string.IsNullOrEmpty(maxOrderNum))
  1603. {
  1604. orderNumber += (int.Parse(("1" + maxOrderNum.Substring(10)).ToString()) + 1).ToString().Substring(1);
  1605. }
  1606. else
  1607. {
  1608. orderNumber += "0001";
  1609. }
  1610. return orderNumber;
  1611. }
  1612. /// <summary>
  1613. /// 获取最大编号
  1614. /// </summary>
  1615. /// <param name="orderNumStart">编号前面部门(ZX20180322)</param>
  1616. /// <returns></returns>
  1617. public string GetMaxOrderNumber(string orderNumStart)
  1618. {
  1619. StringBuilder strSql = new StringBuilder();
  1620. strSql.Append("select max(F_CODE) from T_Wo_WorkOrderBase ");
  1621. strSql.Append(" where F_CODE like '" + orderNumStart + "%' ");
  1622. YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model = new YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase();
  1623. DataSet ds = DbHelperSQL.Query(strSql.ToString());
  1624. if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
  1625. {
  1626. return ds.Tables[0].Rows[0][0].ToString();
  1627. }
  1628. else
  1629. {
  1630. return "";
  1631. }
  1632. }
  1633. /// <summary>
  1634. /// 插入转办信息
  1635. /// </summary>
  1636. /// <param name="model"></param>
  1637. /// <returns></returns>
  1638. public int InsertWorkOrderHistoryModel(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderHistory model)
  1639. {
  1640. object time = model.ReplayTime;
  1641. if (model.ReplayTime.Year == 1)
  1642. {
  1643. time = null;
  1644. }
  1645. StringBuilder strSql = new StringBuilder();
  1646. strSql.Append("insert into T_Wo_WorkOrderHistory(");
  1647. strSql.Append("F_WORKORDERSTATEID,F_OPTUSERID,F_OPTDATE,F_NEXTOWNERARRID,F_REMARK,F_OPTBTNID,F_INSTANCEID,F_StateName,F_UserName,NeedReplayTime,F_TASKFLAG,ReplayTime)");
  1648. strSql.Append(" values (");
  1649. strSql.Append("@F_WORKORDERSTATEID,@F_OPTUSERID,@F_OPTDATE,@F_NEXTOWNERARRID,@F_REMARK,@F_OPTBTNID,@F_INSTANCEID,@F_StateName,@F_UserName,@NeedReplayTime,@F_TASKFLAG,@ReplayTime)");
  1650. strSql.Append(";select @@IDENTITY");
  1651. SqlParameter[] parameters = {
  1652. new SqlParameter("@F_WORKORDERSTATEID", SqlDbType.Int,4),
  1653. new SqlParameter("@F_OPTUSERID", SqlDbType.Int,4),
  1654. new SqlParameter("@F_OPTDATE", SqlDbType.DateTime),
  1655. new SqlParameter("@F_NEXTOWNERARRID", SqlDbType.NVarChar,200),
  1656. new SqlParameter("@F_REMARK", SqlDbType.NVarChar,4000),
  1657. new SqlParameter("@F_OPTBTNID", SqlDbType.Int,4),
  1658. new SqlParameter("@F_INSTANCEID", SqlDbType.Int,4),
  1659. new SqlParameter("@F_StateName", SqlDbType.NVarChar,200),
  1660. new SqlParameter("@F_UserName", SqlDbType.NVarChar,200),
  1661. new SqlParameter("@NeedReplayTime", SqlDbType.DateTime),
  1662. new SqlParameter("@F_TASKFLAG", SqlDbType.Int,4),
  1663. new SqlParameter("@ReplayTime", time)
  1664. };
  1665. parameters[0].Value = model.F_WORKORDERSTATEID;
  1666. parameters[1].Value = model.F_OPTUSERID;
  1667. parameters[2].Value = model.F_OPTDATE;
  1668. parameters[3].Value = model.F_NEXTOWNERARRID;
  1669. parameters[4].Value = model.F_REMARK;
  1670. parameters[5].Value = model.F_OPTBTNID;
  1671. parameters[6].Value = model.F_INSTANCEID;
  1672. parameters[7].Value = model.F_StateName;
  1673. parameters[8].Value = model.F_UserName;
  1674. parameters[9].Value = model.NeedReplayTime;
  1675. parameters[10].Value = model.F_TASKFLAG;
  1676. object obj = DbHelperSQL.GetSingle(strSql.ToString(), parameters);
  1677. if (obj == null)
  1678. {
  1679. return 0;
  1680. }
  1681. else
  1682. {
  1683. return Convert.ToInt32(obj);
  1684. }
  1685. }
  1686. #endregion ExtensionMethod
  1687. #region 提交转办信息
  1688. public bool EditMyOrderInfo(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model)
  1689. {
  1690. bool EditStatus = false;
  1691. //历史工单id
  1692. int historyId = EditMyOrderHistoryInfo(model);
  1693. //修改历史记录成功
  1694. if (historyId > 0)
  1695. {
  1696. StringBuilder strSql = new StringBuilder();
  1697. strSql.Append("update T_Wo_WorkOrderBase set ");
  1698. strSql.Append("F_DEPTID=@F_DEPTID,");
  1699. strSql.Append("F_DEPTCODE=@F_DEPTCODE,");
  1700. strSql.Append("F_CREATEBY=@F_CREATEBY,");
  1701. strSql.Append("F_USERNAME=@F_USERNAME,");
  1702. strSql.Append("F_REQUESTSERVICETIME=@F_REQUESTSERVICETIME,");
  1703. strSql.Append("F_FORMID =@F_FORMID,");
  1704. strSql.Append("F_REMAINDERENDTIME =@F_REMAINDERENDTIME,");
  1705. strSql.Append("F_RETURNVISITRESULT =@F_RETURNVISITRESULT,");
  1706. strSql.Append("F_ROAD =@F_ROAD,");
  1707. strSql.Append("F_RETURNVISITOPINION =@F_RETURNVISITOPINION");
  1708. strSql.Append(" where F_WORKORDERID=@F_WORKORDERID");
  1709. SqlParameter[] parameters = {
  1710. new SqlParameter("@F_DEPTID", SqlDbType.Int,4),
  1711. new SqlParameter("@F_DEPTCODE", SqlDbType.NVarChar,200),
  1712. new SqlParameter("@F_CREATEBY", SqlDbType.Int,4),
  1713. new SqlParameter("@F_USERNAME", SqlDbType.NVarChar,200),
  1714. new SqlParameter("@F_REQUESTSERVICETIME",SqlDbType.DateTime),
  1715. new SqlParameter("@F_FORMID", SqlDbType.Int,4),
  1716. new SqlParameter("@F_REMAINDERENDTIME",SqlDbType.DateTime),
  1717. new SqlParameter("@F_RETURNVISITRESULT", SqlDbType.Int,4),
  1718. new SqlParameter("@F_ROAD", SqlDbType.NVarChar,50),
  1719. new SqlParameter("@F_RETURNVISITOPINION", SqlDbType.NVarChar,4000),
  1720. new SqlParameter("@F_WORKORDERID", SqlDbType.Int,4)};
  1721. parameters[0].Value = model.F_DEPTID;
  1722. parameters[1].Value = model.F_DEPTCODE;
  1723. parameters[2].Value = model.F_CREATEBY;
  1724. parameters[3].Value = model.F_USERNAME;
  1725. parameters[4].Value = model.F_REQUESTSERVICETIME;
  1726. parameters[5].Value = historyId;
  1727. parameters[6].Value = model.F_REMAINDERENDTIME;
  1728. parameters[7].Value = model.F_RETURNVISITRESULT;
  1729. parameters[8].Value = model.F_ROAD;
  1730. parameters[9].Value = model.F_RETURNVISITOPINION;
  1731. parameters[10].Value = model.F_WORKORDERID;
  1732. EditStatus = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters) > 0;
  1733. }
  1734. return EditStatus;
  1735. }
  1736. /// <summary>
  1737. /// 处理转办信息
  1738. /// </summary>
  1739. /// <param name="model"></param>
  1740. /// <returns></returns>
  1741. public bool SubmitOrder(Model.T_Wo_WorkOrderHistory model)
  1742. {
  1743. bool EditStatus = false;
  1744. DAL.T_Wo_WorkOrderHistory bllOrderHistory = new DAL.T_Wo_WorkOrderHistory();
  1745. //如果工单状态处理中
  1746. if (model.F_WORKORDERSTATEID == 0)
  1747. {
  1748. //更新新本次转办信息
  1749. Model.T_Wo_WorkOrderHistory eidthistoryModel = bllOrderHistory.GetModel(model.F_HISTORYID);
  1750. //工单主键
  1751. eidthistoryModel.F_REMARK = model.F_REMARK;//处理内容
  1752. eidthistoryModel.F_StateName = "已处理";
  1753. eidthistoryModel.F_WORKORDERSTATEID = 1;
  1754. eidthistoryModel.ReplayTime = DateTime.Now;
  1755. if (bllOrderHistory.Update(eidthistoryModel))
  1756. {
  1757. //判断是否所有的转办已经被处理 F_WORKORDERSTATEID=1 处理中 F_WORKORDERTYPEID=1转单
  1758. int n = bllOrderHistory.GetRecordCount(string.Format("F_WORKORDERSTATEID=0 and F_INSTANCEID=(select F_WORKORDERID from T_Wo_WorkOrderBase where F_WORKORDERID='{0}' and F_WORKORDERSTATEID=1 and F_WORKORDERTYPEID=1)", eidthistoryModel.F_INSTANCEID));
  1759. EditStatus = true;
  1760. if (n == 0)
  1761. {
  1762. LogAciton.AddAction(eidthistoryModel.F_UserName, eidthistoryModel.F_OPTUSERID.ToInt32(), "历史工单模块调用工单模块", "模块调用", "DAL/T_Wo_WorkOrderBase/SubmitOrder", "DAL/T_Wo_WorkOrderBase/UpdateOrderToHF");
  1763. UpdateOrderToHF(eidthistoryModel.F_INSTANCEID.ToInt32());
  1764. }
  1765. //如果有转办信息插入转办信息
  1766. // historyId = InsertWorkOrderHistoryModel(historyModel);
  1767. }
  1768. }
  1769. return EditStatus;
  1770. }
  1771. //转单处理完 转回复
  1772. public void UpdateOrderToHF(int F_WORKORDERID)
  1773. {
  1774. Model.T_Wo_WorkOrderBase modelbase = GetModel(F_WORKORDERID);
  1775. StringBuilder strSql = new StringBuilder();
  1776. strSql.Append("update T_Wo_WorkOrderBase set ");
  1777. if (modelbase.F_RETURNVISITFLAG == 1)
  1778. {
  1779. strSql.Append("F_REPAIRREQUEST='待回访', ");
  1780. strSql.Append("F_WORKORDERSTATEID=3,");
  1781. }
  1782. else if(modelbase.F_HOUSING=="投诉")
  1783. {
  1784. strSql.Append("F_ENDTIME=GETDATE(), ");
  1785. strSql.Append("F_WORKORDERSTATEID=4,");
  1786. strSql.Append("F_REPAIRREQUEST='待定责', ");
  1787. }
  1788. else
  1789. {
  1790. strSql.Append("F_ENDTIME=GETDATE(), ");
  1791. strSql.Append("F_WORKORDERSTATEID=5,");
  1792. strSql.Append("F_REPAIRREQUEST='已处理', ");
  1793. }
  1794. strSql.Append("F_OVERTIMES=CASE WHEN ISNULL(DATEDIFF(second, DATEADD(day,5,F_SENTORDERTIME), GETDATE()),0)<1 THEN 0 ELSE DATEDIFF(second, DATEADD(day,5,F_SENTORDERTIME), GETDATE()) END ");
  1795. //转单F_WORKORDERTYPEID= 1转单 3客服处理 处理中 F_WORKORDERSTATEID=0未处理 1处理中 2已办结(结束) 3待回访 4待定责 5待通知
  1796. strSql.Append(" where F_WORKORDERID=@F_WORKORDERID and F_WORKORDERTYPEID=1 and F_WORKORDERSTATEID=1");
  1797. SqlParameter[] parameters = {
  1798. new SqlParameter("@F_WORKORDERID",F_WORKORDERID)};
  1799. DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  1800. }
  1801. /// <summary>
  1802. /// 回访转工单
  1803. /// </summary>
  1804. /// <param name="F_WORKORDERID"></param>
  1805. /// <param name="type">type 0转单 1定责</param>
  1806. public bool UpdateOrderToZD(Model.T_Wo_WorkOrderBase model)
  1807. {
  1808. StringBuilder strSql = new StringBuilder();
  1809. strSql.Append("update T_Wo_WorkOrderBase set ");
  1810. strSql.Append("F_REMAINDERENDTIME=@F_REMAINDERENDTIME,");
  1811. strSql.Append("F_RETURNVISITRESULT=@F_RETURNVISITRESULT,");
  1812. strSql.Append("F_ROAD=@F_ROAD,");
  1813. strSql.Append("F_RETURNVISITOPINION=@F_RETURNVISITOPINION,");
  1814. strSql.Append("F_WORKORDERSTATEID=1,");//转单
  1815. strSql.Append("F_WORKORDERTYPEID=1,");//待回访转处理中
  1816. strSql.Append("F_REPAIRREQUEST=@F_REPAIRREQUEST");
  1817. strSql.Append(" where F_WORKORDERID=@F_WORKORDERID and F_WORKORDERSTATEID=3");
  1818. SqlParameter[] parameters = {
  1819. new SqlParameter("@F_REMAINDERENDTIME",model.F_REMAINDERENDTIME),
  1820. new SqlParameter("@F_RETURNVISITRESULT", model.F_RETURNVISITRESULT),
  1821. new SqlParameter("@F_ROAD", ""),
  1822. new SqlParameter("@F_RETURNVISITOPINION", model.F_RETURNVISITOPINION),
  1823. new SqlParameter("@F_REPAIRREQUEST","回访转单处理中"),
  1824. new SqlParameter("@F_WORKORDERID", model.F_WORKORDERID)};
  1825. return DbHelperSQL.ExecuteSql(strSql.ToString(), parameters) > 0;
  1826. }
  1827. /// <summary>
  1828. /// 回访转定责
  1829. /// </summary>
  1830. /// <param name="F_WORKORDERID"></param>
  1831. /// <param name="type">type 0转单 1定责</param>
  1832. public bool UpdateOrderToDZ(Model.T_Wo_WorkOrderBase model)
  1833. {
  1834. StringBuilder strSql = new StringBuilder();
  1835. strSql.Append("update T_Wo_WorkOrderBase set ");
  1836. strSql.Append("F_REMAINDERENDTIME=@F_REMAINDERENDTIME,");
  1837. strSql.Append("F_RETURNVISITRESULT=@F_RETURNVISITRESULT,");
  1838. strSql.Append("F_ROAD=@F_ROAD,");
  1839. strSql.Append("F_ENDTIME=@F_ENDTIME,");
  1840. strSql.Append("F_OVERTIMES= CASE WHEN ISNULL(DATEDIFF(second, DATEADD(day,5,F_SENTORDERTIME), GETDATE()),0)< 1 OR F_HOUSING!= '投诉' THEN 0 ELSE DATEDIFF(second, DATEADD(day,5,F_SENTORDERTIME), GETDATE()) END,");
  1841. strSql.Append("F_RETURNVISITOPINION=@F_RETURNVISITOPINION,");
  1842. strSql.Append("F_WORKORDERSTATEID=4,");//定责
  1843. strSql.Append("F_REPAIRREQUEST=@F_REPAIRREQUEST");
  1844. strSql.Append(" where F_WORKORDERID=@F_WORKORDERID and F_WORKORDERSTATEID=3");
  1845. SqlParameter[] parameters = {
  1846. new SqlParameter("@F_REMAINDERENDTIME",model.F_REMAINDERENDTIME),
  1847. new SqlParameter("@F_RETURNVISITRESULT", model.F_RETURNVISITRESULT),
  1848. new SqlParameter("@F_ROAD", ""),//原为满意度,前端没有用,后用作定责人员
  1849. new SqlParameter("@F_RETURNVISITOPINION", model.F_RETURNVISITOPINION),
  1850. new SqlParameter("@F_REPAIRREQUEST","待定责"),
  1851. new SqlParameter("@F_ENDTIME",model.F_ENDTIME),
  1852. new SqlParameter("@F_WORKORDERID", model.F_WORKORDERID)};
  1853. return DbHelperSQL.ExecuteSql(strSql.ToString(), parameters) > 0;
  1854. }
  1855. /// <summary>
  1856. /// 回访转已处理
  1857. /// </summary>
  1858. /// <param name="F_WORKORDERID"></param>
  1859. /// <param name="type">type 0转单 1定责</param>
  1860. public bool UpdateOrderToOver(Model.T_Wo_WorkOrderBase model)
  1861. {
  1862. StringBuilder strSql = new StringBuilder();
  1863. strSql.Append("update T_Wo_WorkOrderBase set ");
  1864. strSql.Append("F_REMAINDERENDTIME=@F_REMAINDERENDTIME,");
  1865. strSql.Append("F_RETURNVISITRESULT=@F_RETURNVISITRESULT,");
  1866. strSql.Append("F_ROAD=@F_ROAD,");
  1867. strSql.Append("F_ENDTIME=@F_ENDTIME,");
  1868. strSql.Append("F_RETURNVISITOPINION=@F_RETURNVISITOPINION,");
  1869. strSql.Append("F_WORKORDERSTATEID=5,");//定责
  1870. strSql.Append("F_REPAIRREQUEST=@F_REPAIRREQUEST");
  1871. strSql.Append(" where F_WORKORDERID=@F_WORKORDERID and F_WORKORDERSTATEID=3");
  1872. SqlParameter[] parameters = {
  1873. new SqlParameter("@F_REMAINDERENDTIME",model.F_REMAINDERENDTIME),
  1874. new SqlParameter("@F_RETURNVISITRESULT", model.F_RETURNVISITRESULT),
  1875. new SqlParameter("@F_ROAD", ""),//原为满意度,前端没有用,后用作定责人员
  1876. new SqlParameter("@F_RETURNVISITOPINION", model.F_RETURNVISITOPINION),
  1877. new SqlParameter("@F_REPAIRREQUEST","已处理"),
  1878. new SqlParameter("@F_ENDTIME",model.F_ENDTIME),
  1879. new SqlParameter("@F_WORKORDERID", model.F_WORKORDERID)};
  1880. return DbHelperSQL.ExecuteSql(strSql.ToString(), parameters) > 0;
  1881. }
  1882. //修改并插入转办历史信息
  1883. public int EditMyOrderHistoryInfo(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model)
  1884. {
  1885. //历史工单id
  1886. int historyId = 0;
  1887. //如果工单状态不等于2
  1888. if (model.F_WORKORDERSTATEID == 1)
  1889. {
  1890. //更新新本次转办信息
  1891. Model.T_Wo_WorkOrderHistory eidthistoryModel = new Model.T_Wo_WorkOrderHistory();
  1892. //工单主键
  1893. eidthistoryModel.F_HISTORYID = int.Parse(model.F_FORMID.ToString());//主键
  1894. eidthistoryModel.F_REMARK = model.F_RETURNVISITCONTENT;//处理内容
  1895. eidthistoryModel.F_StateName = "已处理";
  1896. eidthistoryModel.F_WORKORDERSTATEID = 1;
  1897. eidthistoryModel.ReplayTime = DateTime.Now;
  1898. StringBuilder strSql = new StringBuilder();
  1899. strSql.Append("update T_Wo_WorkOrderHistory set ");
  1900. strSql.Append("F_REMARK=@F_REMARK,");
  1901. strSql.Append("F_WORKORDERSTATEID=@F_WORKORDERSTATEID,");
  1902. strSql.Append("F_StateName=@F_StateName,");
  1903. strSql.Append("ReplayTime=@ReplayTime");
  1904. strSql.Append(" where F_HISTORYID=@F_HISTORYID");
  1905. SqlParameter[] parameters = {
  1906. new SqlParameter("@F_REMARK", SqlDbType.NVarChar,4000),
  1907. new SqlParameter("@F_WORKORDERSTATEID", SqlDbType.Int,4),
  1908. new SqlParameter("@F_StateName", SqlDbType.NVarChar,200),
  1909. new SqlParameter("@ReplayTime", SqlDbType.DateTime),
  1910. new SqlParameter("@F_HISTORYID", SqlDbType.Int,4)};
  1911. parameters[0].Value = eidthistoryModel.F_REMARK;
  1912. parameters[1].Value = eidthistoryModel.F_WORKORDERSTATEID;
  1913. parameters[2].Value = eidthistoryModel.F_StateName;
  1914. parameters[3].Value = eidthistoryModel.ReplayTime;
  1915. parameters[4].Value = eidthistoryModel.F_HISTORYID;
  1916. if (DbHelperSQL.ExecuteSql(strSql.ToString(), parameters) > 0)
  1917. {
  1918. //插入转办信息
  1919. Model.T_Wo_WorkOrderHistory historyModel = new Model.T_Wo_WorkOrderHistory();
  1920. historyModel.F_INSTANCEID = model.F_WORKORDERID;
  1921. historyModel.F_OPTBTNID = model.F_DEPTID;//部门
  1922. historyModel.F_NEXTOWNERARRID = model.F_DEPTCODE;//部门
  1923. historyModel.F_OPTUSERID = model.F_CREATEBY;//人员
  1924. historyModel.F_UserName = model.F_USERNAME;//人员
  1925. historyModel.F_OPTDATE = DateTime.Now;
  1926. historyModel.F_WORKORDERSTATEID = 0;
  1927. historyModel.F_StateName = "未处理";
  1928. historyModel.NeedReplayTime = model.F_REQUESTSERVICETIME;
  1929. historyId = InsertWorkOrderHistoryModel(historyModel);
  1930. }
  1931. }
  1932. return historyId;
  1933. }
  1934. #endregion
  1935. #region
  1936. /// <summary>
  1937. /// 全媒体客服处理回访
  1938. /// </summary>
  1939. /// <param name="model"></param>
  1940. /// <returns></returns>
  1941. public bool SubmitOrderHF(Model.T_Wo_WorkOrderBase model)
  1942. {
  1943. bool EditStatus = false;
  1944. DAL.T_Wo_WorkOrderHistory bllOrderHistory = new DAL.T_Wo_WorkOrderHistory();
  1945. Model.T_Wo_WorkOrderBase modelbase = GetModel(model.F_WORKORDERID);
  1946. //如果工单状态处理中
  1947. if (modelbase.F_WORKORDERSTATEID == 3)
  1948. {
  1949. if (modelbase.F_RETURNVISITFLAG == 0)
  1950. {
  1951. //model.F_RETURNVISITOPINION = ""; 不需要回访,假如你回访了,也记录
  1952. }
  1953. if (modelbase.F_ENDTIME != null)
  1954. model.F_ENDTIME = modelbase.F_ENDTIME;
  1955. else
  1956. model.F_ENDTIME = DateTime.Now;
  1957. //需要继续转单处理
  1958. if (model.F_WORKORDERSTATEID == 1)
  1959. {
  1960. foreach (Model.T_Wo_WorkOrderHistory historyModel in model.HistoryOrderList)
  1961. {
  1962. historyModel.F_INSTANCEID = model.F_WORKORDERID;
  1963. historyModel.F_OPTDATE = DateTime.Now;
  1964. historyModel.F_WORKORDERSTATEID = 0;
  1965. historyModel.F_StateName = "未处理";
  1966. historyModel.NeedReplayTime = model.F_REQUESTSERVICETIME;
  1967. InsertWorkOrderHistoryModel(historyModel);
  1968. }
  1969. LogAciton.AddAction(model.F_USERNAME, model.F_USERID.ToInt32(), "回访模块转转单模块", "模块调用", "DAL/T_Wo_WorkOrderBase/SubmitOrderHF", "DAL/T_Wo_WorkOrderBase/UpdateOrderToZD");
  1970. EditStatus = UpdateOrderToZD(model);
  1971. }
  1972. else if (model.F_WORKORDERSTATEID == 4&& modelbase.F_HOUSING!= "投诉")//回访完成 转已处理
  1973. {
  1974. LogAciton.AddAction(model.F_USERNAME, model.F_USERID.ToInt32(), "回访模块转已处理模块", "模块调用", "DAL/T_Wo_WorkOrderBase/SubmitOrderHF", "DAL/T_Wo_WorkOrderBase/UpdateOrderToDZ");
  1975. EditStatus = UpdateOrderToOver(model);
  1976. }
  1977. else if (model.F_WORKORDERSTATEID == 4 && modelbase.F_HOUSING == "投诉")//回访完成 转定责
  1978. {
  1979. LogAciton.AddAction(model.F_USERNAME, model.F_USERID.ToInt32(), "回访模块转待定责模块", "模块调用", "DAL/T_Wo_WorkOrderBase/SubmitOrderHF", "DAL/T_Wo_WorkOrderBase/UpdateOrderToDZ");
  1980. EditStatus = UpdateOrderToDZ(model);
  1981. }
  1982. }
  1983. return EditStatus;
  1984. }
  1985. #endregion
  1986. #region 办结转办信息
  1987. public bool CloseMyOrderInfo(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model)
  1988. {
  1989. bool EditStatus = false;
  1990. //修改历史记录成功
  1991. if (CloseMyOrderHistoryInfo(model))
  1992. {
  1993. StringBuilder strSql = new StringBuilder();
  1994. strSql.Append("update T_Wo_WorkOrderBase set ");
  1995. strSql.Append("F_REMAINDERENDTIME=@F_REMAINDERENDTIME,");
  1996. strSql.Append("F_RETURNVISITRESULT=@F_RETURNVISITRESULT,");
  1997. //strSql.Append("F_ROAD=@F_ROAD,");
  1998. strSql.Append("F_RETURNVISITOPINION=@F_RETURNVISITOPINION,");
  1999. strSql.Append("F_WORKORDERSTATEID=@F_WORKORDERSTATEID,");
  2000. strSql.Append("F_REPAIRREQUEST=@F_REPAIRREQUEST");
  2001. strSql.Append(" where F_WORKORDERID=@F_WORKORDERID");
  2002. SqlParameter[] parameters = {
  2003. new SqlParameter("@F_REMAINDERENDTIME",SqlDbType.DateTime),
  2004. new SqlParameter("@F_RETURNVISITRESULT", SqlDbType.Int,4),
  2005. new SqlParameter("@F_ROAD", SqlDbType.NVarChar,50),
  2006. new SqlParameter("@F_RETURNVISITOPINION", SqlDbType.NVarChar,4000),
  2007. new SqlParameter("@F_WORKORDERSTATEID", SqlDbType.Int,4),
  2008. new SqlParameter("@F_REPAIRREQUEST", SqlDbType.NVarChar,200),
  2009. new SqlParameter("@F_WORKORDERID", SqlDbType.Int,4)};
  2010. parameters[0].Value = model.F_REMAINDERENDTIME;
  2011. parameters[1].Value = model.F_RETURNVISITRESULT;
  2012. parameters[2].Value = model.F_ROAD;
  2013. parameters[3].Value = model.F_RETURNVISITOPINION;
  2014. parameters[4].Value = model.F_WORKORDERSTATEID;
  2015. parameters[5].Value = model.F_REPAIRREQUEST;
  2016. parameters[6].Value = model.F_WORKORDERID;
  2017. EditStatus = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters) > 0;
  2018. }
  2019. return EditStatus;
  2020. }
  2021. //修改并插入转办历史信息
  2022. public bool CloseMyOrderHistoryInfo(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model)
  2023. {
  2024. //更新新本次转办信息
  2025. Model.T_Wo_WorkOrderHistory eidthistoryModel = new Model.T_Wo_WorkOrderHistory();
  2026. //工单主键
  2027. eidthistoryModel.F_HISTORYID = int.Parse(model.F_FORMID.ToString());//主键
  2028. eidthistoryModel.F_REMARK = model.F_RETURNVISITCONTENT;//处理内容
  2029. eidthistoryModel.F_StateName = "已处理";
  2030. eidthistoryModel.F_WORKORDERSTATEID = 1;
  2031. eidthistoryModel.ReplayTime = DateTime.Now;
  2032. StringBuilder strSql = new StringBuilder();
  2033. strSql.Append("update T_Wo_WorkOrderHistory set ");
  2034. strSql.Append("F_REMARK=@F_REMARK,");
  2035. strSql.Append("F_WORKORDERSTATEID=@F_WORKORDERSTATEID,");
  2036. strSql.Append("F_StateName=@F_StateName,");
  2037. strSql.Append("ReplayTime=@ReplayTime");
  2038. strSql.Append(" where F_HISTORYID=@F_HISTORYID");
  2039. SqlParameter[] parameters = {
  2040. new SqlParameter("@F_REMARK", SqlDbType.NVarChar,4000),
  2041. new SqlParameter("@F_WORKORDERSTATEID", SqlDbType.Int,4),
  2042. new SqlParameter("@F_StateName", SqlDbType.NVarChar,200),
  2043. new SqlParameter("@ReplayTime", SqlDbType.DateTime),
  2044. new SqlParameter("@F_HISTORYID", SqlDbType.Int,4)};
  2045. parameters[0].Value = eidthistoryModel.F_REMARK;
  2046. parameters[1].Value = eidthistoryModel.F_WORKORDERSTATEID;
  2047. parameters[2].Value = eidthistoryModel.F_StateName;
  2048. parameters[3].Value = eidthistoryModel.ReplayTime;
  2049. parameters[4].Value = eidthistoryModel.F_HISTORYID;
  2050. return DbHelperSQL.ExecuteSql(strSql.ToString(), parameters) > 0;
  2051. }
  2052. #endregion
  2053. #region 编辑历史工单信息
  2054. /// <summary>
  2055. /// 编辑工单信息
  2056. /// </summary>
  2057. /// <param name="model">工单实体</param>
  2058. /// <returns></returns>
  2059. public bool UpdateHistoryWorkOrderInfoModel(YTSoft.BaseCallCenter.Model.T_Wo_WorkOrderBase model)
  2060. {
  2061. StringBuilder strSql = new StringBuilder();
  2062. strSql.Append("update T_Wo_WorkOrderBase set ");
  2063. strSql.Append("F_CUSTOMERID=@F_CUSTOMERID,");
  2064. strSql.Append("F_CUSTOMERNAME=@F_CUSTOMERNAME,");
  2065. strSql.Append("F_CUSTOMERTELEPHONE=@F_CUSTOMERTELEPHONE,");
  2066. strSql.Append("F_RETURNVISITPROBLEM=@F_RETURNVISITPROBLEM,");
  2067. strSql.Append("F_REPAIRLEVEL=@F_REPAIRLEVEL,");
  2068. strSql.Append("F_ADSLACCOUNT=@F_ADSLACCOUNT,");
  2069. strSql.Append("F_WORKORDERLEVELID=@F_WORKORDERLEVELID,");
  2070. strSql.Append("F_WORKORDERNAME=@F_WORKORDERNAME,");
  2071. strSql.Append("F_CONTENT=@F_CONTENT,");
  2072. strSql.Append("F_RETURNVISITFLAG=@F_RETURNVISITFLAG,");
  2073. strSql.Append("F_RETURNVISITTIME =@F_RETURNVISITTIME,");
  2074. strSql.Append("F_REMAINDERENDTIME=@F_REMAINDERENDTIME,");
  2075. strSql.Append("F_RETURNVISITRESULT=@F_RETURNVISITRESULT,");
  2076. //strSql.Append("F_ROAD=@F_ROAD,");
  2077. strSql.Append("F_RETURNVISITOPINION=@F_RETURNVISITOPINION,");
  2078. strSql.Append("F_FILEFLAG =@F_FILEFLAG,");
  2079. strSql.Append("F_HOUSING =@F_HOUSING,");//F_RETURNVISITCONTENT 处理回复
  2080. strSql.Append("F_RETURNVISITCONTENT =@F_RETURNVISITCONTENT");
  2081. strSql.Append(" where F_WORKORDERID=@F_WORKORDERID");
  2082. SqlParameter[] parameters = {
  2083. new SqlParameter("@F_CUSTOMERID", SqlDbType.Int,4),
  2084. new SqlParameter("@F_CUSTOMERNAME", SqlDbType.NVarChar,200),
  2085. new SqlParameter("@F_CUSTOMERTELEPHONE", SqlDbType.NVarChar,200),
  2086. new SqlParameter("@F_RETURNVISITPROBLEM", SqlDbType.NVarChar,4000),
  2087. new SqlParameter("@F_REPAIRLEVEL",SqlDbType.Int,4),
  2088. new SqlParameter("@F_ADSLACCOUNT", SqlDbType.NVarChar,200),
  2089. new SqlParameter("@F_WORKORDERLEVELID", SqlDbType.Int,4),
  2090. new SqlParameter("@F_WORKORDERNAME", SqlDbType.NVarChar,200),
  2091. new SqlParameter("@F_CONTENT", SqlDbType.NVarChar,4000),
  2092. new SqlParameter("@F_RETURNVISITFLAG", SqlDbType.Int,4),
  2093. new SqlParameter("@F_RETURNVISITTIME ", SqlDbType.DateTime),
  2094. new SqlParameter("@F_REMAINDERENDTIME",SqlDbType.DateTime),
  2095. new SqlParameter("@F_RETURNVISITRESULT", SqlDbType.Int,4),
  2096. new SqlParameter("@F_ROAD", SqlDbType.NVarChar,50),
  2097. new SqlParameter("@F_RETURNVISITOPINION", SqlDbType.NVarChar,4000),
  2098. new SqlParameter("@F_FILEFLAG", SqlDbType.Int,4),
  2099. new SqlParameter("@F_HOUSING ", SqlDbType.NVarChar,200),
  2100. new SqlParameter("@F_RETURNVISITCONTENT ", SqlDbType.NVarChar,200),
  2101. new SqlParameter("@F_WORKORDERID", SqlDbType.Int,4)};
  2102. parameters[0].Value = model.F_CUSTOMERID;
  2103. parameters[1].Value = model.F_CUSTOMERNAME;
  2104. parameters[2].Value = model.F_CUSTOMERTELEPHONE;
  2105. parameters[3].Value = model.F_RETURNVISITPROBLEM;
  2106. parameters[4].Value = model.F_REPAIRLEVEL;
  2107. parameters[5].Value = model.F_ADSLACCOUNT;
  2108. parameters[6].Value = model.F_WORKORDERLEVELID;
  2109. parameters[7].Value = model.F_WORKORDERNAME;
  2110. parameters[8].Value = model.F_CONTENT;
  2111. parameters[9].Value = model.F_RETURNVISITFLAG;
  2112. parameters[10].Value = model.F_RETURNVISITTIME;
  2113. parameters[11].Value = model.F_REMAINDERENDTIME;
  2114. parameters[12].Value = model.F_RETURNVISITRESULT;
  2115. parameters[13].Value = model.F_ROAD;
  2116. parameters[14].Value = model.F_RETURNVISITOPINION;
  2117. parameters[15].Value = model.F_FILEFLAG;
  2118. parameters[16].Value = model.F_HOUSING;
  2119. parameters[17].Value = model.F_RETURNVISITCONTENT;
  2120. parameters[18].Value = model.F_WORKORDERID;
  2121. int rows = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters);
  2122. if (rows > 0)
  2123. {
  2124. return true;
  2125. }
  2126. else
  2127. {
  2128. return false;
  2129. }
  2130. }
  2131. #endregion ExtensionMethod
  2132. #region 工单撤回
  2133. public bool ResetWorkOrder(int workOrderId, int byid, string byname, int bmid, string bmmc)
  2134. {
  2135. bool result = false;
  2136. if (workOrderId > 0)
  2137. {
  2138. StringBuilder strSql = new StringBuilder();
  2139. strSql.Append(" update T_Wo_WorkOrderBase set ");
  2140. strSql.Append(" F_WORKORDERSTATEID=0,F_REPAIRREQUEST='未处理' where F_WORKORDERID=" + workOrderId);
  2141. int hisid = EditOrderHistoryInfo(workOrderId, byid, byname, bmid, bmmc);
  2142. if (hisid > 0)
  2143. {
  2144. result = DbHelperSQL.ExecuteSql(strSql.ToString()) > 0;
  2145. }
  2146. }
  2147. return result;
  2148. }
  2149. //插入撤消工单历史信息
  2150. public int EditOrderHistoryInfo(int workOrderId, int byid, string byname, int bmid, string bmmc)
  2151. {
  2152. //历史工单id
  2153. int historyId = 0;
  2154. //插入撤消信息
  2155. Model.T_Wo_WorkOrderHistory historyModel = new Model.T_Wo_WorkOrderHistory();
  2156. historyModel.F_INSTANCEID = workOrderId;
  2157. historyModel.F_OPTUSERID = byid;
  2158. historyModel.F_UserName = byname;
  2159. historyModel.F_OPTBTNID = bmid;
  2160. historyModel.F_NEXTOWNERARRID = bmmc;
  2161. historyModel.F_OPTDATE = DateTime.Now;
  2162. historyModel.F_WORKORDERSTATEID = 0;
  2163. historyModel.F_StateName = "未处理";
  2164. historyModel.F_TASKFLAG = 2;
  2165. historyModel.F_REMARK = "已撤消";
  2166. historyId = InsertWorkOrderHistoryModel(historyModel);
  2167. //if (historyId > 0)
  2168. //{
  2169. // StringBuilder strSql = new StringBuilder();
  2170. // strSql.Append("update T_Wo_WorkOrderBase set ");
  2171. // strSql.Append("F_FORMID=@F_FORMID");
  2172. // strSql.Append(" where F_WORKORDERID=@F_WORKORDERID");
  2173. // SqlParameter[] parameters = {
  2174. // new SqlParameter("@F_FORMID", SqlDbType.Int,4),
  2175. // new SqlParameter("@F_WORKORDERID", SqlDbType.Int,4)};
  2176. // parameters[0].Value = historyId;
  2177. // parameters[1].Value = workOrderId;
  2178. // bool EditStatus = DbHelperSQL.ExecuteSql(strSql.ToString(), parameters) > 0;
  2179. //}
  2180. return historyId;
  2181. }
  2182. #endregion
  2183. }
  2184. }