地铁二期项目正式开始

T_Wo_WorkOrderBase.cs 136KB

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