| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590 |
- using CallCenter.Utility;
- using CallCenterApi.BLL;
- using CallCenterApi.Common;
- using CallCenterApi.DB;
- using CallCenterApi.Interface.Controllers.Base;
- using CallCenterApi.Interface.Models.Common;
- using CallCenterApi.Model;
- using LumiSoft.Net.IO;
- using Newtonsoft.Json;
- using Newtonsoft.Json.Linq;
- using System;
- using System.Collections.Generic;
- using System.Data;
- using System.IO;
- using System.Linq;
- using System.Net;
- using System.Net.Http;
- using System.Net.Security;
- using System.Security.Cryptography;
- using System.Security.Cryptography.X509Certificates;
- using System.Text;
- using System.Text.RegularExpressions;
- using System.Threading.Tasks;
- using System.Transactions;
- using System.Web;
- using System.Web.Mvc;
- namespace CallCenterApi.Interface.Controllers.workorder
- {
- public class AffairsController : BaseController
- {
- #region 上传省政务平台
- #region 服务工单受理
- public class paras
- {
- public string AREA_CODE { set; get; }
- public int CRNT_SEATNUM { set; get; }
- public int CRNT_TELNUM { set; get; }
- public int TDY_NUM { set; get; }
- public int TDY_TELNUM { set; get; }
- public int TDY_ZWNUM { set; get; }
- public int TDY_WZNUM { set; get; }
- public int TDY_WXNUM { set; get; }
- public int TDY_APNUM { set; get; }
- public int TDY_OTNUM { set; get; }
- public decimal TDY_TELRATE { set; get; }
- }
- string AREA_CODE = Configs.GetValue("AREACODE");
- /// <summary>
- /// 实时服务信息上报接口
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- public ActionResult submit_dept_crnt_status()
- {
- paras paras = new paras();
- paras.AREA_CODE = AREA_CODE;
- string ZX = " select top 1 Checkin from rep_service WITH(NOLOCK) ";
- paras.CRNT_SEATNUM = int.Parse(DbHelperSQL.GetSingle(ZX).ToString());
- string TH = "select top 1 Conversation from rep_service WITH(NOLOCK) ";
- paras.CRNT_TELNUM = int.Parse(DbHelperSQL.GetSingle(TH).ToString());
- string GDCount = "select COUNT(1) from T_Bus_WorkOrder WITH(NOLOCK) where datediff(day , F_CreateTime , getdate())= 0 ";
- paras.TDY_NUM = int.Parse(DbHelperSQL.GetSingle(GDCount).ToString());
- string ldCount = "SELECT COUNT(1) FROM T_Call_CallRecords WITH(NOLOCK) WHERE datediff(day , BeginTime , getdate())= 0 ";
- var ld= DbHelperSQL.GetSingle(ldCount).ToString();
- string DHCount = "SELECT COUNT(1) FROM T_Bus_WorkOrder WITH(NOLOCK) WHERE F_InfoSource = 1 AND datediff(day , F_CreateTime , getdate())= 0 ";
- paras.TDY_TELNUM = int.Parse(DbHelperSQL.GetSingle(DHCount).ToString());
- paras.TDY_ZWNUM = 0;
- string WZCount = "SELECT COUNT(1) FROM T_Bus_WorkOrder WITH(NOLOCK) WHERE F_InfoSource =2527 AND datediff(day , F_CreateTime , getdate())= 0 ";
- paras.TDY_WZNUM = int.Parse(DbHelperSQL.GetSingle(WZCount).ToString());
- //string WXCount = "SELECT COUNT(1) FROM T_Bus_WorkOrder WITH(NOLOCK) WHERE F_InfoSource =5 AND datediff(day , F_CreateTime , getdate())= 0 ";
- //paras.TDY_WXNUM = int.Parse(DbHelperSQL.GetSingle(WXCount).ToString());
- paras.TDY_WXNUM = 0;
- //string APPCount = "SELECT COUNT(1) FROM T_Bus_WorkOrder WITH(NOLOCK) WHERE F_InfoSource=6 AND datediff(day , F_CreateTime , getdate())= 0 ";
- paras.TDY_APNUM = 0; //int.Parse(DbHelperSQL.GetSingle(APPCount).ToString());
- string WBCount = "SELECT COUNT(1) FROM T_Bus_WorkOrder WITH(NOLOCK) WHERE F_InfoSource not in (1,2527) AND datediff(day , F_CreateTime , getdate())= 0 ";
- paras.TDY_OTNUM = int.Parse(DbHelperSQL.GetSingle(WBCount).ToString());
- // paras.TDY_OTNUM = 0;
- string jt = "SELECT COUNT(1) FROM T_Call_CallRecords WITH(NOLOCK) WHERE datediff(day,BeginTime, getdate())= 0 AND CallState =1 ";
- var jtl = DbHelperSQL.GetSingle(jt).ToString();
- decimal TDY_TELRATE = 0;
- try
- {
- if (float .Parse (ld) > 0)
- {
- TDY_TELRATE = decimal.Parse(string.Format("{0:f2}", float.Parse(jtl) / float.Parse(ld) * 100));
- paras.TDY_TELRATE = TDY_TELRATE;
- }
- }
- catch
- {
- paras.TDY_TELRATE = 0;
- }
- var responseString = HttpPost("http://59.207.107.18:5000/api/submit_dept_crnt_status", paras.ToJson());
- try
- {
- Push jo = JsonConvert.DeserializeObject<Push>(responseString);
- if (jo.code == "1")
- {
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "实时服务信息上报接口", "", "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
-
- return Success("推送成功");
-
- }
- else
- {
- string error = "";
- if (jo.body.errorObjs != null && jo.body.errorObjs.Length > 0)
- {
- foreach (var it in jo.body.errorObjs)
- {
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送接口名称:" + it.resturl;
- }
- if (!string.IsNullOrEmpty(it.caseserial))
- {
- error += " 推送工单号:" + it.caseserial;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送标识:" + it.errorid;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送失败原因:" + it.errormsg;
- }
- }
- }
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "实时服务信息上报接口", error, "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
- return Error("推送失败---" + error);
- }
- }
- catch
- {
- return Error(responseString);
- }
- }
- public class submit_case_info
- {
- public List<jsonList> jsonList { set; get; }
- }
- public class jsonList
- {
- /// <summary>
- /// "工单编号",
- /// </summary>
- public string CASE_SERIAL { set; get; }
- /// <summary>
- /// "行政区划代码",
- /// </summary>
- public string AREA_CODE { set; get; }
- /// <summary>
- /// "工单唯一标识",
- /// </summary>
- public string CASE_ID { set; get; }//
- /// <summary>
- /// 诉求人姓名
- /// </summary>
- public string APPLICANT_NAME { set; get; }
- /// <summary>
- /// 诉求人性别
- /// </summary>
- public string APPLICANT_SEX { set; get; }
- /// <summary>
- /// 诉求人年龄
- /// </summary>
- public string APPLICANT_AGE { set; get; }
- /// <summary>
- /// 诉求人联系电话
- /// </summary>
- public string APPLICANT_NUMBER { set; get; }
- /// <summary>
- /// 诉求时间
- /// </summary>
- public string APPLICANT_TIME { set; get; }
- /// <summary>
- /// 话务员姓名
- /// </summary>
- public string HWY_NAME { set; get; }
- /// <summary>
- /// 话务员工号
- /// </summary>
- public string HWY_LOGINID { set; get; }
- /// <summary>
- /// 登记时间
- /// </summary>
- public string CASE_TIME { set; get; }
- /// <summary>
- /// 服务工单标题
- /// </summary>
- public string CASE_TITLE { set; get; }
- /// <summary>
- /// 服务工单内容
- /// </summary>
- public string CASE_CONTENT { set; get; }
- /// <summary>
- /// 诉求渠道
- /// </summary>
- public string CASE_SOURCE { set; get; }
- /// <summary>
- /// 诉求类型
- /// </summary>
- public string CASE_TYPE { set; get; }
- /// <summary>
- /// 诉求归口
- /// </summary>
- public string CASE_ACCORD { set; get; }
- /// <summary>
- /// 诉求人信息是否公开
- /// </summary>
- public string CASE_ISPUBLIC { set; get; }
- /// <summary>
- /// 是否回访
- /// </summary>
- public string CASE_ISVISIT { set; get; }
- /// <summary>
- /// 紧急程度
- /// </summary>
- public string CASE_ISURGENT { set; get; }
- /// <summary>
- /// 经纬度
- /// </summary>
- public string CASE_LNGLAT { set; get; }
- /// <summary>
- /// 诉求情感
- /// </summary>
- public string CASE_EMOTION { set; get; }
- /// <summary>
- /// 诉求详细地址
- /// </summary>
- public string CASE_ADDRESS { set; get; }//""
- }
- /// <summary>
- /// </summary>
- /// 服务工单受理
- /// <param name="sender"></param>
- /// <param name="e"></param>
- public ActionResult case_info(string workorderid)
- {
- Model.T_Bus_WorkOrder model = new BLL.T_Bus_WorkOrder().GetModel(workorderid);
- if (model != null)
- {
- submit_case_info paras = new submit_case_info();
- paras.jsonList = new List<jsonList>();
- jsonList jsonList = new jsonList();
- string newwokrkorder = workorderid;
- if (model.F_WorkOrderId.Contains("QT"))
- newwokrkorder = "WZ" + workorderid.Substring(2, workorderid.Length - 2);
- else
- newwokrkorder = workorderid;
- jsonList.CASE_SERIAL = newwokrkorder;
- jsonList.AREA_CODE = AREA_CODE;
- jsonList.CASE_ID = model.F_Id.ToString();
- if (string.IsNullOrEmpty(model.F_CusName))
- jsonList.APPLICANT_NAME = "匿名";
- else
- jsonList.APPLICANT_NAME = model.F_CusName;
- if (model.F_CusSex == "0")
- jsonList.APPLICANT_SEX = "1";
- else if (model.F_CusSex == "1")
- jsonList.APPLICANT_SEX = "2";
- else
- jsonList.APPLICANT_SEX = "3";
- jsonList.APPLICANT_AGE = "8";//没有
- jsonList.APPLICANT_NUMBER = model.F_CusPhone;
- jsonList.APPLICANT_TIME = model.F_CreateTime.Value.ToString("yyyy-MM-dd HH:mm:ss");//没有
- if (DbHelperSQL.GetSingle(" select dbo.GetUserName('" + model.F_CreateUser + "')") != null)
- jsonList.HWY_NAME = DbHelperSQL.GetSingle(" select dbo.GetUserName('" + model.F_CreateUser + "')").ToString();
- else
- jsonList.HWY_NAME = model.F_CreateUser;
- jsonList.HWY_LOGINID = model.F_CreateUser;
- jsonList.CASE_TIME = model.F_CreateTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- jsonList.CASE_TITLE = model.F_ComTitle;
- jsonList.CASE_CONTENT = model.F_ComContent;
- jsonList.CASE_SOURCE = model.F_WorkOrderId.Substring(0, 2);
- if (model.F_InfoType == 9)//咨询
- jsonList.CASE_TYPE = "10";
- else if (model.F_InfoType == 12)//建议
- jsonList.CASE_TYPE = "15";
- else if (model.F_InfoType == 11)//投诉
- jsonList.CASE_TYPE = "20";
- else if (model.F_InfoType == 10)//求助
- jsonList.CASE_TYPE = "30";
- else if (model.F_InfoType == 13)//表扬
- jsonList.CASE_TYPE = "35";
- else
- jsonList.CASE_TYPE = "40";//其他
- if (DbHelperSQL.GetSingle(" select dbo.GetDicRemark('" + model.F_Key + "')") != null)
- jsonList.CASE_ACCORD = DbHelperSQL.GetSingle(" select dbo.GetDicRemark('" + model.F_Key + "')").ToString();
- else
- jsonList.CASE_ACCORD = "";
- jsonList.CASE_ISPUBLIC = model.F_IsProtect.ToString();
- if (model.F_IsResult == 0)
- jsonList.CASE_ISPUBLIC = "1";
- else
- jsonList.CASE_ISPUBLIC = "0";
- if (model.F_Level == 2)
- {
- jsonList.CASE_ISURGENT = "20";
- }
- else
- {
- jsonList.CASE_ISURGENT = "30";
- }
- if (model.F_IsResult == 1)
- jsonList.CASE_ISVISIT = "0";
- else
- jsonList.CASE_ISVISIT = "1";
- jsonList.CASE_LNGLAT = model.F_Latitude + "," + model.F_Longitude;
- jsonList.CASE_EMOTION = "70";
- jsonList.CASE_ADDRESS = model.F_SourceAddress;
- paras.jsonList.Add(jsonList);
- //Dictionary<string, object> values = new Dictionary<string, object>();
- //values.Add("access_token", token);
- //values.Add("paras", paras);
- ////序列化参数
- //var jsonParam = JsonConvert.SerializeObject(values);
- // string jsonParam = "access_token=" + token + "¶s=" + paras.ToJson();
- var responseString = HttpPost("http://59.207.107.18:5000/api/submit_case_info", paras.ToJson());
- Push jo = JsonConvert.DeserializeObject<Push>(responseString);
- if (jo.code == "1")
- {
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", workorderid, "", DateTime.Now, jo.code, jo.message, "服务工单受理", "", "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
- string Mapping = string.Format(@"INSERT INTO T_Bus_Mapping ( [F_OldWorkOrder], [F_NewWorkOrder], [F_CreateTime], [F_Type])
- values ('{0}','{1}','{2}','{3}') ;select @@IDENTITY ", workorderid, newwokrkorder, DateTime.Now, 1);
- object Mappings = DbHelperSQL.GetSingle(Mapping);
- return Success("推送成功");
- // string Mapping = string.Format(@"INSERT INTO T_Bus_Mapping ( [F_OldWorkOrder], [F_NewWorkOrder], [F_CreateTime], [F_Type])
- //values ('{0}','{1}','{2}','{3}') ;select @@IDENTITY ", workorderid, workorderid , DateTime.Now, 0);
- // object Mappings = DbHelperSQL.GetSingle(Mapping);
- // return Error("推送成功");
- }
- else
- {
- string error = "";
- if (jo.body.errorObjs != null && jo.body.errorObjs.Length > 0)
- {
- foreach (var it in jo.body.errorObjs)
- {
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送接口名称:" + it.resturl;
- }
- if (!string.IsNullOrEmpty(it.caseserial))
- {
- error += " 推送工单号:" + it.caseserial;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送标识:" + it.errorid;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送失败原因:" + it.errormsg;
- }
- }
- }
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "服务工单受理", error, "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
- LogFactory.GetLogger("111").Warn("服务工单受理" + error);
- return Error("推送失败---" + error);
- }
- }
- else
- {
- return Error("推送失败工单不存在");
- }
- }
- #endregion
- #region 部门处办记录
- public class submit_task_handle_info
- {
- public List<handle_info> jsonList { set; get; }
- }
- public class handle_info
- {
- /// <summary>
- /// "工单编号",
- /// </summary>
- public string CASE_SERIAL { set; get; }
- /// <summary>
- /// "行政区划代码",
- /// </summary>
- public string AREA_CODE { set; get; }
- /// <summary>
- /// "工单唯一标识",
- /// </summary>
- public string CASE_ID { set; get; }//
- /// <summary>
- /// 任务单唯一标识
- /// </summary>
- public string TASK_ID { set; get; }
- /// <summary>
- /// 父任务单标识
- /// </summary>
- public string TASK_PARENTID { set; get; }
- /// <summary>
- /// 办理部门
- /// </summary>
- public string TASK_OUNAME { set; get; }
- /// <summary>
- /// 办理人员
- /// </summary>
- public string TASK_USERNAME { set; get; }
- /// <summary>
- /// 反馈意见
- /// </summary>
- public string TASK_CONTENT { set; get; }
- /// <summary>
- /// 交办时间
- /// </summary>
- public string TASK_ASSIGNTIME { set; get; }
- /// <summary>
- /// 签收时间
- /// </summary>
- public string TASK_SIGNTIME { set; get; }
- /// <summary>
- /// 反馈时间
- /// </summary>
- public string TASK_FINISHTIME { set; get; }
- /// <summary>
- /// 应反馈时间
- /// </summary>
- public string TASK_FINISHTIME_BF { set; get; }
- /// <summary>
- /// 是否退回
- /// </summary>
- public string TASK_ISBACK { set; get; }
- /// <summary>
- /// 是否分派
- /// </summary>
- public string TASK_ISALLOT { set; get; }
- /// <summary>
- /// 处办时长
- /// </summary>
- public int TASK_HANDLE_LENGTH { set; get; }
- }
- /// <summary>
- /// 一级部门处办记录
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- public ActionResult handle_info_1(string workorderid)
- {
- var workorder = new BLL.T_Bus_WorkOrder().GetModel(workorderid);
- var model = new BLL.T_Bus_Feedback().GetNewModelByWorkOrderID(workorderid);
- var info = new BLL.T_Bus_AssignedInfo().GetNewModelByWorkOrderID(workorderid);
- if (workorder != null)
- {
- submit_task_handle_info paras = new submit_task_handle_info();
- paras.jsonList = new List<handle_info>();
- handle_info jsonList = new handle_info();
- string newwokrkorder = workorderid;
- if (model.F_WorkOrderId.Contains("QT"))
- newwokrkorder = "WZ" + workorderid.Substring(2, workorderid.Length - 2);
- else
- newwokrkorder = workorderid;
- jsonList.CASE_SERIAL = newwokrkorder;
- jsonList.AREA_CODE = AREA_CODE;
- jsonList.TASK_ID = model.F_Id.ToString();
- jsonList.TASK_PARENTID = "TOP";
- if (DbHelperSQL.GetSingle(" select dbo.GetDeptNames('" + model.F_CreateDeptId + "')") != null)
- jsonList.TASK_OUNAME = DbHelperSQL.GetSingle(" select dbo.GetDeptNames('" + model.F_CreateDeptId + "')").ToString();
- else
- jsonList.TASK_OUNAME = "";
- if (DbHelperSQL.GetSingle(" select dbo.GetUserName('" + model.F_CreateUser + "')") != null)
- jsonList.TASK_USERNAME = DbHelperSQL.GetSingle(" select dbo.GetUserName('" + model.F_CreateUser + "')").ToString();
- else
- jsonList.TASK_USERNAME = model.F_CreateUser;
- if (string.IsNullOrEmpty(model.F_Result))
- jsonList.TASK_CONTENT = "无";
- else
- jsonList.TASK_CONTENT = model.F_Result;
- jsonList.TASK_ASSIGNTIME = info.F_CreateTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- jsonList.TASK_SIGNTIME = info.F_SureTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- jsonList.TASK_FINISHTIME = model.F_CreateTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- jsonList.TASK_FINISHTIME_BF = info.F_LimitTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- if (info.F_State == 2)
- {
- jsonList.TASK_ISBACK = "1";
- }
- else
- {
- jsonList.TASK_ISBACK = "0";
- }
- if (info.F_IsNext > 0)
- {
- jsonList.TASK_ISALLOT = "1";
- }
- else
- {
- jsonList.TASK_ISALLOT = "0";
- }
- jsonList.TASK_HANDLE_LENGTH = int.Parse(DbHelperSQL.GetSingle(" SELECT DATEDIFF(SECOND,'" + jsonList.TASK_ASSIGNTIME + "', '" + jsonList.TASK_FINISHTIME + "')").ToString());
- paras.jsonList.Add(jsonList);
- // string jsonParam = "paras=" + paras.ToJson();
- var responseString = HttpPost("http://59.207.107.18:5000/api/submit_task_handle_info", paras.ToJson());
- Push jo = JsonConvert.DeserializeObject<Push>(responseString);
- if (jo.code == "1")
- {
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "一级部门处办记录", "", "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
-
- return Success("推送成功");
- }
- else
- {
- string error = "";
- if (jo.body.errorObjs != null && jo.body.errorObjs.Length > 0)
- {
- foreach (var it in jo.body.errorObjs)
- {
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送接口名称:" + it.resturl;
- }
- if (!string.IsNullOrEmpty(it.caseserial))
- {
- error += " 推送工单号:" + it.caseserial;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送标识:" + it.errorid;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送失败原因:" + it.errormsg;
- }
- }
- }
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "一级部门处办记录", error, "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
- LogFactory.GetLogger("111").Warn("一级部门处办记录" + error);
- return Error("推送失败--" + error);
- }
- }
- else
- return Error("工单不存在");
- }
- /// <summary>
- /// 二级部门处办记录
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- public ActionResult handle_info_2(string workorderid)
- {
- var workorder = new BLL.T_Bus_WorkOrder().GetModel(workorderid);
- var info1 = new BLL.T_Bus_AssignedInfo().GetNewModelByWorkOrderID(workorderid);
- var model = new BLL.T_Bus_Feedback_Next().GetNewModelByWorkOrderID(workorderid);
- var info = new BLL.T_Bus_AssignedInfo_Next().GetNewModelByWorkOrderID(workorderid);
- if (workorder != null)
- {
- submit_task_handle_info paras = new submit_task_handle_info();
- paras.jsonList = new List<handle_info>();
- handle_info jsonList = new handle_info();
- string newwokrkorder = workorderid;
- if (model.F_WorkOrderId.Contains("QT"))
- newwokrkorder = "WZ" + workorderid.Substring(2, workorderid.Length - 2);
- else
- newwokrkorder = workorderid;
- jsonList.CASE_SERIAL = newwokrkorder;
- jsonList.AREA_CODE = AREA_CODE;
- jsonList.TASK_ID = model.F_Id.ToString();
- jsonList.TASK_PARENTID = info1.F_Id.ToString();
- if (DbHelperSQL.GetSingle(" select dbo.GetDeptNames('" + model.F_CreateDeptId + "')") != null)
- jsonList.TASK_OUNAME = DbHelperSQL.GetSingle(" select dbo.GetDeptNames('" + model.F_CreateDeptId + "')").ToString();
- if (DbHelperSQL.GetSingle(" select dbo.GetUserName('" + model.F_CreateUser + "')") != null)
- jsonList.TASK_USERNAME = DbHelperSQL.GetSingle(" select dbo.GetUserName('" + model.F_CreateUser + "')").ToString();
- else
- jsonList.TASK_USERNAME = model.F_CreateUser;
- jsonList.TASK_CONTENT = model.F_Result;
- jsonList.TASK_ASSIGNTIME = info.F_CreateTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- jsonList.TASK_SIGNTIME = info.F_SureTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- jsonList.TASK_FINISHTIME = model.F_CreateTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- jsonList.TASK_FINISHTIME_BF = info.F_LimitTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- if (info.F_State == 2)
- {
- jsonList.TASK_ISBACK = "1";
- }
- else
- {
- jsonList.TASK_ISBACK = "0";
- }
- jsonList.TASK_ISALLOT = "1";
- jsonList.TASK_HANDLE_LENGTH = int.Parse(DbHelperSQL.GetSingle(" SELECT DATEDIFF(SECOND,'" + jsonList.TASK_ASSIGNTIME + "', '" + jsonList.TASK_FINISHTIME + "')").ToString());
- paras.jsonList.Add(jsonList);
- // string jsonParam = "paras=" + paras.ToJson();
- var responseString = HttpPost("http://59.207.107.18:5000/api/submit_task_handle_info", paras.ToJson());
- Push jo = JsonConvert.DeserializeObject<Push>(responseString);
- if (jo.code == "1")
- {
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "二级部门处办记录", "", "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
-
- return Success("推送成功");
- }
- else
- {
- string error = "";
- if (jo.body.errorObjs != null && jo.body.errorObjs.Length > 0)
- {
- foreach (var it in jo.body.errorObjs)
- {
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送接口名称:" + it.resturl;
- }
- if (!string.IsNullOrEmpty(it.caseserial))
- {
- error += " 推送工单号:" + it.caseserial;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送标识:" + it.errorid;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送失败原因:" + it.errormsg;
- }
- }
- }
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "二级部门处办记录", error, "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
- LogFactory.GetLogger("111").Warn("二级部门处办记录" + error);
- return Error("推送失败--" + error);
- }
- }
- return Error("工单不存在");
- }
- #endregion
- # region 工单最终评价
- public class submit_case_visit_info
- {
- public List<visit_info> jsonList { set; get; }
- }
- public class visit_info
- {
- /// <summary>
- /// "工单编号",
- /// </summary>
- public string CASE_SERIAL { set; get; }
- /// <summary>
- /// "行政区划代码",
- /// </summary>
- public string AREA_CODE { set; get; }
- ///<summary>
- /// 回访评价方式
- /// </summary>
- public string VISIT_TYPE { set; get; }
- /// <summary>
- /// 回访时间
- /// </summary>
- public string VISIT_TIME { set; get; }
- /// <summary>
- /// 回访人
- /// </summary>
- public string VISIT_NAME { set; get; }
- /// <summary>
- /// 回访评价情况
- /// </summary>
- public string VISIT_CONTENT { set; get; }
- /// <summary>
- /// 回访结果满意度
- /// </summary>
- public string VISIT_SATISFY { set; get; }
- /// <summary>
- /// 回访次数
- /// </summary>
- public int VISIT_NUMBER { set; get; }
- }
- /// <summary>
- /// 工单最终评价
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- public ActionResult case_visit_info(string workorderid)
- {
- var model = new BLL.T_Bus_VisitResult().GetNewModelByWorkOrderID(workorderid);
- var workorder = new BLL.T_Bus_WorkOrder().GetModel(workorderid);
- if (workorder != null && model != null)
- {
- submit_case_visit_info paras = new submit_case_visit_info();
- paras.jsonList = new List<visit_info>();
- visit_info jsonList = new visit_info();
- string newwokrkorder = workorderid;
- if (model.F_WorkOrderId.Contains("QT"))
- newwokrkorder = "WZ" + workorderid.Substring(2, workorderid.Length - 2);
- else
- newwokrkorder = workorderid;
- jsonList.CASE_SERIAL = newwokrkorder;
- jsonList.AREA_CODE = AREA_CODE;
- jsonList.VISIT_TYPE = "DH";
- jsonList.VISIT_TIME = model.F_CreateTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- if (DbHelperSQL.GetSingle(" select dbo.GetUserName('" + model.F_CreateUser + "')") != null)
- jsonList.VISIT_NAME = DbHelperSQL.GetSingle(" select dbo.GetUserName('" + model.F_CreateUser + "')").ToString();
- else
- jsonList.VISIT_NAME = model.F_CreateUser;
- if (string.IsNullOrEmpty(model.F_Result))
- jsonList.VISIT_CONTENT = "无";
- else
- jsonList.VISIT_CONTENT = model.F_Result;
- if (model.F_IsSatisfie == 0)
- jsonList.VISIT_SATISFY = "2";
- else
- jsonList.VISIT_SATISFY = "4";
- jsonList.VISIT_NUMBER = int.Parse(DbHelperSQL.GetSingle(" select count(1) from T_Bus_VisitResult where F_WorkOrderId ='" + model.F_WorkOrderId + "'").ToString());
- paras.jsonList.Add(jsonList);
- // string jsonParam = "paras=" + paras.ToJson();
- var responseString = HttpPost("http://59.207.107.18:5000/api/submit_case_visit_info", paras.ToJson());
- Push jo = JsonConvert.DeserializeObject<Push>(responseString);
- if (jo.code == "1")
- {
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "工单最终评价", "", "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
- return Success("推送成功");
- }
- else
- {
- string error = "";
- if (jo.body.errorObjs != null && jo.body.errorObjs.Length > 0)
- {
- foreach (var it in jo.body.errorObjs)
- {
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送接口名称:" + it.resturl;
- }
- if (!string.IsNullOrEmpty(it.caseserial))
- {
- error += " 推送工单号:" + it.caseserial;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送标识:" + it.errorid;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送失败原因:" + it.errormsg;
- }
- }
- }
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "工单最终评价", error, "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
- LogFactory.GetLogger("111").Warn("工单最终评价" + error);
- return Error("推送失败--" + error);
- }
- }
- else
- return Error("工单不存在或工单未评价");
- }
- #endregion
- #region 服务工单办结
- public class submit_case_finish_info
- {
- public List<finish_info> jsonList { set; get; }
- }
- public class finish_info
- {
- /// <summary>
- /// "工单编号",
- /// </summary>
- public string CASE_SERIAL { set; get; }
- /// <summary>
- /// "行政区划代码",
- /// </summary>
- public string AREA_CODE { set; get; }
- ///<summary>
- /// 办结方式
- /// </summary>
- public string FINISH_TYPE { set; get; }
- /// <summary>
- /// 答复单位
- /// </summary>
- public string DEPT_NAME { set; get; }
- /// <summary>
- /// 答复单位组织架构编码
- /// </summary>
- public string DEPT_CODE { set; get; }
- /// <summary>
- /// 答复时间
- /// </summary>
- public string FINISH_TIME { set; get; }
- /// <summary>
- /// 答复人员
- /// </summary>
- public string FINISH_NAME { set; get; }
- /// <summary>
- /// 答复结果
- /// </summary>
- public string FINISH_CONTENT { set; get; }
- /// <summary>
- /// 答复结果
- /// </summary>
- public string END_TIME { set; get; }
- /// <summary>
- /// 处办时长
- /// </summary>
- public int END_LENGTH { set; get; }
- }
- /// <summary>
- /// 服务工单办结
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- public ActionResult case_finish_info(string workorderid)
- {
- var model = new BLL.T_Bus_WorkOrder().GetModel(workorderid);
- if (model != null)
- {
- submit_case_finish_info paras = new submit_case_finish_info();
- paras.jsonList = new List<finish_info>();
- finish_info jsonList = new finish_info();
- string newwokrkorder = workorderid;
- if (model.F_WorkOrderId.Contains("QT"))
- newwokrkorder = "WZ" + workorderid.Substring(2, workorderid.Length - 2);
- else
- newwokrkorder = workorderid;
- jsonList.CASE_SERIAL = newwokrkorder;
- jsonList.AREA_CODE = AREA_CODE;
- if (model.F_IsResult == 1)
- {
- jsonList.FINISH_TYPE = "10";
- jsonList.DEPT_NAME = "热线中心";
- jsonList.END_TIME = model.F_CloseTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- jsonList.DEPT_CODE = "4114000254";
- }
- else
- {
- jsonList.FINISH_TYPE = "20";
- if (model.F_MainDeptId > 0)
- {
- jsonList.END_TIME = model.F_DealTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- if (DbHelperSQL.GetSingle(" select dbo.GetDeptNames('" + model.F_MainDeptId + "')") != null)
- jsonList.DEPT_NAME = DbHelperSQL.GetSingle(" select dbo.GetDeptNames('" + model.F_MainDeptId + "')").ToString();
- if (DbHelperSQL.GetSingle(" select F_DeptNameSpell from T_Sys_Department where F_DeptId= '" + model.F_MainDeptId + "'") != null)
- jsonList.DEPT_CODE = DbHelperSQL.GetSingle(" select F_DeptNameSpell from T_Sys_Department where F_DeptId= '" + model.F_MainDeptId + "'").ToString();
- }
- else
- {
- jsonList.END_TIME = model.F_CloseTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- jsonList.DEPT_NAME = "热线中心";
- jsonList.DEPT_CODE = "4114000254";
- }
- }
- jsonList.FINISH_TIME = model.F_CloseTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- if (DbHelperSQL.GetSingle(" select dbo.GetUserName('" + model.F_DealUser + "')") != null)
- jsonList.FINISH_NAME = DbHelperSQL.GetSingle(" select dbo.GetUserName('" + model.F_DealUser + "')").ToString();
- else
- jsonList.FINISH_NAME = model.F_DealUser;
- if (string.IsNullOrEmpty(jsonList.FINISH_NAME))
- jsonList.FINISH_NAME = "热线中心";
- jsonList.FINISH_CONTENT = model.F_Result;
- jsonList.END_LENGTH = int.Parse(DbHelperSQL.GetSingle(" SELECT DATEDIFF(SECOND,'" + model.F_CreateTime + "', '" + model.F_DealTime + "')").ToString());
- paras.jsonList.Add(jsonList);
- // string jsonParam = "paras=" + paras.ToJson();
- var responseString = HttpPost("http://59.207.107.18:5000/api/submit_case_finish_info", paras.ToJson());
- try
- {
- Push jo = JsonConvert.DeserializeObject<Push>(responseString);
- if (jo.code == "1")
- {
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "服务工单办结", "", "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
- return Success("推送成功");
- }
- else
- {
- string error = "";
- if (jo.body.errorObjs != null && jo.body.errorObjs.Length > 0)
- {
- foreach (var it in jo.body.errorObjs)
- {
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送接口名称:" + it.resturl;
- }
- if (!string.IsNullOrEmpty(it.caseserial))
- {
- error += " 推送工单号:" + it.caseserial;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送标识:" + it.errorid;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送失败原因:" + it.errormsg;
- }
- }
- }
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "服务工单办结", error, "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
- LogFactory.GetLogger("111").Warn("服务工单办结" + error);
- return Error("推送失败--" + error);
- }
- }
- catch
- {
- return Error(responseString);
- }
- }
- else
- return Error("工单不存在");
- }
- #endregion
- #region 工单处理流程
- public class submit_case_process_info
- {
- public List<process_info> jsonList { set; get; }
- }
- public class process_info
- {
- /// <summary>
- /// "工单编号",
- /// </summary>
- public string CASE_SERIAL { set; get; }
- /// <summary>
- /// "行政区划代码",
- /// </summary>
- public string AREA_CODE { set; get; }
- ///<summary>
- /// 流程唯一标识
- /// </summary>
- public string PROCESS_ID { set; get; }
- /// <summary>
- /// 环节名称
- /// </summary>
- public string TACHE_NAME { set; get; }
- /// <summary>
- /// 处理部门
- /// </summary>
- public string DEPT_NAME { set; get; }
- /// <summary>
- /// 处理时间
- /// </summary>
- public string PROCESS_TIME { set; get; }
- /// <summary>
- /// 处理人员
- /// </summary>
- public string PROCESS_NAME { set; get; }
- /// <summary>
- /// 处办意见
- /// </summary>
- public string PROCESS_NOTE { set; get; }
- }
- /// <summary>
- /// 工单处理流程
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- public ActionResult case_process_info(int id, string title)
- {
- var model = new BLL.T_Bus_Operation().GetModel(id);
- if (model != null)
- {
- var workordr = new BLL.T_Bus_WorkOrder().GetModel(model.F_WorkOrderId);
- if (workordr != null)
- {
- submit_case_process_info paras = new submit_case_process_info();
- paras.jsonList = new List<process_info>();
- process_info jsonList = new process_info();
- string newwokrkorder = model .F_WorkOrderId ;
- if (model.F_WorkOrderId.Contains("QT"))
- newwokrkorder = "WZ" + model .F_WorkOrderId .Substring(2, model .F_WorkOrderId .Length - 2);
-
- jsonList.CASE_SERIAL = newwokrkorder;
- jsonList.AREA_CODE = AREA_CODE;
- jsonList.PROCESS_ID = model.F_Id.ToString();
- jsonList.DEPT_NAME = model.F_Message.Split('(')[0];
- jsonList.TACHE_NAME = title;
- jsonList.PROCESS_TIME = model.F_CreateTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- if (DbHelperSQL.GetSingle(" select dbo.GetUserName('" + model.F_CreateUser + "')") != null)
- jsonList.PROCESS_NAME = DbHelperSQL.GetSingle(" select dbo.GetUserName('" + model.F_CreateUser + "')").ToString();
- else
- jsonList.PROCESS_NAME = model.F_CreateUser;
- jsonList.PROCESS_NOTE = model.F_Message;
- paras.jsonList.Add(jsonList);
- //string jsonParam = "paras=" + paras.ToJson();
- var responseString = HttpPost("http://59.207.107.18:5000/api/submit_case_process_info", paras.ToJson());
- Push jo = JsonConvert.DeserializeObject<Push>(responseString);
- if (jo.code == "1")
- {
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "工单处理流程", "", "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
- return Success("推送成功");
- }
- else
- {
- string error = "";
- if (jo.body.errorObjs != null && jo.body.errorObjs.Length > 0)
- {
- foreach (var it in jo.body.errorObjs)
- {
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送接口名称:" + it.resturl;
- }
- if (!string.IsNullOrEmpty(it.caseserial))
- {
- error += " 推送工单号:" + it.caseserial;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送标识:" + it.errorid;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送失败原因:" + it.errormsg;
- }
- }
- }
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "工单处理流程", error, "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
- return Error("推送失败--" + error);
- }
- }
- else
- return Error("推送失败工单不存在");
- }
- else
- return Error("推送失败流程不存在");
- }
- #endregion
- #region 工单回访记录
- public class submit_case_visit_detail_info
- {
- public List<detail_info> jsonList { set; get; }
- }
- public class detail_info
- {
- /// <summary>
- /// "工单编号",
- /// </summary>
- public string CASE_SERIAL { set; get; }
- /// <summary>
- /// "行政区划代码",
- /// </summary>
- public string AREA_CODE { set; get; }
- ///<summary>
- /// 回访唯一标识
- /// </summary>
- public string VISIT_ID { set; get; }
- /// <summary>
- /// 回访评价方式
- /// </summary>
- public string VISIT_TYPE { set; get; }
- /// <summary>
- /// 回访时间
- /// </summary>
- public string VISIT_TIME { set; get; }
- /// <summary>
- /// 回访人
- /// </summary>
- public string VISIT_NAME { set; get; }
- /// <summary>
- /// 回访评价情况
- /// </summary>
- public string VISIT_CONTENT { set; get; }
- /// <summary>
- /// 回访结果满意度
- /// </summary>
- public string VISIT_SATISFY { set; get; }
- }
- /// <summary>
- /// 工单回访记录
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- public ActionResult case_visit_detail_info(string workorderid)
- {
- var model = new BLL.T_Bus_VisitResult().GetNewModelByWorkOrderID(workorderid);
- if (model != null)
- {
- submit_case_visit_detail_info paras = new submit_case_visit_detail_info();
- paras.jsonList = new List<detail_info>();
- detail_info jsonList = new detail_info();
- string newwokrkorder = workorderid;
- if (model.F_WorkOrderId.Contains("QT"))
- newwokrkorder = "WZ" + workorderid.Substring(2, workorderid.Length - 2);
- jsonList.CASE_SERIAL = newwokrkorder;
- jsonList.AREA_CODE = AREA_CODE;
- jsonList.VISIT_ID = model.F_Id.ToString();
- jsonList.VISIT_TYPE = "DH";
- jsonList.VISIT_TIME = model.F_CreateTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- if (DbHelperSQL.GetSingle(" select dbo.GetUserName('" + model.F_CreateUser + "')") != null)
- jsonList.VISIT_NAME = DbHelperSQL.GetSingle(" select dbo.GetUserName('" + model.F_CreateUser + "')").ToString();
- else
- jsonList.VISIT_NAME = model.F_CreateUser;
- if (string.IsNullOrEmpty(model.F_Result))
- jsonList.VISIT_CONTENT = "无";
- else
- jsonList.VISIT_CONTENT = model.F_Result;
- if (model.F_IsSatisfie == 0)
- jsonList.VISIT_SATISFY = "2";
- else
- jsonList.VISIT_SATISFY = "4";
- paras.jsonList.Add(jsonList);
- // string jsonParam = "paras=" + paras.ToJson();
- var responseString = HttpPost("http://59.207.107.18:5000/api/submit_case_visit_detail_info", paras.ToJson());
- try
- {
- Push jo = JsonConvert.DeserializeObject<Push>(responseString);
- if (jo.code == "1")
- {
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "工单回访记录", "", "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
- return Success("推送成功");
- }
- else
- {
- string error = "";
- if (jo.body.errorObjs != null && jo.body.errorObjs.Length > 0)
- {
- foreach (var it in jo.body.errorObjs)
- {
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送接口名称:" + it.resturl;
- }
- if (!string.IsNullOrEmpty(it.caseserial))
- {
- error += " 推送工单号:" + it.caseserial;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送标识:" + it.errorid;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送失败原因:" + it.errormsg;
- }
- }
- }
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "工单回访记录", error, "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
- return Error("推送失败" + error);
- }
- }
- catch
- {
- return Error(responseString);
- }
- }
- else
- return Error("工单未回访");
- }
- #endregion
- #region 服务工单材料
- public class submit_case_material_info
- {
- public List<material_info> jsonList { set; get; }
- }
- public class material_info
- {
- /// <summary>
- /// "工单编号",
- /// </summary>
- public string CASE_SERIAL { set; get; }
- /// <summary>
- /// "行政区划代码",
- /// </summary>
- public string AREA_CODE { set; get; }
- ///<summary>
- /// 附件唯一标识
- /// </summary>
- public string MATERIAL_ID { set; get; }
- /// <summary>
- /// 材料名称
- /// </summary>
- public string MATERIAL_NAME { set; get; }
- /// <summary>
- /// 材料文件类型
- /// </summary>
- public string MATERIAL_FILE_TYPE { set; get; }
- /// <summary>
- /// 材料类别
- /// </summary>
- public string MATERIAL_TYPE { set; get; }
- /// <summary>
- /// 材料关联标识
- /// </summary>
- public string MATERIAL_CONTACTID { set; get; }
- /// <summary>
- /// 材料路径
- /// </summary>
- public string MATERAIL_URL { set; get; }
- }
- private BLL.T_Sys_SystemConfig configBll = new BLL.T_Sys_SystemConfig();
- /// <summary>
- /// 服务工单材料
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- public ActionResult case_material_info(string WorkOrderId, string file, int id, string type)
- {
- string ParamValue = "";
- var configfj = new BLL.T_Sys_SystemConfig().GetModelList(" F_ParamCode='FileUrlPath' ").FirstOrDefault();
- if (configfj != null)
- {
- ParamValue = configfj.F_ParamValue;
- }
- else
- {
- return Error("附件路径不存在");
- }
- string newwokrkorder = WorkOrderId;
- if (WorkOrderId.Contains("QT"))
- newwokrkorder = "WZ" + WorkOrderId.Substring(2, WorkOrderId.Length - 2);
- submit_case_material_info paras = new submit_case_material_info();
- paras.jsonList = new List<material_info>();
- material_info jsonList = new material_info();
- var Accessories = new BLL.T_Sys_Accessories().GetModelList("F_FileId in (" + file + ")");
- if (Accessories != null && Accessories.Count > 0)
- {
- foreach (var it in Accessories)
- {
-
- jsonList.CASE_SERIAL = newwokrkorder;
- jsonList.AREA_CODE = AREA_CODE;
- jsonList.MATERIAL_ID = it.F_FileId.ToString();
- jsonList.MATERIAL_NAME = it.F_FileName;
- jsonList.MATERIAL_FILE_TYPE = it.F_FileType;
- jsonList.MATERIAL_TYPE = type;
- jsonList.MATERIAL_CONTACTID = id.ToString();
- jsonList.MATERAIL_URL = ParamValue + it.F_FileUrl;
- paras.jsonList.Add(jsonList);
- }
- // string jsonParam = "paras=" + paras.ToJson();
- var responseString = HttpPost("http://59.207.107.18:5000/api/submit_case_material_info", paras.ToJson());
- Push jo = JsonConvert.DeserializeObject<Push>(responseString);
- if (jo.code == "1")
- {
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "服务工单材料", "", "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
- return Success("推送成功");
- }
- else
- {
- string error = "";
- if (jo.body.errorObjs != null && jo.body.errorObjs.Length > 0)
- {
- foreach (var iv in jo.body.errorObjs)
- {
- if (!string.IsNullOrEmpty(iv.resturl))
- {
- error += " 推送接口名称:" + iv.resturl;
- }
- if (!string.IsNullOrEmpty(iv.caseserial))
- {
- error += " 推送工单号:" + iv.caseserial;
- }
- if (!string.IsNullOrEmpty(iv.resturl))
- {
- error += " 推送标识:" + iv.errorid;
- }
- if (!string.IsNullOrEmpty(iv.resturl))
- {
- error += " 推送失败原因:" + iv.errormsg;
- }
- }
- }
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "服务工单材料", error, "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
- return Error("推送失败--" + error);
- }
- }
- else
- {
- return Error("附件不存在");
- }
- }
- #endregion
- #region 获取附件
- public class receive
- {
- public string ATTATH_STEP_ID { set; get; }
- }
- public class receive_material_infos
- {
- public string code { set; get; }
- public string message { set; get; }
- public List<bodys> body { set; get; }
- }
- public class bodys
- {
- public string ATTATH_TYPE { set; get; }
- public string ATTATH_NAME { set; get; }
- public string ATTATH_CONTENT { set; get; }
- }
- /// <summary>
- /// 获取附件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private string receive_info(string ids)
- {
- receive paras = new receive();
- paras.ATTATH_STEP_ID = ids;
- // values.Add("paras", paras);
- string fileid = "";
- //序列化参数
- var responseString = HttpPost("http://59.207.107.18:5000/api/receive_material_Info", paras.ToJson());
- receive_material_infos jo = JsonConvert.DeserializeObject<receive_material_infos>(responseString);
- if (jo.code == "1")
- {
- if (jo.body != null && jo.body.Count > 0)
- {
- List<Model.T_Sys_Accessories> acs = new List<Model.T_Sys_Accessories>();
- string path = "/Upload/ZhenWu/" + DateTime.Now.ToString("yyyy") + "/" + DateTime.Now.ToString("MM") + "/" + DateTime.Now.ToString("dd") + "/";
- foreach (var it in jo.body)
- {
- // byte[] data = Encoding.UTF8.GetBytes(it.ATTATH_CONTENT);
- FileUp fu = new FileUp();
- fu.ByteSaveFile(it.ATTATH_CONTENT, path, it.ATTATH_NAME);
- Model.T_Sys_Accessories model_T_Sys_Accessories = new Model.T_Sys_Accessories();
- model_T_Sys_Accessories.F_AddTime = DateTime.Now;//上传时间
- model_T_Sys_Accessories.F_FileName = it.ATTATH_NAME;//附件名称
- model_T_Sys_Accessories.F_FileType = System.IO.Path.GetExtension(it.ATTATH_TYPE);//附件类型
- model_T_Sys_Accessories.F_FileUrl = path + it.ATTATH_NAME;//附件地址
- //model_T_Sys_Accessories.F_Size = file.ContentLength;
- model_T_Sys_Accessories.F_UserCode = "省12345平台";//上传人
- int id = new BLL.T_Sys_Accessories().Add(model_T_Sys_Accessories);
- model_T_Sys_Accessories.F_FileId = id;
- if (string.IsNullOrEmpty(fileid))
- fileid = id.ToString();
- else
- fileid += "," + id.ToString();
- acs.Add(model_T_Sys_Accessories);
- }
- }
- }
- else
- {
- string error = "";
- error += " 获取附件失败:" + jo.message;
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "获取附件失败", error, "");
- object objres = DbHelperSQL.GetSingle(strSql);
- }
- WebClient web = new WebClient();
- web.Encoding = Encoding.UTF8;
- string Dataurl = web.DownloadString("http://172.16.1.5:8819/" + "Affairs/SetFileData" + "?ids=" + fileid);
- return fileid;
- }
- public ActionResult SetFileData(string ids)
- {
- DataTable dt = DbHelperSQL.Query("select * from T_Sys_Accessories WITH(NOLOCK) where F_FileId in (" + ids + ")").Tables[0];
- foreach (DataRow dr in dt.Rows)
- {
- string url = Upload("http://172.20.0.203:8888/" + dr["F_FileUrl"].ToString(), dr["F_FileName"].ToString(), "/" + dr["F_FileUrl"].ToString().Replace(dr["F_FileName"].ToString(), ""));
- if (url == "1")
- dr["F_FileUrl"] = "http://172.16.1.5:8819/" + dr["F_FileUrl"].ToString();
- else
- dr["F_FileUrl"] = url;
- }
- return Success("添加成功");
- }
- #endregion
- #region 电话服务记录
- public class submit_case_record
- {
- public List<record> jsonList { set; get; }
- }
- public class record
- {
- /// <summary>
- /// "工单编号",
- /// </summary>
- public string CASE_SERIAL { set; get; }
- /// <summary>
- /// "行政区划代码",
- /// </summary>
- public string AREA_CODE { set; get; }
- ///<summary>
- /// 录音唯一标识
- /// </summary>
- public string RECORD_ID { set; get; }
- /// <summary>
- /// 电话号码
- /// </summary>
- public string RECORD_PHONE { set; get; }
- /// <summary>
- /// 通话状态
- /// </summary>
- public string RECORD_STATUS { set; get; }
- /// <summary>
- /// 通话类型
- /// </summary>
- public string RECORD_TYPE { set; get; }
- /// <summary>
- /// 通话开始时间
- /// </summary>
- public string RECORD_STARTTIME { set; get; }
- /// <summary>
- /// 通话结束时间
- /// </summary>
- public string RECORD_ENDTIME { set; get; }
- /// <summary>
- /// 通话时长
- /// </summary>
- public int? RECORD_LENGTH { set; get; }
- /// <summary>
- /// 座席人员工号
- /// </summary>
- public string RECORD_LOGINID { set; get; }
- /// <summary>
- /// 录音路径
- /// </summary>
- public string RECORD_URL { set; get; }
- }
- /// <summary>
- /// 电话服务记录
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- public ActionResult case_record(string WorkOrderId)
- {
- var workorder = new BLL.T_Bus_WorkOrder().GetModel(WorkOrderId);
- var model = new BLL.T_Call_CallRecords().GetModelByCallId(workorder.F_CallId);
- if (model != null)
- {
- submit_case_record paras = new submit_case_record();
- paras.jsonList = new List<record>();
- record jsonList = new record();
- string newwokrkorder = WorkOrderId;
- if (WorkOrderId.Contains("QT"))
- newwokrkorder = "WZ" + WorkOrderId.Substring(2, WorkOrderId.Length - 2);
- jsonList.CASE_SERIAL = newwokrkorder;
- jsonList.AREA_CODE = AREA_CODE;
- jsonList.RECORD_ID = model.CallRecordsId.ToString();
- jsonList.RECORD_PHONE = model.CallNumber;
- if (model.TalkEndTime != null)
- jsonList.RECORD_STATUS = "30";
- else
- jsonList.RECORD_STATUS = "10";
- if (model.CallType == 0)
- jsonList.RECORD_TYPE = "10";
- else
- jsonList.RECORD_TYPE = "30";
- jsonList.RECORD_STARTTIME = model.TalkStartTime
- .Value.ToString("yyyy-MM-dd HH:mm:ss");
- if (model.TalkEndTime != null)
- jsonList.RECORD_ENDTIME = model.TalkEndTime
- .Value.ToString("yyyy-MM-dd HH:mm:ss");
- else
- jsonList.RECORD_ENDTIME = "";
- jsonList.RECORD_LENGTH = model.TalkLongTime;
- jsonList.RECORD_LOGINID = model.UserCode;
- var config = new BLL.T_Sys_SystemConfig().GetModelList(" F_ParamCode='PlayPath' ").FirstOrDefault();
- if (config != null && !string.IsNullOrEmpty(config.F_ParamValue) && model.FilePath != null)
- {
- var ym = config.F_ParamValue;
- if (ym.Substring(ym.Length - 1) == "/")
- {
- ym = ym.Substring(0, ym.Length - 1);
- }
- string lujing = model.FilePath.Substring(model.FilePath.IndexOf(':') + 1).Replace('\\', '/');
- string wlpath = ym + lujing;
- jsonList.RECORD_URL = wlpath;
- }
- paras.jsonList.Add(jsonList);
- //Dictionary<string, object> values = new Dictionary<string, object>();
- //values.Add("access_token", token);
- //values.Add("paras", paras);
- ////序列化参数
- //var jsonParam = JsonConvert.SerializeObject(values);
- var responseString = HttpPost("http://59.207.107.18:5000/api/submit_case_record", paras.ToJson());
- Push jo = JsonConvert.DeserializeObject<Push>(responseString);
- if (jo.code == "1")
- {
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "电话服务记录", "", "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
- return Success("推送成功");
- }
- else
- {
- string error = "";
- if (jo.body.errorObjs != null && jo.body.errorObjs.Length > 0)
- {
- foreach (var it in jo.body.errorObjs)
- {
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送接口名称:" + it.resturl;
- }
- if (!string.IsNullOrEmpty(it.caseserial))
- {
- error += " 推送工单号:" + it.caseserial;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送标识:" + it.errorid;
- }
- if (!string.IsNullOrEmpty(it.resturl))
- {
- error += " 推送失败原因:" + it.errormsg;
- }
- }
- }
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo.code, jo.message, "电话服务记录", error, "推送成功数:" + jo.body.successCount + " 推送总数:" + jo.body.totalCount);
- object objres = DbHelperSQL.GetSingle(strSql);
- return Error("推送失败" + error);
- }
- }
- else
- return Error("通话记录不存在");
- }
- #endregion
- #endregion
-
- private BLL.T_Bus_WorkOrder workorderBLL = new BLL.T_Bus_WorkOrder();
- private BLL.T_Bus_Operation operBLL = new BLL.T_Bus_Operation();
- private BLL.T_Sys_UserAccount userBLL = new BLL.T_Sys_UserAccount();
- private information.InternalMessagesController msg = new information.InternalMessagesController();
- private BLL.T_Cus_CustomerBase cusBLL = new BLL.T_Cus_CustomerBase();
- private BLL.T_Bus_AssignedInfo assignBLL = new BLL.T_Bus_AssignedInfo();
- private BLL.T_Sys_Affairs affairsBll = new BLL.T_Sys_Affairs();
- public class receive_case_sign
- {
- public string TROWGUID { set; get; }
- public string SIGN_NAME { set; get; }
- }
- /// <summary>
- /// 提交签收工单
- /// </summary>
- /// <param name="ids"></param>
- /// <returns></returns>
- [Authority]
- public ActionResult SubmitWorkOrder(string[] ids)
- {
- if (User.F_RoleCode == "ZXHWY" || User.F_RoleCode == "ZXBZ" || User.F_RoleCode == "GLY" || User.F_RoleCode == "ZXLD" || User.F_RoleCode == "DDZG" || User.F_RoleCode == "MTDD" || User.F_RoleCode == "DMTSH")
- {
- if (ids != null && ids.Length > 0)
- {
- foreach (string str in ids)
- {
- using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
- {
- Model.T_Bus_WorkOrder modelT_Bus_WorkOrder = workorderBLL.GetModel(str);
- if (modelT_Bus_WorkOrder != null)
- {
- var affairs = affairsBll.GetModel(modelT_Bus_WorkOrder.F_WorkOrderId);
- receive_case_sign paras = new receive_case_sign();
- paras.TROWGUID = affairs.TROWGUID;
- paras.SIGN_NAME = User.F_UserName;
- try
- {
- string jsonParam = "paras=" + paras.ToJson() + "&message=签收工单&url=http://59.207.107.18:5000/api/receive_case_sign&WorkOrderId=" + modelT_Bus_WorkOrder.F_WorkOrderId;
- var responseString = HttpMethods.HttpPost("http://172.20.0.203:8888/Affairs/receive_Push", jsonParam);
- bendiack jo = JsonConvert.DeserializeObject<bendiack>(responseString);
- if (jo.state != "success")
- {
- if (!jo.message.Contains("该任务单已签收"))
- return Error("签收失败");
- }
- }
- catch
- {
- }
- if (modelT_Bus_WorkOrder.F_WorkState == (int)EnumWorkState.neworder || modelT_Bus_WorkOrder.F_WorkState == (int)EnumWorkState.audit)
- {
- Dictionary<string, object> keyValuePairs = new Dictionary<string, object>();
- #region 保存工单信息
- keyValuePairs.Add("F_SubmitTime", DateTime.Now);
- // modelT_Bus_WorkOrder.F_SubmitTime = DateTime.Now;
- keyValuePairs.Add("F_WorkState", 1);
- modelT_Bus_WorkOrder.F_WorkState = (int)EnumWorkState.submit;//待交办
- bool n = workorderBLL.UpdateWorkOrder(modelT_Bus_WorkOrder.F_Id, keyValuePairs);
- #endregion
- #region 插入操作记录
- Model.T_Bus_Operation oper = new Model.T_Bus_Operation();
- oper.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
- oper.F_State = 1;
- string userinfo = User.depname + "(" + User.F_UserCode + ")";
- oper.F_Message = userinfo + " 提交并签收了工单";
- oper.F_CreateUser = User.F_UserCode;
- oper.F_CreateTime = DateTime.Now;
- oper.F_IsDelete = 0;
- operBLL.Add(oper);
- //推送消息表
- if (modelT_Bus_WorkOrder.F_WorkState == (int)EnumWorkState.submit)
- {
- var role = new BLL.T_Sys_RoleInfo().GetModelList(" (F_RoleCode='ZXLD' or F_RoleCode='ZXLDGLYGLY' or F_RoleCode='MTDD') ").Select(p => p.F_RoleId);
- var users = userBLL.GetModelList(" F_RoleId in (" + string.Join(",", role) + ") ");
- foreach (var u in users)
- {
- msg.AddInternalMessagesInfo("工单消息", oper.F_Message + ",工单编号:" + oper.F_WorkOrderId, u.F_UserCode, User.F_UserCode, (int)EnumSmsType.workorder);
- }
- }
- #endregion
- }
- }
- trans.Complete();
- }
- }
- return Success("操作成功");
- }
- else
- {
- return Error("操作失败");
- }
- }
- else
- {
- return Error("权限不足");
- }
- }
- public class bendiack
- {
- public string state;
- public string message;
- }
- public ActionResult receive_Push(string paras, string url, string message, string WorkOrderId = "")
- {
- // string jsonParam = "paras=" + paras;
- var responseString = HttpPost(url, paras);
- goback jo = JsonConvert.DeserializeObject<goback>(responseString);
- if (jo.code == "1")
- {
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", WorkOrderId, paras, DateTime.Now, jo.code, jo.message, message, "", "");
- object objres = DbHelperSQL.GetSingle(strSql);
- return Success("成功");
- }
- else
- {
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", WorkOrderId, paras, DateTime.Now, jo.code, jo.message, message, jo.message, "");
- object objres = DbHelperSQL.GetSingle(strSql);
- return Error(message + jo.message);
- }
- }
- public class receive_case_back
- {
- public string TROWGUID { set; get; }
- public string BACK_NAME { set; get; }
- public string BACK_TYPE { set; get; }
- public string BACK_REASON { set; get; }
- public string BACK_ATTATH_ID { set; get; }
- }
- /// <summary>
- /// 退回工单
- /// </summary>
- /// <returns></returns>
- [Authority]
- public ActionResult RebackWorkOrder()
- {
- if (User.F_RoleCode == "WLDW" || User.F_RoleCode == "ZXLD" || User.F_RoleCode == "GLY" || User.F_RoleCode == "DDZG")
- {
- string workorderid = RequestString.GetFormString("workorderid");
- string backreason = RequestString.GetFormString("backreason");
- string BACK_TYPE = RequestString.GetFormString("type");
- string file = RequestString.GetFormString("file");
- Model.T_Bus_WorkOrder modelT_Bus_WorkOrder = workorderBLL.GetModel(workorderid);
- if (modelT_Bus_WorkOrder != null)
- {
- using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
- {
- #region 保存工单信息
- //modelT_Bus_WorkOrder.F_WorkState = 3;//退回审核中
- Dictionary<string, object> keyValuePairs = new Dictionary<string, object>();
- keyValuePairs.Add("F_WorkState", "9");
- keyValuePairs.Add("F_DealDeptId", User.F_DeptId);
- keyValuePairs.Add("F_DealUser", User.F_UserCode);
- keyValuePairs.Add("F_DealTime", DateTime.Now);
- keyValuePairs.Add("F_IsClosed", 1);
- keyValuePairs.Add("F_CloseUser", User.F_UserCode);
- keyValuePairs.Add("F_Result", backreason);
- keyValuePairs.Add("F_CloseTime", DateTime.Now);
- workorderBLL.UpdateWorkOrder(modelT_Bus_WorkOrder.F_Id, keyValuePairs);
- #endregion
- receive_case_back paras = new receive_case_back();
- var affairs = affairsBll.GetModel(modelT_Bus_WorkOrder.F_WorkOrderId);
- paras.TROWGUID = affairs.TROWGUID;
- paras.BACK_NAME = User.F_UserName;
- paras.BACK_TYPE = BACK_TYPE;
- paras.BACK_REASON = backreason;
- paras.BACK_ATTATH_ID = file;
- try
- {
- string jsonParam = "paras=" + paras.ToJson() + "&message=退回工单&url=http://59.207.107.18:5000/api/receive_case_back&WorkOrderId=" + modelT_Bus_WorkOrder.F_WorkOrderId;
- var responseString = HttpMethods.HttpPost("http://172.20.0.203:8888/Affairs/receive_Push", jsonParam);
- bendiack jo = JsonConvert.DeserializeObject<bendiack>(responseString);
- if (jo.state != "success")
- return Error("退回失败");
- }
- catch (Exception e)
- {
- return Error(e.ToString());
- }
- Model.T_Bus_Operation oper1 = new Model.T_Bus_Operation();
- oper1.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
- oper1.F_State = modelT_Bus_WorkOrder.F_WorkState;
- string userinfo = User.F_UserName + "(" + User.F_UserCode + ")";
- oper1.F_Message = userinfo + " 退回了省平台工单";
- oper1.F_CreateUser = User.F_UserCode;
- oper1.F_CreateTime = DateTime.Now;
- oper1.F_IsDelete = 0;
- operBLL.Add(oper1);
- trans.Complete();
- return Success("操作成功");
- }
- }
- else
- {
- return Error("退回失败");
- }
- }
- else
- {
- return Error("权限不足");
- }
- }
- public class receive_case_finish
- {
- public string TROWGUID { set; get; }
- public string FINISH_NAME { set; get; }
- public string FINISH_RESULT { set; get; }
- public string FINISH_ATTATH_ID { set; get; }
- }
- /// <summary>
- /// 反馈结案工单
- /// </summary>
- /// <returns></returns>
- [Authority]
- public ActionResult ForceFinishWorkOrder()
- {
- if (User.F_RoleCode == "ZXLD" || User.F_RoleCode == "ZXHWY" || User.F_RoleCode == "ZXLD" || User.F_RoleCode == "ZXLDGLYGLY" || User.F_RoleCode == "GLY" || User.F_RoleCode == "DDZG" || User.F_RoleCode == "MTDD" || User.F_RoleCode == "DMTSH" || User.F_RoleCode == "DBZY")
- {
- string workorderid = RequestString.GetFormString("workorderid");
- string result = RequestString.GetFormString("result");//处理结果
- string finalopinion = RequestString.GetFormString("finalopinion");//结案意见
- int issatisfie = RequestString.GetInt("issatisfie", 1);//0不满意 1满意
- int isnotice = RequestString.GetInt("isnotice", 0);//0不通告 1通告
- int issms = RequestString.GetInt("issms", 0);
- string deptids = RequestString.GetFormString("deptids");//通告单位
- string noticereson = RequestString.GetFormString("noticereson");//通告其他原因
- int noticeid = RequestString.GetInt("noticeid", 0);//通告选项id
- string noticeinfo = RequestString.GetFormString("noticeinfo");//通告内容
- int isstandard = RequestString.GetInt("isstandard", 0);//是否规范,0是,1否
- string standardids = RequestString.GetFormString("standardids");//不规范项,记录多项ID
- Model.T_Bus_Feedback modelT_Bus_Feedback = new BLL.T_Bus_Feedback().GetNewModelByWorkOrderID(workorderid);
- Model.T_Bus_WorkOrder modelT_Bus_WorkOrder = workorderBLL.GetModel(workorderid);
- Model.T_Bus_AssignedInfo modelT_Bus_AssignedInfo = assignBLL.GetNewModelByWorkOrderID(workorderid);
- if (modelT_Bus_WorkOrder != null)
- {
- if (User.F_RoleCode != "GLY" && User.F_RoleCode != "DDZG"
- && User.F_RoleCode != "ZXHWY" && User.F_RoleCode != "ZXLD" && User.F_RoleCode != "YSZY" && User.F_RoleCode != "MTDD" && User.F_RoleCode != "DBZY" && User.F_RoleCode != "DMTSH")
- {
- if (modelT_Bus_AssignedInfo != null && modelT_Bus_AssignedInfo.F_CreateUser != User.F_UserCode)
- {
- return Error("操作失败");
- }
- }
- using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
- {
- Dictionary<string, object> keyValuePairs = new Dictionary<string, object>();
- #region 修改工单记录
- if (!string.IsNullOrEmpty(result))
- {
- keyValuePairs.Add("F_Result", result);
- modelT_Bus_WorkOrder.F_Result = result;
- }
- else if (string.IsNullOrEmpty(modelT_Bus_WorkOrder.F_Result))
- {
- if (!string.IsNullOrEmpty(finalopinion))
- {
- keyValuePairs.Add("F_Result", finalopinion);
- modelT_Bus_WorkOrder.F_Result = finalopinion;
- }
- }
- if (modelT_Bus_WorkOrder.F_DealTime == null)
- keyValuePairs.Add("F_DealTime", DateTime.Now);
- var affairs = affairsBll.GetModel(modelT_Bus_WorkOrder.F_WorkOrderId);
- keyValuePairs.Add("F_WorkState", (int)EnumWorkState.finish);
- modelT_Bus_WorkOrder.F_WorkState = (int)EnumWorkState.finish;
- keyValuePairs.Add("F_IsSatisfie", issatisfie);
- keyValuePairs.Add("F_IsClosed", 1);
- keyValuePairs.Add("F_CloseUser", User.F_UserCode);
- keyValuePairs.Add("F_CloseTime", DateTime.Now);
- if (modelT_Bus_Feedback != null && !string.IsNullOrEmpty(modelT_Bus_Feedback.F_File)
- && modelT_Bus_Feedback.F_Type != 3)
- affairs.FILES = modelT_Bus_Feedback.F_File;
- if (!string.IsNullOrEmpty(finalopinion))
- {
- keyValuePairs.Add("F_FinalOpinion", finalopinion);
- modelT_Bus_WorkOrder.F_FinalOpinion = finalopinion;
- }
- keyValuePairs.Add("F_IsStandard", isstandard);
- keyValuePairs.Add("F_StandardIDS", standardids);
- if (isnotice == 1)
- {
- Model.T_Bus_NoticeCriticism modelT_Bus_NoticeCriticism = new Model.T_Bus_NoticeCriticism();
- modelT_Bus_NoticeCriticism.F_DeptIds = deptids;
- modelT_Bus_NoticeCriticism.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
- modelT_Bus_NoticeCriticism.F_Content = noticereson;
- modelT_Bus_NoticeCriticism.F_State = 1;
- modelT_Bus_NoticeCriticism.F_IsDelete = 0;
- modelT_Bus_NoticeCriticism.F_CreateTime = DateTime.Now;
- modelT_Bus_NoticeCriticism.F_CreateUser = User.F_UserCode;
- modelT_Bus_NoticeCriticism.F_NoticeID = noticeid;
- modelT_Bus_NoticeCriticism.F_NoticeInfo = noticeinfo;
- new BLL.T_Bus_NoticeCriticism().Add(modelT_Bus_NoticeCriticism);
- keyValuePairs.Add("F_IsNotice", 1);
- keyValuePairs.Add("F_NoticeDeptIds", deptids);
- if (modelT_Bus_AssignedInfo != null)
- {
- modelT_Bus_AssignedInfo.F_IsNotice = 1;
- modelT_Bus_AssignedInfo.F_NoticeUser = User.F_UserCode;
- modelT_Bus_AssignedInfo.F_NoticeTime = DateTime.Now;
- }
- }
- if (modelT_Bus_AssignedInfo != null)
- {
- modelT_Bus_AssignedInfo.F_IsStandard = isstandard;
- modelT_Bus_AssignedInfo.F_StandardIDS = standardids;
- assignBLL.Update(modelT_Bus_AssignedInfo);
- }
- workorderBLL.UpdateWorkOrder(modelT_Bus_WorkOrder.F_Id, keyValuePairs);
- #endregion
- #region 插入操作记录
- Model.T_Bus_Operation oper = new Model.T_Bus_Operation();
- oper.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
- oper.F_State = modelT_Bus_WorkOrder.F_WorkState;
- string userinfo = User.depname + "(" + User.F_UserCode + ")";
- oper.F_Message = userinfo + " 结案了工单,结果:" + (issatisfie == 1 ? "满意" : "不满意");
- if (isnotice == 1)
- {
- string sql = "select dbo.GetDeptNames('" + deptids + "')";
- oper.F_Message = oper.F_Message + ",并通告了交办单位:" + DbHelperSQL.GetSingle(sql);
- }
- if (isstandard == 1)
- {
- oper.F_Message = oper.F_Message + ",办理结果出现不规范情况,请及时查看";
- }
- oper.F_CreateUser = User.F_UserCode;
- oper.F_CreateTime = DateTime.Now;
- oper.F_IsDelete = 0;
- operBLL.Add(oper);
- int type = 0;
- receive_case_finish paras = new receive_case_finish();
- paras.TROWGUID = affairs.TROWGUID;
- paras.FINISH_NAME = User.F_UserName;
- paras.FINISH_RESULT = modelT_Bus_WorkOrder.F_Result;
- paras.FINISH_ATTATH_ID = affairs.FILES;
- try
- {
- string jsonParam = "paras=" + paras.ToJson() + "&message=反馈工单&url=http://59.207.107.18:5000/api/receive_case_finish&WorkOrderId=" + modelT_Bus_WorkOrder.F_WorkOrderId;
- var responseString = HttpMethods.HttpPost("http://172.20.0.203:8888/Affairs/receive_Push", jsonParam);
- bendiack jo = JsonConvert.DeserializeObject<bendiack>(responseString);
- if (jo.state != "success")
- return Error("反馈失败");
- }
- catch
- {
- }
- #region 插入操作记录
- Model.T_Bus_Operation oper1 = new Model.T_Bus_Operation();
- oper1.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
- oper1.F_State = modelT_Bus_WorkOrder.F_WorkState;
- string message = "";
- if (!string.IsNullOrEmpty(modelT_Bus_WorkOrder.F_Result))
- {
- message = ",反馈内容:" + modelT_Bus_WorkOrder.F_Result;
- }
- oper1.F_Message = userinfo + " 反馈了省政务平台工单" + message;
- oper1.F_CreateUser = User.F_UserCode;
- oper1.F_CreateTime = DateTime.Now;
- oper1.F_IsDelete = 0;
- operBLL.Add(oper1);
- #endregion
- #endregion
- trans.Complete();
- }
- return Success("操作成功");
- }
- else
- {
- return Error("操作失败");
- }
- }
- else
- {
- return Error("权限不足");
- }
- }
- public class receive_case_delay_apply
- {/// <summary>
- /// 任务单唯一标识
- /// </summary>
- public string TROWGUID { set; get; }
- /// <summary>
- /// 申请人姓名
- /// </summary>
- public string APPLY_NAME { set; get; }
- /// <summary>
- /// 申请延期天数
- /// </summary>
- public int APPLY_DELAYNUM { set; get; }
- /// <summary>
- /// 申请延期原因
- /// </summary>
- public string APPLY_REASON { set; get; }
- /// <summary>
- /// 申请延期类型
- /// 代码项名称
- /// 办结延时 10
- /// 退回延时 20
- /// </summary>
- public string APPLY_TYPE { set; get; }
- }
-
- /// <summary>
- /// 申请延时
- /// </summary>
- /// <returns></returns>
- [Authority]
- public ActionResult DelayWorkOrder()
- {
- if (User.F_RoleCode == "WLDW" || User.F_RoleCode == "ZXLD" || User.F_RoleCode == "GLY" || User.F_RoleCode == "DDZG")
- {
- string workorderid = RequestString.GetFormString("workorderid");
- int newlimittime = RequestString.GetInt("newlimittime", 0);
- string reason = RequestString.GetFormString("reason");
- // string files = RequestString.GetFormString("files");
- int type = RequestString.GetInt("type", 0);
- Model.T_Bus_WorkOrder modelT_Bus_WorkOrder = workorderBLL.GetModel(workorderid);
- if (type == 0)
- {
- var Delay = new BLL.T_Bus_DelayTime().GetModelList("F_WorkOrderId='" + modelT_Bus_WorkOrder.F_WorkOrderId + "' and F_AssignedId=-1 and F_IsAudit=0");
- if (Delay != null && Delay.Count > 0)
- return Error("已申请延时,请等待审核结束");
- }
- else
- {
- var Delay = new BLL.T_Bus_DelayTime().GetModelList("F_WorkOrderId='" + modelT_Bus_WorkOrder.F_WorkOrderId + "' and F_AssignedId=0 and F_IsAudit=0");
- if (Delay != null && Delay.Count > 0)
- return Error("已申请延时,请等待审核结束");
- }
- if (modelT_Bus_WorkOrder != null)
- {
- using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
- {
- #region 保存工单信息
- #endregion
- #region 插入申请延时信息
- var affairs = affairsBll.GetModel(modelT_Bus_WorkOrder.F_WorkOrderId);
- Model.T_Bus_DelayTime delay = new Model.T_Bus_DelayTime();
- delay.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
- if (type == 0)
- {
- delay.F_AssignedId = -1;
- delay.F_State = modelT_Bus_WorkOrder.F_WorkState;
- delay.F_OldTime = DateTime.Parse(affairs.TFDBACKTIME_BF);
- }
- else
- {
- delay.F_AssignedId = 0;
- delay.F_OldTime = DateTime.Parse(affairs.TBACKTIME_BF);
- }
- delay.F_NewTime = delay.F_OldTime.Value.AddDays(newlimittime);
- delay.F_Reason = reason;
- //delay.F_State = 1;
- delay.F_IsAudit = 0;
- delay.F_IsDelete = 0;
- // delay.F_AssignedId = "";
- delay.F_CreateUser = User.F_UserCode;
- delay.F_CreateTime = DateTime.Now;
- // delay.F_File = files;
- new BLL.T_Bus_DelayTime().Add(delay);
- #endregion
- #region 插入操作记录
- Model.T_Bus_Operation oper = new Model.T_Bus_Operation();
- oper.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
- // oper.F_AssignedId = modelT_Bus_AssignedInfo.F_Id;
- oper.F_State = modelT_Bus_WorkOrder.F_WorkState;
- string userinfo = User.depname + "(" + User.F_UserCode + ")";
- oper.F_Message = userinfo + " 申请了延时处理";
- oper.F_CreateUser = User.F_UserCode;
- oper.F_CreateTime = DateTime.Now;
- oper.F_IsDelete = 0;
- operBLL.Add(oper);
- receive_case_delay_apply paras = new receive_case_delay_apply();
- paras.TROWGUID = affairs.TROWGUID;
- paras.APPLY_NAME = User.F_UserName;
- paras.APPLY_DELAYNUM = newlimittime;
- if (type == 0)
- paras.APPLY_TYPE = "10";
- else
- paras.APPLY_TYPE = "20";
- paras.APPLY_REASON = reason;
- try
- {
- string jsonParam = "paras=" + paras.ToJson() + "&message=申请延时&url=http://59.207.107.18:5000/api/receive_case_delay_apply&WorkOrderId=" + modelT_Bus_WorkOrder.F_WorkOrderId;
- var responseString = HttpMethods.HttpPost("http://172.20.0.203:8888/Affairs/receive_Push", jsonParam);
- bendiack jo = JsonConvert.DeserializeObject<bendiack>(responseString);
- if (jo.state != "success")
- return Error("申请延时失败");
- }
- catch
- {
- }
- #endregion
- trans.Complete();
- }
- return Success("操作成功");
- }
- else
- {
- return Error("操作失败");
- }
- }
- else
- {
- return Error("权限不足");
- }
- }
- public class case_delay_audit
- {
- /// <summary>
- /// 任务单唯一标识
- /// </summary>
- public string TROWGUID { set; get; }
- /// <summary>
- /// 审核人工号
- /// </summary>
- public string AUDIT_NAME { set; get; }
- /// <summary>
- /// 审核结果
- /// </summary>
- public string AUDIT_RESULT { set; get; }
- /// <summary>
- /// 审核意见
- /// </summary>
- public string AUDIT_OPINION { set; get; }
- }
-
-
- public class jcsupervise_finish
- {
- public string JC_SERIALNUM { set; get; }
- public string JC_NAME { set; get; }
- public string JC_OPINION { set; get; }
- }
- /// <summary>
- /// 监察督办反馈接口
- /// </summary>
- /// <returns></returns>
- [Authority]
- public ActionResult receive_jcsupervise_finish()
- {
- int id = RequestString.GetInt("id", 0);
- string opinion = RequestString.GetFormString("opinion");
- var model = new BLL.T_Bus_Supervision().GetModel(id);
- int type = RequestString.GetInt("type", 0);
- if (model != null)
- {
- using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
- {
- #region 保存工单信息
- #endregion
- #region
- model.F_DealTime = DateTime.Now;
- model.F_DealUser = User.F_UserCode;
- model.F_Result = opinion;
- model.F_State = 1;
- #endregion
- #region 插入操作记录
- Model.T_Bus_Operation oper = new Model.T_Bus_Operation();
- oper.F_WorkOrderId = model.F_WorkOrderId;
- new BLL.T_Bus_Supervision().Update(model);
- // oper.F_AssignedId = modelT_Bus_AssignedInfo.F_Id;
- string userinfo = User.depname + "(" + User.F_UserCode + ")";
- oper.F_Message = userinfo + " 监察督办反馈了工单,反馈意见:" + opinion;
- oper.F_CreateUser = User.F_UserCode;
- oper.F_CreateTime = DateTime.Now;
- oper.F_IsDelete = 0;
- operBLL.Add(oper);
- jcsupervise_finish paras = new jcsupervise_finish();
- paras.JC_SERIALNUM = model.F_Code;
- paras.JC_NAME = User.F_UserName;
- paras.JC_OPINION = opinion;
- try
- {
- string jsonParam = "paras=" + paras.ToJson() + "&message=监察督办反馈&url=http://59.207.107.18:5000/api/receive_jcsupervise_finish&WorkOrderId=" + model.F_WorkOrderId;
- var responseString = HttpMethods.HttpPost("http://172.20.0.203:8888/Affairs/receive_Push", jsonParam);
- bendiack jo = JsonConvert.DeserializeObject<bendiack>(responseString);
- if (jo.state != "success")
- return Error("监察督办反馈成功");
- }
- catch
- {
- return Error("监察督办反馈失败");
- }
- #endregion
- trans.Complete();
- return Success("操作成功");
- }
- }
- else
- {
- return Error("操作失败");
- }
- }
- /// <summary>
- /// 督查督办派发接口
- /// </summary>
- /// <returns></returns>
- [Authority]
- public ActionResult dcsupervise_send(string workorderid, string Code, string Situation
- , string content, string Opinion)
- {
- Model.T_Bus_WorkOrder modelT_Bus_WorkOrder = workorderBLL.GetModel(workorderid);
- using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
- {
- Model.T_Bus_Supervision model = new Model.T_Bus_Supervision();
- model.F_Code = Code;
- model.F_UserCode = User.F_UserCode;
- model.F_SERIALNUM = modelT_Bus_WorkOrder.F_WorkOrderId;
- model.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
- model.F_Situation = Situation;
- model.F_Content = content;
- model.F_Opinion = Opinion;
- model.F_State = 0;
- model.F_Type = 1;
- model.F_CreateTime = DateTime.Now;
- model.F_LimitTime = DateTime.Now.AddDays(5);
- string des = "";
- if (!string.IsNullOrWhiteSpace(model.F_Opinion))
- {
- des = ",督察内容:" + model.F_Opinion;
- }
- model.F_Type = 1;
- model.F_IsDelete = 0;
- int n = new BLL.T_Bus_Supervision().Add(model);
- if (n > 0)
- {
- Model.T_Bus_Operation oper = new Model.T_Bus_Operation();
- oper.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
- oper.F_State = modelT_Bus_WorkOrder.F_WorkState;
- oper.F_Message = "省平台督查督办派发了工单" + des;
- oper.F_CreateUser = User.F_UserCode;
- oper.F_CreateTime = DateTime.Now;
- oper.F_IsDelete = 0;
- operBLL.Add(oper);
- var obj1 = new
- {
- code = "1",
- message = "推送成功"
- };
- trans.Complete();
- return Content(obj1.ToJson());
- }
- else
- {
- var obj1 = new
- {
- code = "1",
- message = "推送失败"
- };
- trans.Complete();
- return Content(obj1.ToJson());
- }
- }
- }
- /// <summary>
- /// 督查督办派发接口
- /// </summary>
- /// <returns></returns>
- //[Authority]
- public ActionResult receive_dcsupervise_send()
- {
- StreamReader reader = new StreamReader(System.Web.HttpContext.Current.Request.InputStream);
- var postString = reader.ReadToEnd();
- JObject paras = null;
- paras = (JObject)Newtonsoft.Json.JsonConvert.DeserializeObject(postString);
- var txnBodyCom = paras["paras"].ToString();
- var result = (JObject)Newtonsoft.Json.JsonConvert.DeserializeObject(txnBodyCom);
- if (result["DC_RELATION_SERIALNUM"] == null)
- {
- var obj = new
- {
- code = "0",
- message = "DC_RELATION_SERIALNUM不能为空"
- };
- return Content(obj.ToJson());
- }
- if (string.IsNullOrEmpty(result["DC_RELATION_SERIALNUM"].ToString()))
- {
- var obj = new
- {
- code = "0",
- message = "DC_RELATION_SERIALNUM不能为空"
- };
- return Content(obj.ToJson());
- }
- var affairs = affairsBll.GetModelList("CASE_SERIAL='" + result["DC_RELATION_SERIALNUM"].ToString() + "'");
- if (affairs != null && affairs.Count > 0)
- {
- Model.T_Bus_WorkOrder modelT_Bus_WorkOrder = workorderBLL.GetModel(affairs.FirstOrDefault().F_WorkOrderId);
- using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
- {
- Model.T_Bus_Supervision model = new Model.T_Bus_Supervision();
- model.F_Code = result["DC_SERIALNUM"] == null ? "" : result["DC_SERIALNUM"].ToString();
- model.F_UserCode = result["DC_NAME"] == null ? "" : result["DC_NAME"].ToString();
- model.F_SERIALNUM = result["DC_RELATION_SERIALNUM"] == null ? "" : result["DC_RELATION_SERIALNUM"].ToString();
- model.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
- model.F_Situation = result["DC_TYPE"] == null ? "" : result["DC_TYPE"].ToString();
- model.F_Content = result["DC_CONTENT"] == null ? "" : result["DC_CONTENT"].ToString();
- model.F_Opinion = result["DC_OPINION"] == null ? "" : result["DC_OPINION"].ToString();
- model.F_State = 0;
- model.F_Type = 1;
- model.F_CreateTime = DateTime.Now;
- if (result["DC_FINISHTIME_BF"] != null && !string.IsNullOrEmpty(result["DC_FINISHTIME_BF"].ToString()))
- model.F_LimitTime = DateTime.Parse(result["DC_FINISHTIME_BF"].ToString());
- if (result["DC_ATTATH_ID"] != null && !string.IsNullOrEmpty(result["DC_ATTATH_ID"].ToString()))
- {
- model.F_File = receive_info(result["DC_ATTATH_ID"].ToString());
- }
- string des = "";
- if (!string.IsNullOrWhiteSpace(model.F_Opinion))
- {
- des = ",督察内容:" + model.F_Opinion;
- }
- model.F_Type = 1;
- model.F_IsDelete = 0;
- int n = new BLL.T_Bus_Supervision().Add(model);
- if (n > 0)
- {
- Model.T_Bus_Operation oper = new Model.T_Bus_Operation();
- oper.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
- oper.F_State = modelT_Bus_WorkOrder.F_WorkState;
- oper.F_Message = "省平台督查督办派发了工单" + des;
- oper.F_CreateUser = result["DC_NAME"] == null ? "" : result["DC_NAME"].ToString();
- oper.F_CreateTime = DateTime.Now;
- oper.F_IsDelete = 0;
- operBLL.Add(oper);
- var obj1 = new
- {
- code = "1",
- message = "推送成功"
- };
- trans.Complete();
- return Content(obj1.ToJson());
- }
- else
- {
- var obj1 = new
- {
- code = "1",
- message = "推送失败"
- };
- trans.Complete();
- return Content(obj1.ToJson());
- }
- }
- }
- else
- {
- var obj = new
- {
- code = "0",
- message = "推送失败"
- };
- return Content(obj.ToJson());
- }
- }
- public class dcsupervise_finish
- {
- public string DC_SERIALNUM { set; get; }
- public string DC_OPINION { set; get; }
- }
- /// <summary>
- /// 督察督办反馈接口
- /// </summary>
- /// <returns></returns>
- [Authority]
- public ActionResult receive_dcsupervise_finish()
- {
- int id = RequestString.GetInt("id", 0);
- string opinion = RequestString.GetFormString("opinion");
- var model = new BLL.T_Bus_Supervision().GetModel(id);
- int type = RequestString.GetInt("type", 0);
- if (model != null)
- {
- using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
- {
- #region 保存工单信息
- #endregion
- #region 插入
- model.F_DealTime = DateTime.Now;
- model.F_DealUser = User.F_UserCode;
- model.F_Result = opinion;
- model.F_State = 1;
- #endregion
- #region 插入操作记录
- Model.T_Bus_Operation oper = new Model.T_Bus_Operation();
- oper.F_WorkOrderId = model.F_WorkOrderId;
- new BLL.T_Bus_Supervision().Update(model);
- // oper.F_AssignedId = modelT_Bus_AssignedInfo.F_Id;
- string userinfo = User.depname + "(" + User.F_UserCode + ")";
- oper.F_Message = userinfo + " 督察督办反馈了工单,反馈意见:" + opinion;
- oper.F_CreateUser = User.F_UserCode;
- oper.F_CreateTime = DateTime.Now;
- oper.F_IsDelete = 0;
- operBLL.Add(oper);
- dcsupervise_finish paras = new dcsupervise_finish();
- paras.DC_SERIALNUM = model.F_Code;
- paras.DC_OPINION = opinion;
- try
- {
- string jsonParam = "paras=" + paras.ToJson() + "&message=督察督办反馈&url=http://59.207.107.18:5000/api/receive_dcsupervise_finish&WorkOrderId=" + model.F_WorkOrderId;
- var responseString = HttpMethods.HttpPost("http://172.20.0.203:8888/Affairs/receive_Push", jsonParam);
- bendiack jo = JsonConvert.DeserializeObject<bendiack>(responseString);
- if (jo.state != "success")
- return Error("督察督办反馈失败");
- }
- catch
- {
- return Error("督察督办反馈失败");
- }
- #endregion
- trans.Complete();
- return Success("操作成功");
- }
- }
- else
- {
- return Error("操作失败");
- }
- }
- /// <summary>
- ///催单短信
- /// </summary>
- /// <returns></returns>
- public ActionResult Reminders(string workorderid)
- {
- List<Model.T_Bus_WorkOrder> workorder = new List<Model.T_Bus_WorkOrder>();
- Model.T_Bus_WorkOrder modelT_Bus_WorkOrder = workorderBLL.GetModel(workorderid);
- Model.T_Bus_AssignedInfo modelT_Bus_AssignedInfo = assignBLL.GetNewModelByWorkOrderID(workorderid);
- if (modelT_Bus_AssignedInfo != null)
- {
- if (modelT_Bus_AssignedInfo.F_IsNext == 1 || modelT_Bus_AssignedInfo.F_IsNext == 2)
- {
- Model.T_Bus_AssignedInfo_Next modelT_Bus_AssignedInfo_Next = new BLL.T_Bus_AssignedInfo_Next().GetNewModelByWorkOrderID(workorderid);
- var user = new BLL.T_Sys_UserAccount().GetModelList(" F_DeptId = " + (modelT_Bus_AssignedInfo_Next.F_MainDeptId ?? 0) + " and F_DeleteFlag=0");
- if (user != null)
- {
- foreach (var iv in user)
- {
- msg.AddInternalMessagesInfo("催单消息", "您的工单" + workorderid + "收到催办,请及时处理!", iv.F_UserCode, "8000", (int)EnumSmsType.additional);
- if (!string.IsNullOrEmpty(iv.F_Mobile))
- {
- string count = "您的工单" + workorderid + "收到催办,请及时处理!";
- bool n = SMSController.AddSmS(0, count, workorderid, iv.F_Mobile, "2764366");
- }
- }
- }
- }
- else
- {
- var user = new BLL.T_Sys_UserAccount().GetModelList(" F_DeptId = " + (modelT_Bus_WorkOrder.F_MainDeptId ?? 0) + " and F_DeleteFlag=0");
- if (user != null)
- {
- foreach (var iv in user)
- {
- msg.AddInternalMessagesInfo("催单消息", "您的工单" + workorderid + "收到催办,请及时处理!", iv.F_UserCode, "8000", (int)EnumSmsType.additional);
- if (!string.IsNullOrEmpty(iv.F_Mobile))
- {
- string count = "您的工单" + workorderid + "收到催办,请及时处理!";
- bool n = SMSController.AddSmS(0, count, workorderid, iv.F_Mobile, "2764366");
- }
- }
- }
- }
- }
- return Success("催单成功");
- }
- public class case_c_info
- {
- public string TROWGUID { set; get; }
- }
- public class receive_case_c_info
- {
- public string code { set; get; }
- public string message { set; get; }
- public List<Process> body { set; get; }
- }
- public class Process
- {/// <summary>
- /// 序号
- /// </summary>
- public string PROCESS_INDEX { set; get; }
- /// <summary>
- /// 处理部门
- /// </summary>
- public string PROCESS_OUNAME { set; get; }
- /// <summary>
- /// 处理人员
- /// </summary>
- public string PROCESS_USERNAME { set; get; }
- /// <summary>
- /// 处理时间
- /// </summary>
- public string PROCESS_HANDLE_TIME { set; get; }
- /// <summary>
- /// 处理意见
- /// </summary>
- public string PROCESS_OPINION { set; get; }
- /// <summary>
- /// 操作
- /// </summary>
- public string PROCESS_OPERATE { set; get; }
- /// <summary>
- /// 步骤
- /// </summary>
- public string PROCESS_STEP { set; get; }
- /// <summary>
- /// 附件步骤id"
- /// </summary>
- public string PROCESS_ATTATH_ID { set; get; }
- }
- /// <summary>
- /// 获取省工单流程
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- public ActionResult GetProcess(string workorderid)
- {
- string fileid = "";
- var modelbusworkorder = affairsBll.GetModel(workorderid);
- case_c_info paras = new case_c_info();
- paras.TROWGUID = modelbusworkorder.TROWGUID;
- //序列化参数
- //Dictionary<string, object> values = new Dictionary<string, object>();
- //values.Add("access_token", token);
- //values.Add("paras", paras);
- //var jsonParam = JsonConvert.SerializeObject(values);
- var responseString = HttpPost("http://59.207.107.18:5000/api/receive_case_process_info", paras.ToJson());
- receive_case_c_info jo = JsonConvert.DeserializeObject<receive_case_c_info>(responseString);
- if (jo.code == "1")
- {
- return Success("获取成功", jo);
- }
- else
- {
- return Error("获取失败");
- }
- }
- /// <summary>
- /// 附件材料接口
- /// </summary>
- /// <returns></returns>
- //[Authority]
- public ActionResult receive_material_info()
- {
- StreamReader reader = new StreamReader(System.Web.HttpContext.Current.Request.InputStream);
- var postString = reader.ReadToEnd();
- JObject paras = null;
- paras = (JObject)Newtonsoft.Json.JsonConvert.DeserializeObject(postString);
- var txnBodyCom = paras["paras"].ToString();
- var result = (JObject)Newtonsoft.Json.JsonConvert.DeserializeObject(txnBodyCom);
- var body = GetFileData(result["ATTATH_STEP_ID"].ToString());
- if (body != null)
- {
- var obj = new
- {
- code = "1",
- message = "获取附件成功!",
- body = body
- };
- return Content(obj.ToJson());
- }
- else
- {
- var obj = new
- {
- code = "0",
- message = "获取附件失败!该附件不存在",
- body = ""
- };
- return Content(obj.ToJson());
- }
- }
- public class push_case
- {
- /// <summary>
- /// "工单编号",
- /// </summary>
- public string CASE_SERIAL { set; get; }
- /// <summary>
- /// "行政区划代码",
- /// </summary>
- public string AREA_CODE { set; get; }
- /// <summary>
- /// 诉求人姓名
- /// </summary>
- public string APPLICANT_NAME { set; get; }
- /// <summary>
- /// 诉求人性别
- /// </summary>
- public string APPLICANT_SEX { set; get; }
- /// <summary>
- /// 诉求人年龄
- /// </summary>
- public string APPLICANT_AGE { set; get; }
- /// <summary>
- /// 诉求人联系电话
- /// </summary>
- public string APPLICANT_NUMBER { set; get; }
- /// <summary>
- /// 诉求时间
- /// </summary>
- public string APPLICANT_TIME { set; get; }
- /// <summary>
- /// 服务工单标题
- /// </summary>
- public string CASE_TITLE { set; get; }
- /// <summary>
- /// 服务工单内容
- /// </summary>
- public string CASE_CONTENT { set; get; }
- /// <summary>
- /// 诉求渠道
- /// </summary>
- public string CASE_SOURCE { set; get; }
- /// <summary>
- /// 诉求类型
- /// </summary>
- public string CASE_TYPE { set; get; }
- /// <summary>
- /// 诉求归口
- /// </summary>
- public string CASE_ACCORD { set; get; }
- /// <summary>
- /// 诉求人信息是否公开
- /// </summary>
- public string CASE_ISPUBLIC { set; get; }
- /// <summary>
- /// 紧急程度
- /// </summary>
- public string CASE_ISURGENT { set; get; }
- /// <summary>
- /// 经纬度
- /// </summary>
- public string CASE_LNGLAT { set; get; }
- /// <summary>
- /// 诉求情感
- /// </summary>
- public string CASE_EMOTION { set; get; }
- /// <summary>
- /// 诉求详细地址
- /// </summary>
- public string CASE_ADDRESS { set; get; }
- /// <summary>
- /// 推送意见
- /// </summary>
- public string SEND_CONTENT { set; get; }
- /// <summary>
- /// 工单登记附件id
- /// </summary>
- public string CASE_ATTATH_ID { set; get; }
- }
- /// <summary>
- /// </summary>
- /// 服务工单上报接口
- /// <param name="sender"></param>
- /// <param name="e"></param>
- [Authority]
- public ActionResult PhshWorkOrder(string workorderid, string content, int limittime = 7)
- {
- var model = workorderBLL.GetModel(workorderid);
- if (model != null)
- {
- push_case paras = new push_case();
- string newwokrkorder = workorderid;
- if (model.F_WorkOrderId.Contains("QT"))
- newwokrkorder = "WZ" + workorderid.Substring(2, workorderid.Length - 2);
-
- paras.CASE_SERIAL = newwokrkorder;
- paras.AREA_CODE = AREA_CODE;
- if (string.IsNullOrEmpty(model.F_CusName))
- paras.APPLICANT_NAME = "匿名";
- else
- paras.APPLICANT_NAME = model.F_CusName;
- if (model.F_CusSex == "0")
- paras.APPLICANT_SEX = "1";
- else if (model.F_CusSex == "1")
- paras.APPLICANT_SEX = "2";
- else
- paras.APPLICANT_SEX = "3";
- paras.APPLICANT_AGE = "8";//没有
- paras.APPLICANT_NUMBER = model.F_CusPhone;
- paras.APPLICANT_TIME = model.F_CreateTime.Value.ToString("yyyy-MM-dd HH:mm:ss");//没有
- paras.CASE_TITLE = model.F_ComTitle;
- paras.CASE_CONTENT = model.F_ComContent;
- paras.CASE_SOURCE = model.F_WorkOrderId.Substring(0, 2);
- if (model.F_InfoType == 9)//咨询
- paras.CASE_TYPE = "10";
- else if (model.F_InfoType == 12)//建议
- paras.CASE_TYPE = "15";
- else if (model.F_InfoType == 11)//投诉
- paras.CASE_TYPE = "20";
- else if (model.F_InfoType == 10)//求助
- paras.CASE_TYPE = "30";
- else if (model.F_InfoType == 13)//表扬
- paras.CASE_TYPE = "35";
- else
- paras.CASE_TYPE = "40";//其他
- paras.CASE_ACCORD = DbHelperSQL.GetSingle(" select dbo.GetDicRemark('" + model.F_Key + "')").ToString();
- paras.CASE_ISPUBLIC = model.F_IsProtect.ToString();
- if (model.F_IsResult == 0)
- paras.CASE_ISPUBLIC = "1";
- else
- paras.CASE_ISPUBLIC = "0";
- if (model.F_Level == 2)
- {
- paras.CASE_ISURGENT = "20";
- }
- else
- {
- paras.CASE_ISURGENT = "30";
- }
- paras.CASE_LNGLAT = model.F_Latitude + "," + model.F_Longitude;
- paras.CASE_EMOTION = "70";
- paras.CASE_ADDRESS = model.F_SourceAddress;
- paras.SEND_CONTENT = content;
- paras.CASE_ATTATH_ID = model.F_File;
- try
- {
- string jsonParam = "paras=" + paras.ToJson() + "&message=服务工单上报接口&url=http://59.207.107.18:5000/api/push_case_info&WorkOrderId=" + model.F_WorkOrderId;
- var responseString = HttpMethods.HttpPost("http://172.20.0.203:8888/Affairs/receive_Push", jsonParam);
- bendiack jo = JsonConvert.DeserializeObject<bendiack>(responseString);
- var workoder = DbHelperSQL.GetSingle(" select top 1 F_NewWorkOrder from T_Bus_Mapping where F_OldWorkOrder='" + workorderid + "'and F_Type=1 order by F_CreateTime desc ");
- if (workoder == null)
- {
- string Mapping = string.Format(@"INSERT INTO T_Bus_Mapping ( [F_OldWorkOrder], [F_NewWorkOrder], [F_CreateTime], [F_Type])
- values ('{0}','{1}','{2}','{3}') ;select @@IDENTITY ", workorderid, newwokrkorder, DateTime.Now, 1);
- object Mappings = DbHelperSQL.GetSingle(Mapping);
- ;
- }
- if (jo.state != "success")
- return Error("上报失败");
- }
- catch
- {
- return Error("上报失败");
- }
- string resdatetime = "";
- if (limittime > 0)
- {
- string resdate = DateTime.Now.Date.ToString("yyyy-MM-dd");
- DataTable dt = DbHelperSQL.Query("select top " + limittime + " F_OffDate from T_Sys_WorkOFFDays with(nolock) where F_OffState = 1 and F_OffDate>'" + resdate + "' order by F_OffDate").Tables[0];
- resdatetime = dt.Rows[dt.Rows.Count - 1]["F_OffDate"].ToString();
- }
- resdatetime = Convert.ToDateTime(resdatetime).ToString("yyyy-MM-dd") + " 23:59:59 ";
- Model.T_Bus_AssignedInfo modelT_Bus_AssignedInfo = new Model.T_Bus_AssignedInfo();
- modelT_Bus_AssignedInfo.F_WorkOrderId = model.F_WorkOrderId;
- modelT_Bus_AssignedInfo.F_LimitTime = Convert.ToDateTime(resdatetime);
- modelT_Bus_AssignedInfo.F_MainDeptId = 633;
- modelT_Bus_AssignedInfo.F_OtherDeptIds = "";//协办单位id
- modelT_Bus_AssignedInfo.F_AssignedOpinion = content;//交办意见
- modelT_Bus_AssignedInfo.F_State = 1;//0草稿 1正式
- modelT_Bus_AssignedInfo.F_CreateUser = "省12345平台";
- modelT_Bus_AssignedInfo.F_CreateTime = DateTime.Now;
- modelT_Bus_AssignedInfo.F_IsDelete = 0;
- modelT_Bus_AssignedInfo.F_IsOverdue = 0;
- modelT_Bus_AssignedInfo.F_IsSure = 1;
- modelT_Bus_AssignedInfo.F_IsReload = 0;
- modelT_Bus_AssignedInfo.F_SureUser = "省12345平台";
- modelT_Bus_AssignedInfo.F_SureTime = DateTime.Now;
- modelT_Bus_AssignedInfo.F_IsNext = 0;
- modelT_Bus_AssignedInfo.F_TimeResp = assignBLL.GetRepTimly(DateTime.Now);//及时查收时间点
- modelT_Bus_AssignedInfo.F_Id = assignBLL.Add(modelT_Bus_AssignedInfo);
- Dictionary<string, object> keyValuePairs = new Dictionary<string, object>();
- keyValuePairs.Add("F_AssignUser", 8000);
- keyValuePairs.Add("F_AssignTime", DateTime.Now);
- keyValuePairs.Add("F_MainDeptId", 633);
- model.F_MainDeptId = 633;
- keyValuePairs.Add("F_WorkState", 4);
- model.F_WorkState = 4;
- workorderBLL.UpdateWorkOrder(model.F_Id, keyValuePairs);
- Model.T_Bus_Operation oper = new Model.T_Bus_Operation();
- oper.F_WorkOrderId = model.F_WorkOrderId;
- // oper.F_AssignedId = modelT_Bus_AssignedInfo.F_Id;
- string userinfo = User.F_UserName + "(" + User.F_UserCode + ")";
- oper.F_Message = userinfo + " 上报了工单,推送意见:" + content;
- oper.F_CreateUser = User.F_UserCode;
- oper.F_CreateTime = DateTime.Now;
- oper.F_IsDelete = 0;
- operBLL.Add(oper);
- return Success("推送成功");
- }
- else
- return Error("工单不存在");
- }
- /// <summary>
- /// 服务工单推送处理结果接口
- /// </summary>
- /// <returns></returns>
- // [Authority]
- public ActionResult push_case_finish()
- {
- StreamReader reader = new StreamReader(System.Web.HttpContext.Current.Request.InputStream);
- var postString = reader.ReadToEnd();
- JObject paras = null;
- paras = (JObject)Newtonsoft.Json.JsonConvert.DeserializeObject(postString);
- var txnBodyCom = paras["paras"].ToString();
- var result = (JObject)Newtonsoft.Json.JsonConvert.DeserializeObject(txnBodyCom);
- if (result["CASE_SERIAL"] == null)
- {
- var obj = new
- {
- code = "0",
- message = "CASE_SERIAL不能为空"
- };
- return Content(obj.ToJson());
- }
- if (string.IsNullOrEmpty(result["CASE_SERIAL"].ToString()))
- {
- var obj = new
- {
- code = "0",
- message = "CASE_SERIAL不能为空"
- };
- return Content(obj.ToJson());
- }
- // string workoderid = result["CASE_SERIAL"].ToString();
- var workoder = DbHelperSQL.GetSingle(" select top 1 F_OldWorkOrder from T_Bus_Mapping where F_NewWorkOrder='" + result["CASE_SERIAL"].ToString() + "'and F_Type=1 order by F_CreateTime desc ");
- string workoderid = result["CASE_SERIAL"].ToString();
- if (workoder != null)
- {
- workoderid = workoder.ToString()
- ;
- }
- Model.T_Bus_WorkOrder modelT_Bus_WorkOrder = workorderBLL.GetModel(workoderid);
- Model.T_Bus_AssignedInfo modelT_Bus_AssignedInfo = assignBLL.GetNewModelByWorkOrderID(workoderid);
- Model.T_Bus_Feedback modelT_Bus_Feedback = new Model.T_Bus_Feedback();
- if (modelT_Bus_WorkOrder != null && modelT_Bus_AssignedInfo != null)
- {
- using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
- {
- #region 插入反馈记录
- Dictionary<string, object> keyValuePairs = new Dictionary<string, object>();
- modelT_Bus_Feedback.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;//工单编号
- modelT_Bus_Feedback.F_AssignedId = modelT_Bus_AssignedInfo.F_Id;//交办id
- modelT_Bus_Feedback.F_AuditUser = "";
- modelT_Bus_Feedback.F_DealUser = result["FINISH_NAME"] == null ? "" : result["FINISH_NAME"].ToString();
- modelT_Bus_Feedback.F_Result = result["FINISH_OUNAME"] == null ? "" : result["FINISH_OUNAME"].ToString() + "于时间(" + DateTime.Now.ToString("yyyy年MM月dd日 HH时mm分ss秒") + ")回复:" + result["FINISH_RESULT"] == null ? "" : result["FINISH_RESULT"].ToString();
- #region 20200114新增字段 zhengbingbing
- modelT_Bus_Feedback.F_ProSituation = "";//处理情况/方案/进程
- modelT_Bus_Feedback.F_IsProtect = modelT_Bus_WorkOrder.F_IsProtect;
- modelT_Bus_Feedback.F_DealUserContact = "";//承办人联系方式
- DateTime contime = DateTime.Now;
- modelT_Bus_Feedback.F_IsProResult = 1;
- #endregion
- if (result["FINISH_ATTATH_ID"] != null && !string.IsNullOrEmpty(result["FINISH_ATTATH_ID"].ToString()))
- keyValuePairs.Add("F_File", receive_info(result["FINISH_ATTATH_ID"].ToString()));
- modelT_Bus_Feedback.F_IsAudit = 0;
- modelT_Bus_Feedback.F_IsDelete = 0;
- modelT_Bus_Feedback.F_CreateUser = result["FINISH_NAME"] == null ? "" : result["FINISH_NAME"].ToString();
- modelT_Bus_Feedback.F_CreateTime = DateTime.Now;//办理时间
- modelT_Bus_Feedback.F_CreateDeptId = 633;//办理部门
- modelT_Bus_Feedback.F_IsFeedEnd = 1;
- modelT_Bus_Feedback.F_State = 1;
- new BLL.T_Bus_Feedback().Add(modelT_Bus_Feedback);
- #endregion
- if (modelT_Bus_Feedback != null && modelT_Bus_Feedback.F_State == 1)
- {
- string typemsg = "办理";
- #region 保存工单信息
- keyValuePairs.Add("F_WorkState", 6);
- // modelT_Bus_WorkOrder.F_WorkState = (int)EnumWorkState.dealed;//待回访
- keyValuePairs.Add("F_Result", modelT_Bus_Feedback.F_Result);
- // modelT_Bus_WorkOrder.F_Result = modelT_Bus_Feedback.F_Result;
- keyValuePairs.Add("F_DealDeptId", 633);
- modelT_Bus_WorkOrder.F_DealDeptId = 633;
- keyValuePairs.Add("F_DealUser", result["FINISH_NAME"] == null ? "" : result["FINISH_NAME"].ToString());
- // modelT_Bus_WorkOrder.F_DealUser = result["FINISH_NAME"] == null ? "" : result["FINISH_NAME"].ToString();
- keyValuePairs.Add("F_DealTime", DateTime.Now);
- // modelT_Bus_WorkOrder.F_DealTime = DateTime.Now;
- keyValuePairs.Add("F_IsOverdue", 0);
- // modelT_Bus_WorkOrder.F_IsOverdue = 0;
- workorderBLL.UpdateWorkOrder(modelT_Bus_WorkOrder.F_Id, keyValuePairs);
- #endregion
- #region 保存交办信息
- modelT_Bus_AssignedInfo.F_FeedbackTime = DateTime.Now;
- modelT_Bus_AssignedInfo.F_IsOverdue = 0;
- assignBLL.Update(modelT_Bus_AssignedInfo);
- #endregion
- typemsg = "主办";
- #region 插入操作记录
- Model.T_Bus_Operation oper = new Model.T_Bus_Operation();
- oper.F_WorkOrderId = modelT_Bus_WorkOrder.F_WorkOrderId;
- oper.F_AssignedId = modelT_Bus_AssignedInfo.F_Id;
- oper.F_State = modelT_Bus_WorkOrder.F_WorkState;
- string userinfo = result["FINISH_NAME"] == null ? "" : result["FINISH_NAME"].ToString();
- oper.F_Message = userinfo + " " + typemsg + "了工单";
- oper.F_CreateUser = userinfo;
- oper.F_CreateTime = DateTime.Now;
- oper.F_IsDelete = 0;
- operBLL.Add(oper);
- //推送消息表
- msg.AddInternalMessagesInfo("工单消息", oper.F_Message + ",工单编号:" + oper.F_WorkOrderId, modelT_Bus_WorkOrder.F_CreateUser, userinfo, (int)EnumSmsType.workorder);
- #endregion
- }
- trans.Complete();
- }
- var obj = new
- {
- code = "1",
- message = "反馈成功!"
- };
- return Content(obj.ToJson());
- }
- else
- {
- var obj = new
- {
- code = "0",
- message = "工单不存在!"
- };
- return Content(obj.ToJson());
- }
- }
- /// <summary>
- /// 获取附件数据
- /// </summary>
- /// <param name="ids">附件id,多个用英文逗号,隔开</param>
- /// <param name="prefix">前缀</param>
- /// <returns></returns>
- public List<bodys> GetFileData(string ids)
- {
- DataTable dt = DbHelperSQL.Query("select * from T_Sys_Accessories WITH(NOLOCK) where F_FileId in (" + ids + ")").Tables[0];
- List<bodys> bodys = new List<bodys>();
- foreach (DataRow dr in dt.Rows)
- {
- if (dr["F_UserCode"].ToString() != "知识附件")
- {
- string url = Upload("http://172.16.1.5:8819/" + dr["F_FileUrl"].ToString(), dr["F_FileName"].ToString(), "/" + dr["F_FileUrl"].ToString().Replace(dr["F_FileName"].ToString(), ""));
- if (url != "1")
- return null;
- }
- bodys body = new bodys();
- body.ATTATH_TYPE = dr["F_FileType"].ToString();
- body.ATTATH_NAME = dr["F_FileName"].ToString();
- FileStream fs = new FileStream(System.Web.HttpContext.Current.Server.MapPath("..") + dr["F_FileUrl"].ToString(), FileMode.Open);
- byte[] filebyte = new byte[fs.Length];
- fs.Read(filebyte, 0, filebyte.Length);
- fs.Close();
- body.ATTATH_CONTENT = Convert.ToBase64String(filebyte);
- bodys.Add(body);
- }
- return bodys;
- }
- public string Upload(string pathUrl, string newFileName, string path)
- {
- //文件下载地址
- try
- {
- HttpWebRequest request = (HttpWebRequest)WebRequest.Create(pathUrl);
- HttpWebResponse response = request.GetResponse() as HttpWebResponse;
- Stream responseStream = response.GetResponseStream();
- string Currentpath = System.Web.HttpContext.Current.Server.MapPath("..") + path;
- // 如果不存在就创建file文件夹
- if (!Directory.Exists(Currentpath))
- {
- if (Currentpath != null) Directory.CreateDirectory(Currentpath);
- }
- Stream stream = new FileStream(Currentpath + newFileName, FileMode.Create);
- byte[] bArr = new byte[1024];
- int size = responseStream.Read(bArr, 0, bArr.Length);
- while (size > 0)
- {
- stream.Write(bArr, 0, size);
- size = responseStream.Read(bArr, 0, bArr.Length);
- }
- stream.Close();
- responseStream.Close();
- return "1";
- }
- catch (Exception e)
- {
- return e.Message;
- }
- }
- #region
- public class kinfo
- {
- public string code { set; get; }
- public string message { set; get; }
- public kinfobody body { set; get; }
- }
- public class kinfobody
- {
- public string KINFO_ID { set; get; }
- }
- public class Push
- {
- public string code { set; get; }
- public string message { set; get; }
- public body body { set; get; }
- }
- public class body
- {
- public errorObjs[] errorObjs { set; get; }
- public string successCount { set; get; }
- public string totalCount { set; get; }
- }
- public class goback
- {
- public string code { set; get; }
- public string message { set; get; }
- }
- public class errorObjs
- {
- public string resturl { set; get; }
- public string errorid { set; get; }
- public string errormsg { set; get; }
- public string caseserial { set; get; }
- }
- // private static string GetTokens()
- //{
- // string jsonParam = "client_id=d620caf2-d00f-41a9-ae99-c6dfd435875e&client_secret=4f75914e-d517-4325-ac64-c321377b12f0&grant_type=client_credentials";
- // var responseString = HttpPost("http://59.227.104.17/epoint-sso-web/rest/oauth2/token", jsonParam);
- // Token jo = JsonConvert.DeserializeObject<Token>(responseString);
- // if (jo.status.code == "1")
- // {
- // if (!string.IsNullOrEmpty(jo.custom.access_token))
- // return jo.custom.access_token;
- // else
- // return "";
- // }
- // else
- // return "";
- //}
- public string HttpPost(string url, string param = null)
- {
- string secretKey = GetsecretKey();
- if (string.IsNullOrEmpty(secretKey))
- {
- return "secretKey为空";
- }
- // var ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
- var currentTime = DateTimeConvert.ToTimetag(DateTime.Now);
- HttpClient client = new HttpClient();
- string sig = Hmacsha256Encrypt("ef7d2f003a3048d79d037805e00a369c" + currentTime, secretKey);
- var requestHeaders = new Dictionary<string, string>();
- requestHeaders.Add("gateway_appid", "ef7d2f003a3048d79d037805e00a369c");
- requestHeaders.Add("gateway_rtime", $"{currentTime}");
- requestHeaders.Add("gateway_sig", sig);
- foreach (var item in requestHeaders)
- {
- client.DefaultRequestHeaders.Add(item.Key, item.Value);
- }
- //短信接口请求参数。参见接口规范
- var jsArr = new Dictionary<string, string>();
- jsArr.Add("paras", param);
- //将headers参与与接口报文参数合并、排序,并生成本次请求的签名信息
- var signDic = jsArr.Union(requestHeaders).ToDictionary(k => k.Key, v => v.Value);
- HttpContent str = new StringContent(JsonConvert.SerializeObject(jsArr));
- str.Headers.Remove("Content-Type");
- str.Headers.Add("Content-Type", "application/json");
- ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
- HttpResponseMessage response = client.PostAsync(url, str).Result;
- string result = response.Content.ReadAsStringAsync().Result;
- return result;
- }
- public static string GetToken()
- {
- // var ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
- var currentTime = DateTimeConvert.ToTimetag(DateTime.Now);
- HttpClient client = new HttpClient();
- string sig = Hmacsha256Encrypt("ef7d2f003a3048d79d037805e00a369c" + currentTime, "ZWY3ZDJmMDAzYTMwNDhkNzlkMDM3ODA1ZTAwYTM2OWM6MTIzNDU2");
- var requestHeaders = new Dictionary<string, string>();
- requestHeaders.Add("gateway_appid", "ef7d2f003a3048d79d037805e00a369c");
- requestHeaders.Add("gateway_rtime", $"{currentTime}");
- requestHeaders.Add("gateway_sig", sig);
- foreach (var item in requestHeaders)
- {
- client.DefaultRequestHeaders.Add(item.Key, item.Value);
- }
- //短信接口请求参数。参见接口规范
- var jsArr = new Dictionary<string, string>();
- //将headers参与与接口报文参数合并、排序,并生成本次请求的签名信息
- var signDic = jsArr.Union(requestHeaders).ToDictionary(k => k.Key, v => v.Value);
- HttpContent str = new StringContent(JsonConvert.SerializeObject(jsArr));
- str.Headers.Remove("Content-Type");
- str.Headers.Add("Content-Type", "application/json");
- ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
- HttpResponseMessage response = client.PostAsync("http://59.207.107.18:5000/auth/token", str).Result;
- string result = response.Content.ReadAsStringAsync().Result;
- Token jo = JsonConvert.DeserializeObject<Token>(result);
- if (jo.code == "0")
- {
- string key = "ZWY3ZDJmMDAzYTMwNDhkNzlkMDM3ODA1ZTAwYTM2OWM6MTIzNDU2";
- byte[] original_key = GetKeyBySeed(key);
- RedisHelper.StringSet("original_key", Convert.ToBase64String(original_key));
- byte[] res = Decrypt(Convert.FromBase64String(jo.body.refresh_token), original_key, "AESCBCPKCS5Paddi");
- string refreshKey = System.Text.Encoding.UTF8.GetString(res);
- byte[] secret = Decrypt(Convert.FromBase64String(jo.body.access_token), original_key, "AESCBCPKCS5Paddi");
- string secretKey = System.Text.Encoding.UTF8.GetString(secret);
- RedisHelper.KeyDelete("refreshKey");
- RedisHelper.StringSet("refreshKey", refreshKey, new TimeSpan(0, 0, jo.body.expires_in - 5));
- RedisHelper.KeyDelete("secretKey");
- RedisHelper.StringSet("secretKey", secretKey, new TimeSpan(0, 0, jo.body.expires_in - 5));
- return refreshKey;
- }
- else
- {
- return "";
- }
- }
- public static string GetrefreshToken()
- {
- string refresh = GetrefreshKey();
- if (string.IsNullOrEmpty(refresh))
- {
- refresh = GetToken();
- }
- // var ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
- var currentTime = DateTimeConvert.ToTimetag(DateTime.Now);
- HttpClient client = new HttpClient();
- string sig = Hmacsha256Encrypt("ef7d2f003a3048d79d037805e00a369c" + currentTime, refresh);
- var requestHeaders = new Dictionary<string, string>();
- requestHeaders.Add("gateway_appid", "ef7d2f003a3048d79d037805e00a369c");
- requestHeaders.Add("gateway_rtime", $"{currentTime}");
- requestHeaders.Add("gateway_sig", sig);
- foreach (var item in requestHeaders)
- {
- client.DefaultRequestHeaders.Add(item.Key, item.Value);
- }
- //短信接口请求参数。参见接口规范
- var jsArr = new Dictionary<string, string>();
- //将headers参与与接口报文参数合并、排序,并生成本次请求的签名信息
- var signDic = jsArr.Union(requestHeaders).ToDictionary(k => k.Key, v => v.Value);
- HttpContent str = new StringContent(JsonConvert.SerializeObject(jsArr));
- str.Headers.Remove("Content-Type");
- str.Headers.Add("Content-Type", "application/json");
- ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
- HttpResponseMessage response = client.PostAsync("http://59.207.107.18:5000/auth/refreshToken", str).Result;
- string result = response.Content.ReadAsStringAsync().Result;
- Token jo = JsonConvert.DeserializeObject<Token>(result);
- if (jo.code == "0")
- {
- string key = "ZWY3ZDJmMDAzYTMwNDhkNzlkMDM3ODA1ZTAwYTM2OWM6MTIzNDU2";
- byte[] original_key = GetKeyBySeed(key);
- byte[] res = Decrypt(Convert.FromBase64String(jo.body.refresh_token), original_key, "AESCBCPKCS5Paddi");
- string refreshKey = System.Text.Encoding.UTF8.GetString(res);
- byte[] secret = Decrypt(Convert.FromBase64String(jo.body.access_token), original_key, "AESCBCPKCS5Paddi");
- string secretKey = System.Text.Encoding.UTF8.GetString(secret);
- RedisHelper.KeyDelete("refreshKey");
- RedisHelper.StringSet("refreshKey", refreshKey, new TimeSpan(0, 0, jo.body.expires_in - 5));
- RedisHelper.KeyDelete("secretKey");
- RedisHelper.StringSet("secretKey", secretKey, new TimeSpan(0, 0, jo.body.expires_in - 5));
- return secretKey;
- }
- else
- {
- return "";
- }
- }
- private static string GetrefreshKey()
- {
- var access_token = RedisHelper.StringGet("refreshKey");
- if (access_token != null)
- return access_token.ToString();
- else
- {
- return GetToken();
- }
- }
- private string GetsecretKey()
- {
- var access_token = RedisHelper.StringGet("secretKey");
- if (access_token != null)
- return access_token.ToString();
- else
- {
- return GetrefreshToken();
- }
- }
- /// <summary>
- /// HMACSHA1算法加密
- /// </summary>
- private static string Hmacsha256Encrypt(string encryptText, string encryptKey)
- {
- var encoding = new System.Text.UTF8Encoding();
- var shaKeyBytes = encoding.GetBytes(encryptKey);
- StringBuilder builder = new StringBuilder();
- using (var shaAlgorithm = new System.Security.Cryptography.HMACSHA256(shaKeyBytes))
- {
- var signatureBytes = System.Text.Encoding.UTF8.GetBytes(encryptText);
- var signatureHashBytes = shaAlgorithm.ComputeHash(signatureBytes);
- return System.Convert.ToBase64String(signatureHashBytes);
- }
- }
- /// <summary>
- /// 用种子获取密钥
- /// </summary>
- /// <param name="Seed">种子</param>
- /// <param name="KeyLen">密钥长度(默认为16)</param>
- /// <returns>密钥Key</returns>
- public static byte[] GetKeyBySeed(string Seed, int KeyLen = 16)
- {
- byte[] bySeed = Encoding.UTF8.GetBytes(Seed);
- byte[] byKeyArray = null;
- using (var st = new SHA1CryptoServiceProvider())
- {
- using (var nd = new SHA1CryptoServiceProvider())
- {
- var rd = nd.ComputeHash(st.ComputeHash(bySeed));
- byKeyArray = rd.Take(KeyLen).ToArray();
- }
- }
- return byKeyArray;
- }
- /// <summary>
- /// AES加密
- /// </summary>
- /// <param name="Bytes">明文(byte[])</param>
- /// <param name="Key">密钥(byte[])</param>
- /// <param name="Vector">向量</param>
- /// <returns>密文(byte[])</returns>
- public static byte[] Encrypt(byte[] Bytes, byte[] Key, string Vector)
- {
- RijndaelManaged aes = new RijndaelManaged();
- aes.Mode = CipherMode.CBC;
- aes.Padding = PaddingMode.PKCS7;
- aes.Key = Key;
- aes.IV = Encoding.UTF8.GetBytes(Vector);
- ICryptoTransform cTransform = aes.CreateEncryptor();
- return cTransform.TransformFinalBlock(Bytes, 0, Bytes.Length);
- }
- /// <summary>
- /// AES解密
- /// </summary>
- /// <param name="Bytes">密文(byte[])</param>
- /// <param name="Key">密钥(byte[])</param>
- /// <param name="Vector">向量</param>
- /// <returns>明文(byte[])</returns>
- public static byte[] Decrypt(byte[] Bytes, byte[] Key, string Vector)
- {
- RijndaelManaged aes = new RijndaelManaged();
- aes.Mode = CipherMode.CBC;
- aes.Padding = PaddingMode.PKCS7;
- aes.Key = Key;
- aes.IV = Encoding.UTF8.GetBytes(Vector);
- ICryptoTransform cTransform = aes.CreateDecryptor();
- return cTransform.TransformFinalBlock(Bytes, 0, Bytes.Length);
- }
- private static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
- {
- return true; //总是接受
- }
- public class Token
- {
- public string code { set; get; }
- public string message { set; get; }
- public Tokenbody body { set; get; }
- public long timestamp { set; get; }
- }
- public class Tokenbody
- {
- public string access_token { set; get; }
- public string refresh_token { set; get; }
- public string token_type { set; get; }
- public int expires_in { set; get; }
- }
- public class Status
- {
- public string code { set; get; }
- }
- /// <summary>
- /// 监察督办督察督办列表
- /// </summary>
- /// <param name="isdc"></param>
- /// <returns></returns>
- //[Authority]
- public ActionResult GetSupervList(int isdc = 0)
- {
- DataTable dt = new DataTable();
- string sql = " and F_IsDelete=0";
- #region 参数
- int type = RequestString.GetInt("type", 0);//0监察督办1督察督办
- sql += " and F_Type ='" + type + "'";
- int state = RequestString.GetInt("state", -1);//0未回复1已回复
- if (state > -1)
- sql += " and F_State ='" + state + "'";
- string starttime = HttpUtility.UrlDecode(RequestString.GetQueryString("starttime"));
- string strendtime = HttpUtility.UrlDecode(RequestString.GetQueryString("strendtime"));
- string strpageindex = RequestString.GetQueryString("page");
- int pageindex = 1;
- string strpagesize = RequestString.GetQueryString("pagesize");
- int pagesize = 10;
- string title = HttpUtility.UrlDecode(RequestString.GetQueryString("title"));
- if (title.Trim() != "" && title != "undefined")
- {
- sql += " and F_Title like '%" + title + "%' ";
- }
- string content = HttpUtility.UrlDecode(RequestString.GetQueryString("content"));
- if (content.Trim() != "" && content != "undefined")
- {
- sql += " and F_Content like '%" + content + "%' ";
- }
- string opinion = HttpUtility.UrlDecode(RequestString.GetQueryString("opinion"));
- if (opinion.Trim() != "" && opinion != "undefined")
- {
- sql += " and F_Opinion like '%" + opinion + "%' ";
- }
- string level = HttpUtility.UrlDecode(RequestString.GetQueryString("level"));
- if (level.Trim() != "" && level != "undefined")
- {
- sql += " and F_Level ='" + level + "' ";
- }
- string situation = HttpUtility.UrlDecode(RequestString.GetQueryString("situation"));
- if (situation.Trim() != "" && situation != "undefined")
- {
- sql += " and F_Situation like '%" + situation + "%' ";
- }
- if (starttime.Trim() != "" && starttime != "undefined")
- {
- sql += " and F_CreateTime >='" + starttime + "'";
- }
- if (strendtime.Trim() != "" && strendtime != "undefined")
- {
- sql += " and F_CreateTime <='" + strendtime + "'";
- }
- #endregion
- int recordCount = 0;
- dt = BLL.PagerBLL.GetListPager(
- "T_Bus_Supervision a WITH(NOLOCK)",
- "F_Id",
- "*",
- sql,
- "ORDER BY F_CreateTime DESC",
- pagesize,
- pageindex,
- true,
- out recordCount);
- #region 附加展示
- var config = configBll.GetModelList(" F_ParamCode='PlayPath' ").FirstOrDefault();
- foreach (DataRow dr in dt.Rows)
- {
- #endregion
- }
- #endregion
- var obj = new
- {
- state = "success",
- message = "成功",
- rows = dt,
- total = recordCount
- };
- return Content(obj.ToJson());
- }
- /// <summary>
- /// 获取监察督办督察督办
- /// </summary>
- /// <returns></returns>
- //[Authority]
- public ActionResult GetSuperv(int id)
- {
- var model = new BLL.T_Bus_Supervision().GetModel(id);
- var configfj = configBll.GetModelList(" F_ParamCode='FileUrlPath' ").FirstOrDefault();
- string sql = "select * from T_Bus_Supervision a WITH(NOLOCK) where F_ID ='" + id + "'";
- var dt = DbHelperSQL.Query(sql).Tables[0];
- var configly = configBll.GetModelList(" F_ParamCode='PlayLeaveVoice' ").FirstOrDefault();
- var config = configBll.GetModelList(" F_ParamCode='PlayPath' ").FirstOrDefault();
- if (dt.Rows.Count > 0)
- {
- #region 声音文件
- dt.Columns.Add("FilePath", typeof(string));
- #endregion
- #region 附件
- if (configfj != null)
- {
- dt = BindFileData(dt, configfj.F_ParamValue);
- }
- #endregion
- var obj = new
- {
- data = dt
- };
- return Success("获取成功", obj);
- }
- else
- {
- return Error("获取失败");
- }
- }
- /// <summary>
- /// 绑定附件信息
- /// </summary>
- /// <param name="dt"></param>
- /// <param name="prefix"></param>
- /// <returns></returns>
- public DataTable BindFileData(DataTable dt, string prefix)
- {
- dt.Columns.Add("File", typeof(object));
- foreach (DataRow dr in dt.Rows)
- {
- if (dr["F_File"] != null && dr["F_File"].ToString() != "")
- {
- dr["File"] = GetFileData(dr["F_File"].ToString(), prefix);
- }
- }
- return dt;
- }
- /// <summary>
- /// 获取附件数据
- /// </summary>
- /// <param name="ids">附件id,多个用英文逗号,隔开</param>
- /// <param name="prefix">前缀</param>
- /// <returns></returns>
- public DataTable GetFileData(string ids, string prefix)
- {
- DataTable dt = DbHelperSQL.Query("select * from T_Sys_Accessories WITH(NOLOCK) where F_FileId in (" + ids + ")").Tables[0];
- foreach (DataRow dr in dt.Rows)
- {
- dr["F_FileUrl"] = prefix + dr["F_FileUrl"].ToString();
- }
- return dt;
- }
- #region 知识库
- public class transmit_kinfo_add
- {
- public string AREA_CODE { set; get; }
- /// <summary>
- /// 标题
- /// </summary>
- public string KINFO_KNAME { set; get; }
- /// <summary>
- /// 内容
- /// </summary>
- public string KINFO_KCONTENT { set; get; }
- /// <summary>
- /// 知识分类编码
- /// </summary>
- public string KINFO_TYPECODE { set; get; }
- /// <summary>
- /// 发布时间
- /// </summary>
- public string KINFO_CREATDATE { set; get; }
- /// <summary>
- /// 生效时间
- /// </summary>
- public string KINFO_BEGINDATE { set; get; }
- /// <summary>
- /// 失效时间
- /// </summary>
- public string KINFO_DISABLEDATE { set; get; }
- /// <summary>
- /// 知识报送附件id
- /// </summary>
- public string KINFO_ATTATH_ID { set; get; }
- }
- /// <summary>
- /// </summary>
- /// 知识报送接口
- /// <param name="sender"></param>
- /// <param name="e"></param>
- public ActionResult kinfo_add(int id)
- {
- Model.T_RepositoryInformation model = new BLL.T_RepositoryInformation().GetModel(id);
- if (model != null)
- {
- transmit_kinfo_add paras = new transmit_kinfo_add();
- paras.AREA_CODE = AREA_CODE;
- paras.KINFO_KNAME = model.F_Title;
- if (!string.IsNullOrEmpty(model.F_Description))
- paras.KINFO_KCONTENT = model.F_Description;
- else
- paras.KINFO_KCONTENT = "无";
- if (model.F_Key == null)
- return Error("分类不存在");
- string key = DbHelperSQL.GetSingle(" select dbo.GetDicRemark('" + model.F_Key + "')").ToString();
- if (!string.IsNullOrEmpty(key))
- paras.KINFO_TYPECODE = DbHelperSQL.GetSingle(" select dbo.GetDicRemark('" + model.F_Key + "')").ToString();
- else
- paras.KINFO_TYPECODE = "";
- paras.KINFO_CREATDATE = model.F_CreateOn.Value.ToString("yyyy-MM-dd HH:mm:ss");
- paras.KINFO_BEGINDATE = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
- string fileid = "";
- if (!string.IsNullOrEmpty(model.F_Content))
- {
- if (!string.IsNullOrEmpty(model.F_Content))
- {
- string[] str = model.F_Content.Split('"');
- for (int i = 0; i < str.Length; i++)
- {
- if (str[i].Contains("/js/kindeditor/upload"))
- {
- string path = "/Upload/kinfo/" + DateTime.Now.ToString("yyyy") + "/" + DateTime.Now.ToString("MM") + "/" + DateTime.Now.ToString("dd") + "/";
- var response = kinfo_upload("http://172.16.1.5:8818/" + str[i], System.IO.Path.GetFileName(str[i]), path);
- List<Model.T_Sys_Accessories> acs = new List<Model.T_Sys_Accessories>();
- Model.T_Sys_Accessories model_T_Sys_Accessories = new Model.T_Sys_Accessories();
- model_T_Sys_Accessories.F_AddTime = DateTime.Now;//上传时间
- model_T_Sys_Accessories.F_FileName = System.IO.Path.GetFileName(str[i]);//附件名称
- model_T_Sys_Accessories.F_FileType = System.IO.Path.GetExtension(str[i]);//附件类
- model_T_Sys_Accessories.F_FileUrl = path + System.IO.Path.GetFileName(str[i]);//附件地址
- model_T_Sys_Accessories.F_UserCode = "知识附件";//上传人
- int accid = new BLL.T_Sys_Accessories().Add(model_T_Sys_Accessories);
- model_T_Sys_Accessories.F_FileId = accid;
- if (string.IsNullOrEmpty(fileid))
- fileid = id.ToString();
- else
- fileid += "," + id.ToString();
- }
- }
- }
- }
- paras.KINFO_ATTATH_ID = fileid;
- var responseString = HttpPost("http://59.207.107.18:5000/api/transmit_kinfo_add", paras.ToJson());
- JObject jo = (JObject)JsonConvert.DeserializeObject(responseString);
- if (jo["code"].ToString() == "1")
- {
- kinfo kinfo = JsonConvert.DeserializeObject<kinfo>(responseString);
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", id, "", DateTime.Now, jo["code"].ToString(), jo["message"].ToString(), "知识报送接口", "", "推送成功数1");
- object objres = DbHelperSQL.GetSingle(strSql);
- string Mapping = string.Format(@"INSERT INTO T_Bus_Mapping ( [F_OldWorkOrder], [F_NewWorkOrder], [F_CreateTime], [F_Type])
- values ('{0}','{1}','{2}','{3}') ;select @@IDENTITY ", model.F_RepositoryId, kinfo.body.KINFO_ID, DateTime.Now, 0);
- object Mappings = DbHelperSQL.GetSingle(Mapping);
- return Error("推送成功");
- }
- else
- {
- string error = "";
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo["code"].ToString(), jo["message"].ToString(), "知识报送接口", error, "推送成功数1");
- object objres = DbHelperSQL.GetSingle(strSql);
- LogFactory.GetLogger("111").Warn("知识报送接口" + error);
- return Error("推送失败---" + error);
- }
- }
- else
- {
- return Error("推送失败知识不存在");
- }
- }
- public class transmit_kinfo_update
- {
- public string AREA_CODE { set; get; }
- /// <summary>
- /// 知识唯一标识
- /// </summary>
- public string KINFO_ID { set; get; }
- /// <summary>
- /// 标题
- /// </summary>
- public string KINFO_KNAME { set; get; }
- /// <summary>
- /// 内容
- /// </summary>
- public string KINFO_KCONTENT { set; get; }
- /// <summary>
- /// 知识分类编码
- /// </summary>
- public string KINFO_TYPECODE { set; get; }
- /// <summary>
- /// 发布时间
- /// </summary>
- public string KINFO_CREATDATE { set; get; }
- /// <summary>
- /// 生效时间
- /// </summary>
- public string KINFO_BEGINDATE { set; get; }
- /// <summary>
- /// 失效时间
- /// </summary>
- public string KINFO_DISABLEDATE { set; get; }
- /// <summary>
- /// 知识报送附件id
- /// </summary>
- public string KINFO_ATTATH_ID { set; get; }
- }
- /// <summary>
- /// </summary>
- /// 知识变更接口
- /// <param name="sender"></param>
- /// <param name="e"></param>
- public ActionResult kinfo_update(int id)
- {
- Model.T_RepositoryInformation model = new BLL.T_RepositoryInformation().GetModel(id);
- if (model != null)
- {
- transmit_kinfo_update paras = new transmit_kinfo_update();
- paras.AREA_CODE = AREA_CODE;
- paras.KINFO_KNAME = model.F_Title;
- paras.KINFO_KCONTENT = model.F_Description;
- var KINFO_ID = DbHelperSQL.GetSingle(" select top 1 F_NewWorkOrder from T_Bus_Mapping where F_OldWorkOrder='" + model.F_RepositoryId + "' and F_Type=0 order by F_CreateTime desc ");
- if (KINFO_ID != null)
- {
- paras.KINFO_ID = KINFO_ID.ToString();
- }
- else
- {
- return Error("知识未上传");
- }
- if (!string.IsNullOrEmpty(model.F_Description))
- paras.KINFO_KCONTENT = model.F_Description;
- else
- paras.KINFO_KCONTENT = "无";
- string key = DbHelperSQL.GetSingle(" select dbo.GetDicRemark('" + model.F_Key + "')").ToString();
- if (!string.IsNullOrEmpty(key))
- paras.KINFO_TYPECODE = DbHelperSQL.GetSingle(" select dbo.GetDicRemark('" + model.F_Key + "')").ToString();
- else
- paras.KINFO_TYPECODE = "";
- paras.KINFO_CREATDATE = model.F_CreateOn.Value.ToString("yyyy-MM-dd HH:mm:ss");
- paras.KINFO_BEGINDATE = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
- string fileid = "";
- if (!string.IsNullOrEmpty(model.F_Content))
- {
- if (!string.IsNullOrEmpty(model.F_Content))
- {
- string[] str = model.F_Content.Split('"');
- for (int i = 0; i < str.Length; i++)
- {
- if (str[i].Contains("/js/kindeditor/upload"))
- {
- string path = "/Upload/kinfo/" + DateTime.Now.ToString("yyyy") + "/" + DateTime.Now.ToString("MM") + "/" + DateTime.Now.ToString("dd") + "/";
- var response = kinfo_upload("http://172.16.1.5:8818/" + str[i], System.IO.Path.GetFileName(str[i]), path);
- List<Model.T_Sys_Accessories> acs = new List<Model.T_Sys_Accessories>();
- Model.T_Sys_Accessories model_T_Sys_Accessories = new Model.T_Sys_Accessories();
- model_T_Sys_Accessories.F_AddTime = DateTime.Now;//上传时间
- model_T_Sys_Accessories.F_FileName = System.IO.Path.GetFileName(str[i]);//附件名称
- model_T_Sys_Accessories.F_FileType = System.IO.Path.GetExtension(str[i]);//附件类
- model_T_Sys_Accessories.F_FileUrl = path + System.IO.Path.GetFileName(str[i]);//附件地址
- model_T_Sys_Accessories.F_UserCode = "知识附件";//上传人
- int accid = new BLL.T_Sys_Accessories().Add(model_T_Sys_Accessories);
- model_T_Sys_Accessories.F_FileId = id;
- if (string.IsNullOrEmpty(fileid))
- fileid = id.ToString();
- else
- fileid += "," + id.ToString();
- }
- }
- }
- }
- paras.KINFO_ATTATH_ID = fileid;
- var responseString = HttpPost("http://59.207.107.18:5000/api/transmit_kinfo_update", paras.ToJson());
- JObject jo = (JObject)JsonConvert.DeserializeObject(responseString);
- if (jo["code"].ToString() == "1")
- {
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", id, "", DateTime.Now, jo["code"].ToString(), jo["message"].ToString(), "知识变更接口", "", "推送成功数1");
- object objres = DbHelperSQL.GetSingle(strSql);
- return Success("推送成功");
- }
- else
- {
- string error = "";
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo["code"].ToString(), jo["message"].ToString(), "知识变更接口", error, "推送成功数1");
- object objres = DbHelperSQL.GetSingle(strSql);
- LogFactory.GetLogger("111").Warn("知识变更接口" + error);
- return Error("推送失败---" + error);
- }
- }
- else
- {
- return Error("推送失败知识不存在");
- }
- }
- public class transmit_kinfo_delete
- {
- /// <summary>
- /// 知识唯一标识
- /// </summary>
- public string KINFO_ID { set; get; }
- /// <summary>
- /// 知识下架原因
- /// </summary>
- public string KINFO_REASON { set; get; }
- }
- /// <summary>
- /// </summary>
- /// 知识下架接口
- /// <param name="sender"></param>
- /// <param name="e"></param>
- public ActionResult kinfo_delete(int id, string remark)
- {
- Model.T_RepositoryInformation model = new BLL.T_RepositoryInformation().GetModel(id);
- if (model != null)
- {
- transmit_kinfo_delete paras = new transmit_kinfo_delete();
- var KINFO_ID = DbHelperSQL.GetSingle(" select top 1 F_NewWorkOrder from T_Bus_Mapping where F_OldWorkOrder='" + model.F_RepositoryId + "'and F_Type=0 order by F_CreateTime desc ");
- if (KINFO_ID != null)
- {
- paras.KINFO_ID = KINFO_ID.ToString();
- }
- else
- {
- return Error("知识未上传");
- }
- paras.KINFO_REASON = remark;
- var responseString = HttpPost("http://59.207.107.18:5000/api/transmit_kinfo_delete", paras.ToJson());
- JObject jo = (JObject)JsonConvert.DeserializeObject(responseString);
- if (jo["code"].ToString() == "1")
- {
- kinfo kinfo = JsonConvert.DeserializeObject<kinfo>(responseString);
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", id, "", DateTime.Now, jo["code"].ToString(), jo["message"].ToString(), "知识下架接口", "", "推送成功数1");
- object objres = DbHelperSQL.GetSingle(strSql);
- return Success("推送成功");
- }
- else
- {
- string error = "";
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", "", paras.ToJson(), DateTime.Now, jo["code"].ToString(), jo["message"].ToString(), "知识下架接口", error, "推送成功数1");
- object objres = DbHelperSQL.GetSingle(strSql);
- LogFactory.GetLogger("111").Warn("知识下架接口" + error);
- return Error("推送失败---" + error);
- }
- }
- else
- {
- return Error("推送失败知识不存在");
- }
- }
- /// <summary>
- /// 知识提问接口
- /// </summary>
- /// <returns></returns>
- //[Authority]
- public ActionResult transmit_kinfo_quiz()
- {
- StreamReader reader = new StreamReader(System.Web.HttpContext.Current.Request.InputStream);
- var postString = reader.ReadToEnd();
- JObject paras = null;
- paras = (JObject)Newtonsoft.Json.JsonConvert.DeserializeObject(postString);
- var txnBodyCom = paras["paras"].ToString();
- var result = (JObject)Newtonsoft.Json.JsonConvert.DeserializeObject(txnBodyCom);
- if (result["KINFO_ID"] == null)
- {
- var obj1 = new
- {
- code = "0",
- message = "KINFO_ID不能为空"
- };
- return Content(obj1.ToJson());
- }
- if (string.IsNullOrEmpty(result["KINFO_KNAME"].ToString()))
- {
- var obj1 = new
- {
- code = "0",
- message = "KINFO_KNAME不能为空"
- };
- return Content(obj1.ToJson());
- }
- if (string.IsNullOrEmpty(result["KINFO_KCONTENT"].ToString()))
- {
- var obj1 = new
- {
- code = "0",
- message = "KINFO_KCONTENT不能为空"
- };
- return Content(obj1.ToJson());
- }
- using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
- {
- Model.T_Sys_kinfoQuestions model = new Model.T_Sys_kinfoQuestions();
- model.KINFO_ID = result["KINFO_ID"].ToString();
- model.KINFO_KNAME = result["KINFO_KNAME"].ToString();
- model.KINFO_KCONTENT = result["KINFO_KCONTENT"].ToString();
- model.F_CreateTime = DateTime.Now;
- model.F_State = 0;
- model.F_IsDelete = 0;
- int n = new BLL.T_Sys_kinfoQuestions().Add(model);
- if (n > 0)
- {
- var obj1 = new
- {
- code = "1",
- message = "推送成功"
- };
- trans.Complete();
- return Content(obj1.ToJson());
- }
- else
- {
- var obj1 = new
- {
- code = "0",
- message = "推送失败"
- };
- trans.Complete();
- return Content(obj1.ToJson());
- }
- }
- }
- public class transmit_kinfo_answer
- {
- /// <summary>
- /// 知识唯一标识
- /// </summary>
- public string KINFO_ID { set; get; }
- /// <summary>
- /// 知识标题
- /// </summary>
- public string KINFO_KNAME { set; get; }
- /// <summary>
- /// 知识内容
- /// </summary>
- public string KINFO_KCONTENT { set; get; }
- /// <summary>
- /// 生效时间
- /// </summary>
- public string KINFO_BEGINDATE { set; get; }
- /// <summary>
- /// 失效时间
- /// </summary>
- public string KINFO_DISABLEDATE { set; get; }
- }
- /// <summary>
- /// </summary>
- /// 知识答复接口
- /// <param name="sender"></param>
- /// <param name="e"></param>
- [Authority]
- public ActionResult kinfo_answer(string KINFO_KNAME,
- string KINFO_KCONTENT, DateTime? KINFO_BEGINDATE, DateTime? KINFO_DISABLEDATE,
- int id = 0)
- {
- Model.T_Sys_kinfoQuestions model = new BLL.T_Sys_kinfoQuestions().GetModel(id);
- if (model != null)
- {
- transmit_kinfo_answer paras = new transmit_kinfo_answer();
- paras.KINFO_ID = model.KINFO_ID;
- paras.KINFO_KNAME = KINFO_KNAME;
- paras.KINFO_KCONTENT = KINFO_KCONTENT;
- if (KINFO_BEGINDATE != null)
- paras.KINFO_BEGINDATE = KINFO_BEGINDATE.Value.ToString("yyyy-MM-dd HH:mm:ss");
- else
- return Error("请选择生效时间");
- if (KINFO_DISABLEDATE != null)
- paras.KINFO_DISABLEDATE = KINFO_DISABLEDATE.Value.ToString("yyyy-MM-dd HH:mm:ss");
- else
- paras.KINFO_DISABLEDATE = "";
- model.ReKINFO_KNAME = KINFO_KNAME;
- model.ReKINFO_KCONTENT = KINFO_KCONTENT;
- model.KINFO_BEGINDATE = KINFO_BEGINDATE;
- model.KINFO_DISABLEDATE = KINFO_DISABLEDATE;
- model.ReUser = User.F_UserCode;
- model.F_State = 1;
- bool n = new BLL.T_Sys_kinfoQuestions().Update(model);
- if (n)
- {
- string jsonParam = "paras=" + paras.ToJson() + "&message=知识答复接口&url=http://59.207.107.18:5000/api/transmit_kinfo_answer";
- var responseString = HttpMethods.HttpPost("http://172.20.0.203:8888/Affairs/Kinforeceive_Push", jsonParam);
- bendiack jo = JsonConvert.DeserializeObject<bendiack>(responseString);
- if (jo.state == "success")
- return Success("知识答复成功");
- else
- return Error("知识答复失败");
- }
- else
- {
- return Error("答复失败");
- }
- }
- else
- {
- return Error("推送失败知识不存在");
- }
- }
- public class transmit_kinfo_refuse
- {
- /// <summary>
- /// 知识唯一标识
- /// </summary>
- public string KINFO_ID { set; get; }
- /// <summary>
- /// 知识拒绝答复原因
- /// </summary>
- public string KINFO_REASON { set; get; }
- }
- /// <summary>
- /// </summary>
- /// 知识拒绝答复接口
- /// <param name="sender"></param>
- /// <param name="e"></param>
- [Authority]
- public ActionResult kinfo_refuse(string KINFO_REASON,
- int id = 0)
- {
- Model.T_Sys_kinfoQuestions model = new BLL.T_Sys_kinfoQuestions().GetModel(id);
- if (model != null)
- {
- transmit_kinfo_refuse paras = new transmit_kinfo_refuse();
- paras.KINFO_ID = model.KINFO_ID;
- paras.KINFO_REASON = KINFO_REASON;
- model.F_State = 2;
- model.KINFO_REASON = KINFO_REASON;
- model.ReUser = User.F_UserCode;
- bool n = new BLL.T_Sys_kinfoQuestions().Update(model);
- if (n)
- {
- string jsonParam = "paras=" + paras.ToJson() + "&message=知识拒绝答复接口&url=http://59.207.107.18:5000/api/transmit_kinfo_refuse";
- var responseString = HttpMethods.HttpPost("http://172.20.0.203:8888/Affairs/Kinforeceive_Push", jsonParam);
- bendiack jo = JsonConvert.DeserializeObject<bendiack>(responseString);
- if (jo.state == "success")
- return Success("知识答复成功");
- else
- return Error("知识答复失败");
- }
- else
- {
- return Error("答复失败");
- }
- }
- else
- {
- return Error("推送失败知识不存在");
- }
- }
- /// <summary>
- /// 知识审核退回接口
- /// </summary>
- /// <returns></returns>
- //[Authority]
- public ActionResult transmit_kinfo_back()
- {
- StreamReader reader = new StreamReader(System.Web.HttpContext.Current.Request.InputStream);
- var postString = reader.ReadToEnd();
- JObject paras = null;
- paras = (JObject)Newtonsoft.Json.JsonConvert.DeserializeObject(postString);
- var txnBodyCom = paras["paras"].ToString();
- var result = (JObject)Newtonsoft.Json.JsonConvert.DeserializeObject(txnBodyCom);
- if (result["KINFO_ID"] == null)
- {
- var obj1 = new
- {
- code = "0",
- message = "KINFO_ID不能为空"
- };
- return Content(obj1.ToJson());
- }
- if (string.IsNullOrEmpty(result["KINFO_KNAME"].ToString()))
- {
- var obj1 = new
- {
- code = "0",
- message = "KINFO_KNAME不能为空"
- };
- return Content(obj1.ToJson());
- }
- if (string.IsNullOrEmpty(result["KINFO_KCONTENT"].ToString()))
- {
- var obj1 = new
- {
- code = "0",
- message = "KINFO_KCONTENT不能为空"
- };
- return Content(obj1.ToJson());
- }
- using (TransactionScope trans = new TransactionScope(TransactionScopeOption.Required, new TimeSpan(0, 10, 0)))
- {
- Model.T_Sys_kinfoQuestions model = new Model.T_Sys_kinfoQuestions();
- model.KINFO_ID = result["KINFO_ID"].ToString();
- model.KINFO_KNAME = result["KINFO_KNAME"].ToString();
- model.KINFO_KCONTENT = result["KINFO_KCONTENT"].ToString();
- model.KINFO_KCONTENT = result["KINFO_KCONTENT"].ToString();
- model.ReKINFO_REASON = result["KINFO_REASON"].ToString();
- model.F_CreateTime = DateTime.Now;
- model.F_State = 3;
- model.F_IsDelete = 0;
- int n = new BLL.T_Sys_kinfoQuestions().Add(model);
- if (n > 0)
- {
- var obj1 = new
- {
- code = "1",
- message = "推送成功"
- };
- trans.Complete();
- return Content(obj1.ToJson());
- }
- else
- {
- var obj1 = new
- {
- code = "0",
- message = "推送失败"
- };
- trans.Complete();
- return Content(obj1.ToJson());
- }
- }
- }
- /// <summary>
- /// </summary>
- /// 知识重新答复接口
- /// <param name="sender"></param>
- /// <param name="e"></param>
- [Authority]
- public ActionResult kinfo_againanswer(string KINFO_KNAME,
- string KINFO_KCONTENT, DateTime? KINFO_BEGINDATE, DateTime? KINFO_DISABLEDATE,
- int id = 0)
- {
- Model.T_Sys_kinfoQuestions model = new BLL.T_Sys_kinfoQuestions().GetModel(id);
- if (model != null)
- {
- transmit_kinfo_answer paras = new transmit_kinfo_answer();
- paras.KINFO_ID = model.KINFO_ID;
- paras.KINFO_KNAME = KINFO_KNAME;
- paras.KINFO_KCONTENT = KINFO_KCONTENT;
- if (KINFO_BEGINDATE != null)
- paras.KINFO_BEGINDATE = KINFO_BEGINDATE.Value.ToString("yyyy-MM-dd HH:mm:ss");
- else
- return Error("请选择生效时间");
- if (KINFO_DISABLEDATE != null)
- paras.KINFO_DISABLEDATE = KINFO_DISABLEDATE.Value.ToString("yyyy-MM-dd HH:mm:ss");
- else
- paras.KINFO_DISABLEDATE = "";
- model.ReKINFO_KNAME = KINFO_KNAME;
- model.ReKINFO_KCONTENT = KINFO_KCONTENT;
- model.KINFO_BEGINDATE = KINFO_BEGINDATE;
- model.KINFO_DISABLEDATE = KINFO_DISABLEDATE;
- model.ReUser = User.F_UserCode;
- model.F_State = 4;
- bool n = new BLL.T_Sys_kinfoQuestions().Update(model);
- if (n)
- {
- string jsonParam = "paras=" + paras.ToJson() + "&message=知识重新答复接口&url=http://59.207.107.18:5000/api/transmit_kinfo_againanswer";
- var responseString = HttpMethods.HttpPost("http://172.20.0.203:8888/Affairs/Kinforeceive_Push", jsonParam);
- bendiack jo = JsonConvert.DeserializeObject<bendiack>(responseString);
- if (jo.state == "success")
- return Success("知识答复成功");
- else
- return Error("知识答复失败");
- }
- else
- {
- return Error("答复失败");
- }
- }
- else
- {
- return Error("推送失败知识不存在");
- }
- }
- /// <summary>
- /// 知识库列表
- /// </summary>
- /// <param name="isdc"></param>
- /// <returns></returns>
- //[Authority]
- public ActionResult GetKinfoList(int isdc = 0)
- {
- DataTable dt = new DataTable();
- string sql = " and F_IsDelete=0";
- #region 参数
- string starttime = HttpUtility.UrlDecode(RequestString.GetQueryString("starttime"));
- string strendtime = HttpUtility.UrlDecode(RequestString.GetQueryString("strendtime"));
- string strpageindex = RequestString.GetQueryString("page");
- int pageindex = 1;
- string strpagesize = RequestString.GetQueryString("pagesize");
- int pagesize = 10;
- string title = HttpUtility.UrlDecode(RequestString.GetQueryString("title"));
- if (title.Trim() != "" && title != "undefined")
- {
- sql += " and (KINFO_KNAME like '%" + title + "%'or ReKINFO_KNAME like '%" + title + "%' )";
- }
- string content = HttpUtility.UrlDecode(RequestString.GetQueryString("content"));
- if (content.Trim() != "" && content != "undefined")
- {
- sql += " and (KINFO_KCONTENT like '%" + title + "%'or ReKINFO_KCONTENT like '%" + title + "%' )";
- }
- int state = RequestString.GetInt("state", -1);
- if (state > -1)
- {
- sql += " and F_State ='" + state + "'";
- }
- if (starttime.Trim() != "" && starttime != "undefined")
- {
- sql += " and F_CreateTime >='" + starttime + "'";
- }
- if (strendtime.Trim() != "" && strendtime != "undefined")
- {
- sql += " and F_CreateTime <='" + strendtime + "'";
- }
- #endregion
- int recordCount = 0;
- dt = BLL.PagerBLL.GetListPager(
- "T_Sys_kinfoQuestions a WITH(NOLOCK)",
- "F_Id",
- "*",
- sql,
- "ORDER BY F_CreateTime DESC",
- pagesize,
- pageindex,
- true,
- out recordCount);
- var obj = new
- {
- state = "success",
- message = "成功",
- rows = dt,
- total = recordCount
- };
- return Content(obj.ToJson());
- }
- /// <summary>
- /// 详情
- /// </summary>
- /// <returns></returns>
- //[Authority]
- public ActionResult GetKinfo(int id)
- {
- var model = new BLL.T_Sys_kinfoQuestions().GetModel(id);
- if (model != null)
- {
- return Success("获取成功", model);
- }
- else
- {
- return Error("获取失败");
- }
- }
- public ActionResult Kinforeceive_Push(string paras, string url, string message, string WorkOrderId = "")
- {
- // string jsonParam = "paras=" + paras;
- var responseString = HttpPost(url, paras);
- JObject jo = (JObject)JsonConvert.DeserializeObject(responseString);
- if (jo["code"].ToString() == "1")
- {
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", WorkOrderId, paras, DateTime.Now, jo["code"].ToString(), jo["message"].ToString(), message, "", "");
- object objres = DbHelperSQL.GetSingle(strSql);
- return Success("成功");
- }
- else
- {
- string strSql = string.Format(@"INSERT INTO T_Sys_PushMsg ( [WorkOrderId], [Conent], [CreatTime], [Code], [Message], [Title], [ErrorObjs], [Remarks])
- values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}') ;select @@IDENTITY ", WorkOrderId, paras, DateTime.Now, jo["code"].ToString(), jo["message"].ToString(), message, jo["message"].ToString(), "");
- object objres = DbHelperSQL.GetSingle(strSql);
- return Error(message + jo["message"].ToString());
- }
- }
- public string kinfo_upload(string pathUrl, string newFileName, string path)
- {
- //文件下载地址
- try
- {
- HttpWebRequest request = (HttpWebRequest)WebRequest.Create(pathUrl);
- HttpWebResponse response = request.GetResponse() as HttpWebResponse;
- Stream responseStream = response.GetResponseStream();
- string Currentpath = System.Web.HttpContext.Current.Server.MapPath("..") + path;
- // 如果不存在就创建file文件夹
- if (!Directory.Exists(Currentpath))
- {
- if (Currentpath != null) Directory.CreateDirectory(Currentpath);
- }
- Stream stream = new FileStream(Currentpath + newFileName, FileMode.Create);
- byte[] bArr = new byte[1024];
- int size = responseStream.Read(bArr, 0, bArr.Length);
- while (size > 0)
- {
- stream.Write(bArr, 0, size);
- size = responseStream.Read(bArr, 0, bArr.Length);
- }
- stream.Close();
- responseStream.Close();
- return "1";
- }
- catch (Exception e)
- {
- LogFactory.GetLogger("11").Warn(e.Message);
- return e.Message;
- }
- }
- #endregion
- }
- }
|