new_his_api_controller.go 475KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332103331033410335103361033710338103391034010341103421034310344103451034610347103481034910350103511035210353103541035510356103571035810359103601036110362103631036410365103661036710368103691037010371103721037310374103751037610377103781037910380103811038210383103841038510386103871038810389103901039110392103931039410395103961039710398103991040010401104021040310404104051040610407104081040910410104111041210413104141041510416104171041810419104201042110422104231042410425104261042710428104291043010431104321043310434104351043610437104381043910440104411044210443104441044510446104471044810449104501045110452104531045410455104561045710458104591046010461104621046310464104651046610467104681046910470104711047210473104741047510476104771047810479104801048110482104831048410485104861048710488104891049010491104921049310494104951049610497104981049910500105011050210503105041050510506105071050810509105101051110512105131051410515105161051710518105191052010521105221052310524105251052610527105281052910530105311053210533105341053510536105371053810539105401054110542105431054410545105461054710548105491055010551105521055310554105551055610557105581055910560105611056210563105641056510566105671056810569105701057110572105731057410575105761057710578105791058010581105821058310584105851058610587105881058910590105911059210593105941059510596105971059810599106001060110602106031060410605106061060710608106091061010611106121061310614106151061610617106181061910620106211062210623106241062510626106271062810629106301063110632106331063410635106361063710638106391064010641106421064310644106451064610647106481064910650106511065210653106541065510656106571065810659106601066110662106631066410665106661066710668106691067010671106721067310674106751067610677106781067910680106811068210683106841068510686106871068810689106901069110692106931069410695106961069710698106991070010701107021070310704107051070610707107081070910710107111071210713107141071510716107171071810719107201072110722107231072410725107261072710728107291073010731107321073310734107351073610737107381073910740107411074210743107441074510746107471074810749107501075110752107531075410755107561075710758107591076010761107621076310764107651076610767107681076910770107711077210773107741077510776107771077810779107801078110782107831078410785107861078710788107891079010791107921079310794107951079610797107981079910800108011080210803108041080510806108071080810809108101081110812108131081410815108161081710818108191082010821108221082310824108251082610827108281082910830108311083210833108341083510836108371083810839108401084110842108431084410845108461084710848108491085010851108521085310854108551085610857108581085910860108611086210863108641086510866108671086810869108701087110872108731087410875108761087710878108791088010881108821088310884108851088610887108881088910890108911089210893108941089510896108971089810899109001090110902109031090410905109061090710908109091091010911109121091310914109151091610917109181091910920109211092210923109241092510926109271092810929109301093110932109331093410935109361093710938109391094010941109421094310944109451094610947109481094910950109511095210953109541095510956109571095810959109601096110962109631096410965109661096710968109691097010971109721097310974109751097610977109781097910980109811098210983109841098510986109871098810989109901099110992109931099410995109961099710998109991100011001110021100311004110051100611007110081100911010110111101211013110141101511016110171101811019110201102111022110231102411025110261102711028110291103011031110321103311034110351103611037110381103911040110411104211043110441104511046110471104811049110501105111052110531105411055110561105711058110591106011061110621106311064110651106611067110681106911070110711107211073110741107511076110771107811079110801108111082110831108411085110861108711088110891109011091110921109311094110951109611097110981109911100111011110211103111041110511106111071110811109111101111111112111131111411115111161111711118111191112011121111221112311124111251112611127111281112911130111311113211133111341113511136111371113811139111401114111142111431114411145111461114711148111491115011151111521115311154111551115611157111581115911160111611116211163111641116511166111671116811169111701117111172111731117411175111761117711178111791118011181111821118311184111851118611187111881118911190111911119211193111941119511196111971119811199112001120111202112031120411205112061120711208112091121011211112121121311214112151121611217112181121911220112211122211223112241122511226112271122811229112301123111232112331123411235112361123711238112391124011241112421124311244112451124611247112481124911250112511125211253112541125511256112571125811259112601126111262112631126411265112661126711268112691127011271112721127311274112751127611277112781127911280112811128211283112841128511286112871128811289112901129111292112931129411295112961129711298112991130011301113021130311304113051130611307113081130911310113111131211313113141131511316113171131811319113201132111322113231132411325113261132711328113291133011331113321133311334113351133611337113381133911340113411134211343113441134511346113471134811349113501135111352113531135411355113561135711358113591136011361113621136311364113651136611367113681136911370113711137211373113741137511376113771137811379113801138111382113831138411385113861138711388113891139011391113921139311394113951139611397113981139911400114011140211403114041140511406114071140811409114101141111412114131141411415114161141711418114191142011421114221142311424114251142611427114281142911430114311143211433114341143511436114371143811439114401144111442114431144411445114461144711448114491145011451114521145311454114551145611457114581145911460114611146211463114641146511466114671146811469114701147111472114731147411475114761147711478114791148011481114821148311484114851148611487114881148911490114911149211493114941149511496114971149811499115001150111502115031150411505115061150711508115091151011511115121151311514115151151611517115181151911520115211152211523115241152511526115271152811529115301153111532115331153411535115361153711538115391154011541115421154311544115451154611547115481154911550115511155211553115541155511556115571155811559115601156111562115631156411565115661156711568115691157011571115721157311574115751157611577115781157911580115811158211583115841158511586115871158811589115901159111592115931159411595115961159711598115991160011601116021160311604116051160611607116081160911610116111161211613116141161511616116171161811619116201162111622116231162411625116261162711628116291163011631116321163311634116351163611637116381163911640116411164211643116441164511646116471164811649116501165111652116531165411655116561165711658116591166011661116621166311664116651166611667116681166911670116711167211673116741167511676116771167811679116801168111682116831168411685116861168711688116891169011691116921169311694116951169611697116981169911700117011170211703117041170511706117071170811709117101171111712117131171411715117161171711718117191172011721117221172311724117251172611727117281172911730117311173211733117341173511736117371173811739117401174111742117431174411745117461174711748117491175011751117521175311754117551175611757117581175911760117611176211763117641176511766117671176811769117701177111772117731177411775117761177711778117791178011781117821178311784117851178611787117881178911790117911179211793117941179511796117971179811799118001180111802118031180411805118061180711808118091181011811118121181311814118151181611817118181181911820118211182211823118241182511826118271182811829118301183111832118331183411835118361183711838118391184011841118421184311844118451184611847118481184911850118511185211853118541185511856118571185811859118601186111862118631186411865118661186711868118691187011871118721187311874118751187611877118781187911880118811188211883118841188511886118871188811889118901189111892118931189411895118961189711898118991190011901119021190311904119051190611907119081190911910119111191211913119141191511916119171191811919119201192111922119231192411925119261192711928119291193011931119321193311934119351193611937119381193911940119411194211943119441194511946119471194811949119501195111952119531195411955119561195711958119591196011961119621196311964119651196611967119681196911970119711197211973119741197511976119771197811979119801198111982119831198411985119861198711988119891199011991119921199311994119951199611997119981199912000120011200212003120041200512006120071200812009120101201112012120131201412015120161201712018120191202012021120221202312024120251202612027120281202912030120311203212033120341203512036120371203812039120401204112042120431204412045120461204712048120491205012051120521205312054120551205612057120581205912060120611206212063120641206512066120671206812069120701207112072120731207412075120761207712078120791208012081120821208312084120851208612087120881208912090120911209212093120941209512096120971209812099121001210112102121031210412105121061210712108121091211012111121121211312114121151211612117121181211912120121211212212123121241212512126121271212812129121301213112132121331213412135121361213712138121391214012141121421214312144121451214612147121481214912150121511215212153121541215512156121571215812159121601216112162121631216412165121661216712168121691217012171121721217312174121751217612177121781217912180121811218212183121841218512186121871218812189121901219112192121931219412195121961219712198121991220012201122021220312204122051220612207122081220912210122111221212213122141221512216122171221812219122201222112222122231222412225122261222712228122291223012231122321223312234122351223612237122381223912240122411224212243122441224512246122471224812249122501225112252122531225412255122561225712258122591226012261122621226312264122651226612267122681226912270122711227212273122741227512276122771227812279122801228112282122831228412285122861228712288122891229012291122921229312294122951229612297122981229912300123011230212303123041230512306123071230812309123101231112312123131231412315123161231712318123191232012321123221232312324123251232612327123281232912330123311233212333123341233512336123371233812339123401234112342123431234412345123461234712348123491235012351123521235312354
  1. package gz
  2. //
  3. //import (
  4. // "archive/zip"
  5. // "bytes"
  6. // "encoding/json"
  7. // "fmt"
  8. // "gdyb/controllers"
  9. // "gdyb/enums"
  10. // "gdyb/models"
  11. // "gdyb/service"
  12. // "gdyb/utils"
  13. // "github.com/astaxie/beego"
  14. // "github.com/axgle/mahonia"
  15. // "github.com/shopspring/decimal"
  16. // "io"
  17. // "io/ioutil"
  18. // "math/rand"
  19. // "net/http"
  20. // "os"
  21. // "path/filepath"
  22. // "strconv"
  23. // "strings"
  24. // "syscall"
  25. // "time"
  26. // "unsafe"
  27. //)
  28. //
  29. //type HisApiController struct {
  30. // controllers.BaseAuthAPIController
  31. //}
  32. //
  33. //func NewHisManagerApiRegistRouters() {
  34. // //挂号
  35. // beego.Router("/api/register/get", &HisApiController{}, "get:GetRegisterInfo")
  36. // //上传就诊信息-上传明细-结算
  37. // beego.Router("/api/upload/get", &HisApiController{}, "get:GetUploadInfo")
  38. // //查询
  39. // beego.Router("/api/settle/query", &HisApiController{}, "get:GetSettleAccounts")
  40. // //对总账
  41. // beego.Router("/api/checkaccount/get", &HisApiController{}, "get:GetCheckAccount")
  42. // //对明细
  43. // beego.Router("/api/checkdetailaccount/get", &HisApiController{}, "get:GetCheckDetailAccount")
  44. // //退费,退明细
  45. // beego.Router("/api/refund/post", &HisApiController{}, "get:Refund")
  46. // //退号
  47. // beego.Router("/api/refundnumber/post", &HisApiController{}, "get:RefundNumber")
  48. // //退明细
  49. // beego.Router("/api/refunddetail/post", &HisApiController{}, "get:RefundDetail")
  50. //
  51. // beego.Router("/api/treatment/check", &HisApiController{}, "get:CheckTreatment")
  52. // beego.Router("/api/org/info", &HisApiController{}, "get:GetOrgInfo")
  53. // //beego.Router("/api/readcard", &HisApiController{}, "get:ReadCard")
  54. // beego.Router("/api/presettle/get", &HisApiController{}, "get:GetPreUploadInfo")
  55. // beego.Router("/api/310", &HisApiController{}, "get:Check310")
  56. // beego.Router("/api/390", &HisApiController{}, "get:Check390")
  57. // beego.Router("/api/patient/info", &HisApiController{}, "get:GetPatientInfo")
  58. // beego.Router("/api/checkcode/get", &HisApiController{}, "get:GetCheckCode")
  59. // beego.Router("/api/uncheckcode/get", &HisApiController{}, "get:UnCheckCode")
  60. // beego.Router("/api/psn/putonrecord", &HisApiController{}, "get:PsnPutOnRecord")
  61. // beego.Router("/api/psn/unputonrecord", &HisApiController{}, "get:PsnUnPutOnRecord")
  62. // beego.Router("/api/psn/ncds/putonrecord", &HisApiController{}, "get:PsnPutNCDSOnRecord")
  63. // beego.Router("/api/psn/ncds/unputonrecord", &HisApiController{}, "get:PsnPutUnNCDSOnRecord")
  64. // beego.Router("/api/reversal", &HisApiController{}, "get:ReversalData")
  65. // beego.Router("/api/reversal/other", &HisApiController{}, "get:ReversalOtherData")
  66. // beego.Router("/api/settlelist/get", &HisApiController{}, "get:GetSettleList")
  67. // beego.Router("/api/settlelisthosptial/get", &HisApiController{}, "get:GetSettleListHospital")
  68. //
  69. // beego.Router("/api/pwd/check", &HisApiController{}, "get:CheckCardPWD")
  70. // beego.Router("/api/insutype/check", &HisApiController{}, "get:CheckInsutype")
  71. // beego.Router("/api/batchsettlelist/get", &HisApiController{}, "get:GetBatchSettleList")
  72. // beego.Router("/api/psn/info", &HisApiController{}, "get:GetPsnNcdsInfo")
  73. //
  74. // beego.Router("/api/allopatry/get", &HisApiController{}, "get:GetAllopatry")
  75. // beego.Router("/api/comfirmallopatry/post", &HisApiController{}, "post:ComfirmAllopatry")
  76. // beego.Router("/api/allopatry/refund", &HisApiController{}, "post:RefundAllopatry")
  77. //
  78. // beego.Router("/api/check", &HisApiController{}, "get:Check")
  79. // beego.Router("/api/check3101", &HisApiController{}, "get:Check3101")
  80. // beego.Router("/api/check3102", &HisApiController{}, "get:Check3102")
  81. //
  82. // beego.Router("/90990", &HisApiController{}, "get:CheckCardPWDTwo")
  83. // beego.Router("/9001", &HisApiController{}, "get:Get9001")
  84. // beego.Router("/9002", &HisApiController{}, "get:Get9002")
  85. // beego.Router("/2505", &HisApiController{}, "get:Get2505")
  86. // beego.Router("/2503", &HisApiController{}, "get:Get2503")
  87. // beego.Router("/5301", &HisApiController{}, "get:Get5301")
  88. // beego.Router("/2504", &HisApiController{}, "get:Get2504")
  89. // beego.Router("/1160", &HisApiController{}, "get:Get1160")
  90. // beego.Router("/2001", &HisApiController{}, "get:Get2001")
  91. //
  92. // // beego.Router("/api/gzpatient/get", &HisApiController{}, "get:GetGZPatientInfo")
  93. //
  94. // beego.Router("/api/readelecard", &HisApiController{}, "get:ReadEleCard")
  95. //
  96. //}
  97. //
  98. //// func (c *HisApiController) GetGZPatientInfo() {
  99. //// id_card_no := c.GetString("id_card_no")
  100. //// admin_user_id, _ := c.GetInt64("admin_user_id")
  101. //
  102. //// patient, _ := service.GetPatientByIDCard(id_card_no, c.GetAdminUserInfo().CurrentOrgId)
  103. //
  104. //// if patient.ID == 0 {
  105. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodePatientNoExist)
  106. //// return
  107. //// }
  108. //// role, _ := service.GetAdminUserInfoByID(c.GetAdminUserInfo().CurrentOrgId, admin_user_id)
  109. //// miConfig, _ := service.FindMedicalInsuranceInfo(c.GetAdminUserInfo().CurrentOrgId)
  110. //// config, _ := service.GetMedicalInsuranceConfig(c.GetAdminUserInfo().CurrentOrgId)
  111. //
  112. //// var result string
  113. //// var request_log string
  114. //// var result_log string
  115. //// result, request_log, result_log = service.ZHGdyb1101(patient.IdCardNo, miConfig.OrgName, role.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig. MdtrtareaAdmvs, miConfig.SecretKey, 2, "", 1, patient.Name)
  116. //// var dat map[string]interface{}
  117. //// if err := json.Unmarshal([]byte(result), &dat); err == nil {
  118. //// fmt.Println(dat)
  119. //// } else {
  120. //// fmt.Println(err)
  121. //// }
  122. //
  123. //// userJSONBytes, _ := json.Marshal(dat)
  124. //// var res ResultTwo
  125. //// var resTwo10265 ResultTwo10265
  126. //
  127. //// if miConfig.Code == "H15049901371" {
  128. //// if err := json.Unmarshal(userJSONBytes, &resTwo10265); err != nil {
  129. //// utils.ErrorLog("解析失败:%v", err)
  130. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  131. //// return
  132. //// }
  133. //
  134. //// Infcode, _ := strconv.ParseInt(resTwo10265.Infcode, 10, 64)
  135. //// res.Infcode = Infcode
  136. //// res.ErrMsg = resTwo10265.ErrMsg
  137. //// res.Output = resTwo10265.Output
  138. //// res.InfRefmsgid = resTwo10265.InfRefmsgid
  139. //// res.RespondTime = resTwo10265.RespondTime
  140. //// res.WarnInfo = resTwo10265.WarnInfo
  141. //
  142. //// } else {
  143. //// if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  144. //// utils.ErrorLog("解析失败:%v", err)
  145. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  146. //// return
  147. //// }
  148. //
  149. //// }
  150. //
  151. //// var insutypes []string
  152. //// var insutype string
  153. //// var is390 int = 0
  154. //// var is310 int = 0
  155. //// for _, item := range res.Output.Iinfo {
  156. //// if (item.Insutype == "390" && item.PsnInsuStas == "1") || (item.Insutype == "310" && item.PsnInsuStas == "1") {
  157. //// insutypes = append(insutypes, item.Insutype)
  158. //// }
  159. //// }
  160. //// if len(insutypes) == 1 {
  161. //// insutype = insutypes[0]
  162. //// } else {
  163. //// for _, i := range insutypes {
  164. //// if i == "390" {
  165. //// is390 = 1
  166. //// }
  167. //
  168. //// if i == "310" {
  169. //// is310 = 1
  170. //// }
  171. //// }
  172. //// }
  173. //// if is390 == 1 {
  174. //// insutype = "390"
  175. //// }
  176. //// if is310 == 1 {
  177. //// insutype = "310"
  178. //// }
  179. //// if len(insutypes) == 0 {
  180. //// insutype = "310"
  181. //// }
  182. //// if res.Infcode != 0 {
  183. //// c.ServeSuccessJSON(map[string]interface{}{
  184. //// "failed_code": -10,
  185. //// "msg": res.ErrMsg,
  186. //// })
  187. //// } else {
  188. //// c.ServeSuccessJSON(map[string]interface{}{
  189. //// "failed_code": 0,
  190. //// "info": res,
  191. //// "insutype": insutype,
  192. //// })
  193. //// }
  194. //
  195. //// }
  196. //func (c *HisApiController) Get9002() {
  197. // adminUser := c.GetAdminUserInfo()
  198. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  199. // roles, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, 185)
  200. // service.Gdyb9002(miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, 1669)
  201. //
  202. //}
  203. //func (c *HisApiController) Get2001() {
  204. //
  205. // adminUser := c.GetAdminUserInfo()
  206. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  207. //
  208. // baseParams := models.BaseParams{
  209. // SecretKey: "h1hEqxQm12ryULCgPKolkid8S9hZFu6M",
  210. // FixmedinsCode: miConfig.Code,
  211. // InsuplcAdmdvs: "441599",
  212. // MdtrtareaAdmvs: "440100",
  213. // OrgName: miConfig.OrgName,
  214. // Doctor: "1111",
  215. // }
  216. // service.Gdyb2001(baseParams, "441500CS000000301426", "310", "11")
  217. //}
  218. //func (c *HisApiController) Get1160() {
  219. //
  220. // adminUser := c.GetAdminUserInfo()
  221. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  222. //
  223. // baseParams := models.BaseParams{
  224. // SecretKey: "h1hEqxQm12ryULCgPKolkid8S9hZFu6M",
  225. // FixmedinsCode: miConfig.Code,
  226. // InsuplcAdmdvs: "440100",
  227. // MdtrtareaAdmvs: "440100",
  228. // OrgName: miConfig.OrgName,
  229. // Doctor: "1111",
  230. // }
  231. // service.Gdyb1160(baseParams, "441500CS000000301426", "310", "14")
  232. //}
  233. //
  234. //func (c *HisApiController) Get2504() {
  235. // adminUser := c.GetAdminUserInfo()
  236. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  237. // result := service.Gdyb2504("441500CS000000301426", miConfig.OrgName, "admin", miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, "20220629626617")
  238. // fmt.Println(result)
  239. //
  240. //}
  241. //
  242. //func (c *HisApiController) Get5301() {
  243. // adminUser := c.GetAdminUserInfo()
  244. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  245. // result := service.Gdyb5301("44010000003501822495", miConfig.OrgName, "admin", miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey)
  246. // fmt.Println(result)
  247. //
  248. //}
  249. //func (c *HisApiController) Get2505() {
  250. // adminUser := c.GetAdminUserInfo()
  251. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  252. // result := service.Gdyb2505("44010000003501822495", "admin", miConfig.OrgName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, "2022-01-01 12:35:39", "2022-12-30 12:35:39")
  253. // fmt.Println(result)
  254. //}
  255. //
  256. //func (c *HisApiController) Get2503() {
  257. //
  258. // adminUser := c.GetAdminUserInfo()
  259. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  260. // result := service.Gdyb2503ForGz("441500CS000000301426", "310", miConfig.OrgName, "方军", miConfig.Code, "1", "441599", miConfig.MdtrtareaAdmvs, miConfig.SecretKey, "慢性肾功能不全(血液治疗)", "M07803", "2022-01-01 12:35:39", "2022-12-30 12:35:39", "2022-06-28 00:00:00")
  261. // fmt.Println(result)
  262. //}
  263. //
  264. //func (c *HisApiController) Get9001() {
  265. // adminUser := c.GetAdminUserInfo()
  266. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  267. // roles, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, 185)
  268. // result, inputLog := service.Gdyb9001(miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, 1669)
  269. // var dat map[string]interface{}
  270. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  271. // fmt.Println(dat)
  272. // } else {
  273. // fmt.Println(err)
  274. // }
  275. // userJSONBytes, _ := json.Marshal(dat)
  276. // var res models.Result9001
  277. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  278. // utils.ErrorLog("解析失败:%v", err)
  279. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  280. // return
  281. // }
  282. // if res.Infcode == 0 {
  283. // sign := models.HisSignIn{
  284. // UserOrgId: c.GetAdminUserInfo().CurrentOrgId,
  285. // SignNo: res.Output.Result.SignNo,
  286. // SignTime: res.Output.Result.SignTime,
  287. // Ctime: time.Now().Unix(),
  288. // Mtime: time.Now().Unix(),
  289. // Status: 1,
  290. // InputLog: inputLog,
  291. // OutputLog: result,
  292. // FixmedinsCode: miConfig.Code,
  293. // }
  294. // err := service.CreateSignIn(&sign)
  295. // if err == nil {
  296. // c.ServeSuccessJSON(map[string]interface{}{
  297. // "msg": "签到成功",
  298. // })
  299. // }
  300. // }
  301. //}
  302. //func (c *HisApiController) Check3101() {
  303. // patient_id, _ := c.GetInt64("patient_id")
  304. // his_patient_id, _ := c.GetInt64("his_patient_id")
  305. // admin_user_id, _ := c.GetInt64("admin_user_id")
  306. // adminUser := c.GetAdminUserInfo()
  307. // roles, _ := service.GetAdminUserInfoByID(c.GetAdminUserInfo().CurrentOrgId, admin_user_id)
  308. // his, _ := service.GetNewHisPatientInfoFour(c.GetAdminUserInfo().CurrentOrgId, his_patient_id)
  309. // miConfig, _ := service.FindMedicalInsuranceInfo(c.GetAdminUserInfo().CurrentOrgId)
  310. // record_time := c.GetString("record_time")
  311. // trig_scen := c.GetString("trig_scen")
  312. //
  313. // timeLayout := "2006-01-02"
  314. // loc, _ := time.LoadLocation("Local")
  315. // theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_time+" 00:00:00", loc)
  316. // if err != nil {
  317. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  318. // return
  319. // }
  320. // recordDateTime := theTime.Unix()
  321. //
  322. // var patientPrescription models.HisPrescriptionInfo
  323. // patientPrescription, _ = service.FindHisPatientPrescriptionInfo(adminUser.CurrentOrgId, his_patient_id, recordDateTime)
  324. // if patientPrescription.ID == 0 {
  325. // patientPrescription, _ = service.FindLastPatientPrescriptionInfo(adminUser.CurrentOrgId, patient_id, recordDateTime)
  326. // }
  327. // department, _ := service.GetDepartMentDetail(patientPrescription.Departments)
  328. // doctor_info, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, patientPrescription.DoctorId)
  329. // //
  330. // diagnosis_ids := strings.Split(patientPrescription.Diagnosis, ",")
  331. //
  332. // prescriptions, _ := service.GetNewHisPrescriptionTen(adminUser.CurrentOrgId, his_patient_id, recordDateTime)
  333. //
  334. // var pp models.PublicParams
  335. // pp.InsuplcAdmdvs = miConfig.InsuplcAdmdvs
  336. // pp.MdtrtareaAdmvs = miConfig.MdtrtareaAdmvs
  337. // pp.FixmedinsName = miConfig.OrgName
  338. // pp.FixmedinsCode = miConfig.Code
  339. //
  340. // pp.RequestUrl = miConfig.Url
  341. // pp.Cainfo = miConfig.Cainfo
  342. // pp.SecretKey = miConfig.SecretKey
  343. // pp.AccessKey = miConfig.AccessKey
  344. // pp.OpterName = roles.UserName
  345. //
  346. // var config []*models.HisXtDiagnoseConfig
  347. // for _, item := range diagnosis_ids {
  348. // id, _ := strconv.ParseInt(item, 10, 64)
  349. // diagnosisConfig, _ := service.FindDiagnoseById(id)
  350. // config = append(config, &diagnosisConfig)
  351. // }
  352. //
  353. // var pd models.PatientDtos
  354. // pd.PatnID = his.PsnNo
  355. // pd.PatnName = his.Name
  356. // pd.Gend = his.Gend
  357. // pd.Brdy = his.Brdy
  358. // pd.Poolarea = his.InsuplcAdmdvs
  359. // pd.CurrMdtrtID = his.Number
  360. //
  361. // var fed models.FsiEncounterDtos
  362. // fed.MdtrtID = his.Number
  363. // fed.MedinsID = miConfig.Code
  364. // fed.MedinsName = miConfig.OrgName
  365. // fed.MedinsAdmdvs = miConfig.MdtrtareaAdmvs
  366. // fed.MedMdtrtType = "1"
  367. // fed.MedinsType = "1"
  368. // fed.MedinsLv = "11"
  369. // tm := time.Unix(his.RecordDate, 0)
  370. // s_tm := tm.Format("2006-01-02 15:04:05")
  371. // fed.AdmDate = s_tm
  372. // fed.DscgDate = s_tm
  373. // fed.DscgMainDiseCodg = config[0].CountryCode
  374. // fed.DscgMainDiseName = config[0].CountryContentName
  375. // //诊断信息
  376. // var fdds []*models.FsiDiagnoseDtos
  377. // for index, item := range config {
  378. // if index == 0 {
  379. // var fdd models.FsiDiagnoseDtos
  380. // fdd.DiseID = strconv.FormatInt(item.ID, 10)
  381. // fdd.InoutDiseType = "1"
  382. // fdd.MaindiseFlag = "1"
  383. // fdd.DiseDate = s_tm
  384. // fdd.DiasSrtNo = "1"
  385. // fdd.DiseName = item.CountryContentName
  386. // fdd.DiseCodg = item.CountryCode
  387. // fdds = append(fdds, &fdd)
  388. //
  389. // } else {
  390. // var fdd models.FsiDiagnoseDtos
  391. // fdd.DiseID = strconv.FormatInt(item.ID, 10)
  392. // fdd.InoutDiseType = "1"
  393. // fdd.MaindiseFlag = "1"
  394. // fdd.DiseDate = s_tm
  395. // fdd.DiasSrtNo = strconv.FormatInt(int64(index), 10)
  396. // fdd.DiseName = item.CountryContentName
  397. // fdd.DiseCodg = item.CountryCode
  398. // fdds = append(fdds, &fdd)
  399. // }
  400. // }
  401. // fed.DrCodg = strconv.FormatInt(doctor_info.ID, 10)
  402. // fed.AdmDeptCodg = strconv.FormatInt(department.ID, 10)
  403. // fed.AdmDeptName = department.Name
  404. // fed.DscgDeptCodg = strconv.FormatInt(department.ID, 10)
  405. // fed.DscgDeptName = department.Name
  406. // fed.MedMdtrtType = "1"
  407. // fed.MedType = "11"
  408. // //if his.Insutype == "390" {
  409. // // fed.MedType = "1402"
  410. // //} else {
  411. // // fed.MedType = "9933"
  412. // //}
  413. // var orders []*models.FsiOrderDtos
  414. //
  415. // if trig_scen == "2" {
  416. // //处方医嘱信息
  417. // for _, item := range prescriptions {
  418. // for _, subItem := range item.HisDoctorAdviceInfo {
  419. // var order models.FsiOrderDtos
  420. // order.RxID = strconv.FormatInt(item.ID, 10)
  421. // order.Rxno = strconv.FormatInt(item.ID, 10)
  422. // order.LongDrordFlag = "0"
  423. // order.HilistType = "1"
  424. // order.ChrgType = "1"
  425. // order.DrordBhvr = "-"
  426. // order.HilistCode = subItem.BaseDrugLib.MedicalInsuranceNumber
  427. // order.HosplistName = subItem.BaseDrugLib.DrugName
  428. // order.HilistLv = "1"
  429. // order.HilistPric = fmt.Sprintf("%.2f", subItem.Price)
  430. // order.HosplistCode = subItem.BaseDrugLib.MedicalInsuranceNumber
  431. // order.HosplistName = subItem.BaseDrugLib.DrugName
  432. // order.Cnt = fmt.Sprintf("%.2f", subItem.PrescribingNumber)
  433. // order.Pric = fmt.Sprintf("%.2f", subItem.Price)
  434. // order.Sumamt = fmt.Sprintf("%.2f", (subItem.PrescribingNumber * subItem.Price))
  435. // order.OwnpayAmt = ""
  436. // order.SelfpayAmt = ""
  437. // order.Spec = ""
  438. // order.SpecUnt = ""
  439. // order.DrordBegnDate = s_tm
  440. // order.DrordStopDate = ""
  441. // order.DrordDrCodg = "1"
  442. // order.DrordDeptName = department.Name
  443. // order.DrordDrCodg = "1"
  444. // order.DrordDrName = doctor_info.UserName
  445. // order.DrordDrProfttl = ""
  446. // order.CurrDrordFlag = "1"
  447. // orders = append(orders, &order)
  448. // }
  449. // for _, subItem := range item.HisPrescriptionProject {
  450. // if subItem.Type == 2 {
  451. // var order models.FsiOrderDtos
  452. // order.RxID = strconv.FormatInt(item.ID, 10)
  453. // order.Rxno = strconv.FormatInt(item.ID, 10)
  454. // order.LongDrordFlag = "0"
  455. // order.HilistType = "1"
  456. // order.ChrgType = "1"
  457. // order.DrordBhvr = "-"
  458. // order.HilistCode = subItem.HisProject.MedicalCode
  459. // order.HosplistName = subItem.HisProject.ProjectName
  460. // order.HilistLv = "1"
  461. // order.HilistPric = fmt.Sprintf("%.2f", subItem.Price)
  462. // order.HosplistCode = subItem.HisProject.MedicalCode
  463. // order.HosplistName = subItem.HisProject.ProjectName
  464. // order.Cnt = subItem.Count
  465. // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
  466. // order.Pric = fmt.Sprintf("%.2f", subItem.Price)
  467. // order.Sumamt = fmt.Sprintf("%.2f", subItem.Price*cnt)
  468. // order.OwnpayAmt = ""
  469. // order.SelfpayAmt = ""
  470. // order.Spec = ""
  471. // order.SpecUnt = ""
  472. // order.DrordBegnDate = s_tm
  473. // order.DrordStopDate = ""
  474. // order.DrordDrCodg = "1"
  475. // order.DrordDeptName = department.Name
  476. // order.DrordDrCodg = "1"
  477. // order.DrordDrName = doctor_info.UserName
  478. // order.DrordDrProfttl = ""
  479. // order.CurrDrordFlag = "1"
  480. // orders = append(orders, &order)
  481. //
  482. // }
  483. // if subItem.Type == 3 {
  484. //
  485. // var order models.FsiOrderDtos
  486. // order.RxID = strconv.FormatInt(item.ID, 10)
  487. // order.Rxno = strconv.FormatInt(item.ID, 10)
  488. // order.LongDrordFlag = "0"
  489. // order.HilistType = "1"
  490. // order.ChrgType = "1"
  491. // order.DrordBhvr = "-"
  492. // order.HilistCode = subItem.GoodInfo.MedicalInsuranceNumber
  493. // order.HosplistName = subItem.GoodInfo.GoodName
  494. // order.HilistLv = "1"
  495. // order.HilistPric = fmt.Sprintf("%.2f", subItem.Price)
  496. // order.HosplistCode = subItem.GoodInfo.MedicalInsuranceNumber
  497. // order.HosplistName = subItem.GoodInfo.GoodName
  498. // order.Cnt = subItem.Count
  499. // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
  500. // order.Pric = fmt.Sprintf("%.2f", subItem.Price)
  501. // order.Sumamt = fmt.Sprintf("%.2f", subItem.Price*cnt)
  502. // order.OwnpayAmt = ""
  503. // order.SelfpayAmt = ""
  504. // order.Spec = ""
  505. // order.SpecUnt = ""
  506. // order.DrordBegnDate = s_tm
  507. // order.DrordStopDate = ""
  508. // order.DrordDrCodg = "1"
  509. // order.DrordDeptName = department.Name
  510. // order.DrordDrCodg = "1"
  511. // order.DrordDrName = doctor_info.UserName
  512. // order.DrordDrProfttl = ""
  513. // order.CurrDrordFlag = "1"
  514. // orders = append(orders, &order)
  515. //
  516. // }
  517. // }
  518. // }
  519. // //处方医嘱信息
  520. // }
  521. // fed.MatnStas = "0"
  522. // fed.MedfeeSumamt = "0"
  523. // fed.OwnpayAmt = "0"
  524. // fed.SelfpayAmt = "0"
  525. // fed.AcctPayamt = "0"
  526. // fed.MaAmt = "0"
  527. // fed.HifpPayamt = "0"
  528. // fed.SetlTotlnum = "1"
  529. // fed.Insutype = his.Insutype
  530. // fed.ReimFlag = "0"
  531. // fed.OutSetlFlag = "0"
  532. //
  533. // var fopd []*models.FsiOperationDtosData
  534. // data := make(map[string]interface{})
  535. // data["fed"] = fed
  536. // data["fdd"] = fdds
  537. // data["fod"] = orders
  538. // data["pd"] = pd
  539. // data["pp"] = pp
  540. // data["fopd"] = fopd
  541. // data["trig_scen"] = trig_scen
  542. // fmt.Println(data)
  543. // fmt.Println(fed)
  544. // fmt.Println(fdds)
  545. // fmt.Println(orders)
  546. // fmt.Println(pd)
  547. // fmt.Println(pp)
  548. // fmt.Println(fopd)
  549. //
  550. // client := &http.Client{}
  551. // bytesData, _ := json.Marshal(data)
  552. // var req *http.Request
  553. //
  554. // if miConfig.MdtrtareaAdmvs == "320921" {
  555. // req, _ = http.NewRequest("POST", "http://192.168.3.111:9532/"+"jsyb/3101", bytes.NewReader(bytesData))
  556. // } else {
  557. // req, _ = http.NewRequest("POST", "http://192.168.5.251:9532/"+"jsyb/3101", bytes.NewReader(bytesData))
  558. // }
  559. //
  560. // resp, _ := client.Do(req)
  561. // defer resp.Body.Close()
  562. // body, ioErr := ioutil.ReadAll(resp.Body)
  563. // if ioErr != nil {
  564. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  565. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  566. // return
  567. // }
  568. // var respJSON map[string]interface{}
  569. // if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
  570. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  571. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  572. // return
  573. // }
  574. //
  575. // //手术操作集合
  576. // //手术操作集合
  577. //
  578. //}
  579. //
  580. //func (c *HisApiController) Check3102() {
  581. // patient_id, _ := c.GetInt64("patient_id")
  582. // order_id, _ := c.GetInt64("order_id")
  583. // his_patient_id, _ := c.GetInt64("his_patient_id")
  584. // admin_user_id, _ := c.GetInt64("admin_user_id")
  585. // trig_scen := c.GetString("trig_scen")
  586. //
  587. // adminUser := c.GetAdminUserInfo()
  588. // roles, _ := service.GetAdminUserInfoByID(c.GetAdminUserInfo().CurrentOrgId, admin_user_id)
  589. // his, _ := service.GetNewHisPatientInfoFour(c.GetAdminUserInfo().CurrentOrgId, his_patient_id)
  590. // miConfig, _ := service.FindMedicalInsuranceInfo(c.GetAdminUserInfo().CurrentOrgId)
  591. // record_time := c.GetString("record_time")
  592. // order, _ := service.GetHisOrderByID(order_id)
  593. //
  594. // timeLayout := "2006-01-02"
  595. // loc, _ := time.LoadLocation("Local")
  596. // theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_time+" 00:00:00", loc)
  597. // if err != nil {
  598. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  599. // return
  600. // }
  601. // recordDateTime := theTime.Unix()
  602. //
  603. // var patientPrescription models.HisPrescriptionInfo
  604. // patientPrescription, _ = service.FindHisPatientPrescriptionInfo(adminUser.CurrentOrgId, his_patient_id, recordDateTime)
  605. // if patientPrescription.ID == 0 {
  606. // patientPrescription, _ = service.FindLastPatientPrescriptionInfo(adminUser.CurrentOrgId, patient_id, recordDateTime)
  607. // }
  608. // department, _ := service.GetDepartMentDetail(patientPrescription.Departments)
  609. // doctor_info, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, patientPrescription.DoctorId)
  610. // //
  611. // diagnosis_ids := strings.Split(his.Diagnosis, ",")
  612. //
  613. // prescriptions, _ := service.GetNewHisPrescriptionTen(adminUser.CurrentOrgId, his_patient_id, recordDateTime)
  614. //
  615. // var pp models.PublicParams
  616. // pp.InsuplcAdmdvs = miConfig.InsuplcAdmdvs
  617. // pp.MdtrtareaAdmvs = miConfig.MdtrtareaAdmvs
  618. // pp.FixmedinsName = miConfig.OrgName
  619. // pp.FixmedinsCode = miConfig.Code
  620. // pp.RequestUrl = miConfig.Url
  621. // pp.Cainfo = miConfig.Cainfo
  622. // pp.SecretKey = miConfig.SecretKey
  623. // pp.AccessKey = miConfig.AccessKey
  624. // pp.OpterName = roles.UserName
  625. //
  626. // var config []*models.HisXtDiagnoseConfig
  627. // for _, item := range diagnosis_ids {
  628. // id, _ := strconv.ParseInt(item, 10, 64)
  629. // diagnosisConfig, _ := service.FindDiagnoseById(id)
  630. // config = append(config, &diagnosisConfig)
  631. // }
  632. //
  633. // var pd models.PatientDtos
  634. // pd.PatnID = his.PsnNo
  635. // pd.PatnName = his.Name
  636. // pd.Gend = his.Gend
  637. // pd.Brdy = his.Brdy
  638. // pd.Poolarea = his.InsuplcAdmdvs
  639. // pd.CurrMdtrtID = his.Number
  640. //
  641. // var fed models.FsiEncounterDtos
  642. // fed.MdtrtID = his.Number
  643. // fed.MedinsID = miConfig.Code
  644. // fed.MedinsName = miConfig.OrgName
  645. // fed.MedinsAdmdvs = miConfig.MdtrtareaAdmvs
  646. // fed.MedMdtrtType = "1"
  647. // fed.MedinsType = "1"
  648. // fed.MedinsLv = "11"
  649. // tm := time.Unix(his.RecordDate, 0)
  650. // s_tm := tm.Format("2006-01-02 15:04:05")
  651. // fed.AdmDate = s_tm
  652. // fed.DscgDate = s_tm
  653. // fed.DscgMainDiseCodg = config[0].CountryCode
  654. // fed.DscgMainDiseName = config[0].CountryContentName
  655. // //诊断信息
  656. // var fdds []*models.FsiDiagnoseDtos
  657. // for index, item := range config {
  658. // if index == 0 {
  659. // var fdd models.FsiDiagnoseDtos
  660. // fdd.DiseID = strconv.FormatInt(item.ID, 10)
  661. // fdd.InoutDiseType = "1"
  662. // fdd.MaindiseFlag = "1"
  663. // fdd.DiseDate = s_tm
  664. // fdd.DiasSrtNo = "1"
  665. // fdd.DiseName = item.CountryContentName
  666. // fdd.DiseCodg = item.CountryCode
  667. // fdds = append(fdds, &fdd)
  668. //
  669. // } else {
  670. // var fdd models.FsiDiagnoseDtos
  671. // fdd.DiseID = strconv.FormatInt(item.ID, 10)
  672. // fdd.InoutDiseType = "1"
  673. // fdd.MaindiseFlag = "1"
  674. // fdd.DiseDate = s_tm
  675. // fdd.DiasSrtNo = strconv.FormatInt(int64(index), 10)
  676. // fdd.DiseName = item.CountryContentName
  677. // fdd.DiseCodg = item.CountryCode
  678. // fdds = append(fdds, &fdd)
  679. // }
  680. // }
  681. // fed.DrCodg = strconv.FormatInt(doctor_info.ID, 10)
  682. // fed.AdmDeptCodg = strconv.FormatInt(department.ID, 10)
  683. // fed.AdmDeptName = department.Name
  684. // fed.DscgDeptCodg = strconv.FormatInt(department.ID, 10)
  685. // fed.DscgDeptName = department.Name
  686. //
  687. // fed.MedType = order.MedType
  688. // //处方医嘱信息
  689. // var orders []*models.FsiOrderDtos
  690. // //for _, item := range prescriptions {
  691. // // for _, subItem := range item.HisDoctorAdviceInfo {
  692. // // var order models.FsiOrderDtos
  693. // // order.RxID = strconv.FormatInt(item.ID, 10)
  694. // // order.Rxno = strconv.FormatInt(item.ID, 10)
  695. // // order.LongDrordFlag = "0"
  696. // // order.HilistType = "1"
  697. // // order.ChrgType = "1"
  698. // // order.DrordBhvr = "-"
  699. // // order.HilistCode = subItem.BaseDrugLib.MedicalInsuranceNumber
  700. // // order.HosplistName = subItem.BaseDrugLib.DrugName
  701. // // order.HilistLv = "1"
  702. // // order.HilistPric = strconv.FormatFloat(subItem.Price, 'E', -1, 64)
  703. // // order.HosplistCode = subItem.BaseDrugLib.MedicalInsuranceNumber
  704. // // order.HosplistName = subItem.BaseDrugLib.DrugName
  705. // // order.Cnt = strconv.FormatFloat(subItem.PrescribingNumber, 'E', -1, 64)
  706. // // order.Pric = strconv.FormatFloat(subItem.Price, 'E', -1, 64)
  707. // // order.Sumamt = strconv.FormatFloat((subItem.Price * subItem.PrescribingNumber), 'E', -1, 64)
  708. // // order.OwnpayAmt = ""
  709. // // order.SelfpayAmt = ""
  710. // // order.Spec = ""
  711. // // order.SpecUnt = ""
  712. // // order.DrordBegnDate = s_tm
  713. // // order.DrordStopDate = ""
  714. // // order.DrordDrCodg = "1"
  715. // // order.DrordDeptName = department.Name
  716. // // order.DrordDrCodg = "1"
  717. // // order.DrordDrName = doctor_info.UserName
  718. // // order.DrordDrProfttl = ""
  719. // // order.CurrDrordFlag = "1"
  720. // // orders = append(orders, &order)
  721. // // }
  722. // // for _, subItem := range item.HisPrescriptionProject {
  723. // // if subItem.Type == 2 {
  724. // // var order models.FsiOrderDtos
  725. // // order.RxID = strconv.FormatInt(item.ID, 10)
  726. // // order.Rxno = strconv.FormatInt(item.ID, 10)
  727. // // order.LongDrordFlag = "0"
  728. // // order.HilistType = "1"
  729. // // order.ChrgType = "1"
  730. // // order.DrordBhvr = "-"
  731. // // order.HilistCode = subItem.HisProject.MedicalCode
  732. // // order.HosplistName = subItem.HisProject.ProjectName
  733. // // order.HilistLv = "1"
  734. // // order.HilistPric = strconv.FormatFloat(subItem.Price, 'E', -1, 64)
  735. // // order.HosplistCode = subItem.HisProject.MedicalCode
  736. // // order.HosplistName = subItem.HisProject.ProjectName
  737. // // order.Cnt = subItem.Count
  738. // // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
  739. // //
  740. // // order.Pric = strconv.FormatFloat(subItem.Price, 'E', -1, 64)
  741. // // order.Sumamt = strconv.FormatFloat((subItem.Price * cnt), 'E', -1, 64)
  742. // // order.OwnpayAmt = ""
  743. // // order.SelfpayAmt = ""
  744. // // order.Spec = ""
  745. // // order.SpecUnt = ""
  746. // // order.DrordBegnDate = s_tm
  747. // // order.DrordStopDate = ""
  748. // // order.DrordDrCodg = "1"
  749. // // order.DrordDeptName = department.Name
  750. // // order.DrordDrCodg = "1"
  751. // // order.DrordDrName = doctor_info.UserName
  752. // // order.DrordDrProfttl = ""
  753. // // order.CurrDrordFlag = "1"
  754. // // orders = append(orders, &order)
  755. // //
  756. // // }
  757. // // if subItem.Type == 3 {
  758. // //
  759. // // var order models.FsiOrderDtos
  760. // // order.RxID = strconv.FormatInt(item.ID, 10)
  761. // // order.Rxno = strconv.FormatInt(item.ID, 10)
  762. // // order.LongDrordFlag = "0"
  763. // // order.HilistType = "1"
  764. // // order.ChrgType = "1"
  765. // // order.DrordBhvr = "-"
  766. // // order.HilistCode = subItem.GoodInfo.MedicalInsuranceNumber
  767. // // order.HosplistName = subItem.GoodInfo.GoodName
  768. // // order.HilistLv = "1"
  769. // // order.HilistPric = strconv.FormatFloat(subItem.Price, 'E', -1, 64)
  770. // // order.HosplistCode = subItem.GoodInfo.MedicalInsuranceNumber
  771. // // order.HosplistName = subItem.GoodInfo.GoodName
  772. // // order.Cnt = subItem.Count
  773. // // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
  774. // // order.Pric = strconv.FormatFloat(subItem.Price, 'E', -1, 64)
  775. // // order.Sumamt = strconv.FormatFloat((subItem.Price * cnt), 'E', -1, 64)
  776. // // order.OwnpayAmt = ""
  777. // // order.SelfpayAmt = ""
  778. // // order.Spec = ""
  779. // // order.SpecUnt = ""
  780. // // order.DrordBegnDate = s_tm
  781. // // order.DrordStopDate = ""
  782. // // order.DrordDrCodg = "1"
  783. // // order.DrordDeptName = department.Name
  784. // // order.DrordDrCodg = "1"
  785. // // order.DrordDrName = doctor_info.UserName
  786. // // order.DrordDrProfttl = ""
  787. // // order.CurrDrordFlag = "1"
  788. // // orders = append(orders, &order)
  789. // //
  790. // // }
  791. // // }
  792. // //}
  793. // for _, item := range prescriptions {
  794. // for _, subItem := range item.HisDoctorAdviceInfo {
  795. // var order models.FsiOrderDtos
  796. // order.RxID = strconv.FormatInt(item.ID, 10)
  797. // order.Rxno = strconv.FormatInt(item.ID, 10)
  798. // order.LongDrordFlag = "0"
  799. // order.HilistType = "1"
  800. // order.ChrgType = "1"
  801. // order.DrordBhvr = "-"
  802. // order.HilistCode = subItem.BaseDrugLib.MedicalInsuranceNumber
  803. // order.HosplistName = subItem.BaseDrugLib.DrugName
  804. // order.HilistLv = "1"
  805. // order.HilistPric = fmt.Sprintf("%.2f", subItem.Price)
  806. // order.HosplistCode = subItem.BaseDrugLib.MedicalInsuranceNumber
  807. // order.HosplistName = subItem.BaseDrugLib.DrugName
  808. // order.Cnt = fmt.Sprintf("%.2f", subItem.PrescribingNumber)
  809. // order.Pric = fmt.Sprintf("%.2f", subItem.Price)
  810. // order.Sumamt = fmt.Sprintf("%.2f", (subItem.PrescribingNumber * subItem.Price))
  811. // order.OwnpayAmt = ""
  812. // order.SelfpayAmt = ""
  813. // order.Spec = ""
  814. // order.SpecUnt = ""
  815. // order.DrordBegnDate = s_tm
  816. // order.DrordStopDate = ""
  817. // order.DrordDrCodg = "1"
  818. // order.DrordDeptName = department.Name
  819. // order.DrordDrCodg = "1"
  820. // order.DrordDrName = doctor_info.UserName
  821. // order.DrordDrProfttl = ""
  822. // order.CurrDrordFlag = "1"
  823. // orders = append(orders, &order)
  824. // }
  825. // for _, subItem := range item.HisPrescriptionProject {
  826. // if subItem.Type == 2 {
  827. // var order models.FsiOrderDtos
  828. // order.RxID = strconv.FormatInt(item.ID, 10)
  829. // order.Rxno = strconv.FormatInt(item.ID, 10)
  830. // order.LongDrordFlag = "0"
  831. // order.HilistType = "1"
  832. // order.ChrgType = "1"
  833. // order.DrordBhvr = "-"
  834. // order.HilistCode = subItem.HisProject.MedicalCode
  835. // order.HosplistName = subItem.HisProject.ProjectName
  836. // order.HilistLv = "1"
  837. // order.HilistPric = fmt.Sprintf("%.2f", subItem.Price)
  838. // order.HosplistCode = subItem.HisProject.MedicalCode
  839. // order.HosplistName = subItem.HisProject.ProjectName
  840. // order.Cnt = subItem.Count
  841. // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
  842. // order.Pric = fmt.Sprintf("%.2f", subItem.Price)
  843. // order.Sumamt = fmt.Sprintf("%.2f", subItem.Price*cnt)
  844. // order.OwnpayAmt = ""
  845. // order.SelfpayAmt = ""
  846. // order.Spec = ""
  847. // order.SpecUnt = ""
  848. // order.DrordBegnDate = s_tm
  849. // order.DrordStopDate = ""
  850. // order.DrordDrCodg = "1"
  851. // order.DrordDeptName = department.Name
  852. // order.DrordDrCodg = "1"
  853. // order.DrordDrName = doctor_info.UserName
  854. // order.DrordDrProfttl = ""
  855. // order.CurrDrordFlag = "1"
  856. // orders = append(orders, &order)
  857. //
  858. // }
  859. // if subItem.Type == 3 {
  860. //
  861. // var order models.FsiOrderDtos
  862. // order.RxID = strconv.FormatInt(item.ID, 10)
  863. // order.Rxno = strconv.FormatInt(item.ID, 10)
  864. // order.LongDrordFlag = "0"
  865. // order.HilistType = "1"
  866. // order.ChrgType = "1"
  867. // order.DrordBhvr = "-"
  868. // order.HilistCode = subItem.GoodInfo.MedicalInsuranceNumber
  869. // order.HosplistName = subItem.GoodInfo.GoodName
  870. // order.HilistLv = "1"
  871. // order.HilistPric = fmt.Sprintf("%.2f", subItem.Price)
  872. // order.HosplistCode = subItem.GoodInfo.MedicalInsuranceNumber
  873. // order.HosplistName = subItem.GoodInfo.GoodName
  874. // order.Cnt = subItem.Count
  875. // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
  876. // order.Pric = fmt.Sprintf("%.2f", subItem.Price)
  877. // order.Sumamt = fmt.Sprintf("%.2f", subItem.Price*cnt)
  878. // order.OwnpayAmt = ""
  879. // order.SelfpayAmt = ""
  880. // order.Spec = ""
  881. // order.SpecUnt = ""
  882. // order.DrordBegnDate = s_tm
  883. // order.DrordStopDate = ""
  884. // order.DrordDrCodg = "1"
  885. // order.DrordDeptName = department.Name
  886. // order.DrordDrCodg = "1"
  887. // order.DrordDrName = doctor_info.UserName
  888. // order.DrordDrProfttl = ""
  889. // order.CurrDrordFlag = "1"
  890. // orders = append(orders, &order)
  891. //
  892. // }
  893. // }
  894. // }
  895. // //处方医嘱信息
  896. // fed.MatnStas = "0"
  897. // fed.MedfeeSumamt = fmt.Sprintf("%.2f", order.MedfeeSumamt)
  898. // fed.OwnpayAmt = fmt.Sprintf("%.2f", order.FulamtOwnpayAmt)
  899. // fed.SelfpayAmt = fmt.Sprintf("%.2f", order.PreselfpayAmt)
  900. // fed.AcctPayamt = fmt.Sprintf("%.2f", order.AcctPay)
  901. // fed.MaAmt = fmt.Sprintf("%.2f", order.MafPay)
  902. // fed.HifpPayamt = fmt.Sprintf("%.2f", order.HifpPay)
  903. // fed.SetlTotlnum = "1"
  904. // fed.Insutype = his.Insutype
  905. // fed.ReimFlag = "0"
  906. // fed.OutSetlFlag = "0"
  907. //
  908. // var fopd []*models.FsiOperationDtosData
  909. // data := make(map[string]interface{})
  910. // data["fed"] = fed
  911. // data["fdd"] = fdds
  912. // data["fod"] = orders
  913. // data["pd"] = pd
  914. // data["pp"] = pp
  915. // data["fopd"] = fopd
  916. // data["trig_scen"] = trig_scen
  917. //
  918. // client := &http.Client{}
  919. // bytesData, _ := json.Marshal(data)
  920. // var req *http.Request
  921. // if miConfig.MdtrtareaAdmvs == "320921" {
  922. // req, _ = http.NewRequest("POST", "http://192.168.3.111:9532/"+"jsyb/3102", bytes.NewReader(bytesData))
  923. // } else {
  924. // req, _ = http.NewRequest("POST", "http://192.168.5.251:9532/"+"jsyb/3102", bytes.NewReader(bytesData))
  925. // }
  926. //
  927. // resp, _ := client.Do(req)
  928. // defer resp.Body.Close()
  929. // body, ioErr := ioutil.ReadAll(resp.Body)
  930. // if ioErr != nil {
  931. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  932. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  933. // return
  934. // }
  935. // var respJSON map[string]interface{}
  936. // if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
  937. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  938. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  939. // return
  940. // }
  941. // //手术操作集合
  942. //
  943. // //手术操作集合
  944. //
  945. //}
  946. //
  947. //func (c *HisApiController) Check() {
  948. // psn_no := c.GetString("psn_no")
  949. // in := c.GetString("in")
  950. // mt := c.GetString("mt")
  951. //
  952. // baseParams := models.BaseParams{
  953. // SecretKey: "MSDBYGxXm1Mtyi3PtOUB7n1ktcxwyW57",
  954. // FixmedinsCode: "H15049901371",
  955. // InsuplcAdmdvs: "150499",
  956. // MdtrtareaAdmvs: "150499",
  957. // OrgName: "赤峰费森血液透析中心",
  958. // Doctor: "1111",
  959. // }
  960. // service.Gdyb2001(baseParams, psn_no, in, mt)
  961. //
  962. //}
  963. //func (c *HisApiController) GetPsnNcdsInfo() {
  964. // admin_user_id, _ := c.GetInt64("admin_user_id")
  965. // patient_id, _ := c.GetInt64("patient_id")
  966. //
  967. // id, _ := c.GetInt64("id")
  968. // adminUser := c.GetAdminUserInfo()
  969. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  970. // //config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  971. // //patient, _ := service.GetPatientByID(c.GetAdminUserInfo().CurrentOrgId, id)
  972. // role, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  973. // psn_record, _ := service.GetPsnNCDSRecordById(id)
  974. // //
  975. // //if psn_record.ID == 0 {
  976. // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorPsnRecordNoExistWrong)
  977. // // return
  978. // //}
  979. //
  980. // var res Result5301
  981. // var res10265 Result5301For10265
  982. //
  983. // if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  984. //
  985. // psn_info, _ := service.GetPsnByPatientId(patient_id)
  986. // var api string
  987. // if miConfig.MdtrtareaAdmvs == "320921" {
  988. // api = "http://192.168.3.111:9532/" + "jsyb/5301?" + "fixmedins_code=" + miConfig.Code + "&secret_key=" + miConfig.SecretKey + "&ak=" + miConfig.AccessKey + "&org_name=" + miConfig.OrgName + "&doctor=" + role.UserName +
  989. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&psn_no=" + psn_info.PsnNo + "&cainfo=" + miConfig.Cainfo
  990. //
  991. // } else {
  992. // api = "http://192.168.5.251:9532/" + "jsyb/5301?" + "fixmedins_code=" + miConfig.Code + "&secret_key=" + miConfig.SecretKey + "&ak=" + miConfig.AccessKey + "&org_name=" + miConfig.OrgName + "&doctor=" + role.UserName +
  993. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&psn_no=" + psn_info.PsnNo + "&cainfo=" + miConfig.Cainfo
  994. //
  995. // }
  996. //
  997. // resp, requestErr := http.Get(api)
  998. // if requestErr != nil {
  999. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1000. // return
  1001. // }
  1002. //
  1003. // body, ioErr := ioutil.ReadAll(resp.Body)
  1004. // if ioErr != nil {
  1005. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  1006. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1007. // return
  1008. // }
  1009. // var respJSON map[string]interface{}
  1010. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  1011. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  1012. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1013. // return
  1014. // }
  1015. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  1016. // result, _ := json.Marshal(respJSON)
  1017. // if err := json.Unmarshal([]byte(result), &res10265); err != nil {
  1018. // utils.ErrorLog("解析失败:%v", err)
  1019. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1020. // return
  1021. // }
  1022. // res.ErrMsg = res10265.ErrMsg
  1023. // res.Output = res10265.Output
  1024. // res.InfRefmsgid = res10265.InfRefmsgid
  1025. // infocode, _ := strconv.ParseInt(res10265.Infcode, 10, 64)
  1026. // res.Infcode = infocode
  1027. //
  1028. // } else {
  1029. //
  1030. // result := service.Gdyb5301(psn_record.PsnNo, miConfig.OrgName, role.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey)
  1031. //
  1032. // var dat map[string]interface{}
  1033. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  1034. // fmt.Println(dat)
  1035. // } else {
  1036. // fmt.Println(err)
  1037. // }
  1038. //
  1039. // userJSONBytes, _ := json.Marshal(dat)
  1040. //
  1041. // if miConfig.Code == "H15049901371" {
  1042. // if err := json.Unmarshal(userJSONBytes, &res10265); err != nil {
  1043. // utils.ErrorLog("解析失败:%v", err)
  1044. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1045. // return
  1046. // }
  1047. // res.InfRefmsgid = res10265.InfRefmsgid
  1048. // res.Output = res10265.Output
  1049. // res.ErrMsg = res10265.ErrMsg
  1050. // infocode, _ := strconv.ParseInt(res10265.Infcode, 10, 64)
  1051. // res.Infcode = infocode
  1052. // } else {
  1053. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  1054. // utils.ErrorLog("解析失败:%v", err)
  1055. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1056. // return
  1057. // }
  1058. //
  1059. // }
  1060. //
  1061. // }
  1062. //
  1063. // if res.Infcode == 0 {
  1064. // c.ServeSuccessJSON(map[string]interface{}{
  1065. // "result": res.Output.Result,
  1066. // })
  1067. // }
  1068. //
  1069. //}
  1070. //func (c *HisApiController) CheckInsutype() {
  1071. // his_patient_id, _ := c.GetInt64("his_patient_id")
  1072. // admin_user_id, _ := c.GetInt64("admin_user_id")
  1073. // roles, _ := service.GetAdminUserInfoByID(c.GetAdminUserInfo().CurrentOrgId, admin_user_id)
  1074. // his, _ := service.GetNewHisPatientInfoFour(c.GetAdminUserInfo().CurrentOrgId, his_patient_id)
  1075. // miConfig, _ := service.FindMedicalInsuranceInfo(c.GetAdminUserInfo().CurrentOrgId)
  1076. // result := service.Gdyb90100(his.PsnNo, miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey)
  1077. //
  1078. // var dat map[string]interface{}
  1079. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  1080. // fmt.Println(dat)
  1081. // } else {
  1082. // fmt.Println(err)
  1083. // }
  1084. //
  1085. // userJSONBytes, _ := json.Marshal(dat)
  1086. // var res Result90100
  1087. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  1088. // utils.ErrorLog("解析失败:%v", err)
  1089. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1090. // return
  1091. // }
  1092. //
  1093. // if res.Infcode != 0 {
  1094. // c.ServeSuccessJSON(map[string]interface{}{
  1095. // "failed_code": -10,
  1096. // "msg": res.ErrMsg,
  1097. // })
  1098. // return
  1099. // } else {
  1100. // fmt.Println(res)
  1101. //
  1102. // }
  1103. //
  1104. //}
  1105. //func (c *HisApiController) CheckCardPWD() {
  1106. // card_pwd := c.GetString("card_pwd")
  1107. // his_patient_id, _ := c.GetInt64("his_patient_id")
  1108. // admin_user_id, _ := c.GetInt64("admin_user_id")
  1109. // roles, _ := service.GetAdminUserInfoByID(c.GetAdminUserInfo().CurrentOrgId, admin_user_id)
  1110. // miConfig, _ := service.FindMedicalInsuranceInfo(c.GetAdminUserInfo().CurrentOrgId)
  1111. // his, _ := service.GetNewHisPatientInfoFour(c.GetAdminUserInfo().CurrentOrgId, his_patient_id)
  1112. // psn, _ := service.GetPsnByPatientId(his.PatientId)
  1113. // bas := strings.Split(psn.CardInfo, "|")
  1114. // basNumber := bas[2]
  1115. // result := service.Gdyb90991(his.PsnNo, miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, card_pwd, basNumber)
  1116. //
  1117. // var dat map[string]interface{}
  1118. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  1119. // fmt.Println(dat)
  1120. // } else {
  1121. // fmt.Println(err)
  1122. // }
  1123. //
  1124. // userJSONBytes, _ := json.Marshal(dat)
  1125. // var res Result90991
  1126. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  1127. // utils.ErrorLog("解析失败:%v", err)
  1128. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1129. // return
  1130. // }
  1131. //
  1132. // if res.Infcode != 0 {
  1133. // c.ServeSuccessJSON(map[string]interface{}{
  1134. // "failed_code": -10,
  1135. // "msg": res.ErrMsg,
  1136. // })
  1137. // return
  1138. // } else {
  1139. // if res.Output.Result.SscnoCheckStat == "0" {
  1140. // var msg string
  1141. // switch res.Output.Result.CardStat {
  1142. // case "00":
  1143. // msg = "未激活"
  1144. // break
  1145. // case "10":
  1146. // msg = "激活"
  1147. // break
  1148. // case "20":
  1149. // msg = "窗口挂失"
  1150. // break
  1151. // case "21":
  1152. // msg = "电话挂失"
  1153. // break
  1154. // case "22":
  1155. // msg = "单位网上申报挂失"
  1156. // break
  1157. // case "23":
  1158. // msg = "保健办挂失"
  1159. //
  1160. // break
  1161. // case "24":
  1162. // msg = "个人网上挂失"
  1163. //
  1164. // break
  1165. // case "25":
  1166. // msg = "网上服务大厅挂失"
  1167. // break
  1168. // case "30":
  1169. // msg = "注销"
  1170. // break
  1171. // case "40":
  1172. // msg = "回收"
  1173. // break
  1174. // case "99":
  1175. // msg = "制卡中(无效卡)"
  1176. // break
  1177. // }
  1178. // c.ServeSuccessJSON(map[string]interface{}{
  1179. // "failed_code": -10,
  1180. // "msg": msg,
  1181. // })
  1182. // return
  1183. //
  1184. // } else {
  1185. // c.ServeSuccessJSON(map[string]interface{}{
  1186. // "msg": "校验成功",
  1187. // })
  1188. // return
  1189. // }
  1190. // }
  1191. //
  1192. //}
  1193. //
  1194. //func (c *HisApiController) CheckCardPWDTwo() {
  1195. // //card_pwd := c.GetString("card_pwd")
  1196. // //his_patient_id, _ := c.GetInt64("his_patient_id")
  1197. // admin_user_id, _ := c.GetInt64("admin_user_id")
  1198. // roles, _ := service.GetAdminUserInfoByID(c.GetAdminUserInfo().CurrentOrgId, admin_user_id)
  1199. // miConfig, _ := service.FindMedicalInsuranceInfo(c.GetAdminUserInfo().CurrentOrgId)
  1200. //
  1201. // result := service.Gdyb90991("44030000000629690364", miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, "000000", "BDM421363")
  1202. //
  1203. // var dat map[string]interface{}
  1204. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  1205. // fmt.Println(dat)
  1206. // } else {
  1207. // fmt.Println(err)
  1208. // }
  1209. //
  1210. // userJSONBytes, _ := json.Marshal(dat)
  1211. // var res Result90991
  1212. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  1213. // utils.ErrorLog("解析失败:%v", err)
  1214. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1215. // return
  1216. // }
  1217. //
  1218. // if res.Infcode != 0 {
  1219. // c.ServeSuccessJSON(map[string]interface{}{
  1220. // "failed_code": -10,
  1221. // "msg": res.ErrMsg,
  1222. // })
  1223. // return
  1224. // } else {
  1225. // if res.Output.Result.SscnoCheckStat == "0" {
  1226. // var msg string
  1227. // switch res.Output.Result.CardStat {
  1228. // case "00":
  1229. // msg = "未激活"
  1230. // break
  1231. // case "10":
  1232. // msg = "激活"
  1233. // break
  1234. // case "20":
  1235. // msg = "窗口挂失"
  1236. // break
  1237. // case "21":
  1238. // msg = "电话挂失"
  1239. // break
  1240. // case "22":
  1241. // msg = "单位网上申报挂失"
  1242. // break
  1243. // case "23":
  1244. // msg = "保健办挂失"
  1245. //
  1246. // break
  1247. // case "24":
  1248. // msg = "个人网上挂失"
  1249. //
  1250. // break
  1251. // case "25":
  1252. // msg = "网上服务大厅挂失"
  1253. // break
  1254. // case "30":
  1255. // msg = "注销"
  1256. // break
  1257. // case "40":
  1258. // msg = "回收"
  1259. // break
  1260. // case "99":
  1261. // msg = "制卡中(无效卡)"
  1262. // break
  1263. // }
  1264. // c.ServeSuccessJSON(map[string]interface{}{
  1265. // "failed_code": -10,
  1266. // "msg": msg,
  1267. // })
  1268. // return
  1269. //
  1270. // } else {
  1271. // c.ServeSuccessJSON(map[string]interface{}{
  1272. // "msg": "校验成功",
  1273. // })
  1274. // return
  1275. // }
  1276. // }
  1277. //
  1278. //}
  1279. //
  1280. ////func (c *HisApiController) ReadCard() {
  1281. //// id_card_type, _ := c.GetInt64("id_card_type")
  1282. //// admin_user_id, _ := c.GetInt64("admin_user_id")
  1283. //// certificates, _ := c.GetInt64("certificates")
  1284. //// fmt.Println(c.GetAdminUserInfo().CurrentOrgId)
  1285. //// roles, _ := service.GetAdminUserInfoByID(c.GetAdminUserInfo().CurrentOrgId, admin_user_id)
  1286. //// miConfig, _ := service.FindMedicalInsuranceInfo(c.GetAdminUserInfo().CurrentOrgId)
  1287. ////
  1288. //// switch id_card_type {
  1289. //// case 1:
  1290. //// if miConfig.MdtrtareaAdmvs == "421300" {
  1291. //// var res ResultTwo
  1292. //// api := "http://192.168.124.4:9532/" + "hbyb/1101?cert_no=" + "" +
  1293. //// "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code +
  1294. //// "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(id_card_type, 10) + "&card_sn=" + "" + "&certificates=" + strconv.FormatInt(certificates, 10)
  1295. ////
  1296. //// resp, requestErr := http.Get(api)
  1297. //// if requestErr != nil {
  1298. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1299. //// return
  1300. //// }
  1301. ////
  1302. //// body, ioErr := ioutil.ReadAll(resp.Body)
  1303. //// if ioErr != nil {
  1304. //// utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  1305. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1306. //// return
  1307. //// }
  1308. //// var respJSON map[string]interface{}
  1309. //// if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  1310. //// utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  1311. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1312. //// return
  1313. //// }
  1314. ////
  1315. //// respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  1316. //// result, _ := json.Marshal(respJSON)
  1317. //// fmt.Println("log")
  1318. //// fmt.Println(string(result))
  1319. ////
  1320. //// if err := json.Unmarshal([]byte(result), &res); err != nil {
  1321. //// utils.ErrorLog("解析失败:%v", err)
  1322. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1323. //// return
  1324. //// }
  1325. ////
  1326. //// if res.Infcode == 0 {
  1327. //// patient, err := service.GetPatientByIDCard(res.Output.Baseinfo.Certno, c.GetAdminUserInfo().CurrentOrgId)
  1328. //// if err == gorm.ErrRecordNotFound {
  1329. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeNoPateintException)
  1330. //// return
  1331. //// } else if err != nil {
  1332. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeSystemError)
  1333. //// return
  1334. ////
  1335. //// } else {
  1336. ////
  1337. //// Iinfos, _ := json.Marshal(res.Output.Iinfo)
  1338. //// Idetinfos, _ := json.Marshal(res.Output.Idetinfo)
  1339. //// infoStr := string(Iinfos)
  1340. //// idetinfoStr := string(Idetinfos)
  1341. //// psn := &models.HisPsn{
  1342. //// PsnNo: res.Output.Baseinfo.PsnNo,
  1343. //// Age: res.Output.Baseinfo.Age,
  1344. //// PatientId: patient.ID,
  1345. //// Certno: res.Output.Baseinfo.Certno,
  1346. //// Brdy: res.Output.Baseinfo.Brdy,
  1347. //// Gend: res.Output.Baseinfo.Gend,
  1348. //// Naty: res.Output.Baseinfo.Naty,
  1349. //// PsnCertType: res.Output.Baseinfo.PsnCertType,
  1350. //// PsnName: res.Output.Baseinfo.PsnName,
  1351. //// Idetinfo: idetinfoStr,
  1352. //// Insuinfo: infoStr,
  1353. //// UserOrgId: c.GetAdminUserInfo().CurrentOrgId,
  1354. //// }
  1355. //// service.CreateHisPsn(psn)
  1356. ////
  1357. //// c.ServeSuccessJSON(map[string]interface{}{
  1358. //// "patient": patient,
  1359. //// "number": res.Output.Baseinfo.Certno,
  1360. //// })
  1361. //// }
  1362. //// } else {
  1363. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisFailedException)
  1364. //// return
  1365. //// }
  1366. ////
  1367. //// } else if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  1368. //// var api string
  1369. //// if miConfig.MdtrtareaAdmvs == "320921" {
  1370. //// api = "http://192.168.3.111:9532/" + "jsyb/readcard?" + "fixmedins_code=" + miConfig.Code + "&secret_key=" + miConfig.SecretKey + "&ak=" + miConfig.AccessKey + "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName +
  1371. //// "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&cainfo=" + miConfig.Cainfo + "&id_card_type=" + strconv.FormatInt(id_card_type, 10) + "&operator_id=" + strconv.FormatInt(admin_user_id, 10) + "&operator=" + roles.UserName
  1372. //// fmt.Println(api)
  1373. //// } else {
  1374. //// api = "http://192.168.5.251:9532/" + "jsyb/readcard?" + "fixmedins_code=" + miConfig.Code + "&secret_key=" + miConfig.SecretKey + "&ak=" + miConfig.AccessKey + "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName +
  1375. //// "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&cainfo=" + miConfig.Cainfo + "&id_card_type=" + strconv.FormatInt(id_card_type, 10)
  1376. //// }
  1377. ////
  1378. //// resp, requestErr := http.Get(api)
  1379. //// if requestErr != nil {
  1380. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1381. //// return
  1382. //// }
  1383. ////
  1384. //// body, ioErr := ioutil.ReadAll(resp.Body)
  1385. //// if ioErr != nil {
  1386. //// utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  1387. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1388. //// return
  1389. //// }
  1390. //// var respJSON map[string]interface{}
  1391. //// if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  1392. //// utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  1393. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1394. //// return
  1395. //// }
  1396. //// var status string
  1397. //// status = respJSON["data"].(map[string]interface{})["status"].(string)
  1398. //// card_type := respJSON["data"].(map[string]interface{})["type"].(string)
  1399. //// //console.log()
  1400. //// fmt.Println("type===")
  1401. ////
  1402. //// fmt.Println(card_type)
  1403. ////
  1404. //// var token string
  1405. //// var res ResultTwo //1101结果
  1406. //// var res10265 ResultTwo10265 //1101结果
  1407. //// var card_info string //卡信息
  1408. //// var busi_card_info string
  1409. ////
  1410. //// card_info = respJSON["data"].(map[string]interface{})["card_info"].(string)
  1411. //// busi_card_info = respJSON["data"].(map[string]interface{})["busi_card_info"].(string)
  1412. ////
  1413. //// if status == "0" { //读卡成功
  1414. //// if card_type == "1" {
  1415. ////
  1416. //// respJSON = respJSON["data"].(map[string]interface{})["result"].(map[string]interface{})
  1417. //// result, _ := json.Marshal(respJSON)
  1418. ////
  1419. //// if err := json.Unmarshal([]byte(result), &res10265); err != nil {
  1420. //// utils.ErrorLog("解析失败:%v", err)
  1421. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1422. //// return
  1423. //// }
  1424. //// res.ErrMsg = res10265.ErrMsg
  1425. //// infocode, _ := strconv.ParseInt(res10265.Infcode, 10, 64)
  1426. //// res.Infcode = infocode
  1427. //// res.Output = res10265.Output
  1428. //// res.InfRefmsgid = res10265.InfRefmsgid
  1429. ////
  1430. //// } else {
  1431. //// //var card_info string //卡信息
  1432. //// //var busi_card_info string
  1433. ////
  1434. //// token = respJSON["data"].(map[string]interface{})["token"].(string)
  1435. //// //busi_card_info = respJSON["data"].(map[string]interface{})["busi_card_info"].(string)
  1436. ////
  1437. //// //fmt.Println(card_info)
  1438. //// //fmt.Println(busi_card_info)
  1439. ////
  1440. //// respJSON = respJSON["data"].(map[string]interface{})["result"].(map[string]interface{})
  1441. //// result, _ := json.Marshal(respJSON)
  1442. ////
  1443. //// if err := json.Unmarshal([]byte(result), &res10265); err != nil {
  1444. //// utils.ErrorLog("解析失败:%v", err)
  1445. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1446. //// return
  1447. //// }
  1448. //// res.ErrMsg = res10265.ErrMsg
  1449. //// infocode, _ := strconv.ParseInt(res10265.Infcode, 10, 64)
  1450. //// res.Infcode = infocode
  1451. //// res.Output = res10265.Output
  1452. //// res.InfRefmsgid = res10265.InfRefmsgid
  1453. ////
  1454. //// }
  1455. ////
  1456. //// if res.Infcode == 0 {
  1457. //// patient, err := service.GetPatientByIDCard(res.Output.Baseinfo.Certno, c.GetAdminUserInfo().CurrentOrgId)
  1458. //// if err == gorm.ErrRecordNotFound {
  1459. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeNoPateintException)
  1460. //// return
  1461. //// } else if err != nil {
  1462. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeSystemError)
  1463. //// return
  1464. ////
  1465. //// } else {
  1466. ////
  1467. //// if card_type == "1" {
  1468. //// bas := strings.Split(card_info, "|")
  1469. //// basNumber := bas[2]
  1470. //// Iinfos, _ := json.Marshal(res.Output.Iinfo)
  1471. //// Idetinfos, _ := json.Marshal(res.Output.Idetinfo)
  1472. //// infoStr := string(Iinfos)
  1473. //// idetinfoStr := string(Idetinfos)
  1474. //// psn := &models.HisPsn{
  1475. //// PsnNo: res.Output.Baseinfo.PsnNo,
  1476. //// Age: res.Output.Baseinfo.Age,
  1477. //// PatientId: patient.ID,
  1478. //// Certno: res.Output.Baseinfo.Certno,
  1479. //// Brdy: res.Output.Baseinfo.Brdy,
  1480. //// Gend: res.Output.Baseinfo.Gend,
  1481. //// Naty: res.Output.Baseinfo.Naty,
  1482. //// PsnCertType: res.Output.Baseinfo.PsnCertType,
  1483. //// PsnName: res.Output.Baseinfo.PsnName,
  1484. //// Idetinfo: idetinfoStr,
  1485. //// Insuinfo: infoStr,
  1486. //// UserOrgId: c.GetAdminUserInfo().CurrentOrgId,
  1487. //// CardInfo: card_info,
  1488. //// VerifyNumber: busi_card_info,
  1489. //// }
  1490. //// service.CreateHisPsn(psn)
  1491. ////
  1492. //// var rf []*ResultFive
  1493. //// json.Unmarshal([]byte(infoStr), &rf)
  1494. ////
  1495. //// var insutypes []*ResultFive
  1496. //// var insutype string
  1497. //// var is390 int = 0
  1498. //// var is310 int = 0
  1499. ////
  1500. //// for _, item := range rf {
  1501. //// if (item.Insutype == "390" && item.PsnInsuStas == "1") || (item.Insutype == "310" && item.PsnInsuStas == "1") {
  1502. //// insutypes = append(insutypes, item)
  1503. //// }
  1504. //// }
  1505. ////
  1506. //// if len(insutypes) == 1 {
  1507. //// insutype = insutypes[0].Insutype
  1508. //// //insuplc_admdvs = insutypes[0].InsuplcAdmdvs
  1509. //// } else {
  1510. //// for _, i := range insutypes {
  1511. //// if i.Insutype == "390" {
  1512. //// is390 = 1
  1513. //// }
  1514. ////
  1515. //// if i.Insutype == "310" {
  1516. //// is310 = 1
  1517. //// }
  1518. //// }
  1519. //// }
  1520. //// if is390 == 1 {
  1521. //// insutype = "390"
  1522. //// }
  1523. ////
  1524. //// if is310 == 1 {
  1525. //// insutype = "310"
  1526. //// }
  1527. ////
  1528. //// if len(insutypes) == 0 {
  1529. //// insutype = "310"
  1530. //// }
  1531. ////
  1532. //// c.ServeSuccessJSON(map[string]interface{}{
  1533. //// "patient": patient,
  1534. //// "number": basNumber,
  1535. //// "insutype": insutype,
  1536. //// })
  1537. //// } else {
  1538. //// Iinfos, _ := json.Marshal(res.Output.Iinfo)
  1539. //// Idetinfos, _ := json.Marshal(res.Output.Idetinfo)
  1540. //// infoStr := string(Iinfos)
  1541. //// idetinfoStr := string(Idetinfos)
  1542. //// psn := &models.HisPsn{
  1543. //// PsnNo: res.Output.Baseinfo.PsnNo,
  1544. //// Age: res.Output.Baseinfo.Age,
  1545. //// PatientId: patient.ID,
  1546. //// Certno: res.Output.Baseinfo.Certno,
  1547. //// Brdy: res.Output.Baseinfo.Brdy,
  1548. //// Gend: res.Output.Baseinfo.Gend,
  1549. //// Naty: res.Output.Baseinfo.Naty,
  1550. //// PsnCertType: res.Output.Baseinfo.PsnCertType,
  1551. //// PsnName: res.Output.Baseinfo.PsnName,
  1552. //// Idetinfo: idetinfoStr,
  1553. //// Insuinfo: infoStr,
  1554. //// UserOrgId: c.GetAdminUserInfo().CurrentOrgId,
  1555. //// CardInfo: card_info,
  1556. //// VerifyNumber: token,
  1557. //// }
  1558. //// service.CreateHisPsn(psn)
  1559. //// c.ServeSuccessJSON(map[string]interface{}{
  1560. //// "patient": patient,
  1561. //// "number": token,
  1562. //// })
  1563. //// }
  1564. //// }
  1565. //// } else {
  1566. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisFailedException)
  1567. //// return
  1568. //// }
  1569. //// } else { //读卡失败
  1570. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisFailedException)
  1571. //// return
  1572. ////
  1573. //// }
  1574. ////
  1575. //// } else {
  1576. //// if initFlag == 0 {
  1577. //// c.TestGetBasBaseInit()
  1578. //// }
  1579. //// basStr := c.GetBasBaseInfo()
  1580. //// if len(basStr) == 0 {
  1581. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeReadCardException)
  1582. //// return
  1583. //// }
  1584. //// fmt.Println(basStr)
  1585. //// bas := strings.Split(basStr, "|")
  1586. //// basNumber := bas[1]
  1587. //// fmt.Println(basNumber)
  1588. //// card_sn := bas[3]
  1589. //// fmt.Println(card_sn)
  1590. //// result := service.Gdyb1101B(basNumber, miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, id_card_type, card_sn, certificates)
  1591. //// var dat map[string]interface{}
  1592. //// if err := json.Unmarshal([]byte(result), &dat); err == nil {
  1593. //// fmt.Println(dat)
  1594. //// } else {
  1595. //// fmt.Println(err)
  1596. //// }
  1597. ////
  1598. //// userJSONBytes, _ := json.Marshal(dat)
  1599. //// var res ResultTwo
  1600. //// if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  1601. //// utils.ErrorLog("解析失败:%v", err)
  1602. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1603. //// return
  1604. //// }
  1605. ////
  1606. //// if res.Infcode == 0 {
  1607. //// patient, err := service.GetPatientByNumber(basNumber, c.GetAdminUserInfo().CurrentOrgId)
  1608. //// if err == gorm.ErrRecordNotFound {
  1609. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeNoPateintException)
  1610. //// return
  1611. //// } else if err != nil {
  1612. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeSystemError)
  1613. //// return
  1614. ////
  1615. //// } else {
  1616. //// Iinfos, _ := json.Marshal(res.Output.Iinfo)
  1617. //// Idetinfos, _ := json.Marshal(res.Output.Idetinfo)
  1618. //// infoStr := string(Iinfos)
  1619. //// idetinfoStr := string(Idetinfos)
  1620. //// psn := &models.HisPsn{
  1621. //// PsnNo: res.Output.Baseinfo.PsnNo,
  1622. //// Age: res.Output.Baseinfo.Age,
  1623. //// PatientId: patient.ID,
  1624. //// Certno: res.Output.Baseinfo.Certno,
  1625. //// Brdy: res.Output.Baseinfo.Brdy,
  1626. //// Gend: res.Output.Baseinfo.Gend,
  1627. //// Naty: res.Output.Baseinfo.Naty,
  1628. //// PsnCertType: res.Output.Baseinfo.PsnCertType,
  1629. //// PsnName: res.Output.Baseinfo.PsnName,
  1630. //// Idetinfo: idetinfoStr,
  1631. //// Insuinfo: infoStr,
  1632. //// UserOrgId: c.GetAdminUserInfo().CurrentOrgId,
  1633. //// CardInfo: basStr,
  1634. //// VerifyNumber: "",
  1635. //// }
  1636. //// service.CreateHisPsn(psn)
  1637. ////
  1638. //// c.ServeSuccessJSON(map[string]interface{}{
  1639. //// "patient": patient,
  1640. //// "number": basNumber,
  1641. //// })
  1642. //// }
  1643. //// } else {
  1644. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisFailedException)
  1645. //// return
  1646. //// }
  1647. //// break
  1648. //// }
  1649. //// case 2:
  1650. //// SFZStr := c.GetSFZBaseInfo()
  1651. //// id_card_str := strings.Split(SFZStr, "^")
  1652. //// id_card_number := id_card_str[0]
  1653. //// card_sn := ""
  1654. //// result := service.Gdyb1101B(id_card_number, miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, id_card_type, card_sn, certificates)
  1655. //// var dat map[string]interface{}
  1656. //// if err := json.Unmarshal([]byte(result), &dat); err == nil {
  1657. //// fmt.Println(dat)
  1658. //// } else {
  1659. //// fmt.Println(err)
  1660. //// }
  1661. ////
  1662. //// userJSONBytes, _ := json.Marshal(dat)
  1663. //// var res ResultTwo
  1664. //// if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  1665. //// utils.ErrorLog("解析失败:%v", err)
  1666. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1667. //// return
  1668. //// }
  1669. ////
  1670. //// if res.Infcode == 0 {
  1671. //// patient, err := service.GetPatientByNumber(id_card_number, c.GetAdminUserInfo().CurrentOrgId)
  1672. //// if err == gorm.ErrRecordNotFound {
  1673. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeNoPateintException)
  1674. //// return
  1675. //// } else if err != nil {
  1676. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeSystemError)
  1677. //// return
  1678. ////
  1679. //// } else {
  1680. //// c.ServeSuccessJSON(map[string]interface{}{
  1681. //// "patient": patient,
  1682. //// "number": id_card_number,
  1683. //// })
  1684. //// }
  1685. //// } else {
  1686. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisFailedException)
  1687. //// return
  1688. //// }
  1689. ////
  1690. //// break
  1691. //// case 3:
  1692. //// if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  1693. //// var api string
  1694. //// if miConfig.MdtrtareaAdmvs == "320921" {
  1695. //// api = "http://192.168.3.111:9532/" + "jsyb/readcard?" + "fixmedins_code=" + miConfig.Code + "&secret_key=" + miConfig.SecretKey + "&ak=" + miConfig.AccessKey + "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName +
  1696. //// "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&cainfo=" + miConfig.Cainfo + "&id_card_type=" + strconv.FormatInt(id_card_type, 10) + "&operator_id=" + strconv.FormatInt(admin_user_id, 10) + "&operator=" + roles.UserName
  1697. //// fmt.Println(api)
  1698. ////
  1699. //// } else {
  1700. //// api = "http://192.168.5.251:9532/" + "jsyb/readcard?" + "fixmedins_code=" + miConfig.Code + "&secret_key=" + miConfig.SecretKey + "&ak=" + miConfig.AccessKey + "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName +
  1701. //// "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&cainfo=" + miConfig.Cainfo + "&id_card_type=" + strconv.FormatInt(id_card_type, 10)
  1702. //// }
  1703. ////
  1704. //// resp, requestErr := http.Get(api)
  1705. //// if requestErr != nil {
  1706. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1707. //// return
  1708. //// }
  1709. ////
  1710. //// body, ioErr := ioutil.ReadAll(resp.Body)
  1711. //// if ioErr != nil {
  1712. //// utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  1713. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1714. //// return
  1715. //// }
  1716. //// var respJSON map[string]interface{}
  1717. //// if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  1718. //// utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  1719. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1720. //// return
  1721. //// }
  1722. //// var status string
  1723. //// status = respJSON["data"].(map[string]interface{})["status"].(string)
  1724. //// card_type := respJSON["data"].(map[string]interface{})["type"].(string)
  1725. ////
  1726. //// var token string
  1727. //// var res ResultTwo //1101结果
  1728. //// var res10265 ResultTwo10265 //1101结果
  1729. //// var card_info string //卡信息
  1730. //// var busi_card_info string
  1731. ////
  1732. //// //card_info = respJSON["data"].(map[string]interface{})["card_info"].(string)
  1733. //// busi_card_info = respJSON["data"].(map[string]interface{})["busi_card_info"].(string)
  1734. ////
  1735. //// if status == "0" { //读卡成功
  1736. //// if card_type == "1" {
  1737. ////
  1738. //// respJSON = respJSON["data"].(map[string]interface{})["result"].(map[string]interface{})
  1739. //// result, _ := json.Marshal(respJSON)
  1740. ////
  1741. //// if err := json.Unmarshal([]byte(result), &res10265); err != nil {
  1742. //// utils.ErrorLog("解析失败:%v", err)
  1743. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1744. //// return
  1745. //// }
  1746. //// res.ErrMsg = res10265.ErrMsg
  1747. //// infocode, _ := strconv.ParseInt(res10265.Infcode, 10, 64)
  1748. //// res.Infcode = infocode
  1749. //// res.Output = res10265.Output
  1750. //// res.InfRefmsgid = res10265.InfRefmsgid
  1751. ////
  1752. //// } else {
  1753. //// //var card_info string //卡信息
  1754. //// //var busi_card_info string
  1755. ////
  1756. //// token = respJSON["data"].(map[string]interface{})["token"].(string)
  1757. //// //busi_card_info = respJSON["data"].(map[string]interface{})["busi_card_info"].(string)
  1758. ////
  1759. //// //fmt.Println(card_info)
  1760. //// //fmt.Println(busi_card_info)
  1761. ////
  1762. //// respJSON = respJSON["data"].(map[string]interface{})["result"].(map[string]interface{})
  1763. //// result, _ := json.Marshal(respJSON)
  1764. ////
  1765. //// if err := json.Unmarshal([]byte(result), &res10265); err != nil {
  1766. //// utils.ErrorLog("解析失败:%v", err)
  1767. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1768. //// return
  1769. //// }
  1770. //// res.ErrMsg = res10265.ErrMsg
  1771. //// infocode, _ := strconv.ParseInt(res10265.Infcode, 10, 64)
  1772. //// res.Infcode = infocode
  1773. //// res.Output = res10265.Output
  1774. //// res.InfRefmsgid = res10265.InfRefmsgid
  1775. ////
  1776. //// }
  1777. ////
  1778. //// if res.Infcode == 0 {
  1779. //// patient, err := service.GetPatientByIDCard(res.Output.Baseinfo.Certno, c.GetAdminUserInfo().CurrentOrgId)
  1780. //// if err == gorm.ErrRecordNotFound {
  1781. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeNoPateintException)
  1782. //// return
  1783. //// } else if err != nil {
  1784. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeSystemError)
  1785. //// return
  1786. ////
  1787. //// } else {
  1788. ////
  1789. //// if card_type == "1" {
  1790. //// bas := strings.Split(card_info, "|")
  1791. //// basNumber := bas[2]
  1792. //// Iinfos, _ := json.Marshal(res.Output.Iinfo)
  1793. //// Idetinfos, _ := json.Marshal(res.Output.Idetinfo)
  1794. //// infoStr := string(Iinfos)
  1795. //// idetinfoStr := string(Idetinfos)
  1796. //// psn := &models.HisPsn{
  1797. //// PsnNo: res.Output.Baseinfo.PsnNo,
  1798. //// Age: res.Output.Baseinfo.Age,
  1799. //// PatientId: patient.ID,
  1800. //// Certno: res.Output.Baseinfo.Certno,
  1801. //// Brdy: res.Output.Baseinfo.Brdy,
  1802. //// Gend: res.Output.Baseinfo.Gend,
  1803. //// Naty: res.Output.Baseinfo.Naty,
  1804. //// PsnCertType: res.Output.Baseinfo.PsnCertType,
  1805. //// PsnName: res.Output.Baseinfo.PsnName,
  1806. //// Idetinfo: idetinfoStr,
  1807. //// Insuinfo: infoStr,
  1808. //// UserOrgId: c.GetAdminUserInfo().CurrentOrgId,
  1809. //// CardInfo: card_info,
  1810. //// VerifyNumber: busi_card_info,
  1811. //// }
  1812. ////
  1813. //// service.CreateHisPsn(psn)
  1814. //// c.ServeSuccessJSON(map[string]interface{}{
  1815. //// "patient": patient,
  1816. //// "number": basNumber,
  1817. //// })
  1818. //// } else {
  1819. //// Iinfos, _ := json.Marshal(res.Output.Iinfo)
  1820. //// Idetinfos, _ := json.Marshal(res.Output.Idetinfo)
  1821. //// infoStr := string(Iinfos)
  1822. //// idetinfoStr := string(Idetinfos)
  1823. //// psn := &models.HisPsn{
  1824. //// PsnNo: res.Output.Baseinfo.PsnNo,
  1825. //// Age: res.Output.Baseinfo.Age,
  1826. //// PatientId: patient.ID,
  1827. //// Certno: res.Output.Baseinfo.Certno,
  1828. //// Brdy: res.Output.Baseinfo.Brdy,
  1829. //// Gend: res.Output.Baseinfo.Gend,
  1830. //// Naty: res.Output.Baseinfo.Naty,
  1831. //// PsnCertType: res.Output.Baseinfo.PsnCertType,
  1832. //// PsnName: res.Output.Baseinfo.PsnName,
  1833. //// Idetinfo: idetinfoStr,
  1834. //// Insuinfo: infoStr,
  1835. //// UserOrgId: c.GetAdminUserInfo().CurrentOrgId,
  1836. //// CardInfo: card_info,
  1837. //// VerifyNumber: token,
  1838. //// }
  1839. //// service.CreateHisPsn(psn)
  1840. //// var rf []*ResultFive
  1841. //// json.Unmarshal([]byte(infoStr), &rf)
  1842. //// var insutypes []*ResultFive
  1843. //// var insutype string
  1844. //// var is390 int = 0
  1845. //// var is310 int = 0
  1846. ////
  1847. //// for _, item := range rf {
  1848. //// if (item.Insutype == "390" && item.PsnInsuStas == "1") || (item.Insutype == "310" && item.PsnInsuStas == "1") {
  1849. //// insutypes = append(insutypes, item)
  1850. //// }
  1851. //// }
  1852. ////
  1853. //// if len(insutypes) == 1 {
  1854. //// insutype = insutypes[0].Insutype
  1855. //// //insuplc_admdvs = insutypes[0].InsuplcAdmdvs
  1856. //// } else {
  1857. //// for _, i := range insutypes {
  1858. //// if i.Insutype == "390" {
  1859. //// is390 = 1
  1860. //// }
  1861. ////
  1862. //// if i.Insutype == "310" {
  1863. //// is310 = 1
  1864. //// }
  1865. //// }
  1866. //// }
  1867. ////
  1868. //// if is390 == 1 {
  1869. //// insutype = "390"
  1870. //// }
  1871. ////
  1872. //// if is310 == 1 {
  1873. //// insutype = "310"
  1874. //// }
  1875. ////
  1876. //// if len(insutypes) == 0 {
  1877. //// insutype = "310"
  1878. //// }
  1879. //// c.ServeSuccessJSON(map[string]interface{}{
  1880. //// "patient": patient,
  1881. //// "number": token,
  1882. //// "insutype": insutype,
  1883. //// })
  1884. //// }
  1885. //// }
  1886. //// } else {
  1887. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisFailedException)
  1888. //// return
  1889. //// }
  1890. //// } else { //读卡失败
  1891. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisFailedException)
  1892. //// return
  1893. ////
  1894. //// }
  1895. ////
  1896. //// }
  1897. ////
  1898. //// break
  1899. //// case 4:
  1900. //// if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  1901. //// var api string
  1902. //// if miConfig.MdtrtareaAdmvs == "320921" {
  1903. //// api = "http://192.168.3.111:9532/" + "jsyb/readcard?" + "fixmedins_code=" + miConfig.Code + "&secret_key=" + miConfig.SecretKey + "&ak=" + miConfig.AccessKey + "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName +
  1904. //// "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&cainfo=" + miConfig.Cainfo + "&id_card_type=" + strconv.FormatInt(id_card_type, 10) + "&operator_id=" + strconv.FormatInt(admin_user_id, 10) + "&operator=" + roles.UserName
  1905. //// fmt.Println(api)
  1906. ////
  1907. //// } else {
  1908. //// api = "http://192.168.5.251:9532/" + "jsyb/readcard?" + "fixmedins_code=" + miConfig.Code + "&secret_key=" + miConfig.SecretKey + "&ak=" + miConfig.AccessKey + "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName +
  1909. //// "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&cainfo=" + miConfig.Cainfo + "&id_card_type=" + strconv.FormatInt(id_card_type, 10)
  1910. //// }
  1911. ////
  1912. //// resp, requestErr := http.Get(api)
  1913. //// if requestErr != nil {
  1914. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1915. //// return
  1916. //// }
  1917. ////
  1918. //// body, ioErr := ioutil.ReadAll(resp.Body)
  1919. //// if ioErr != nil {
  1920. //// utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  1921. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1922. //// return
  1923. //// }
  1924. //// var respJSON map[string]interface{}
  1925. //// if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  1926. //// utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  1927. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1928. //// return
  1929. //// }
  1930. //// var status string
  1931. //// status = respJSON["data"].(map[string]interface{})["status"].(string)
  1932. //// //card_type := respJSON["data"].(map[string]interface{})["type"].(string)
  1933. ////
  1934. //// var token string
  1935. //// var res ResultTwo //1101结果
  1936. //// var res10265 ResultTwo10265 //1101结果
  1937. ////
  1938. //// if status == "0" { //读卡成功
  1939. //// var card_info string //卡信息
  1940. //// var busi_card_info string
  1941. ////
  1942. //// token = respJSON["data"].(map[string]interface{})["token"].(string)
  1943. //// busi_card_info = respJSON["data"].(map[string]interface{})["busi_card_info"].(string)
  1944. //// card_info = respJSON["data"].(map[string]interface{})["card_info"].(string)
  1945. ////
  1946. //// fmt.Println(card_info)
  1947. //// fmt.Println(busi_card_info)
  1948. ////
  1949. //// respJSON = respJSON["data"].(map[string]interface{})["result"].(map[string]interface{})
  1950. //// result, _ := json.Marshal(respJSON)
  1951. ////
  1952. //// if err := json.Unmarshal([]byte(result), &res10265); err != nil {
  1953. //// utils.ErrorLog("解析失败:%v", err)
  1954. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  1955. //// return
  1956. //// }
  1957. //// res.ErrMsg = res10265.ErrMsg
  1958. //// infocode, _ := strconv.ParseInt(res10265.Infcode, 10, 64)
  1959. //// res.Infcode = infocode
  1960. //// res.Output = res10265.Output
  1961. //// res.InfRefmsgid = res10265.InfRefmsgid
  1962. ////
  1963. //// if res.Infcode == 0 {
  1964. //// patient, err := service.GetPatientByIDCard(res.Output.Baseinfo.Certno, c.GetAdminUserInfo().CurrentOrgId)
  1965. //// if err == gorm.ErrRecordNotFound {
  1966. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeNoPateintException)
  1967. //// return
  1968. //// } else if err != nil {
  1969. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeSystemError)
  1970. //// return
  1971. ////
  1972. //// } else {
  1973. //// Iinfos, _ := json.Marshal(res.Output.Iinfo)
  1974. //// Idetinfos, _ := json.Marshal(res.Output.Idetinfo)
  1975. //// infoStr := string(Iinfos)
  1976. //// idetinfoStr := string(Idetinfos)
  1977. //// psn := &models.HisPsn{
  1978. //// PsnNo: res.Output.Baseinfo.PsnNo,
  1979. //// Age: res.Output.Baseinfo.Age,
  1980. //// PatientId: patient.ID,
  1981. //// Certno: res.Output.Baseinfo.Certno,
  1982. //// Brdy: res.Output.Baseinfo.Brdy,
  1983. //// Gend: res.Output.Baseinfo.Gend,
  1984. //// Naty: res.Output.Baseinfo.Naty,
  1985. //// PsnCertType: res.Output.Baseinfo.PsnCertType,
  1986. //// PsnName: res.Output.Baseinfo.PsnName,
  1987. //// Idetinfo: idetinfoStr,
  1988. //// Insuinfo: infoStr,
  1989. //// UserOrgId: c.GetAdminUserInfo().CurrentOrgId,
  1990. //// CardInfo: card_info,
  1991. //// VerifyNumber: token,
  1992. //// }
  1993. //// service.CreateHisPsn(psn)
  1994. //// c.ServeSuccessJSON(map[string]interface{}{
  1995. //// "patient": patient,
  1996. //// "number": token,
  1997. //// })
  1998. //// }
  1999. //// } else {
  2000. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisFailedException)
  2001. //// return
  2002. //// }
  2003. //// } else { //读卡失败
  2004. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisFailedException)
  2005. //// return
  2006. //// }
  2007. //// }
  2008. //// break
  2009. //// }
  2010. ////}
  2011. //
  2012. //var initFlag int64 = 0
  2013. //
  2014. ////func (c *HisApiController) TestGetBasBaseInit() {
  2015. //// DllDef := syscall.MustLoadDLL("SSCard.dll")
  2016. //// Iinit := DllDef.MustFindProc("Init")
  2017. //// miConfig, _ := service.FindMedicalInsuranceInfo(c.GetAdminUserInfo().CurrentOrgId)
  2018. ////
  2019. //// ret, _, err := Iinit.Call(StrPtr("http://igb.hsa.gdgov.cn/gdyb_api/prd/api/card/initDll"), StrPtr(miConfig.InsuplcAdmdvs))
  2020. //// if ret != 0 {
  2021. //// fmt.Println("SSCard的报错原因:", err)
  2022. //// fmt.Println("SSCard的运算结果为:", ret)
  2023. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeReadCardException)
  2024. //// return
  2025. //// }
  2026. ////
  2027. //// result := int(ret)
  2028. //// fmt.Println("SSCard的运算结果为1:", result)
  2029. //// initFlag = 1
  2030. //// return
  2031. ////}
  2032. //
  2033. ////func (c *HisApiController) GetSFZBaseInfo() string {
  2034. //// DllDef := syscall.MustLoadDLL("SSCard.dll")
  2035. //// readCard := DllDef.MustFindProc("ReadSFZ")
  2036. //// if readCard == nil {
  2037. //// fmt.Println("readcard is nil")
  2038. //// readCard = DllDef.MustFindProc("ReadSFZ")
  2039. //// }
  2040. ////
  2041. //// str := make([]byte, 256)
  2042. //// str1 := make([]byte, 256)
  2043. //// r, _, _ := readCard.Call((uintptr)(unsafe.Pointer(&str[0])), IntPtr(1024), (uintptr)(unsafe.Pointer(&str1[0])), IntPtr(1024))
  2044. ////
  2045. //// fmt.Println(r)
  2046. //// return string(str)
  2047. ////}
  2048. //
  2049. ////func (c *HisApiController) GetBasBaseInfo() string {
  2050. //// DllDef := syscall.MustLoadDLL("SSCard.dll")
  2051. //// readCard := DllDef.MustFindProc("ReadCardBas")
  2052. //// if readCard == nil {
  2053. //// fmt.Println("readcard is nil")
  2054. //// readCard = DllDef.MustFindProc("ReadCardBas")
  2055. //// }
  2056. //// str := make([]byte, 1024)
  2057. //// str1 := make([]byte, 1024)
  2058. //// ret2, _, _ := readCard.Call((uintptr)(unsafe.Pointer(&str[0])), uintptr(1024), (uintptr)(unsafe.Pointer(&str1[0])), uintptr(1024))
  2059. //// fmt.Println(string(str1))
  2060. //// fmt.Println(string(str))
  2061. //// fmt.Println(":", ConvertToString(string(str1), "gbk", "utf-8"))
  2062. //// fmt.Println(":", ConvertToString(string(str), "gbk", "utf-8"))
  2063. //// if ret2 != 0 {
  2064. //// return ""
  2065. //// }
  2066. //// return string(str)
  2067. ////}
  2068. //
  2069. //type CustomFundPay struct {
  2070. // FundPayType string `json:"fund_pay_type"`
  2071. // FundPayamt float64 `json:"fund_payamt"`
  2072. //}
  2073. //
  2074. //func (c *HisApiController) GetSettleList() {
  2075. //
  2076. // order_id, _ := c.GetInt64("order_id")
  2077. // admin_user_id, _ := c.GetInt64("admin_user_id")
  2078. //
  2079. // order, _ := service.GetHisOrderByIDTwo(order_id)
  2080. // roles, _ := service.GetDoctorListTwo(c.GetAdminUserInfo().CurrentOrgId)
  2081. // his, _ := service.GetHisPatientByNumber(order.MdtrtId)
  2082. // admin, _ := service.GetAdminUserByUserID(roles[0].AdminUserId)
  2083. // curRoles, _ := service.GetAdminUserInfoByID(c.GetAdminUserInfo().CurrentOrgId, admin_user_id)
  2084. // depart, _ := service.GetDepartMentDetail(curRoles.DepartmentId)
  2085. // miConfig, _ := service.FindMedicalInsuranceInfo(c.GetAdminUserInfo().CurrentOrgId)
  2086. //
  2087. // if order.ID == 0 {
  2088. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisOrderNoExistParamWrong)
  2089. // return
  2090. // }
  2091. //
  2092. // last_order, _ := service.GetLastHisOrder(c.GetAdminUserInfo().CurrentOrgId)
  2093. // max_order, _ := service.GetLastHisOrderTwo(c.GetAdminUserInfo().CurrentOrgId)
  2094. // count, _ := strconv.ParseInt(max_order.FaPiaoNumber, 10, 64)
  2095. // fmt.Println(count)
  2096. // var zero string
  2097. // number := count + 1
  2098. // if number >= 1000 {
  2099. // zero = "0000" + strconv.FormatInt(number, 10)
  2100. // } else if number >= 10000 {
  2101. // zero = "000" + strconv.FormatInt(number, 10)
  2102. // } else if number >= 100000 {
  2103. // zero = "00" + strconv.FormatInt(number, 10)
  2104. // } else if number >= 1000000 {
  2105. // zero = "0" + strconv.FormatInt(number, 10)
  2106. // } else {
  2107. // zero = strconv.FormatInt(number, 10)
  2108. // }
  2109. // fmt.Println(zero)
  2110. //
  2111. // struct4101 := service.Struct4101{
  2112. // PsnNo: order.PsnNo,
  2113. // MdtrtId: order.MdtrtId,
  2114. // SetlId: order.SetlId,
  2115. // PsnName: order.PsnName,
  2116. // Gend: order.Gend,
  2117. // Brdy: his.Brdy,
  2118. // Age: his.Age,
  2119. // Naty: order.Naty,
  2120. // PatnCertType: "01",
  2121. // Certno: order.Certno,
  2122. // Prfs: "90",
  2123. // ConerName: roles[0].UserName,
  2124. // PatnRlts: "99",
  2125. // ConerAddr: miConfig.OrgName,
  2126. // ConerTel: admin.Mobile,
  2127. // HiType: order.Insutype,
  2128. // Insuplc: miConfig.InsuplcAdmdvs,
  2129. // MaindiagFlag: "1",
  2130. // BillCode: last_order.FaPiaoCode,
  2131. // BillNo: zero,
  2132. // BizSn: order.Number,
  2133. // PsnSelfPay: order.PsnPartAmt,
  2134. // PsnOwnPay: order.PsnPartAmt,
  2135. // AcctPay: order.AcctPay,
  2136. // PsnCashpay: order.PsnCashPay,
  2137. // HiPaymtd: "1",
  2138. // Hsorg: miConfig.InsuplcAdmdvs,
  2139. // HsorgOpter: miConfig.InsuplcAdmdvs,
  2140. // MedinsFillPsn: curRoles.UserName,
  2141. // MedinsFillDept: depart.Name,
  2142. // IptMedType: "2",
  2143. // }
  2144. // struct4101.SetlBegnDate = order.SetlTime
  2145. // struct4101.SetlEndDate = order.SetlTime
  2146. // time_arr := strings.Split(order.SetlTime, " ")
  2147. // struct4101.AdmTime = time_arr[0]
  2148. // struct4101.AdmEndTime = time_arr[0]
  2149. //
  2150. // var rf []CustomFundPay
  2151. // json.Unmarshal([]byte(order.SetlDetail), &rf)
  2152. //
  2153. // var tempFunPays []service.CustomStruct
  2154. // for _, item := range rf {
  2155. // var tempFunPay service.CustomStruct
  2156. // // v1, _ := strconv.ParseFloat(item.FundPayamt, 64)
  2157. // tempFunPay.FundPayamt = item.FundPayamt
  2158. // tempFunPay.FundPayType = item.FundPayType
  2159. // tempFunPays = append(tempFunPays, tempFunPay)
  2160. // }
  2161. // struct4101.CustomStruct = tempFunPays
  2162. // fmt.Println("111111111")
  2163. // fmt.Println(tempFunPays)
  2164. // fmt.Println(struct4101.CustomStruct)
  2165. // var tempDiaginfos []service.DiaginfoStructTwo
  2166. // var tempOpspdiseinfo2 service.OpspdiseinfoStruct
  2167. // var tempOpspdiseinfos []service.OpspdiseinfoStruct
  2168. //
  2169. // diagnosis_ids := strings.Split(order.Diagnosis, ",")
  2170. // var config []*models.HisXtDiagnoseConfig
  2171. // for _, item := range diagnosis_ids {
  2172. // id, _ := strconv.ParseInt(item, 10, 64)
  2173. // diagnosisConfig, _ := service.FindDiagnoseById(id)
  2174. // config = append(config, &diagnosisConfig)
  2175. // }
  2176. //
  2177. // for index, item := range config {
  2178. // if index == 0 {
  2179. // var tempDiaginfo service.DiaginfoStructTwo
  2180. // tempDiaginfo.DiagCode = item.CountryCode
  2181. // tempDiaginfo.DiagName = item.CountryContentName
  2182. // tempDiaginfo.DiagType = "1"
  2183. // tempDiaginfo.MaindiagFlag = "1"
  2184. // tempDiaginfos = append(tempDiaginfos, tempDiaginfo)
  2185. // } else {
  2186. //
  2187. // var tempDiaginfo service.DiaginfoStructTwo
  2188. // tempDiaginfo.DiagCode = item.CountryCode
  2189. // tempDiaginfo.DiagName = item.CountryContentName
  2190. // tempDiaginfo.DiagType = "2"
  2191. // tempDiaginfo.MaindiagFlag = "0"
  2192. // tempDiaginfos = append(tempDiaginfos, tempDiaginfo)
  2193. // }
  2194. // }
  2195. // struct4101.Diseinfo = tempDiaginfos
  2196. //
  2197. // sickConfigTwo, _ := service.FindSickById(his.SickType)
  2198. // tempOpspdiseinfo2.DiagCode = sickConfigTwo.ContentCode
  2199. // tempOpspdiseinfo2.DiagName = sickConfigTwo.CountryContentName
  2200. // tempOpspdiseinfo2.OprnOprtCode = sickConfigTwo.ContentCode
  2201. // tempOpspdiseinfo2.OprnOprtName = sickConfigTwo.CountryContentName
  2202. // tempOpspdiseinfos = append(tempOpspdiseinfos, tempOpspdiseinfo2)
  2203. // struct4101.OpspdiseinfoStruct = tempOpspdiseinfos
  2204. //
  2205. // var iteminfo service.IteminfoStruct
  2206. //
  2207. // var bedCostTotal float64 = 0 //床位总费
  2208. // var bedCostSelfTotal float64 = 0 //床位自费
  2209. // var bedCostPartSelfTotal float64 = 0 //床位部分项目自费
  2210. //
  2211. // var operationCostTotal float64 = 0 //手术费
  2212. // var operationCostSelfTotal float64 = 0 //手术费
  2213. // var operationCostPartSelfTotal float64 = 0 //手术费
  2214. //
  2215. // var otherCostTotal float64 = 0 //其他费用
  2216. // var otherCostSelfTotal float64 = 0 //其他费用
  2217. // var otherCostPartSelfTotal float64 = 0 //其他费用
  2218. //
  2219. // var materialCostTotal float64 = 0 //材料费
  2220. // var materialCostSelfTotal float64 = 0 //材料费
  2221. // var materialCostPartSelfTotal float64 = 0 //材料费
  2222. //
  2223. // var westernMedicineCostTotal float64 = 0 //西药费
  2224. // var westernMedicineCostSelfTotal float64 = 0 //西药费
  2225. // var westernMedicineCostPartSelfTotal float64 = 0 //西药费
  2226. //
  2227. // var chineseTraditionalMedicineCostTotal float64 = 0 //中成药
  2228. // var chineseTraditionalMedicineCostSelfTotal float64 = 0 //中成药
  2229. // var chineseTraditionalMedicineCostPartSelfTotal float64 = 0 //中成药
  2230. //
  2231. // var checkCostTotal float64 = 0 //检查费
  2232. // var checkCostSelfTotal float64 = 0 //检查费
  2233. // var checkCostPartSelfTotal float64 = 0 //检查费
  2234. //
  2235. // var laboratoryCostTotal float64 = 0 //化验费
  2236. // var laboratoryCostSelfTotal float64 = 0 //化验费
  2237. // var laboratoryCostPartSelfTotal float64 = 0 //化验费
  2238. //
  2239. // var treatCostTotal float64 = 0 //治疗费用
  2240. // var treatCostSelfTotal float64 = 0 //治疗费用
  2241. // var treatCostPartSelfTotal float64 = 0 //治疗费用
  2242. //
  2243. // decimal.DivisionPrecision = 2
  2244. //
  2245. // var bed_fulamt_ownpay_amt float64 = 0
  2246. // var operation_fulamt_ownpay_amt float64 = 0
  2247. // var other_fulamt_ownpay_amt float64 = 0
  2248. // var westernMedicine_fulamt_ownpay_amt float64 = 0
  2249. // var chineseTraditional_fulamt_ownpay_amt float64 = 0
  2250. // var check_fulamt_ownpay_amt float64 = 0
  2251. // var material_fulamt_ownpay_amt float64 = 0
  2252. // var laboratory_fulamt_ownpay_amt float64 = 0
  2253. // var treat_fulamt_ownpay_amt float64 = 0
  2254. //
  2255. // var bed_claa_sunmfee float64 = 0
  2256. // var bed_clab_amt float64 = 0
  2257. // var bed_other_amt float64 = 0
  2258. //
  2259. // var operation_claa_sunmfee float64 = 0
  2260. // var operation_clab_amt float64 = 0
  2261. // var operation_other_amt float64 = 0
  2262. //
  2263. // var other_claa_sunmfee float64 = 0
  2264. // var other_clab_amt float64 = 0
  2265. // var other_other_amt float64 = 0
  2266. //
  2267. // var westernMedicine_claa_sunmfee float64 = 0
  2268. // var westernMedicine_clab_amt float64 = 0
  2269. // var westernMedicine_other_amt float64 = 0
  2270. //
  2271. // var chineseTraditional_claa_sunmfee float64 = 0
  2272. // var chineseTraditional_clab_amt float64 = 0
  2273. // var chineseTraditional_other_amt float64 = 0
  2274. //
  2275. // var check_claa_sunmfee float64 = 0
  2276. // var check_clab_amt float64 = 0
  2277. // var check_other_amt float64 = 0
  2278. //
  2279. // var material_claa_sunmfee float64 = 0
  2280. // var material_clab_amt float64 = 0
  2281. // var material_other_amt float64 = 0
  2282. //
  2283. // var laboratory_claa_sunmfee float64 = 0
  2284. // var laboratory_clab_amt float64 = 0
  2285. // var laboratory_other_amt float64 = 0
  2286. //
  2287. // var treat_claa_sunmfee float64 = 0
  2288. // var treat_clab_amt float64 = 0
  2289. // var treat_other_amt float64 = 0
  2290. //
  2291. // for _, item := range order.HisOrderInfo {
  2292. // if item.MedChrgitmType == "01" { //床位费
  2293. // bedCostTotal, _ = decimal.NewFromFloat(bedCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2294. // bedCostSelfTotal, _ = decimal.NewFromFloat(bedCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2295. // bedCostPartSelfTotal, _ = decimal.NewFromFloat(bedCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2296. // bed_fulamt_ownpay_amt, _ = decimal.NewFromFloat(bed_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  2297. // if item.ChrgitmLv == "1" {
  2298. // bed_claa_sunmfee, _ = decimal.NewFromFloat(bed_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2299. // }
  2300. // if item.ChrgitmLv == "2" {
  2301. // bed_clab_amt, _ = decimal.NewFromFloat(bed_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2302. //
  2303. // }
  2304. // if item.ChrgitmLv == "3" {
  2305. // bed_other_amt, _ = decimal.NewFromFloat(bed_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2306. // }
  2307. //
  2308. // }
  2309. //
  2310. // if item.MedChrgitmType == "03" { //检查费
  2311. // checkCostTotal, _ = decimal.NewFromFloat(checkCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2312. // checkCostSelfTotal, _ = decimal.NewFromFloat(checkCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2313. // checkCostPartSelfTotal, _ = decimal.NewFromFloat(checkCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2314. // check_fulamt_ownpay_amt, _ = decimal.NewFromFloat(check_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  2315. // if item.ChrgitmLv == "1" {
  2316. //
  2317. // check_claa_sunmfee, _ = decimal.NewFromFloat(check_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2318. //
  2319. // }
  2320. // if item.ChrgitmLv == "2" {
  2321. // check_clab_amt, _ = decimal.NewFromFloat(check_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2322. //
  2323. // }
  2324. // if item.ChrgitmLv == "3" {
  2325. // check_other_amt, _ = decimal.NewFromFloat(check_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2326. // }
  2327. // }
  2328. //
  2329. // if item.MedChrgitmType == "04" { //化验费
  2330. // laboratoryCostTotal, _ = decimal.NewFromFloat(laboratoryCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2331. // laboratoryCostSelfTotal, _ = decimal.NewFromFloat(laboratoryCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2332. // laboratoryCostPartSelfTotal, _ = decimal.NewFromFloat(laboratoryCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2333. // laboratory_fulamt_ownpay_amt, _ = decimal.NewFromFloat(laboratory_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  2334. // if item.ChrgitmLv == "1" {
  2335. //
  2336. // laboratory_claa_sunmfee, _ = decimal.NewFromFloat(laboratory_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2337. //
  2338. // }
  2339. // if item.ChrgitmLv == "2" {
  2340. // laboratory_clab_amt, _ = decimal.NewFromFloat(laboratory_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2341. //
  2342. // }
  2343. // if item.ChrgitmLv == "3" {
  2344. // laboratory_other_amt, _ = decimal.NewFromFloat(laboratory_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2345. // }
  2346. // }
  2347. //
  2348. // if item.MedChrgitmType == "05" { //治疗费
  2349. // treatCostTotal, _ = decimal.NewFromFloat(treatCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2350. // treatCostSelfTotal, _ = decimal.NewFromFloat(treatCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2351. // treatCostPartSelfTotal, _ = decimal.NewFromFloat(treatCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2352. // treat_fulamt_ownpay_amt, _ = decimal.NewFromFloat(treat_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  2353. // if item.ChrgitmLv == "1" {
  2354. //
  2355. // treat_claa_sunmfee, _ = decimal.NewFromFloat(treat_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2356. //
  2357. // }
  2358. // if item.ChrgitmLv == "2" {
  2359. // treat_clab_amt, _ = decimal.NewFromFloat(treat_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2360. //
  2361. // }
  2362. // if item.ChrgitmLv == "3" {
  2363. // treat_other_amt, _ = decimal.NewFromFloat(treat_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2364. // }
  2365. // }
  2366. //
  2367. // if item.MedChrgitmType == "06" { //手术费
  2368. // operationCostTotal, _ = decimal.NewFromFloat(operationCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2369. // operationCostSelfTotal, _ = decimal.NewFromFloat(operationCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2370. // operationCostPartSelfTotal, _ = decimal.NewFromFloat(operationCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2371. // operation_fulamt_ownpay_amt, _ = decimal.NewFromFloat(operation_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  2372. //
  2373. // if item.ChrgitmLv == "1" {
  2374. //
  2375. // operation_claa_sunmfee, _ = decimal.NewFromFloat(operation_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2376. //
  2377. // }
  2378. // if item.ChrgitmLv == "2" {
  2379. // operation_clab_amt, _ = decimal.NewFromFloat(operation_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2380. //
  2381. // }
  2382. // if item.ChrgitmLv == "3" {
  2383. // operation_other_amt, _ = decimal.NewFromFloat(operation_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2384. // }
  2385. // }
  2386. //
  2387. // if item.MedChrgitmType == "08" { //材料费
  2388. // materialCostTotal, _ = decimal.NewFromFloat(materialCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2389. // materialCostSelfTotal, _ = decimal.NewFromFloat(materialCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2390. // materialCostPartSelfTotal, _ = decimal.NewFromFloat(materialCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2391. // material_fulamt_ownpay_amt, _ = decimal.NewFromFloat(material_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  2392. // if item.ChrgitmLv == "1" {
  2393. //
  2394. // material_claa_sunmfee, _ = decimal.NewFromFloat(material_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2395. //
  2396. // }
  2397. // if item.ChrgitmLv == "2" {
  2398. // material_clab_amt, _ = decimal.NewFromFloat(material_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2399. //
  2400. // }
  2401. // if item.ChrgitmLv == "3" {
  2402. // material_other_amt, _ = decimal.NewFromFloat(material_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2403. // }
  2404. // }
  2405. //
  2406. // if item.MedChrgitmType == "09" { //西药费
  2407. // westernMedicineCostTotal, _ = decimal.NewFromFloat(westernMedicineCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2408. // westernMedicineCostSelfTotal, _ = decimal.NewFromFloat(westernMedicineCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2409. // westernMedicineCostPartSelfTotal, _ = decimal.NewFromFloat(westernMedicineCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2410. // westernMedicine_fulamt_ownpay_amt, _ = decimal.NewFromFloat(westernMedicine_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  2411. // if item.ChrgitmLv == "1" {
  2412. //
  2413. // westernMedicine_claa_sunmfee, _ = decimal.NewFromFloat(westernMedicine_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2414. //
  2415. // }
  2416. // if item.ChrgitmLv == "2" {
  2417. // westernMedicine_clab_amt, _ = decimal.NewFromFloat(westernMedicine_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2418. //
  2419. // }
  2420. // if item.ChrgitmLv == "3" {
  2421. // westernMedicine_other_amt, _ = decimal.NewFromFloat(westernMedicine_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2422. // }
  2423. // }
  2424. //
  2425. // if item.MedChrgitmType == "11" { //中成费
  2426. // chineseTraditionalMedicineCostTotal, _ = decimal.NewFromFloat(chineseTraditionalMedicineCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2427. // chineseTraditionalMedicineCostSelfTotal, _ = decimal.NewFromFloat(chineseTraditionalMedicineCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2428. // chineseTraditionalMedicineCostPartSelfTotal, _ = decimal.NewFromFloat(chineseTraditionalMedicineCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2429. // chineseTraditional_fulamt_ownpay_amt, _ = decimal.NewFromFloat(chineseTraditional_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  2430. // if item.ChrgitmLv == "1" {
  2431. //
  2432. // chineseTraditional_claa_sunmfee, _ = decimal.NewFromFloat(chineseTraditional_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2433. //
  2434. // }
  2435. // if item.ChrgitmLv == "2" {
  2436. // chineseTraditional_clab_amt, _ = decimal.NewFromFloat(chineseTraditional_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2437. //
  2438. // }
  2439. // if item.ChrgitmLv == "3" {
  2440. // chineseTraditional_other_amt, _ = decimal.NewFromFloat(chineseTraditional_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2441. // }
  2442. // }
  2443. //
  2444. // if item.MedChrgitmType == "14" { //其他费
  2445. // otherCostTotal, _ = decimal.NewFromFloat(otherCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2446. // otherCostSelfTotal, _ = decimal.NewFromFloat(otherCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2447. // otherCostPartSelfTotal, _ = decimal.NewFromFloat(otherCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2448. // other_fulamt_ownpay_amt, _ = decimal.NewFromFloat(other_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  2449. // if item.ChrgitmLv == "1" {
  2450. // other_claa_sunmfee, _ = decimal.NewFromFloat(other_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2451. //
  2452. // }
  2453. // if item.ChrgitmLv == "2" {
  2454. // other_clab_amt, _ = decimal.NewFromFloat(other_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2455. //
  2456. // }
  2457. // if item.ChrgitmLv == "3" {
  2458. // other_other_amt, _ = decimal.NewFromFloat(other_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2459. // }
  2460. // }
  2461. //
  2462. // }
  2463. //
  2464. // var iteminfoStructs []service.IteminfoStruct
  2465. //
  2466. // if bedCostTotal != 0 {
  2467. // iteminfo.MedChrgitm = "01"
  2468. // iteminfo.FulamtOwnpayAmt = bed_fulamt_ownpay_amt
  2469. // iteminfo.Amt = bedCostTotal
  2470. // iteminfo.ClaaSumfee = bed_claa_sunmfee
  2471. // iteminfo.ClabAmt = bed_clab_amt
  2472. // iteminfo.OthAmt = bed_other_amt
  2473. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  2474. // }
  2475. //
  2476. // if checkCostTotal != 0 {
  2477. // iteminfo.MedChrgitm = "03"
  2478. // iteminfo.FulamtOwnpayAmt = check_fulamt_ownpay_amt
  2479. // iteminfo.Amt = checkCostTotal
  2480. // iteminfo.ClaaSumfee = check_claa_sunmfee
  2481. // iteminfo.ClabAmt = check_clab_amt
  2482. // iteminfo.OthAmt = check_other_amt
  2483. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  2484. //
  2485. // }
  2486. //
  2487. // if laboratoryCostTotal != 0 {
  2488. // iteminfo.MedChrgitm = "04"
  2489. // iteminfo.FulamtOwnpayAmt = laboratory_fulamt_ownpay_amt
  2490. // iteminfo.Amt = laboratoryCostTotal
  2491. // iteminfo.ClaaSumfee = laboratory_claa_sunmfee
  2492. // iteminfo.ClabAmt = laboratory_clab_amt
  2493. // iteminfo.OthAmt = laboratory_other_amt
  2494. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  2495. //
  2496. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  2497. //
  2498. // }
  2499. //
  2500. // if treatCostTotal != 0 {
  2501. // iteminfo.MedChrgitm = "05"
  2502. // iteminfo.FulamtOwnpayAmt = treat_fulamt_ownpay_amt
  2503. // iteminfo.Amt = treatCostTotal
  2504. // iteminfo.ClaaSumfee = treat_claa_sunmfee
  2505. // iteminfo.ClabAmt = treat_clab_amt
  2506. // iteminfo.OthAmt = treat_other_amt
  2507. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  2508. // //(struct4101.IteminfoStruct, iteminfo)
  2509. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  2510. // }
  2511. //
  2512. // if operationCostTotal != 0 {
  2513. // iteminfo.MedChrgitm = "06"
  2514. // iteminfo.FulamtOwnpayAmt = bed_fulamt_ownpay_amt
  2515. // iteminfo.Amt = operationCostTotal
  2516. // iteminfo.ClaaSumfee = operation_claa_sunmfee
  2517. // iteminfo.ClabAmt = operation_clab_amt
  2518. // iteminfo.OthAmt = operation_other_amt
  2519. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  2520. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  2521. // }
  2522. //
  2523. // if materialCostTotal != 0 {
  2524. // iteminfo.MedChrgitm = "08"
  2525. // iteminfo.FulamtOwnpayAmt = material_fulamt_ownpay_amt
  2526. // iteminfo.Amt = materialCostTotal
  2527. // iteminfo.ClaaSumfee = material_claa_sunmfee
  2528. // iteminfo.ClabAmt = material_clab_amt
  2529. // iteminfo.OthAmt = material_other_amt
  2530. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  2531. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  2532. // }
  2533. //
  2534. // if westernMedicineCostTotal != 0 {
  2535. // iteminfo.MedChrgitm = "09"
  2536. // iteminfo.FulamtOwnpayAmt = westernMedicine_fulamt_ownpay_amt
  2537. // iteminfo.Amt = westernMedicineCostTotal
  2538. // iteminfo.ClaaSumfee = westernMedicine_claa_sunmfee
  2539. // iteminfo.ClabAmt = westernMedicine_clab_amt
  2540. // iteminfo.OthAmt = westernMedicine_other_amt
  2541. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  2542. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  2543. //
  2544. // }
  2545. // if chineseTraditionalMedicineCostTotal != 0 {
  2546. // iteminfo.MedChrgitm = "11"
  2547. // iteminfo.FulamtOwnpayAmt = westernMedicine_fulamt_ownpay_amt
  2548. // iteminfo.Amt = westernMedicineCostTotal
  2549. // iteminfo.ClaaSumfee = westernMedicine_claa_sunmfee
  2550. // iteminfo.ClabAmt = westernMedicine_clab_amt
  2551. // iteminfo.OthAmt = westernMedicine_other_amt
  2552. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  2553. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  2554. //
  2555. // }
  2556. // if otherCostTotal != 0 {
  2557. // iteminfo.MedChrgitm = "14"
  2558. // iteminfo.FulamtOwnpayAmt = other_fulamt_ownpay_amt
  2559. // iteminfo.Amt = otherCostTotal
  2560. // iteminfo.ClaaSumfee = other_claa_sunmfee
  2561. // iteminfo.ClabAmt = other_clab_amt
  2562. // iteminfo.OthAmt = other_other_amt
  2563. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  2564. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  2565. //
  2566. // }
  2567. // struct4101.IteminfoStruct = iteminfoStructs
  2568. // struct4101.Ntly = "中国"
  2569. // struct4101.AdmCaty = "A03.06"
  2570. //
  2571. // var res ResultSeventeen
  2572. //
  2573. // if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  2574. // var resOther ResultSeventeenOther
  2575. // var pp models.PublicParams
  2576. // pp.InsuplcAdmdvs = miConfig.InsuplcAdmdvs
  2577. // pp.MdtrtareaAdmvs = miConfig.MdtrtareaAdmvs
  2578. // pp.FixmedinsName = miConfig.OrgName
  2579. // pp.FixmedinsCode = miConfig.Code
  2580. // pp.RequestUrl = miConfig.Url
  2581. // pp.Cainfo = miConfig.Cainfo
  2582. // pp.SecretKey = miConfig.SecretKey
  2583. // pp.AccessKey = miConfig.AccessKey
  2584. // pp.OpterName = curRoles.UserName
  2585. //
  2586. // client := &http.Client{}
  2587. // var req *http.Request
  2588. // data := make(map[string]interface{})
  2589. // data["struct4101"] = struct4101
  2590. // data["pp"] = pp
  2591. // bytesData, _ := json.Marshal(data)
  2592. // if miConfig.MdtrtareaAdmvs == "320921" {
  2593. // req, _ = http.NewRequest("POST", "http://192.168.3.111:9532/"+"jsyb/4101", bytes.NewReader(bytesData))
  2594. // } else {
  2595. // req, _ = http.NewRequest("POST", "http://192.168.5.251:9532/"+"jsyb/4101", bytes.NewReader(bytesData))
  2596. // }
  2597. // resp, _ := client.Do(req)
  2598. // defer resp.Body.Close()
  2599. // body, ioErr := ioutil.ReadAll(resp.Body)
  2600. // if ioErr != nil {
  2601. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  2602. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  2603. // return
  2604. // }
  2605. // var respJSON map[string]interface{}
  2606. // if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
  2607. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  2608. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  2609. // return
  2610. // }
  2611. //
  2612. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  2613. // userJSONBytes, _ := json.Marshal(respJSON)
  2614. // fmt.Println("log")
  2615. // fmt.Println(string(userJSONBytes))
  2616. // if err := json.Unmarshal(userJSONBytes, &resOther); err != nil {
  2617. // utils.ErrorLog("解析失败:%v", err)
  2618. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  2619. // return
  2620. // }
  2621. // res.InfRefmsgid = resOther.InfRefmsgid
  2622. // res.Output = resOther.Output
  2623. // res.ErrMsg = resOther.ErrMsg
  2624. // infocode, _ := strconv.ParseInt(resOther.Infcode, 10, 64)
  2625. // res.Infcode = infocode
  2626. // } else {
  2627. //
  2628. // result := service.Gdyb4101ForGZ(struct4101, miConfig.SecretKey, miConfig.OrgName, curRoles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.UserOrgId)
  2629. // var dat map[string]interface{}
  2630. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  2631. // fmt.Println(dat)
  2632. // } else {
  2633. // fmt.Println(err)
  2634. // }
  2635. // userJSONBytes, _ := json.Marshal(dat)
  2636. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  2637. // utils.ErrorLog("解析失败:%v", err)
  2638. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  2639. // return
  2640. // }
  2641. // }
  2642. //
  2643. // if res.Infcode != 0 {
  2644. //
  2645. // c.ServeSuccessJSON(map[string]interface{}{
  2646. // "failed_code": -10,
  2647. // "msg": res.ErrMsg,
  2648. // })
  2649. // return
  2650. // } else {
  2651. // order.FaPiaoNumber = zero
  2652. // order.FaPiaoCode = last_order.FaPiaoCode
  2653. // service.UpdateOrder(order)
  2654. // hisFundSettleListResult := &models.HisFundSettleListResult{
  2655. // Number: res.Output.SetlListId,
  2656. // Status: 1,
  2657. // Ctime: time.Now().Unix(),
  2658. // Mtime: time.Now().Unix(),
  2659. // UserOrgId: c.GetAdminUserInfo().CurrentOrgId,
  2660. // IsUpload: 1,
  2661. // OrderId: order_id,
  2662. // }
  2663. // service.CreateUploadRecord(hisFundSettleListResult)
  2664. // c.ServeSuccessJSON(map[string]interface{}{
  2665. // "msg": "上传成功",
  2666. // "result": hisFundSettleListResult,
  2667. // })
  2668. // return
  2669. // }
  2670. //}
  2671. //
  2672. //func (c *HisApiController) GetSettleListHospital() {
  2673. //
  2674. // order_id, _ := c.GetInt64("order_id")
  2675. // admin_user_id, _ := c.GetInt64("admin_user_id")
  2676. //
  2677. // order, _ := service.GetHisOrderByIDTwo(order_id)
  2678. // roles, _ := service.GetDoctorListTwo(c.GetAdminUserInfo().CurrentOrgId)
  2679. // his, _ := service.GetInHospitalRecordByNumber(order.MdtrtId)
  2680. // admin, _ := service.GetAdminUserByUserID(roles[0].AdminUserId)
  2681. // curRoles, _ := service.GetAdminUserInfoByID(c.GetAdminUserInfo().CurrentOrgId, admin_user_id)
  2682. // depart, _ := service.GetDepartMentDetail(curRoles.DepartmentId)
  2683. // miConfig, _ := service.FindMedicalInsuranceInfo(c.GetAdminUserInfo().CurrentOrgId)
  2684. //
  2685. // if order.ID == 0 {
  2686. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisOrderNoExistParamWrong)
  2687. // return
  2688. // }
  2689. //
  2690. // last_order, _ := service.GetLastHisOrder(c.GetAdminUserInfo().CurrentOrgId)
  2691. // max_order, _ := service.GetLastHisOrderTwo(c.GetAdminUserInfo().CurrentOrgId)
  2692. // count, _ := strconv.ParseInt(max_order.FaPiaoNumber, 10, 64)
  2693. // fmt.Println(count)
  2694. // var zero string
  2695. // number := count + 1
  2696. // if number >= 1000 {
  2697. // zero = "0000" + strconv.FormatInt(number, 10)
  2698. // } else if number >= 10000 {
  2699. // zero = "000" + strconv.FormatInt(number, 10)
  2700. // } else if number >= 100000 {
  2701. // zero = "00" + strconv.FormatInt(number, 10)
  2702. // } else if number >= 1000000 {
  2703. // zero = "0" + strconv.FormatInt(number, 10)
  2704. // } else {
  2705. // zero = strconv.FormatInt(number, 10)
  2706. // }
  2707. // fmt.Println(zero)
  2708. //
  2709. // struct4101 := service.Struct4101{
  2710. // PsnNo: order.PsnNo,
  2711. // MdtrtId: order.MdtrtId,
  2712. // SetlId: order.SetlId,
  2713. // PsnName: order.PsnName,
  2714. // Gend: order.Gend,
  2715. // Brdy: his.Brdy,
  2716. // Age: int64(order.Age),
  2717. // Naty: order.Naty,
  2718. // PatnCertType: "01",
  2719. // Certno: order.Certno,
  2720. // Prfs: "90",
  2721. // ConerName: roles[0].UserName,
  2722. // PatnRlts: "99",
  2723. // ConerAddr: miConfig.OrgName,
  2724. // ConerTel: admin.Mobile,
  2725. // HiType: order.Insutype,
  2726. // Insuplc: miConfig.InsuplcAdmdvs,
  2727. // MaindiagFlag: "1",
  2728. // BillCode: last_order.FaPiaoCode,
  2729. // BillNo: zero,
  2730. // BizSn: order.Number,
  2731. // PsnSelfPay: order.PsnPartAmt,
  2732. // PsnOwnPay: order.PsnPartAmt,
  2733. // AcctPay: order.AcctPay,
  2734. // PsnCashpay: order.PsnCashPay,
  2735. // HiPaymtd: "1",
  2736. // Hsorg: miConfig.InsuplcAdmdvs,
  2737. // HsorgOpter: miConfig.InsuplcAdmdvs,
  2738. // MedinsFillPsn: curRoles.UserName,
  2739. // MedinsFillDept: depart.Name,
  2740. // IptMedType: "2",
  2741. // AdmTime: his.InHosptialTime,
  2742. // AdmEndTime: his.OutHosptialTime,
  2743. // }
  2744. // struct4101.SetlBegnDate = order.SetlTime
  2745. // struct4101.SetlEndDate = order.SetlTime
  2746. //
  2747. // var rf []CustomFundPay
  2748. // json.Unmarshal([]byte(order.SetlDetail), &rf)
  2749. //
  2750. // var tempFunPays []service.CustomStruct
  2751. // for _, item := range rf {
  2752. // var tempFunPay service.CustomStruct
  2753. // tempFunPay.FundPayamt = item.FundPayamt
  2754. // tempFunPay.FundPayType = item.FundPayType
  2755. // tempFunPays = append(tempFunPays, tempFunPay)
  2756. // }
  2757. // fmt.Println("111111111")
  2758. // fmt.Println(tempFunPays)
  2759. // struct4101.CustomStruct = tempFunPays
  2760. // fmt.Println(struct4101.CustomStruct)
  2761. // var tempDiaginfos []service.DiaginfoStructTwo
  2762. // var tempOpspdiseinfo2 service.OpspdiseinfoStruct
  2763. // var tempOpspdiseinfos []service.OpspdiseinfoStruct
  2764. // diagnosis_ids := strings.Split(his.Diagnosis, ",")
  2765. // var config []*models.HisXtDiagnoseConfig
  2766. // for _, item := range diagnosis_ids {
  2767. // id, _ := strconv.ParseInt(item, 10, 64)
  2768. // diagnosisConfig, _ := service.FindDiagnoseById(id)
  2769. // config = append(config, &diagnosisConfig)
  2770. // }
  2771. //
  2772. // for index, item := range config {
  2773. // if index == 0 {
  2774. // var tempDiaginfo service.DiaginfoStructTwo
  2775. // tempDiaginfo.DiagCode = item.CountryCode
  2776. // tempDiaginfo.DiagName = item.CountryContentName
  2777. // tempDiaginfo.DiagType = "1"
  2778. // tempDiaginfo.MaindiagFlag = "1"
  2779. // tempDiaginfos = append(tempDiaginfos, tempDiaginfo)
  2780. // } else {
  2781. //
  2782. // var tempDiaginfo service.DiaginfoStructTwo
  2783. // tempDiaginfo.DiagCode = item.CountryCode
  2784. // tempDiaginfo.DiagName = item.CountryContentName
  2785. // tempDiaginfo.DiagType = "2"
  2786. // tempDiaginfo.MaindiagFlag = "0"
  2787. // tempDiaginfos = append(tempDiaginfos, tempDiaginfo)
  2788. // }
  2789. // }
  2790. // struct4101.Diseinfo = tempDiaginfos
  2791. //
  2792. // sickConfigTwo, _ := service.FindSickById(his.SickType)
  2793. // tempOpspdiseinfo2.DiagCode = sickConfigTwo.ContentCode
  2794. // tempOpspdiseinfo2.DiagName = sickConfigTwo.CountryContentName
  2795. // tempOpspdiseinfo2.OprnOprtCode = ""
  2796. // tempOpspdiseinfo2.OprnOprtName = ""
  2797. // tempOpspdiseinfos = append(tempOpspdiseinfos, tempOpspdiseinfo2)
  2798. // struct4101.OpspdiseinfoStruct = tempOpspdiseinfos
  2799. //
  2800. // var iteminfo service.IteminfoStruct
  2801. //
  2802. // var bedCostTotal float64 = 0 //床位总费
  2803. // var bedCostSelfTotal float64 = 0 //床位自费
  2804. // var bedCostPartSelfTotal float64 = 0 //床位部分项目自费
  2805. //
  2806. // var operationCostTotal float64 = 0 //手术费
  2807. // var operationCostSelfTotal float64 = 0 //手术费
  2808. // var operationCostPartSelfTotal float64 = 0 //手术费
  2809. //
  2810. // var otherCostTotal float64 = 0 //其他费用
  2811. // var otherCostSelfTotal float64 = 0 //其他费用
  2812. // var otherCostPartSelfTotal float64 = 0 //其他费用
  2813. //
  2814. // var materialCostTotal float64 = 0 //材料费
  2815. // var materialCostSelfTotal float64 = 0 //材料费
  2816. // var materialCostPartSelfTotal float64 = 0 //材料费
  2817. //
  2818. // var westernMedicineCostTotal float64 = 0 //西药费
  2819. // var westernMedicineCostSelfTotal float64 = 0 //西药费
  2820. // var westernMedicineCostPartSelfTotal float64 = 0 //西药费
  2821. //
  2822. // var chineseTraditionalMedicineCostTotal float64 = 0 //中成药
  2823. // var chineseTraditionalMedicineCostSelfTotal float64 = 0 //中成药
  2824. // var chineseTraditionalMedicineCostPartSelfTotal float64 = 0 //中成药
  2825. //
  2826. // var checkCostTotal float64 = 0 //检查费
  2827. // var checkCostSelfTotal float64 = 0 //检查费
  2828. // var checkCostPartSelfTotal float64 = 0 //检查费
  2829. //
  2830. // var laboratoryCostTotal float64 = 0 //化验费
  2831. // var laboratoryCostSelfTotal float64 = 0 //化验费
  2832. // var laboratoryCostPartSelfTotal float64 = 0 //化验费
  2833. //
  2834. // var treatCostTotal float64 = 0 //治疗费用
  2835. // var treatCostSelfTotal float64 = 0 //治疗费用
  2836. // var treatCostPartSelfTotal float64 = 0 //治疗费用
  2837. //
  2838. // decimal.DivisionPrecision = 2
  2839. //
  2840. // var bed_fulamt_ownpay_amt float64 = 0
  2841. // var operation_fulamt_ownpay_amt float64 = 0
  2842. // var other_fulamt_ownpay_amt float64 = 0
  2843. // var westernMedicine_fulamt_ownpay_amt float64 = 0
  2844. // var chineseTraditional_fulamt_ownpay_amt float64 = 0
  2845. // var check_fulamt_ownpay_amt float64 = 0
  2846. // var material_fulamt_ownpay_amt float64 = 0
  2847. // var laboratory_fulamt_ownpay_amt float64 = 0
  2848. // var treat_fulamt_ownpay_amt float64 = 0
  2849. //
  2850. // var bed_claa_sunmfee float64 = 0
  2851. // var bed_clab_amt float64 = 0
  2852. // var bed_other_amt float64 = 0
  2853. //
  2854. // var operation_claa_sunmfee float64 = 0
  2855. // var operation_clab_amt float64 = 0
  2856. // var operation_other_amt float64 = 0
  2857. //
  2858. // var other_claa_sunmfee float64 = 0
  2859. // var other_clab_amt float64 = 0
  2860. // var other_other_amt float64 = 0
  2861. //
  2862. // var westernMedicine_claa_sunmfee float64 = 0
  2863. // var westernMedicine_clab_amt float64 = 0
  2864. // var westernMedicine_other_amt float64 = 0
  2865. //
  2866. // var chineseTraditional_claa_sunmfee float64 = 0
  2867. // var chineseTraditional_clab_amt float64 = 0
  2868. // var chineseTraditional_other_amt float64 = 0
  2869. //
  2870. // var check_claa_sunmfee float64 = 0
  2871. // var check_clab_amt float64 = 0
  2872. // var check_other_amt float64 = 0
  2873. //
  2874. // var material_claa_sunmfee float64 = 0
  2875. // var material_clab_amt float64 = 0
  2876. // var material_other_amt float64 = 0
  2877. //
  2878. // var laboratory_claa_sunmfee float64 = 0
  2879. // var laboratory_clab_amt float64 = 0
  2880. // var laboratory_other_amt float64 = 0
  2881. //
  2882. // var treat_claa_sunmfee float64 = 0
  2883. // var treat_clab_amt float64 = 0
  2884. // var treat_other_amt float64 = 0
  2885. //
  2886. // for _, item := range order.HisOrderInfo {
  2887. // if item.MedChrgitmType == "01" { //床位费
  2888. // bedCostTotal, _ = decimal.NewFromFloat(bedCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2889. // bedCostSelfTotal, _ = decimal.NewFromFloat(bedCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2890. // bedCostPartSelfTotal, _ = decimal.NewFromFloat(bedCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2891. // bed_fulamt_ownpay_amt, _ = decimal.NewFromFloat(bed_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  2892. // if item.ChrgitmLv == "1" {
  2893. // bed_claa_sunmfee, _ = decimal.NewFromFloat(bed_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2894. // }
  2895. // if item.ChrgitmLv == "2" {
  2896. // bed_clab_amt, _ = decimal.NewFromFloat(bed_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2897. //
  2898. // }
  2899. // if item.ChrgitmLv == "3" {
  2900. // bed_other_amt, _ = decimal.NewFromFloat(bed_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2901. // }
  2902. //
  2903. // }
  2904. //
  2905. // if item.MedChrgitmType == "03" { //检查费
  2906. // checkCostTotal, _ = decimal.NewFromFloat(checkCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2907. // checkCostSelfTotal, _ = decimal.NewFromFloat(checkCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2908. // checkCostPartSelfTotal, _ = decimal.NewFromFloat(checkCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2909. // check_fulamt_ownpay_amt, _ = decimal.NewFromFloat(check_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  2910. // if item.ChrgitmLv == "1" {
  2911. //
  2912. // check_claa_sunmfee, _ = decimal.NewFromFloat(check_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2913. //
  2914. // }
  2915. // if item.ChrgitmLv == "2" {
  2916. // check_clab_amt, _ = decimal.NewFromFloat(check_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2917. //
  2918. // }
  2919. // if item.ChrgitmLv == "3" {
  2920. // check_other_amt, _ = decimal.NewFromFloat(check_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2921. // }
  2922. // }
  2923. //
  2924. // if item.MedChrgitmType == "04" { //化验费
  2925. // laboratoryCostTotal, _ = decimal.NewFromFloat(laboratoryCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2926. // laboratoryCostSelfTotal, _ = decimal.NewFromFloat(laboratoryCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2927. // laboratoryCostPartSelfTotal, _ = decimal.NewFromFloat(laboratoryCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2928. // laboratory_fulamt_ownpay_amt, _ = decimal.NewFromFloat(laboratory_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  2929. // if item.ChrgitmLv == "1" {
  2930. //
  2931. // laboratory_claa_sunmfee, _ = decimal.NewFromFloat(laboratory_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2932. //
  2933. // }
  2934. // if item.ChrgitmLv == "2" {
  2935. // laboratory_clab_amt, _ = decimal.NewFromFloat(laboratory_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2936. //
  2937. // }
  2938. // if item.ChrgitmLv == "3" {
  2939. // laboratory_other_amt, _ = decimal.NewFromFloat(laboratory_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2940. // }
  2941. // }
  2942. //
  2943. // if item.MedChrgitmType == "05" { //治疗费
  2944. // treatCostTotal, _ = decimal.NewFromFloat(treatCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2945. // treatCostSelfTotal, _ = decimal.NewFromFloat(treatCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2946. // treatCostPartSelfTotal, _ = decimal.NewFromFloat(treatCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2947. // treat_fulamt_ownpay_amt, _ = decimal.NewFromFloat(treat_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  2948. // if item.ChrgitmLv == "1" {
  2949. //
  2950. // treat_claa_sunmfee, _ = decimal.NewFromFloat(treat_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2951. //
  2952. // }
  2953. // if item.ChrgitmLv == "2" {
  2954. // treat_clab_amt, _ = decimal.NewFromFloat(treat_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2955. //
  2956. // }
  2957. // if item.ChrgitmLv == "3" {
  2958. // treat_other_amt, _ = decimal.NewFromFloat(treat_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2959. // }
  2960. // }
  2961. //
  2962. // if item.MedChrgitmType == "06" { //手术费
  2963. // operationCostTotal, _ = decimal.NewFromFloat(operationCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2964. // operationCostSelfTotal, _ = decimal.NewFromFloat(operationCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2965. // operationCostPartSelfTotal, _ = decimal.NewFromFloat(operationCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2966. // operation_fulamt_ownpay_amt, _ = decimal.NewFromFloat(operation_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  2967. //
  2968. // if item.ChrgitmLv == "1" {
  2969. //
  2970. // operation_claa_sunmfee, _ = decimal.NewFromFloat(operation_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2971. //
  2972. // }
  2973. // if item.ChrgitmLv == "2" {
  2974. // operation_clab_amt, _ = decimal.NewFromFloat(operation_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2975. //
  2976. // }
  2977. // if item.ChrgitmLv == "3" {
  2978. // operation_other_amt, _ = decimal.NewFromFloat(operation_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2979. // }
  2980. // }
  2981. //
  2982. // if item.MedChrgitmType == "08" { //材料费
  2983. // materialCostTotal, _ = decimal.NewFromFloat(materialCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2984. // materialCostSelfTotal, _ = decimal.NewFromFloat(materialCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2985. // materialCostPartSelfTotal, _ = decimal.NewFromFloat(materialCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2986. // material_fulamt_ownpay_amt, _ = decimal.NewFromFloat(material_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  2987. // if item.ChrgitmLv == "1" {
  2988. //
  2989. // material_claa_sunmfee, _ = decimal.NewFromFloat(material_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  2990. //
  2991. // }
  2992. // if item.ChrgitmLv == "2" {
  2993. // material_clab_amt, _ = decimal.NewFromFloat(material_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  2994. //
  2995. // }
  2996. // if item.ChrgitmLv == "3" {
  2997. // material_other_amt, _ = decimal.NewFromFloat(material_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  2998. // }
  2999. // }
  3000. //
  3001. // if item.MedChrgitmType == "09" { //西药费
  3002. // westernMedicineCostTotal, _ = decimal.NewFromFloat(westernMedicineCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3003. // westernMedicineCostSelfTotal, _ = decimal.NewFromFloat(westernMedicineCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3004. // westernMedicineCostPartSelfTotal, _ = decimal.NewFromFloat(westernMedicineCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3005. // westernMedicine_fulamt_ownpay_amt, _ = decimal.NewFromFloat(westernMedicine_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  3006. // if item.ChrgitmLv == "1" {
  3007. //
  3008. // westernMedicine_claa_sunmfee, _ = decimal.NewFromFloat(westernMedicine_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3009. //
  3010. // }
  3011. // if item.ChrgitmLv == "2" {
  3012. // westernMedicine_clab_amt, _ = decimal.NewFromFloat(westernMedicine_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3013. //
  3014. // }
  3015. // if item.ChrgitmLv == "3" {
  3016. // westernMedicine_other_amt, _ = decimal.NewFromFloat(westernMedicine_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3017. // }
  3018. // }
  3019. //
  3020. // if item.MedChrgitmType == "11" { //中成费
  3021. // chineseTraditionalMedicineCostTotal, _ = decimal.NewFromFloat(chineseTraditionalMedicineCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3022. // chineseTraditionalMedicineCostSelfTotal, _ = decimal.NewFromFloat(chineseTraditionalMedicineCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3023. // chineseTraditionalMedicineCostPartSelfTotal, _ = decimal.NewFromFloat(chineseTraditionalMedicineCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3024. // chineseTraditional_fulamt_ownpay_amt, _ = decimal.NewFromFloat(chineseTraditional_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  3025. // if item.ChrgitmLv == "1" {
  3026. //
  3027. // chineseTraditional_claa_sunmfee, _ = decimal.NewFromFloat(chineseTraditional_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3028. //
  3029. // }
  3030. // if item.ChrgitmLv == "2" {
  3031. // chineseTraditional_clab_amt, _ = decimal.NewFromFloat(chineseTraditional_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3032. //
  3033. // }
  3034. // if item.ChrgitmLv == "3" {
  3035. // chineseTraditional_other_amt, _ = decimal.NewFromFloat(chineseTraditional_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3036. // }
  3037. // }
  3038. //
  3039. // if item.MedChrgitmType == "14" { //其他费
  3040. // otherCostTotal, _ = decimal.NewFromFloat(otherCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3041. // otherCostSelfTotal, _ = decimal.NewFromFloat(otherCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3042. // otherCostPartSelfTotal, _ = decimal.NewFromFloat(otherCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3043. // other_fulamt_ownpay_amt, _ = decimal.NewFromFloat(other_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  3044. // if item.ChrgitmLv == "1" {
  3045. // other_claa_sunmfee, _ = decimal.NewFromFloat(other_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3046. //
  3047. // }
  3048. // if item.ChrgitmLv == "2" {
  3049. // other_clab_amt, _ = decimal.NewFromFloat(other_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3050. //
  3051. // }
  3052. // if item.ChrgitmLv == "3" {
  3053. // other_other_amt, _ = decimal.NewFromFloat(other_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3054. // }
  3055. // }
  3056. //
  3057. // }
  3058. //
  3059. // var iteminfoStructs []service.IteminfoStruct
  3060. //
  3061. // if bedCostTotal != 0 {
  3062. // iteminfo.MedChrgitm = "01"
  3063. // iteminfo.FulamtOwnpayAmt = bed_fulamt_ownpay_amt
  3064. // iteminfo.Amt = bedCostTotal
  3065. // iteminfo.ClaaSumfee = bed_claa_sunmfee
  3066. // iteminfo.ClabAmt = bed_clab_amt
  3067. // iteminfo.OthAmt = bed_other_amt
  3068. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3069. // }
  3070. //
  3071. // if checkCostTotal != 0 {
  3072. // iteminfo.MedChrgitm = "03"
  3073. // iteminfo.FulamtOwnpayAmt = check_fulamt_ownpay_amt
  3074. // iteminfo.Amt = checkCostTotal
  3075. // iteminfo.ClaaSumfee = check_claa_sunmfee
  3076. // iteminfo.ClabAmt = check_clab_amt
  3077. // iteminfo.OthAmt = check_other_amt
  3078. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3079. //
  3080. // }
  3081. //
  3082. // if laboratoryCostTotal != 0 {
  3083. // iteminfo.MedChrgitm = "04"
  3084. // iteminfo.FulamtOwnpayAmt = laboratory_fulamt_ownpay_amt
  3085. // iteminfo.Amt = laboratoryCostTotal
  3086. // iteminfo.ClaaSumfee = laboratory_claa_sunmfee
  3087. // iteminfo.ClabAmt = laboratory_clab_amt
  3088. // iteminfo.OthAmt = laboratory_other_amt
  3089. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3090. //
  3091. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3092. //
  3093. // }
  3094. //
  3095. // if treatCostTotal != 0 {
  3096. // iteminfo.MedChrgitm = "05"
  3097. // iteminfo.FulamtOwnpayAmt = treat_fulamt_ownpay_amt
  3098. // iteminfo.Amt = treatCostTotal
  3099. // iteminfo.ClaaSumfee = treat_claa_sunmfee
  3100. // iteminfo.ClabAmt = treat_clab_amt
  3101. // iteminfo.OthAmt = treat_other_amt
  3102. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3103. // //(struct4101.IteminfoStruct, iteminfo)
  3104. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3105. // }
  3106. //
  3107. // if operationCostTotal != 0 {
  3108. // iteminfo.MedChrgitm = "06"
  3109. // iteminfo.FulamtOwnpayAmt = bed_fulamt_ownpay_amt
  3110. // iteminfo.Amt = operationCostTotal
  3111. // iteminfo.ClaaSumfee = operation_claa_sunmfee
  3112. // iteminfo.ClabAmt = operation_clab_amt
  3113. // iteminfo.OthAmt = operation_other_amt
  3114. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3115. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3116. // }
  3117. //
  3118. // if materialCostTotal != 0 {
  3119. // iteminfo.MedChrgitm = "08"
  3120. // iteminfo.FulamtOwnpayAmt = material_fulamt_ownpay_amt
  3121. // iteminfo.Amt = materialCostTotal
  3122. // iteminfo.ClaaSumfee = material_claa_sunmfee
  3123. // iteminfo.ClabAmt = material_clab_amt
  3124. // iteminfo.OthAmt = material_other_amt
  3125. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3126. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3127. // }
  3128. //
  3129. // if westernMedicineCostTotal != 0 {
  3130. // iteminfo.MedChrgitm = "09"
  3131. // iteminfo.FulamtOwnpayAmt = westernMedicine_fulamt_ownpay_amt
  3132. // iteminfo.Amt = westernMedicineCostTotal
  3133. // iteminfo.ClaaSumfee = westernMedicine_claa_sunmfee
  3134. // iteminfo.ClabAmt = westernMedicine_clab_amt
  3135. // iteminfo.OthAmt = westernMedicine_other_amt
  3136. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3137. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3138. //
  3139. // }
  3140. // if chineseTraditionalMedicineCostTotal != 0 {
  3141. // iteminfo.MedChrgitm = "11"
  3142. // iteminfo.FulamtOwnpayAmt = westernMedicine_fulamt_ownpay_amt
  3143. // iteminfo.Amt = westernMedicineCostTotal
  3144. // iteminfo.ClaaSumfee = westernMedicine_claa_sunmfee
  3145. // iteminfo.ClabAmt = westernMedicine_clab_amt
  3146. // iteminfo.OthAmt = westernMedicine_other_amt
  3147. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3148. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3149. //
  3150. // }
  3151. // if otherCostTotal != 0 {
  3152. // iteminfo.MedChrgitm = "14"
  3153. // iteminfo.FulamtOwnpayAmt = other_fulamt_ownpay_amt
  3154. // iteminfo.Amt = otherCostTotal
  3155. // iteminfo.ClaaSumfee = other_claa_sunmfee
  3156. // iteminfo.ClabAmt = other_clab_amt
  3157. // iteminfo.OthAmt = other_other_amt
  3158. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3159. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3160. //
  3161. // }
  3162. // struct4101.IteminfoStruct = iteminfoStructs
  3163. // struct4101.Ntly = "中国"
  3164. // struct4101.AdmCaty = "A03.06"
  3165. // fmt.Println("111111111")
  3166. // fmt.Println(tempFunPays)
  3167. // struct4101.CustomStruct = tempFunPays
  3168. // fmt.Println(struct4101.CustomStruct)
  3169. // result := service.Gdyb4101ForGZ(struct4101, miConfig.SecretKey, miConfig.OrgName, curRoles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.UserOrgId)
  3170. // fmt.Println(result)
  3171. //
  3172. // var dat map[string]interface{}
  3173. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  3174. // fmt.Println(dat)
  3175. // } else {
  3176. // fmt.Println(err)
  3177. // }
  3178. // userJSONBytes, _ := json.Marshal(dat)
  3179. // var res ResultSeventeen
  3180. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  3181. // utils.ErrorLog("解析失败:%v", err)
  3182. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  3183. // return
  3184. // }
  3185. // if res.Infcode != 0 {
  3186. //
  3187. // c.ServeSuccessJSON(map[string]interface{}{
  3188. // "failed_code": -10,
  3189. // "msg": res.ErrMsg,
  3190. // })
  3191. // return
  3192. // } else {
  3193. // order.FaPiaoNumber = zero
  3194. // order.FaPiaoCode = last_order.FaPiaoCode
  3195. // service.UpdateOrder(order)
  3196. // hisFundSettleListResult := &models.HisFundSettleListResult{
  3197. // Number: res.Output.SetlListId,
  3198. // Status: 1,
  3199. // Ctime: time.Now().Unix(),
  3200. // Mtime: time.Now().Unix(),
  3201. // UserOrgId: c.GetAdminUserInfo().CurrentOrgId,
  3202. // IsUpload: 1,
  3203. // OrderId: order_id,
  3204. // }
  3205. // service.CreateUploadRecord(hisFundSettleListResult)
  3206. // c.ServeSuccessJSON(map[string]interface{}{
  3207. // "msg": "上传成功",
  3208. // "result": hisFundSettleListResult,
  3209. // })
  3210. // return
  3211. // }
  3212. //}
  3213. //
  3214. //func (c *HisApiController) GetBatchSettleList() {
  3215. // orders, _ := service.GetAllHisOrder(10106)
  3216. // for _, item := range orders {
  3217. // order_id := item.ID
  3218. // order, _ := service.GetHisOrderByIDTwo(order_id)
  3219. // roles, _ := service.GetDoctorListTwo(c.GetAdminUserInfo().CurrentOrgId)
  3220. // his, _ := service.GetHisPatientByNumber(order.MdtrtId)
  3221. // admin, _ := service.GetAdminUserByUserID(roles[0].AdminUserId)
  3222. // curRoles, _ := service.GetAdminUserInfoByID(c.GetAdminUserInfo().CurrentOrgId, 2495)
  3223. // depart, _ := service.GetDepartMentDetail(curRoles.DepartmentId)
  3224. // miConfig, _ := service.FindMedicalInsuranceInfo(c.GetAdminUserInfo().CurrentOrgId)
  3225. //
  3226. // if order.ID == 0 {
  3227. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisOrderNoExistParamWrong)
  3228. // return
  3229. // }
  3230. // if his.BalanceAccountsType == 2 {
  3231. // continue
  3232. // }
  3233. // struct4101 := service.Struct4101{
  3234. // PsnNo: order.PsnNo,
  3235. // MdtrtId: order.MdtrtId,
  3236. // SetlId: order.SetlId,
  3237. // PsnName: order.PsnName,
  3238. // Gend: order.Gend,
  3239. // Brdy: his.Brdy,
  3240. // Age: his.Age,
  3241. // Naty: order.Naty,
  3242. // PatnCertType: "01",
  3243. // Certno: order.Certno,
  3244. // Prfs: "90",
  3245. // ConerName: roles[0].UserName,
  3246. // PatnRlts: "99",
  3247. // ConerAddr: miConfig.OrgName,
  3248. // ConerTel: admin.Mobile,
  3249. // HiType: order.Insutype,
  3250. // Insuplc: his.InsuplcAdmdvs,
  3251. // MaindiagFlag: "1",
  3252. // BillCode: order.FaPiaoCode,
  3253. // BillNo: order.FaPiaoNumber,
  3254. // BizSn: order.Number,
  3255. // PsnSelfPay: order.PsnPartAmt,
  3256. // PsnOwnPay: order.PsnPartAmt,
  3257. // AcctPay: order.AcctPay,
  3258. // PsnCashpay: order.PsnCashPay,
  3259. // HiPaymtd: "1",
  3260. // Hsorg: his.InsuplcAdmdvs,
  3261. // HsorgOpter: his.InsuplcAdmdvs,
  3262. // MedinsFillPsn: curRoles.UserName,
  3263. // MedinsFillDept: depart.Name,
  3264. // IptMedType: "2",
  3265. // }
  3266. // struct4101.SetlBegnDate = order.SetlTime
  3267. // struct4101.SetlEndDate = order.SetlTime
  3268. // //if order.SettleType == 1 {
  3269. // // t := time.Unix(int64(order.SettleAccountsDate), 0)
  3270. // // dateStr := t.Format("2006-01-02")
  3271. // // struct4101.SetlBegnDate = dateStr
  3272. // // struct4101.SetlEndDate = dateStr
  3273. // //} else {
  3274. // // t := time.Unix(int64(order.SettleStartTime), 0)
  3275. // // t2 := time.Unix(int64(order.SettleEndTime), 0)
  3276. // // dateStartStr := t.Format("2006-01-02")
  3277. // // dateEndStr := t2.Format("2006-01-02")
  3278. // // struct4101.SetlBegnDate = dateStartStr
  3279. // // struct4101.SetlEndDate = dateEndStr
  3280. // //}
  3281. //
  3282. // var rf []CustomFundPay
  3283. // json.Unmarshal([]byte(order.SetlDetail), &rf)
  3284. //
  3285. // var tempFunPays []service.CustomStruct
  3286. // var tempFunPay610100 service.CustomStruct
  3287. //
  3288. // for _, item := range rf {
  3289. // if item.FundPayType == "610100" {
  3290. // tempFunPay610100.FundPayamt, _ = decimal.NewFromFloat(tempFunPay610100.FundPayamt).Add(decimal.NewFromFloat(item.FundPayamt)).Float64()
  3291. // tempFunPay610100.FundPayType = item.FundPayType
  3292. // } else {
  3293. // var tempFunPay service.CustomStruct
  3294. // tempFunPay.FundPayamt = item.FundPayamt
  3295. // tempFunPay.FundPayType = item.FundPayType
  3296. // tempFunPays = append(tempFunPays, tempFunPay)
  3297. // }
  3298. // }
  3299. // tempFunPays = append(tempFunPays, tempFunPay610100)
  3300. // struct4101.CustomStruct = tempFunPays
  3301. //
  3302. // var tempDiaginfos []service.DiaginfoStructTwo
  3303. // var tempOpspdiseinfo2 service.OpspdiseinfoStruct
  3304. // var tempOpspdiseinfos []service.OpspdiseinfoStruct
  3305. //
  3306. // diagnosis_ids := strings.Split(his.Diagnosis, ",")
  3307. // var config []*models.HisXtDiagnoseConfig
  3308. // for _, item := range diagnosis_ids {
  3309. // id, _ := strconv.ParseInt(item, 10, 64)
  3310. // diagnosisConfig, _ := service.FindDiagnoseById(id)
  3311. // config = append(config, &diagnosisConfig)
  3312. // }
  3313. //
  3314. // for index, item := range config {
  3315. // if index == 0 {
  3316. // var tempDiaginfo service.DiaginfoStructTwo
  3317. // tempDiaginfo.DiagCode = item.CountryCode
  3318. // tempDiaginfo.DiagName = item.CountryContentName
  3319. // tempDiaginfo.DiagType = "1"
  3320. // tempDiaginfo.MaindiagFlag = "1"
  3321. // tempDiaginfos = append(tempDiaginfos, tempDiaginfo)
  3322. // } else {
  3323. //
  3324. // var tempDiaginfo service.DiaginfoStructTwo
  3325. // tempDiaginfo.DiagCode = item.CountryCode
  3326. // tempDiaginfo.DiagName = item.CountryContentName
  3327. // tempDiaginfo.DiagType = "2"
  3328. // tempDiaginfo.MaindiagFlag = "0"
  3329. // tempDiaginfos = append(tempDiaginfos, tempDiaginfo)
  3330. // }
  3331. // }
  3332. // struct4101.Diseinfo = tempDiaginfos
  3333. //
  3334. // sickConfigTwo, _ := service.FindSickById(his.SickType)
  3335. // tempOpspdiseinfo2.DiagCode = sickConfigTwo.ContentCode
  3336. // tempOpspdiseinfo2.DiagName = sickConfigTwo.CountryContentName
  3337. // tempOpspdiseinfo2.OprnOprtCode = ""
  3338. // tempOpspdiseinfo2.OprnOprtName = ""
  3339. // tempOpspdiseinfos = append(tempOpspdiseinfos, tempOpspdiseinfo2)
  3340. // struct4101.OpspdiseinfoStruct = tempOpspdiseinfos
  3341. //
  3342. // var iteminfo service.IteminfoStruct
  3343. //
  3344. // var bedCostTotal float64 = 0 //床位总费
  3345. // var bedCostSelfTotal float64 = 0 //床位自费
  3346. // var bedCostPartSelfTotal float64 = 0 //床位部分项目自费
  3347. //
  3348. // var examineCostTotal float64 = 0 //诊查总费
  3349. // var examineCostSelfTotal float64 = 0 //诊查自费
  3350. // var examineCostPartSelfTotal float64 = 0 //诊查部分项目自费
  3351. //
  3352. // var nursingCostTotal float64 = 0 //护理总费
  3353. // var nursingCostSelfTotal float64 = 0 //护理自费
  3354. // var nursingCostPartSelfTotal float64 = 0 //护理部分项目自费
  3355. //
  3356. // var chineseMedicineCostTotal float64 = 0 //中成药
  3357. // var chineseMedicineCostSelfTotal float64 = 0 //中成药
  3358. // var chineseMedicineCostPartSelfTotal float64 = 0 //中成药
  3359. //
  3360. // var commonlyTreatmentCostTotal float64 = 0 //一般诊疗费
  3361. // var commonlyTreatmentCostSelfTotal float64 = 0 //一般诊疗费
  3362. // var commonlyTreatmentCostPartSelfTotal float64 = 0 //一般诊疗费
  3363. //
  3364. // var registerCostTotal float64 = 0 //一般诊疗费
  3365. // var registerCostSelfTotal float64 = 0 //一般诊疗费
  3366. // var registerPartSelfTotal float64 = 0 //一般诊疗费
  3367. //
  3368. // var operationCostTotal float64 = 0 //手术费
  3369. // var operationCostSelfTotal float64 = 0 //手术费
  3370. // var operationCostPartSelfTotal float64 = 0 //手术费
  3371. //
  3372. // var otherCostTotal float64 = 0 //其他费用
  3373. // var otherCostSelfTotal float64 = 0 //其他费用
  3374. // var otherCostPartSelfTotal float64 = 0 //其他费用
  3375. //
  3376. // var materialCostTotal float64 = 0 //材料费
  3377. // var materialCostSelfTotal float64 = 0 //材料费
  3378. // var materialCostPartSelfTotal float64 = 0 //材料费
  3379. //
  3380. // var westernMedicineCostTotal float64 = 0 //西药费
  3381. // var westernMedicineCostSelfTotal float64 = 0 //西药费
  3382. // var westernMedicineCostPartSelfTotal float64 = 0 //西药费
  3383. //
  3384. // var chineseTraditionalMedicineCostTotal float64 = 0 //中成药
  3385. // var chineseTraditionalMedicineCostSelfTotal float64 = 0 //中成药
  3386. // var chineseTraditionalMedicineCostPartSelfTotal float64 = 0 //中成药
  3387. //
  3388. // var checkCostTotal float64 = 0 //检查费
  3389. // var checkCostSelfTotal float64 = 0 //检查费
  3390. // var checkCostPartSelfTotal float64 = 0 //检查费
  3391. //
  3392. // var laboratoryCostTotal float64 = 0 //化验费
  3393. // var laboratoryCostSelfTotal float64 = 0 //化验费
  3394. // var laboratoryCostPartSelfTotal float64 = 0 //化验费
  3395. //
  3396. // var treatCostTotal float64 = 0 //治疗费用
  3397. // var treatCostSelfTotal float64 = 0 //治疗费用
  3398. // var treatCostPartSelfTotal float64 = 0 //治疗费用
  3399. //
  3400. // decimal.DivisionPrecision = 2
  3401. //
  3402. // var bed_fulamt_ownpay_amt float64 = 0
  3403. //
  3404. // var examine_fulamt_ownpay_amt float64 = 0
  3405. //
  3406. // var nursing_fulamt_ownpay_amt float64 = 0
  3407. //
  3408. // var chinese_medicine_fulamt_ownpay_amt float64 = 0
  3409. //
  3410. // var commonly_treatment_fulamt_ownpay_amt float64 = 0
  3411. //
  3412. // var register_fulamt_ownpay_amt float64 = 0
  3413. //
  3414. // var operation_fulamt_ownpay_amt float64 = 0
  3415. // var other_fulamt_ownpay_amt float64 = 0
  3416. // var westernMedicine_fulamt_ownpay_amt float64 = 0
  3417. // var chineseTraditional_fulamt_ownpay_amt float64 = 0
  3418. // var check_fulamt_ownpay_amt float64 = 0
  3419. // var material_fulamt_ownpay_amt float64 = 0
  3420. // var laboratory_fulamt_ownpay_amt float64 = 0
  3421. // var treat_fulamt_ownpay_amt float64 = 0
  3422. //
  3423. // var bed_claa_sunmfee float64 = 0
  3424. // var bed_clab_amt float64 = 0
  3425. // var bed_other_amt float64 = 0
  3426. //
  3427. // var examine_claa_sunmfee float64 = 0
  3428. // var examine_clab_amt float64 = 0
  3429. // var examine_other_amt float64 = 0
  3430. //
  3431. // var nursing_claa_sunmfee float64 = 0
  3432. // var nursing_clab_amt float64 = 0
  3433. // var nursing_other_amt float64 = 0
  3434. //
  3435. // var chinese_medicine_claa_sunmfee float64 = 0
  3436. // var chinese_medicine_clab_amt float64 = 0
  3437. // var chinese_medicine_other_amt float64 = 0
  3438. //
  3439. // var commonly_treatment_claa_sunmfee float64 = 0
  3440. // var commonly_treatment_clab_amt float64 = 0
  3441. // var commonly_treatment_other_amt float64 = 0
  3442. //
  3443. // var operation_claa_sunmfee float64 = 0
  3444. // var operation_clab_amt float64 = 0
  3445. // var operation_other_amt float64 = 0
  3446. //
  3447. // var other_claa_sunmfee float64 = 0
  3448. // var other_clab_amt float64 = 0
  3449. // var other_other_amt float64 = 0
  3450. //
  3451. // var westernMedicine_claa_sunmfee float64 = 0
  3452. // var westernMedicine_clab_amt float64 = 0
  3453. // var westernMedicine_other_amt float64 = 0
  3454. //
  3455. // var chineseTraditional_claa_sunmfee float64 = 0
  3456. // var chineseTraditional_clab_amt float64 = 0
  3457. // var chineseTraditional_other_amt float64 = 0
  3458. //
  3459. // var check_claa_sunmfee float64 = 0
  3460. // var check_clab_amt float64 = 0
  3461. // var check_other_amt float64 = 0
  3462. //
  3463. // var material_claa_sunmfee float64 = 0
  3464. // var material_clab_amt float64 = 0
  3465. // var material_other_amt float64 = 0
  3466. //
  3467. // var laboratory_claa_sunmfee float64 = 0
  3468. // var laboratory_clab_amt float64 = 0
  3469. // var laboratory_other_amt float64 = 0
  3470. //
  3471. // var treat_claa_sunmfee float64 = 0
  3472. // var treat_clab_amt float64 = 0
  3473. // var treat_other_amt float64 = 0
  3474. //
  3475. // var register_claa_sunmfee float64 = 0
  3476. // var register_clab_amt float64 = 0
  3477. // var register_other_amt float64 = 0
  3478. //
  3479. // for _, item := range order.HisOrderInfo {
  3480. // if item.MedChrgitmType == "01" { //床位费
  3481. // bedCostTotal, _ = decimal.NewFromFloat(bedCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3482. // bedCostSelfTotal, _ = decimal.NewFromFloat(bedCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3483. // bedCostPartSelfTotal, _ = decimal.NewFromFloat(bedCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3484. // bed_fulamt_ownpay_amt, _ = decimal.NewFromFloat(bed_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  3485. // if item.ChrgitmLv == "1" {
  3486. // bed_claa_sunmfee, _ = decimal.NewFromFloat(bed_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3487. // }
  3488. // if item.ChrgitmLv == "2" {
  3489. // bed_clab_amt, _ = decimal.NewFromFloat(bed_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3490. //
  3491. // }
  3492. // if item.ChrgitmLv == "3" {
  3493. // bed_other_amt, _ = decimal.NewFromFloat(bed_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3494. // }
  3495. //
  3496. // }
  3497. //
  3498. // if item.MedChrgitmType == "02" { //诊查
  3499. // examineCostTotal, _ = decimal.NewFromFloat(examineCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3500. // examineCostSelfTotal, _ = decimal.NewFromFloat(examineCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3501. // examineCostPartSelfTotal, _ = decimal.NewFromFloat(examineCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3502. // examine_fulamt_ownpay_amt, _ = decimal.NewFromFloat(examine_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  3503. // if item.ChrgitmLv == "1" {
  3504. // examine_claa_sunmfee, _ = decimal.NewFromFloat(examine_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3505. // }
  3506. // if item.ChrgitmLv == "2" {
  3507. // examine_clab_amt, _ = decimal.NewFromFloat(examine_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3508. //
  3509. // }
  3510. // if item.ChrgitmLv == "3" {
  3511. // examine_other_amt, _ = decimal.NewFromFloat(examine_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3512. // }
  3513. //
  3514. // }
  3515. //
  3516. // if item.MedChrgitmType == "03" { //检查费
  3517. // checkCostTotal, _ = decimal.NewFromFloat(checkCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3518. // checkCostSelfTotal, _ = decimal.NewFromFloat(checkCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3519. // checkCostPartSelfTotal, _ = decimal.NewFromFloat(checkCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3520. // check_fulamt_ownpay_amt, _ = decimal.NewFromFloat(check_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  3521. // if item.ChrgitmLv == "1" {
  3522. //
  3523. // check_claa_sunmfee, _ = decimal.NewFromFloat(check_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3524. //
  3525. // }
  3526. // if item.ChrgitmLv == "2" {
  3527. // check_clab_amt, _ = decimal.NewFromFloat(check_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3528. //
  3529. // }
  3530. // if item.ChrgitmLv == "3" {
  3531. // check_other_amt, _ = decimal.NewFromFloat(check_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3532. // }
  3533. // }
  3534. //
  3535. // if item.MedChrgitmType == "04" { //化验费
  3536. // laboratoryCostTotal, _ = decimal.NewFromFloat(laboratoryCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3537. // laboratoryCostSelfTotal, _ = decimal.NewFromFloat(laboratoryCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3538. // laboratoryCostPartSelfTotal, _ = decimal.NewFromFloat(laboratoryCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3539. // laboratory_fulamt_ownpay_amt, _ = decimal.NewFromFloat(laboratory_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  3540. // if item.ChrgitmLv == "1" {
  3541. //
  3542. // laboratory_claa_sunmfee, _ = decimal.NewFromFloat(laboratory_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3543. //
  3544. // }
  3545. // if item.ChrgitmLv == "2" {
  3546. // laboratory_clab_amt, _ = decimal.NewFromFloat(laboratory_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3547. //
  3548. // }
  3549. // if item.ChrgitmLv == "3" {
  3550. // laboratory_other_amt, _ = decimal.NewFromFloat(laboratory_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3551. // }
  3552. // }
  3553. //
  3554. // if item.MedChrgitmType == "05" { //治疗费
  3555. // treatCostTotal, _ = decimal.NewFromFloat(treatCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3556. // treatCostSelfTotal, _ = decimal.NewFromFloat(treatCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3557. // treatCostPartSelfTotal, _ = decimal.NewFromFloat(treatCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3558. // treat_fulamt_ownpay_amt, _ = decimal.NewFromFloat(treat_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  3559. // if item.ChrgitmLv == "1" {
  3560. //
  3561. // treat_claa_sunmfee, _ = decimal.NewFromFloat(treat_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3562. //
  3563. // }
  3564. // if item.ChrgitmLv == "2" {
  3565. // treat_clab_amt, _ = decimal.NewFromFloat(treat_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3566. //
  3567. // }
  3568. // if item.ChrgitmLv == "3" {
  3569. // treat_other_amt, _ = decimal.NewFromFloat(treat_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3570. // }
  3571. // }
  3572. //
  3573. // if item.MedChrgitmType == "06" { //手术费
  3574. // operationCostTotal, _ = decimal.NewFromFloat(operationCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3575. // operationCostSelfTotal, _ = decimal.NewFromFloat(operationCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3576. // operationCostPartSelfTotal, _ = decimal.NewFromFloat(operationCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3577. // operation_fulamt_ownpay_amt, _ = decimal.NewFromFloat(operation_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  3578. //
  3579. // if item.ChrgitmLv == "1" {
  3580. //
  3581. // operation_claa_sunmfee, _ = decimal.NewFromFloat(operation_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3582. //
  3583. // }
  3584. // if item.ChrgitmLv == "2" {
  3585. // operation_clab_amt, _ = decimal.NewFromFloat(operation_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3586. //
  3587. // }
  3588. // if item.ChrgitmLv == "3" {
  3589. // operation_other_amt, _ = decimal.NewFromFloat(operation_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3590. // }
  3591. // }
  3592. //
  3593. // if item.MedChrgitmType == "07" { //手术费
  3594. // nursingCostTotal, _ = decimal.NewFromFloat(nursingCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3595. // nursingCostSelfTotal, _ = decimal.NewFromFloat(nursingCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3596. // nursingCostPartSelfTotal, _ = decimal.NewFromFloat(nursingCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3597. // nursing_fulamt_ownpay_amt, _ = decimal.NewFromFloat(nursing_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  3598. //
  3599. // if item.ChrgitmLv == "1" {
  3600. //
  3601. // nursing_claa_sunmfee, _ = decimal.NewFromFloat(nursing_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3602. //
  3603. // }
  3604. // if item.ChrgitmLv == "2" {
  3605. // nursing_clab_amt, _ = decimal.NewFromFloat(nursing_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3606. //
  3607. // }
  3608. // if item.ChrgitmLv == "3" {
  3609. // nursing_other_amt, _ = decimal.NewFromFloat(nursing_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3610. // }
  3611. // }
  3612. //
  3613. // if item.MedChrgitmType == "08" { //材料费
  3614. // materialCostTotal, _ = decimal.NewFromFloat(materialCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3615. // materialCostSelfTotal, _ = decimal.NewFromFloat(materialCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3616. // materialCostPartSelfTotal, _ = decimal.NewFromFloat(materialCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3617. // material_fulamt_ownpay_amt, _ = decimal.NewFromFloat(material_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  3618. // if item.ChrgitmLv == "1" {
  3619. //
  3620. // material_claa_sunmfee, _ = decimal.NewFromFloat(material_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3621. //
  3622. // }
  3623. // if item.ChrgitmLv == "2" {
  3624. // material_clab_amt, _ = decimal.NewFromFloat(material_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3625. //
  3626. // }
  3627. // if item.ChrgitmLv == "3" {
  3628. // material_other_amt, _ = decimal.NewFromFloat(material_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3629. // }
  3630. // }
  3631. // if item.MedChrgitmType == "09" { //西药费
  3632. // westernMedicineCostTotal, _ = decimal.NewFromFloat(westernMedicineCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3633. // westernMedicineCostSelfTotal, _ = decimal.NewFromFloat(westernMedicineCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3634. // westernMedicineCostPartSelfTotal, _ = decimal.NewFromFloat(westernMedicineCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3635. // westernMedicine_fulamt_ownpay_amt, _ = decimal.NewFromFloat(westernMedicine_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  3636. // if item.ChrgitmLv == "1" {
  3637. // westernMedicine_claa_sunmfee, _ = decimal.NewFromFloat(westernMedicine_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3638. // }
  3639. // if item.ChrgitmLv == "2" {
  3640. // westernMedicine_clab_amt, _ = decimal.NewFromFloat(westernMedicine_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3641. // }
  3642. // if item.ChrgitmLv == "3" {
  3643. // westernMedicine_other_amt, _ = decimal.NewFromFloat(westernMedicine_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3644. // }
  3645. // }
  3646. // if item.MedChrgitmType == "10" { //中药饮片
  3647. // chineseMedicineCostTotal, _ = decimal.NewFromFloat(chineseMedicineCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3648. // chineseMedicineCostSelfTotal, _ = decimal.NewFromFloat(chineseMedicineCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3649. // chineseMedicineCostPartSelfTotal, _ = decimal.NewFromFloat(chineseMedicineCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3650. // chinese_medicine_fulamt_ownpay_amt, _ = decimal.NewFromFloat(chinese_medicine_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  3651. // if item.ChrgitmLv == "1" {
  3652. // chinese_medicine_claa_sunmfee, _ = decimal.NewFromFloat(chinese_medicine_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3653. // }
  3654. // if item.ChrgitmLv == "2" {
  3655. // chinese_medicine_clab_amt, _ = decimal.NewFromFloat(chinese_medicine_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3656. // }
  3657. // if item.ChrgitmLv == "3" {
  3658. // chinese_medicine_other_amt, _ = decimal.NewFromFloat(chinese_medicine_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3659. // }
  3660. // }
  3661. //
  3662. // if item.MedChrgitmType == "11" { //中成费
  3663. // chineseTraditionalMedicineCostTotal, _ = decimal.NewFromFloat(chineseTraditionalMedicineCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3664. // chineseTraditionalMedicineCostSelfTotal, _ = decimal.NewFromFloat(chineseTraditionalMedicineCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3665. // chineseTraditionalMedicineCostPartSelfTotal, _ = decimal.NewFromFloat(chineseTraditionalMedicineCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3666. // chineseTraditional_fulamt_ownpay_amt, _ = decimal.NewFromFloat(chineseTraditional_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  3667. // if item.ChrgitmLv == "1" {
  3668. //
  3669. // chineseTraditional_claa_sunmfee, _ = decimal.NewFromFloat(chineseTraditional_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3670. //
  3671. // }
  3672. // if item.ChrgitmLv == "2" {
  3673. // chineseTraditional_clab_amt, _ = decimal.NewFromFloat(chineseTraditional_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3674. //
  3675. // }
  3676. // if item.ChrgitmLv == "3" {
  3677. // chineseTraditional_other_amt, _ = decimal.NewFromFloat(chineseTraditional_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3678. // }
  3679. // }
  3680. //
  3681. // if item.MedChrgitmType == "12" { //中成费
  3682. // commonlyTreatmentCostTotal, _ = decimal.NewFromFloat(commonlyTreatmentCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3683. // commonlyTreatmentCostSelfTotal, _ = decimal.NewFromFloat(commonlyTreatmentCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3684. // commonlyTreatmentCostPartSelfTotal, _ = decimal.NewFromFloat(commonlyTreatmentCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3685. // commonly_treatment_fulamt_ownpay_amt, _ = decimal.NewFromFloat(commonly_treatment_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  3686. // if item.ChrgitmLv == "1" {
  3687. //
  3688. // commonly_treatment_claa_sunmfee, _ = decimal.NewFromFloat(commonly_treatment_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3689. //
  3690. // }
  3691. // if item.ChrgitmLv == "2" {
  3692. // commonly_treatment_clab_amt, _ = decimal.NewFromFloat(commonly_treatment_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3693. //
  3694. // }
  3695. // if item.ChrgitmLv == "3" {
  3696. // commonly_treatment_other_amt, _ = decimal.NewFromFloat(commonly_treatment_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3697. // }
  3698. // }
  3699. //
  3700. // if item.MedChrgitmType == "13" { //中成费
  3701. // registerCostTotal, _ = decimal.NewFromFloat(registerCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3702. // registerCostSelfTotal, _ = decimal.NewFromFloat(registerCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3703. // registerPartSelfTotal, _ = decimal.NewFromFloat(registerPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3704. // register_fulamt_ownpay_amt, _ = decimal.NewFromFloat(register_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  3705. // if item.ChrgitmLv == "1" {
  3706. //
  3707. // register_claa_sunmfee, _ = decimal.NewFromFloat(register_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3708. //
  3709. // }
  3710. // if item.ChrgitmLv == "2" {
  3711. // register_clab_amt, _ = decimal.NewFromFloat(register_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3712. //
  3713. // }
  3714. // if item.ChrgitmLv == "3" {
  3715. // register_other_amt, _ = decimal.NewFromFloat(register_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3716. // }
  3717. // }
  3718. //
  3719. // if item.MedChrgitmType == "14" { //其他费
  3720. // otherCostTotal, _ = decimal.NewFromFloat(otherCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3721. // otherCostSelfTotal, _ = decimal.NewFromFloat(otherCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3722. // otherCostPartSelfTotal, _ = decimal.NewFromFloat(otherCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3723. // other_fulamt_ownpay_amt, _ = decimal.NewFromFloat(other_fulamt_ownpay_amt).Add(decimal.NewFromFloat(item.FulamtOwnpayAmt)).Float64()
  3724. // if item.ChrgitmLv == "1" {
  3725. // other_claa_sunmfee, _ = decimal.NewFromFloat(other_claa_sunmfee).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  3726. //
  3727. // }
  3728. // if item.ChrgitmLv == "2" {
  3729. // other_clab_amt, _ = decimal.NewFromFloat(other_clab_amt).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  3730. //
  3731. // }
  3732. // if item.ChrgitmLv == "3" {
  3733. // other_other_amt, _ = decimal.NewFromFloat(other_other_amt).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  3734. // }
  3735. // }
  3736. //
  3737. // }
  3738. //
  3739. // var iteminfoStructs []service.IteminfoStruct
  3740. //
  3741. // if bedCostTotal != 0 {
  3742. // iteminfo.MedChrgitm = "01"
  3743. // iteminfo.FulamtOwnpayAmt = bed_fulamt_ownpay_amt
  3744. // iteminfo.Amt = bedCostTotal
  3745. // iteminfo.ClaaSumfee = bed_claa_sunmfee
  3746. // iteminfo.ClabAmt = bed_clab_amt
  3747. // iteminfo.OthAmt = bed_other_amt
  3748. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3749. // }
  3750. //
  3751. // if examineCostTotal != 0 {
  3752. // iteminfo.MedChrgitm = "02"
  3753. // iteminfo.FulamtOwnpayAmt = examine_fulamt_ownpay_amt
  3754. // iteminfo.Amt = examineCostTotal
  3755. // iteminfo.ClaaSumfee = examine_claa_sunmfee
  3756. // iteminfo.ClabAmt = examine_clab_amt
  3757. // iteminfo.OthAmt = examine_other_amt
  3758. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3759. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3760. // }
  3761. //
  3762. // if checkCostTotal != 0 {
  3763. // iteminfo.MedChrgitm = "03"
  3764. // iteminfo.FulamtOwnpayAmt = check_fulamt_ownpay_amt
  3765. // iteminfo.Amt = checkCostTotal
  3766. // iteminfo.ClaaSumfee = check_claa_sunmfee
  3767. // iteminfo.ClabAmt = check_clab_amt
  3768. // iteminfo.OthAmt = check_other_amt
  3769. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3770. //
  3771. // }
  3772. //
  3773. // if laboratoryCostTotal != 0 {
  3774. // iteminfo.MedChrgitm = "04"
  3775. // iteminfo.FulamtOwnpayAmt = laboratory_fulamt_ownpay_amt
  3776. // iteminfo.Amt = laboratoryCostTotal
  3777. // iteminfo.ClaaSumfee = laboratory_claa_sunmfee
  3778. // iteminfo.ClabAmt = laboratory_clab_amt
  3779. // iteminfo.OthAmt = laboratory_other_amt
  3780. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3781. //
  3782. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3783. //
  3784. // }
  3785. //
  3786. // if treatCostTotal != 0 {
  3787. // iteminfo.MedChrgitm = "05"
  3788. // iteminfo.FulamtOwnpayAmt = treat_fulamt_ownpay_amt
  3789. // iteminfo.Amt = treatCostTotal
  3790. // iteminfo.ClaaSumfee = treat_claa_sunmfee
  3791. // iteminfo.ClabAmt = treat_clab_amt
  3792. // iteminfo.OthAmt = treat_other_amt
  3793. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3794. // //(struct4101.IteminfoStruct, iteminfo)
  3795. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3796. // }
  3797. //
  3798. // if operationCostTotal != 0 {
  3799. // iteminfo.MedChrgitm = "06"
  3800. // iteminfo.FulamtOwnpayAmt = bed_fulamt_ownpay_amt
  3801. // iteminfo.Amt = operationCostTotal
  3802. // iteminfo.ClaaSumfee = operation_claa_sunmfee
  3803. // iteminfo.ClabAmt = operation_clab_amt
  3804. // iteminfo.OthAmt = operation_other_amt
  3805. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3806. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3807. // }
  3808. //
  3809. // if nursingCostTotal != 0 {
  3810. // iteminfo.MedChrgitm = "07"
  3811. // iteminfo.FulamtOwnpayAmt = nursing_fulamt_ownpay_amt
  3812. // iteminfo.Amt = nursingCostTotal
  3813. // iteminfo.ClaaSumfee = nursing_claa_sunmfee
  3814. // iteminfo.ClabAmt = nursing_clab_amt
  3815. // iteminfo.OthAmt = nursing_other_amt
  3816. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3817. // }
  3818. //
  3819. // if materialCostTotal != 0 {
  3820. // iteminfo.MedChrgitm = "08"
  3821. // iteminfo.FulamtOwnpayAmt = material_fulamt_ownpay_amt
  3822. // iteminfo.Amt = materialCostTotal
  3823. // iteminfo.ClaaSumfee = material_claa_sunmfee
  3824. // iteminfo.ClabAmt = material_clab_amt
  3825. // iteminfo.OthAmt = material_other_amt
  3826. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3827. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3828. // }
  3829. //
  3830. // if westernMedicineCostTotal != 0 {
  3831. // iteminfo.MedChrgitm = "09"
  3832. // iteminfo.FulamtOwnpayAmt = westernMedicine_fulamt_ownpay_amt
  3833. // iteminfo.Amt = westernMedicineCostTotal
  3834. // iteminfo.ClaaSumfee = westernMedicine_claa_sunmfee
  3835. // iteminfo.ClabAmt = westernMedicine_clab_amt
  3836. // iteminfo.OthAmt = westernMedicine_other_amt
  3837. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3838. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3839. //
  3840. // }
  3841. //
  3842. // if chineseMedicineCostTotal != 0 {
  3843. // iteminfo.MedChrgitm = "10"
  3844. // iteminfo.FulamtOwnpayAmt = chinese_medicine_fulamt_ownpay_amt
  3845. // iteminfo.Amt = chineseMedicineCostTotal
  3846. // iteminfo.ClaaSumfee = chinese_medicine_claa_sunmfee
  3847. // iteminfo.ClabAmt = chinese_medicine_clab_amt
  3848. // iteminfo.OthAmt = chinese_medicine_other_amt
  3849. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3850. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3851. //
  3852. // }
  3853. //
  3854. // if chineseTraditionalMedicineCostTotal != 0 {
  3855. // iteminfo.MedChrgitm = "11"
  3856. // iteminfo.FulamtOwnpayAmt = westernMedicine_fulamt_ownpay_amt
  3857. // iteminfo.Amt = westernMedicineCostTotal
  3858. // iteminfo.ClaaSumfee = westernMedicine_claa_sunmfee
  3859. // iteminfo.ClabAmt = westernMedicine_clab_amt
  3860. // iteminfo.OthAmt = westernMedicine_other_amt
  3861. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3862. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3863. //
  3864. // }
  3865. //
  3866. // if commonlyTreatmentCostTotal != 0 {
  3867. // iteminfo.MedChrgitm = "12"
  3868. // iteminfo.FulamtOwnpayAmt = commonly_treatment_fulamt_ownpay_amt
  3869. // iteminfo.Amt = commonlyTreatmentCostTotal
  3870. // iteminfo.ClaaSumfee = commonly_treatment_claa_sunmfee
  3871. // iteminfo.ClabAmt = commonly_treatment_clab_amt
  3872. // iteminfo.OthAmt = commonly_treatment_other_amt
  3873. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3874. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3875. //
  3876. // }
  3877. //
  3878. // if registerCostTotal != 0 {
  3879. // iteminfo.MedChrgitm = "13"
  3880. // iteminfo.FulamtOwnpayAmt = register_fulamt_ownpay_amt
  3881. // iteminfo.Amt = registerCostTotal
  3882. // iteminfo.ClaaSumfee = register_claa_sunmfee
  3883. // iteminfo.ClabAmt = register_clab_amt
  3884. // iteminfo.OthAmt = register_other_amt
  3885. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3886. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3887. //
  3888. // }
  3889. //
  3890. // if otherCostTotal != 0 {
  3891. // iteminfo.MedChrgitm = "14"
  3892. // iteminfo.FulamtOwnpayAmt = other_fulamt_ownpay_amt
  3893. // iteminfo.Amt = otherCostTotal
  3894. // iteminfo.ClaaSumfee = other_claa_sunmfee
  3895. // iteminfo.ClabAmt = other_clab_amt
  3896. // iteminfo.OthAmt = other_other_amt
  3897. // //struct4101.IteminfoStruct = append(struct4101.IteminfoStruct, iteminfo)
  3898. // iteminfoStructs = append(iteminfoStructs, iteminfo)
  3899. //
  3900. // }
  3901. // struct4101.IteminfoStruct = iteminfoStructs
  3902. //
  3903. // struct4101.Ntly = "中国"
  3904. // struct4101.AdmCaty = "A03.06"
  3905. // result := service.Gdyb4101ForGZ(struct4101, miConfig.SecretKey, miConfig.OrgName, curRoles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, c.GetAdminUserInfo().CurrentOrgId)
  3906. // fmt.Println(result)
  3907. //
  3908. // var dat map[string]interface{}
  3909. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  3910. // fmt.Println(dat)
  3911. // } else {
  3912. // fmt.Println(err)
  3913. // }
  3914. // userJSONBytes, _ := json.Marshal(dat)
  3915. // var res ResultSeventeen
  3916. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  3917. // utils.ErrorLog("解析失败:%v", err)
  3918. // //c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  3919. // adminUser := c.GetAdminUserInfo()
  3920. // errlog := &models.HisOrderError{
  3921. // UserOrgId: adminUser.CurrentOrgId,
  3922. // Ctime: time.Now().Unix(),
  3923. // Mtime: time.Now().Unix(),
  3924. // ErrMsg: res.ErrMsg + "解析失败",
  3925. // Status: 1,
  3926. // PatientId: order_id,
  3927. // Stage: 10106,
  3928. // }
  3929. // service.CreateErrMsgLog(errlog)
  3930. // continue
  3931. // }
  3932. //
  3933. // if res.Infcode != 0 {
  3934. // adminUser := c.GetAdminUserInfo()
  3935. // errlog := &models.HisOrderError{
  3936. // UserOrgId: adminUser.CurrentOrgId,
  3937. // Ctime: time.Now().Unix(),
  3938. // Mtime: time.Now().Unix(),
  3939. // ErrMsg: res.ErrMsg,
  3940. // Status: 1,
  3941. // PatientId: order_id,
  3942. // Stage: 10106,
  3943. // }
  3944. // service.CreateErrMsgLog(errlog)
  3945. // continue
  3946. // } else {
  3947. // hisFundSettleListResult := &models.HisFundSettleListResult{
  3948. // Number: res.Output.SetlListId,
  3949. // Status: 1,
  3950. // Ctime: time.Now().Unix(),
  3951. // Mtime: time.Now().Unix(),
  3952. // UserOrgId: c.GetAdminUserInfo().CurrentOrgId,
  3953. // IsUpload: 1,
  3954. // OrderId: order_id,
  3955. // }
  3956. // service.CreateUploadRecord(hisFundSettleListResult)
  3957. // continue
  3958. // }
  3959. // }
  3960. //}
  3961. //
  3962. //func (c *HisApiController) GetOrgInfo() {
  3963. // miConfig, _ := service.FindMedicalInsuranceInfo(4)
  3964. // service.Gdyb1201("", miConfig.OrgName, "1122", miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, 1, "")
  3965. //
  3966. //}
  3967. //
  3968. //func (c *HisApiController) GetHisPatientInfo() {
  3969. //
  3970. // medical_insurance_card := c.GetString("medical_insurance_card")
  3971. // id_card_type, _ := c.GetInt64("id_card_type")
  3972. // id_card := c.GetString("id_card")
  3973. //
  3974. // adminInfo := c.GetAdminUserInfo()
  3975. // config, _ := service.GetMedicalInsuranceConfig(adminInfo.CurrentOrgId)
  3976. // miConfig, _ := service.FindMedicalInsuranceInfo(adminInfo.CurrentOrgId)
  3977. //
  3978. // appRole, _ := service.GetAppRole(adminInfo.CurrentOrgId)
  3979. //
  3980. // IdCardNo := ""
  3981. //
  3982. // if id_card_type == 1 {
  3983. // IdCardNo = medical_insurance_card
  3984. // } else if id_card_type == 2 {
  3985. // IdCardNo = id_card
  3986. // }
  3987. //
  3988. // if config.IsOpen == 1 {
  3989. // api := "http://127.0.0.1:9532/" + "gdyb/one?cert_no=" + IdCardNo + "&org_name=" + miConfig.OrgName + "&doctor=" + appRole.UserName + "&fixmedins_code=" + miConfig.Code + "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey
  3990. // resp, requestErr := http.Get(api)
  3991. // if requestErr != nil {
  3992. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  3993. // return
  3994. // }
  3995. //
  3996. // defer resp.Body.Close()
  3997. // body, ioErr := ioutil.ReadAll(resp.Body)
  3998. // if ioErr != nil {
  3999. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  4000. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  4001. // return
  4002. // }
  4003. // var respJSON map[string]interface{}
  4004. //
  4005. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  4006. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  4007. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  4008. // return
  4009. // }
  4010. //
  4011. // userJSON := respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  4012. // userJSONBytes, _ := json.Marshal(userJSON)
  4013. // var res ResultTwo
  4014. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  4015. // utils.ErrorLog("解析失败:%v", err)
  4016. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  4017. // return
  4018. // }
  4019. // Iinfos, _ := json.Marshal(res.Output[0].Iinfo)
  4020. // Idetinfos, _ := json.Marshal(res.Output[0].Idetinfo)
  4021. // infoStr := string(Iinfos)
  4022. // idetinfoStr := string(Idetinfos)
  4023. // if res.Infcode == 0 {
  4024. // his := models.VMHisPatient{
  4025. // Status: 1,
  4026. // Ctime: time.Now().Unix(),
  4027. // Mtime: time.Now().Unix(),
  4028. // PsnNo: res.Output[0].Baseinfo.PsnNo,
  4029. // PsnCertType: res.Output[0].Baseinfo.PsnCertType,
  4030. // Certno: res.Output[0].Baseinfo.Certno,
  4031. // PsnName: res.Output[0].Baseinfo.PsnName,
  4032. // Gend: res.Output[0].Baseinfo.Gend,
  4033. // Naty: res.Output[0].Baseinfo.Naty,
  4034. // Brdy: res.Output[0].Baseinfo.Brdy,
  4035. // Age: res.Output[0].Baseinfo.Age,
  4036. // Iinfo: infoStr,
  4037. // Idetinfo: idetinfoStr,
  4038. // UserOrgId: adminInfo.CurrentOrgId,
  4039. // IsReturn: 1,
  4040. // IdCardType: id_card_type,
  4041. // }
  4042. // c.ServeSuccessJSON(map[string]interface{}{
  4043. // "info": his,
  4044. // })
  4045. // } else {
  4046. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisFailedException)
  4047. // return
  4048. // }
  4049. // }
  4050. //}
  4051. //
  4052. ////func GetBasBaseInfo() (jsonStr string, err error) {
  4053. ////
  4054. //// handle := syscall.NewLazyDLL("SSCard.dll")
  4055. //// add := handle.NewProc("ReadCardBas")
  4056. //// str := make([]byte, 1024)
  4057. //// str1 := make([]byte, 1024)
  4058. //// ret, _, _ := add.Call((uintptr)(unsafe.Pointer(&str[0])), IntPtr(1024), (uintptr)(unsafe.Pointer(&str1[0])), IntPtr(1024))
  4059. //// fmt.Println(ConvertToString(string(str), "gbk", "utf-8"))
  4060. ////
  4061. //// fmt.Println(ConvertToString(string(str1), "gbk", "utf-8"))
  4062. ////
  4063. //// fmt.Println("> Add(4,5)的结果为:", ret)
  4064. //// handle.Release()
  4065. ////
  4066. //// return "", nil
  4067. ////
  4068. ////}
  4069. //
  4070. ////func GetQRBaseInfo() (jsonStr string, err error) {
  4071. //// handle := syscall.LoadDLL("SSCard.dll")
  4072. //// ReadCardBas := handle.FindProc("GetQRBase")
  4073. ////
  4074. //// str := make([]byte, 256)
  4075. //// str1 := make([]byte, 256)
  4076. //// r, _, _ := ReadCardBas.Call((uintptr)(unsafe.Pointer(&str[0])), IntPtr(1024), (uintptr)(unsafe.Pointer(&str1[0])), IntPtr(1024))
  4077. ////
  4078. //// fmt.Println(string(str))
  4079. //// fmt.Println(r)
  4080. //// return string(str), nil
  4081. ////}
  4082. //
  4083. ////func CardInit() int {
  4084. //// DllTestDef := syscall.MustLoadDLL("SSCard.dll")
  4085. //// add := DllTestDef.MustFindProc("Init")
  4086. //// ret, _, err := add.Call(StrPtr("http://igb.hsa.gdgov.cn/gdyb_inf/poc/api/card/initDll"), StrPtr("440200"))
  4087. //// if err != nil {
  4088. //// fmt.Println("SSCard的运算结果为:", ret)
  4089. //// }
  4090. //// result := int(ret)
  4091. //// return result
  4092. ////}
  4093. //
  4094. ////func CardInit() int {
  4095. //// ret, _, err := add.Call(StrPtr("http://igb.hsa.gdgov.cn/gdyb_inf/poc/api/card/initDll"), StrPtr("440200"))
  4096. //// if err != nil {
  4097. //// fmt.Println("SSCard的运算结果为:", ret)
  4098. //// }
  4099. //// fmt.Println(err)
  4100. //// result := int(ret)
  4101. //// return result
  4102. ////}
  4103. //
  4104. //func IntPtr(n int) uintptr {
  4105. // return uintptr(n)
  4106. //}
  4107. //
  4108. //func StrPtr(s string) uintptr {
  4109. // return uintptr(unsafe.Pointer(syscall.StringBytePtr(s)))
  4110. //}
  4111. //
  4112. //type Result2001 struct {
  4113. // Cainfo interface{} `json:"cainfo"`
  4114. // ErrMsg string `json:"err_msg"`
  4115. // InfRefmsgid string `json:"inf_refmsgid"`
  4116. // Infcode int64 `json:"infcode"`
  4117. // Output struct {
  4118. // Trtinfo struct {
  4119. // PsnNo string `json:"psn_no"`
  4120. // TrtChkType string `json:"trt_chk_type"`
  4121. // FundPayType string `json:"fund_pay_type"`
  4122. // TrtEnjymntFlag string `json:"trt_enjymnt_flag"`
  4123. // Begndate string `json:"begndate"`
  4124. // Enddate string `json:"enddate"`
  4125. // TrtChkRslt string `json:"trt_chk_rslt"`
  4126. // } `json:"trtinfo"`
  4127. // } `json:"output"`
  4128. // RefmsgTime string `json:"refmsg_time"`
  4129. // RespondTime string `json:"respond_time"`
  4130. // Signtype interface{} `json:"signtype"`
  4131. // WarnMsg interface{} `json:"warn_msg"`
  4132. //}
  4133. //type Result2001Org10265 struct {
  4134. // Cainfo interface{} `json:"cainfo"`
  4135. // ErrMsg string `json:"err_msg"`
  4136. // InfRefmsgid string `json:"inf_refmsgid"`
  4137. // Infcode string `json:"infcode"`
  4138. // Output struct {
  4139. // Trtinfo struct {
  4140. // PsnNo string `json:"psn_no"`
  4141. // TrtChkType string `json:"trt_chk_type"`
  4142. // FundPayType string `json:"fund_pay_type"`
  4143. // TrtEnjymntFlag string `json:"trt_enjymnt_flag"`
  4144. // Begndate string `json:"begndate"`
  4145. // Enddate string `json:"enddate"`
  4146. // TrtChkRslt string `json:"trt_chk_rslt"`
  4147. // } `json:"trtinfo"`
  4148. // } `json:"output"`
  4149. // RefmsgTime string `json:"refmsg_time"`
  4150. // RespondTime string `json:"respond_time"`
  4151. // Signtype interface{} `json:"signtype"`
  4152. // WarnMsg interface{} `json:"warn_msg"`
  4153. //}
  4154. //
  4155. //type ResultTwo struct {
  4156. // ErrMsg string `json:"err_msg"`
  4157. // InfRefmsgid string `json:"inf_refmsgid"`
  4158. // Infcode int64 `json:"infcode"`
  4159. // Output []struct {
  4160. // Baseinfo struct {
  4161. // Age float64 `json:"age"`
  4162. // Brdy string `json:"brdy"`
  4163. // Certno string `json:"certno"`
  4164. // Gend string `json:"gend"`
  4165. // Naty string `json:"naty"`
  4166. // PsnCertType string `json:"psn_cert_type"`
  4167. // PsnName string `json:"psn_name"`
  4168. // PsnNo string `json:"psn_no"`
  4169. // } `json:"baseinfo"`
  4170. // Idetinfo []interface{} `json:"idetinfo"`
  4171. // Iinfo []struct {
  4172. // Balc float64 `json:"balc"`
  4173. // CvlservFlag string `json:"cvlserv_flag"`
  4174. // EmpName string `json:"emp_name"`
  4175. // InsuplcAdmdvs string `json:"insuplc_admdvs"`
  4176. // Insutype string `json:"insutype"`
  4177. // PausInsuDansuplcAdmdvs string `json:"paus_insu_dansuplc_admdvs"`
  4178. // PausInsuDate string `json:"paus_insu_date"`
  4179. // PsnInsuDate string `json:"psn_insu_date"`
  4180. // PsnInsuStas string `json:"psn_insu_stas"`
  4181. // PsnType string `json:"psn_type"`
  4182. // } `json:"insuinfo"`
  4183. // } `json:"output"`
  4184. // RefmsgTime string `json:"refmsg_time"`
  4185. // RespondTime string `json:"respond_time"`
  4186. // Signtype interface{} `json:"signtype"`
  4187. // WarnInfo interface{} `json:"warn_info"`
  4188. //}
  4189. //
  4190. //type ResultTwo10265 struct {
  4191. // ErrMsg string `json:"err_msg"`
  4192. // InfRefmsgid string `json:"inf_refmsgid"`
  4193. // Infcode string `json:"infcode"`
  4194. // Output struct {
  4195. // Baseinfo struct {
  4196. // Age float64 `json:"age"`
  4197. // Brdy string `json:"brdy"`
  4198. // Certno string `json:"certno"`
  4199. // Gend string `json:"gend"`
  4200. // Naty string `json:"naty"`
  4201. // PsnCertType string `json:"psn_cert_type"`
  4202. // PsnName string `json:"psn_name"`
  4203. // PsnNo string `json:"psn_no"`
  4204. // } `json:"baseinfo"`
  4205. // Idetinfo []interface{} `json:"idetinfo"`
  4206. // Iinfo []struct {
  4207. // Balc float64 `json:"balc"`
  4208. // CvlservFlag string `json:"cvlserv_flag"`
  4209. // EmpName string `json:"emp_name"`
  4210. // InsuplcAdmdvs string `json:"insuplc_admdvs"`
  4211. // Insutype string `json:"insutype"`
  4212. // PausInsuDansuplcAdmdvs string `json:"paus_insu_dansuplc_admdvs"`
  4213. // PausInsuDate string `json:"paus_insu_date"`
  4214. // PsnInsuDate string `json:"psn_insu_date"`
  4215. // PsnInsuStas string `json:"psn_insu_stas"`
  4216. // PsnType string `json:"psn_type"`
  4217. // } `json:"insuinfo"`
  4218. // } `json:"output"`
  4219. // RefmsgTime string `json:"refmsg_time"`
  4220. // RespondTime string `json:"respond_time"`
  4221. // Signtype interface{} `json:"signtype"`
  4222. // WarnInfo interface{} `json:"warn_info"`
  4223. //}
  4224. //
  4225. //type ResultThree struct {
  4226. // Cainfo interface{} `json:"cainfo"`
  4227. // ErrMsg string `json:"err_msg"`
  4228. // InfRefmsgid string `json:"inf_refmsgid"`
  4229. // Infcode int64 `json:"infcode"`
  4230. // Output struct {
  4231. // Data struct {
  4232. // IptOtpNo string `json:"ipt_otp_no"`
  4233. // MdtrtID string `json:"mdtrt_id"`
  4234. // PsnNo string `json:"psn_no"`
  4235. // } `json:"data"`
  4236. // } `json:"output"`
  4237. // RefmsgTime string `json:"refmsg_time"`
  4238. // RespondTime string `json:"respond_time"`
  4239. // Signtype interface{} `json:"signtype"`
  4240. // WarnMsg interface{} `json:"warn_msg"`
  4241. //}
  4242. //
  4243. //type ResultThree10265 struct {
  4244. // Cainfo interface{} `json:"cainfo"`
  4245. // ErrMsg string `json:"err_msg"`
  4246. // InfRefmsgid string `json:"inf_refmsgid"`
  4247. // Infcode string `json:"infcode"`
  4248. // Output struct {
  4249. // Data struct {
  4250. // IptOtpNo string `json:"ipt_otp_no"`
  4251. // MdtrtID string `json:"mdtrt_id"`
  4252. // PsnNo string `json:"psn_no"`
  4253. // } `json:"data"`
  4254. // } `json:"output"`
  4255. // RefmsgTime string `json:"refmsg_time"`
  4256. // RespondTime string `json:"respond_time"`
  4257. // Signtype interface{} `json:"signtype"`
  4258. // WarnMsg interface{} `json:"warn_msg"`
  4259. //}
  4260. //
  4261. //type ResultFour struct {
  4262. // Cainfo string `json:"cainfo"`
  4263. // ErrMsg string `json:"err_msg"`
  4264. // InfRefmsgid string `json:"inf_refmsgid"`
  4265. // Infcode int64 `json:"infcode"`
  4266. // Output struct {
  4267. // Result []struct {
  4268. // BasMednFlag string `json:"bas_medn_flag"`
  4269. // ChldMedcFlag string `json:"chld_medc_flag"`
  4270. // ChrgitmLv string `json:"chrgitm_lv"`
  4271. // Cnt float64 `json:"cnt"`
  4272. // DetItemFeeSumamt float64 `json:"det_item_fee_sumamt"`
  4273. // DrtReimFlag string `json:"drt_reim_flag"`
  4274. // FeedetlSn string `json:"feedetl_sn"`
  4275. // FulamtOwnpayAmt float64 `json:"fulamt_ownpay_amt"`
  4276. // HiNegoDrugFlag string `json:"hi_nego_drug_flag"`
  4277. // InscpScpAmt float64 `json:"inscp_scp_amt"`
  4278. // ListSpItemFlag string `json:"list_sp_item_flag"`
  4279. // LmtUsedFlag string `json:"lmt_used_flag"`
  4280. // MedChrgitmType string `json:"med_chrgitm_type"`
  4281. // Memo string `json:"memo"`
  4282. // OverlmtAmt float64 `json:"overlmt_amt"`
  4283. // PreselfpayAmt float64 `json:"preselfpay_amt"`
  4284. // Pric float64 `json:"pric"`
  4285. // PricUplmtAmt float64 `json:"pric_uplmt_amt"`
  4286. // SelfpayProp float64 `json:"selfpay_prop"`
  4287. // } `json:"result"`
  4288. // } `json:"output"`
  4289. // RefmsgTime string `json:"refmsg_time"`
  4290. // RespondTime string `json:"respond_time"`
  4291. // Signtype string `json:"signtype"`
  4292. // WarnMsg string `json:"warn_msg"`
  4293. //}
  4294. //type ResultFour10265 struct {
  4295. // Cainfo string `json:"cainfo"`
  4296. // ErrMsg string `json:"err_msg"`
  4297. // InfRefmsgid string `json:"inf_refmsgid"`
  4298. // Infcode string `json:"infcode"`
  4299. // Output struct {
  4300. // Result []struct {
  4301. // BasMednFlag string `json:"bas_medn_flag"`
  4302. // ChldMedcFlag string `json:"chld_medc_flag"`
  4303. // ChrgitmLv string `json:"chrgitm_lv"`
  4304. // Cnt float64 `json:"cnt"`
  4305. // DetItemFeeSumamt float64 `json:"det_item_fee_sumamt"`
  4306. // DrtReimFlag string `json:"drt_reim_flag"`
  4307. // FeedetlSn string `json:"feedetl_sn"`
  4308. // FulamtOwnpayAmt float64 `json:"fulamt_ownpay_amt"`
  4309. // HiNegoDrugFlag string `json:"hi_nego_drug_flag"`
  4310. // InscpScpAmt float64 `json:"inscp_scp_amt"`
  4311. // ListSpItemFlag string `json:"list_sp_item_flag"`
  4312. // LmtUsedFlag string `json:"lmt_used_flag"`
  4313. // MedChrgitmType string `json:"med_chrgitm_type"`
  4314. // Memo string `json:"memo"`
  4315. // OverlmtAmt float64 `json:"overlmt_amt"`
  4316. // PreselfpayAmt float64 `json:"preselfpay_amt"`
  4317. // Pric float64 `json:"pric"`
  4318. // PricUplmtAmt float64 `json:"pric_uplmt_amt"`
  4319. // SelfpayProp float64 `json:"selfpay_prop"`
  4320. // } `json:"result"`
  4321. // } `json:"output"`
  4322. // RefmsgTime string `json:"refmsg_time"`
  4323. // RespondTime string `json:"respond_time"`
  4324. // Signtype string `json:"signtype"`
  4325. // WarnMsg string `json:"warn_msg"`
  4326. //}
  4327. //
  4328. //type ResultFive struct {
  4329. // Balc float64 `json:"balc"`
  4330. // CvlservFlag string `json:"cvlserv_flag"`
  4331. // EmpName string `json:"emp_name"`
  4332. // InsuplcAdmdvs string `json:"insuplc_admdvs"`
  4333. // Insutype string `json:"insutype"`
  4334. // PausInsuDansuplcAdmdvs string `json:"paus_insu_dansuplc_admdvs"`
  4335. // PausInsuDate string `json:"paus_insu_date"`
  4336. // PsnInsuDate string `json:"psn_insu_date"`
  4337. // PsnInsuStas string `json:"psn_insu_stas"`
  4338. // PsnType string `json:"psn_type"`
  4339. //}
  4340. //type ResultSix struct {
  4341. // Cainfo interface{} `json:"cainfo"`
  4342. // ErrMsg string `json:"err_msg"`
  4343. // InfRefmsgid string `json:"inf_refmsgid"`
  4344. // Infcode int64 `json:"infcode"`
  4345. // RefmsgTime string `json:"refmsg_time"`
  4346. // RespondTime string `json:"respond_time"`
  4347. // Signtype interface{} `json:"signtype"`
  4348. // WarnMsg interface{} `json:"warn_msg"`
  4349. //}
  4350. //
  4351. //type ResultSix10265 struct {
  4352. // Cainfo interface{} `json:"cainfo"`
  4353. // ErrMsg string `json:"err_msg"`
  4354. // InfRefmsgid string `json:"inf_refmsgid"`
  4355. // Infcode string `json:"infcode"`
  4356. // Output struct {
  4357. // } `json:"output"`
  4358. // RefmsgTime string `json:"refmsg_time"`
  4359. // RespondTime string `json:"respond_time"`
  4360. // Signtype interface{} `json:"signtype"`
  4361. // WarnMsg interface{} `json:"warn_msg"`
  4362. //}
  4363. //
  4364. //type ResultSeven struct {
  4365. // Cainfo string `json:"cainfo"`
  4366. // ErrMsg string `json:"err_msg"`
  4367. // InfRefmsgid string `json:"inf_refmsgid"`
  4368. // Infcode int64 `json:"infcode"`
  4369. // Output struct {
  4370. // Setldetail []interface{} `json:"setldetail"`
  4371. // Setlinfo struct {
  4372. // AcctMulaidPay float64 `json:"acct_mulaid_pay"`
  4373. // AcctPay float64 `json:"acct_pay"`
  4374. // ActPayDedc float64 `json:"act_pay_dedc"`
  4375. // Age float64 `json:"age"`
  4376. // Balc float64 `json:"balc"`
  4377. // Brdy string `json:"brdy"`
  4378. // Certno string `json:"certno"`
  4379. // ClrOptins string `json:"clr_optins"`
  4380. // ClrType string `json:"clr_type"`
  4381. // ClrWay string `json:"clr_way"`
  4382. // CvlservFlag string `json:"cvlserv_flag"`
  4383. // CvlservPay float64 `json:"cvlserv_pay"`
  4384. // FulamtOwnpayAmt float64 `json:"fulamt_ownpay_amt"`
  4385. // FundPaySumamt float64 `json:"fund_pay_sumamt"`
  4386. // Gend string `json:"gend"`
  4387. // HifesPay float64 `json:"hifes_pay"`
  4388. // HifmiPay float64 `json:"hifmi_pay"`
  4389. // HifpPay float64 `json:"hifp_pay"`
  4390. // HospPartAmt float64 `json:"hosp_part_amt"`
  4391. // InscpScpAmt float64 `json:"inscp_scp_amt"`
  4392. // Insutype string `json:"insutype"`
  4393. // MafPay float64 `json:"maf_pay"`
  4394. // MdtrtCertType string `json:"mdtrt_cert_type"`
  4395. // HifobPay float64 `json:"hifob_pay"`
  4396. //
  4397. // MdtrtID string `json:"mdtrt_id"`
  4398. // MedType string `json:"med_type"`
  4399. // MedfeeSumamt float64 `json:"medfee_sumamt"`
  4400. // MedinsSetlID string `json:"medins_setl_id"`
  4401. // Naty string `json:"naty"`
  4402. // OthPay float64 `json:"oth_pay"`
  4403. // OverlmtSelfpay float64 `json:"overlmt_selfpay"`
  4404. // PreselfpayAmt float64 `json:"preselfpay_amt"`
  4405. // PsnCashPay float64 `json:"psn_cash_pay"`
  4406. // PsnCertType string `json:"psn_cert_type"`
  4407. // PsnName string `json:"psn_name"`
  4408. // PsnNo string `json:"psn_no"`
  4409. // PsnPartAmt float64 `json:"psn_part_amt"`
  4410. // PsnType string `json:"psn_type"`
  4411. // SetlID string `json:"setl_id"`
  4412. // SetlTime string `json:"setl_time"`
  4413. // } `json:"setlinfo"`
  4414. // } `json:"output"`
  4415. // RefmsgTime string `json:"refmsg_time"`
  4416. // RespondTime string `json:"respond_time"`
  4417. // Signtype interface{} `json:"signtype"`
  4418. // WarnMsg interface{} `json:"warn_msg"`
  4419. //}
  4420. //type ResultSeven10265 struct {
  4421. // Cainfo string `json:"cainfo"`
  4422. // ErrMsg string `json:"err_msg"`
  4423. // InfRefmsgid string `json:"inf_refmsgid"`
  4424. // Infcode string `json:"infcode"`
  4425. // Output struct {
  4426. // Setldetail []interface{} `json:"setldetail"`
  4427. // Setlinfo struct {
  4428. // AcctMulaidPay float64 `json:"acct_mulaid_pay"`
  4429. // AcctPay float64 `json:"acct_pay"`
  4430. // ActPayDedc float64 `json:"act_pay_dedc"`
  4431. // Age float64 `json:"age"`
  4432. // Balc float64 `json:"balc"`
  4433. // Brdy string `json:"brdy"`
  4434. // Certno string `json:"certno"`
  4435. // ClrOptins string `json:"clr_optins"`
  4436. // ClrType string `json:"clr_type"`
  4437. // ClrWay string `json:"clr_way"`
  4438. // CvlservFlag string `json:"cvlserv_flag"`
  4439. // CvlservPay float64 `json:"cvlserv_pay"`
  4440. // FulamtOwnpayAmt float64 `json:"fulamt_ownpay_amt"`
  4441. // FundPaySumamt float64 `json:"fund_pay_sumamt"`
  4442. // Gend string `json:"gend"`
  4443. // HifesPay float64 `json:"hifes_pay"`
  4444. // HifmiPay float64 `json:"hifmi_pay"`
  4445. // HifpPay float64 `json:"hifp_pay"`
  4446. // HospPartAmt float64 `json:"hosp_part_amt"`
  4447. // InscpScpAmt float64 `json:"inscp_scp_amt"`
  4448. // Insutype string `json:"insutype"`
  4449. // MafPay float64 `json:"maf_pay"`
  4450. // MdtrtCertType string `json:"mdtrt_cert_type"`
  4451. // HifobPay float64 `json:"hifob_pay"`
  4452. //
  4453. // MdtrtID string `json:"mdtrt_id"`
  4454. // MedType string `json:"med_type"`
  4455. // MedfeeSumamt float64 `json:"medfee_sumamt"`
  4456. // MedinsSetlID string `json:"medins_setl_id"`
  4457. // Naty string `json:"naty"`
  4458. // OthPay float64 `json:"oth_pay"`
  4459. // OverlmtSelfpay float64 `json:"overlmt_selfpay"`
  4460. // PreselfpayAmt float64 `json:"preselfpay_amt"`
  4461. // PsnCashPay float64 `json:"psn_cash_pay"`
  4462. // PsnCertType string `json:"psn_cert_type"`
  4463. // PsnName string `json:"psn_name"`
  4464. // PsnNo string `json:"psn_no"`
  4465. // PsnPartAmt float64 `json:"psn_part_amt"`
  4466. // PsnType string `json:"psn_type"`
  4467. // SetlID string `json:"setl_id"`
  4468. // SetlTime string `json:"setl_time"`
  4469. // } `json:"setlinfo"`
  4470. // } `json:"output"`
  4471. // RefmsgTime string `json:"refmsg_time"`
  4472. // RespondTime string `json:"respond_time"`
  4473. // Signtype interface{} `json:"signtype"`
  4474. // WarnMsg interface{} `json:"warn_msg"`
  4475. //}
  4476. //
  4477. //type ResultEight struct {
  4478. // Cainfo string `json:"cainfo"`
  4479. // ErrMsg string `json:"err_msg"`
  4480. // InfRefmsgid string `json:"inf_refmsgid"`
  4481. // Infcode int64 `json:"infcode"`
  4482. // Output struct {
  4483. // Stmtinfo struct {
  4484. // SetlOptins string `json:"setl_optins"`
  4485. // StmtRslt string `json:"stmt_rslt"`
  4486. // StmtRsltDscr string `json:"stmt_rslt_dscr"`
  4487. // } `json:"stmtinfo"`
  4488. // } `json:"output"`
  4489. // RefmsgTime string `json:"refmsg_time"`
  4490. // RespondTime string `json:"respond_time"`
  4491. // Signtype interface{} `json:"signtype"`
  4492. // WarnMsg interface{} `json:"warn_msg"`
  4493. //}
  4494. //
  4495. //type ResultEightFor10188 struct {
  4496. // Cainfo string `json:"cainfo"`
  4497. // ErrMsg string `json:"err_msg"`
  4498. // InfRefmsgid string `json:"inf_refmsgid"`
  4499. // Infcode string `json:"infcode"`
  4500. // Output struct {
  4501. // Stmtinfo struct {
  4502. // SetlOptins string `json:"setl_optins"`
  4503. // StmtRslt string `json:"stmt_rslt"`
  4504. // StmtRsltDscr string `json:"stmt_rslt_dscr"`
  4505. // } `json:"stmtinfo"`
  4506. // } `json:"output"`
  4507. // RefmsgTime string `json:"refmsg_time"`
  4508. // RespondTime string `json:"respond_time"`
  4509. // Signtype interface{} `json:"signtype"`
  4510. // WarnMsg interface{} `json:"warn_msg"`
  4511. //}
  4512. //type ResultNine struct {
  4513. // Cainfo string `json:"cainfo"`
  4514. // ErrMsg string `json:"err_msg"`
  4515. // InfRefmsgid string `json:"inf_refmsgid"`
  4516. // Infcode int64 `json:"infcode"`
  4517. // Output struct {
  4518. // FileQuryNo string `json:"file_qury_no"`
  4519. // } `json:"output"`
  4520. // RefmsgTime string `json:"refmsg_time"`
  4521. // RespondTime string `json:"respond_time"`
  4522. // Signtype interface{} `json:"signtype"`
  4523. // WarnMsg interface{} `json:"warn_msg"`
  4524. //}
  4525. //type ResultTen struct {
  4526. // Cainfo string `json:"cainfo"`
  4527. // ErrMsg string `json:"err_msg"`
  4528. // InfRefmsgid string `json:"inf_refmsgid"`
  4529. // Infcode int64 `json:"infcode"`
  4530. // Output struct {
  4531. // DldEndtime string `json:"dld_endtime"`
  4532. // FileQuryNo string `json:"file_qury_no"`
  4533. // Filename string `json:"filename"`
  4534. // } `json:"output"`
  4535. // RefmsgTime string `json:"refmsg_time"`
  4536. // RespondTime string `json:"respond_time"`
  4537. // Signtype interface{} `json:"signtype"`
  4538. // WarnMsg interface{} `json:"warn_msg"`
  4539. //}
  4540. //
  4541. ////type Autogenerated struct {
  4542. //// Output struct {
  4543. //// Setlinfo struct {
  4544. //// SetlTime string `json:"setl_time"`
  4545. //// CvlservPay float64 `json:"cvlserv_pay"`
  4546. //// Year string `json:"year"`
  4547. //// MedType string `json:"med_type"`
  4548. //// PsnPay float64 `json:"psn_pay"`
  4549. //// OpterID string `json:"opter_id"`
  4550. //// Begndate string `json:"begndate"`
  4551. //// FlxempeFlag string `json:"flxempe_flag"`
  4552. //// HifmiPay float64 `json:"hifmi_pay"`
  4553. //// PsnNo string `json:"psn_no"`
  4554. //// ActPayDedc float64 `json:"act_pay_dedc"`
  4555. //// MedinsSetlID interface{} `json:"medins_setl_id"`
  4556. //// AcctMulaidPay interface{} `json:"acct_mulaid_pay"`
  4557. //// ClrWay string `json:"clr_way"`
  4558. //// OthPay float64 `json:"oth_pay"`
  4559. //// Gend string `json:"gend"`
  4560. //// MdtrtID string `json:"mdtrt_id"`
  4561. //// AcctPay float64 `json:"acct_pay"`
  4562. //// InscpScpAmt float64 `json:"inscp_scp_amt"`
  4563. //// Insutype string `json:"insutype"`
  4564. //// Invono interface{} `json:"invono"`
  4565. //// Enddate string `json:"enddate"`
  4566. //// CashPayamt float64 `json:"cash_payamt"`
  4567. //// PsnType string `json:"psn_type"`
  4568. //// FixmedinsName string `json:"fixmedins_name"`
  4569. //// HifpPay float64 `json:"hifp_pay"`
  4570. //// NewFlag interface{} `json:"new_flag"`
  4571. //// OverlmtSelfpay float64 `json:"overlmt_selfpay"`
  4572. //// PreselfpayAmt float64 `json:"preselfpay_amt"`
  4573. //// PayLoc string `json:"pay_loc"`
  4574. //// ClrType string `json:"clr_type"`
  4575. //// RefdSetlFlag string `json:"refd_setl_flag"`
  4576. //// CvlservFlag string `json:"cvlserv_flag"`
  4577. //// EmpName string `json:"emp_name"`
  4578. //// Brdy string `json:"brdy"`
  4579. //// Naty string `json:"naty"`
  4580. //// Certno string `json:"certno"`
  4581. //// DiseCode string `json:"dise_code"`
  4582. //// FixmedinsCode string `json:"fixmedins_code"`
  4583. //// DedcHospLv string `json:"dedc_hosp_lv"`
  4584. //// OpterName string `json:"opter_name"`
  4585. //// Balc float64 `json:"balc"`
  4586. //// FixmedinsPoolarea string `json:"fixmedins_poolarea"`
  4587. //// PsnCertType string `json:"psn_cert_type"`
  4588. //// HifobPay float64 `json:"hifob_pay"`
  4589. //// MedfeeSumamt float64 `json:"medfee_sumamt"`
  4590. //// HifesPay float64 `json:"hifes_pay"`
  4591. //// FundPaySumamt float64 `json:"fund_pay_sumamt"`
  4592. //// OptTime string `json:"opt_time"`
  4593. //// FulamtOwnpayAmt float64 `json:"fulamt_ownpay_amt"`
  4594. //// SetlID string `json:"setl_id"`
  4595. //// MafPay float64 `json:"maf_pay"`
  4596. //// PsnName string `json:"psn_name"`
  4597. //// InsuOptins interface{} `json:"insu_optins"`
  4598. //// PrefFundPay interface{} `json:"pref_fund_pay"`
  4599. //// ClrOptins string `json:"clr_optins"`
  4600. //// PoolPropSelfpay float64 `json:"pool_prop_selfpay"`
  4601. //// DiseName string `json:"dise_name"`
  4602. //// LmtpricHospLv string `json:"lmtpric_hosp_lv"`
  4603. //// Age float64 `json:"age"`
  4604. //// DtrtCertType string `json:"dtrt_cert_type"`
  4605. //// HospLv string `json:"hosp_lv"`
  4606. //// } `json:"setlinfo"`
  4607. //// Setldetail []struct {
  4608. //// FundPayType string `json:"fund_pay_type"`
  4609. //// FundPayamt float64 `json:"fund_payamt"`
  4610. //// SetlProcInfo interface{} `json:"setl_proc_info"`
  4611. //// CrtPaybLmtAmt interface{} `json:"crt_payb_lmt_amt"`
  4612. //// InscpScpAmt interface{} `json:"inscp_scp_amt"`
  4613. //// FundPayTypeName interface{} `json:"fund_pay_type_name"`
  4614. //// PrefFundPay interface{} `json:"pref_fund_pay"`
  4615. //// } `json:"setldetail"`
  4616. //// } `json:"output"`
  4617. //// Infcode int `json:"infcode"`
  4618. //// WarnMsg interface{} `json:"warn_msg"`
  4619. //// Cainfo interface{} `json:"cainfo"`
  4620. //// ErrMsg interface{} `json:"err_msg"`
  4621. //// RefmsgTime string `json:"refmsg_time"`
  4622. //// Signtype interface{} `json:"signtype"`
  4623. //// RespondTime string `json:"respond_time"`
  4624. //// InfRefmsgid string `json:"inf_refmsgid"`
  4625. ////}
  4626. //
  4627. //type ResultEleven struct {
  4628. // Cainfo string `json:"cainfo"`
  4629. // ErrMsg string `json:"err_msg"`
  4630. // InfRefmsgid string `json:"inf_refmsgid"`
  4631. // Infcode int64 `json:"infcode"`
  4632. // Output struct {
  4633. // Setlinfo struct {
  4634. // SetlTime string `json:"setl_time"`
  4635. // CvlservPay float64 `json:"cvlserv_pay"`
  4636. // Year string `json:"year"`
  4637. // MedType string `json:"med_type"`
  4638. // PsnPay float64 `json:"psn_pay"`
  4639. // OpterID string `json:"opter_id"`
  4640. // Begndate string `json:"begndate"`
  4641. // FlxempeFlag string `json:"flxempe_flag"`
  4642. // HifmiPay float64 `json:"hifmi_pay"`
  4643. // PsnNo string `json:"psn_no"`
  4644. // ActPayDedc float64 `json:"act_pay_dedc"`
  4645. // MedinsSetlID interface{} `json:"medins_setl_id"`
  4646. // AcctMulaidPay interface{} `json:"acct_mulaid_pay"`
  4647. // ClrWay string `json:"clr_way"`
  4648. // OthPay float64 `json:"oth_pay"`
  4649. // Gend string `json:"gend"`
  4650. // MdtrtID string `json:"mdtrt_id"`
  4651. // AcctPay float64 `json:"acct_pay"`
  4652. // InscpScpAmt float64 `json:"inscp_scp_amt"`
  4653. // Insutype string `json:"insutype"`
  4654. // Invono interface{} `json:"invono"`
  4655. // Enddate string `json:"enddate"`
  4656. // CashPayamt float64 `json:"cash_payamt"`
  4657. // PsnType string `json:"psn_type"`
  4658. // FixmedinsName string `json:"fixmedins_name"`
  4659. // HifpPay float64 `json:"hifp_pay"`
  4660. // NewFlag interface{} `json:"new_flag"`
  4661. // OverlmtSelfpay float64 `json:"overlmt_selfpay"`
  4662. // PreselfpayAmt float64 `json:"preselfpay_amt"`
  4663. // PayLoc string `json:"pay_loc"`
  4664. // ClrType string `json:"clr_type"`
  4665. // RefdSetlFlag string `json:"refd_setl_flag"`
  4666. // CvlservFlag string `json:"cvlserv_flag"`
  4667. // EmpName string `json:"emp_name"`
  4668. // Brdy string `json:"brdy"`
  4669. // Naty string `json:"naty"`
  4670. // Certno string `json:"certno"`
  4671. // DiseCode string `json:"dise_code"`
  4672. // FixmedinsCode string `json:"fixmedins_code"`
  4673. // DedcHospLv string `json:"dedc_hosp_lv"`
  4674. // OpterName string `json:"opter_name"`
  4675. // Balc float64 `json:"balc"`
  4676. // FixmedinsPoolarea string `json:"fixmedins_poolarea"`
  4677. // PsnCertType string `json:"psn_cert_type"`
  4678. // HifobPay float64 `json:"hifob_pay"`
  4679. // MedfeeSumamt float64 `json:"medfee_sumamt"`
  4680. // HifesPay float64 `json:"hifes_pay"`
  4681. // FundPaySumamt float64 `json:"fund_pay_sumamt"`
  4682. // OptTime string `json:"opt_time"`
  4683. // FulamtOwnpayAmt float64 `json:"fulamt_ownpay_amt"`
  4684. // SetlID string `json:"setl_id"`
  4685. // MafPay float64 `json:"maf_pay"`
  4686. // PsnName string `json:"psn_name"`
  4687. // InsuOptins interface{} `json:"insu_optins"`
  4688. // PrefFundPay interface{} `json:"pref_fund_pay"`
  4689. // ClrOptins string `json:"clr_optins"`
  4690. // DiseName string `json:"dise_name"`
  4691. // LmtpricHospLv string `json:"lmtpric_hosp_lv"`
  4692. // Age float64 `json:"age"`
  4693. // DtrtCertType string `json:"dtrt_cert_type"`
  4694. // HospLv string `json:"hosp_lv"`
  4695. // } `json:"setlinfo"`
  4696. // } `json:"output"`
  4697. // RefmsgTime string `json:"refmsg_time"`
  4698. // RespondTime string `json:"respond_time"`
  4699. // Signtype interface{} `json:"signtype"`
  4700. // WarnMsg interface{} `json:"warn_msg"`
  4701. //}
  4702. //type ResultEleven10265 struct {
  4703. // Cainfo string `json:"cainfo"`
  4704. // ErrMsg string `json:"err_msg"`
  4705. // InfRefmsgid string `json:"inf_refmsgid"`
  4706. // Infcode string `json:"infcode"`
  4707. // Output struct {
  4708. // Setlinfo struct {
  4709. // SetlTime string `json:"setl_time"`
  4710. // CvlservPay float64 `json:"cvlserv_pay"`
  4711. // Year string `json:"year"`
  4712. // MedType string `json:"med_type"`
  4713. // PsnPay float64 `json:"psn_pay"`
  4714. // OpterID string `json:"opter_id"`
  4715. // Begndate string `json:"begndate"`
  4716. // FlxempeFlag string `json:"flxempe_flag"`
  4717. // HifmiPay float64 `json:"hifmi_pay"`
  4718. // PsnNo string `json:"psn_no"`
  4719. // ActPayDedc float64 `json:"act_pay_dedc"`
  4720. // MedinsSetlID interface{} `json:"medins_setl_id"`
  4721. // AcctMulaidPay interface{} `json:"acct_mulaid_pay"`
  4722. // ClrWay string `json:"clr_way"`
  4723. // OthPay float64 `json:"oth_pay"`
  4724. // Gend string `json:"gend"`
  4725. // MdtrtID string `json:"mdtrt_id"`
  4726. // AcctPay float64 `json:"acct_pay"`
  4727. // InscpScpAmt float64 `json:"inscp_scp_amt"`
  4728. // Insutype string `json:"insutype"`
  4729. // Invono interface{} `json:"invono"`
  4730. // Enddate string `json:"enddate"`
  4731. // CashPayamt float64 `json:"cash_payamt"`
  4732. // PsnType string `json:"psn_type"`
  4733. // FixmedinsName string `json:"fixmedins_name"`
  4734. // HifpPay float64 `json:"hifp_pay"`
  4735. // NewFlag interface{} `json:"new_flag"`
  4736. // OverlmtSelfpay float64 `json:"overlmt_selfpay"`
  4737. // PreselfpayAmt float64 `json:"preselfpay_amt"`
  4738. // PayLoc string `json:"pay_loc"`
  4739. // ClrType string `json:"clr_type"`
  4740. // RefdSetlFlag string `json:"refd_setl_flag"`
  4741. // CvlservFlag string `json:"cvlserv_flag"`
  4742. // EmpName string `json:"emp_name"`
  4743. // Brdy string `json:"brdy"`
  4744. // Naty string `json:"naty"`
  4745. // Certno string `json:"certno"`
  4746. // DiseCode string `json:"dise_code"`
  4747. // FixmedinsCode string `json:"fixmedins_code"`
  4748. // DedcHospLv string `json:"dedc_hosp_lv"`
  4749. // OpterName string `json:"opter_name"`
  4750. // Balc float64 `json:"balc"`
  4751. // FixmedinsPoolarea string `json:"fixmedins_poolarea"`
  4752. // PsnCertType string `json:"psn_cert_type"`
  4753. // HifobPay float64 `json:"hifob_pay"`
  4754. // MedfeeSumamt float64 `json:"medfee_sumamt"`
  4755. // HifesPay float64 `json:"hifes_pay"`
  4756. // FundPaySumamt float64 `json:"fund_pay_sumamt"`
  4757. // OptTime string `json:"opt_time"`
  4758. // FulamtOwnpayAmt float64 `json:"fulamt_ownpay_amt"`
  4759. // SetlID string `json:"setl_id"`
  4760. // MafPay float64 `json:"maf_pay"`
  4761. // PsnName string `json:"psn_name"`
  4762. // InsuOptins interface{} `json:"insu_optins"`
  4763. // PrefFundPay interface{} `json:"pref_fund_pay"`
  4764. // ClrOptins string `json:"clr_optins"`
  4765. // DiseName string `json:"dise_name"`
  4766. // LmtpricHospLv string `json:"lmtpric_hosp_lv"`
  4767. // Age float64 `json:"age"`
  4768. // DtrtCertType string `json:"dtrt_cert_type"`
  4769. // HospLv string `json:"hosp_lv"`
  4770. // } `json:"setlinfo"`
  4771. // } `json:"output"`
  4772. // RefmsgTime string `json:"refmsg_time"`
  4773. // RespondTime string `json:"respond_time"`
  4774. // Signtype interface{} `json:"signtype"`
  4775. // WarnMsg interface{} `json:"warn_msg"`
  4776. //}
  4777. //
  4778. //type ResultTwelve struct {
  4779. // Cainfo string `json:"cainfo"`
  4780. // ErrMsg string `json:"err_msg"`
  4781. // InfRefmsgid string `json:"inf_refmsgid"`
  4782. // Infcode int64 `json:"infcode"`
  4783. // Output struct {
  4784. // MdtrtId string `json:"mdtrt_id"`
  4785. // ChrgBchno string `json:"chrg_bchno"`
  4786. // PsnNo string `json:"psn_no"`
  4787. // } `json:"output"`
  4788. // RefmsgTime string `json:"refmsg_time"`
  4789. // RespondTime string `json:"respond_time"`
  4790. // Signtype interface{} `json:"signtype"`
  4791. // WarnMsg interface{} `json:"warn_msg"`
  4792. //}
  4793. //
  4794. //type ResultThirteen struct {
  4795. // ErrMsg string `json:"err_msg"`
  4796. // InfRefmsgid string `json:"inf_refmsgid"`
  4797. // Infcode int64 `json:"infcode"`
  4798. // Output struct {
  4799. // Result struct {
  4800. // TrtDclaDetlSn string `json:"trt_dcla_detl_sn"`
  4801. // } `json:"result"`
  4802. // } `json:"output"`
  4803. // RefmsgTime string `json:"refmsg_time"`
  4804. // RespondTime string `json:"respond_time"`
  4805. // Signtype interface{} `json:"signtype"`
  4806. // WarnInfo interface{} `json:"warn_info"`
  4807. //}
  4808. //
  4809. //type ResultThirteen10265 struct {
  4810. // ErrMsg string `json:"err_msg"`
  4811. // InfRefmsgid string `json:"inf_refmsgid"`
  4812. // Infcode string `json:"infcode"`
  4813. // Output struct {
  4814. // Result struct {
  4815. // TrtDclaDetlSn string `json:"trt_dcla_detl_sn"`
  4816. // } `json:"result"`
  4817. // } `json:"output"`
  4818. // RefmsgTime string `json:"refmsg_time"`
  4819. // RespondTime string `json:"respond_time"`
  4820. // Signtype interface{} `json:"signtype"`
  4821. // WarnInfo interface{} `json:"warn_info"`
  4822. //}
  4823. //
  4824. //type ResultFourteen struct {
  4825. // ErrMsg string `json:"err_msg"`
  4826. // InfRefmsgid string `json:"inf_refmsgid"`
  4827. // Infcode int64 `json:"infcode"`
  4828. // Output struct {
  4829. // } `json:"output"`
  4830. // RefmsgTime string `json:"refmsg_time"`
  4831. // RespondTime string `json:"respond_time"`
  4832. // Signtype interface{} `json:"signtype"`
  4833. // WarnInfo interface{} `json:"warn_info"`
  4834. //}
  4835. //
  4836. //type ResultFourteen10265 struct {
  4837. // ErrMsg string `json:"err_msg"`
  4838. // InfRefmsgid string `json:"inf_refmsgid"`
  4839. // Infcode string `json:"infcode"`
  4840. // Output struct {
  4841. // } `json:"output"`
  4842. // RefmsgTime string `json:"refmsg_time"`
  4843. // RespondTime string `json:"respond_time"`
  4844. // Signtype interface{} `json:"signtype"`
  4845. // WarnInfo interface{} `json:"warn_info"`
  4846. //}
  4847. //
  4848. //type ResultSixteen struct {
  4849. // Cainfo string `json:"cainfo"`
  4850. // ErrMsg string `json:"err_msg"`
  4851. // InfRefmsgid string `json:"inf_refmsgid"`
  4852. // Infcode int64 `json:"infcode"`
  4853. // Output struct {
  4854. // Setldetail []interface{} `json:"setldetail"`
  4855. // Setlinfo struct {
  4856. // MdtrtID string `json:"mdtrt_id"`
  4857. // SetlID string `json:"setl_id"`
  4858. // ClrOptins string `json:"clr_optins"`
  4859. // SetlTime string `json:"setl_time"`
  4860. // MedfeeSumamt float64 `json:"medfee_sumamt"`
  4861. // FulamtOwnpayAmt float64 `json:"fulamt_ownpay_amt"`
  4862. // OverlmtSelfpay float64 `json:"overlmt_selfpay"`
  4863. // PreselfpayAmt float64 `json:"preselfpay_amt"`
  4864. // InscpScpAmt float64 `json:"inscp_scp_amt"`
  4865. // ActPayDedc float64 `json:"act_pay_dedc"`
  4866. // HifpPay float64 `json:"hifp_pay"`
  4867. // Lfpay float64 `json:"selfpay"`
  4868. // CvlservPay float64 `json:"cvlserv_pay"`
  4869. // HifesPay float64 `json:"hifes_pay"`
  4870. // HifmiPay float64 `json:"hifmi_pay"`
  4871. // HifobPay float64 `json:"hifob_pay"`
  4872. // MafPay float64 `json:"maf_pay"`
  4873. // OthPay float64 `json:"oth_pay"`
  4874. // FundPaySumamt float64 `json:"fund_pay_sumamt"`
  4875. // PsnPartAmt float64 `json:"psn_part_amt"`
  4876. // AcctPay float64 `json:"acct_pay"`
  4877. // Balc float64 `json:"balc"`
  4878. // AcctMulaidPay float64 `json:"acct_mulaid_pay"`
  4879. // HospPartAmt float64 `json:"hosp_part_amt"`
  4880. // MedinsSetlID string `json:"medins_setl_id"`
  4881. // PdnCashPay string `json:"pdn_cash_pay"`
  4882. // } `json:"setlinfo"`
  4883. // } `json:"output"`
  4884. // RefmsgTime string `json:"refmsg_time"`
  4885. // RespondTime string `json:"respond_time"`
  4886. // Signtype interface{} `json:"signtype"`
  4887. // WarnMsg interface{} `json:"warn_msg"`
  4888. //}
  4889. //type ResultSixteen10265 struct {
  4890. // Cainfo string `json:"cainfo"`
  4891. // ErrMsg string `json:"err_msg"`
  4892. // InfRefmsgid string `json:"inf_refmsgid"`
  4893. // Infcode string `json:"infcode"`
  4894. // Output struct {
  4895. // Setldetail []interface{} `json:"setldetail"`
  4896. // Setlinfo struct {
  4897. // MdtrtID string `json:"mdtrt_id"`
  4898. // SetlID string `json:"setl_id"`
  4899. // ClrOptins string `json:"clr_optins"`
  4900. // SetlTime string `json:"setl_time"`
  4901. // MedfeeSumamt float64 `json:"medfee_sumamt"`
  4902. // FulamtOwnpayAmt float64 `json:"fulamt_ownpay_amt"`
  4903. // OverlmtSelfpay float64 `json:"overlmt_selfpay"`
  4904. // PreselfpayAmt float64 `json:"preselfpay_amt"`
  4905. // InscpScpAmt float64 `json:"inscp_scp_amt"`
  4906. // ActPayDedc float64 `json:"act_pay_dedc"`
  4907. // HifpPay float64 `json:"hifp_pay"`
  4908. // Lfpay float64 `json:"selfpay"`
  4909. // CvlservPay float64 `json:"cvlserv_pay"`
  4910. // HifesPay float64 `json:"hifes_pay"`
  4911. // HifmiPay float64 `json:"hifmi_pay"`
  4912. // HifobPay float64 `json:"hifob_pay"`
  4913. // MafPay float64 `json:"maf_pay"`
  4914. // OthPay float64 `json:"oth_pay"`
  4915. // FundPaySumamt float64 `json:"fund_pay_sumamt"`
  4916. // PsnPartAmt float64 `json:"psn_part_amt"`
  4917. // AcctPay float64 `json:"acct_pay"`
  4918. // Balc float64 `json:"balc"`
  4919. // AcctMulaidPay float64 `json:"acct_mulaid_pay"`
  4920. // HospPartAmt float64 `json:"hosp_part_amt"`
  4921. // MedinsSetlID string `json:"medins_setl_id"`
  4922. // PdnCashPay string `json:"pdn_cash_pay"`
  4923. // } `json:"setlinfo"`
  4924. // } `json:"output"`
  4925. // RefmsgTime string `json:"refmsg_time"`
  4926. // RespondTime string `json:"respond_time"`
  4927. // Signtype interface{} `json:"signtype"`
  4928. // WarnMsg interface{} `json:"warn_msg"`
  4929. //}
  4930. //
  4931. //type ResultSeventeen struct {
  4932. // ErrMsg string `json:"err_msg"`
  4933. // InfRefmsgid string `json:"inf_refmsgid"`
  4934. // Infcode int64 `json:"infcode"`
  4935. // Output struct {
  4936. // SetlListId string `json:"setl_list_id"`
  4937. // } `json:"output"`
  4938. // RefmsgTime string `json:"refmsg_time"`
  4939. // RespondTime string `json:"respond_time"`
  4940. // Signtype string `json:"signtype"`
  4941. // WarnInfo string `json:"warn_info"`
  4942. //}
  4943. //
  4944. //type ResultSeventeenOther struct {
  4945. // ErrMsg string `json:"err_msg"`
  4946. // InfRefmsgid string `json:"inf_refmsgid"`
  4947. // Infcode string `json:"infcode"`
  4948. // Output struct {
  4949. // SetlListId string `json:"setl_list_id"`
  4950. // } `json:"output"`
  4951. // RefmsgTime string `json:"refmsg_time"`
  4952. // RespondTime string `json:"respond_time"`
  4953. // Signtype string `json:"signtype"`
  4954. // WarnInfo string `json:"warn_info"`
  4955. //}
  4956. //
  4957. //type Result90991 struct {
  4958. // ErrMsg string `json:"err_msg"`
  4959. // InfRefmsgid string `json:"inf_refmsgid"`
  4960. // Infcode int64 `json:"infcode"`
  4961. // Output struct {
  4962. // Result struct {
  4963. // PsnNo string `json:"psn_no"`
  4964. // CardStat string `json:"card_stat"`
  4965. // Certno string `json:"certno"`
  4966. // PsnName string `json:"psn_name"`
  4967. // CheckStat string `json:"check_stat"`
  4968. // SscnoCheckStat string `json:"sscno_check_stat"`
  4969. // } `json:"result"`
  4970. // } `json:"output"`
  4971. // RefmsgTime string `json:"refmsg_time"`
  4972. // RespondTime string `json:"respond_time"`
  4973. // Signtype interface{} `json:"signtype"`
  4974. // WarnInfo interface{} `json:"warn_info"`
  4975. //}
  4976. //
  4977. //type Result90100 struct {
  4978. // ErrMsg string `json:"err_msg"`
  4979. // InfRefmsgid string `json:"inf_refmsgid"`
  4980. // Infcode int64 `json:"infcode"`
  4981. // Output struct {
  4982. // PoolareaNo string `json:"poolarea_no"`
  4983. // PoolareaNoName string `json:"poolarea_no_name"`
  4984. // Insutype string `json:"insutype"`
  4985. // InsutypeName string `json:"insutype_name"`
  4986. // ClctType string `json:"clct_type"`
  4987. // ClctTypeName string `json:"clct_type_name"`
  4988. // ClctFlag string `json:"clct_flag"`
  4989. // ClctFlagName string `json:"clct_flag_name"`
  4990. // AccrymBegn string `json:"accrym_begn"`
  4991. // AccrymEnd string `json:"accrym_end"`
  4992. // ClctTime string `json:"clct_time"`
  4993. // ClctstdCrtfRuleCodg string `json:"clctstd_crtf_rule_codg"`
  4994. // } `json:"output"`
  4995. // RefmsgTime string `json:"refmsg_time"`
  4996. // RespondTime string `json:"respond_time"`
  4997. // Signtype interface{} `json:"signtype"`
  4998. // WarnInfo interface{} `json:"warn_info"`
  4999. //}
  5000. //
  5001. //type Custom struct {
  5002. // DetItemFeeSumamt string
  5003. // Cut string
  5004. // FeedetlSn string
  5005. // Price string
  5006. // MedListCodg string
  5007. // Type int64
  5008. // AdviceId int64
  5009. // ProjectId int64
  5010. // ItemId int64
  5011. //}
  5012. //
  5013. //type Result5301 struct {
  5014. // ErrMsg string `json:"err_msg"`
  5015. // InfRefmsgid string `json:"inf_refmsgid"`
  5016. // Infcode int64 `json:"infcode"`
  5017. // Output struct {
  5018. // Result []struct {
  5019. // OpspDiseCode string `json:"opsp_dise_code"`
  5020. // OpspDiseName string `json:"opsp_dise_name"`
  5021. // Begndate string `json:"begndate"`
  5022. // Enddate string `json:"enddate"`
  5023. // } `json:"feedetail"`
  5024. // } `json:"output"`
  5025. // RefmsgTime string `json:"refmsg_time"`
  5026. // RespondTime string `json:"respond_time"`
  5027. // Signtype interface{} `json:"signtype"`
  5028. // WarnInfo interface{} `json:"warn_info"`
  5029. //}
  5030. //
  5031. //type Result5301For10265 struct {
  5032. // ErrMsg string `json:"err_msg"`
  5033. // InfRefmsgid string `json:"inf_refmsgid"`
  5034. // Infcode string `json:"infcode"`
  5035. // Output struct {
  5036. // Result []struct {
  5037. // OpspDiseCode string `json:"opsp_dise_code"`
  5038. // OpspDiseName string `json:"opsp_dise_name"`
  5039. // Begndate string `json:"begndate"`
  5040. // Enddate string `json:"enddate"`
  5041. // } `json:"feedetail"`
  5042. // } `json:"output"`
  5043. // RefmsgTime string `json:"refmsg_time"`
  5044. // RespondTime string `json:"respond_time"`
  5045. // Signtype interface{} `json:"signtype"`
  5046. // WarnInfo interface{} `json:"warn_info"`
  5047. //}
  5048. //
  5049. ////获取个人信息----挂号-----上传就诊信息
  5050. //func (c *HisApiController) GetRegisterInfo() {
  5051. // id, _ := c.GetInt64("id")
  5052. // record_time := c.GetString("record_time")
  5053. // settlementValue, _ := c.GetInt64("settlement_value")
  5054. // medical_insurance_card := c.GetString("medical_insurance_card")
  5055. // name := c.GetString("name")
  5056. // id_card_type, _ := c.GetInt64("id_card_type")
  5057. // certificates, _ := c.GetInt64("certificates")
  5058. // medical_care, _ := c.GetInt64("medical_care")
  5059. // birthday := c.GetString("birthday")
  5060. // id_card := c.GetString("id_card")
  5061. // register_type, _ := c.GetInt64("register")
  5062. // doctor, _ := c.GetInt64("doctor")
  5063. // department, _ := c.GetInt64("department")
  5064. // gender, _ := c.GetInt64("sex")
  5065. // registration_fee, _ := c.GetFloat("registration_fee")
  5066. // medical_expenses, _ := c.GetFloat("medical_expenses")
  5067. // social_type, _ := c.GetInt64("social_type")
  5068. // med_type := c.GetString("social_type")
  5069. // admin_user_id, _ := c.GetInt64("admin_user_id")
  5070. // insuplc_admdvs := c.GetString("insuplc_admdvs")
  5071. //
  5072. // timeLayout := "2006-01-02"
  5073. // loc, _ := time.LoadLocation("Local")
  5074. // birthdays, _ := time.ParseInLocation(timeLayout+" 15:04:05", birthday+" 00:00:00", loc)
  5075. // birthUnix := birthdays.Unix()
  5076. //
  5077. // theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_time+" 00:00:00", loc)
  5078. // if err != nil {
  5079. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  5080. // return
  5081. // }
  5082. // recordDateTime := theTime.Unix()
  5083. //
  5084. // adminInfo := c.GetAdminUserInfo()
  5085. // var patient service.Patients
  5086. // if id == 0 {
  5087. // patient, _ = service.GetPatientByIDCard(id_card, adminInfo.CurrentOrgId)
  5088. // } else {
  5089. // patient, _ = service.GetPatientByIDTwo(adminInfo.CurrentOrgId, id)
  5090. // }
  5091. // patientPrescription, _ := service.FindPatientPrescriptionInfo(adminInfo.CurrentOrgId, id, recordDateTime)
  5092. // if patientPrescription.ID == 0 {
  5093. // patientPrescription, _ = service.FindLastPatientPrescriptionInfo(adminInfo.CurrentOrgId, id, recordDateTime)
  5094. // }
  5095. //
  5096. // miConfig, _ := service.FindMedicalInsuranceInfo(adminInfo.CurrentOrgId)
  5097. // if patient.ID == 0 {
  5098. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodePatientNoExist)
  5099. // return
  5100. // }
  5101. // if len(patient.IdCardNo) == 0 {
  5102. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeIDCartNo)
  5103. // return
  5104. // }
  5105. // config, _ := service.GetMedicalInsuranceConfig(adminInfo.CurrentOrgId)
  5106. // roles, _ := service.GetAdminUserInfoByID(adminInfo.CurrentOrgId, admin_user_id)
  5107. //
  5108. // doctor_info, _ := service.GetAdminUserInfoByID(adminInfo.CurrentOrgId, doctor)
  5109. //
  5110. // //就诊结算未完成,不能进行二次挂号
  5111. // his, _ := service.GetHisPatientInfoTwo(adminInfo.CurrentOrgId, patient.ID, recordDateTime)
  5112. // if len(his) >= 1 {
  5113. // order, _ := service.GetNewHisOrderTwo(adminInfo.CurrentOrgId, his[len(his)-1].Number, his[len(his)-1].PatientId, recordDateTime)
  5114. // if len(his) >= 1 && order.ID == 0 {
  5115. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisPatientParamWrong)
  5116. // return
  5117. // }
  5118. // }
  5119. //
  5120. // //var register_log string
  5121. //
  5122. // if config.IsOpen == 1 {
  5123. // var res ResultTwo
  5124. // var res10265 ResultTwo10265
  5125. // var PsnNo string
  5126. // var PsnCertType string
  5127. // var Certno string
  5128. // var PsnName string
  5129. // var Gend string
  5130. // var Naty string
  5131. // var Brdy string
  5132. // var Age float64
  5133. // var infoStr string
  5134. // var idetinfoStr string
  5135. // var infocode int64
  5136. // var verify_number string
  5137. // fmt.Println(verify_number)
  5138. // if miConfig.MdtrtareaAdmvs == "421300" {
  5139. // psn_info, _ := service.GetPsnByPatientId(id)
  5140. // PsnNo = psn_info.PsnNo
  5141. // PsnCertType = psn_info.PsnCertType
  5142. // Certno = psn_info.Certno
  5143. // PsnName = psn_info.PsnName
  5144. // Gend = psn_info.Gend
  5145. // Naty = psn_info.Naty
  5146. // Brdy = psn_info.Brdy
  5147. // Age = psn_info.Age
  5148. // infoStr = psn_info.Insuinfo
  5149. // idetinfoStr = psn_info.Idetinfo
  5150. // infocode = 0
  5151. //
  5152. // } else if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  5153. // psn_info, _ := service.GetPsnByPatientId(id)
  5154. // PsnNo = psn_info.PsnNo
  5155. // PsnCertType = psn_info.PsnCertType
  5156. // Certno = psn_info.Certno
  5157. // PsnName = psn_info.PsnName
  5158. // Gend = psn_info.Gend
  5159. // Naty = psn_info.Naty
  5160. // Brdy = psn_info.Brdy
  5161. // Age = psn_info.Age
  5162. // infoStr = psn_info.Insuinfo
  5163. // idetinfoStr = psn_info.Idetinfo
  5164. // infocode = 0
  5165. // verify_number = psn_info.VerifyNumber
  5166. //
  5167. // } else {
  5168. // var result string
  5169. // var requestLog string
  5170. // if miConfig.UserOrgId == 10138 {
  5171. // result, requestLog = service.Gdyb1101D(patient.IdCardNo, miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, id_card_type, "", strconv.FormatInt(certificates, 10), name, record_time)
  5172. // } else {
  5173. // result, requestLog = service.Gdyb1101(patient.IdCardNo, miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, id_card_type, "", strconv.FormatInt(certificates, 10), name)
  5174. // }
  5175. // saveLog(result, requestLog, "1101", "人员基本信息获取")
  5176. // if miConfig.Code == "H15049901371" {
  5177. //
  5178. // if err := json.Unmarshal([]byte(result), &res10265); err != nil {
  5179. // utils.ErrorLog("解析失败:%v", err)
  5180. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5181. // return
  5182. // }
  5183. // res.ErrMsg = res10265.ErrMsg
  5184. // //res.Output = res10265.Output
  5185. // res.InfRefmsgid = res10265.InfRefmsgid
  5186. //
  5187. // } else {
  5188. // if err := json.Unmarshal([]byte(result), &res); err != nil {
  5189. // utils.ErrorLog("解析失败:%v", err)
  5190. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5191. // return
  5192. // }
  5193. // }
  5194. //
  5195. // PsnNo = res.Output[0].Baseinfo.PsnNo
  5196. // PsnCertType = res.Output[0].Baseinfo.PsnCertType
  5197. // Certno = res.Output[0].Baseinfo.Certno
  5198. // PsnName = res.Output[0].Baseinfo.PsnName
  5199. // Gend = res.Output[0].Baseinfo.Gend
  5200. // Naty = res.Output[0].Baseinfo.Naty
  5201. // Brdy = res.Output[0].Baseinfo.Brdy
  5202. // Age = res.Output[0].Baseinfo.Age
  5203. // Iinfos, _ := json.Marshal(res.Output[0].Iinfo)
  5204. // Idetinfos, _ := json.Marshal(res.Output[0].Idetinfo)
  5205. // infoStr = string(Iinfos)
  5206. // idetinfoStr = string(Idetinfos)
  5207. // if miConfig.Code == "H15049901371" {
  5208. // infocode, _ = strconv.ParseInt(res10265.Infcode, 10, 64)
  5209. // } else {
  5210. // infocode = res.Infcode
  5211. // }
  5212. // }
  5213. // if infocode == 0 {
  5214. // his := models.VMHisPatient{
  5215. // Name: name,
  5216. // Gender: gender,
  5217. // Birthday: birthUnix,
  5218. // MedicalTreatmentType: medical_care,
  5219. // IdType: certificates,
  5220. // IdCardNo: id_card,
  5221. // BalanceAccountsType: settlementValue,
  5222. // SocialType: social_type,
  5223. // MedicalInsuranceNumber: medical_insurance_card,
  5224. // RegisterType: register_type,
  5225. // RegisterCost: registration_fee,
  5226. // TreatmentCost: medical_expenses,
  5227. // Status: 1,
  5228. // Ctime: time.Now().Unix(),
  5229. // Mtime: time.Now().Unix(),
  5230. // PsnNo: PsnNo,
  5231. // PsnCertType: PsnCertType,
  5232. // Certno: Certno,
  5233. // PsnName: PsnName,
  5234. // Gend: Gend,
  5235. // Naty: Naty,
  5236. // Brdy: Brdy,
  5237. // Age: Age,
  5238. // Iinfo: infoStr,
  5239. // Idetinfo: idetinfoStr,
  5240. // PatientId: patient.ID,
  5241. // RecordDate: theTime.Unix(),
  5242. // UserOrgId: adminInfo.CurrentOrgId,
  5243. // AdminUserId: admin_user_id,
  5244. // IsReturn: 1,
  5245. // IdCardType: id_card_type,
  5246. // Doctor: doctor,
  5247. // Departments: department,
  5248. // }
  5249. //
  5250. // timestamp := time.Now().Unix()
  5251. // tempTime := time.Unix(timestamp, 0)
  5252. // timeFormat := tempTime.Format("20060102150405")
  5253. // chrgBchno := rand.Intn(100000) + 10000
  5254. // ipt_otp_no := timeFormat + strconv.FormatInt(int64(chrgBchno), 10) + strconv.FormatInt(his.PatientId, 10)
  5255. // //count, _ := service.FindHisRegisterRecord(theTime.Unix(), patient.ID, adminInfo.CurrentOrgId)
  5256. // department, _ := service.GetDepartMentDetail(department)
  5257. // doctor_id := strconv.FormatInt(patientPrescription.DoctorId, 10)
  5258. //
  5259. // IdCardNo := ""
  5260. // if id_card_type == 1 {
  5261. // // IdCardNo = medical_insurance_card
  5262. // IdCardNo = patient.IdCardNo
  5263. // } else {
  5264. // IdCardNo = patient.IdCardNo
  5265. // }
  5266. //
  5267. // var rf []*ResultFive
  5268. // json.Unmarshal([]byte(his.Iinfo), &rf)
  5269. // var insutypes []*ResultFive
  5270. // var insutype string
  5271. // var insuplc_admdvs_temp string
  5272. // var is390 int = 0
  5273. // var is310 int = 0
  5274. //
  5275. // for _, item := range rf {
  5276. // if (item.Insutype == "390" && item.PsnInsuStas == "1") || (item.Insutype == "310" && item.PsnInsuStas == "1") {
  5277. // insutypes = append(insutypes, item)
  5278. // }
  5279. // }
  5280. //
  5281. // if len(insutypes) == 1 {
  5282. // insutype = insutypes[0].Insutype
  5283. // //insuplc_admdvs = insutypes[0].InsuplcAdmdvs
  5284. // } else {
  5285. // for _, i := range insutypes {
  5286. // if i.Insutype == "390" {
  5287. // is390 = 1
  5288. // }
  5289. //
  5290. // if i.Insutype == "310" {
  5291. // is310 = 1
  5292. // }
  5293. // }
  5294. // }
  5295. // if is390 == 1 {
  5296. // insutype = "390"
  5297. // }
  5298. //
  5299. // if is310 == 1 {
  5300. // insutype = "310"
  5301. // }
  5302. //
  5303. // if len(insutypes) == 0 {
  5304. // insutype = "310"
  5305. // }
  5306. //
  5307. // if len(insutypes) == 2 {
  5308. // insutype = med_type
  5309. // }
  5310. //
  5311. // if len(med_type) > 0 {
  5312. //
  5313. // insutype = med_type
  5314. // }
  5315. //
  5316. // //for _, item := range rf {
  5317. // // if item.Insutype == insutype {
  5318. // // insuplc_admdvs = item.InsuplcAdmdvs
  5319. // // }
  5320. // //}
  5321. // var infocode int64
  5322. // var resThree ResultThree
  5323. // var resThree10265 ResultThree10265
  5324. //
  5325. // if len(insuplc_admdvs) == 0 {
  5326. // insuplc_admdvs_temp = miConfig.InsuplcAdmdvs
  5327. // } else {
  5328. //
  5329. // insuplc_admdvs_temp = insuplc_admdvs
  5330. //
  5331. // }
  5332. //
  5333. // if miConfig.MdtrtareaAdmvs == "421300" {
  5334. // api := "http://192.168.124.4:9532/" + "hbyb/2201?psn_no=" + PsnNo + "&insutype=" + insutype + "&cert_no=" + Certno + "&ipt_otp_no=" + ipt_otp_no +
  5335. // "&org_name=" + miConfig.OrgName + "&doctor=" + doctor_info.UserName + "&fixmedins_code=" + miConfig.Code +
  5336. // "&insuplc_admdvs=" + insuplc_admdvs_temp + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(id_card_type, 10) + "&dept_code=" + department.Number + "&dept=" + department.Name + "&doctor_id=" + doctor_id + "&doctor_name=" + doctor_info.UserName
  5337. // resp, requestErr := http.Get(api)
  5338. // if requestErr != nil {
  5339. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5340. // return
  5341. // }
  5342. //
  5343. // body, ioErr := ioutil.ReadAll(resp.Body)
  5344. // if ioErr != nil {
  5345. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  5346. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5347. // return
  5348. // }
  5349. // var respJSON map[string]interface{}
  5350. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  5351. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  5352. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5353. // return
  5354. // }
  5355. //
  5356. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  5357. // result, _ := json.Marshal(respJSON)
  5358. //
  5359. // if err := json.Unmarshal([]byte(result), &resThree); err != nil {
  5360. // utils.ErrorLog("解析失败:%v", err)
  5361. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5362. // return
  5363. // }
  5364. // infocode = resThree.Infcode
  5365. //
  5366. // } else if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  5367. // psn_info, _ := service.GetPsnByPatientId(id)
  5368. //
  5369. // psn_info.VerifyNumber = strings.Replace(psn_info.VerifyNumber, "+", "%2B", -1)
  5370. // var cert_no string
  5371. // if id_card_type == 3 {
  5372. // psn_info.VerifyNumber = IdCardNo + "|" + psn_info.VerifyNumber
  5373. // cert_no = IdCardNo
  5374. // } else if id_card_type == 4 {
  5375. // cert_no = IdCardNo
  5376. // psn_info.VerifyNumber = psn_info.VerifyNumber
  5377. // } else {
  5378. //
  5379. // bas := strings.Split(psn_info.CardInfo, "|")
  5380. // cert_no = bas[2]
  5381. // }
  5382. //
  5383. // var api string
  5384. // if miConfig.MdtrtareaAdmvs == "320921" {
  5385. //
  5386. // api = "http://192.168.3.111:9532/" + "jsyb/2201?psn_no=" + PsnNo + "&insutype=" + insutype + "&cert_no=" + cert_no + "&ipt_otp_no=" + ipt_otp_no +
  5387. // "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName + "&doctor_name=" + doctor_info.UserName + "&fixmedins_code=" + miConfig.Code +
  5388. // "&insuplc_admdvs=" + insuplc_admdvs_temp + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(id_card_type, 10) + "&dept_code=" + department.Number + "&dept=" + department.Name + "&doctor_id=" + doctor_id + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&verify_number=" + psn_info.VerifyNumber + "&cainfo=" + miConfig.Cainfo
  5389. //
  5390. // } else {
  5391. // api = "http://192.168.5.251:9532/" + "jsyb/2201?psn_no=" + PsnNo + "&insutype=" + insutype + "&cert_no=" + cert_no + "&ipt_otp_no=" + ipt_otp_no +
  5392. // "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName + "&doctor_name=" + doctor_info.UserName + "&fixmedins_code=" + miConfig.Code +
  5393. // "&insuplc_admdvs=" + insuplc_admdvs_temp + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(id_card_type, 10) + "&dept_code=" + department.Number + "&dept=" + department.Name + "&doctor_id=" + doctor_id + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&verify_number=" + psn_info.VerifyNumber + "&cainfo=" + miConfig.Cainfo
  5394. //
  5395. // }
  5396. //
  5397. // resp, requestErr := http.Get(api)
  5398. // if requestErr != nil {
  5399. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5400. // return
  5401. // }
  5402. //
  5403. // body, ioErr := ioutil.ReadAll(resp.Body)
  5404. //
  5405. // if ioErr != nil {
  5406. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  5407. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5408. // return
  5409. // }
  5410. //
  5411. // var respJSON map[string]interface{}
  5412. //
  5413. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  5414. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  5415. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5416. // return
  5417. // }
  5418. //
  5419. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  5420. //
  5421. // result, _ := json.Marshal(respJSON)
  5422. //
  5423. // if err := json.Unmarshal([]byte(result), &resThree10265); err != nil {
  5424. // utils.ErrorLog("解析失败:%v", err)
  5425. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5426. // return
  5427. // }
  5428. //
  5429. // resThree.ErrMsg = resThree10265.ErrMsg
  5430. //
  5431. // resThree.Output = resThree10265.Output
  5432. //
  5433. // resThree.InfRefmsgid = resThree10265.InfRefmsgid
  5434. //
  5435. // infocode, _ = strconv.ParseInt(resThree10265.Infcode, 10, 64)
  5436. // } else {
  5437. // result, requestLog := service.Gdyb2201ForGz(res.Output[0].Baseinfo.PsnNo, insutype, IdCardNo, miConfig.OrgName, roles.UserName, ipt_otp_no, department.Name, miConfig.Code, department.Number, doctor_id, insuplc_admdvs_temp, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, id_card_type, doctor_info.UserName, record_time)
  5438. // saveLog(result, requestLog, "2201A", "挂号")
  5439. // if miConfig.Code == "H15049901371" {
  5440. //
  5441. // if err := json.Unmarshal([]byte(result), &resThree10265); err != nil {
  5442. // utils.ErrorLog("解析失败:%v", err)
  5443. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5444. // return
  5445. // }
  5446. // resThree.ErrMsg = resThree10265.ErrMsg
  5447. // resThree.Output = resThree10265.Output
  5448. // resThree.InfRefmsgid = resThree10265.InfRefmsgid
  5449. // } else {
  5450. // if err := json.Unmarshal([]byte(result), &resThree); err != nil {
  5451. // utils.ErrorLog("解析失败:%v", err)
  5452. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5453. // return
  5454. // }
  5455. // }
  5456. //
  5457. // if miConfig.Code == "H15049901371" {
  5458. // infocode, _ = strconv.ParseInt(resThree10265.Infcode, 10, 64)
  5459. // } else {
  5460. // infocode = resThree.Infcode
  5461. //
  5462. // }
  5463. //
  5464. // }
  5465. //
  5466. // if infocode != 0 {
  5467. //
  5468. // adminUser := c.GetAdminUserInfo()
  5469. // errlog := &models.HisOrderError{
  5470. // UserOrgId: adminUser.CurrentOrgId,
  5471. // Ctime: time.Now().Unix(),
  5472. // Mtime: time.Now().Unix(),
  5473. // ErrMsg: resThree.ErrMsg,
  5474. // Status: 1,
  5475. // PatientId: id,
  5476. // RecordTime: recordDateTime,
  5477. // Stage: 2,
  5478. // }
  5479. // service.CreateErrMsgLog(errlog)
  5480. // c.ServeSuccessJSON(map[string]interface{}{
  5481. // "failed_code": -10,
  5482. // "msg": resThree.ErrMsg,
  5483. // })
  5484. // return
  5485. // }
  5486. //
  5487. // his.Number = resThree.Output.Data.MdtrtID
  5488. // his.PsnNo = resThree.Output.Data.PsnNo
  5489. // his.IptOtpNo = resThree.Output.Data.IptOtpNo
  5490. // his.IdCardNo = patient.IdCardNo
  5491. // his.PhoneNumber = patient.Phone
  5492. // his.UserOrgId = adminInfo.CurrentOrgId
  5493. // his.Insutype = insutype
  5494. // his.Ctime = time.Now().Unix()
  5495. // his.Mtime = time.Now().Unix()
  5496. // his.InsuplcAdmdvs = insuplc_admdvs_temp
  5497. // his.Status = 1
  5498. // service.UpdateHisPatientStatus(&his)
  5499. // service.UpdateHisPrescriptionHisID(his.ID, patient.ID, recordDateTime, adminInfo.CurrentOrgId)
  5500. //
  5501. // c.ServeSuccessJSON(map[string]interface{}{
  5502. // "his_info": his,
  5503. // })
  5504. //
  5505. // } else {
  5506. // adminUser := c.GetAdminUserInfo()
  5507. // errlog := &models.HisOrderError{
  5508. // UserOrgId: adminUser.CurrentOrgId,
  5509. // Ctime: time.Now().Unix(),
  5510. // Mtime: time.Now().Unix(),
  5511. // ErrMsg: res.ErrMsg,
  5512. // Status: 1,
  5513. // PatientId: id,
  5514. // RecordTime: recordDateTime,
  5515. // Stage: 1,
  5516. // }
  5517. // service.CreateErrMsgLog(errlog)
  5518. //
  5519. // c.ServeSuccessJSON(map[string]interface{}{
  5520. // "failed_code": -10,
  5521. // "msg": res.ErrMsg,
  5522. // })
  5523. // return
  5524. //
  5525. // //c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeGdybOneException)
  5526. // }
  5527. // }
  5528. //}
  5529. //
  5530. ////上传明细----预结算----确认订单
  5531. //func (c *HisApiController) GetUploadInfo() {
  5532. // id, _ := c.GetInt64("id")
  5533. // record_time := c.GetString("record_time")
  5534. // his_patient_id, _ := c.GetInt64("his_patient_id")
  5535. //
  5536. // order_id, _ := c.GetInt64("order_id")
  5537. //
  5538. // pay_way, _ := c.GetInt64("pay_way")
  5539. // pay_price, _ := c.GetFloat("pay_price")
  5540. // pay_card_no := c.GetString("pay_card_no")
  5541. // token := c.GetString("token")
  5542. //
  5543. // discount_price, _ := c.GetFloat("discount_price")
  5544. // preferential_price, _ := c.GetFloat("preferential_price")
  5545. // reality_price, _ := c.GetFloat("reality_price")
  5546. // found_price, _ := c.GetFloat("found_price")
  5547. // medical_insurance_price, _ := c.GetFloat("medical_insurance_price")
  5548. // private_price, _ := c.GetFloat("private_price")
  5549. // settle_accounts_type, _ := c.GetInt64("settle_accounts_type")
  5550. // admin_user_id, _ := c.GetInt64("admin_user_id")
  5551. //
  5552. // fapiao_code := c.GetString("fapiao_code")
  5553. // fapiao_number := c.GetString("fapiao_number")
  5554. //
  5555. // diagnosis_id := c.GetString("diagnosis")
  5556. // sick_type, _ := c.GetInt64("sick_type")
  5557. // reg_type, _ := c.GetInt64("p_type")
  5558. // begin_time := c.GetString("begin_time")
  5559. //
  5560. // id_str := c.GetString("ids")
  5561. // ids_arr := strings.Split(id_str, ",")
  5562. //
  5563. // timeLayout := "2006-01-02"
  5564. // loc, _ := time.LoadLocation("Local")
  5565. // theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_time+" 00:00:00", loc)
  5566. // if err != nil {
  5567. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  5568. // return
  5569. // }
  5570. // recordDateTime := theTime.Unix()
  5571. // adminUser := c.GetAdminUserInfo()
  5572. // var tempOrder models.HisOrder
  5573. // tempOrder, _ = service.GetHisOrderByID(order_id)
  5574. //
  5575. // var prescriptions []*models.HisPrescription
  5576. //
  5577. // var start_time int64
  5578. // var end_time int64
  5579. //
  5580. // //押金模块
  5581. // dec_way := c.GetString("dec_way") //是否使用押金支付bool类型
  5582. // tmp_decimal := c.GetString("tmp_decimal")
  5583. // var decimal float64 //本次使用的押金
  5584. // var errmsg error
  5585. //
  5586. // if dec_way == "true" && tmp_decimal == "0" || dec_way == "true" && tmp_decimal == "" {
  5587. // c.ServeFailJsonSend(enums.ErrorCodeParamWrong, "押金不能为0")
  5588. // return
  5589. // }
  5590. // if len(tmp_decimal) > 0 {
  5591. // if tmp_decimal[0] == 45 {
  5592. // c.ServeFailJsonSend(enums.ErrorCodeParamWrong, "押金不能为负数")
  5593. // return
  5594. // }
  5595. // }
  5596. // tt, errs := strconv.ParseFloat(tmp_decimal, 64)
  5597. // fmt.Println(errs)
  5598. // decimal = tt
  5599. //
  5600. // //if adminUser.CurrentOrgId == 10106{
  5601. // // if len(fapiao_code) == 0{
  5602. // // fapiao_code = "144072080589"
  5603. // // }
  5604. // // if len(fapiao_number) == 0{
  5605. // // order, _ := service.GetLastHisOrder(adminUser.CurrentOrgId)
  5606. // // if order.ID == 0{
  5607. // // fapiao_number = "00001520"
  5608. // // }else{
  5609. // // //fapiao_code = "00001520"
  5610. // // fpNumber, _ := strconv.Atoi(order.FaPiaoNumber)
  5611. // // var zero string
  5612. // // if fpNumber >= 1000{
  5613. // // zero = "0000" + strconv.Itoa(fpNumber)
  5614. // // }else if fpNumber >= 10000{
  5615. // // zero = "000" + strconv.Itoa(fpNumber)
  5616. // // } else if fpNumber >= 100000{
  5617. // // zero = "00" + strconv.Itoa(fpNumber)
  5618. // // } else if fpNumber >= 1000000{
  5619. // // zero = "0" + strconv.Itoa(fpNumber)
  5620. // // }else {
  5621. // // zero = strconv.Itoa(fpNumber)
  5622. // // }
  5623. // // fapiao_number = zero
  5624. // // }
  5625. // // }
  5626. // //}
  5627. //
  5628. // roles, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  5629. // his, _ := service.GetNewHisPatientInfo(adminUser.CurrentOrgId, his_patient_id, recordDateTime)
  5630. // var patientPrescription models.HisPrescriptionInfo
  5631. // patientPrescription, _ = service.FindHisPatientPrescriptionInfo(adminUser.CurrentOrgId, his_patient_id, recordDateTime)
  5632. // if patientPrescription.ID == 0 {
  5633. // patientPrescription, _ = service.FindLastPatientPrescriptionInfo(adminUser.CurrentOrgId, id, recordDateTime)
  5634. // }
  5635. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  5636. // department, _ := service.GetDepartMentDetail(patientPrescription.Departments)
  5637. //
  5638. // doctor_info, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, patientPrescription.DoctorId)
  5639. //
  5640. // diagnosis_ids := strings.Split(diagnosis_id, ",")
  5641. //
  5642. // var config []*models.HisXtDiagnoseConfig
  5643. // for _, item := range diagnosis_ids {
  5644. // id, _ := strconv.ParseInt(item, 10, 64)
  5645. // diagnosisConfig, _ := service.FindDiagnoseById(id)
  5646. // config = append(config, &diagnosisConfig)
  5647. // }
  5648. //
  5649. // sickConfig, _ := service.FindSickById(sick_type)
  5650. //
  5651. // //if tempOrder.ID == 0 {
  5652. // // tempOrder, _ = service.GetTodayHisOrder(adminUser.CurrentOrgId, id, recordDateTime, his.Number)
  5653. // //}
  5654. //
  5655. // if tempOrder.ID == 0 {
  5656. // var result string
  5657. // var requestLog string
  5658. // var res2 ResultSix
  5659. // var ressix10265 ResultSix10265
  5660. //
  5661. // if miConfig.MdtrtareaAdmvs == "421300" {
  5662. //
  5663. // data := make(map[string]interface{})
  5664. // client := &http.Client{}
  5665. // data["psn_no"] = his.PsnNo
  5666. // data["mdtrt_id"] = his.Number
  5667. // data["doctor"] = roles.UserName
  5668. // data["department"] = department.Name
  5669. // data["org_name"] = miConfig.OrgName
  5670. // data["med_type"] = strconv.FormatInt(reg_type, 10)
  5671. // data["doctor_id"] = strconv.FormatInt(doctor_info.AdminUserId, 10)
  5672. // data["fixmedins_code"] = miConfig.Code
  5673. // data["insuplc_admdvs"] = his.InsuplcAdmdvs
  5674. // data["mdtrtarea_admvs"] = miConfig.MdtrtareaAdmvs
  5675. // data["secret_key"] = miConfig.SecretKey
  5676. // data["sick_code"] = sickConfig.CountryCode
  5677. // data["sick_name"] = sickConfig.ClassName
  5678. // data["dept"] = strconv.FormatInt(department.ID, 10)
  5679. // data["config"] = config
  5680. // data["begin_time"] = begin_time
  5681. //
  5682. // bytesData, _ := json.Marshal(data)
  5683. // req, _ := http.NewRequest("POST", "http://192.168.124.4:9532/"+"hbyb/2203", bytes.NewReader(bytesData))
  5684. // resp, _ := client.Do(req)
  5685. // defer resp.Body.Close()
  5686. // body, ioErr := ioutil.ReadAll(resp.Body)
  5687. // if ioErr != nil {
  5688. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  5689. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5690. // return
  5691. // }
  5692. // var respJSON map[string]interface{}
  5693. // if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
  5694. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  5695. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5696. // return
  5697. // }
  5698. //
  5699. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  5700. // userJSONBytes, _ := json.Marshal(respJSON)
  5701. // fmt.Println("log")
  5702. // fmt.Println(string(userJSONBytes))
  5703. //
  5704. // if err := json.Unmarshal(userJSONBytes, &res2); err != nil {
  5705. // utils.ErrorLog("解析失败:%v", err)
  5706. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5707. // return
  5708. // }
  5709. //
  5710. // } else if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  5711. //
  5712. // //江苏地区国家医保医疗类别
  5713. // //职工透析:医疗类别选特殊情况门诊9933
  5714. // //居民血透门慢: 医疗类别选门诊慢病1402
  5715. // //var med_type string
  5716. // //if his.Insutype == "310" {
  5717. // // if reg_type == 14 {
  5718. // // med_type = "9933"
  5719. // // } else if reg_type == 11 {
  5720. // // med_type = "11"
  5721. // //
  5722. // // }
  5723. // //} else if his.Insutype == "390" {
  5724. // // if reg_type == 14 {
  5725. // // med_type = "1402"
  5726. // // } else if reg_type == 11 {
  5727. // // med_type = "11"
  5728. // // }
  5729. // //}
  5730. //
  5731. // data := make(map[string]interface{})
  5732. // client := &http.Client{}
  5733. // data["psn_no"] = his.PsnNo
  5734. // data["mdtrt_id"] = his.Number
  5735. // data["doctor"] = roles.UserName
  5736. // data["department"] = department.Name
  5737. // data["org_name"] = miConfig.OrgName
  5738. // data["med_type"] = strconv.FormatInt(reg_type, 10)
  5739. // data["doctor_id"] = strconv.FormatInt(doctor_info.AdminUserId, 10)
  5740. // data["fixmedins_code"] = miConfig.Code
  5741. // data["insuplc_admdvs"] = his.InsuplcAdmdvs
  5742. // data["mdtrtarea_admvs"] = miConfig.MdtrtareaAdmvs
  5743. // data["secret_key"] = miConfig.SecretKey
  5744. // data["sick_code"] = sickConfig.CountryCode
  5745. // data["sick_name"] = sickConfig.ClassName
  5746. // data["url"] = miConfig.Url
  5747. // data["ak"] = miConfig.AccessKey
  5748. // data["begin_time"] = begin_time
  5749. // data["cainfo"] = miConfig.Cainfo
  5750. //
  5751. // data["dept"] = strconv.FormatInt(department.ID, 10)
  5752. // data["config"] = config
  5753. // bytesData, _ := json.Marshal(data)
  5754. //
  5755. // var req *http.Request
  5756. // if miConfig.MdtrtareaAdmvs == "320921" {
  5757. // req, _ = http.NewRequest("POST", "http://192.168.3.111:9532/"+"jsyb/2203", bytes.NewReader(bytesData))
  5758. //
  5759. // //api = "http://192.168.3.111:9532/" + "jsyb/readcard?" + "fixmedins_code=" + miConfig.Code + "&secret_key=" + miConfig.SecretKey + "&ak=" + miConfig.AccessKey + "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName +
  5760. // // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&cainfo=" + miConfig.Cainfo
  5761. //
  5762. // } else {
  5763. // req, _ = http.NewRequest("POST", "http://192.168.5.251:9532/"+"jsyb/2203", bytes.NewReader(bytesData))
  5764. //
  5765. // }
  5766. //
  5767. // resp, _ := client.Do(req)
  5768. // defer resp.Body.Close()
  5769. // body, ioErr := ioutil.ReadAll(resp.Body)
  5770. // if ioErr != nil {
  5771. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  5772. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5773. // return
  5774. // }
  5775. // var respJSON map[string]interface{}
  5776. // if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
  5777. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  5778. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5779. // return
  5780. // }
  5781. //
  5782. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  5783. // userJSONBytes, _ := json.Marshal(respJSON)
  5784. // fmt.Println("log")
  5785. // fmt.Println(string(userJSONBytes))
  5786. //
  5787. // if err := json.Unmarshal(userJSONBytes, &ressix10265); err != nil {
  5788. // utils.ErrorLog("解析失败:%v", err)
  5789. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5790. // return
  5791. // }
  5792. // res2.InfRefmsgid = ressix10265.InfRefmsgid
  5793. // // res2.Output = ressix10265.Output
  5794. // res2.ErrMsg = ressix10265.ErrMsg
  5795. // res2.Cainfo = ressix10265.Cainfo
  5796. // res2.WarnMsg = ressix10265.WarnMsg
  5797. // infocode, _ := strconv.ParseInt(ressix10265.Infcode, 10, 64)
  5798. // res2.Infcode = infocode
  5799. //
  5800. // } else {
  5801. // if miConfig.MdtrtareaAdmvs == "440781" { //
  5802. // result, requestLog = service.Gdyb2203ForGz(his.PsnNo, his.Number, doctor_info.UserName, department.Name, miConfig.OrgName, strconv.FormatInt(reg_type, 10), doctor_info.DoctorNumber, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, sickConfig.ContentCode, sickConfig.ClassName, roles.UserName, config, begin_time)
  5803. // } else {
  5804. // if miConfig.Code == "H15049901371" {
  5805. // //赤峰地区国家医保医疗类别
  5806. // //职工透析:医疗类别选特殊情况门诊990502
  5807. // //居民定额血透门慢: 医疗类别选门诊慢病140104
  5808. // var med_type string
  5809. // if his.Insutype == "390" {
  5810. // if reg_type == 14 {
  5811. // med_type = "9933"
  5812. // } else if reg_type == 11 {
  5813. // med_type = "11"
  5814. //
  5815. // }
  5816. // } else if his.Insutype == "310" {
  5817. // if reg_type == 14 {
  5818. // med_type = "990502"
  5819. // } else if reg_type == 11 {
  5820. // med_type = "11"
  5821. // }
  5822. // }
  5823. // result, requestLog = service.Gdyb2203ForGz(his.PsnNo, his.Number, doctor_info.UserName, department.Name, miConfig.OrgName, med_type, doctor_info.DoctorNumber, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, sickConfig.ContentCode, sickConfig.ClassName, roles.UserName, config, begin_time)
  5824. //
  5825. // } else {
  5826. // var med_type string
  5827. //
  5828. // if reg_type == 14 {
  5829. // med_type = "141009"
  5830. // result, requestLog = service.Gdyb2203ForGz(his.PsnNo, his.Number, doctor_info.UserName, department.Name, miConfig.OrgName, med_type, doctor_info.DoctorNumber, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, sickConfig.ContentCode, sickConfig.ClassName, roles.UserName, config, begin_time)
  5831. //
  5832. // } else if reg_type == 11 {
  5833. // med_type = "11"
  5834. // // sickConfig.ClassName = sic
  5835. // // sickConfig.ContentCode = ""
  5836. // result, requestLog = service.Gdyb2203ForGz(his.PsnNo, his.Number, doctor_info.UserName, department.Name, miConfig.OrgName, med_type, doctor_info.DoctorNumber, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, sickConfig.ContentCode, "", roles.UserName, config, begin_time)
  5837. //
  5838. // }
  5839. //
  5840. // }
  5841. // }
  5842. //
  5843. // saveLog(result, requestLog, "2203", "上传就诊信息")
  5844. // var respJSON2 map[string]interface{}
  5845. // if err := json.Unmarshal([]byte(string(result)), &respJSON2); err != nil {
  5846. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  5847. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5848. // return
  5849. // }
  5850. // userJSONBytes2, _ := json.Marshal(respJSON2)
  5851. // if miConfig.Code == "H15049901371" {
  5852. // if err := json.Unmarshal(userJSONBytes2, &ressix10265); err != nil {
  5853. // utils.ErrorLog("解析失败:%v", err)
  5854. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5855. // return
  5856. // }
  5857. // res2.InfRefmsgid = ressix10265.InfRefmsgid
  5858. // // res2.Output = ressix10265.Output
  5859. // res2.ErrMsg = ressix10265.ErrMsg
  5860. // res2.Cainfo = ressix10265.Cainfo
  5861. // res2.WarnMsg = ressix10265.WarnMsg
  5862. // infocode, _ := strconv.ParseInt(ressix10265.Infcode, 10, 64)
  5863. // res2.Infcode = infocode
  5864. // } else {
  5865. // if err := json.Unmarshal(userJSONBytes2, &res2); err != nil {
  5866. // utils.ErrorLog("解析失败:%v", err)
  5867. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5868. // return
  5869. // }
  5870. // }
  5871. // }
  5872. //
  5873. // if res2.Infcode != 0 {
  5874. // adminUser := c.GetAdminUserInfo()
  5875. // errlog := &models.HisOrderError{
  5876. // UserOrgId: adminUser.CurrentOrgId,
  5877. // Ctime: time.Now().Unix(),
  5878. // Mtime: time.Now().Unix(),
  5879. // ErrMsg: res2.ErrMsg,
  5880. // Status: 1,
  5881. // PatientId: id,
  5882. // RecordTime: recordDateTime,
  5883. // Stage: 3,
  5884. // }
  5885. // service.CreateErrMsgLog(errlog)
  5886. // c.ServeSuccessJSON(map[string]interface{}{
  5887. // "failed_code": -10,
  5888. // "msg": res2.ErrMsg,
  5889. // })
  5890. // return
  5891. //
  5892. // } else {
  5893. // his.Diagnosis = diagnosis_id
  5894. // his.SickType = sickConfig.ID
  5895. // //var p_type int64
  5896. // //if reg_type == 1111 || reg_type == 1112 {
  5897. // // p_type = 11
  5898. // //
  5899. // //}
  5900. // his.PType = fmt.Sprintf("%d", reg_type)
  5901. // service.UpdateHisPatientThree(&his)
  5902. //
  5903. // data := make(map[string]interface{})
  5904. // if settle_accounts_type == 1 { //日结
  5905. //
  5906. // if reg_type == 11 || reg_type == 1111 || reg_type == 1112 {
  5907. // prescriptions, _ = service.GetPrescriptionByIds(ids_arr, adminUser.CurrentOrgId)
  5908. // } else {
  5909. // prescriptions, _ = service.GetNewHisPrescription(adminUser.CurrentOrgId, his_patient_id, recordDateTime, strconv.Itoa(int(reg_type)))
  5910. // }
  5911. // //prescriptions, _ = service.GetNewHisPrescriptionTwo(adminUser.CurrentOrgId, his_patient_id, recordDateTime, reg_type)
  5912. // data["pre"] = prescriptions
  5913. //
  5914. // } else { //月结
  5915. // start_time_str := c.GetString("start_time")
  5916. // end_time_str := c.GetString("end_time")
  5917. // timeLayout := "2006-01-02"
  5918. // loc, _ := time.LoadLocation("Local")
  5919. // theStartTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time_str+" 00:00:00", loc)
  5920. // if err != nil {
  5921. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  5922. // return
  5923. // }
  5924. // recordStartTime := theStartTime.Unix()
  5925. // start_time = recordStartTime
  5926. // theEndTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time_str+" 00:00:00", loc)
  5927. // if err != nil {
  5928. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  5929. // return
  5930. // }
  5931. // recordEndTime := theEndTime.Unix()
  5932. // end_time = recordEndTime
  5933. // prescriptions, _ = service.GetMonthHisPrescriptionTwo(adminUser.CurrentOrgId, id, recordStartTime, recordEndTime, reg_type)
  5934. // data["pre"] = prescriptions
  5935. //
  5936. // }
  5937. //
  5938. // timestamp := time.Now().Unix()
  5939. // tempTime := time.Unix(timestamp, 0)
  5940. // timeFormat := tempTime.Format("20060102150405")
  5941. // chrgBchno := rand.Intn(100000) + 10000
  5942. // chrg_bchno := timeFormat + strconv.FormatInt(int64(chrgBchno), 10) + strconv.FormatInt(his.PatientId, 10)
  5943. // strconv.FormatInt(his.PatientId, 10)
  5944. // client := &http.Client{}
  5945. //
  5946. // data["psn_no"] = his.PsnNo
  5947. // data["mdtrt_id"] = his.Number
  5948. // data["chrg_bchno"] = chrg_bchno
  5949. // data["org_name"] = miConfig.OrgName
  5950. // data["doctor"] = roles.UserName
  5951. // data["doctor_id"] = strconv.FormatInt(roles.AdminUserId, 10)
  5952. // data["dept"] = strconv.FormatInt(patientPrescription.Departments, 10)
  5953. // data["fixmedins_code"] = miConfig.Code
  5954. // //if (department.ID == 0 && adminUser.CurrentOrgId == 9919) || (department.ID == 0 && adminUser.CurrentOrgId == 10106) {
  5955. // // data["dept_code"] = "15"
  5956. // //} else {
  5957. // data["dept_code"] = department.Number
  5958. // //}
  5959. // data["insuplc_admdvs"] = his.InsuplcAdmdvs
  5960. // data["mdtrtarea_admvs"] = miConfig.MdtrtareaAdmvs
  5961. // data["secret_key"] = miConfig.SecretKey
  5962. // data["balance_accounts_type"] = strconv.FormatInt(his.BalanceAccountsType, 10)
  5963. // data["url"] = miConfig.Url
  5964. // data["ak"] = miConfig.AccessKey
  5965. // data["new_doctor_name"] = patientPrescription.Doctor
  5966. // data["diag_code"] = sickConfig.CountryCode
  5967. // data["cainfo"] = miConfig.Cainfo
  5968. //
  5969. // var ids []int64
  5970. //
  5971. // for _, item := range prescriptions {
  5972. // ids = append(ids, item.ID)
  5973. // }
  5974. // config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  5975. // if config.IsOpen == 1 { //对接了医保,走医保流程
  5976. // var res ResultFour
  5977. // var resFour10265 ResultFour10265
  5978. //
  5979. // if miConfig.MdtrtareaAdmvs == "421300" {
  5980. //
  5981. // bytesData, _ := json.Marshal(data)
  5982. // req, _ := http.NewRequest("POST", "http://192.168.124.4:9532/"+"hbyb/2204", bytes.NewReader(bytesData))
  5983. // resp, _ := client.Do(req)
  5984. // defer resp.Body.Close()
  5985. // body, ioErr := ioutil.ReadAll(resp.Body)
  5986. // if ioErr != nil {
  5987. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  5988. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5989. // return
  5990. // }
  5991. // var respJSON map[string]interface{}
  5992. // if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
  5993. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  5994. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  5995. // return
  5996. // }
  5997. //
  5998. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  5999. // userJSONBytes, _ := json.Marshal(respJSON)
  6000. // fmt.Println("log")
  6001. // fmt.Println(string(userJSONBytes))
  6002. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  6003. // utils.ErrorLog("解析失败:%v", err)
  6004. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6005. // return
  6006. // }
  6007. //
  6008. // } else if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  6009. // bytesData, _ := json.Marshal(data)
  6010. //
  6011. // var req *http.Request
  6012. // if miConfig.MdtrtareaAdmvs == "320921" {
  6013. // req, _ = http.NewRequest("POST", "http://192.168.3.111:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  6014. //
  6015. // } else {
  6016. // req, _ = http.NewRequest("POST", "http://192.168.5.251:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  6017. // }
  6018. //
  6019. // resp, _ := client.Do(req)
  6020. // defer resp.Body.Close()
  6021. // body, ioErr := ioutil.ReadAll(resp.Body)
  6022. // if ioErr != nil {
  6023. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  6024. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6025. // return
  6026. // }
  6027. // var respJSON map[string]interface{}
  6028. // if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
  6029. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  6030. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6031. // return
  6032. // }
  6033. //
  6034. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  6035. // userJSONBytes, _ := json.Marshal(respJSON)
  6036. // fmt.Println("log")
  6037. // fmt.Println(string(userJSONBytes))
  6038. // if err := json.Unmarshal(userJSONBytes, &resFour10265); err != nil {
  6039. // utils.ErrorLog("解析失败:%v", err)
  6040. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6041. // return
  6042. // }
  6043. // res.InfRefmsgid = resFour10265.InfRefmsgid
  6044. // res.Output = resFour10265.Output
  6045. // res.ErrMsg = resFour10265.ErrMsg
  6046. // res.Cainfo = resFour10265.Cainfo
  6047. // res.WarnMsg = resFour10265.WarnMsg
  6048. // infocode, _ := strconv.ParseInt(resFour10265.Infcode, 10, 64)
  6049. // res.Infcode = infocode
  6050. //
  6051. // } else {
  6052. //
  6053. // if miConfig.Code == "H15049901371" {
  6054. // result, request_log := service.Gdyb2204(his.PsnNo, his.Number, prescriptions, chrg_bchno, miConfig.OrgName, roles.UserName, strconv.FormatInt(patientPrescription.Departments, 10), miConfig.Code, department.Number, strconv.FormatInt(roles.AdminUserId, 10), his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, strconv.FormatInt(his.BalanceAccountsType, 10), patientPrescription.DoctorId, sickConfig.CountryCode)
  6055. // var dat map[string]interface{}
  6056. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  6057. // fmt.Println(dat)
  6058. // } else {
  6059. // fmt.Println(err)
  6060. // }
  6061. // saveLog(result, request_log, "2204", "上传费用明细")
  6062. // userJSONBytes, _ := json.Marshal(dat)
  6063. //
  6064. // if err := json.Unmarshal(userJSONBytes, &resFour10265); err != nil {
  6065. // utils.ErrorLog("解析失败:%v", err)
  6066. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6067. // return
  6068. // }
  6069. //
  6070. // res.InfRefmsgid = resFour10265.InfRefmsgid
  6071. // res.Output = resFour10265.Output
  6072. // res.ErrMsg = resFour10265.ErrMsg
  6073. // res.Cainfo = resFour10265.Cainfo
  6074. // res.WarnMsg = resFour10265.WarnMsg
  6075. // infocode, _ := strconv.ParseInt(resFour10265.Infcode, 10, 64)
  6076. // res.Infcode = infocode
  6077. //
  6078. // } else {
  6079. // result, request_log := service.Gdyb2204(his.PsnNo, his.Number, prescriptions, chrg_bchno, miConfig.OrgName, roles.UserName, strconv.FormatInt(patientPrescription.Departments, 10), miConfig.Code, department.Number, strconv.FormatInt(roles.AdminUserId, 10), his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, strconv.FormatInt(his.BalanceAccountsType, 10), patientPrescription.DoctorId, sickConfig.CountryCode)
  6080. // var dat map[string]interface{}
  6081. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  6082. // fmt.Println(dat)
  6083. // } else {
  6084. // fmt.Println(err)
  6085. // }
  6086. // saveLog(result, request_log, "2204", "上传费用明细")
  6087. // userJSONBytes, _ := json.Marshal(dat)
  6088. //
  6089. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  6090. // utils.ErrorLog("解析失败:%v", err)
  6091. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6092. // return
  6093. // }
  6094. //
  6095. // }
  6096. //
  6097. // }
  6098. //
  6099. // if res.Infcode == 0 {
  6100. // order := &models.HisOrder{
  6101. // UserOrgId: adminUser.CurrentOrgId,
  6102. // HisPatientId: his.ID,
  6103. // PatientId: his.PatientId,
  6104. // SettleAccountsDate: recordDateTime,
  6105. // MdtrtId: his.Number,
  6106. // PsnNo: his.PsnNo,
  6107. // MedType: strconv.FormatInt(reg_type, 10),
  6108. // Ctime: time.Now().Unix(),
  6109. // Mtime: time.Now().Unix(),
  6110. // Status: 1,
  6111. // Number: chrg_bchno,
  6112. // Infcode: res.Infcode,
  6113. // WarnMsg: res.WarnMsg,
  6114. // Cainfo: res.Cainfo,
  6115. // ErrMsg: res.ErrMsg,
  6116. // RespondTime: res.RefmsgTime,
  6117. // InfRefmsgid: res.InfRefmsgid,
  6118. // OrderStatus: 1,
  6119. // PayWay: pay_way,
  6120. // PayPrice: pay_price,
  6121. // PayCardNo: pay_card_no,
  6122. // DiscountPrice: discount_price,
  6123. // PreferentialPrice: preferential_price,
  6124. // RealityPrice: reality_price,
  6125. // FoundPrice: found_price,
  6126. // MedicalInsurancePrice: medical_insurance_price,
  6127. // PrivatePrice: private_price,
  6128. // IsMedicineInsurance: 1,
  6129. // SettleType: settle_accounts_type,
  6130. // SettleStartTime: start_time,
  6131. // SettleEndTime: end_time,
  6132. // Creator: roles.AdminUserId,
  6133. // Modify: roles.AdminUserId,
  6134. // FaPiaoNumber: fapiao_number,
  6135. // FaPiaoCode: fapiao_code,
  6136. // PType: 2,
  6137. // Diagnosis: diagnosis_id,
  6138. // }
  6139. // err = service.CreateOrder(order)
  6140. // if err != nil {
  6141. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeCreatePreOrderException)
  6142. // return
  6143. // }
  6144. //
  6145. // for _, item := range res.Output.Result {
  6146. // temp := strings.Split(item.FeedetlSn, "-")
  6147. // var advice_id int64 = 0
  6148. // var project_id int64 = 0
  6149. // var types int64 = 0
  6150. //
  6151. // id, _ := strconv.ParseInt(temp[2], 10, 64)
  6152. // types, _ = strconv.ParseInt(temp[1], 10, 64)
  6153. //
  6154. // if temp[1] == "1" {
  6155. // advice_id = id
  6156. // project_id = 0
  6157. // } else if temp[1] == "2" {
  6158. // advice_id = 0
  6159. // project_id = id
  6160. // }
  6161. //
  6162. // info := &models.HisOrderInfo{
  6163. // OrderNumber: order.Number,
  6164. // FeedetlSn: item.FeedetlSn,
  6165. // UploadDate: time.Now().Unix(),
  6166. // AdviceId: advice_id,
  6167. // DetItemFeeSumamt: item.DetItemFeeSumamt,
  6168. // Cnt: item.Cnt,
  6169. // Pric: float64(item.Pric),
  6170. // PatientId: his.PatientId,
  6171. // PricUplmtAmt: item.PricUplmtAmt,
  6172. // SelfpayProp: item.SelfpayProp,
  6173. // FulamtOwnpayAmt: item.FulamtOwnpayAmt,
  6174. // OverlmtAmt: item.OverlmtAmt,
  6175. // PreselfpayAmt: item.PreselfpayAmt,
  6176. // BasMednFlag: item.BasMednFlag,
  6177. // MedChrgitmType: item.MedChrgitmType,
  6178. // HiNegoDrugFlag: item.HiNegoDrugFlag,
  6179. // Status: 1,
  6180. // Memo: item.Memo,
  6181. // Mtime: time.Now().Unix(),
  6182. // InscpScpAmt: item.InscpScpAmt,
  6183. // DrtReimFlag: item.DrtReimFlag,
  6184. // Ctime: time.Now().Unix(),
  6185. // ListSpItemFlag: item.ListSpItemFlag,
  6186. // ChldMedcFlag: item.ChldMedcFlag,
  6187. // LmtUsedFlag: item.LmtUsedFlag,
  6188. // ChrgitmLv: item.ChrgitmLv,
  6189. // UserOrgId: adminUser.CurrentOrgId,
  6190. // HisPatientId: his.ID,
  6191. // OrderId: order.ID,
  6192. // ProjectId: project_id,
  6193. // Type: types,
  6194. // }
  6195. // service.CreateOrderInfo(info)
  6196. //
  6197. // }
  6198. // service.UpDatePrescriptionNumber(adminUser.CurrentOrgId, ids, chrg_bchno)
  6199. // service.UpDateHisPrescriptionInfoNumber(adminUser.CurrentOrgId, his_patient_id, chrg_bchno, recordDateTime)
  6200. //
  6201. // var total float64
  6202. // for _, item := range prescriptions {
  6203. // if item.Type == 1 { //药品
  6204. // for _, subItem := range item.HisDoctorAdviceInfo {
  6205. // total = total + (subItem.Price * subItem.PrescribingNumber)
  6206. // }
  6207. // }
  6208. // if item.Type == 2 { //项目
  6209. // for _, subItem := range item.HisPrescriptionProject {
  6210. // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
  6211. //
  6212. // total = total + (subItem.Price * cnt)
  6213. // }
  6214. // }
  6215. // }
  6216. //
  6217. // for _, item := range prescriptions {
  6218. // for _, subItem := range item.HisAdditionalCharge {
  6219. // total = total + (subItem.Price * float64(subItem.Count))
  6220. // }
  6221. // }
  6222. // var allTotal string
  6223. // if adminUser.CurrentOrgId == 9919 {
  6224. //
  6225. // allTotal = fmt.Sprintf("%.4f", total)
  6226. //
  6227. // } else {
  6228. //
  6229. // allTotal = fmt.Sprintf("%.4f", total)
  6230. //
  6231. // }
  6232. //
  6233. // if res.Infcode == 0 {
  6234. // var rf []*ResultFive
  6235. // json.Unmarshal([]byte(his.Iinfo), &rf)
  6236. // chrg_bchno := chrg_bchno
  6237. // cert_no := his.Certno
  6238. //
  6239. // var insutypes []string
  6240. //
  6241. // var insutype string
  6242. // var is390 int = 0
  6243. // var is310 int = 0
  6244. //
  6245. // for _, item := range rf {
  6246. // if (item.Insutype == "390" && item.PsnInsuStas == "1") || (item.Insutype == "310" && item.PsnInsuStas == "1") {
  6247. // insutypes = append(insutypes, item.Insutype)
  6248. // }
  6249. // }
  6250. //
  6251. // if len(insutypes) == 1 {
  6252. // insutype = insutypes[0]
  6253. // } else {
  6254. // for _, i := range insutypes {
  6255. // if i == "390" {
  6256. // is390 = 1
  6257. // }
  6258. //
  6259. // if i == "310" {
  6260. // is310 = 1
  6261. // }
  6262. // }
  6263. // }
  6264. // if is390 == 1 {
  6265. // insutype = "390"
  6266. // }
  6267. //
  6268. // if is310 == 1 {
  6269. // insutype = "310"
  6270. // }
  6271. //
  6272. // if len(insutypes) == 0 {
  6273. // insutype = "310"
  6274. // }
  6275. //
  6276. // if len(insutypes) == 2 {
  6277. // insutype = strconv.FormatInt(his.SocialType, 10)
  6278. // }
  6279. //
  6280. // insutype = strconv.FormatInt(his.SocialType, 10)
  6281. // //insutype = "390"
  6282. // if his.IdCardType == 1 {
  6283. // // cert_no = his.MedicalInsuranceNumber
  6284. // cert_no = his.Certno
  6285. //
  6286. // } else {
  6287. //
  6288. // cert_no = his.Certno
  6289. //
  6290. // }
  6291. // var res models.GZResult2207
  6292. // var resSeven10265 ResultSeven10265
  6293. //
  6294. // var src_resquest string
  6295. // var result2 string
  6296. // var acct_used_flag string
  6297. // fmt.Println("pay_way")
  6298. // fmt.Println(pay_way)
  6299. // fmt.Println("pay_way")
  6300. //
  6301. // if pay_way == 5 {
  6302. // acct_used_flag = "1"
  6303. // } else {
  6304. // acct_used_flag = "0"
  6305. // }
  6306. // if miConfig.MdtrtareaAdmvs == "421300" {
  6307. //
  6308. // api := "http://192.168.124.4:9532/" + "hbyb/2207?psn_no=" + his.PsnNo + "&mdtrt_id=" +
  6309. // his.Number + "&chrg_bchno=" + chrg_bchno + "&org_name=" + miConfig.OrgName +
  6310. // "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code +
  6311. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs +
  6312. // "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(his.IdCardType, 10) +
  6313. // "&certificates=" + strconv.FormatInt(his.IdType, 10) + "&cert_no=" + cert_no +
  6314. // "&insutype=" + insutype + "&total=" + allTotal + "&med_type=" + strconv.FormatInt(reg_type, 10) + "&acct_used_flag=" + acct_used_flag
  6315. //
  6316. // resp, requestErr := http.Get(api)
  6317. // if requestErr != nil {
  6318. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6319. // return
  6320. // }
  6321. //
  6322. // body, ioErr := ioutil.ReadAll(resp.Body)
  6323. // if ioErr != nil {
  6324. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  6325. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6326. // return
  6327. // }
  6328. // var respJSON map[string]interface{}
  6329. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  6330. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  6331. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6332. // return
  6333. // }
  6334. //
  6335. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  6336. // result, _ := json.Marshal(respJSON)
  6337. //
  6338. // if miConfig.Code == "H15049901371" {
  6339. // if err := json.Unmarshal([]byte(result), &resSeven10265); err != nil {
  6340. // utils.ErrorLog("解析失败:%v", err)
  6341. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6342. // return
  6343. // }
  6344. //
  6345. // res.InfRefmsgid = resSeven10265.InfRefmsgid
  6346. // // res.Output = resSeven10265.Output
  6347. // res.ErrMsg = resSeven10265.ErrMsg
  6348. // res.Cainfo = resSeven10265.Cainfo
  6349. // // res.WarnMsg = resSeven10265.WarnMsg
  6350. // // infocode, _ := strconv.ParseInt(resSeven10265.Infcode, 10, 64)
  6351. // // res.Infcode = infocode
  6352. //
  6353. // } else {
  6354. //
  6355. // if err := json.Unmarshal([]byte(result), &res); err != nil {
  6356. // utils.ErrorLog("解析失败:%v", err)
  6357. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6358. // return
  6359. // }
  6360. //
  6361. // }
  6362. //
  6363. // } else if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  6364. // psn_info, _ := service.GetPsnByPatientId(his.PatientId)
  6365. // psn_info.VerifyNumber = strings.Replace(psn_info.VerifyNumber, "+", "%2B", -1)
  6366. // bas := strings.Split(psn_info.CardInfo, "|")
  6367. // if his.IdCardType == 1 {
  6368. // cert_no = bas[2]
  6369. // } else if his.IdCardType == 3 {
  6370. // cert_no = his.Certno
  6371. // psn_info.VerifyNumber = his.Certno + "|" + psn_info.VerifyNumber
  6372. // } else if his.IdCardType == 4 {
  6373. // cert_no = his.Certno
  6374. // psn_info.VerifyNumber = token
  6375. // }
  6376. // var api string
  6377. // if miConfig.MdtrtareaAdmvs == "320921" {
  6378. // api = "http://192.168.3.111:9532/" + "jsyb/2207?psn_no=" + his.PsnNo + "&mdtrt_id=" +
  6379. // his.Number + "&chrg_bchno=" + chrg_bchno + "&org_name=" + miConfig.OrgName +
  6380. // "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code +
  6381. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs +
  6382. // "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(his.IdCardType, 10) +
  6383. // "&certificates=" + strconv.FormatInt(his.IdType, 10) + "&cert_no=" + cert_no +
  6384. // "&insutype=" + insutype + "&total=" + allTotal + "&med_type=" + strconv.FormatInt(reg_type, 10) + "&acct_used_flag=" + acct_used_flag + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&verify_number=" + psn_info.VerifyNumber + "&cainfo=" + miConfig.Cainfo
  6385. // } else {
  6386. // api = "http://192.168.5.251:9532/" + "jsyb/2207?psn_no=" + his.PsnNo + "&mdtrt_id=" +
  6387. // his.Number + "&chrg_bchno=" + chrg_bchno + "&org_name=" + miConfig.OrgName +
  6388. // "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code +
  6389. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs +
  6390. // "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(his.IdCardType, 10) +
  6391. // "&certificates=" + strconv.FormatInt(his.IdType, 10) + "&cert_no=" + cert_no +
  6392. // "&insutype=" + insutype + "&total=" + allTotal + "&med_type=" + strconv.FormatInt(reg_type, 10) + "&acct_used_flag=" + acct_used_flag + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&verify_number=" + psn_info.VerifyNumber + "&cainfo=" + miConfig.Cainfo
  6393. //
  6394. // }
  6395. //
  6396. // resp, requestErr := http.Get(api)
  6397. // if requestErr != nil {
  6398. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6399. // return
  6400. // }
  6401. // body, ioErr := ioutil.ReadAll(resp.Body)
  6402. // if ioErr != nil {
  6403. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  6404. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6405. // return
  6406. // }
  6407. // var respJSON map[string]interface{}
  6408. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  6409. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  6410. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6411. // return
  6412. // }
  6413. //
  6414. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  6415. // result, _ := json.Marshal(respJSON)
  6416. //
  6417. // if err := json.Unmarshal([]byte(result), &resSeven10265); err != nil {
  6418. // utils.ErrorLog("解析失败:%v", err)
  6419. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6420. // return
  6421. // }
  6422. //
  6423. // res.InfRefmsgid = resSeven10265.InfRefmsgid
  6424. // // res.Output = resSeven10265.Output
  6425. // res.ErrMsg = resSeven10265.ErrMsg
  6426. // res.Cainfo = resSeven10265.Cainfo
  6427. // // res.WarnMsg = resSeven10265.WarnMsg
  6428. // // infocode, _ := strconv.ParseInt(resSeven10265.Infcode, 10, 64)
  6429. // // res.Infcode = infocode
  6430. //
  6431. // } else {
  6432. // if miConfig.Code == "H15049901371" {
  6433. // //赤峰地区国家医保医疗类别
  6434. // //职工透析:医疗类别选特殊情况门诊990502
  6435. // //居民定额血透门慢: 医疗类别选门诊慢病140104
  6436. // var med_type string
  6437. // if his.Insutype == "390" {
  6438. // if reg_type == 14 {
  6439. // med_type = "9933"
  6440. // } else if reg_type == 11 {
  6441. // med_type = "11"
  6442. // }
  6443. // } else if his.Insutype == "310" {
  6444. // if reg_type == 14 {
  6445. // med_type = "990502"
  6446. // } else if reg_type == 11 {
  6447. // med_type = "11"
  6448. // }
  6449. // }
  6450. // result2, src_resquest = service.Gdyb2207(his.PsnNo, his.Number, chrg_bchno, cert_no, insutype, allTotal, miConfig.OrgName, roles.UserName, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, med_type, his.IdCardType, tempOrder.FulamtOwnpayAmt, tempOrder.OverlmtSelfPay, tempOrder.PreselfpayAmt, tempOrder.InscpScpAmt, his.IdType, acct_used_flag)
  6451. // } else {
  6452. // var med_type string
  6453. // if reg_type == 14 {
  6454. // med_type = "141009"
  6455. // } else if reg_type == 11 {
  6456. // med_type = "11"
  6457. // }
  6458. // result2, src_resquest = service.Gdyb2207(his.PsnNo, his.Number, chrg_bchno, cert_no, insutype, allTotal, miConfig.OrgName, roles.UserName, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, med_type, his.IdCardType, tempOrder.FulamtOwnpayAmt, tempOrder.OverlmtSelfPay, tempOrder.PreselfpayAmt, tempOrder.InscpScpAmt, his.IdType, acct_used_flag)
  6459. // }
  6460. //
  6461. // //result2, src_resquest = service.Gdyb2207(his.PsnNo, his.Number, chrg_bchno, cert_no, insutype, allTotal, miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, strconv.FormatInt(reg_type, 10), his.IdCardType, 0, 0, 0, 0, his.IdType, acct_used_flag)
  6462. // var dat map[string]interface{}
  6463. // if err := json.Unmarshal([]byte(result2), &dat); err == nil {
  6464. // fmt.Println(dat)
  6465. // } else {
  6466. // fmt.Println(err)
  6467. // }
  6468. //
  6469. // saveLog(result2, src_resquest, "2207", "结算")
  6470. //
  6471. // userJSONBytes, _ := json.Marshal(dat)
  6472. // if miConfig.Code == "H15049901371" {
  6473. //
  6474. // if err := json.Unmarshal(userJSONBytes, &resSeven10265); err != nil {
  6475. // utils.ErrorLog("解析失败:%v", err)
  6476. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6477. // return
  6478. // }
  6479. //
  6480. // res.InfRefmsgid = resSeven10265.InfRefmsgid
  6481. // // res.Output = resSeven10265.Output
  6482. // res.ErrMsg = resSeven10265.ErrMsg
  6483. // res.Cainfo = resSeven10265.Cainfo
  6484. // // res.WarnMsg = resSeven10265.WarnMsg
  6485. // // infocode, _ := strconv.ParseInt(resSeven10265.Infcode, 10, 64)
  6486. // // res.Infcode = infocode
  6487. //
  6488. // } else {
  6489. //
  6490. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  6491. // utils.ErrorLog("解析失败:%v", err)
  6492. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6493. // return
  6494. // }
  6495. //
  6496. // }
  6497. //
  6498. // }
  6499. //
  6500. // if res.Infcode != 0 {
  6501. // errlog := &models.HisOrderError{
  6502. // UserOrgId: adminUser.CurrentOrgId,
  6503. // Ctime: time.Now().Unix(),
  6504. // Mtime: time.Now().Unix(),
  6505. // Number: chrg_bchno,
  6506. // ErrMsg: res.ErrMsg,
  6507. // Status: 1,
  6508. // PatientId: id,
  6509. // RecordTime: recordDateTime,
  6510. // Stage: 6,
  6511. // }
  6512. // service.CreateErrMsgLog(errlog)
  6513. // c.ServeSuccessJSON(map[string]interface{}{
  6514. // "failed_code": -10,
  6515. // "msg": res.ErrMsg,
  6516. // })
  6517. // return
  6518. // } else {
  6519. // order, _ := service.GetHisOrderTwo(adminUser.CurrentOrgId, chrg_bchno, id)
  6520. // order.OrderStatus = 2
  6521. // order.Status = 1
  6522. // order.MdtrtId = res.Output.Setlinfo.MdtrtID
  6523. // order.SetlId = res.Output.Setlinfo.SetlID
  6524. // order.PsnNo = res.Output.Setlinfo.PsnNo
  6525. // order.PsnName = res.Output.Setlinfo.PsnName
  6526. // order.PsnCertType = res.Output.Setlinfo.PsnCertType
  6527. // order.Certno = res.Output.Setlinfo.Certno
  6528. // order.Gend = res.Output.Setlinfo.Gend
  6529. // order.Naty = res.Output.Setlinfo.Naty
  6530. // order.Age = res.Output.Setlinfo.Age
  6531. // order.Insutype = res.Output.Setlinfo.Insutype
  6532. // order.PsnType = res.Output.Setlinfo.PsnType
  6533. // order.CvlservFlag = res.Output.Setlinfo.CvlservFlag
  6534. // order.SetlTime = res.Output.Setlinfo.SetlTime
  6535. // order.MdtrtCertType = res.Output.Setlinfo.MdtrtCertType
  6536. // if res.Output.Setlinfo.MedType == "140101" {
  6537. // order.MedType = "14"
  6538. //
  6539. // } else {
  6540. // order.MedType = res.Output.Setlinfo.MedType
  6541. // }
  6542. // if reg_type == 1112 {
  6543. // order.MedType = "1112"
  6544. // }
  6545. // if reg_type == 1111 {
  6546. // order.MedType = "1111"
  6547. // }
  6548. // order.MedfeeSumamt = res.Output.Setlinfo.MedfeeSumamt
  6549. // order.FulamtOwnpayAmt = res.Output.Setlinfo.FulamtOwnpayAmt
  6550. // order.OverlmtSelfPay = res.Output.Setlinfo.OverlmtSelfpay
  6551. // order.PreselfpayAmt = res.Output.Setlinfo.PreselfpayAmt
  6552. // order.InscpScpAmt = res.Output.Setlinfo.InscpScpAmt
  6553. // order.ActPayDedc = res.Output.Setlinfo.ActPayDedc
  6554. // order.HifpPay = res.Output.Setlinfo.HifpPay
  6555. // order.CvlservPay = res.Output.Setlinfo.CvlservPay
  6556. // // order.PoolPropSelfpay = res.Output.Setlinfo.PoolPropSelfpay
  6557. // order.HifesPay = res.Output.Setlinfo.HifesPay
  6558. // order.HifobPay = res.Output.Setlinfo.HifobPay
  6559. // order.MafPay = res.Output.Setlinfo.MafPay
  6560. // order.HifmiPay = res.Output.Setlinfo.HifmiPay
  6561. // order.OthPay = res.Output.Setlinfo.OthPay
  6562. // order.FundPaySumamt = res.Output.Setlinfo.FundPaySumamt
  6563. // // order.PsnPartAmt = res.Output.Setlinfo.PsnPartAmt
  6564. // order.AcctPay = res.Output.Setlinfo.AcctPay
  6565. // order.PsnCashPay = res.Output.Setlinfo.PsnCashPay
  6566. // order.HospPartAmt = res.Output.Setlinfo.HospPartAmt
  6567. // order.Balc = res.Output.Setlinfo.Balc
  6568. // order.AcctMulaidPay = res.Output.Setlinfo.AcctMulaidPay
  6569. // order.MedinsSetlId = res.Output.Setlinfo.MedinsSetlID
  6570. // order.ClrOptins = res.Output.Setlinfo.ClrOptins
  6571. // order.ClrType = res.Output.Setlinfo.ClrType
  6572. // order.ClrWay = res.Output.Setlinfo.ClrWay
  6573. // order.Creator = order.Creator
  6574. // order.Modify = roles.AdminUserId
  6575. // order.RequestLog = src_resquest
  6576. // setlDetail, _ := json.Marshal(res.Output.Setldetail)
  6577. // detailStr := string(setlDetail)
  6578. // order.SetlDetail = detailStr
  6579. // err := service.UpdataOrderStatusTwo(chrg_bchno, adminUser.CurrentOrgId)
  6580. // err = service.UpDateOrder(order)
  6581. // if err == nil {
  6582. // //判断是否使用了押金
  6583. // if dec_way == "true" {
  6584. // tmpstring := strconv.FormatInt(order.ID, 10)
  6585. // order.Decimal = decimal
  6586. // service.UpDateOrder(order)
  6587. // //扣押金
  6588. // errmsg = service.SpendDeposit(c.GetAdminUserInfo().CurrentOrgId, id, c.GetAdminUserInfo().AdminUser.Id, tmpstring, decimal)
  6589. // if errmsg != nil {
  6590. // c.ServeFailJsonSend(enums.ErrorCodeParamWrong, errmsg.Error())
  6591. // return
  6592. // }
  6593. // }
  6594. //
  6595. // c.ServeSuccessJSON(map[string]interface{}{
  6596. // "msg": "结算成功",
  6597. // })
  6598. // } else {
  6599. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeAmountAccountException)
  6600. // return
  6601. // }
  6602. // }
  6603. // } else {
  6604. // adminUser := c.GetAdminUserInfo()
  6605. // errlog := &models.HisOrderError{
  6606. // UserOrgId: adminUser.CurrentOrgId,
  6607. // Ctime: time.Now().Unix(),
  6608. // Mtime: time.Now().Unix(),
  6609. // ErrMsg: res.ErrMsg,
  6610. // Status: 1,
  6611. // PatientId: id,
  6612. // RecordTime: recordDateTime,
  6613. // Stage: 4,
  6614. // }
  6615. // service.CreateErrMsgLog(errlog)
  6616. //
  6617. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeRegisterRepeatException)
  6618. // return
  6619. // }
  6620. // } else {
  6621. // adminUser := c.GetAdminUserInfo()
  6622. // errlog := &models.HisOrderError{
  6623. // UserOrgId: adminUser.CurrentOrgId,
  6624. // Ctime: time.Now().Unix(),
  6625. // Mtime: time.Now().Unix(),
  6626. // ErrMsg: res.ErrMsg,
  6627. // Status: 1,
  6628. // PatientId: id,
  6629. // RecordTime: recordDateTime,
  6630. // Stage: 4,
  6631. // }
  6632. // service.CreateErrMsgLog(errlog)
  6633. // c.ServeSuccessJSON(map[string]interface{}{
  6634. // "failed_code": -10,
  6635. // "msg": res.ErrMsg,
  6636. // })
  6637. // return
  6638. // //c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeCalOrderException)
  6639. // //return
  6640. // }
  6641. // }
  6642. //
  6643. // }
  6644. //
  6645. // } else if tempOrder.ID > 0 {
  6646. // if tempOrder.IsPre == 1 {
  6647. // allTotal := fmt.Sprintf("%.4f", tempOrder.MedfeeSumamt)
  6648. // var rf []*ResultFive
  6649. // json.Unmarshal([]byte(his.Iinfo), &rf)
  6650. // chrg_bchno := tempOrder.Number
  6651. // cert_no := his.Certno
  6652. //
  6653. // var insutypes []string
  6654. //
  6655. // var insutype string
  6656. // var is390 int = 0
  6657. // var is310 int = 0
  6658. //
  6659. // for _, item := range rf {
  6660. // if (item.Insutype == "390" && item.PsnInsuStas == "1") || (item.Insutype == "310" && item.PsnInsuStas == "1") {
  6661. // insutypes = append(insutypes, item.Insutype)
  6662. // }
  6663. // }
  6664. //
  6665. // if len(insutypes) == 1 {
  6666. // insutype = insutypes[0]
  6667. // } else {
  6668. // for _, i := range insutypes {
  6669. // if i == "390" {
  6670. // is390 = 1
  6671. // }
  6672. //
  6673. // if i == "310" {
  6674. // is310 = 1
  6675. // }
  6676. // }
  6677. // }
  6678. // if is390 == 1 {
  6679. // insutype = "390"
  6680. // }
  6681. //
  6682. // if is310 == 1 {
  6683. // insutype = "310"
  6684. // }
  6685. //
  6686. // if len(insutypes) == 0 {
  6687. // insutype = "310"
  6688. // }
  6689. //
  6690. // if len(insutypes) == 2 {
  6691. // insutype = strconv.FormatInt(his.SocialType, 64)
  6692. // }
  6693. //
  6694. // //insutype = "390"
  6695. // if his.IdCardType == 1 {
  6696. // // cert_no = his.MedicalInsuranceNumber
  6697. // cert_no = his.Certno
  6698. //
  6699. // } else {
  6700. //
  6701. // cert_no = his.Certno
  6702. //
  6703. // }
  6704. // var res ResultSeven
  6705. // var resSeven10265 ResultSeven10265
  6706. // var src_resquest string
  6707. // var result2 string
  6708. // var acct_used_flag string
  6709. // fmt.Println("pay_way")
  6710. // fmt.Println(pay_way)
  6711. // fmt.Println("pay_way")
  6712. // if pay_way == 5 {
  6713. // acct_used_flag = "1"
  6714. // } else {
  6715. // acct_used_flag = "0"
  6716. // }
  6717. //
  6718. // if miConfig.MdtrtareaAdmvs == "421300" {
  6719. // api := "http://192.168.124.4:9532/" + "hbyb/2207?psn_no=" + his.PsnNo + "&mdtrt_id=" +
  6720. // his.Number + "&chrg_bchno=" + chrg_bchno + "&org_name=" + miConfig.OrgName +
  6721. // "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code +
  6722. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs +
  6723. // "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(his.IdCardType, 10) +
  6724. // "&certificates=" + strconv.FormatInt(his.IdType, 10) + "&cert_no=" + cert_no +
  6725. // "&insutype=" + insutype + "&total=" + allTotal + "&med_type=" + strconv.FormatInt(reg_type, 10) + "&acct_used_flag=" + acct_used_flag
  6726. //
  6727. // resp, requestErr := http.Get(api)
  6728. // if requestErr != nil {
  6729. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6730. // return
  6731. // }
  6732. //
  6733. // body, ioErr := ioutil.ReadAll(resp.Body)
  6734. // if ioErr != nil {
  6735. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  6736. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6737. // return
  6738. // }
  6739. // var respJSON map[string]interface{}
  6740. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  6741. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  6742. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6743. // return
  6744. // }
  6745. //
  6746. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  6747. // result, _ := json.Marshal(respJSON)
  6748. // fmt.Println("log")
  6749. // fmt.Println(string(result))
  6750. // if err := json.Unmarshal([]byte(result), &res); err != nil {
  6751. // utils.ErrorLog("解析失败:%v", err)
  6752. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6753. // return
  6754. // }
  6755. //
  6756. // } else if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  6757. // psn_info, _ := service.GetPsnByPatientId(his.PatientId)
  6758. // psn_info.VerifyNumber = strings.Replace(psn_info.VerifyNumber, "+", "%2B", -1)
  6759. //
  6760. // //psn_info, _ := service.GetPsnByPatientId(id)
  6761. // bas := strings.Split(psn_info.CardInfo, "|")
  6762. //
  6763. // if his.IdCardType == 1 {
  6764. // cert_no = bas[2]
  6765. // } else {
  6766. // cert_no = bas[1]
  6767. // }
  6768. //
  6769. // //江苏地区国家医保医疗类别
  6770. // //职工透析:医疗类别选特殊情况门诊9933
  6771. // //居民血透门慢: 医疗类别选门诊慢病1402
  6772. // //var med_type string
  6773. // //if his.Insutype == "310" {
  6774. // // if reg_type == 14 {
  6775. // // med_type = "9933"
  6776. // // } else if reg_type == 11 {
  6777. // // med_type = "11"
  6778. // //
  6779. // // }
  6780. // //} else if his.Insutype == "390" {
  6781. // // if reg_type == 14 {
  6782. // // med_type = "1402"
  6783. // // } else if reg_type == 11 {
  6784. // // med_type = "11"
  6785. // // }
  6786. // //}
  6787. //
  6788. // var api string
  6789. // if miConfig.MdtrtareaAdmvs == "320921" {
  6790. // api = "http://192.168.3.111:9532/" + "jsyb/2207?psn_no=" + his.PsnNo + "&mdtrt_id=" +
  6791. // his.Number + "&chrg_bchno=" + chrg_bchno + "&org_name=" + miConfig.OrgName +
  6792. // "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code +
  6793. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs +
  6794. // "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(his.IdCardType, 10) +
  6795. // "&certificates=" + strconv.FormatInt(his.IdType, 10) + "&cert_no=" + cert_no +
  6796. // "&insutype=" + insutype + "&total=" + allTotal + "&med_type=" + tempOrder.MedType + "&acct_used_flag=" + acct_used_flag + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&verify_number=" + psn_info.VerifyNumber + "&cainfo=" + miConfig.Cainfo
  6797. //
  6798. // //req, _ = http.NewRequest("POST", "http://192.168.3.111:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  6799. //
  6800. // } else {
  6801. // //req, _ = http.NewRequest("POST", "http://192.168.5.251:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  6802. // api = "http://192.168.5.251:9532/" + "jsyb/2207?psn_no=" + his.PsnNo + "&mdtrt_id=" +
  6803. // his.Number + "&chrg_bchno=" + chrg_bchno + "&org_name=" + miConfig.OrgName +
  6804. // "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code +
  6805. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs +
  6806. // "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(his.IdCardType, 10) +
  6807. // "&certificates=" + strconv.FormatInt(his.IdType, 10) + "&cert_no=" + cert_no +
  6808. // "&insutype=" + insutype + "&total=" + allTotal + "&med_type=" + tempOrder.MedType + "&acct_used_flag=" + acct_used_flag + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&verify_number=" + psn_info.VerifyNumber + "&cainfo=" + miConfig.Cainfo
  6809. //
  6810. // }
  6811. //
  6812. // resp, requestErr := http.Get(api)
  6813. // if requestErr != nil {
  6814. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6815. // return
  6816. // }
  6817. //
  6818. // body, ioErr := ioutil.ReadAll(resp.Body)
  6819. // if ioErr != nil {
  6820. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  6821. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6822. // return
  6823. // }
  6824. // var respJSON map[string]interface{}
  6825. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  6826. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  6827. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6828. // return
  6829. // }
  6830. //
  6831. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  6832. // result, _ := json.Marshal(respJSON)
  6833. // fmt.Println("log")
  6834. // fmt.Println(string(result))
  6835. // if err := json.Unmarshal([]byte(result), &resSeven10265); err != nil {
  6836. // utils.ErrorLog("解析失败:%v", err)
  6837. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6838. // return
  6839. // }
  6840. //
  6841. // res.InfRefmsgid = resSeven10265.InfRefmsgid
  6842. // res.Output = resSeven10265.Output
  6843. // res.ErrMsg = resSeven10265.ErrMsg
  6844. // res.Cainfo = resSeven10265.Cainfo
  6845. // res.WarnMsg = resSeven10265.WarnMsg
  6846. // infocode, _ := strconv.ParseInt(resSeven10265.Infcode, 10, 64)
  6847. // res.Infcode = infocode
  6848. //
  6849. // } else {
  6850. //
  6851. // var src_resquest string
  6852. // if miConfig.Code == "H15049901371" {
  6853. // //赤峰地区国家医保医疗类别
  6854. // //职工透析:医疗类别选特殊情况门诊990502
  6855. // //居民定额血透门慢: 医疗类别选门诊慢病140104
  6856. // var med_type string
  6857. // if his.Insutype == "390" {
  6858. // if reg_type == 14 {
  6859. // med_type = "9933"
  6860. // } else if reg_type == 11 {
  6861. // med_type = "11"
  6862. // }
  6863. // } else if his.Insutype == "310" {
  6864. // if reg_type == 14 {
  6865. // med_type = "990502"
  6866. // } else if reg_type == 11 {
  6867. // med_type = "11"
  6868. // }
  6869. // }
  6870. // result2, src_resquest = service.Gdyb2207(his.PsnNo, his.Number, chrg_bchno, cert_no, insutype, allTotal, miConfig.OrgName, roles.UserName, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, med_type, his.IdCardType, tempOrder.FulamtOwnpayAmt, tempOrder.OverlmtSelfPay, tempOrder.PreselfpayAmt, tempOrder.InscpScpAmt, his.IdType, acct_used_flag)
  6871. // } else {
  6872. // var med_type string
  6873. // if reg_type == 14 {
  6874. // med_type = "14"
  6875. // } else if reg_type == 11 {
  6876. // med_type = "11"
  6877. // }
  6878. // result2, src_resquest = service.Gdyb2207ForGz(his.PsnNo, his.Number, chrg_bchno, cert_no, insutype, allTotal, miConfig.OrgName, roles.UserName, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, med_type, his.IdCardType, tempOrder.FulamtOwnpayAmt, tempOrder.OverlmtSelfPay, tempOrder.PreselfpayAmt, tempOrder.InscpScpAmt, his.IdType, acct_used_flag)
  6879. // }
  6880. //
  6881. // var dat map[string]interface{}
  6882. // if err := json.Unmarshal([]byte(result2), &dat); err == nil {
  6883. // fmt.Println(dat)
  6884. // } else {
  6885. // fmt.Println(err)
  6886. // }
  6887. // saveLog(result2, src_resquest, "2207", "结算")
  6888. // userJSONBytes, _ := json.Marshal(dat)
  6889. // if miConfig.Code == "H15049901371" {
  6890. //
  6891. // if err := json.Unmarshal(userJSONBytes, &resSeven10265); err != nil {
  6892. // utils.ErrorLog("解析失败:%v", err)
  6893. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6894. // return
  6895. // }
  6896. // res.InfRefmsgid = resSeven10265.InfRefmsgid
  6897. // res.Output = resSeven10265.Output
  6898. // res.ErrMsg = resSeven10265.ErrMsg
  6899. // res.Cainfo = resSeven10265.Cainfo
  6900. // res.WarnMsg = resSeven10265.WarnMsg
  6901. // infocode, _ := strconv.ParseInt(resSeven10265.Infcode, 10, 64)
  6902. // res.Infcode = infocode
  6903. //
  6904. // } else {
  6905. //
  6906. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  6907. // utils.ErrorLog("解析失败:%v", err)
  6908. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  6909. // return
  6910. // }
  6911. //
  6912. // }
  6913. // }
  6914. //
  6915. // if res.Infcode != 0 {
  6916. // errlog := &models.HisOrderError{
  6917. // UserOrgId: adminUser.CurrentOrgId,
  6918. // Ctime: time.Now().Unix(),
  6919. // Mtime: time.Now().Unix(),
  6920. // Number: chrg_bchno,
  6921. // ErrMsg: res.ErrMsg,
  6922. // Status: 1,
  6923. // PatientId: id,
  6924. // RecordTime: recordDateTime,
  6925. // Stage: 6,
  6926. // }
  6927. // service.CreateErrMsgLog(errlog)
  6928. // c.ServeSuccessJSON(map[string]interface{}{
  6929. // "failed_code": -10,
  6930. // "msg": res.ErrMsg,
  6931. // })
  6932. // return
  6933. // } else {
  6934. //
  6935. // order, _ := service.GetHisOrderTwo(adminUser.CurrentOrgId, chrg_bchno, id)
  6936. // order.OrderStatus = 2
  6937. // order.MdtrtId = res.Output.Setlinfo.MdtrtID
  6938. // order.SetlId = res.Output.Setlinfo.SetlID
  6939. // order.PsnNo = res.Output.Setlinfo.PsnNo
  6940. // order.PsnName = res.Output.Setlinfo.PsnName
  6941. // order.PsnCertType = res.Output.Setlinfo.PsnCertType
  6942. // order.Certno = res.Output.Setlinfo.Certno
  6943. // order.Gend = res.Output.Setlinfo.Gend
  6944. // order.Naty = res.Output.Setlinfo.Naty
  6945. // order.Age = res.Output.Setlinfo.Age
  6946. // order.Insutype = res.Output.Setlinfo.Insutype
  6947. // order.PsnType = res.Output.Setlinfo.PsnType
  6948. // order.CvlservFlag = res.Output.Setlinfo.CvlservFlag
  6949. // order.SetlTime = res.Output.Setlinfo.SetlTime
  6950. // order.MdtrtCertType = res.Output.Setlinfo.MdtrtCertType
  6951. // //order.MedType = res.Output.Setlinfo.MedType
  6952. // if reg_type == 1112 {
  6953. // order.MedType = "1112"
  6954. // }
  6955. // if reg_type == 1111 {
  6956. // order.MedType = "1111"
  6957. // }
  6958. // order.MedfeeSumamt = res.Output.Setlinfo.MedfeeSumamt
  6959. // order.FulamtOwnpayAmt = res.Output.Setlinfo.FulamtOwnpayAmt
  6960. // order.OverlmtSelfPay = res.Output.Setlinfo.OverlmtSelfpay
  6961. // order.PreselfpayAmt = res.Output.Setlinfo.PreselfpayAmt
  6962. // order.InscpScpAmt = res.Output.Setlinfo.InscpScpAmt
  6963. // order.ActPayDedc = res.Output.Setlinfo.ActPayDedc
  6964. // order.HifpPay = res.Output.Setlinfo.HifpPay
  6965. // order.CvlservPay = res.Output.Setlinfo.CvlservPay
  6966. // // order.PoolPropSelfpay = res.Output.Setlinfo.PoolPropSelfpay
  6967. // order.HifesPay = res.Output.Setlinfo.HifesPay
  6968. // order.HifobPay = res.Output.Setlinfo.HifobPay
  6969. // order.MafPay = res.Output.Setlinfo.MafPay
  6970. // order.HifmiPay = res.Output.Setlinfo.HifmiPay
  6971. // order.OthPay = res.Output.Setlinfo.OthPay
  6972. // order.FundPaySumamt = res.Output.Setlinfo.FundPaySumamt
  6973. // order.PsnPartAmt = res.Output.Setlinfo.PsnPartAmt
  6974. // order.AcctPay = res.Output.Setlinfo.AcctPay
  6975. // order.PsnCashPay = res.Output.Setlinfo.PsnCashPay
  6976. // order.HospPartAmt = res.Output.Setlinfo.HospPartAmt
  6977. // order.Balc = res.Output.Setlinfo.Balc
  6978. // order.AcctMulaidPay = res.Output.Setlinfo.AcctMulaidPay
  6979. // order.MedinsSetlId = res.Output.Setlinfo.MedinsSetlID
  6980. // order.ClrOptins = res.Output.Setlinfo.ClrOptins
  6981. // order.ClrWay = res.Output.Setlinfo.ClrWay
  6982. // order.Creator = order.Creator
  6983. // order.Modify = roles.AdminUserId
  6984. // order.RequestLog = src_resquest
  6985. // order.Diagnosis = diagnosis_id
  6986. // setlDetail, _ := json.Marshal(res.Output.Setldetail)
  6987. // detailStr := string(setlDetail)
  6988. // order.SetlDetail = detailStr
  6989. //
  6990. // err := service.UpdataOrderStatusTwo(chrg_bchno, adminUser.CurrentOrgId)
  6991. // err = service.UpDateOrder(order)
  6992. // if err == nil {
  6993. // //判断是否使用了押金
  6994. // if dec_way == "true" {
  6995. // tmpstring := strconv.FormatInt(order.ID, 10)
  6996. // //扣押金
  6997. // order.Decimal = decimal
  6998. // service.UpDateOrder(order)
  6999. //
  7000. // errmsg = service.SpendDeposit(c.GetAdminUserInfo().CurrentOrgId, id, c.GetAdminUserInfo().AdminUser.Id, tmpstring, decimal)
  7001. // if errmsg != nil {
  7002. // c.ServeFailJsonSend(enums.ErrorCodeParamWrong, errmsg.Error())
  7003. // return
  7004. // }
  7005. // }
  7006. //
  7007. // c.ServeSuccessJSON(map[string]interface{}{
  7008. // "msg": "结算成功",
  7009. // })
  7010. // } else {
  7011. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeAmountAccountException)
  7012. // return
  7013. // }
  7014. // }
  7015. // }
  7016. // }
  7017. //}
  7018. //
  7019. ////func (c *HisApiController) GetPreUploadInfo() {
  7020. //// id, _ := c.GetInt64("id")
  7021. //// record_time := c.GetString("record_time")
  7022. //// settle_accounts_type, _ := c.GetInt64("settle_accounts_type")
  7023. //// admin_user_id, _ := c.GetInt64("admin_user_id")
  7024. ////
  7025. //// timeLayout := "2006-01-02"
  7026. //// loc, _ := time.LoadLocation("Local")
  7027. //// theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_time+" 00:00:00", loc)
  7028. //// if err != nil {
  7029. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  7030. //// return
  7031. //// }
  7032. //// recordDateTime := theTime.Unix()
  7033. //// adminUser := c.GetAdminUserInfo()
  7034. ////
  7035. //// var prescriptions []*models.HisPrescription
  7036. ////
  7037. //// var start_time int64
  7038. //// var end_time int64
  7039. ////
  7040. //// data := make(map[string]interface{})
  7041. //// if settle_accounts_type == 1 { //日结
  7042. //// prescriptions, _ = service.GetHisPrescription(adminUser.CurrentOrgId, id, recordDateTime)
  7043. //// data["pre"] = prescriptions
  7044. ////
  7045. //// } else { //月结
  7046. //// start_time_str := c.GetString("start_time")
  7047. //// end_time_str := c.GetString("end_time")
  7048. //// timeLayout := "2006-01-02"
  7049. //// loc, _ := time.LoadLocation("Local")
  7050. //// theStartTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time_str+" 00:00:00", loc)
  7051. //// if err != nil {
  7052. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  7053. //// return
  7054. //// }
  7055. //// recordStartTime := theStartTime.Unix()
  7056. //// start_time = recordStartTime
  7057. //// theEndTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time_str+" 00:00:00", loc)
  7058. //// if err != nil {
  7059. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  7060. //// return
  7061. //// }
  7062. //// recordEndTime := theEndTime.Unix()
  7063. //// end_time = recordEndTime
  7064. //// prescriptions, _ = service.GetMonthHisPrescription(adminUser.CurrentOrgId, id, recordStartTime, recordEndTime)
  7065. //// data["pre"] = prescriptions
  7066. ////
  7067. //// }
  7068. ////
  7069. //// roles, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  7070. ////
  7071. //// his, _ := service.GetVMHisPatientInfo(adminUser.CurrentOrgId, id, recordDateTime)
  7072. //// timestamp := time.Now().Unix()
  7073. //// tempTime := time.Unix(timestamp, 0)
  7074. //// timeFormat := tempTime.Format("20060102150405")
  7075. //// chrgBchno := rand.Intn(100000) + 10000
  7076. //// chrg_bchno := timeFormat + strconv.FormatInt(int64(chrgBchno), 10) + strconv.FormatInt(his.PatientId, 10)
  7077. //// miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  7078. //// patientPrescription, _ := service.FindPatientPrescriptionInfo(adminUser.CurrentOrgId, id, recordDateTime)
  7079. //// department, _ := service.GetDepartMentDetail(patientPrescription.Departments)
  7080. //// strconv.FormatInt(his.PatientId, 10)
  7081. //// client := &http.Client{}
  7082. //// data["psn_no"] = his.PsnNo
  7083. //// data["mdtrt_id"] = his.Number
  7084. //// data["chrg_bchno"] = chrg_bchno
  7085. //// data["org_name"] = miConfig.OrgName
  7086. //// data["doctor"] = roles.UserName
  7087. //// data["doctor_id"] = strconv.FormatInt(roles.AdminUserId, 10)
  7088. //// data["dept"] = strconv.FormatInt(patientPrescription.Departments, 10)
  7089. //// data["fixmedins_code"] = miConfig.Code
  7090. //// data["dept_code"] = department.Number
  7091. //// data["insuplc_admdvs"] = miConfig.InsuplcAdmdvs
  7092. //// data["mdtrtarea_admvs"] = miConfig.MdtrtareaAdmvs
  7093. //// data["secret_key"] = miConfig.SecretKey
  7094. //// var ids []int64
  7095. ////
  7096. //// for _, item := range prescriptions {
  7097. //// ids = append(ids, item.ID)
  7098. //// }
  7099. //// config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  7100. //// if config.IsOpen == 1 { //对接了医保,走医保流程
  7101. //// bytesData, _ := json.Marshal(data)
  7102. //// req, _ := http.NewRequest("POST", "http://127.0.0.1:9532/"+"gdyb/five", bytes.NewReader(bytesData))
  7103. //// resp, _ := client.Do(req)
  7104. //// defer resp.Body.Close()
  7105. //// body, ioErr := ioutil.ReadAll(resp.Body)
  7106. //// if ioErr != nil {
  7107. //// utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  7108. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7109. //// return
  7110. //// }
  7111. //// var respJSON map[string]interface{}
  7112. //// if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
  7113. //// utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  7114. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7115. //// return
  7116. //// }
  7117. ////
  7118. //// respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  7119. //// userJSONBytes, _ := json.Marshal(respJSON)
  7120. //// var res ResultFour
  7121. //// if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  7122. //// utils.ErrorLog("解析失败:%v", err)
  7123. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7124. //// return
  7125. //// }
  7126. ////
  7127. //// if res.Infcode == 0 {
  7128. //// order := &models.HisOrder{
  7129. //// UserOrgId: adminUser.CurrentOrgId,
  7130. //// HisPatientId: his.ID,
  7131. //// PatientId: his.PatientId,
  7132. //// SettleAccountsDate: recordDateTime,
  7133. //// Ctime: time.Now().Unix(),
  7134. //// Mtime: time.Now().Unix(),
  7135. //// Status: 1,
  7136. //// Number: chrg_bchno,
  7137. //// Infcode: res.Infcode,
  7138. //// WarnMsg: res.WarnMsg,
  7139. //// Cainfo: res.Cainfo,
  7140. //// ErrMsg: res.ErrMsg,
  7141. //// RespondTime: res.RefmsgTime,
  7142. //// InfRefmsgid: res.InfRefmsgid,
  7143. //// OrderStatus: 1,
  7144. //// IsMedicineInsurance: 1,
  7145. //// SettleType: settle_accounts_type,
  7146. //// SettleStartTime: start_time,
  7147. //// SettleEndTime: end_time,
  7148. //// Creator: roles.ID,
  7149. //// Modify: roles.ID,
  7150. //// PType: 2,
  7151. //// }
  7152. //// err = service.CreateOrder(order)
  7153. //// if err != nil {
  7154. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeCreatePreOrderException)
  7155. //// return
  7156. //// }
  7157. ////
  7158. //// for _, item := range res.Output.Result {
  7159. //// temp := strings.Split(item.FeedetlSn, "-")
  7160. //// var advice_id int64 = 0
  7161. //// var project_id int64 = 0
  7162. //// var types int64 = 0
  7163. ////
  7164. //// id, _ := strconv.ParseInt(temp[2], 10, 64)
  7165. //// types, _ = strconv.ParseInt(temp[1], 10, 64)
  7166. ////
  7167. //// if temp[1] == "1" {
  7168. //// advice_id = id
  7169. //// project_id = 0
  7170. //// } else if temp[1] == "2" {
  7171. //// advice_id = 0
  7172. //// project_id = id
  7173. //// }
  7174. ////
  7175. //// info := &models.HisOrderInfo{
  7176. //// OrderNumber: order.Number,
  7177. //// FeedetlSn: item.FeedetlSn,
  7178. //// UploadDate: time.Now().Unix(),
  7179. //// AdviceId: advice_id,
  7180. //// DetItemFeeSumamt: item.DetItemFeeSumamt,
  7181. //// Cnt: item.Cnt,
  7182. //// Pric: float64(item.Pric),
  7183. //// PatientId: his.PatientId,
  7184. //// PricUplmtAmt: item.PricUplmtAmt,
  7185. //// SelfpayProp: item.SelfpayProp,
  7186. //// FulamtOwnpayAmt: item.FulamtOwnpayAmt,
  7187. //// OverlmtAmt: item.OverlmtAmt,
  7188. //// PreselfpayAmt: item.PreselfpayAmt,
  7189. //// BasMednFlag: item.BasMednFlag,
  7190. //// MedChrgitmType: item.MedChrgitmType,
  7191. //// HiNegoDrugFlag: item.HiNegoDrugFlag,
  7192. //// Status: 1,
  7193. //// Memo: item.Memo,
  7194. //// Mtime: time.Now().Unix(),
  7195. //// InscpScpAmt: item.InscpScpAmt,
  7196. //// DrtReimFlag: item.DrtReimFlag,
  7197. //// Ctime: time.Now().Unix(),
  7198. //// ListSpItemFlag: item.ListSpItemFlag,
  7199. //// ChldMedcFlag: item.ChldMedcFlag,
  7200. //// LmtUsedFlag: item.LmtUsedFlag,
  7201. //// ChrgitmLv: item.ChrgitmLv,
  7202. //// UserOrgId: adminUser.CurrentOrgId,
  7203. //// HisPatientId: his.ID,
  7204. //// OrderId: order.ID,
  7205. //// ProjectId: project_id,
  7206. //// Type: types,
  7207. //// }
  7208. //// service.CreateOrderInfo(info)
  7209. ////
  7210. //// }
  7211. //// service.UpDatePrescriptionNumber(adminUser.CurrentOrgId, ids, chrg_bchno)
  7212. //// service.UpDatePrescriptionInfoNumber(adminUser.CurrentOrgId, patientPrescription.PatientId, chrg_bchno, recordDateTime)
  7213. ////
  7214. //// var total float64
  7215. //// for _, item := range prescriptions {
  7216. //// if item.Type == 1 { //药品
  7217. //// for _, subItem := range item.HisDoctorAdviceInfo {
  7218. //// total = total + (subItem.Price * subItem.PrescribingNumber)
  7219. //// }
  7220. //// }
  7221. //// if item.Type == 2 { //项目
  7222. //// for _, subItem := range item.HisPrescriptionProject {
  7223. //// total = total + (subItem.Price * float64(subItem.Count))
  7224. //// }
  7225. //// }
  7226. //// }
  7227. ////
  7228. //// for _, item := range prescriptions {
  7229. //// for _, subItem := range item.HisAdditionalCharge {
  7230. //// total = total + (subItem.Price * float64(subItem.Count))
  7231. //// }
  7232. //// }
  7233. ////
  7234. //// allTotal := fmt.Sprintf("%.2f", total)
  7235. //// if res.Infcode == 0 {
  7236. //// var rf []*ResultFive
  7237. //// json.Unmarshal([]byte(his.Iinfo), &rf)
  7238. //// psn_no := his.PsnNo
  7239. //// mdtrt_id := his.Number
  7240. //// chrg_bchno := chrg_bchno
  7241. //// cert_no := his.Certno
  7242. //// insutype := rf[0].Insutype
  7243. ////
  7244. //// if his.IdCardType == 1 {
  7245. //// cert_no = his.MedicalInsuranceNumber
  7246. ////
  7247. //// } else {
  7248. ////
  7249. //// cert_no = his.Certno
  7250. ////
  7251. //// }
  7252. ////
  7253. //// api := "http://127.0.0.1:9532/" + "gdyb/seven?cert_no=" + cert_no + "&insutype=" +
  7254. //// insutype + "&psn_no=" + psn_no + "&chrg_bchno=" + chrg_bchno + "&mdtrt_id=" + mdtrt_id +
  7255. //// "&total=" + allTotal + "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code + "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" +
  7256. //// miConfig.SecretKey + "&med_type=" + strconv.FormatInt(patientPrescription.RegisterType, 10) + "&id_card_type=" + strconv.FormatInt(int64(his.IdCardType), 10)
  7257. //// resp, requestErr := http.Get(api)
  7258. //// if requestErr != nil {
  7259. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7260. //// return
  7261. //// }
  7262. //// defer resp.Body.Close()
  7263. //// body, ioErr := ioutil.ReadAll(resp.Body)
  7264. //// if ioErr != nil {
  7265. //// utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  7266. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7267. //// return
  7268. //// }
  7269. //// var respJSON map[string]interface{}
  7270. //// if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  7271. //// utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  7272. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7273. //// return
  7274. //// }
  7275. //// fmt.Println(respJSON)
  7276. //// respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  7277. //// userJSONBytes, _ := json.Marshal(respJSON)
  7278. //// var res ResultSeven
  7279. //// if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  7280. //// utils.ErrorLog("解析失败:%v", err)
  7281. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7282. //// return
  7283. //// }
  7284. //// if res.Infcode != 0 {
  7285. //// errlog := &models.HisOrderError{
  7286. //// UserOrgId: adminUser.CurrentOrgId,
  7287. //// Ctime: time.Now().Unix(),
  7288. //// Mtime: time.Now().Unix(),
  7289. //// Number: chrg_bchno,
  7290. //// ErrMsg: res.ErrMsg,
  7291. //// Status: 1,
  7292. //// PatientId: id,
  7293. //// RecordTime: recordDateTime,
  7294. //// Stage: 7,
  7295. //// }
  7296. //// service.CreateErrMsgLog(errlog)
  7297. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeRegisterRepeatException)
  7298. //// return
  7299. //// } else {
  7300. //// order, _ := service.GetHisOrderTwo(adminUser.CurrentOrgId, chrg_bchno, id)
  7301. //// order.OrderStatus = 1
  7302. //// order.MdtrtId = res.Output.Setlinfo.MdtrtID
  7303. //// order.SetlId = res.Output.Setlinfo.SetlID
  7304. //// order.PsnNo = res.Output.Setlinfo.PsnNo
  7305. //// order.PsnName = res.Output.Setlinfo.PsnName
  7306. //// order.PsnCertType = res.Output.Setlinfo.PsnCertType
  7307. //// order.Certno = res.Output.Setlinfo.Certno
  7308. //// order.Gend = res.Output.Setlinfo.Gend
  7309. //// order.Naty = res.Output.Setlinfo.Naty
  7310. //// order.Age = res.Output.Setlinfo.Age
  7311. //// order.Insutype = res.Output.Setlinfo.Insutype
  7312. //// order.PsnType = res.Output.Setlinfo.PsnType
  7313. //// order.CvlservFlag = res.Output.Setlinfo.CvlservFlag
  7314. //// order.SetlTime = res.Output.Setlinfo.SetlTime
  7315. //// order.MdtrtCertType = res.Output.Setlinfo.MdtrtCertType
  7316. //// order.MedType = res.Output.Setlinfo.MedType
  7317. //// order.MedfeeSumamt = res.Output.Setlinfo.MedfeeSumamt
  7318. //// order.FulamtOwnpayAmt = res.Output.Setlinfo.FulamtOwnpayAmt
  7319. //// order.OverlmtSelfPay = res.Output.Setlinfo.OverlmtSelfpay
  7320. //// order.PreselfpayAmt = res.Output.Setlinfo.PreselfpayAmt
  7321. //// order.InscpScpAmt = res.Output.Setlinfo.InscpScpAmt
  7322. //// order.ActPayDedc = res.Output.Setlinfo.ActPayDedc
  7323. //// order.HifpPay = res.Output.Setlinfo.HifpPay
  7324. //// order.CvlservPay = res.Output.Setlinfo.CvlservPay
  7325. //// order.PoolPropSelfpay = res.Output.Setlinfo.PoolPropSelfpay
  7326. //// order.HifesPay = res.Output.Setlinfo.HifesPay
  7327. //// order.HifobPay = res.Output.Setlinfo.HifobPay
  7328. //// order.MafPay = res.Output.Setlinfo.MafPay
  7329. //// order.OthPay = res.Output.Setlinfo.OthPay
  7330. //// order.FundPaySumamt = res.Output.Setlinfo.FundPaySumamt
  7331. //// order.PsnPartAmt = res.Output.Setlinfo.PsnPartAmt
  7332. //// order.AcctPay = res.Output.Setlinfo.AcctPay
  7333. //// order.PsnCashPay = res.Output.Setlinfo.PsnCashPay
  7334. //// order.HospPartAmt = res.Output.Setlinfo.HospPartAmt
  7335. //// order.Balc = res.Output.Setlinfo.Balc
  7336. //// order.AcctMulaidPay = res.Output.Setlinfo.AcctMulaidPay
  7337. //// order.MedinsSetlId = res.Output.Setlinfo.MedinsSetlID
  7338. //// order.ClrOptins = res.Output.Setlinfo.ClrOptins
  7339. //// order.ClrWay = res.Output.Setlinfo.ClrWay
  7340. //// order.Creator = order.Creator
  7341. //// order.Modify = roles.ID
  7342. //// setlDetail, _ := json.Marshal(res.Output.Setldetail)
  7343. //// detailStr := string(setlDetail)
  7344. //// order.SetlDetail = detailStr
  7345. //// //err := service.UpdataOrderStatusTwo(chrg_bchno, adminUser.CurrentOrgId)
  7346. //// err = service.UpDateOrder(order)
  7347. //// if err == nil {
  7348. //// c.ServeSuccessJSON(map[string]interface{}{
  7349. //// "msg": "预结算成功",
  7350. //// })
  7351. //// } else {
  7352. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeAmountAccountException)
  7353. //// return
  7354. //// }
  7355. //// }
  7356. //// } else {
  7357. //// adminUser := c.GetAdminUserInfo()
  7358. //// errlog := &models.HisOrderError{
  7359. //// UserOrgId: adminUser.CurrentOrgId,
  7360. //// Ctime: time.Now().Unix(),
  7361. //// Mtime: time.Now().Unix(),
  7362. //// ErrMsg: res.ErrMsg,
  7363. //// Status: 1,
  7364. //// PatientId: id,
  7365. //// RecordTime: recordDateTime,
  7366. //// Stage: 4,
  7367. //// }
  7368. //// service.CreateErrMsgLog(errlog)
  7369. ////
  7370. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeRegisterRepeatException)
  7371. //// return
  7372. //// }
  7373. //// } else {
  7374. //// adminUser := c.GetAdminUserInfo()
  7375. //// errlog := &models.HisOrderError{
  7376. //// UserOrgId: adminUser.CurrentOrgId,
  7377. //// Ctime: time.Now().Unix(),
  7378. //// Mtime: time.Now().Unix(),
  7379. //// ErrMsg: res.ErrMsg,
  7380. //// Status: 1,
  7381. //// PatientId: id,
  7382. //// RecordTime: recordDateTime,
  7383. //// Stage: 4,
  7384. //// }
  7385. //// service.CreateErrMsgLog(errlog)
  7386. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeCalOrderException)
  7387. //// return
  7388. //// }
  7389. ////
  7390. //// } else {
  7391. //// var total float64
  7392. //// for _, item := range prescriptions {
  7393. //// if item.Type == 1 { //药品
  7394. //// for _, subItem := range item.HisDoctorAdviceInfo {
  7395. //// total = total + (subItem.Price * subItem.PrescribingNumber)
  7396. //// }
  7397. //// }
  7398. //// if item.Type == 2 { //项目
  7399. //// for _, subItem := range item.HisPrescriptionProject {
  7400. //// total = total + (subItem.Price * float64(subItem.Count))
  7401. //// }
  7402. //// }
  7403. ////
  7404. //// for _, subItem := range item.HisAdditionalCharge {
  7405. //// total = total + (subItem.Price * float64(subItem.Count))
  7406. //// }
  7407. //// }
  7408. ////
  7409. //// allTotal := fmt.Sprintf("%.2f", total)
  7410. //// totals, _ := strconv.ParseFloat(allTotal, 64)
  7411. //// order := &models.HisOrder{
  7412. //// UserOrgId: adminUser.CurrentOrgId,
  7413. //// HisPatientId: his.ID,
  7414. //// PatientId: id,
  7415. //// SettleAccountsDate: recordDateTime,
  7416. //// Ctime: time.Now().Unix(),
  7417. //// Mtime: time.Now().Unix(),
  7418. //// Status: 1,
  7419. //// OrderStatus: 2,
  7420. //// Number: chrg_bchno,
  7421. //// MedfeeSumamt: totals,
  7422. //// }
  7423. //// err = service.CreateOrder(order)
  7424. //// if err != nil {
  7425. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeCreatePreOrderException)
  7426. //// return
  7427. //// }
  7428. ////
  7429. //// var customs []*Custom
  7430. //// for _, item := range prescriptions {
  7431. ////
  7432. //// if item.Type == 1 { //药品
  7433. //// for _, subItem := range item.HisDoctorAdviceInfo {
  7434. //// cus := &Custom{
  7435. //// AdviceId: subItem.ID,
  7436. //// ProjectId: 0,
  7437. //// DetItemFeeSumamt: fmt.Sprintf("%.2f", subItem.Price*subItem.PrescribingNumber),
  7438. //// Cut: fmt.Sprintf("%.2f", subItem.PrescribingNumber),
  7439. //// FeedetlSn: subItem.FeedetlSn,
  7440. //// Price: fmt.Sprintf("%.2f", subItem.Price),
  7441. //// MedListCodg: subItem.MedListCodg,
  7442. //// Type: 1,
  7443. //// }
  7444. //// customs = append(customs, cus)
  7445. //// }
  7446. //// }
  7447. ////
  7448. //// if item.Type == 2 { //项目
  7449. //// for _, subItem := range item.HisPrescriptionProject {
  7450. ////
  7451. //// cus := &Custom{
  7452. //// AdviceId: 0,
  7453. //// ProjectId: subItem.ID,
  7454. //// DetItemFeeSumamt: fmt.Sprintf("%.2f", subItem.Price*float64(subItem.Count)),
  7455. //// Cut: fmt.Sprintf("%.2f", float64(subItem.Count)),
  7456. //// FeedetlSn: subItem.FeedetlSn,
  7457. //// Price: fmt.Sprintf("%.2f", float64(subItem.Price)),
  7458. //// MedListCodg: subItem.MedListCodg,
  7459. //// Type: 2,
  7460. //// }
  7461. ////
  7462. //// customs = append(customs, cus)
  7463. //// }
  7464. //// }
  7465. ////
  7466. //// for _, item := range item.HisAdditionalCharge {
  7467. //// cus := &Custom{
  7468. //// ItemId: item.ID,
  7469. //// AdviceId: 0,
  7470. //// ProjectId: 0,
  7471. //// DetItemFeeSumamt: fmt.Sprintf("%.2f", item.Price),
  7472. //// Cut: fmt.Sprintf("%.2f", float64(item.Count)),
  7473. //// FeedetlSn: item.FeedetlSn,
  7474. //// Price: fmt.Sprintf("%.2f", float64(item.Price)),
  7475. //// MedListCodg: item.XtHisAddtionConfig.Code,
  7476. //// Type: 3,
  7477. //// }
  7478. ////
  7479. //// customs = append(customs, cus)
  7480. //// }
  7481. ////
  7482. //// }
  7483. ////
  7484. //// for _, item := range customs {
  7485. //// var advice_id int64 = 0
  7486. //// var project_id int64 = 0
  7487. //// var item_id int64 = 0
  7488. ////
  7489. //// var types int64 = 0
  7490. ////
  7491. //// if item.Type == 1 {
  7492. //// advice_id = item.AdviceId
  7493. //// project_id = 0
  7494. //// item_id = 0
  7495. //// } else if item.Type == 2 {
  7496. //// advice_id = 0
  7497. //// item_id = 0
  7498. ////
  7499. //// project_id = item.ProjectId
  7500. //// } else if item.Type == 3 {
  7501. //// advice_id = 0
  7502. //// item_id = item.ItemId
  7503. //// project_id = 0
  7504. //// }
  7505. ////
  7506. //// detItemFeeSumamt, _ := strconv.ParseFloat(item.DetItemFeeSumamt, 32)
  7507. //// cut, _ := strconv.ParseFloat(item.Cut, 32)
  7508. //// pric, _ := strconv.ParseFloat(item.Price, 32)
  7509. ////
  7510. //// info := &models.HisOrderInfo{
  7511. //// OrderNumber: order.Number,
  7512. //// UploadDate: time.Now().Unix(),
  7513. //// AdviceId: advice_id,
  7514. //// DetItemFeeSumamt: detItemFeeSumamt,
  7515. //// Cnt: cut,
  7516. //// Pric: pric,
  7517. //// PatientId: id,
  7518. //// Status: 1,
  7519. //// Mtime: time.Now().Unix(),
  7520. //// Ctime: time.Now().Unix(),
  7521. //// UserOrgId: adminUser.CurrentOrgId,
  7522. //// HisPatientId: his.ID,
  7523. //// OrderId: order.ID,
  7524. //// ProjectId: project_id,
  7525. //// Type: types,
  7526. //// ItemId: item_id,
  7527. //// }
  7528. //// service.CreateOrderInfo(info)
  7529. //// }
  7530. //// //err := service.UpDateAddtionNumber(adminUser.CurrentOrgId, ids, chrg_bchno)
  7531. //// err = service.UpDatePrescriptionNumber(adminUser.CurrentOrgId, ids, chrg_bchno)
  7532. //// err = service.UpDatePrescriptionInfoNumber(adminUser.CurrentOrgId, id, chrg_bchno, recordDateTime)
  7533. //// err = service.UpdataOrderStatusTwo(chrg_bchno, adminUser.CurrentOrgId)
  7534. //// if err == nil {
  7535. //// c.ServeSuccessJSON(map[string]interface{}{
  7536. //// "msg": "结算成功",
  7537. //// })
  7538. //// } else {
  7539. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeAmountAccountException)
  7540. //// return
  7541. //// }
  7542. //// }
  7543. ////}
  7544. //
  7545. ////上传明细-预结算-
  7546. //func (c *HisApiController) GetPreUploadInfo() {
  7547. // id, _ := c.GetInt64("id")
  7548. // record_time := c.GetString("record_time")
  7549. // his_patient_id, _ := c.GetInt64("his_patient_id")
  7550. // settle_accounts_type, _ := c.GetInt64("settle_accounts_type")
  7551. // admin_user_id, _ := c.GetInt64("admin_user_id")
  7552. //
  7553. // diagnosis_id := c.GetString("diagnosis")
  7554. // sick_type, _ := c.GetInt64("sick_type")
  7555. // reg_type, _ := c.GetInt64("p_type")
  7556. // begin_time := c.GetString("begin_time")
  7557. //
  7558. // id_str := c.GetString("ids")
  7559. // ids_arr := strings.Split(id_str, ",")
  7560. //
  7561. // timeLayout := "2006-01-02"
  7562. // loc, _ := time.LoadLocation("Local")
  7563. // theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_time+" 00:00:00", loc)
  7564. // if err != nil {
  7565. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  7566. // return
  7567. // }
  7568. // recordDateTime := theTime.Unix()
  7569. // adminUser := c.GetAdminUserInfo()
  7570. //
  7571. // diagnosis_ids := strings.Split(diagnosis_id, ",")
  7572. //
  7573. // var config []*models.HisXtDiagnoseConfig
  7574. // for _, item := range diagnosis_ids {
  7575. // id, _ := strconv.ParseInt(item, 10, 64)
  7576. // diagnosisConfig, _ := service.FindDiagnoseById(id)
  7577. // config = append(config, &diagnosisConfig)
  7578. // }
  7579. // //diagnosisConfig, _ := service.FindDiagnoseById(diagnosis_id)
  7580. //
  7581. // sickConfig, _ := service.FindSickById(sick_type)
  7582. //
  7583. // var prescriptions []*models.HisPrescription
  7584. //
  7585. // var start_time int64
  7586. // var end_time int64
  7587. //
  7588. // roles, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  7589. // fmt.Println(his_patient_id)
  7590. // his, _ := service.GetNewHisPatientInfo(adminUser.CurrentOrgId, his_patient_id, recordDateTime)
  7591. // timestamp := time.Now().Unix()
  7592. // tempTime := time.Unix(timestamp, 0)
  7593. // timeFormat := tempTime.Format("20060102150405")
  7594. // chrgBchno := rand.Intn(100000) + 10000
  7595. // chrg_bchno := timeFormat + strconv.FormatInt(int64(chrgBchno), 10) + strconv.FormatInt(his.PatientId, 10)
  7596. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  7597. // var patientPrescription models.HisPrescriptionInfo
  7598. // patientPrescription, _ = service.FindHisPatientPrescriptionInfo(adminUser.CurrentOrgId, his_patient_id, recordDateTime)
  7599. // if patientPrescription.ID == 0 {
  7600. // patientPrescription, _ = service.FindLastPatientPrescriptionInfo(adminUser.CurrentOrgId, id, recordDateTime)
  7601. // }
  7602. // //miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  7603. // department, _ := service.GetDepartMentDetail(patientPrescription.Departments)
  7604. //
  7605. // doctor_info, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, patientPrescription.DoctorId)
  7606. //
  7607. // strconv.FormatInt(his.PatientId, 10)
  7608. //
  7609. // var res2 ResultSix
  7610. // var resSix10265 ResultSix10265
  7611. // var time_stamp string
  7612. // if miConfig.MdtrtareaAdmvs == "421300" {
  7613. // data := make(map[string]interface{})
  7614. // client := &http.Client{}
  7615. // data["psn_no"] = his.PsnNo
  7616. // data["mdtrt_id"] = his.Number
  7617. // data["doctor"] = roles.UserName
  7618. // data["department"] = department.Name
  7619. // data["org_name"] = miConfig.OrgName
  7620. // data["med_type"] = strconv.FormatInt(reg_type, 10)
  7621. // data["doctor_id"] = strconv.FormatInt(doctor_info.AdminUserId, 10)
  7622. // data["fixmedins_code"] = miConfig.Code
  7623. // data["insuplc_admdvs"] = miConfig.InsuplcAdmdvs
  7624. // data["mdtrtarea_admvs"] = miConfig.MdtrtareaAdmvs
  7625. // data["secret_key"] = miConfig.SecretKey
  7626. // data["sick_code"] = sickConfig.CountryCode
  7627. // data["sick_name"] = sickConfig.ClassName
  7628. // data["begin_time"] = begin_time
  7629. // data["dept"] = strconv.FormatInt(department.ID, 10)
  7630. // data["config"] = config
  7631. //
  7632. // fmt.Println(data)
  7633. //
  7634. // bytesData, _ := json.Marshal(data)
  7635. // req, _ := http.NewRequest("POST", "http://192.168.124.4:9532/"+"hbyb/2203", bytes.NewReader(bytesData))
  7636. // resp, _ := client.Do(req)
  7637. // defer resp.Body.Close()
  7638. // body, ioErr := ioutil.ReadAll(resp.Body)
  7639. // if ioErr != nil {
  7640. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  7641. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7642. // return
  7643. // }
  7644. // var respJSON map[string]interface{}
  7645. // if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
  7646. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  7647. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7648. // return
  7649. // }
  7650. //
  7651. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  7652. // userJSONBytes, _ := json.Marshal(respJSON)
  7653. // fmt.Println("log")
  7654. // fmt.Println(string(userJSONBytes))
  7655. // if err := json.Unmarshal(userJSONBytes, &res2); err != nil {
  7656. // utils.ErrorLog("解析失败:%v", err)
  7657. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7658. // return
  7659. // }
  7660. //
  7661. // } else if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  7662. // //江苏地区国家医保医疗类别
  7663. // //职工透析:医疗类别选特殊情况门诊9933
  7664. // //居民血透门慢: 医疗类别选门诊慢病1402
  7665. // //var med_type string
  7666. // //if his.Insutype == "310" {
  7667. // // if reg_type == 14 {
  7668. // // med_type = "9933"
  7669. // // } else if reg_type == 11 {
  7670. // // med_type = "11"
  7671. // //
  7672. // // }
  7673. // //} else if his.Insutype == "390" {
  7674. // // if reg_type == 14 {
  7675. // // med_type = "1402"
  7676. // // } else if reg_type == 11 {
  7677. // // med_type = "11"
  7678. // // }
  7679. // //}
  7680. //
  7681. // data := make(map[string]interface{})
  7682. // client := &http.Client{}
  7683. // data["psn_no"] = his.PsnNo
  7684. // data["mdtrt_id"] = his.Number
  7685. // data["doctor"] = roles.UserName
  7686. // data["department"] = department.Name
  7687. // data["org_name"] = miConfig.OrgName
  7688. // data["med_type"] = strconv.FormatInt(reg_type, 10)
  7689. // data["doctor_id"] = strconv.FormatInt(doctor_info.AdminUserId, 10)
  7690. // data["fixmedins_code"] = miConfig.Code
  7691. // data["insuplc_admdvs"] = his.InsuplcAdmdvs
  7692. // data["mdtrtarea_admvs"] = miConfig.MdtrtareaAdmvs
  7693. // data["secret_key"] = miConfig.SecretKey
  7694. // data["sick_code"] = sickConfig.CountryCode
  7695. // data["sick_name"] = sickConfig.ClassName
  7696. // data["begin_time"] = begin_time
  7697. // data["dept"] = strconv.FormatInt(department.ID, 10)
  7698. // data["config"] = config
  7699. // data["url"] = miConfig.Url
  7700. // data["ak"] = miConfig.AccessKey
  7701. // data["cainfo"] = miConfig.Cainfo
  7702. //
  7703. // bytesData, _ := json.Marshal(data)
  7704. //
  7705. // var req *http.Request
  7706. // if miConfig.MdtrtareaAdmvs == "320921" {
  7707. // req, _ = http.NewRequest("POST", "http://192.168.3.111:9532/"+"jsyb/2203", bytes.NewReader(bytesData))
  7708. //
  7709. // //api = "http://192.168.3.111:9532/" + "jsyb/readcard?" + "fixmedins_code=" + miConfig.Code + "&secret_key=" + miConfig.SecretKey + "&ak=" + miConfig.AccessKey + "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName +
  7710. // // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&cainfo=" + miConfig.Cainfo
  7711. //
  7712. // } else {
  7713. // req, _ = http.NewRequest("POST", "http://192.168.5.251:9532/"+"jsyb/2203", bytes.NewReader(bytesData))
  7714. //
  7715. // }
  7716. //
  7717. // resp, _ := client.Do(req)
  7718. // defer resp.Body.Close()
  7719. // body, ioErr := ioutil.ReadAll(resp.Body)
  7720. // if ioErr != nil {
  7721. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  7722. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7723. // return
  7724. // }
  7725. // var respJSON map[string]interface{}
  7726. // if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
  7727. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  7728. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7729. // return
  7730. // }
  7731. //
  7732. // time_stamp = strconv.FormatInt(int64(respJSON["data"].(map[string]interface{})["time_stamp"].(float64)), 10)
  7733. //
  7734. // //fmt.Println(respJSON["data"].(map[string]interface{})["time_stamp"].(string))
  7735. // //time_stamp = respJSON["data"].(map[string]interface{})["time_stamp"].(string)
  7736. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  7737. // userJSONBytes, _ := json.Marshal(respJSON)
  7738. // fmt.Println("log")
  7739. // fmt.Println(string(userJSONBytes))
  7740. // if err := json.Unmarshal(userJSONBytes, &resSix10265); err != nil {
  7741. // utils.ErrorLog("解析失败:%v", err)
  7742. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7743. // return
  7744. // }
  7745. //
  7746. // res2.InfRefmsgid = resSix10265.InfRefmsgid
  7747. // // res2.Output = resSix10265.Output
  7748. // res2.ErrMsg = resSix10265.ErrMsg
  7749. // res2.Cainfo = resSix10265.Cainfo
  7750. // res2.WarnMsg = resSix10265.WarnMsg
  7751. // infocode, _ := strconv.ParseInt(resSix10265.Infcode, 10, 64)
  7752. // res2.Infcode = infocode
  7753. //
  7754. // } else {
  7755. // var result string
  7756. // var requestLog string
  7757. // if miConfig.MdtrtareaAdmvs == "440781" { //
  7758. // result, requestLog = service.Gdyb2203A(his.PsnNo, his.Number, doctor_info.UserName, department.Name, miConfig.OrgName, strconv.FormatInt(reg_type, 10), doctor_info.DoctorNumber, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, sickConfig.ContentCode, sickConfig.ClassName, roles.UserName, config, begin_time)
  7759. // } else {
  7760. // if miConfig.Code == "H15049901371" {
  7761. // //赤峰地区国家医保医疗类别
  7762. // //职工透析:医疗类别选特殊情况门诊990502
  7763. // //居民定额血透门慢: 医疗类别选门诊慢病140104
  7764. // var med_type string
  7765. // if his.Insutype == "390" {
  7766. // if reg_type == 14 {
  7767. // med_type = "9933"
  7768. // } else if reg_type == 11 {
  7769. // med_type = "11"
  7770. // }
  7771. // } else if his.Insutype == "310" {
  7772. // if reg_type == 14 {
  7773. // med_type = "990502"
  7774. // } else if reg_type == 11 {
  7775. // med_type = "11"
  7776. // }
  7777. // }
  7778. // result, requestLog = service.Gdyb2203ForGz(his.PsnNo, his.Number, doctor_info.UserName, department.Name, miConfig.OrgName, med_type, doctor_info.DoctorNumber, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, sickConfig.ContentCode, sickConfig.ClassName, roles.UserName, config, begin_time)
  7779. // } else {
  7780. // var med_type string
  7781. // if reg_type == 14 {
  7782. // med_type = "14"
  7783. // result, requestLog = service.Gdyb2203ForGz(his.PsnNo, his.Number, doctor_info.UserName, department.Name, miConfig.OrgName, med_type, doctor_info.DoctorNumber, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, sickConfig.ContentCode, sickConfig.ClassName, roles.UserName, config, begin_time)
  7784. //
  7785. // } else if reg_type == 11 {
  7786. // med_type = "11"
  7787. // // sickConfig.ClassName = "普通门诊"
  7788. // // sickConfig.ContentCode = "11"
  7789. // result, requestLog = service.Gdyb2203ForGz(his.PsnNo, his.Number, doctor_info.UserName, department.Name, miConfig.OrgName, med_type, doctor_info.DoctorNumber, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, sickConfig.ContentCode, sickConfig.ClassName, roles.UserName, config, begin_time)
  7790. //
  7791. // }
  7792. //
  7793. // }
  7794. // saveLog(result, requestLog, "2203", "上传就诊信息")
  7795. // var respJSON2 map[string]interface{}
  7796. // if err := json.Unmarshal([]byte(string(result)), &respJSON2); err != nil {
  7797. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  7798. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7799. // return
  7800. // }
  7801. // userJSONBytes2, _ := json.Marshal(respJSON2)
  7802. // if miConfig.Code == "H15049901371" {
  7803. // if err := json.Unmarshal(userJSONBytes2, &resSix10265); err != nil {
  7804. // utils.ErrorLog("解析失败:%v", err)
  7805. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7806. // return
  7807. // }
  7808. // res2.InfRefmsgid = resSix10265.InfRefmsgid
  7809. // // res2.Output = resSix10265.Output
  7810. // res2.ErrMsg = resSix10265.ErrMsg
  7811. // res2.Cainfo = resSix10265.Cainfo
  7812. // res2.WarnMsg = resSix10265.WarnMsg
  7813. // infocode, _ := strconv.ParseInt(resSix10265.Infcode, 10, 64)
  7814. // res2.Infcode = infocode
  7815. // } else {
  7816. // if err := json.Unmarshal(userJSONBytes2, &res2); err != nil {
  7817. // utils.ErrorLog("解析失败:%v", err)
  7818. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7819. // return
  7820. // }
  7821. // }
  7822. // }
  7823. //
  7824. // }
  7825. //
  7826. // if res2.Infcode != 0 {
  7827. // adminUser := c.GetAdminUserInfo()
  7828. // errlog := &models.HisOrderError{
  7829. // UserOrgId: adminUser.CurrentOrgId,
  7830. // Ctime: time.Now().Unix(),
  7831. // Mtime: time.Now().Unix(),
  7832. // ErrMsg: res2.ErrMsg,
  7833. // Status: 1,
  7834. // PatientId: id,
  7835. // RecordTime: recordDateTime,
  7836. // Stage: 3,
  7837. // }
  7838. // service.CreateErrMsgLog(errlog)
  7839. // c.ServeSuccessJSON(map[string]interface{}{
  7840. // "failed_code": -10,
  7841. // "msg": res2.ErrMsg,
  7842. // })
  7843. // return
  7844. //
  7845. // } else {
  7846. // his.Diagnosis = diagnosis_id
  7847. // his.SickType = sickConfig.ID
  7848. // his.PType = fmt.Sprintf("%d", reg_type)
  7849. // service.UpdateHisPatientThree(&his)
  7850. //
  7851. // data := make(map[string]interface{})
  7852. // if settle_accounts_type == 1 { //日结
  7853. // if reg_type == 11 || reg_type == 1111 || reg_type == 1112 {
  7854. // prescriptions, _ = service.GetPrescriptionByIds(ids_arr, adminUser.CurrentOrgId)
  7855. // } else {
  7856. // prescriptions, _ = service.GetNewHisPrescription(adminUser.CurrentOrgId, his_patient_id, recordDateTime, strconv.Itoa(int(reg_type)))
  7857. // }
  7858. // data["pre"] = prescriptions
  7859. // } else { //月结
  7860. // start_time_str := c.GetString("start_time")
  7861. // end_time_str := c.GetString("end_time")
  7862. // timeLayout := "2006-01-02"
  7863. // loc, _ := time.LoadLocation("Local")
  7864. // theStartTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time_str+" 00:00:00", loc)
  7865. // if err != nil {
  7866. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  7867. // return
  7868. // }
  7869. // recordStartTime := theStartTime.Unix()
  7870. // start_time = recordStartTime
  7871. // theEndTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time_str+" 00:00:00", loc)
  7872. // if err != nil {
  7873. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  7874. // return
  7875. // }
  7876. // recordEndTime := theEndTime.Unix()
  7877. // end_time = recordEndTime
  7878. // prescriptions, _ = service.GetMonthHisPrescriptionTwo(adminUser.CurrentOrgId, id, recordStartTime, recordEndTime, reg_type)
  7879. // data["pre"] = prescriptions
  7880. // }
  7881. //
  7882. // client := &http.Client{}
  7883. // data["psn_no"] = his.PsnNo
  7884. // data["mdtrt_id"] = his.Number
  7885. // data["chrg_bchno"] = chrg_bchno
  7886. // data["org_name"] = miConfig.OrgName
  7887. // data["doctor"] = roles.UserName
  7888. // data["doctor_id"] = strconv.FormatInt(roles.AdminUserId, 10)
  7889. // data["dept"] = strconv.FormatInt(patientPrescription.Departments, 10)
  7890. // data["fixmedins_code"] = miConfig.Code
  7891. // data["balance_accounts_type"] = strconv.FormatInt(his.BalanceAccountsType, 10)
  7892. //
  7893. // if (department.ID == 0 && adminUser.CurrentOrgId == 9919) || (department.ID == 0 && adminUser.CurrentOrgId == 10106) {
  7894. // data["dept_code"] = "15"
  7895. // } else {
  7896. // data["dept_code"] = department.Number
  7897. // }
  7898. //
  7899. // data["insuplc_admdvs"] = his.InsuplcAdmdvs
  7900. // data["mdtrtarea_admvs"] = miConfig.MdtrtareaAdmvs
  7901. // data["secret_key"] = miConfig.SecretKey
  7902. // data["url"] = miConfig.Url
  7903. // data["ak"] = miConfig.AccessKey
  7904. // data["new_doctor_name"] = patientPrescription.Doctor
  7905. // data["diag_code"] = sickConfig.CountryCode
  7906. // data["time_stamp"] = time_stamp
  7907. // data["cainfo"] = miConfig.Cainfo
  7908. //
  7909. // var ids []int64
  7910. //
  7911. // for _, item := range prescriptions {
  7912. // ids = append(ids, item.ID)
  7913. // }
  7914. // config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  7915. // if config.IsOpen == 1 { //对接了医保,走医保流程
  7916. // var res ResultFour
  7917. // var resFour10265 ResultFour10265
  7918. //
  7919. // if miConfig.MdtrtareaAdmvs == "421300" {
  7920. // bytesData, _ := json.Marshal(data)
  7921. // req, _ := http.NewRequest("POST", "http://192.168.124.4:9532/"+"hbyb/2204", bytes.NewReader(bytesData))
  7922. // resp, _ := client.Do(req)
  7923. // defer resp.Body.Close()
  7924. // body, ioErr := ioutil.ReadAll(resp.Body)
  7925. // if ioErr != nil {
  7926. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  7927. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7928. // return
  7929. // }
  7930. // var respJSON map[string]interface{}
  7931. // if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
  7932. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  7933. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7934. // return
  7935. // }
  7936. //
  7937. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  7938. // userJSONBytes, _ := json.Marshal(respJSON)
  7939. // fmt.Println("log")
  7940. // fmt.Println(string(userJSONBytes))
  7941. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  7942. // utils.ErrorLog("解析失败:%v", err)
  7943. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7944. // return
  7945. // }
  7946. //
  7947. // } else if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  7948. // bytesData, _ := json.Marshal(data)
  7949. // var req *http.Request
  7950. // if miConfig.MdtrtareaAdmvs == "320921" {
  7951. // req, _ = http.NewRequest("POST", "http://192.168.3.111:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  7952. //
  7953. // } else {
  7954. // req, _ = http.NewRequest("POST", "http://192.168.5.251:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  7955. // }
  7956. //
  7957. // resp, _ := client.Do(req)
  7958. // defer resp.Body.Close()
  7959. // body, ioErr := ioutil.ReadAll(resp.Body)
  7960. // if ioErr != nil {
  7961. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  7962. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7963. // return
  7964. // }
  7965. // var respJSON map[string]interface{}
  7966. // if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
  7967. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  7968. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7969. // return
  7970. // }
  7971. //
  7972. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  7973. // userJSONBytes, _ := json.Marshal(respJSON)
  7974. // fmt.Println("log")
  7975. // fmt.Println(string(userJSONBytes))
  7976. // if err := json.Unmarshal(userJSONBytes, &resFour10265); err != nil {
  7977. // utils.ErrorLog("解析失败:%v", err)
  7978. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  7979. // return
  7980. // }
  7981. //
  7982. // res.InfRefmsgid = resFour10265.InfRefmsgid
  7983. // res.Output = resFour10265.Output
  7984. // res.ErrMsg = resFour10265.ErrMsg
  7985. // res.Cainfo = resFour10265.Cainfo
  7986. // res.WarnMsg = resFour10265.WarnMsg
  7987. // infocode, _ := strconv.ParseInt(resFour10265.Infcode, 10, 64)
  7988. // res.Infcode = infocode
  7989. //
  7990. // } else {
  7991. //
  7992. // if miConfig.Code == "H15049901371" {
  7993. // result, request_log := service.Gdyb2204(his.PsnNo, his.Number, prescriptions, chrg_bchno, miConfig.OrgName, roles.UserName, data["dept"].(string), data["fixmedins_code"].(string), data["dept_code"].(string), data["doctor_id"].(string), his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, data["balance_accounts_type"].(string), patientPrescription.DoctorId, sickConfig.CountryCode)
  7994. // var dat map[string]interface{}
  7995. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  7996. // fmt.Println(dat)
  7997. // } else {
  7998. // fmt.Println(err)
  7999. // }
  8000. // saveLog(result, request_log, "2204", "上传费用明细")
  8001. //
  8002. // userJSONBytes, _ := json.Marshal(dat)
  8003. //
  8004. // if err := json.Unmarshal(userJSONBytes, &resFour10265); err != nil {
  8005. // utils.ErrorLog("解析失败:%v", err)
  8006. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8007. // return
  8008. // }
  8009. //
  8010. // res.InfRefmsgid = resFour10265.InfRefmsgid
  8011. // res.Output = resFour10265.Output
  8012. // res.ErrMsg = resFour10265.ErrMsg
  8013. // res.Cainfo = resFour10265.Cainfo
  8014. // res.WarnMsg = resFour10265.WarnMsg
  8015. // infocode, _ := strconv.ParseInt(resFour10265.Infcode, 10, 64)
  8016. // res.Infcode = infocode
  8017. //
  8018. // } else {
  8019. // result, request_log := service.Gdyb2204(his.PsnNo, his.Number, prescriptions, chrg_bchno, miConfig.OrgName, roles.UserName, data["dept"].(string), data["fixmedins_code"].(string), data["dept_code"].(string), data["doctor_id"].(string), miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, data["balance_accounts_type"].(string), patientPrescription.DoctorId, sickConfig.CountryCode)
  8020. // var dat map[string]interface{}
  8021. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  8022. // fmt.Println(dat)
  8023. // } else {
  8024. // fmt.Println(err)
  8025. // }
  8026. // saveLog(result, request_log, "2204", "上传费用明细")
  8027. //
  8028. // userJSONBytes, _ := json.Marshal(dat)
  8029. //
  8030. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  8031. // utils.ErrorLog("解析失败:%v", err)
  8032. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8033. // return
  8034. // }
  8035. //
  8036. // }
  8037. //
  8038. // }
  8039. //
  8040. // if res.Infcode == 0 {
  8041. // order := &models.HisOrder{
  8042. // UserOrgId: adminUser.CurrentOrgId,
  8043. // HisPatientId: his.ID,
  8044. // PatientId: his.PatientId,
  8045. // SettleAccountsDate: recordDateTime,
  8046. // Ctime: time.Now().Unix(),
  8047. // Mtime: time.Now().Unix(),
  8048. // MdtrtId: his.Number,
  8049. // PsnNo: his.PsnNo,
  8050. // MedType: strconv.FormatInt(reg_type, 10),
  8051. // Status: 1,
  8052. // Number: chrg_bchno,
  8053. // Infcode: res.Infcode,
  8054. // WarnMsg: res.WarnMsg,
  8055. // Cainfo: res.Cainfo,
  8056. // ErrMsg: res.ErrMsg,
  8057. // RespondTime: res.RefmsgTime,
  8058. // InfRefmsgid: res.InfRefmsgid,
  8059. // OrderStatus: 1,
  8060. // IsMedicineInsurance: 1,
  8061. // SettleType: settle_accounts_type,
  8062. // SettleStartTime: start_time,
  8063. // SettleEndTime: end_time,
  8064. // Creator: roles.AdminUserId,
  8065. // Modify: roles.AdminUserId,
  8066. // PType: 2,
  8067. // Diagnosis: diagnosis_id,
  8068. // }
  8069. //
  8070. // err = service.CreateOrder(order)
  8071. // if err != nil {
  8072. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeCreatePreOrderException)
  8073. // return
  8074. // }
  8075. //
  8076. // for _, item := range res.Output.Result {
  8077. // temp := strings.Split(item.FeedetlSn, "-")
  8078. // var advice_id int64 = 0
  8079. // var project_id int64 = 0
  8080. // var types int64 = 0
  8081. //
  8082. // id, _ := strconv.ParseInt(temp[2], 10, 64)
  8083. // types, _ = strconv.ParseInt(temp[1], 10, 64)
  8084. //
  8085. // if temp[1] == "1" {
  8086. // advice_id = id
  8087. // project_id = 0
  8088. // } else if temp[1] == "2" {
  8089. // advice_id = 0
  8090. // project_id = id
  8091. // }
  8092. //
  8093. // info := &models.HisOrderInfo{
  8094. // OrderNumber: order.Number,
  8095. // FeedetlSn: item.FeedetlSn,
  8096. // UploadDate: time.Now().Unix(),
  8097. // AdviceId: advice_id,
  8098. // DetItemFeeSumamt: item.DetItemFeeSumamt,
  8099. // Cnt: item.Cnt,
  8100. // Pric: float64(item.Pric),
  8101. // PatientId: his.PatientId,
  8102. // PricUplmtAmt: item.PricUplmtAmt,
  8103. // SelfpayProp: item.SelfpayProp,
  8104. // FulamtOwnpayAmt: item.FulamtOwnpayAmt,
  8105. // OverlmtAmt: item.OverlmtAmt,
  8106. // PreselfpayAmt: item.PreselfpayAmt,
  8107. // BasMednFlag: item.BasMednFlag,
  8108. // MedChrgitmType: item.MedChrgitmType,
  8109. // HiNegoDrugFlag: item.HiNegoDrugFlag,
  8110. // Status: 1,
  8111. // Memo: item.Memo,
  8112. // Mtime: time.Now().Unix(),
  8113. // InscpScpAmt: item.InscpScpAmt,
  8114. // DrtReimFlag: item.DrtReimFlag,
  8115. // Ctime: time.Now().Unix(),
  8116. // ListSpItemFlag: item.ListSpItemFlag,
  8117. // ChldMedcFlag: item.ChldMedcFlag,
  8118. // LmtUsedFlag: item.LmtUsedFlag,
  8119. // ChrgitmLv: item.ChrgitmLv,
  8120. // UserOrgId: adminUser.CurrentOrgId,
  8121. // HisPatientId: his.ID,
  8122. // OrderId: order.ID,
  8123. // ProjectId: project_id,
  8124. // Type: types,
  8125. // }
  8126. // service.CreateOrderInfo(info)
  8127. //
  8128. // }
  8129. // service.UpDatePrescriptionNumber(adminUser.CurrentOrgId, ids, chrg_bchno)
  8130. // service.UpDateHisPrescriptionInfoNumber(adminUser.CurrentOrgId, his_patient_id, chrg_bchno, recordDateTime)
  8131. //
  8132. // var total float64
  8133. // for _, item := range prescriptions {
  8134. // if item.Type == 1 { //药品
  8135. // for _, subItem := range item.HisDoctorAdviceInfo {
  8136. // total = total + (subItem.Price * subItem.PrescribingNumber)
  8137. // }
  8138. // }
  8139. // if item.Type == 2 { //项目
  8140. //
  8141. // for _, subItem := range item.HisPrescriptionProject {
  8142. // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
  8143. //
  8144. // total = total + (subItem.Price * cnt)
  8145. // }
  8146. // }
  8147. // }
  8148. //
  8149. // for _, item := range prescriptions {
  8150. // for _, subItem := range item.HisAdditionalCharge {
  8151. // total = total + (subItem.Price * float64(subItem.Count))
  8152. // }
  8153. // }
  8154. //
  8155. // allTotal := fmt.Sprintf("%.4f", total)
  8156. // if res.Infcode == 0 {
  8157. // var rf []*ResultFive
  8158. // json.Unmarshal([]byte(his.Iinfo), &rf)
  8159. // chrg_bchno := chrg_bchno
  8160. // cert_no := his.Certno
  8161. //
  8162. // var insutypes []string
  8163. //
  8164. // var insutype string
  8165. // var is390 int = 0
  8166. // var is310 int = 0
  8167. //
  8168. // for _, item := range rf {
  8169. // if (item.Insutype == "390" && item.PsnInsuStas == "1") || (item.Insutype == "310" && item.PsnInsuStas == "1") {
  8170. // insutypes = append(insutypes, item.Insutype)
  8171. // }
  8172. // }
  8173. //
  8174. // if len(insutypes) == 1 {
  8175. // insutype = insutypes[0]
  8176. // } else {
  8177. // for _, i := range insutypes {
  8178. // if i == "390" {
  8179. // is390 = 1
  8180. // }
  8181. //
  8182. // if i == "310" {
  8183. // is310 = 1
  8184. // }
  8185. // }
  8186. // }
  8187. // if is390 == 1 {
  8188. // insutype = "390"
  8189. // }
  8190. //
  8191. // if is310 == 1 {
  8192. // insutype = "310"
  8193. // }
  8194. //
  8195. // if len(insutypes) == 0 {
  8196. // insutype = "310"
  8197. // }
  8198. // if len(insutypes) == 2 {
  8199. // insutype = strconv.FormatInt(his.SocialType, 64)
  8200. // }
  8201. //
  8202. // //insutype = "390"
  8203. // if his.IdCardType == 1 {
  8204. // cert_no = his.MedicalInsuranceNumber
  8205. //
  8206. // } else {
  8207. //
  8208. // cert_no = his.Certno
  8209. //
  8210. // }
  8211. // var res models.GZResult2206
  8212. // var resSeven10265 ResultSeven10265
  8213. //
  8214. // if miConfig.MdtrtareaAdmvs == "421300" {
  8215. //
  8216. // api := "http://192.168.124.4:9532/" + "hbyb/2206?psn_no=" + his.PsnNo + "&mdtrt_id=" +
  8217. // his.Number + "&chrg_bchno=" + chrg_bchno + "&org_name=" + miConfig.OrgName +
  8218. // "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code +
  8219. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs +
  8220. // "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(his.IdCardType, 10) +
  8221. // "&certificates=" + strconv.FormatInt(his.IdType, 10) + "&cert_no=" + cert_no +
  8222. // "&insutype=" + insutype + "&total=" + allTotal + "&med_type=" + strconv.FormatInt(reg_type, 10)
  8223. // resp, requestErr := http.Get(api)
  8224. // if requestErr != nil {
  8225. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8226. // return
  8227. // }
  8228. //
  8229. // body, ioErr := ioutil.ReadAll(resp.Body)
  8230. // if ioErr != nil {
  8231. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  8232. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8233. // return
  8234. // }
  8235. // var respJSON map[string]interface{}
  8236. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  8237. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  8238. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8239. // return
  8240. // }
  8241. //
  8242. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  8243. // result, _ := json.Marshal(respJSON)
  8244. // fmt.Println("log")
  8245. // fmt.Println(string(result))
  8246. // if err := json.Unmarshal([]byte(result), &res); err != nil {
  8247. // utils.ErrorLog("解析失败:%v", err)
  8248. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8249. // return
  8250. // }
  8251. //
  8252. // } else if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  8253. // psn_info, _ := service.GetPsnByPatientId(his.PatientId)
  8254. // psn_info.VerifyNumber = strings.Replace(psn_info.VerifyNumber, "+", "%2B", -1)
  8255. //
  8256. // bas := strings.Split(psn_info.CardInfo, "|")
  8257. //
  8258. // if his.IdCardType == 1 {
  8259. // cert_no = bas[2]
  8260. // } else {
  8261. // cert_no = bas[1]
  8262. // }
  8263. // //江苏地区国家医保医疗类别
  8264. // //职工透析:医疗类别选特殊情况门诊9933
  8265. // //居民血透门慢: 医疗类别选门诊慢病1402
  8266. // //var med_type string
  8267. // //if his.Insutype == "310" {
  8268. // // if reg_type == 14 {
  8269. // // med_type = "9933"
  8270. // // } else if reg_type == 11 {
  8271. // // med_type = "11"
  8272. // //
  8273. // // }
  8274. // //} else if his.Insutype == "390" {
  8275. // // if reg_type == 14 {
  8276. // // med_type = "1402"
  8277. // // } else if reg_type == 11 {
  8278. // // med_type = "11"
  8279. // // }
  8280. // //}
  8281. //
  8282. // var api string
  8283. //
  8284. // if miConfig.MdtrtareaAdmvs == "320921" {
  8285. // api = "http://192.168.3.111:9532/" + "jsyb/2206?psn_no=" + his.PsnNo + "&mdtrt_id=" +
  8286. // his.Number + "&chrg_bchno=" + chrg_bchno + "&org_name=" + miConfig.OrgName +
  8287. // "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code +
  8288. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs +
  8289. // "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(his.IdCardType, 10) +
  8290. // "&certificates=" + strconv.FormatInt(his.IdType, 10) + "&cert_no=" + cert_no +
  8291. // "&insutype=" + insutype + "&total=" + allTotal + "&med_type=" + strconv.FormatInt(reg_type, 10) + "&verify_number=" + psn_info.VerifyNumber + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&cainfo=" + miConfig.Cainfo
  8292. //
  8293. // //req, _ = http.NewRequest("POST", "http://192.168.3.111:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  8294. //
  8295. // } else {
  8296. // //req, _ = http.NewRequest("POST", "http://192.168.5.251:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  8297. // api = "http://192.168.5.251:9532/" + "jsyb/2206?psn_no=" + his.PsnNo + "&mdtrt_id=" +
  8298. // his.Number + "&chrg_bchno=" + chrg_bchno + "&org_name=" + miConfig.OrgName +
  8299. // "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code +
  8300. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs +
  8301. // "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(his.IdCardType, 10) +
  8302. // "&certificates=" + strconv.FormatInt(his.IdType, 10) + "&cert_no=" + cert_no +
  8303. // "&insutype=" + insutype + "&total=" + allTotal + "&med_type=" + strconv.FormatInt(reg_type, 10) + "&verify_number=" + psn_info.VerifyNumber + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&cainfo=" + miConfig.Cainfo
  8304. //
  8305. // }
  8306. //
  8307. // resp, requestErr := http.Get(api)
  8308. // if requestErr != nil {
  8309. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8310. // return
  8311. // }
  8312. //
  8313. // body, ioErr := ioutil.ReadAll(resp.Body)
  8314. // if ioErr != nil {
  8315. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  8316. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8317. // return
  8318. // }
  8319. // var respJSON map[string]interface{}
  8320. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  8321. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  8322. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8323. // return
  8324. // }
  8325. //
  8326. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  8327. // result, _ := json.Marshal(respJSON)
  8328. // fmt.Println("log")
  8329. // fmt.Println(string(result))
  8330. // if err := json.Unmarshal([]byte(result), &resSeven10265); err != nil {
  8331. // utils.ErrorLog("解析失败:%v", err)
  8332. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8333. // return
  8334. // }
  8335. //
  8336. // res.InfRefmsgid = resSeven10265.InfRefmsgid
  8337. // // res.Output = resSeven10265.Output
  8338. // res.ErrMsg = resSeven10265.ErrMsg
  8339. // res.Cainfo = resSeven10265.Cainfo
  8340. // // res.WarnMsg = resSeven10265.WarnMsg
  8341. // // infocode, _ := strconv.ParseInt(resSeven10265.Infcode, 10, 64)
  8342. // // res.Infcode = infocode
  8343. //
  8344. // } else {
  8345. //
  8346. // var result string
  8347. // var request_log string
  8348. // if miConfig.Code == "H15049901371" {
  8349. // //赤峰地区国家医保医疗类别
  8350. // //职工透析:医疗类别选特殊情况门诊990502
  8351. // //居民定额血透门慢: 医疗类别选门诊慢病140104
  8352. // var med_type string
  8353. // if his.Insutype == "390" {
  8354. // if reg_type == 14 {
  8355. // med_type = "9933"
  8356. // } else if reg_type == 11 {
  8357. // med_type = "11"
  8358. // }
  8359. // } else if his.Insutype == "310" {
  8360. // if reg_type == 14 {
  8361. // med_type = "990502"
  8362. // } else if reg_type == 11 {
  8363. // med_type = "11"
  8364. // }
  8365. // }
  8366. // result, request_log = service.Gdyb2206(his.PsnNo, his.Number, chrg_bchno, cert_no, insutype, allTotal, miConfig.OrgName, roles.UserName, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, med_type, his.IdCardType, 0, 0, 0, 0, his.IdType)
  8367. // } else {
  8368. // var med_type string
  8369. //
  8370. // if reg_type == 14 {
  8371. // med_type = "141009"
  8372. // } else if reg_type == 11 {
  8373. // med_type = "11"
  8374. // }
  8375. // result, request_log = service.Gdyb2206(his.PsnNo, his.Number, chrg_bchno, cert_no, insutype, allTotal, miConfig.OrgName, roles.UserName, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, med_type, his.IdCardType, 0, 0, 0, 0, his.IdType)
  8376. // }
  8377. //
  8378. // var dat map[string]interface{}
  8379. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  8380. // fmt.Println(dat)
  8381. // } else {
  8382. // fmt.Println(err)
  8383. // }
  8384. // saveLog(result, request_log, "2206", "预结算")
  8385. // //userJSONBytes, _ := json.Marshal(dat)
  8386. // //
  8387. // //if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  8388. // // utils.ErrorLog("解析失败:%v", err)
  8389. // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8390. // // return
  8391. // //}
  8392. //
  8393. // userJSONBytes, _ := json.Marshal(dat)
  8394. // if miConfig.Code == "H15049901371" {
  8395. // if err := json.Unmarshal(userJSONBytes, &resSeven10265); err != nil {
  8396. // utils.ErrorLog("解析失败:%v", err)
  8397. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8398. // return
  8399. // }
  8400. // res.InfRefmsgid = resSeven10265.InfRefmsgid
  8401. // // res.Output = resSeven10265.Output
  8402. // res.ErrMsg = resSeven10265.ErrMsg
  8403. // res.Cainfo = resSeven10265.Cainfo
  8404. // // res.WarnMsg = resSeven10265.WarnMsg
  8405. // // infocode, _ := strconv.ParseInt(resSeven10265.Infcode, 10, 64)
  8406. // // res.Infcode = infocode
  8407. // } else {
  8408. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  8409. // utils.ErrorLog("解析失败:%v", err)
  8410. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8411. // return
  8412. // }
  8413. // }
  8414. // }
  8415. //
  8416. // if res.Infcode != 0 {
  8417. // errlog := &models.HisOrderError{
  8418. // UserOrgId: adminUser.CurrentOrgId,
  8419. // Ctime: time.Now().Unix(),
  8420. // Mtime: time.Now().Unix(),
  8421. // Number: chrg_bchno,
  8422. // ErrMsg: res.ErrMsg,
  8423. // Status: 1,
  8424. // PatientId: id,
  8425. // RecordTime: recordDateTime,
  8426. // Stage: 20,
  8427. // }
  8428. // service.CreateErrMsgLog(errlog)
  8429. // c.ServeSuccessJSON(map[string]interface{}{
  8430. // "failed_code": -10,
  8431. // "msg": res.ErrMsg,
  8432. // })
  8433. // return
  8434. // } else {
  8435. // order, _ := service.GetHisOrderTwo(adminUser.CurrentOrgId, chrg_bchno, id)
  8436. // order.OrderStatus = 1
  8437. // order.IsPre = 1
  8438. // order.Status = 1
  8439. // order.MdtrtId = res.Output.Setlinfo.MdtrtID
  8440. // // order.SetlId = res.Output.Setlinfo.SetlID
  8441. // order.PsnNo = res.Output.Setlinfo.PsnNo
  8442. // order.PsnName = res.Output.Setlinfo.PsnName
  8443. // order.PsnCertType = res.Output.Setlinfo.PsnCertType
  8444. // order.Certno = res.Output.Setlinfo.Certno
  8445. // order.Gend = res.Output.Setlinfo.Gend
  8446. // order.Naty = res.Output.Setlinfo.Naty
  8447. // order.Age = res.Output.Setlinfo.Age
  8448. // order.Insutype = res.Output.Setlinfo.Insutype
  8449. // order.PsnType = res.Output.Setlinfo.PsnType
  8450. // order.CvlservFlag = res.Output.Setlinfo.CvlservFlag
  8451. // order.SetlTime = res.Output.Setlinfo.SetlTime
  8452. // order.MdtrtCertType = res.Output.Setlinfo.MdtrtCertType
  8453. // if res.Output.Setlinfo.MedType == "140101" {
  8454. // order.MedType = "14"
  8455. //
  8456. // } else {
  8457. // order.MedType = res.Output.Setlinfo.MedType
  8458. // }
  8459. // if reg_type == 1112 {
  8460. // order.MedType = "1112"
  8461. // }
  8462. // if reg_type == 1111 {
  8463. // order.MedType = "1111"
  8464. // }
  8465. // order.MedfeeSumamt = res.Output.Setlinfo.MedfeeSumamt
  8466. // order.FulamtOwnpayAmt = res.Output.Setlinfo.FulamtOwnpayAmt
  8467. // order.OverlmtSelfPay = res.Output.Setlinfo.OverlmtSelfpay
  8468. // order.PreselfpayAmt = res.Output.Setlinfo.PreselfpayAmt
  8469. // order.InscpScpAmt = res.Output.Setlinfo.InscpScpAmt
  8470. // order.ActPayDedc = res.Output.Setlinfo.ActPayDedc
  8471. // order.HifpPay = res.Output.Setlinfo.HifpPay
  8472. // order.CvlservPay = res.Output.Setlinfo.CvlservPay
  8473. // // order.PoolPropSelfpay = res.Output.Setlinfo.PoolPropSelfpay
  8474. // order.HifesPay = res.Output.Setlinfo.HifesPay
  8475. // order.HifobPay = res.Output.Setlinfo.HifobPay
  8476. // order.MafPay = res.Output.Setlinfo.MafPay
  8477. // order.HifmiPay = res.Output.Setlinfo.HifmiPay
  8478. // order.OthPay = res.Output.Setlinfo.OthPay
  8479. // order.FundPaySumamt = res.Output.Setlinfo.FundPaySumamt
  8480. // // order.PsnPartAmt = res.Output.Setlinfo.PsnPartAmt
  8481. // order.AcctPay = res.Output.Setlinfo.AcctPay
  8482. // order.PsnCashPay = res.Output.Setlinfo.PsnCashPay
  8483. // order.HospPartAmt = res.Output.Setlinfo.HospPartAmt
  8484. // order.Balc = res.Output.Setlinfo.Balc
  8485. // order.AcctMulaidPay = res.Output.Setlinfo.AcctMulaidPay
  8486. // order.MedinsSetlId = res.Output.Setlinfo.MedinsSetlID
  8487. // order.ClrOptins = res.Output.Setlinfo.ClrOptins
  8488. // order.ClrWay = res.Output.Setlinfo.ClrWay
  8489. // order.Creator = order.Creator
  8490. // order.Modify = roles.AdminUserId
  8491. // setlDetail, _ := json.Marshal(res.Output.Setldetail)
  8492. // detailStr := string(setlDetail)
  8493. // order.SetlDetail = detailStr
  8494. // //err := service.UpdataOrderStatusTwo(chrg_bchno, adminUser.CurrentOrgId)
  8495. // err = service.UpDateOrder(order)
  8496. // if err == nil {
  8497. // c.ServeSuccessJSON(map[string]interface{}{
  8498. // "msg": "预结算成功",
  8499. // })
  8500. // } else {
  8501. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeAmountAccountException)
  8502. // return
  8503. // }
  8504. // }
  8505. // } else {
  8506. // adminUser := c.GetAdminUserInfo()
  8507. // errlog := &models.HisOrderError{
  8508. // UserOrgId: adminUser.CurrentOrgId,
  8509. // Ctime: time.Now().Unix(),
  8510. // Mtime: time.Now().Unix(),
  8511. // ErrMsg: res.ErrMsg,
  8512. // Status: 1,
  8513. // PatientId: id,
  8514. // RecordTime: recordDateTime,
  8515. // Stage: 4,
  8516. // }
  8517. // service.CreateErrMsgLog(errlog)
  8518. //
  8519. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeRegisterRepeatException)
  8520. // return
  8521. // }
  8522. // } else {
  8523. // adminUser := c.GetAdminUserInfo()
  8524. // errlog := &models.HisOrderError{
  8525. // UserOrgId: adminUser.CurrentOrgId,
  8526. // Ctime: time.Now().Unix(),
  8527. // Mtime: time.Now().Unix(),
  8528. // ErrMsg: res.ErrMsg,
  8529. // Status: 1,
  8530. // PatientId: id,
  8531. // RecordTime: recordDateTime,
  8532. // Stage: 4,
  8533. // }
  8534. // service.CreateErrMsgLog(errlog)
  8535. // c.ServeSuccessJSON(map[string]interface{}{
  8536. // "failed_code": -10,
  8537. // "msg": res.ErrMsg,
  8538. // })
  8539. // return
  8540. // }
  8541. // }
  8542. // }
  8543. //}
  8544. //
  8545. ////func (c *HisApiController) GetSettleInfo() {
  8546. //// id, _ := c.GetInt64("id")
  8547. //// order_id, _ := c.GetInt64("order_id")
  8548. ////
  8549. //// record_time := c.GetString("record_time")
  8550. //// pay_way, _ := c.GetInt64("pay_way")
  8551. //// pay_price, _ := c.GetFloat("pay_price")
  8552. //// pay_card_no := c.GetString("pay_card_no")
  8553. //// discount_price, _ := c.GetFloat("discount_price")
  8554. //// preferential_price, _ := c.GetFloat("preferential_price")
  8555. //// reality_price, _ := c.GetFloat("reality_price")
  8556. //// found_price, _ := c.GetFloat("found_price")
  8557. //// medical_insurance_price, _ := c.GetFloat("medical_insurance_price")
  8558. //// private_price, _ := c.GetFloat("private_price")
  8559. //// settle_accounts_type, _ := c.GetInt64("settle_accounts_type")
  8560. //// admin_user_id, _ := c.GetInt64("admin_user_id")
  8561. ////
  8562. //// timeLayout := "2006-01-02"
  8563. //// loc, _ := time.LoadLocation("Local")
  8564. //// theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_time+" 00:00:00", loc)
  8565. //// if err != nil {
  8566. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  8567. //// return
  8568. //// }
  8569. //// recordDateTime := theTime.Unix()
  8570. //// adminUser := c.GetAdminUserInfo()
  8571. ////
  8572. //// var prescriptions []*models.HisPrescription
  8573. ////
  8574. //// data := make(map[string]interface{})
  8575. //// if settle_accounts_type == 1 { //日结
  8576. //// prescriptions, _ = service.GetHisPrescription(adminUser.CurrentOrgId, id, recordDateTime)
  8577. //// data["pre"] = prescriptions
  8578. ////
  8579. //// } else { //月结
  8580. //// start_time_str := c.GetString("start_time")
  8581. //// end_time_str := c.GetString("end_time")
  8582. //// timeLayout := "2006-01-02"
  8583. //// loc, _ := time.LoadLocation("Local")
  8584. //// theStartTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time_str+" 00:00:00", loc)
  8585. //// if err != nil {
  8586. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  8587. //// return
  8588. //// }
  8589. //// recordStartTime := theStartTime.Unix()
  8590. //// theEndTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time_str+" 00:00:00", loc)
  8591. //// if err != nil {
  8592. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  8593. //// return
  8594. //// }
  8595. //// recordEndTime := theEndTime.Unix()
  8596. //// prescriptions, _ = service.GetMonthHisPrescription(adminUser.CurrentOrgId, id, recordStartTime, recordEndTime)
  8597. //// data["pre"] = prescriptions
  8598. ////
  8599. //// }
  8600. ////
  8601. //// roles, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  8602. ////
  8603. //// his, _ := service.GetVMHisPatientInfo(adminUser.CurrentOrgId, id, recordDateTime)
  8604. //// miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  8605. //// patientPrescription, _ := service.FindPatientPrescriptionInfo(adminUser.CurrentOrgId, id, recordDateTime)
  8606. //// strconv.FormatInt(his.PatientId, 10)
  8607. ////
  8608. //// order_src, _ := service.GetHisOrderByID(order_id)
  8609. ////
  8610. //// config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  8611. //// if config.IsOpen == 1 { //对接了医保,走医保流程
  8612. ////
  8613. //// var total float64
  8614. //// for _, item := range prescriptions {
  8615. //// if item.Type == 1 { //药品
  8616. //// for _, subItem := range item.HisDoctorAdviceInfo {
  8617. //// total = total + (subItem.Price * subItem.PrescribingNumber)
  8618. //// }
  8619. //// }
  8620. //// if item.Type == 2 { //项目
  8621. //// for _, subItem := range item.HisPrescriptionProject {
  8622. //// total = total + (subItem.Price * float64(subItem.Count))
  8623. //// }
  8624. //// }
  8625. //// }
  8626. ////
  8627. //// for _, item := range prescriptions {
  8628. //// for _, subItem := range item.HisAdditionalCharge {
  8629. //// total = total + (subItem.Price * float64(subItem.Count))
  8630. //// }
  8631. //// }
  8632. ////
  8633. //// allTotal := fmt.Sprintf("%.2f", total)
  8634. //// var rf []*ResultFive
  8635. //// json.Unmarshal([]byte(his.Iinfo), &rf)
  8636. //// psn_no := order_src.PsnNo
  8637. //// mdtrt_id := order_src.MdtrtId
  8638. //// chrg_bchno := order_src.Number
  8639. //// cert_no := order_src.Certno
  8640. //// insutype := rf[0].Insutype
  8641. ////
  8642. //// if his.IdCardType == 1 {
  8643. //// cert_no = his.MedicalInsuranceNumber
  8644. //// } else {
  8645. //// cert_no = his.Certno
  8646. //// }
  8647. ////
  8648. //// result, src_resquest := service.Gdyb2207(his.PsnNo, his.Number, chrg_bchno, cert_no, insutype, strconv.FormatFloat(total, 'E', -1, 64) ,miConfig.OrgName,roles.UserName,miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, strconv.FormatInt(patientPrescription.RegisterType, 10),his.IdCardType, order_src.FulamtOwnpayAmt,order_src.OverlmtSelfPay,order_src.PreselfpayAmt,order_src.InscpScpAmt)
  8649. //// var dat map[string]interface{}
  8650. //// if err := json.Unmarshal([]byte(result), &dat); err == nil {
  8651. //// fmt.Println(dat)
  8652. //// } else {
  8653. //// fmt.Println(err)
  8654. //// }
  8655. ////
  8656. //// userJSONBytes, _ := json.Marshal(dat)
  8657. ////
  8658. ////
  8659. ////
  8660. //// var res ResultSeven
  8661. //// if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  8662. //// utils.ErrorLog("解析失败:%v", err)
  8663. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8664. //// return
  8665. //// }
  8666. //// if res.Infcode == -1 {
  8667. //// errlog := &models.HisOrderError{
  8668. //// UserOrgId: adminUser.CurrentOrgId,
  8669. //// Ctime: time.Now().Unix(),
  8670. //// Mtime: time.Now().Unix(),
  8671. //// Number: chrg_bchno,
  8672. //// ErrMsg: res.ErrMsg,
  8673. //// Status: 1,
  8674. //// PatientId: id,
  8675. //// RecordTime: recordDateTime,
  8676. //// Stage: 6,
  8677. //// }
  8678. //// service.CreateErrMsgLog(errlog)
  8679. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeRegisterRepeatException)
  8680. //// return
  8681. //// } else {
  8682. //// order_src.OrderStatus = 2
  8683. //// order_src.PayWay = pay_way
  8684. //// order_src.PayPrice = pay_price
  8685. //// order_src.PayCardNo = pay_card_no
  8686. //// order_src.DiscountPrice = discount_price
  8687. //// order_src.PreferentialPrice = preferential_price
  8688. //// order_src.RealityPrice = reality_price
  8689. //// order_src.FoundPrice = found_price
  8690. //// order_src.MedicalInsurancePrice = medical_insurance_price
  8691. //// order_src.PrivatePrice = private_price
  8692. //// order_src.MdtrtId = res.Output.Setlinfo.MdtrtID
  8693. //// order_src.SetlId = res.Output.Setlinfo.SetlID
  8694. //// order_src.PsnNo = res.Output.Setlinfo.PsnNo
  8695. //// order_src.PsnName = res.Output.Setlinfo.PsnName
  8696. //// order_src.PsnCertType = res.Output.Setlinfo.PsnCertType
  8697. //// order_src.Certno = res.Output.Setlinfo.Certno
  8698. //// order_src.Gend = res.Output.Setlinfo.Gend
  8699. //// order_src.Naty = res.Output.Setlinfo.Naty
  8700. //// order_src.Age = res.Output.Setlinfo.Age
  8701. //// order_src.Insutype = res.Output.Setlinfo.Insutype
  8702. //// order_src.PsnType = res.Output.Setlinfo.PsnType
  8703. //// order_src.CvlservFlag = res.Output.Setlinfo.CvlservFlag
  8704. //// order_src.SetlTime = res.Output.Setlinfo.SetlTime
  8705. //// order_src.MdtrtCertType = res.Output.Setlinfo.MdtrtCertType
  8706. //// order_src.MedType = res.Output.Setlinfo.MedType
  8707. //// order_src.MedfeeSumamt = res.Output.Setlinfo.MedfeeSumamt
  8708. //// order_src.FulamtOwnpayAmt = res.Output.Setlinfo.FulamtOwnpayAmt
  8709. //// order_src.OverlmtSelfPay = res.Output.Setlinfo.OverlmtSelfpay
  8710. //// order_src.PreselfpayAmt = res.Output.Setlinfo.PreselfpayAmt
  8711. //// order_src.InscpScpAmt = res.Output.Setlinfo.InscpScpAmt
  8712. //// order_src.ActPayDedc = res.Output.Setlinfo.ActPayDedc
  8713. //// order_src.HifpPay = res.Output.Setlinfo.HifpPay
  8714. //// order_src.CvlservPay = res.Output.Setlinfo.CvlservPay
  8715. //// order_src.PoolPropSelfpay = res.Output.Setlinfo.PoolPropSelfpay
  8716. //// order_src.HifesPay = res.Output.Setlinfo.HifesPay
  8717. //// order_src.HifobPay = res.Output.Setlinfo.HifobPay
  8718. //// order_src.MafPay = res.Output.Setlinfo.MafPay
  8719. //// order_src.OthPay = res.Output.Setlinfo.OthPay
  8720. //// order_src.FundPaySumamt = res.Output.Setlinfo.FundPaySumamt
  8721. //// order_src.PsnPartAmt = res.Output.Setlinfo.PsnPartAmt
  8722. //// order_src.AcctPay = res.Output.Setlinfo.AcctPay
  8723. //// order_src.PsnCashPay = res.Output.Setlinfo.PsnCashPay
  8724. //// order_src.HospPartAmt = res.Output.Setlinfo.HospPartAmt
  8725. //// order_src.Balc = res.Output.Setlinfo.Balc
  8726. //// order_src.AcctMulaidPay = res.Output.Setlinfo.AcctMulaidPay
  8727. //// order_src.MedinsSetlId = res.Output.Setlinfo.MedinsSetlID
  8728. //// order_src.ClrOptins = res.Output.Setlinfo.ClrOptins
  8729. //// order_src.ClrWay = res.Output.Setlinfo.ClrWay
  8730. //// order_src.Creator = order_src.Creator
  8731. //// order_src.Modify = roles.ID
  8732. //// order_src.RequestLog = src_resquest
  8733. //// setlDetail, _ := json.Marshal(res.Output.Setldetail)
  8734. //// detailStr := string(setlDetail)
  8735. //// order_src.SetlDetail = detailStr
  8736. //// err = service.UpdataOrderStatusTwo(chrg_bchno, adminUser.CurrentOrgId)
  8737. //// err = service.UpDateOrder(order_src)
  8738. ////
  8739. //// if err == nil {
  8740. //// c.ServeSuccessJSON(map[string]interface{}{
  8741. //// "msg": "结算成功",
  8742. //// })
  8743. //// } else {
  8744. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeAmountAccountException)
  8745. //// return
  8746. //// }
  8747. //// }
  8748. //// }
  8749. ////}
  8750. //
  8751. ////退款
  8752. //func (c *HisApiController) Refund() {
  8753. // order_id, _ := c.GetInt64("order_id")
  8754. // admin_user_id, _ := c.GetInt64("admin_user_id")
  8755. // adminUser := c.GetAdminUserInfo()
  8756. // var order models.HisOrder
  8757. // order, _ = service.GetHisOrderByID(order_id)
  8758. // roles, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  8759. // if order.ID == 0 {
  8760. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  8761. // return
  8762. // }
  8763. // his, _ := service.GetHisPatientByNumber(order.MdtrtId)
  8764. //
  8765. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  8766. // config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  8767. // if config.IsOpen == 1 { //对接了医保,走医保流程
  8768. // var res ResultFourteen
  8769. // var resSixteen10265 ResultSixteen10265
  8770. // var src_resquest string
  8771. // var result string
  8772. //
  8773. // if miConfig.MdtrtareaAdmvs == "421300" {
  8774. // api3 := "http://192.168.124.4:9532/" + "hbyb/2208?psn_no=" + order.PsnNo +
  8775. // "&mdtrt_id=" + order.MdtrtId + "&setl_id=" + order.SetlId + "&doctor=" + roles.UserName + "&org_name=" + miConfig.OrgName + "&fixmedins_code=" + miConfig.Code +
  8776. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey
  8777. // resp3, requestErr3 := http.Get(api3)
  8778. // if requestErr3 != nil {
  8779. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8780. // return
  8781. // }
  8782. // body3, ioErr3 := ioutil.ReadAll(resp3.Body)
  8783. // if ioErr3 != nil {
  8784. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr3)
  8785. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8786. // return
  8787. // }
  8788. // var respJSON3 map[string]interface{}
  8789. // if err := json.Unmarshal([]byte(string(body3)), &respJSON3); err != nil {
  8790. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  8791. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8792. // return
  8793. // }
  8794. //
  8795. // respJSON3 = respJSON3["data"].(map[string]interface{})["pre"].(map[string]interface{})
  8796. // userJSONBytes3, _ := json.Marshal(respJSON3)
  8797. // fmt.Println("log")
  8798. // fmt.Println(string(userJSONBytes3))
  8799. // if err := json.Unmarshal(userJSONBytes3, &res); err != nil {
  8800. // utils.ErrorLog("解析失败:%v", err)
  8801. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8802. // return
  8803. // }
  8804. //
  8805. // } else if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  8806. //
  8807. // var api3 string
  8808. // if miConfig.MdtrtareaAdmvs == "320921" {
  8809. // api3 = "http://192.168.3.111:9532/" + "jsyb/2208?psn_no=" + order.PsnNo +
  8810. // "&mdtrt_id=" + order.MdtrtId + "&setl_id=" + order.SetlId + "&doctor=" + roles.UserName + "&org_name=" + miConfig.OrgName + "&fixmedins_code=" + miConfig.Code +
  8811. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&cainfo=" + miConfig.Cainfo
  8812. //
  8813. // //req, _ = http.NewRequest("POST", "http://192.168.3.111:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  8814. //
  8815. // } else {
  8816. // //req, _ = http.NewRequest("POST", "http://192.168.5.251:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  8817. // api3 = "http://192.168.5.251:9532/" + "jsyb/2208?psn_no=" + order.PsnNo +
  8818. // "&mdtrt_id=" + order.MdtrtId + "&setl_id=" + order.SetlId + "&doctor=" + roles.UserName + "&org_name=" + miConfig.OrgName + "&fixmedins_code=" + miConfig.Code +
  8819. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&cainfo=" + miConfig.Cainfo
  8820. //
  8821. // }
  8822. //
  8823. // resp3, requestErr3 := http.Get(api3)
  8824. // if requestErr3 != nil {
  8825. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8826. // return
  8827. // }
  8828. // body3, ioErr3 := ioutil.ReadAll(resp3.Body)
  8829. // if ioErr3 != nil {
  8830. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr3)
  8831. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8832. // return
  8833. // }
  8834. // var respJSON3 map[string]interface{}
  8835. // if err := json.Unmarshal([]byte(string(body3)), &respJSON3); err != nil {
  8836. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  8837. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8838. // return
  8839. // }
  8840. //
  8841. // respJSON3 = respJSON3["data"].(map[string]interface{})["pre"].(map[string]interface{})
  8842. // userJSONBytes3, _ := json.Marshal(respJSON3)
  8843. // if err := json.Unmarshal(userJSONBytes3, &resSixteen10265); err != nil {
  8844. // utils.ErrorLog("解析失败:%v", err)
  8845. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8846. // return
  8847. // }
  8848. //
  8849. // res.InfRefmsgid = resSixteen10265.InfRefmsgid
  8850. // // res.Output = resSixteen10265.Output
  8851. // res.ErrMsg = resSixteen10265.ErrMsg
  8852. // // res.Cainfo = resSixteen10265.Cainfo
  8853. // // res.WarnMsg = resSixteen10265.WarnMsg
  8854. // // infocode, _ := strconv.ParseInt(resSixteen10265.Infcode, 10, 64)
  8855. // // res.Infcode = infocode
  8856. //
  8857. // } else {
  8858. //
  8859. // if miConfig.Code == "H15049901371" {
  8860. // result, src_resquest = service.Gdyb2208(order.PsnNo, order.MdtrtId, order.SetlId, miConfig.OrgName, roles.UserName, miConfig.SecretKey, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs)
  8861. // var dat map[string]interface{}
  8862. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  8863. // fmt.Println(dat)
  8864. // } else {
  8865. // fmt.Println(err)
  8866. // }
  8867. // saveLog(result, src_resquest, "2208", "退费")
  8868. //
  8869. // userJSONBytes, _ := json.Marshal(dat)
  8870. //
  8871. // if err := json.Unmarshal(userJSONBytes, &resSixteen10265); err != nil {
  8872. // utils.ErrorLog("解析失败:%v", err)
  8873. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8874. // return
  8875. // }
  8876. // res.InfRefmsgid = resSixteen10265.InfRefmsgid
  8877. // // res.Output = resSixteen10265.Output
  8878. // res.ErrMsg = resSixteen10265.ErrMsg
  8879. // // res.Cainfo = resSixteen10265.Cainfo
  8880. // // res.WarnMsg = resSixteen10265.WarnMsg
  8881. // infocode, _ := strconv.ParseInt(resSixteen10265.Infcode, 10, 64)
  8882. // res.Infcode = infocode
  8883. // } else {
  8884. // result, src_resquest = service.Gdyb2208(order.PsnNo, order.MdtrtId, order.SetlId, miConfig.OrgName, roles.UserName, miConfig.SecretKey, miConfig.Code, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs)
  8885. // var dat map[string]interface{}
  8886. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  8887. // fmt.Println(dat)
  8888. // } else {
  8889. // fmt.Println(err)
  8890. // }
  8891. // saveLog(result, src_resquest, "2208", "退费")
  8892. //
  8893. // userJSONBytes, _ := json.Marshal(dat)
  8894. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  8895. // utils.ErrorLog("解析失败:%v", err)
  8896. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8897. // return
  8898. // }
  8899. //
  8900. // }
  8901. //
  8902. // }
  8903. //
  8904. // if res.Infcode == 0 {
  8905. // var res2 ResultSix
  8906. // var resSix10265 ResultSix10265
  8907. //
  8908. // if miConfig.MdtrtareaAdmvs == "421300" {
  8909. //
  8910. // api3 := "http://192.168.124.4:9532/" + "hbyb/2205?psn_no=" + order.PsnNo +
  8911. // "&mdtrt_id=" + order.MdtrtId + "&chrg_bchno=" + order.Number + "&doctor=" + roles.UserName + "&org_name=" + miConfig.OrgName + "&fixmedins_code=" + miConfig.Code +
  8912. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey
  8913. // resp3, requestErr3 := http.Get(api3)
  8914. // if requestErr3 != nil {
  8915. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8916. // return
  8917. // }
  8918. // body3, ioErr3 := ioutil.ReadAll(resp3.Body)
  8919. // if ioErr3 != nil {
  8920. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr3)
  8921. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8922. // return
  8923. // }
  8924. // var respJSON3 map[string]interface{}
  8925. // if err := json.Unmarshal([]byte(string(body3)), &respJSON3); err != nil {
  8926. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  8927. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8928. // return
  8929. // }
  8930. //
  8931. // respJSON3 = respJSON3["data"].(map[string]interface{})["pre"].(map[string]interface{})
  8932. // userJSONBytes3, _ := json.Marshal(respJSON3)
  8933. // fmt.Println("log")
  8934. // fmt.Println(string(userJSONBytes3))
  8935. // if err := json.Unmarshal(userJSONBytes3, &res2); err != nil {
  8936. // utils.ErrorLog("解析失败:%v", err)
  8937. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8938. // return
  8939. // }
  8940. //
  8941. // } else if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  8942. // var api3 string
  8943. // if miConfig.MdtrtareaAdmvs == "320921" {
  8944. // api3 = "http://192.168.3.111:9532/" + "jsyb/2205?psn_no=" + order.PsnNo +
  8945. // "&mdtrt_id=" + order.MdtrtId + "&chrg_bchno=" + order.Number + "&doctor=" + roles.UserName + "&org_name=" + miConfig.OrgName + "&fixmedins_code=" + miConfig.Code +
  8946. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&cainfo=" + miConfig.Cainfo
  8947. //
  8948. // //req, _ = http.NewRequest("POST", "http://192.168.3.111:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  8949. //
  8950. // } else {
  8951. // //req, _ = http.NewRequest("POST", "http://192.168.5.251:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  8952. // api3 = "http://192.168.5.251:9532/" + "jsyb/2205?psn_no=" + order.PsnNo +
  8953. // "&mdtrt_id=" + order.MdtrtId + "&chrg_bchno=" + order.Number + "&doctor=" + roles.UserName + "&org_name=" + miConfig.OrgName + "&fixmedins_code=" + miConfig.Code +
  8954. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&cainfo=" + miConfig.Cainfo
  8955. //
  8956. // }
  8957. //
  8958. // resp3, requestErr3 := http.Get(api3)
  8959. // if requestErr3 != nil {
  8960. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8961. // return
  8962. // }
  8963. // body3, ioErr3 := ioutil.ReadAll(resp3.Body)
  8964. // if ioErr3 != nil {
  8965. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr3)
  8966. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8967. // return
  8968. // }
  8969. // var respJSON3 map[string]interface{}
  8970. // if err := json.Unmarshal([]byte(string(body3)), &respJSON3); err != nil {
  8971. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  8972. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8973. // return
  8974. // }
  8975. //
  8976. // respJSON3 = respJSON3["data"].(map[string]interface{})["pre"].(map[string]interface{})
  8977. // userJSONBytes3, _ := json.Marshal(respJSON3)
  8978. // fmt.Println("log")
  8979. // fmt.Println(string(userJSONBytes3))
  8980. // if err := json.Unmarshal(userJSONBytes3, &resSix10265); err != nil {
  8981. // utils.ErrorLog("解析失败:%v", err)
  8982. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  8983. // return
  8984. // }
  8985. //
  8986. // res2.InfRefmsgid = resSix10265.InfRefmsgid
  8987. // // res2.Output = resSix10265.Output
  8988. // res2.ErrMsg = resSix10265.ErrMsg
  8989. // res2.Cainfo = resSix10265.Cainfo
  8990. // res2.WarnMsg = resSix10265.WarnMsg
  8991. // infocode, _ := strconv.ParseInt(resSix10265.Infcode, 10, 64)
  8992. // res2.Infcode = infocode
  8993. //
  8994. // } else {
  8995. //
  8996. // if miConfig.Code == "H15049901371" {
  8997. // result2, src_request := service.Gdyb2205(order.PsnNo, order.MdtrtId, order.Number, miConfig.OrgName, roles.UserName, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code)
  8998. // var dat map[string]interface{}
  8999. // if err := json.Unmarshal([]byte(result2), &dat); err == nil {
  9000. // fmt.Println(dat)
  9001. // } else {
  9002. // fmt.Println(err)
  9003. // }
  9004. //
  9005. // saveLog(result2, src_request, "2205", "撤销明细")
  9006. // userJSONBytes, _ := json.Marshal(dat)
  9007. // if err := json.Unmarshal(userJSONBytes, &resSix10265); err != nil {
  9008. // utils.ErrorLog("解析失败:%v", err)
  9009. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9010. // return
  9011. // }
  9012. // res2.InfRefmsgid = resSix10265.InfRefmsgid
  9013. // // res2.Output = resSix10265.Output
  9014. // res2.ErrMsg = resSix10265.ErrMsg
  9015. // res2.Cainfo = resSix10265.Cainfo
  9016. // res2.WarnMsg = resSix10265.WarnMsg
  9017. // infocode, _ := strconv.ParseInt(resSix10265.Infcode, 10, 64)
  9018. // res2.Infcode = infocode
  9019. // } else {
  9020. // order_infos, _ := service.GetHisOrderInfoByNumberFour(order.Number)
  9021. // for _, item := range order_infos {
  9022. // result2, src_request := service.Gdyb2205ForGz(order.PsnNo, order.MdtrtId, item.FeedetlSn, miConfig.OrgName, roles.UserName, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code)
  9023. // var dat map[string]interface{}
  9024. // if err := json.Unmarshal([]byte(result2), &dat); err == nil {
  9025. // fmt.Println(dat)
  9026. // } else {
  9027. // fmt.Println(err)
  9028. // }
  9029. //
  9030. // saveLog(result2, src_request, "2205", "撤销明细")
  9031. // userJSONBytes, _ := json.Marshal(dat)
  9032. // if err := json.Unmarshal(userJSONBytes, &res2); err != nil {
  9033. // utils.ErrorLog("解析失败:%v", err)
  9034. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9035. // return
  9036. // }
  9037. // }
  9038. //
  9039. // }
  9040. //
  9041. // }
  9042. //
  9043. // if res2.Infcode == 0 {
  9044. // err := service.UpdataOrderStatus(order_id, order.Number, adminUser.CurrentOrgId, src_resquest, result)
  9045. // if err == nil {
  9046. // //当押金不为零时产生退费记录
  9047. // if order.Decimal != 0 {
  9048. // tmp := strconv.FormatInt(order.ID, 10)
  9049. // err = service.MoneyIncrease(adminUser.CurrentOrgId, order.PatientId, tmp, order.Decimal)
  9050. // if err != nil {
  9051. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9052. // return
  9053. // }
  9054. // }
  9055. // c.ServeSuccessJSON(map[string]interface{}{
  9056. // "msg": "退费成功",
  9057. // })
  9058. // } else {
  9059. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9060. // return
  9061. // }
  9062. // } else {
  9063. // c.ServeSuccessJSON(map[string]interface{}{
  9064. // "code": -10,
  9065. // "msg": res2.ErrMsg,
  9066. // })
  9067. // }
  9068. // } else {
  9069. // c.ServeSuccessJSON(map[string]interface{}{
  9070. // "code": -10,
  9071. // "msg": res.ErrMsg,
  9072. // })
  9073. // }
  9074. // }
  9075. //}
  9076. //
  9077. //func (c *HisApiController) RefundNumber() {
  9078. // record_time := c.GetString("record_time")
  9079. // //patient_id, _ := c.GetInt64("patient_id")
  9080. // admin_user_id, _ := c.GetInt64("admin_user_id")
  9081. // his_patient_id, _ := c.GetInt64("id")
  9082. //
  9083. // timeLayout := "2006-01-02"
  9084. // loc, _ := time.LoadLocation("Local")
  9085. // adminUser := c.GetAdminUserInfo()
  9086. // theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_time+" 00:00:00", loc)
  9087. // fmt.Println(err)
  9088. // if err != nil {
  9089. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  9090. // return
  9091. // }
  9092. // recordDateTime := theTime.Unix()
  9093. // //his, _ := service.GetVMHisPatientInfo(adminUser.CurrentOrgId, patient_id, recordDateTime)
  9094. //
  9095. // his, _ := service.GetHisPatientRecord(adminUser.CurrentOrgId, his_patient_id)
  9096. // //patientPrescription, _ := service.FindPatientPrescriptionInfo(adminUser.CurrentOrgId, patient_id, recordDateTime)
  9097. // //order, _ := service.GetHisOrderByID(order_id)
  9098. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  9099. // config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  9100. // roles, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  9101. //
  9102. // count, _ := service.GetOrderCountByNumber(adminUser.CurrentOrgId, his.PatientId, recordDateTime, his.Number)
  9103. //
  9104. // if count > 0 {
  9105. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeOrderParamWrong)
  9106. // return
  9107. // }
  9108. //
  9109. // if config.IsOpen == 1 { //对接了医保,走医保流程
  9110. // var res2 ResultSix
  9111. // var resSix10265 ResultSix10265
  9112. //
  9113. // if miConfig.MdtrtareaAdmvs == "421300" {
  9114. //
  9115. // api3 := "http://192.168.124.4:9532/" + "hbyb/2202?psn_no=" + his.PsnNo +
  9116. // "&mdtrt_id=" + his.Number + "&ipt_otp_no=" + his.IptOtpNo + "&doctor=" + roles.UserName + "&org_name=" + miConfig.OrgName + "&fixmedins_code=" + miConfig.Code +
  9117. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey
  9118. // resp3, requestErr3 := http.Get(api3)
  9119. // if requestErr3 != nil {
  9120. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9121. // return
  9122. // }
  9123. //
  9124. // body3, ioErr3 := ioutil.ReadAll(resp3.Body)
  9125. // if ioErr3 != nil {
  9126. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr3)
  9127. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9128. // return
  9129. // }
  9130. // var respJSON3 map[string]interface{}
  9131. // if err := json.Unmarshal([]byte(string(body3)), &respJSON3); err != nil {
  9132. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  9133. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9134. // return
  9135. // }
  9136. //
  9137. // respJSON3 = respJSON3["data"].(map[string]interface{})["pre"].(map[string]interface{})
  9138. // userJSONBytes3, _ := json.Marshal(respJSON3)
  9139. // fmt.Println("log")
  9140. // fmt.Println(string(userJSONBytes3))
  9141. // if err := json.Unmarshal(userJSONBytes3, &res2); err != nil {
  9142. // utils.ErrorLog("解析失败:%v", err)
  9143. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9144. // return
  9145. // }
  9146. //
  9147. // } else if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  9148. // var api3 string
  9149. // if miConfig.MdtrtareaAdmvs == "320921" {
  9150. // api3 = "http://192.168.3.111:9532/" + "jsyb/2202?psn_no=" + his.PsnNo +
  9151. // "&mdtrt_id=" + his.Number + "&ipt_otp_no=" + his.IptOtpNo + "&doctor=" + roles.UserName + "&org_name=" + miConfig.OrgName + "&fixmedins_code=" + miConfig.Code +
  9152. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&cainfo=" + miConfig.Cainfo
  9153. //
  9154. // //req, _ = http.NewRequest("POST", "http://192.168.3.111:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  9155. //
  9156. // } else {
  9157. // //req, _ = http.NewRequest("POST", "http://192.168.5.251:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  9158. // api3 = "http://192.168.5.251:9532/" + "jsyb/2202?psn_no=" + his.PsnNo +
  9159. // "&mdtrt_id=" + his.Number + "&ipt_otp_no=" + his.IptOtpNo + "&doctor=" + roles.UserName + "&org_name=" + miConfig.OrgName + "&fixmedins_code=" + miConfig.Code +
  9160. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&cainfo=" + miConfig.Cainfo
  9161. // }
  9162. //
  9163. // resp3, requestErr3 := http.Get(api3)
  9164. // if requestErr3 != nil {
  9165. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9166. // return
  9167. // }
  9168. //
  9169. // body3, ioErr3 := ioutil.ReadAll(resp3.Body)
  9170. // if ioErr3 != nil {
  9171. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr3)
  9172. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9173. // return
  9174. // }
  9175. // var respJSON3 map[string]interface{}
  9176. // if err := json.Unmarshal([]byte(string(body3)), &respJSON3); err != nil {
  9177. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  9178. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9179. // return
  9180. // }
  9181. //
  9182. // respJSON3 = respJSON3["data"].(map[string]interface{})["pre"].(map[string]interface{})
  9183. // userJSONBytes3, _ := json.Marshal(respJSON3)
  9184. // if err := json.Unmarshal(userJSONBytes3, &resSix10265); err != nil {
  9185. // utils.ErrorLog("解析失败:%v", err)
  9186. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9187. // return
  9188. // }
  9189. //
  9190. // res2.InfRefmsgid = resSix10265.InfRefmsgid
  9191. // // res2.Output = resSix10265.Output
  9192. // res2.ErrMsg = resSix10265.ErrMsg
  9193. // res2.Cainfo = resSix10265.Cainfo
  9194. // res2.WarnMsg = resSix10265.WarnMsg
  9195. // infocode, _ := strconv.ParseInt(resSix10265.Infcode, 10, 64)
  9196. // res2.Infcode = infocode
  9197. //
  9198. // } else {
  9199. // var api3 string
  9200. //
  9201. // if miConfig.Code == "H15049901371" {
  9202. //
  9203. // api3 = "http://127.0.0.1:9532/" + "gdyb/three?psn_no=" + his.PsnNo +
  9204. // "&mdtrt_id=" + his.Number + "&ipt_otp_no=" + his.IptOtpNo + "&doctor=" + roles.UserName + "&org_name=" + miConfig.OrgName + "&fixmedins_code=" + miConfig.Code +
  9205. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey
  9206. // } else {
  9207. // api3 = "http://127.0.0.1:9532/" + "gdyb/three?psn_no=" + his.PsnNo +
  9208. // "&mdtrt_id=" + his.Number + "&ipt_otp_no=" + his.IptOtpNo + "&doctor=" + roles.UserName + "&org_name=" + miConfig.OrgName + "&fixmedins_code=" + miConfig.Code +
  9209. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey
  9210. //
  9211. // }
  9212. //
  9213. // resp3, requestErr3 := http.Get(api3)
  9214. // if requestErr3 != nil {
  9215. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9216. // return
  9217. // }
  9218. //
  9219. // body3, ioErr3 := ioutil.ReadAll(resp3.Body)
  9220. // if ioErr3 != nil {
  9221. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr3)
  9222. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9223. // return
  9224. // }
  9225. // var respJSON3 map[string]interface{}
  9226. // if err := json.Unmarshal([]byte(string(body3)), &respJSON3); err != nil {
  9227. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  9228. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9229. // return
  9230. // }
  9231. //
  9232. // respJSON3 = respJSON3["data"].(map[string]interface{})["pre"].(map[string]interface{})
  9233. // userJSONBytes3, _ := json.Marshal(respJSON3)
  9234. //
  9235. // if miConfig.Code == "H15049901371" {
  9236. // if err := json.Unmarshal(userJSONBytes3, &resSix10265); err != nil {
  9237. // utils.ErrorLog("解析失败:%v", err)
  9238. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9239. // return
  9240. // }
  9241. // res2.InfRefmsgid = resSix10265.InfRefmsgid
  9242. // // res2.Output = resSix10265.Output
  9243. // res2.ErrMsg = resSix10265.ErrMsg
  9244. // res2.Cainfo = resSix10265.Cainfo
  9245. // res2.WarnMsg = resSix10265.WarnMsg
  9246. // infocode, _ := strconv.ParseInt(resSix10265.Infcode, 10, 64)
  9247. // res2.Infcode = infocode
  9248. // } else {
  9249. //
  9250. // if err := json.Unmarshal(userJSONBytes3, &res2); err != nil {
  9251. // utils.ErrorLog("解析失败:%v", err)
  9252. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9253. // return
  9254. // }
  9255. // }
  9256. //
  9257. // }
  9258. //
  9259. // if res2.Infcode == 0 {
  9260. // if err == nil {
  9261. // c.ServeSuccessJSON(map[string]interface{}{
  9262. // "msg": "退号成功",
  9263. // })
  9264. // service.UpdataRegStatusTwo(his_patient_id, recordDateTime, adminUser.CurrentOrgId)
  9265. //
  9266. // } else {
  9267. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9268. // return
  9269. // }
  9270. //
  9271. // } else {
  9272. // c.ServeSuccessJSON(map[string]interface{}{
  9273. // "code": -10,
  9274. // "msg": res2.ErrMsg,
  9275. // })
  9276. //
  9277. // }
  9278. //
  9279. // } else {
  9280. // //err := service.UpdataOrderStatus(order_id, number, adminUser.CurrentOrgId)
  9281. // //if err == nil {
  9282. // // c.ServeSuccessJSON(map[string]interface{}{
  9283. // // "msg": "退费成功",
  9284. // // })
  9285. // //} else {
  9286. // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9287. // // return
  9288. // //}
  9289. // }
  9290. //}
  9291. //func (c *HisApiController) RefundDetail() {
  9292. // order_id, _ := c.GetInt64("order_id")
  9293. // admin_user_id, _ := c.GetInt64("admin_user_id")
  9294. //
  9295. // //his_patient_id, _ := c.GetInt64("his_patient_id")
  9296. //
  9297. // number := c.GetString("number")
  9298. // record_time := c.GetString("record_time")
  9299. // patient_id, _ := c.GetInt64("patient_id")
  9300. // //med_type, _ := c.GetInt64("med_type")
  9301. //
  9302. // timeLayout := "2006-01-02"
  9303. // loc, _ := time.LoadLocation("Local")
  9304. // adminUser := c.GetAdminUserInfo()
  9305. // roles, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  9306. // theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_time+" 00:00:00", loc)
  9307. // fmt.Println(err)
  9308. // if err != nil {
  9309. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  9310. // return
  9311. // }
  9312. // recordDateTime := theTime.Unix()
  9313. // //his, _ := service.GetNewVMHisPatientInfo(adminUser.CurrentOrgId, his_patient_id, recordDateTime)
  9314. //
  9315. // patientPrescription, _ := service.FindPatientPrescriptionInfo(adminUser.CurrentOrgId, patient_id, recordDateTime)
  9316. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  9317. // config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  9318. //
  9319. // var order models.HisOrder
  9320. // order, _ = service.GetHisOrderByID(order_id)
  9321. // his, _ := service.GetHisPatientByNumber(order.MdtrtId)
  9322. // if config.IsOpen == 1 { //对接了医保,走医保流程
  9323. // var res2 ResultSix
  9324. //
  9325. // if miConfig.MdtrtareaAdmvs == "421300" {
  9326. // api3 := "http://192.168.124.4:9532/" + "hbyb/2205?psn_no=" + order.PsnNo +
  9327. // "&mdtrt_id=" + order.MdtrtId + "&chrg_bchno=" + order.Number + "&doctor=" + patientPrescription.Doctor + "&org_name=" + miConfig.OrgName + "&fixmedins_code=" + miConfig.Code +
  9328. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey
  9329. // resp3, requestErr3 := http.Get(api3)
  9330. // if requestErr3 != nil {
  9331. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9332. // return
  9333. // }
  9334. // body3, ioErr3 := ioutil.ReadAll(resp3.Body)
  9335. // if ioErr3 != nil {
  9336. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr3)
  9337. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9338. // return
  9339. // }
  9340. // var respJSON3 map[string]interface{}
  9341. // if err := json.Unmarshal([]byte(string(body3)), &respJSON3); err != nil {
  9342. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  9343. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9344. // return
  9345. // }
  9346. //
  9347. // respJSON3 = respJSON3["data"].(map[string]interface{})["pre"].(map[string]interface{})
  9348. // userJSONBytes3, _ := json.Marshal(respJSON3)
  9349. // fmt.Println("log")
  9350. // fmt.Println(string(userJSONBytes3))
  9351. // if err := json.Unmarshal(userJSONBytes3, &res2); err != nil {
  9352. // utils.ErrorLog("解析失败:%v", err)
  9353. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9354. // return
  9355. // }
  9356. //
  9357. // err := service.UpdataOrderStatus(order_id, number, adminUser.CurrentOrgId, "", "")
  9358. // if err == nil {
  9359. // c.ServeSuccessJSON(map[string]interface{}{
  9360. // "msg": "撤销明细成功",
  9361. // })
  9362. // return
  9363. // } else {
  9364. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9365. // return
  9366. // }
  9367. // } else if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  9368. // var resSix10265 ResultSix10265
  9369. //
  9370. // var api3 string
  9371. // if miConfig.MdtrtareaAdmvs == "320921" {
  9372. // api3 = "http://192.168.3.111:9532/" + "jsyb/2205?psn_no=" + order.PsnNo +
  9373. // "&mdtrt_id=" + order.MdtrtId + "&chrg_bchno=" + order.Number + "&doctor=" + patientPrescription.Doctor + "&org_name=" + miConfig.OrgName + "&fixmedins_code=" + miConfig.Code +
  9374. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&cainfo=" + miConfig.Cainfo
  9375. //
  9376. // //req, _ = http.NewRequest("POST", "http://192.168.3.111:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  9377. //
  9378. // } else {
  9379. // //req, _ = http.NewRequest("POST", "http://192.168.5.251:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  9380. // api3 = "http://192.168.5.251:9532/" + "jsyb/2205?psn_no=" + order.PsnNo +
  9381. // "&mdtrt_id=" + order.MdtrtId + "&chrg_bchno=" + order.Number + "&doctor=" + patientPrescription.Doctor + "&org_name=" + miConfig.OrgName + "&fixmedins_code=" + miConfig.Code +
  9382. // "&insuplc_admdvs=" + his.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&cainfo=" + miConfig.Cainfo
  9383. //
  9384. // }
  9385. //
  9386. // resp3, requestErr3 := http.Get(api3)
  9387. // if requestErr3 != nil {
  9388. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9389. // return
  9390. // }
  9391. // body3, ioErr3 := ioutil.ReadAll(resp3.Body)
  9392. // if ioErr3 != nil {
  9393. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr3)
  9394. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9395. // return
  9396. // }
  9397. // var respJSON3 map[string]interface{}
  9398. // if err := json.Unmarshal([]byte(string(body3)), &respJSON3); err != nil {
  9399. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  9400. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9401. // return
  9402. // }
  9403. //
  9404. // respJSON3 = respJSON3["data"].(map[string]interface{})["pre"].(map[string]interface{})
  9405. // userJSONBytes3, _ := json.Marshal(respJSON3)
  9406. // fmt.Println("log")
  9407. // fmt.Println(string(userJSONBytes3))
  9408. // if err := json.Unmarshal(userJSONBytes3, &resSix10265); err != nil {
  9409. // utils.ErrorLog("解析失败:%v", err)
  9410. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9411. // return
  9412. // }
  9413. //
  9414. // res2.InfRefmsgid = resSix10265.InfRefmsgid
  9415. // // res2.Output = resSix10265.Output
  9416. // res2.ErrMsg = resSix10265.ErrMsg
  9417. // res2.Cainfo = resSix10265.Cainfo
  9418. // res2.WarnMsg = resSix10265.WarnMsg
  9419. // infocode, _ := strconv.ParseInt(resSix10265.Infcode, 10, 64)
  9420. // res2.Infcode = infocode
  9421. //
  9422. // err := service.UpdataOrderStatus(order_id, number, adminUser.CurrentOrgId, "", "")
  9423. // if err == nil {
  9424. // c.ServeSuccessJSON(map[string]interface{}{
  9425. // "msg": "撤销明细成功",
  9426. // })
  9427. // return
  9428. // } else {
  9429. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9430. // return
  9431. // }
  9432. // } else {
  9433. // order_infos, _ := service.GetHisOrderInfoByNumberFour(order.Number)
  9434. // for _, item := range order_infos {
  9435. // result2, src_request := service.Gdyb2205ForGz(order.PsnNo, order.MdtrtId, item.FeedetlSn, miConfig.OrgName, roles.UserName, his.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, miConfig.Code)
  9436. // var dat map[string]interface{}
  9437. // if err := json.Unmarshal([]byte(result2), &dat); err == nil {
  9438. // fmt.Println(dat)
  9439. // } else {
  9440. // fmt.Println(err)
  9441. // }
  9442. //
  9443. // saveLog(result2, src_request, "2205", "撤销明细")
  9444. // userJSONBytes, _ := json.Marshal(dat)
  9445. // if err := json.Unmarshal(userJSONBytes, &res2); err != nil {
  9446. // utils.ErrorLog("解析失败:%v", err)
  9447. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9448. // return
  9449. // }
  9450. // }
  9451. // }
  9452. //
  9453. // }
  9454. //}
  9455. //
  9456. ////对账
  9457. //func (c *HisApiController) GetCheckAccount() {
  9458. // start_time := c.GetString("start_time")
  9459. // end_time := c.GetString("end_time")
  9460. // insutype := c.GetString("insutype")
  9461. // clr_type := c.GetString("clr_type")
  9462. // clr_org := c.GetString("clr_optins")
  9463. //
  9464. // admin_user_id, _ := c.GetInt64("admin_user_id")
  9465. //
  9466. // adminUser := c.GetAdminUserInfo()
  9467. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  9468. // config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  9469. // if len(clr_org) == 0 {
  9470. // clr_org = miConfig.MdtrtareaAdmvs
  9471. // }
  9472. // timeLayout := "2006-01-02"
  9473. // loc, _ := time.LoadLocation("Local")
  9474. // startime, _ := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc)
  9475. // endtime, _ := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc)
  9476. // orders, _ := service.GetOrderByTime(startime.Unix(), endtime.Unix(), adminUser.CurrentOrgId, insutype, "", clr_type)
  9477. // fixmedins_setl_cnt := int64(len(orders))
  9478. // var medfee_sumamt float64
  9479. // var acct_pay float64
  9480. // var fund_pay_sumamt float64
  9481. // for _, item := range orders {
  9482. // medfee_sumamt = medfee_sumamt + item.MedfeeSumamt
  9483. // acct_pay = acct_pay + item.AcctPay
  9484. // fund_pay_sumamt = fund_pay_sumamt + item.FundPaySumamt
  9485. // }
  9486. // var user_name string
  9487. // role, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  9488. // if role.ID == 0 {
  9489. // user_name = "xxx"
  9490. // } else {
  9491. // user_name = role.UserName
  9492. // }
  9493. // var res ResultEight
  9494. // var res10188 ResultEightFor10188
  9495. // if config.IsOpen == 1 {
  9496. // if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  9497. // api := "http://192.168.3.111:9532/" + "jsyb/3201?" +
  9498. // "insutype=" + insutype +
  9499. // "&clr_type=" + "11" +
  9500. // "&setl_optins=" + clr_org +
  9501. // "&stmt_begndate=" + start_time +
  9502. // "&stm_enddate=" + end_time +
  9503. // "&medfee_sumamt=" + fmt.Sprintf("%.4f", medfee_sumamt) +
  9504. // "&fund_pay_sumamt=" + fmt.Sprintf("%.4f", fund_pay_sumamt) +
  9505. // "&acct_pay=" + fmt.Sprintf("%.4f", acct_pay) +
  9506. // "&fixmedins_setl_cnt=" + strconv.FormatInt(fixmedins_setl_cnt, 10) +
  9507. // "&fixmedins_code=" + miConfig.Code +
  9508. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs +
  9509. // "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs +
  9510. // "&secret_key=" + miConfig.SecretKey +
  9511. // "&org_name=" + miConfig.OrgName +
  9512. // "&doctor=" + user_name +
  9513. // "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&cainfo=" + miConfig.Cainfo
  9514. //
  9515. // fmt.Println(api)
  9516. // resp, requestErr := http.Get(api)
  9517. // if requestErr != nil {
  9518. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9519. // return
  9520. // }
  9521. // body, ioErr := ioutil.ReadAll(resp.Body)
  9522. // fmt.Println(body)
  9523. // if ioErr != nil {
  9524. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  9525. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9526. // return
  9527. // }
  9528. // var respJSON map[string]interface{}
  9529. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  9530. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  9531. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9532. // return
  9533. // }
  9534. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  9535. // userJSONBytes, _ := json.Marshal(respJSON)
  9536. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  9537. // utils.ErrorLog("解析失败:%v", err)
  9538. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9539. // return
  9540. // }
  9541. //
  9542. // res.InfRefmsgid = res10188.InfRefmsgid
  9543. // res.Output = res10188.Output
  9544. // res.ErrMsg = res10188.ErrMsg
  9545. // res.Cainfo = res10188.Cainfo
  9546. // res.WarnMsg = res10188.WarnMsg
  9547. // infocode, _ := strconv.ParseInt(res10188.Infcode, 10, 64)
  9548. // res.Infcode = infocode
  9549. //
  9550. // } else if miConfig.MdtrtareaAdmvs == "150499" {
  9551. //
  9552. // api := "http://172.16.13.254:9532/" + "nmyb/3201?" +
  9553. // "insutype=" + insutype +
  9554. // "&clr_type=" + "21" +
  9555. // "&setl_optins=" + clr_org +
  9556. // "&stmt_begndate=" + start_time +
  9557. // "&stm_enddate=" + end_time +
  9558. // "&medfee_sumamt=" + fmt.Sprintf("%.4f", medfee_sumamt) +
  9559. // "&fund_pay_sumamt=" + fmt.Sprintf("%.4f", fund_pay_sumamt) +
  9560. // "&acct_pay=" + fmt.Sprintf("%.4f", acct_pay) +
  9561. // "&fixmedins_setl_cnt=" + strconv.FormatInt(fixmedins_setl_cnt, 10) +
  9562. // "&fixmedins_code=" + miConfig.Code +
  9563. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs +
  9564. // "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs +
  9565. // "&secret_key=" + miConfig.SecretKey +
  9566. // "&org_name=" + miConfig.OrgName +
  9567. // "&doctor=" + user_name
  9568. // resp, requestErr := http.Get(api)
  9569. // if requestErr != nil {
  9570. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9571. // return
  9572. // }
  9573. // body, ioErr := ioutil.ReadAll(resp.Body)
  9574. // if ioErr != nil {
  9575. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  9576. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9577. // return
  9578. // }
  9579. // var respJSON map[string]interface{}
  9580. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  9581. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  9582. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9583. // return
  9584. // }
  9585. //
  9586. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  9587. // result, _ := json.Marshal(respJSON)
  9588. // fmt.Println("log")
  9589. // fmt.Println(string(result))
  9590. // if err := json.Unmarshal([]byte(result), &res10188); err != nil {
  9591. // utils.ErrorLog("解析失败:%v", err)
  9592. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9593. // return
  9594. // }
  9595. //
  9596. // res.InfRefmsgid = res10188.InfRefmsgid
  9597. // res.Output = res10188.Output
  9598. // res.ErrMsg = res10188.ErrMsg
  9599. // res.Cainfo = res10188.Cainfo
  9600. // res.WarnMsg = res10188.WarnMsg
  9601. // infocode, _ := strconv.ParseInt(res10188.Infcode, 10, 64)
  9602. // res.Infcode = infocode
  9603. //
  9604. // } else {
  9605. // api := "http://127.0.0.1:9532/" + "gdyb/ten?" +
  9606. // "insutype=" + insutype +
  9607. // "&clr_type=" + clr_type +
  9608. // "&setl_optins=" + "440104" +
  9609. // "&stmt_begndate=" + start_time +
  9610. // "&stm_enddate=" + end_time +
  9611. // "&medfee_sumamt=" + fmt.Sprintf("%.4f", medfee_sumamt) +
  9612. // "&fund_pay_sumamt=" + fmt.Sprintf("%.4f", fund_pay_sumamt) +
  9613. // "&acct_pay=" + fmt.Sprintf("%.4f", acct_pay) +
  9614. // "&fixmedins_setl_cnt=" + strconv.FormatInt(fixmedins_setl_cnt, 10) +
  9615. // "&fixmedins_code=" + miConfig.Code +
  9616. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs +
  9617. // "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs +
  9618. // "&secret_key=" + miConfig.SecretKey +
  9619. // "&org_name=" + miConfig.OrgName +
  9620. // "&doctor=" + user_name
  9621. //
  9622. // fmt.Println(api)
  9623. // resp, requestErr := http.Get(api)
  9624. // if requestErr != nil {
  9625. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9626. // return
  9627. // }
  9628. // body, ioErr := ioutil.ReadAll(resp.Body)
  9629. // fmt.Println(body)
  9630. // if ioErr != nil {
  9631. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  9632. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9633. // return
  9634. // }
  9635. // var respJSON map[string]interface{}
  9636. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  9637. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  9638. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9639. // return
  9640. // }
  9641. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  9642. // userJSONBytes, _ := json.Marshal(respJSON)
  9643. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  9644. // utils.ErrorLog("解析失败:%v", err)
  9645. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9646. // return
  9647. // }
  9648. // }
  9649. //
  9650. // if res.Infcode == 0 {
  9651. // if res.Output.Stmtinfo.StmtRslt == "0" {
  9652. // micc := &models.MedicalInsuranceCostCompare{
  9653. // StartTime: startime.Unix(),
  9654. // EndTime: endtime.Unix(),
  9655. // Insutype: insutype,
  9656. // CheckType: 1,
  9657. // Num: fixmedins_setl_cnt,
  9658. // Mtime: time.Now().Unix(),
  9659. // Status: 1,
  9660. // UserOrgId: adminUser.CurrentOrgId,
  9661. // CostTotal: medfee_sumamt,
  9662. // FuncTotal: fund_pay_sumamt,
  9663. // PsnPay: acct_pay,
  9664. // Creator: admin_user_id,
  9665. // Ctime: time.Now().Unix(),
  9666. // ClrType: clr_type,
  9667. // }
  9668. // err := service.CreateMedicalInsuranceCostCompareRecord(micc)
  9669. // if err == nil {
  9670. // c.ServeSuccessJSON(map[string]interface{}{
  9671. // "stmt_rslt": res.Output.Stmtinfo.StmtRslt,
  9672. // "stmt_rslt_dscr": res.Output.Stmtinfo.StmtRsltDscr,
  9673. // })
  9674. // } else {
  9675. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9676. // }
  9677. // } else {
  9678. // c.ServeSuccessJSON(map[string]interface{}{
  9679. // "stmt_rslt": res.Output.Stmtinfo.StmtRslt,
  9680. // "stmt_rslt_dscr": res.Output.Stmtinfo.StmtRsltDscr,
  9681. // })
  9682. // }
  9683. // } else {
  9684. // c.ServeSuccessJSON(map[string]interface{}{
  9685. // "code": -10,
  9686. // "msg": res.ErrMsg,
  9687. // })
  9688. //
  9689. // }
  9690. // }
  9691. //}
  9692. //
  9693. //func (c *HisApiController) Check310() {
  9694. //
  9695. // adminUser := c.GetAdminUserInfo()
  9696. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  9697. //
  9698. // var user_name string
  9699. // user_name = "高慧裕"
  9700. // api := "http://127.0.0.1:9532/" + "gdyb/ten?" +
  9701. // "insutype=" + "310" +
  9702. // "&clr_type=" + "" +
  9703. // "&setl_optins=" + "441202" +
  9704. // "&stmt_begndate=" + "2022-03-01" +
  9705. // "&stm_enddate=" + "2022-03-31" +
  9706. // "&medfee_sumamt=" + "194930.12" +
  9707. // "&fund_pay_sumamt=" + "188741.46" +
  9708. // "&acct_pay=" + "0" +
  9709. // "&fixmedins_setl_cnt=" + "452" +
  9710. // "&fixmedins_code=" + miConfig.Code +
  9711. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs +
  9712. // "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs +
  9713. // "&secret_key=" + miConfig.SecretKey +
  9714. // "&org_name=" + miConfig.OrgName +
  9715. // "&doctor=" + user_name
  9716. //
  9717. // fmt.Println(api)
  9718. // resp, requestErr := http.Get(api)
  9719. // if requestErr != nil {
  9720. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9721. // return
  9722. // }
  9723. // body, ioErr := ioutil.ReadAll(resp.Body)
  9724. // fmt.Println(body)
  9725. // if ioErr != nil {
  9726. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  9727. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9728. // return
  9729. // }
  9730. // var respJSON map[string]interface{}
  9731. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  9732. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  9733. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9734. // return
  9735. // }
  9736. //
  9737. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  9738. // userJSONBytes, _ := json.Marshal(respJSON)
  9739. //
  9740. // var res ResultEight
  9741. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  9742. // utils.ErrorLog("解析失败:%v", err)
  9743. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9744. // return
  9745. // }
  9746. //
  9747. //}
  9748. //func (c *HisApiController) Check390() {
  9749. //
  9750. // adminUser := c.GetAdminUserInfo()
  9751. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  9752. //
  9753. // var user_name string
  9754. // user_name = "高慧裕"
  9755. // api := "http://127.0.0.1:9532/" + "gdyb/ten?" +
  9756. // "insutype=" + "390" +
  9757. // "&clr_type=" + "" +
  9758. // "&setl_optins=" + "441202" +
  9759. // "&stmt_begndate=" + "2022-03-01" +
  9760. // "&stm_enddate=" + "2022-03-31" +
  9761. // "&medfee_sumamt=" + "1068448.89" +
  9762. // "&fund_pay_sumamt=" + "1014677.62" +
  9763. // "&acct_pay=" + "0" +
  9764. // "&fixmedins_setl_cnt=" + "1950" +
  9765. // "&fixmedins_code=" + miConfig.Code +
  9766. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs +
  9767. // "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs +
  9768. // "&secret_key=" + miConfig.SecretKey +
  9769. // "&org_name=" + miConfig.OrgName +
  9770. // "&doctor=" + user_name
  9771. //
  9772. // fmt.Println(api)
  9773. // resp, requestErr := http.Get(api)
  9774. // if requestErr != nil {
  9775. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9776. // return
  9777. // }
  9778. // body, ioErr := ioutil.ReadAll(resp.Body)
  9779. // fmt.Println(body)
  9780. // if ioErr != nil {
  9781. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  9782. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9783. // return
  9784. // }
  9785. // var respJSON map[string]interface{}
  9786. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  9787. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  9788. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9789. // return
  9790. // }
  9791. //
  9792. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  9793. // userJSONBytes, _ := json.Marshal(respJSON)
  9794. //
  9795. // var res ResultEight
  9796. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  9797. // utils.ErrorLog("解析失败:%v", err)
  9798. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9799. // return
  9800. // }
  9801. //
  9802. //}
  9803. //
  9804. ////对账明细
  9805. //func (c *HisApiController) GetCheckDetailAccount() {
  9806. // start_time := c.GetString("start_time")
  9807. // end_time := c.GetString("end_time")
  9808. // admin_user_id, _ := c.GetInt64("admin_user_id")
  9809. //
  9810. // adminUser := c.GetAdminUserInfo()
  9811. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  9812. // config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  9813. //
  9814. // timeLayout := "2006-01-02"
  9815. // loc, _ := time.LoadLocation("Local")
  9816. // startime, _ := time.ParseInLocation(timeLayout+" 15:04:05", start_time+" 00:00:00", loc)
  9817. // endtime, _ := time.ParseInLocation(timeLayout+" 15:04:05", end_time+" 23:59:59", loc)
  9818. // orders, _ := service.GetOrderByTimeTwo(startime.Unix(), endtime.Unix(), adminUser.CurrentOrgId)
  9819. //
  9820. // rand.Seed(time.Now().UnixNano())
  9821. //
  9822. // num := rand.Intn(30000)
  9823. // Mkdir(miConfig.OrgName)
  9824. // file := strconv.FormatInt(int64(num), 10)
  9825. // file_name := file + ".txt"
  9826. // zip_name := file + ".zip"
  9827. // zip_path := miConfig.OrgName + "/" + zip_name
  9828. // file_path := miConfig.OrgName + "/" + file_name
  9829. //
  9830. // decimal.DivisionPrecision = 2
  9831. // var medfee_sumamt float64
  9832. // var psn_cash_pay float64
  9833. // var fund_pay_sumamt float64
  9834. // fixmedins_setl_cnt := int64(len(orders))
  9835. //
  9836. // for _, item := range orders {
  9837. // medfee_sumamt = medfee_sumamt + item.MedfeeSumamt
  9838. // psn_cash_pay = psn_cash_pay + item.PsnCashPay
  9839. // fund_pay_sumamt = fund_pay_sumamt + item.FundPaySumamt
  9840. // }
  9841. //
  9842. // f, err := os.Create(miConfig.OrgName + "/" + file_name)
  9843. // defer f.Close()
  9844. // if err != nil {
  9845. // fmt.Println(err.Error())
  9846. // } else {
  9847. // for _, item := range orders {
  9848. // var refd_setl_flag string
  9849. // if item.OrderStatus == 2 {
  9850. // refd_setl_flag = "0"
  9851. // var str string
  9852. // str = item.SetlId + " " +
  9853. // item.MdtrtId + " " +
  9854. // item.PsnNo + " " +
  9855. // fmt.Sprintf("%.4f", item.MedfeeSumamt) + " " +
  9856. // fmt.Sprintf("%.4f", item.FundPaySumamt) + " " +
  9857. // fmt.Sprintf("%.4f", item.AcctPay) + " " + refd_setl_flag + "\r\n"
  9858. // _, err = f.Write([]byte(str))
  9859. // }
  9860. // if item.OrderStatus == 3 {
  9861. //
  9862. // var str string
  9863. // str = item.SetlId + " " +
  9864. // item.MdtrtId + " " +
  9865. // item.PsnNo + " " +
  9866. // fmt.Sprintf("%.4f", item.MedfeeSumamt) + " " +
  9867. // fmt.Sprintf("%.4f", item.FundPaySumamt) + " " +
  9868. // fmt.Sprintf("%.4f", item.AcctPay) + " " + "1" + "\r\n"
  9869. // _, err = f.Write([]byte(str))
  9870. //
  9871. // var str2 string
  9872. // str2 = item.SetlId + " " +
  9873. // item.MdtrtId + " " +
  9874. // item.PsnNo + " " +
  9875. // fmt.Sprintf("%.4f", 0-item.MedfeeSumamt) + " " +
  9876. // fmt.Sprintf("%.4f", 0-item.FundPaySumamt) + " " +
  9877. // fmt.Sprintf("%.4f", 0-item.AcctPay) + " " + "1" + "\r\n"
  9878. // _, err = f.Write([]byte(str2))
  9879. // }
  9880. //
  9881. // }
  9882. //
  9883. // }
  9884. // Zip(file_path, zip_path)
  9885. // fmt.Println(ReadFile(zip_path))
  9886. // fmt.Println(string(ReadFile(zip_path)))
  9887. //
  9888. // if config.IsOpen == 1 {
  9889. //
  9890. // var user_name string
  9891. // role, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  9892. // if role.ID == 0 {
  9893. // user_name = "管理员"
  9894. // } else {
  9895. // user_name = role.UserName
  9896. // }
  9897. //
  9898. // baseParams := models.BaseParams{
  9899. // SecretKey: miConfig.SecretKey,
  9900. // FixmedinsCode: miConfig.Code,
  9901. // InsuplcAdmdvs: miConfig.InsuplcAdmdvs,
  9902. // MdtrtareaAdmvs: miConfig.MdtrtareaAdmvs,
  9903. // OrgName: miConfig.OrgName,
  9904. // Doctor: user_name,
  9905. // }
  9906. //
  9907. // result := service.Gdyb9101(baseParams, file_name, ReadFile(file_path))
  9908. //
  9909. // var dat map[string]interface{}
  9910. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  9911. // fmt.Println(dat)
  9912. // } else {
  9913. // fmt.Println(err)
  9914. // }
  9915. //
  9916. // userJSONBytes, _ := json.Marshal(dat)
  9917. //
  9918. // var res ResultNine
  9919. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  9920. // utils.ErrorLog("解析失败:%v", err)
  9921. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9922. // return
  9923. // }
  9924. //
  9925. // if res.Infcode == 0 {
  9926. // fileNo := res.Output.FileQuryNo
  9927. // api := "http://127.0.0.1:9532/" + "gdyb/twelve?" +
  9928. // "file_qury_no=" + fileNo +
  9929. // "&setl_optins=" + "定点医保中心" +
  9930. // "&stmt_begndate=" + start_time +
  9931. // "&stm_enddate=" + end_time +
  9932. // "&medfee_sumamt=" + fmt.Sprintf("%.4f", medfee_sumamt) +
  9933. // "&fund_pay_sumamt=" + fmt.Sprintf("%.4f", fund_pay_sumamt) +
  9934. // "&cash_payamt=" + fmt.Sprintf("%.4f", psn_cash_pay) +
  9935. // "&fixmedins_setl_cnt=" + strconv.FormatInt(fixmedins_setl_cnt, 10) +
  9936. // "&fixmedins_code=" + miConfig.Code +
  9937. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs +
  9938. // "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs +
  9939. // "&secret_key=" + miConfig.SecretKey +
  9940. // "&org_name=" + miConfig.OrgName +
  9941. // "&doctor=" + user_name
  9942. // resp, requestErr := http.Get(api)
  9943. // if requestErr != nil {
  9944. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9945. // return
  9946. // }
  9947. // body, ioErr := ioutil.ReadAll(resp.Body)
  9948. // if ioErr != nil {
  9949. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  9950. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9951. // return
  9952. // }
  9953. // var respJSON map[string]interface{}
  9954. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  9955. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  9956. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9957. // return
  9958. // }
  9959. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  9960. //
  9961. // userJSONBytes, _ := json.Marshal(respJSON)
  9962. // var res ResultTen
  9963. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  9964. // utils.ErrorLog("解析失败:%v", err)
  9965. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  9966. // return
  9967. // }
  9968. //
  9969. // if res.Infcode == 0 {
  9970. // service.Gdyb9102(baseParams, zip_name, fileNo)
  9971. //
  9972. // micc := &models.MedicalInsuranceCostCompare{
  9973. // StartTime: startime.Unix(),
  9974. // EndTime: endtime.Unix(),
  9975. // Insutype: "0",
  9976. // CheckType: 2,
  9977. // Num: fixmedins_setl_cnt,
  9978. // Mtime: time.Now().Unix(),
  9979. // Status: 1,
  9980. // UserOrgId: adminUser.CurrentOrgId,
  9981. // CostTotal: medfee_sumamt,
  9982. // FuncTotal: fund_pay_sumamt,
  9983. // PsnPay: psn_cash_pay,
  9984. // Creator: admin_user_id,
  9985. // Ctime: time.Now().Unix(),
  9986. // }
  9987. //
  9988. // service.CreateMedicalInsuranceCostCompareRecord(micc)
  9989. //
  9990. // c.ServeSuccessJSON(map[string]interface{}{
  9991. // "msg": "明细对账成功",
  9992. // })
  9993. // }
  9994. //
  9995. // } else {
  9996. //
  9997. // }
  9998. // }
  9999. //}
  10000. //
  10001. //type CustomOrderInfo struct {
  10002. // Name string
  10003. // Spec string
  10004. // Unit string
  10005. // Count float64
  10006. // Price float64
  10007. // Total float64
  10008. //}
  10009. //
  10010. //func (c *HisApiController) GetSettleAccounts() {
  10011. // //id, _ := c.GetInt64("id")
  10012. // //record_time := c.GetString("record_time")
  10013. // order_id, _ := c.GetInt64("order_id")
  10014. // admin_user_id, _ := c.GetInt64("admin_user_id")
  10015. //
  10016. // //timeLayout := "2006-01-02"
  10017. // //loc, _ := time.LoadLocation("Local")
  10018. // //
  10019. // //theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_time+" 00:00:00", loc)
  10020. // //if err != nil {
  10021. // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  10022. // // return
  10023. // //}
  10024. // //recordDateTime := theTime.Unix()
  10025. // adminUser := c.GetAdminUserInfo()
  10026. // order, _ := service.GetHisOrderByID(order_id)
  10027. // his, _ := service.GetHisPatientByNumber(order.MdtrtId)
  10028. // orderInfos, _ := service.GetHisOrderInfoByNumber(order.Number)
  10029. // orderInfos_two, _ := service.GetHisOrderInfoByNumberTwo(order.Number)
  10030. // orderInfos = append(orderInfos, orderInfos_two...)
  10031. // his_hospital, _ := service.GetInHospitalRecordByNumber(order.MdtrtId)
  10032. // //diagnosisConfig, _ := service.FindDiagnoseById(his.Diagnosis)
  10033. // var diagnosis_ids []string
  10034. // if his.ID > 0 {
  10035. // diagnosis_ids = strings.Split(his.Diagnosis, ",")
  10036. //
  10037. // } else {
  10038. // diagnosis_ids = strings.Split(his_hospital.Diagnosis, ",")
  10039. //
  10040. // }
  10041. // patient, _ := service.GetPatientByIDTwo(adminUser.CurrentOrgId, order.PatientId)
  10042. // var dia_config []*models.HisXtDiagnoseConfig
  10043. // var name string
  10044. // for _, item := range diagnosis_ids {
  10045. // id, _ := strconv.ParseInt(item, 10, 64)
  10046. // diagnosisConfig, _ := service.FindDiagnoseById(id)
  10047. // dia_config = append(dia_config, &diagnosisConfig)
  10048. // if len(name) == 0 {
  10049. // name = diagnosisConfig.ClassName
  10050. //
  10051. // } else {
  10052. // name = name + "," + diagnosisConfig.ClassName
  10053. // }
  10054. // }
  10055. //
  10056. // var bedCostTotal float64 = 0 //床位总费
  10057. // var bedCostSelfTotal float64 = 0 //床位自费
  10058. // var bedCostPartSelfTotal float64 = 0 //床位部分项目自费
  10059. //
  10060. // var operationCostTotal float64 = 0 //手术费
  10061. // var operationCostSelfTotal float64 = 0 //手术费
  10062. // var operationCostPartSelfTotal float64 = 0 //手术费
  10063. //
  10064. // var otherCostTotal float64 = 0 //其他费用
  10065. // var otherCostSelfTotal float64 = 0 //其他费用
  10066. // var otherCostPartSelfTotal float64 = 0 //其他费用
  10067. //
  10068. // var materialCostTotal float64 = 0 //材料费
  10069. // var materialCostSelfTotal float64 = 0 //材料费
  10070. // var materialCostPartSelfTotal float64 = 0 //材料费
  10071. //
  10072. // var westernMedicineCostTotal float64 = 0 //西药费
  10073. // var westernMedicineCostSelfTotal float64 = 0 //西药费
  10074. // var westernMedicineCostPartSelfTotal float64 = 0 //西药费
  10075. //
  10076. // var chineseTraditionalMedicineCostTotal float64 = 0 //中成药
  10077. // var chineseTraditionalMedicineCostSelfTotal float64 = 0 //中成药
  10078. // var chineseTraditionalMedicineCostPartSelfTotal float64 = 0 //中成药
  10079. //
  10080. // var checkCostTotal float64 = 0 //检查费
  10081. // var checkCostSelfTotal float64 = 0 //检查费
  10082. // var checkCostPartSelfTotal float64 = 0 //检查费
  10083. //
  10084. // var laboratoryCostTotal float64 = 0 //化验费
  10085. // var laboratoryCostSelfTotal float64 = 0 //化验费
  10086. // var laboratoryCostPartSelfTotal float64 = 0 //化验费
  10087. //
  10088. // var treatCostTotal float64 = 0 //治疗费用
  10089. // var treatCostSelfTotal float64 = 0 //治疗费用
  10090. // var treatCostPartSelfTotal float64 = 0 //治疗费用
  10091. //
  10092. // decimal.DivisionPrecision = 2
  10093. //
  10094. // for _, item := range orderInfos {
  10095. // if item.MedChrgitmType == "01" { //床位费
  10096. // bedCostTotal, _ = decimal.NewFromFloat(bedCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  10097. // bedCostSelfTotal, _ = decimal.NewFromFloat(bedCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  10098. // bedCostPartSelfTotal, _ = decimal.NewFromFloat(bedCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  10099. // }
  10100. //
  10101. // if c.GetAdminUserInfo().CurrentOrgId == 10188 || c.GetAdminUserInfo().CurrentOrgId == 10217 {
  10102. // if item.MedChrgitmType == "03" { //检查费
  10103. // laboratoryCostTotal, _ = decimal.NewFromFloat(laboratoryCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  10104. // laboratoryCostSelfTotal, _ = decimal.NewFromFloat(laboratoryCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  10105. // laboratoryCostPartSelfTotal, _ = decimal.NewFromFloat(laboratoryCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  10106. // }
  10107. // } else {
  10108. //
  10109. // if item.MedChrgitmType == "03" { //检查费
  10110. // checkCostTotal, _ = decimal.NewFromFloat(checkCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  10111. // checkCostSelfTotal, _ = decimal.NewFromFloat(checkCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  10112. // checkCostPartSelfTotal, _ = decimal.NewFromFloat(checkCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  10113. // }
  10114. //
  10115. // }
  10116. //
  10117. // if item.MedChrgitmType == "04" { //化验费
  10118. // laboratoryCostTotal, _ = decimal.NewFromFloat(laboratoryCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  10119. // laboratoryCostSelfTotal, _ = decimal.NewFromFloat(laboratoryCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  10120. // laboratoryCostPartSelfTotal, _ = decimal.NewFromFloat(laboratoryCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  10121. //
  10122. // }
  10123. //
  10124. // if item.MedChrgitmType == "05" || item.MedChrgitmType == "1402" || item.MedChrgitmType == "1403" { //治疗费
  10125. //
  10126. // treatCostTotal, _ = decimal.NewFromFloat(treatCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  10127. // treatCostSelfTotal, _ = decimal.NewFromFloat(treatCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  10128. // treatCostPartSelfTotal, _ = decimal.NewFromFloat(treatCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  10129. //
  10130. // }
  10131. //
  10132. // if item.MedChrgitmType == "06" { //手术费
  10133. // operationCostTotal, _ = decimal.NewFromFloat(operationCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  10134. // operationCostSelfTotal, _ = decimal.NewFromFloat(operationCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  10135. // operationCostPartSelfTotal, _ = decimal.NewFromFloat(operationCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  10136. // }
  10137. //
  10138. // if item.MedChrgitmType == "08" { //材料费
  10139. // materialCostTotal, _ = decimal.NewFromFloat(materialCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  10140. // materialCostSelfTotal, _ = decimal.NewFromFloat(materialCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  10141. // materialCostPartSelfTotal, _ = decimal.NewFromFloat(materialCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  10142. // }
  10143. //
  10144. // if item.MedChrgitmType == "09" { //西药费
  10145. // westernMedicineCostTotal, _ = decimal.NewFromFloat(westernMedicineCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  10146. // westernMedicineCostSelfTotal, _ = decimal.NewFromFloat(westernMedicineCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  10147. // westernMedicineCostPartSelfTotal, _ = decimal.NewFromFloat(westernMedicineCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  10148. // }
  10149. //
  10150. // if item.MedChrgitmType == "11" { //中成费
  10151. // chineseTraditionalMedicineCostTotal, _ = decimal.NewFromFloat(chineseTraditionalMedicineCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  10152. // chineseTraditionalMedicineCostSelfTotal, _ = decimal.NewFromFloat(chineseTraditionalMedicineCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  10153. // chineseTraditionalMedicineCostPartSelfTotal, _ = decimal.NewFromFloat(chineseTraditionalMedicineCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  10154. // }
  10155. //
  10156. // if item.MedChrgitmType == "14" || item.MedChrgitmType == "0" || item.MedChrgitmType == "12" || item.MedChrgitmType == "02" { //其他费
  10157. // otherCostTotal, _ = decimal.NewFromFloat(otherCostTotal).Add(decimal.NewFromFloat(item.DetItemFeeSumamt)).Float64()
  10158. // otherCostSelfTotal, _ = decimal.NewFromFloat(otherCostSelfTotal).Add(decimal.NewFromFloat(item.OverlmtAmt)).Float64()
  10159. // otherCostPartSelfTotal, _ = decimal.NewFromFloat(otherCostPartSelfTotal).Add(decimal.NewFromFloat(item.PreselfpayAmt)).Float64()
  10160. // }
  10161. // }
  10162. //
  10163. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  10164. // config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  10165. //
  10166. // var user_name string
  10167. // role, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  10168. // if role.ID == 0 {
  10169. // user_name = "管理员"
  10170. // } else {
  10171. // user_name = role.UserName
  10172. // }
  10173. //
  10174. // baseParams := models.BaseParams{
  10175. // SecretKey: miConfig.SecretKey,
  10176. // FixmedinsCode: miConfig.Code,
  10177. // InsuplcAdmdvs: miConfig.InsuplcAdmdvs,
  10178. // MdtrtareaAdmvs: miConfig.MdtrtareaAdmvs,
  10179. // OrgName: miConfig.OrgName,
  10180. // Doctor: user_name,
  10181. // }
  10182. //
  10183. // businessParams := models.BusinessParams{
  10184. // PsnNo: order.PsnNo,
  10185. // MdtrtId: order.MdtrtId,
  10186. // SetlId: order.SetlId,
  10187. // }
  10188. // var res ResultEleven
  10189. // var resEleven10265 ResultEleven10265
  10190. //
  10191. // if config.IsOpen == 1 {
  10192. // if miConfig.MdtrtareaAdmvs == "421300" {
  10193. //
  10194. // api := "http://192.168.124.4:9532/" + "hbyb/5203?psn_no=" + businessParams.PsnNo + "&mdtrt_id=" + businessParams.MdtrtId + "&setl_id=" + businessParams.SetlId +
  10195. // "&org_name=" + miConfig.OrgName + "&doctor=" + baseParams.Doctor + "&fixmedins_code=" + miConfig.Code +
  10196. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey
  10197. // resp, requestErr := http.Get(api)
  10198. // if requestErr != nil {
  10199. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10200. // return
  10201. // }
  10202. //
  10203. // body, ioErr := ioutil.ReadAll(resp.Body)
  10204. // if ioErr != nil {
  10205. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  10206. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10207. // return
  10208. // }
  10209. // var respJSON map[string]interface{}
  10210. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  10211. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  10212. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10213. // return
  10214. // }
  10215. //
  10216. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  10217. // result, _ := json.Marshal(respJSON)
  10218. // fmt.Println("log")
  10219. // fmt.Println(string(result))
  10220. // if err := json.Unmarshal([]byte(result), &res); err != nil {
  10221. // utils.ErrorLog("解析失败:%v", err)
  10222. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10223. // return
  10224. // }
  10225. //
  10226. // } else if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  10227. //
  10228. // var api string
  10229. // if miConfig.MdtrtareaAdmvs == "320921" {
  10230. // api = "http://192.168.3.111:9532/" + "jsyb/5203?psn_no=" + businessParams.PsnNo + "&mdtrt_id=" + businessParams.MdtrtId + "&setl_id=" + businessParams.SetlId +
  10231. // "&org_name=" + miConfig.OrgName + "&doctor=" + baseParams.Doctor + "&fixmedins_code=" + miConfig.Code +
  10232. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&cainfo=" + miConfig.Cainfo
  10233. //
  10234. // //req, _ = http.NewRequest("POST", "http://192.168.3.111:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  10235. //
  10236. // } else {
  10237. // //req, _ = http.NewRequest("POST", "http://192.168.5.251:9532/"+"jsyb/2204", bytes.NewReader(bytesData))
  10238. // api = "http://192.168.5.251:9532/" + "jsyb/5203?psn_no=" + businessParams.PsnNo + "&mdtrt_id=" + businessParams.MdtrtId + "&setl_id=" + businessParams.SetlId +
  10239. // "&org_name=" + miConfig.OrgName + "&doctor=" + baseParams.Doctor + "&fixmedins_code=" + miConfig.Code +
  10240. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&cainfo=" + miConfig.Cainfo
  10241. //
  10242. // }
  10243. //
  10244. // resp, requestErr := http.Get(api)
  10245. // if requestErr != nil {
  10246. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10247. // return
  10248. // }
  10249. //
  10250. // body, ioErr := ioutil.ReadAll(resp.Body)
  10251. // if ioErr != nil {
  10252. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  10253. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10254. // return
  10255. // }
  10256. // var respJSON map[string]interface{}
  10257. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  10258. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  10259. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10260. // return
  10261. // }
  10262. //
  10263. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  10264. // result, _ := json.Marshal(respJSON)
  10265. // fmt.Println("log")
  10266. // fmt.Println(string(result))
  10267. // if err := json.Unmarshal([]byte(result), &resEleven10265); err != nil {
  10268. // utils.ErrorLog("解析失败:%v", err)
  10269. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10270. // return
  10271. // }
  10272. //
  10273. // res.InfRefmsgid = resEleven10265.InfRefmsgid
  10274. // res.Output = resEleven10265.Output
  10275. // res.ErrMsg = resEleven10265.ErrMsg
  10276. // res.Cainfo = resEleven10265.Cainfo
  10277. // res.WarnMsg = resEleven10265.WarnMsg
  10278. // infocode, _ := strconv.ParseInt(resEleven10265.Infcode, 10, 64)
  10279. // res.Infcode = infocode
  10280. //
  10281. // } else if miConfig.MdtrtareaAdmvs == "150499" {
  10282. // fmt.Println("~~~~~~~")
  10283. //
  10284. // api := "http://172.16.13.254:9532/" + "nmyb/5203?psn_no=" + businessParams.PsnNo + "&mdtrt_id=" + businessParams.MdtrtId + "&setl_id=" + businessParams.SetlId +
  10285. // "&org_name=" + miConfig.OrgName + "&doctor=" + baseParams.Doctor + "&fixmedins_code=" + miConfig.Code +
  10286. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey
  10287. //
  10288. // resp, requestErr := http.Get(api)
  10289. // if requestErr != nil {
  10290. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10291. // return
  10292. // }
  10293. // body, ioErr := ioutil.ReadAll(resp.Body)
  10294. // if ioErr != nil {
  10295. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  10296. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10297. // return
  10298. // }
  10299. // var respJSON map[string]interface{}
  10300. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  10301. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  10302. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10303. // return
  10304. // }
  10305. //
  10306. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  10307. // result, _ := json.Marshal(respJSON)
  10308. // fmt.Println("log")
  10309. // fmt.Println(string(result))
  10310. // if err := json.Unmarshal([]byte(result), &resEleven10265); err != nil {
  10311. // utils.ErrorLog("解析失败:%v", err)
  10312. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10313. // return
  10314. // }
  10315. //
  10316. // res.InfRefmsgid = resEleven10265.InfRefmsgid
  10317. // res.Output = resEleven10265.Output
  10318. // res.ErrMsg = resEleven10265.ErrMsg
  10319. // res.Cainfo = resEleven10265.Cainfo
  10320. // res.WarnMsg = resEleven10265.WarnMsg
  10321. // infocode, _ := strconv.ParseInt(resEleven10265.Infcode, 10, 64)
  10322. // res.Infcode = infocode
  10323. //
  10324. // } else {
  10325. // result := service.Gdyb5203(baseParams, businessParams)
  10326. // //service.Gdyb5204(baseParams, businessParams)
  10327. // //service.Gdyb5302(businessParams.PsnNo, baseParams.OrgName, baseParams.Doctor, baseParams.FixmedinsCode, baseParams.InsuplcAdmdvs, baseParams.MdtrtareaAdmvs, baseParams.SecretKey)
  10328. //
  10329. // var dat map[string]interface{}
  10330. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  10331. // fmt.Println(dat)
  10332. // } else {
  10333. // fmt.Println(err)
  10334. // }
  10335. // userJSONBytes, _ := json.Marshal(dat)
  10336. //
  10337. // if miConfig.Code == "H15049901371" {
  10338. // if err := json.Unmarshal(userJSONBytes, &resEleven10265); err != nil {
  10339. // utils.ErrorLog("解析失败:%v", err)
  10340. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10341. // return
  10342. // }
  10343. // res.InfRefmsgid = resEleven10265.InfRefmsgid
  10344. // res.Output = resEleven10265.Output
  10345. // res.ErrMsg = resEleven10265.ErrMsg
  10346. // res.Cainfo = resEleven10265.Cainfo
  10347. // res.WarnMsg = resEleven10265.WarnMsg
  10348. // infocode, _ := strconv.ParseInt(resEleven10265.Infcode, 10, 64)
  10349. // res.Infcode = infocode
  10350. // } else {
  10351. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  10352. // utils.ErrorLog("解析失败:%v", err)
  10353. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10354. // return
  10355. // }
  10356. //
  10357. // }
  10358. // }
  10359. //
  10360. // printor_admin, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  10361. // charge_admin, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, order.Creator)
  10362. //
  10363. // patientPrescription, _ := service.FindPatientPrescriptionInfo(adminUser.CurrentOrgId, order.PatientId, order.SettleAccountsDate)
  10364. // adminRole_two, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, patientPrescription.DoctorId)
  10365. //
  10366. // doctor_info, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, his_hospital.Doctor)
  10367. //
  10368. // roles, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  10369. //
  10370. // var doctor_name string
  10371. // if roles.ID == 0 {
  10372. // doctor_name = "管理员"
  10373. // } else {
  10374. // doctor_name = roles.UserName
  10375. // }
  10376. //
  10377. // yiliao_leibie := ""
  10378. //
  10379. // switch order.MedType {
  10380. // case "11":
  10381. // yiliao_leibie = "普通门诊"
  10382. // break
  10383. // case "12":
  10384. // yiliao_leibie = "门诊挂号"
  10385. // break
  10386. // case "13":
  10387. // yiliao_leibie = "急诊"
  10388. // break
  10389. // case "14":
  10390. // yiliao_leibie = "门诊特殊病"
  10391. // break
  10392. // case "15":
  10393. // yiliao_leibie = "门诊统筹"
  10394. // break
  10395. // case "16":
  10396. // yiliao_leibie = "门诊慢性病"
  10397. // break
  10398. // case "21":
  10399. // yiliao_leibie = "普通住院"
  10400. // break
  10401. // }
  10402. // departments, _ := service.GetDepartMentDetail(patientPrescription.Departments)
  10403. //
  10404. // if res.Infcode == 0 {
  10405. // c.ServeSuccessJSON(map[string]interface{}{
  10406. // "diagnosis": name,
  10407. // "order_infos": orderInfos,
  10408. // "number": order.MdtrtId,
  10409. // "date": order.SettleAccountsDate,
  10410. // "charge_admin": charge_admin,
  10411. // "printor_admin": printor_admin,
  10412. // "info": res.Output.Setlinfo,
  10413. // "order": order,
  10414. // "bedCostTotal": bedCostTotal,
  10415. // "bedCostSelfTotal": bedCostSelfTotal,
  10416. // "bedCostPartSelfTotal": bedCostPartSelfTotal,
  10417. // "operationCostTotal": operationCostTotal,
  10418. // "operationCostSelfTotal": operationCostSelfTotal,
  10419. // "operationCostPartSelfTotal": operationCostPartSelfTotal,
  10420. // "otherCostTotal": otherCostTotal,
  10421. // "otherCostSelfTotal": otherCostSelfTotal,
  10422. // "otherCostPartSelfTotal": otherCostPartSelfTotal,
  10423. // "materialCostTotal": materialCostTotal,
  10424. // "materialCostSelfTotal": materialCostSelfTotal,
  10425. // "materialCostPartSelfTotal": materialCostPartSelfTotal,
  10426. // "westernMedicineCostTotal": westernMedicineCostTotal,
  10427. // "westernMedicineCostSelfTotal": westernMedicineCostSelfTotal,
  10428. // "westernMedicineCostPartSelfTotal": westernMedicineCostPartSelfTotal,
  10429. // "chineseTraditionalMedicineCostTotal": chineseTraditionalMedicineCostTotal,
  10430. // "chineseTraditionalMedicineCostSelfTotal": chineseTraditionalMedicineCostSelfTotal,
  10431. // "chineseTraditionalMedicineCostPartSelfTotal": chineseTraditionalMedicineCostPartSelfTotal,
  10432. // "checkCostTotal": checkCostTotal,
  10433. // "checkCostSelfTotal": checkCostSelfTotal,
  10434. // "checkCostPartSelfTotal": checkCostPartSelfTotal,
  10435. // "laboratoryCostTotal": laboratoryCostTotal,
  10436. // "laboratoryCostSelfTotal": laboratoryCostSelfTotal,
  10437. // "laboratoryCostPartSelfTotal": laboratoryCostPartSelfTotal,
  10438. // "treatCostTotal": treatCostTotal,
  10439. // "treatCostSelfTotal": treatCostSelfTotal,
  10440. // "treatCostPartSelfTotal": treatCostPartSelfTotal,
  10441. // "doctor_info": doctor_info,
  10442. // "doctor_code": adminRole_two.DoctorCode,
  10443. // "doctor_name": doctor_name,
  10444. // "health_card_no": order.PsnNo,
  10445. // "department": departments.Name,
  10446. // "yiliao_leibie": yiliao_leibie,
  10447. // "after_money": order.AccountPrice,
  10448. // "patient": patient,
  10449. // "org_name": miConfig.OrgName,
  10450. // "org_code": miConfig.Code,
  10451. // "order_number": order.Number,
  10452. // "his_hospital": his_hospital,
  10453. // "his": his,
  10454. // "dia_config": dia_config,
  10455. //
  10456. // //"check_order_info": cus_slice,
  10457. // })
  10458. // }
  10459. // }
  10460. //
  10461. //}
  10462. //
  10463. //func (c *HisApiController) CheckTreatment() {
  10464. // patient_id, _ := c.GetInt64("patient_id")
  10465. // id_card_no := c.GetString("id_card_no")
  10466. // insutype := c.GetString("insutype")
  10467. // med_type := c.GetString("med_type")
  10468. // admin_user_id, _ := c.GetInt64("admin_user_id")
  10469. //
  10470. // adminUser := c.GetAdminUserInfo()
  10471. // patient, _ := service.GetPatientByID(adminUser.CurrentOrgId, patient_id)
  10472. //
  10473. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  10474. // config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  10475. // roles, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  10476. //
  10477. // if miConfig.MdtrtareaAdmvs == "421300" {
  10478. // var res ResultTwo
  10479. // api := "http://192.168.124.4:9532/" + "hbyb/1101?cert_no=" + "" +
  10480. // "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code +
  10481. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(2, 10) + "&card_sn=" + "" + "&certificates=" + strconv.FormatInt(2, 10)
  10482. // resp, requestErr := http.Get(api)
  10483. // if requestErr != nil {
  10484. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10485. // return
  10486. // }
  10487. //
  10488. // body, ioErr := ioutil.ReadAll(resp.Body)
  10489. // if ioErr != nil {
  10490. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  10491. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10492. // return
  10493. // }
  10494. // var respJSON map[string]interface{}
  10495. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  10496. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  10497. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10498. // return
  10499. // }
  10500. //
  10501. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  10502. // result, _ := json.Marshal(respJSON)
  10503. //
  10504. // if err := json.Unmarshal([]byte(result), &res); err != nil {
  10505. // utils.ErrorLog("解析失败:%v", err)
  10506. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10507. // return
  10508. // }
  10509. //
  10510. // if res.Infcode == 0 {
  10511. //
  10512. // api := "http://192.168.124.4:9532/" + "hbyb/2001?cert_no=" + "" +
  10513. // "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName + "&fixmedins_code=" + miConfig.Code +
  10514. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&psn_no=" + res.Output[0].Baseinfo.PsnNo + "&insutype=" + insutype + "&med_type=" + med_type
  10515. // resp, requestErr := http.Get(api)
  10516. // if requestErr != nil {
  10517. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10518. // return
  10519. // }
  10520. //
  10521. // body, ioErr := ioutil.ReadAll(resp.Body)
  10522. // if ioErr != nil {
  10523. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  10524. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10525. // return
  10526. // }
  10527. // var respJSON map[string]interface{}
  10528. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  10529. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  10530. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10531. // return
  10532. // }
  10533. // var res Result2001
  10534. //
  10535. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  10536. // result2, _ := json.Marshal(respJSON)
  10537. //
  10538. // if err := json.Unmarshal([]byte(result2), &res); err != nil {
  10539. // utils.ErrorLog("解析失败:%v", err)
  10540. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10541. // return
  10542. // }
  10543. //
  10544. // if res.Infcode == 0 {
  10545. // c.ServeSuccessJSON(map[string]interface{}{
  10546. // "msg": res.Output.Trtinfo,
  10547. // })
  10548. // }
  10549. //
  10550. // } else {
  10551. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisFailedException)
  10552. // return
  10553. // }
  10554. //
  10555. // } else {
  10556. //
  10557. // result := service.Gdyb1101A(id_card_no, miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, patient.Name)
  10558. // var dat map[string]interface{}
  10559. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  10560. // fmt.Println(dat)
  10561. // } else {
  10562. // fmt.Println(err)
  10563. // }
  10564. // userJSONBytes, _ := json.Marshal(dat)
  10565. // var res ResultTwo
  10566. // var res10265 ResultTwo10265
  10567. // if miConfig.Code == "H15049901371" {
  10568. // if err := json.Unmarshal(userJSONBytes, &res10265); err != nil {
  10569. // utils.ErrorLog("解析失败:%v", err)
  10570. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10571. // return
  10572. // }
  10573. // res.ErrMsg = res10265.ErrMsg
  10574. // infocode, _ := strconv.ParseInt(res10265.Infcode, 10, 64)
  10575. // res.Infcode = infocode
  10576. // //res.Output = res10265.Output
  10577. // res.InfRefmsgid = res10265.InfRefmsgid
  10578. // } else {
  10579. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  10580. // utils.ErrorLog("解析失败:%v", err)
  10581. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10582. // return
  10583. // }
  10584. // }
  10585. //
  10586. // var user_name string
  10587. // role, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, adminUser.AdminUser.Id)
  10588. // if role.ID == 0 {
  10589. // user_name = "xxx"
  10590. // } else {
  10591. // user_name = role.UserName
  10592. // }
  10593. //
  10594. // baseParams := models.BaseParams{
  10595. // SecretKey: miConfig.SecretKey,
  10596. // FixmedinsCode: miConfig.Code,
  10597. // InsuplcAdmdvs: miConfig.InsuplcAdmdvs,
  10598. // MdtrtareaAdmvs: miConfig.MdtrtareaAdmvs,
  10599. // OrgName: miConfig.OrgName,
  10600. // Doctor: user_name,
  10601. // }
  10602. //
  10603. // if config.IsOpen == 1 {
  10604. // if miConfig.Code == "H15049901371" {
  10605. // if med_type == "14" {
  10606. // if insutype == "390" {
  10607. // med_type = "9933"
  10608. // } else if insutype == "310" {
  10609. // med_type = "990502"
  10610. // }
  10611. // } else if med_type == "11" {
  10612. // med_type = "11"
  10613. // }
  10614. // }
  10615. // result := service.Gdyb2001(baseParams, res.Output[0].Baseinfo.PsnNo, insutype, med_type)
  10616. // var dat map[string]interface{}
  10617. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  10618. // fmt.Println(dat)
  10619. // } else {
  10620. // fmt.Println(err)
  10621. // }
  10622. // var res Result2001
  10623. // var res10265 Result2001Org10265
  10624. // if miConfig.Code == "H15049901371" {
  10625. // if err := json.Unmarshal([]byte(result), &res10265); err != nil {
  10626. // utils.ErrorLog("解析失败:%v", err)
  10627. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10628. // return
  10629. // }
  10630. // res.ErrMsg = res10265.ErrMsg
  10631. // res.Output = res10265.Output
  10632. // res.InfRefmsgid = res10265.InfRefmsgid
  10633. // infocode, _ := strconv.ParseInt(res10265.Infcode, 10, 64)
  10634. // res.Infcode = infocode
  10635. // } else {
  10636. // if err := json.Unmarshal([]byte(result), &res); err != nil {
  10637. // utils.ErrorLog("解析失败:%v", err)
  10638. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10639. // return
  10640. // }
  10641. // }
  10642. // if res.Infcode == 0 {
  10643. // c.ServeSuccessJSON(map[string]interface{}{
  10644. // "msg": res.Output.Trtinfo,
  10645. // })
  10646. // }
  10647. // }
  10648. // }
  10649. //}
  10650. //
  10651. ////func (c *HisApiController) PutRecord() {
  10652. //// id, _ := c.GetInt64("id")
  10653. //// record_time := c.GetString("record_time")
  10654. //// timeLayout := "2006-01-02"
  10655. //// loc, _ := time.LoadLocation("Local")
  10656. //// theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_time+" 00:00:00", loc)
  10657. //// if err != nil {
  10658. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  10659. //// return
  10660. //// }
  10661. //// recordDateTime := theTime.Unix()
  10662. ////
  10663. //// adminInfo := c.GetAdminUserInfo()
  10664. //// patient, _ := service.GetPatientByID(adminInfo.CurrentOrgId, id)
  10665. //// patientPrescription, _ := service.FindPatientPrescriptionInfo(adminInfo.CurrentOrgId, id, recordDateTime)
  10666. ////
  10667. //// miConfig, _ := service.FindMedicalInsuranceInfo(adminInfo.CurrentOrgId)
  10668. ////
  10669. //// fmt.Println(miConfig.SecretKey)
  10670. ////
  10671. //// if patient == nil {
  10672. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodePatientNoExist)
  10673. //// return
  10674. //// }
  10675. //// if len(patient.IdCardNo) == 0 {
  10676. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeIDCartNo)
  10677. //// return
  10678. //// }
  10679. //// config, _ := service.GetMedicalInsuranceConfig(adminInfo.CurrentOrgId)
  10680. //// if config.IsOpen == 1 {
  10681. //// api := "http://127.0.0.1:9532/" + "gdyb/one?cert_no=" + patient.IdCardNo + "&org_name=" + miConfig.OrgName + "&doctor=" + patientPrescription.Doctor + "&fixmedins_code=" + miConfig.Code + "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey
  10682. //// resp, requestErr := http.Get(api)
  10683. //// if requestErr != nil {
  10684. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10685. //// return
  10686. //// }
  10687. //// defer resp.Body.Close()
  10688. //// body, ioErr := ioutil.ReadAll(resp.Body)
  10689. //// if ioErr != nil {
  10690. //// utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  10691. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10692. //// return
  10693. //// }
  10694. //// var respJSON map[string]interface{}
  10695. ////
  10696. //// if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  10697. //// utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  10698. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10699. //// return
  10700. //// }
  10701. ////
  10702. //// userJSON := respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  10703. //// userJSONBytes, _ := json.Marshal(userJSON)
  10704. //// var res ResultTwo
  10705. //// if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  10706. //// utils.ErrorLog("解析失败:%v", err)
  10707. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10708. //// return
  10709. //// }
  10710. //// Iinfos, _ := json.Marshal(res.Output.Iinfo)
  10711. //// Idetinfos, _ := json.Marshal(res.Output.Idetinfo)
  10712. //// infoStr := string(Iinfos)
  10713. //// idetinfoStr := string(Idetinfos)
  10714. ////
  10715. //// if res.Infcode == 0 {
  10716. //// his := models.VMHisPatient{
  10717. //// Status: 1,
  10718. //// Ctime: time.Now().Unix(),
  10719. //// Mtime: time.Now().Unix(),
  10720. //// PsnNo: res.Output.Baseinfo.PsnNo,
  10721. //// PsnCertType: res.Output.Baseinfo.PsnCertType,
  10722. //// Certno: res.Output.Baseinfo.Certno,
  10723. //// PsnName: res.Output.Baseinfo.PsnName,
  10724. //// Gend: res.Output.Baseinfo.Gend,
  10725. //// Naty: res.Output.Baseinfo.Naty,
  10726. //// Brdy: res.Output.Baseinfo.Brdy,
  10727. //// Age: res.Output.Baseinfo.Age,
  10728. //// Iinfo: infoStr,
  10729. //// Idetinfo: idetinfoStr,
  10730. //// PatientId: patient.ID,
  10731. //// RecordDate: theTime.Unix(),
  10732. //// UserOrgId: adminInfo.CurrentOrgId,
  10733. //// AdminUserId: adminInfo.AdminUser.Id,
  10734. //// IsReturn: 1,
  10735. //// }
  10736. ////
  10737. //// //doctor_id := strconv.FormatInt(patientPrescription.DoctorId, 10)
  10738. //// //result := service.Gdyb2503(his.PsnNo, res.Output.Iinfo[0].Insutype, miConfig.OrgName, patientPrescription.Doctor, miConfig.Code, doctor_id, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, "重症尿毒症透析(血透)", "M07801")
  10739. //// //result2 := service.Gdyb5301(his.PsnNo, res.Output.Iinfo[0].Insutype, miConfig.OrgName, patientPrescription.Doctor, miConfig.Code, doctor_id, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, "重症尿毒症透析(血透)", "M07801")
  10740. ////
  10741. //// //var dat map[string]interface{}
  10742. //// //if err := json.Unmarshal([]byte(result), &dat); err == nil {
  10743. //// // fmt.Println(dat)
  10744. //// //} else {
  10745. //// // fmt.Println(err)
  10746. //// //}
  10747. ////
  10748. //// var dat2 map[string]interface{}
  10749. //// if err := json.Unmarshal([]byte(result2), &dat2); err == nil {
  10750. //// fmt.Println(dat2)
  10751. //// } else {
  10752. //// fmt.Println(err)
  10753. //// }
  10754. ////
  10755. //// } else {
  10756. //// adminUser := c.GetAdminUserInfo()
  10757. //// errlog := &models.HisOrderError{
  10758. //// UserOrgId: adminUser.CurrentOrgId,
  10759. //// Ctime: time.Now().Unix(),
  10760. //// Mtime: time.Now().Unix(),
  10761. //// ErrMsg: res.ErrMsg,
  10762. //// Status: 1,
  10763. //// PatientId: id,
  10764. //// RecordTime: recordDateTime,
  10765. //// Stage: 1,
  10766. //// }
  10767. //// service.CreateErrMsgLog(errlog)
  10768. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeGdybOneException)
  10769. //// return
  10770. //// }
  10771. //// }
  10772. ////
  10773. ////}
  10774. //
  10775. ////func (c *HisApiController) GetUploadDiag() {
  10776. //// id, _ := c.GetInt64("id")
  10777. //// record_time := c.GetString("record_time")
  10778. ////
  10779. //// diagnosis_id, _ := c.GetInt64("diagnosis")
  10780. //// sick_type, _ := c.GetInt64("sick_type")
  10781. //// reg_type, _ := c.GetInt64("reg_type")
  10782. ////
  10783. //// timeLayout := "2006-01-02"
  10784. //// loc, _ := time.LoadLocation("Local")
  10785. //// theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_time+" 00:00:00", loc)
  10786. //// if err != nil {
  10787. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
  10788. //// return
  10789. //// }
  10790. ////
  10791. //// var patientPrescription models.HisPrescriptionInfo
  10792. //// recordDateTime := theTime.Unix()
  10793. //// adminInfo := c.GetAdminUserInfo()
  10794. //// patientPrescription, _ = service.FindPatientPrescriptionInfo(adminInfo.CurrentOrgId, id, recordDateTime)
  10795. ////
  10796. //// if patientPrescription.ID == 0 {
  10797. //// patientPrescription, _ = service.FindLastPatientPrescriptionInfo(adminInfo.CurrentOrgId, id, recordDateTime)
  10798. //// }
  10799. ////
  10800. //// miConfig, _ := service.FindMedicalInsuranceInfo(adminInfo.CurrentOrgId)
  10801. //// diagnosisConfig, _ := service.FindDiagnoseById(diagnosis_id)
  10802. //// his, _ := service.GetVMHisPatientInfo(adminInfo.CurrentOrgId, id, recordDateTime)
  10803. //// sickConfig, _ := service.FindSickById(sick_type)
  10804. //// department, _ := service.GetDepartMentDetail(patientPrescription.Departments)
  10805. ////
  10806. //// api2 := "http://127.0.0.1:9532/" + "gdyb/four?psn_no=" + his.PsnNo +
  10807. //// "&mdtrt_id=" + his.Number + "&doctor=" + patientPrescription.Doctor + "&department=" + department.Name +
  10808. //// "&diag=" + diagnosisConfig.ClassName + "&org_name=" + miConfig.OrgName + "&med_type=" + strconv.FormatInt(reg_type, 10) + "&doctor_id=" + strconv.FormatInt(patientPrescription.DoctorId, 10) + "&fixmedins_code=" + miConfig.Code + "&diag_code=" + diagnosisConfig.CountryCode +
  10809. //// "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&sick_code=" + sickConfig.ContentCode + "&sick_name=" + sickConfig.ClassName
  10810. //// resp2, requestErr2 := http.Get(api2)
  10811. //// if requestErr2 != nil {
  10812. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10813. //// return
  10814. //// }
  10815. //// body2, ioErr2 := ioutil.ReadAll(resp2.Body)
  10816. //// if ioErr2 != nil {
  10817. //// utils.ErrorLog("接口返回数据读取失败: %v", ioErr2)
  10818. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10819. //// return
  10820. //// }
  10821. //// var respJSON2 map[string]interface{}
  10822. //// if err := json.Unmarshal([]byte(string(body2)), &respJSON2); err != nil {
  10823. //// utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  10824. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10825. //// return
  10826. //// }
  10827. //// respJSON2 = respJSON2["data"].(map[string]interface{})["pre"].(map[string]interface{})
  10828. //// userJSONBytes2, _ := json.Marshal(respJSON2)
  10829. ////
  10830. //// var res2 ResultSix
  10831. //// if err := json.Unmarshal(userJSONBytes2, &res2); err != nil {
  10832. //// utils.ErrorLog("解析失败:%v", err)
  10833. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10834. //// return
  10835. //// }
  10836. //// if res2.Infcode != 0 {
  10837. //// adminUser := c.GetAdminUserInfo()
  10838. //// errlog := &models.HisOrderError{
  10839. //// UserOrgId: adminUser.CurrentOrgId,
  10840. //// Ctime: time.Now().Unix(),
  10841. //// Mtime: time.Now().Unix(),
  10842. //// ErrMsg: res2.ErrMsg,
  10843. //// Status: 1,
  10844. //// PatientId: id,
  10845. //// RecordTime: recordDateTime,
  10846. //// Stage: 3,
  10847. //// }
  10848. //// service.CreateErrMsgLog(errlog)
  10849. ////
  10850. //// c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeRegisterThreeException)
  10851. //// return
  10852. //// }
  10853. ////
  10854. //// c.ServeSuccessJSON(map[string]interface{}{
  10855. //// "msg": "上传成功",
  10856. //// })
  10857. ////
  10858. ////}
  10859. //
  10860. //type QueryResult struct {
  10861. // ID int64
  10862. // Name string
  10863. // Code string
  10864. // List_type_code string
  10865. //}
  10866. //
  10867. //func (c *HisApiController) GetCheckCode() {
  10868. // ids_str := c.GetString("ids")
  10869. // record_type, _ := c.GetInt64("record_type") //1.药品 2.耗材 3.项目
  10870. //
  10871. // ids_arr := strings.Split(ids_str, ",")
  10872. // var queryResult []QueryResult
  10873. // ids := make([]int64, 0)
  10874. // for _, item := range ids_arr {
  10875. // id, _ := strconv.ParseInt(item, 10, 64)
  10876. // ids = append(ids, id)
  10877. // }
  10878. // if record_type == 1 {
  10879. // drugs, _ := service.GetBatchDrugList(ids)
  10880. // for _, item := range drugs {
  10881. // result := QueryResult{
  10882. // ID: item.ID,
  10883. // Name: item.DrugName,
  10884. // Code: item.MedicalInsuranceNumber,
  10885. // List_type_code: "101",
  10886. // }
  10887. // queryResult = append(queryResult, result)
  10888. // }
  10889. //
  10890. // } else if record_type == 2 {
  10891. // goods, _ := service.GetBatchGoodInformationList(ids)
  10892. //
  10893. // for _, item := range goods {
  10894. // result := QueryResult{
  10895. // ID: item.ID,
  10896. // Name: item.GoodName,
  10897. // Code: item.MedicalInsuranceNumber,
  10898. // List_type_code: "301",
  10899. // }
  10900. // queryResult = append(queryResult, result)
  10901. // }
  10902. // } else if record_type == 3 {
  10903. // projects, _ := service.GetBathchMyPorjecgList(ids)
  10904. // for _, item := range projects {
  10905. // result := QueryResult{
  10906. // ID: item.ID,
  10907. // Name: item.ProjectName,
  10908. // Code: item.MedicalCode,
  10909. // List_type_code: "201",
  10910. // }
  10911. // queryResult = append(queryResult, result)
  10912. // }
  10913. // }
  10914. //
  10915. // admin_user_id, _ := c.GetInt64("admin_user_id")
  10916. // adminUser := c.GetAdminUserInfo()
  10917. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  10918. // config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  10919. //
  10920. // var user_name string
  10921. // role, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  10922. // if role.ID == 0 {
  10923. // user_name = "xxx"
  10924. // } else {
  10925. // user_name = role.UserName
  10926. // }
  10927. //
  10928. // baseParams := &models.BaseParams{
  10929. // SecretKey: miConfig.SecretKey,
  10930. // FixmedinsCode: miConfig.Code,
  10931. // InsuplcAdmdvs: miConfig.InsuplcAdmdvs,
  10932. // MdtrtareaAdmvs: miConfig.MdtrtareaAdmvs,
  10933. // OrgName: miConfig.OrgName,
  10934. // Doctor: user_name,
  10935. // }
  10936. //
  10937. // if config.IsOpen == 1 {
  10938. // for _, item := range queryResult {
  10939. // var result string
  10940. // if record_type == 1 {
  10941. // result = service.Gdyb3301(baseParams, item.Name, item.Code, item.List_type_code, "2021-04-26", "", item.List_type_code)
  10942. // } else if record_type == 2 {
  10943. // result = service.Gdyb3301(baseParams, item.Name, item.Code, item.List_type_code, "2021-04-26", "", item.List_type_code)
  10944. // } else if record_type == 3 {
  10945. // result = service.Gdyb3301(baseParams, item.Name, item.Code, item.List_type_code, "2021-04-26", "", item.List_type_code)
  10946. // }
  10947. // var dat map[string]interface{}
  10948. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  10949. // fmt.Println(dat)
  10950. // } else {
  10951. // fmt.Println(err)
  10952. // }
  10953. // userJSONBytes, _ := json.Marshal(dat)
  10954. // var res ResultSix
  10955. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  10956. // utils.ErrorLog("解析失败:%v", err)
  10957. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  10958. // return
  10959. // }
  10960. // if res.Infcode == 0 {
  10961. // if record_type == 1 {
  10962. // service.UpdateBaseDrugById(item.ID)
  10963. // } else if record_type == 2 {
  10964. // service.UpdateGoodInformaitonByDetail(item.ID)
  10965. // } else if record_type == 3 {
  10966. // service.UpdateProjectById(item.ID)
  10967. // }
  10968. // c.ServeSuccessJSON(map[string]interface{}{
  10969. // "failed_code": 0,
  10970. // "msg": "目录对照成功",
  10971. // })
  10972. // } else {
  10973. // c.ServeSuccessJSON(map[string]interface{}{
  10974. // "failed_code": -10,
  10975. // "msg": res.ErrMsg,
  10976. // })
  10977. //
  10978. // }
  10979. // }
  10980. // }
  10981. //}
  10982. //func (c *HisApiController) UnCheckCode() {
  10983. // ids_str := c.GetString("ids")
  10984. // record_type, _ := c.GetInt64("record_type") //1.药品 2.耗材 3.项目
  10985. // admin_user_id, _ := c.GetInt64("admin_user_id")
  10986. // ids_arr := strings.Split(ids_str, ",")
  10987. // var queryResult []QueryResult
  10988. // ids := make([]int64, 0)
  10989. // for _, item := range ids_arr {
  10990. // id, _ := strconv.ParseInt(item, 10, 64)
  10991. // ids = append(ids, id)
  10992. // }
  10993. // if record_type == 1 {
  10994. // drugs, _ := service.GetBatchDrugList(ids)
  10995. // for _, item := range drugs {
  10996. // result := QueryResult{
  10997. // ID: item.ID,
  10998. // Name: item.DrugName,
  10999. // Code: item.MedicalInsuranceNumber,
  11000. // List_type_code: "101",
  11001. // }
  11002. // queryResult = append(queryResult, result)
  11003. // }
  11004. //
  11005. // } else if record_type == 2 {
  11006. // goods, _ := service.GetBatchGoodInformationList(ids)
  11007. //
  11008. // for _, item := range goods {
  11009. // result := QueryResult{
  11010. // ID: item.ID,
  11011. // Name: item.GoodName,
  11012. // Code: item.MedicalInsuranceNumber,
  11013. // List_type_code: "301",
  11014. // }
  11015. // queryResult = append(queryResult, result)
  11016. // }
  11017. // } else if record_type == 3 {
  11018. // projects, _ := service.GetBathchMyPorjecgList(ids)
  11019. // for _, item := range projects {
  11020. // result := QueryResult{
  11021. // ID: item.ID,
  11022. // Name: item.ProjectName,
  11023. // Code: item.MedicalCode,
  11024. // List_type_code: "201",
  11025. // }
  11026. // queryResult = append(queryResult, result)
  11027. // }
  11028. // }
  11029. //
  11030. // adminUser := c.GetAdminUserInfo()
  11031. //
  11032. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  11033. // config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  11034. //
  11035. // var user_name string
  11036. // role, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  11037. // if role.ID == 0 {
  11038. // user_name = "xxx"
  11039. // } else {
  11040. // user_name = role.UserName
  11041. // }
  11042. //
  11043. // baseParams := &models.BaseParams{
  11044. // SecretKey: miConfig.SecretKey,
  11045. // FixmedinsCode: miConfig.Code,
  11046. // InsuplcAdmdvs: miConfig.InsuplcAdmdvs,
  11047. // MdtrtareaAdmvs: miConfig.MdtrtareaAdmvs,
  11048. // OrgName: miConfig.OrgName,
  11049. // Doctor: user_name,
  11050. // }
  11051. //
  11052. // if config.IsOpen == 1 {
  11053. // for _, item := range queryResult {
  11054. // var result string
  11055. // if record_type == 1 {
  11056. // result = service.Gdyb3302(baseParams, item.Name, item.Code, item.List_type_code)
  11057. // } else if record_type == 2 {
  11058. // result = service.Gdyb3302(baseParams, item.Name, item.Code, item.List_type_code)
  11059. // } else if record_type == 3 {
  11060. // result = service.Gdyb3302(baseParams, item.Name, item.Code, item.List_type_code)
  11061. // }
  11062. // var dat2 map[string]interface{}
  11063. // if err := json.Unmarshal([]byte(result), &dat2); err == nil {
  11064. // fmt.Println(dat2)
  11065. // } else {
  11066. // fmt.Println(err)
  11067. // }
  11068. // userJSONBytes, _ := json.Marshal(dat2)
  11069. // var res ResultSix
  11070. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  11071. // utils.ErrorLog("解析失败:%v", err)
  11072. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11073. // return
  11074. // }
  11075. // if res.Infcode == 0 {
  11076. // if record_type == 1 {
  11077. // service.UpdateDrugByIdDetail(item.ID)
  11078. // } else if record_type == 2 {
  11079. // service.UpdateGoodInfoById(item.ID)
  11080. // } else if record_type == 3 {
  11081. // service.UpdateMyProjectById(item.ID)
  11082. // }
  11083. // c.ServeSuccessJSON(map[string]interface{}{
  11084. // "failed_code": 0,
  11085. // "msg": "撤销目录对照成功",
  11086. // })
  11087. // } else {
  11088. // c.ServeSuccessJSON(map[string]interface{}{
  11089. // "failed_code": -10,
  11090. // "msg": res.ErrMsg,
  11091. // })
  11092. // }
  11093. // }
  11094. // }
  11095. //}
  11096. //func (c *HisApiController) GetPatientInfo() {
  11097. // id_card_no := c.GetString("id_card_no")
  11098. // admin_user_id, _ := c.GetInt64("admin_user_id")
  11099. //
  11100. // patient, _ := service.GetPatientByIDCard(id_card_no, c.GetAdminUserInfo().CurrentOrgId)
  11101. //
  11102. // if patient.ID == 0 {
  11103. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodePatientNoExist)
  11104. // return
  11105. // }
  11106. //
  11107. // role, _ := service.GetAdminUserInfoByID(c.GetAdminUserInfo().CurrentOrgId, admin_user_id)
  11108. // miConfig, _ := service.FindMedicalInsuranceInfo(c.GetAdminUserInfo().CurrentOrgId)
  11109. // config, _ := service.GetMedicalInsuranceConfig(c.GetAdminUserInfo().CurrentOrgId)
  11110. // if config.IsOpen == 1 {
  11111. //
  11112. // result := service.Gdyb1101A(id_card_no, miConfig.OrgName, role.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, patient.Name)
  11113. // var dat map[string]interface{}
  11114. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  11115. // fmt.Println(dat)
  11116. // } else {
  11117. // fmt.Println(err)
  11118. // }
  11119. //
  11120. // userJSONBytes, _ := json.Marshal(dat)
  11121. // var res ResultTwo
  11122. // var res10265 ResultTwo10265
  11123. //
  11124. // if miConfig.Code == "H15049901371" {
  11125. // if err := json.Unmarshal(userJSONBytes, &res10265); err != nil {
  11126. // utils.ErrorLog("解析失败:%v", err)
  11127. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11128. // return
  11129. // }
  11130. // res.ErrMsg = res10265.ErrMsg
  11131. // infocode, _ := strconv.ParseInt(res10265.Infcode, 10, 64)
  11132. // res.Infcode = infocode
  11133. // //res.Output = res10265.Output
  11134. // res.InfRefmsgid = res10265.InfRefmsgid
  11135. //
  11136. // } else {
  11137. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  11138. // utils.ErrorLog("解析失败:%v", err)
  11139. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11140. // return
  11141. // }
  11142. // }
  11143. //
  11144. // //if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  11145. // // utils.ErrorLog("解析失败:%v", err)
  11146. // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11147. // // return
  11148. // //}
  11149. //
  11150. // if res.Infcode != 0 {
  11151. // c.ServeSuccessJSON(map[string]interface{}{
  11152. // "failed_code": -10,
  11153. // "msg": res.ErrMsg,
  11154. // })
  11155. // } else {
  11156. // c.ServeSuccessJSON(map[string]interface{}{
  11157. // "failed_code": 0,
  11158. // "info": res,
  11159. // })
  11160. // }
  11161. //
  11162. // }
  11163. //}
  11164. //func (c *HisApiController) PsnPutOnRecord() {
  11165. // record_type, _ := c.GetInt64("type")
  11166. // patient_id, _ := c.GetInt64("patient_id")
  11167. // admin_user_id, _ := c.GetInt64("admin_user_id")
  11168. // start_time := c.GetString("start_time")
  11169. // end_time := c.GetString("end_time")
  11170. //
  11171. // adminUser := c.GetAdminUserInfo()
  11172. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  11173. // config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  11174. //
  11175. // var patients []*models.Patients
  11176. // if record_type == 1 { //全部备案
  11177. //
  11178. // patient, _ := service.GetAllPatient(adminUser.CurrentOrgId)
  11179. // patients = append(patients, patient...)
  11180. //
  11181. // } else { //单个备案
  11182. // patient, _ := service.GetPatientByID(adminUser.CurrentOrgId, patient_id)
  11183. // patients = append(patients, patient)
  11184. //
  11185. // }
  11186. //
  11187. // var user_name string
  11188. // role, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  11189. // if role.ID == 0 {
  11190. // user_name = "xxx"
  11191. // } else {
  11192. // user_name = role.UserName
  11193. // }
  11194. //
  11195. // if config.IsOpen == 1 {
  11196. // for _, item := range patients {
  11197. // api := "http://127.0.0.1:9532/" + "gdyb/one?cert_no=" + item.IdCardNo + "&org_name=" + miConfig.OrgName + "&doctor=" + user_name + "&fixmedins_code=" + miConfig.Code + "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey
  11198. // resp, requestErr := http.Get(api)
  11199. // if requestErr != nil {
  11200. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11201. // return
  11202. // }
  11203. // defer resp.Body.Close()
  11204. // body, ioErr := ioutil.ReadAll(resp.Body)
  11205. // if ioErr != nil {
  11206. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  11207. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11208. // return
  11209. // }
  11210. // var respJSON map[string]interface{}
  11211. //
  11212. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  11213. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  11214. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11215. // return
  11216. // }
  11217. //
  11218. // userJSON := respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  11219. // userJSONBytes, _ := json.Marshal(userJSON)
  11220. // var res ResultTwo
  11221. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  11222. // utils.ErrorLog("解析失败:%v", err)
  11223. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11224. // return
  11225. // }
  11226. //
  11227. // if res.Infcode == 0 {
  11228. // result := service.Gdyb2505(res.Output[0].Baseinfo.PsnNo, user_name, miConfig.OrgName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, start_time, end_time)
  11229. // var dat map[string]interface{}
  11230. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  11231. // fmt.Println(dat)
  11232. // } else {
  11233. // fmt.Println(err)
  11234. // }
  11235. //
  11236. // userJSONBytes, _ := json.Marshal(dat)
  11237. //
  11238. // var res2 ResultThirteen
  11239. // if err := json.Unmarshal(userJSONBytes, &res2); err != nil {
  11240. // utils.ErrorLog("解析失败:%v", err)
  11241. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11242. // return
  11243. // }
  11244. // if res2.Infcode == 0 {
  11245. // psnResult := &models.GdybPsnRecord{
  11246. // UserOrgId: adminUser.CurrentOrgId,
  11247. // PatientId: item.ID,
  11248. // PsnNo: res.Output[0].Baseinfo.PsnNo,
  11249. // Ctime: time.Now().Unix(),
  11250. // Mtime: time.Now().Unix(),
  11251. // Status: 1,
  11252. // IsCancel: 1,
  11253. // TrtDclaDetlSn: res2.Output.Result.TrtDclaDetlSn,
  11254. // }
  11255. // service.CreatePsnRecord(psnResult)
  11256. //
  11257. // } else {
  11258. // c.ServeSuccessJSON(map[string]interface{}{
  11259. // "failed_code": -10,
  11260. // "msg": res2.ErrMsg,
  11261. // })
  11262. // return
  11263. // }
  11264. //
  11265. // }
  11266. //
  11267. // }
  11268. // }
  11269. //
  11270. //}
  11271. //func (c *HisApiController) PsnUnPutOnRecord() {
  11272. // id, _ := c.GetInt64("id")
  11273. // //record_type, _ := c.GetInt64("type")
  11274. // admin_user_id, _ := c.GetInt64("admin_user_id")
  11275. //
  11276. // adminUser := c.GetAdminUserInfo()
  11277. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  11278. // config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  11279. //
  11280. // var user_name string
  11281. // role, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  11282. // if role.ID == 0 {
  11283. // user_name = "xxx"
  11284. // } else {
  11285. // user_name = role.UserName
  11286. // }
  11287. //
  11288. // psn_record, _ := service.GetPsnRecordById(id)
  11289. // if psn_record.ID == 0 {
  11290. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorPsnRecordNoExistWrong)
  11291. // return
  11292. // }
  11293. // if config.IsOpen == 1 {
  11294. // result := service.Gdyb2506(psn_record.PsnNo, user_name, miConfig.OrgName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, psn_record.TrtDclaDetlSn)
  11295. // var dat map[string]interface{}
  11296. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  11297. // fmt.Println(dat)
  11298. // } else {
  11299. // fmt.Println(err)
  11300. // }
  11301. //
  11302. // userJSONBytes, _ := json.Marshal(dat)
  11303. // var res ResultFourteen
  11304. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  11305. // utils.ErrorLog("解析失败:%v", err)
  11306. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11307. // return
  11308. // }
  11309. // if res.Infcode == 0 {
  11310. // psn_record.IsCancel = 2
  11311. // service.CreatePsnRecord(&psn_record)
  11312. // } else {
  11313. // c.ServeSuccessJSON(map[string]interface{}{
  11314. // "failed_code": -10,
  11315. // "msg": res.ErrMsg,
  11316. // })
  11317. // return
  11318. // }
  11319. // }
  11320. //
  11321. //}
  11322. //func (c *HisApiController) PsnPutNCDSOnRecord() {
  11323. // patient_id, _ := c.GetInt64("patient_id")
  11324. // insutype_two := c.GetString("insutype")
  11325. // psn_no := c.GetString("psn_no")
  11326. // doctor_id, _ := c.GetInt64("doctor_id")
  11327. // sick_id, _ := c.GetInt64("sick_id")
  11328. // department_id, _ := c.GetInt64("department_id")
  11329. // start_time := c.GetString("start_time")
  11330. // end_time := c.GetString("end_time")
  11331. // check_time := c.GetString("check_time")
  11332. //
  11333. // adminUser := c.GetAdminUserInfo()
  11334. // patient, _ := service.GetPatientByID(adminUser.CurrentOrgId, patient_id)
  11335. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  11336. // config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  11337. // sick, _ := service.FindSickById(sick_id)
  11338. // doctor, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, doctor_id)
  11339. //
  11340. // role, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, doctor_id)
  11341. // var res ResultTwo
  11342. // var res10265 ResultTwo10265
  11343. // if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  11344. // psn_info, _ := service.GetPsnByPatientId(patient.ID)
  11345. // api := "http://192.168.3.111:9532/" + "hbyb/1101?cert_no=" + "" +
  11346. // "&org_name=" + miConfig.OrgName + "&doctor=" + role.UserName + "&fixmedins_code=" + miConfig.Code +
  11347. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&id_card_type=" + strconv.FormatInt(3, 10) + "&card_sn=" + "" + "&certificates=" + strconv.FormatInt(1, 10) + "&url=" + miConfig.Url + "&ak=" + miConfig.AccessKey + "&verify_number=" + psn_info.VerifyNumber + "&cainfo=" + miConfig.Cainfo
  11348. // resp, requestErr := http.Get(api)
  11349. // if requestErr != nil {
  11350. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11351. // return
  11352. // }
  11353. //
  11354. // body, ioErr := ioutil.ReadAll(resp.Body)
  11355. // if ioErr != nil {
  11356. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  11357. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11358. // return
  11359. // }
  11360. // var respJSON map[string]interface{}
  11361. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  11362. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  11363. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11364. // return
  11365. // }
  11366. //
  11367. // respJSON = respJSON["data"].(map[string]interface{})["pre"].(map[string]interface{})
  11368. // result, _ := json.Marshal(respJSON)
  11369. // fmt.Println("log")
  11370. // fmt.Println(string(result))
  11371. //
  11372. // if err := json.Unmarshal([]byte(result), &res10265); err != nil {
  11373. // utils.ErrorLog("解析失败:%v", err)
  11374. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11375. // return
  11376. // }
  11377. // res.ErrMsg = res10265.ErrMsg
  11378. // infocode, _ := strconv.ParseInt(res10265.Infcode, 10, 64)
  11379. // res.Infcode = infocode
  11380. // //res.Output = res10265.Output
  11381. // res.InfRefmsgid = res10265.InfRefmsgid
  11382. //
  11383. // } else {
  11384. // result, _ := service.Gdyb1101(patient.IdCardNo, miConfig.OrgName, role.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, 2, "", "0", patient.Name)
  11385. // if miConfig.Code == "H15049901371" {
  11386. // if err := json.Unmarshal([]byte(result), &res10265); err != nil {
  11387. // utils.ErrorLog("解析失败:%v", err)
  11388. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11389. // return
  11390. // }
  11391. // res.ErrMsg = res10265.ErrMsg
  11392. // infocode, _ := strconv.ParseInt(res10265.Infcode, 10, 64)
  11393. // res.Infcode = infocode
  11394. // //res.Output = res10265.Output
  11395. // res.InfRefmsgid = res10265.InfRefmsgid
  11396. // } else {
  11397. // if err := json.Unmarshal([]byte(result), &res); err != nil {
  11398. // utils.ErrorLog("解析失败:%v", err)
  11399. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11400. // return
  11401. // }
  11402. // }
  11403. //
  11404. // }
  11405. //
  11406. // Iinfos, _ := json.Marshal(res.Output[0].Iinfo)
  11407. // infoStr := string(Iinfos)
  11408. // var rf []*ResultFive
  11409. // json.Unmarshal([]byte(infoStr), &rf)
  11410. //
  11411. // var insuplc_admdvs string
  11412. // var insutype string
  11413. // var is390 int = 0
  11414. // var is310 int = 0
  11415. // var insutypes []*ResultFive
  11416. //
  11417. // for _, item := range rf {
  11418. // if (item.Insutype == "390" && item.PsnInsuStas == "1") || (item.Insutype == "310" && item.PsnInsuStas == "1") {
  11419. // insutypes = append(insutypes, item)
  11420. // }
  11421. // }
  11422. //
  11423. // if len(insutypes) == 1 {
  11424. // insutype = insutypes[0].Insutype
  11425. // //insuplc_admdvs = insutypes[0].InsuplcAdmdvs
  11426. // } else {
  11427. // for _, i := range insutypes {
  11428. // if i.Insutype == "390" {
  11429. // is390 = 1
  11430. // }
  11431. //
  11432. // if i.Insutype == "310" {
  11433. // is310 = 1
  11434. // }
  11435. // }
  11436. // }
  11437. // if is390 == 1 {
  11438. // insutype = "390"
  11439. // }
  11440. //
  11441. // if is310 == 1 {
  11442. // insutype = "310"
  11443. // }
  11444. //
  11445. // if len(insutypes) == 2 {
  11446. // insutype = insutype_two
  11447. // }
  11448. //
  11449. // if len(insutypes) == 0 {
  11450. // insutype = "310"
  11451. // }
  11452. //
  11453. // insutype = insutype_two
  11454. //
  11455. // fmt.Println(insutype)
  11456. // for _, item := range rf {
  11457. // fmt.Println(item.Insutype)
  11458. // fmt.Println(insutype)
  11459. // if item.Insutype == insutype {
  11460. // fmt.Println(item.Insutype)
  11461. // fmt.Println(insutype)
  11462. // insuplc_admdvs = item.InsuplcAdmdvs
  11463. // }
  11464. // }
  11465. // fmt.Println(insuplc_admdvs)
  11466. // var res2 ResultThirteen
  11467. // var res10265_2 ResultThirteen10265
  11468. // if config.IsOpen == 1 {
  11469. // if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  11470. //
  11471. // } else {
  11472. // result := service.Gdyb2503(psn_no, insutype, miConfig.OrgName, doctor.UserName, miConfig.Code, strconv.FormatInt(doctor.ID, 10), insuplc_admdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, sick.ClassName, sick.ContentCode, start_time, end_time, check_time)
  11473. // var dat map[string]interface{}
  11474. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  11475. // fmt.Println(dat)
  11476. // } else {
  11477. // fmt.Println(err)
  11478. // }
  11479. // userJSONBytes, _ := json.Marshal(dat)
  11480. // if miConfig.Code == "H15049901371" {
  11481. // if err := json.Unmarshal(userJSONBytes, &res10265_2); err != nil {
  11482. // utils.ErrorLog("解析失败:%v", err)
  11483. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11484. // return
  11485. // }
  11486. // res2.ErrMsg = res10265_2.ErrMsg
  11487. // infocode, _ := strconv.ParseInt(res10265_2.Infcode, 10, 64)
  11488. // res2.Infcode = infocode
  11489. // res2.Output = res10265_2.Output
  11490. // res2.InfRefmsgid = res10265_2.InfRefmsgid
  11491. // } else {
  11492. // if err := json.Unmarshal(userJSONBytes, &res2); err != nil {
  11493. // utils.ErrorLog("解析失败:%v", err)
  11494. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11495. // return
  11496. // }
  11497. // }
  11498. // }
  11499. //
  11500. // if res2.Infcode == 0 {
  11501. // psnResult := &models.GdybPsnNcdsRecord{
  11502. // UserOrgId: adminUser.CurrentOrgId,
  11503. // PatientId: patient.ID,
  11504. // PsnNo: psn_no,
  11505. // DoctorId: doctor.AdminUserId,
  11506. // DepartmentId: department_id,
  11507. // SickType: sick_id,
  11508. // Insutype: insutype,
  11509. // Ctime: time.Now().Unix(),
  11510. // Mtime: time.Now().Unix(),
  11511. // Status: 1,
  11512. // IsCancel: 1,
  11513. // TrtDclaDetlSn: res2.Output.Result.TrtDclaDetlSn,
  11514. // }
  11515. // service.CreatePsnNCDSRecord(psnResult)
  11516. // c.ServeSuccessJSON(map[string]interface{}{
  11517. // "failed_code": 0,
  11518. // "msg": "备案成功",
  11519. // "result": psnResult,
  11520. // })
  11521. //
  11522. // } else {
  11523. // c.ServeSuccessJSON(map[string]interface{}{
  11524. // "failed_code": -10,
  11525. // "msg": res2.ErrMsg,
  11526. // })
  11527. // return
  11528. // }
  11529. // }
  11530. //}
  11531. //func (c *HisApiController) PsnPutUnNCDSOnRecord() {
  11532. // id, _ := c.GetInt64("id")
  11533. // admin_user_id, _ := c.GetInt64("admin_user_id")
  11534. // adminUser := c.GetAdminUserInfo()
  11535. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  11536. // config, _ := service.GetMedicalInsuranceConfig(adminUser.CurrentOrgId)
  11537. //
  11538. // //config, _ := service.Ge(adminUser.CurrentOrgId)
  11539. // patient, _ := service.GetPatientByID(c.GetAdminUserInfo().CurrentOrgId, id)
  11540. // //role, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  11541. // //var user_name string
  11542. // role, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  11543. // //if role.ID == 0 {
  11544. // // user_name = "xxx"
  11545. // //} else {
  11546. // // user_name = role.UserName
  11547. // //}
  11548. // psn_record, _ := service.GetPsnNCDSRecordById(id)
  11549. // if psn_record.ID == 0 {
  11550. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorPsnRecordNoExistWrong)
  11551. // return
  11552. // }
  11553. // result, _ := service.Gdyb1101(patient.IdCardNo, miConfig.OrgName, role.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, 2, "", "0", patient.Name)
  11554. // var res ResultTwo
  11555. // var res10265 ResultTwo10265
  11556. //
  11557. // if miConfig.Code == "H15049901371" {
  11558. // if err := json.Unmarshal([]byte(result), &res10265); err != nil {
  11559. // utils.ErrorLog("解析失败:%v", err)
  11560. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11561. // return
  11562. // }
  11563. // res.ErrMsg = res10265.ErrMsg
  11564. // infocode, _ := strconv.ParseInt(res10265.Infcode, 10, 64)
  11565. // res.Infcode = infocode
  11566. // //res.Output = res10265.Output
  11567. // res.InfRefmsgid = res10265.InfRefmsgid
  11568. //
  11569. // } else {
  11570. // if err := json.Unmarshal([]byte(result), &res); err != nil {
  11571. // utils.ErrorLog("解析失败:%v", err)
  11572. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11573. // return
  11574. // }
  11575. // }
  11576. // Iinfos, _ := json.Marshal(res.Output[0].Iinfo)
  11577. // infoStr := string(Iinfos)
  11578. // var rf []*ResultFive
  11579. // json.Unmarshal([]byte(infoStr), &rf)
  11580. //
  11581. // var insuplc_admdvs string
  11582. // var insutype string
  11583. // var is390 int = 0
  11584. // var is310 int = 0
  11585. // var insutypes []*ResultFive
  11586. //
  11587. // for _, item := range rf {
  11588. // if (item.Insutype == "390" && item.PsnInsuStas == "1") || (item.Insutype == "310" && item.PsnInsuStas == "1") {
  11589. // insutypes = append(insutypes, item)
  11590. // }
  11591. // }
  11592. //
  11593. // if len(insutypes) == 1 {
  11594. // insutype = insutypes[0].Insutype
  11595. // //insuplc_admdvs = insutypes[0].InsuplcAdmdvs
  11596. // } else {
  11597. // for _, i := range insutypes {
  11598. // if i.Insutype == "390" {
  11599. // is390 = 1
  11600. // }
  11601. //
  11602. // if i.Insutype == "310" {
  11603. // is310 = 1
  11604. // }
  11605. // }
  11606. // }
  11607. // if is390 == 1 {
  11608. // insutype = "390"
  11609. // }
  11610. //
  11611. // if is310 == 1 {
  11612. // insutype = "310"
  11613. // }
  11614. //
  11615. // if len(insutypes) == 0 {
  11616. // insutype = "310"
  11617. // }
  11618. // insutype = psn_record.Insutype
  11619. //
  11620. // for _, item := range rf {
  11621. // if item.Insutype == insutype {
  11622. // insuplc_admdvs = item.InsuplcAdmdvs
  11623. // }
  11624. // }
  11625. //
  11626. // if config.IsOpen == 1 {
  11627. // result := service.Gdyb2504(psn_record.PsnNo, miConfig.OrgName, role.UserName, miConfig.Code, insuplc_admdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, psn_record.TrtDclaDetlSn)
  11628. // var dat map[string]interface{}
  11629. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  11630. // fmt.Println(dat)
  11631. // } else {
  11632. // fmt.Println(err)
  11633. // }
  11634. //
  11635. // userJSONBytes, _ := json.Marshal(dat)
  11636. // var res ResultFourteen
  11637. // var res10265 ResultFourteen10265
  11638. //
  11639. // if miConfig.Code == "H15049901371" {
  11640. // if err := json.Unmarshal(userJSONBytes, &res10265); err != nil {
  11641. // utils.ErrorLog("解析失败:%v", err)
  11642. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11643. // return
  11644. // }
  11645. // res.ErrMsg = res10265.ErrMsg
  11646. // infocode, _ := strconv.ParseInt(res10265.Infcode, 10, 64)
  11647. // res.Infcode = infocode
  11648. // res.Output = res10265.Output
  11649. // res.InfRefmsgid = res10265.InfRefmsgid
  11650. //
  11651. // } else {
  11652. // if err := json.Unmarshal([]byte(result), &res); err != nil {
  11653. // utils.ErrorLog("解析失败:%v", err)
  11654. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11655. // return
  11656. // }
  11657. // }
  11658. //
  11659. // //if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  11660. // // utils.ErrorLog("解析失败:%v", err)
  11661. // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11662. // // return
  11663. // //}
  11664. // if res.Infcode == 0 {
  11665. // psn_record.IsCancel = 2
  11666. // service.CreatePsnNCDSRecord(&psn_record)
  11667. // c.ServeSuccessJSON(map[string]interface{}{
  11668. // "failed_code": 0,
  11669. // "msg": "撤销备案成功",
  11670. // })
  11671. // } else {
  11672. // c.ServeSuccessJSON(map[string]interface{}{
  11673. // "failed_code": -10,
  11674. // "msg": res.ErrMsg,
  11675. // })
  11676. // return
  11677. // }
  11678. // }
  11679. //
  11680. //}
  11681. //
  11682. //func (c *HisApiController) TestTest() {
  11683. // patient, _ := service.GetHisPatientInfo(4, 456, 1619712000)
  11684. // fmt.Println(patient.Iinfo)
  11685. //
  11686. //}
  11687. //
  11688. //type CustomData struct {
  11689. // MsgId string
  11690. // PsnNo string
  11691. // Info string
  11692. //}
  11693. //
  11694. //func (c *HisApiController) ReversalData() {
  11695. // var customData []*CustomData
  11696. //
  11697. // custom := &CustomData{
  11698. // MsgId: "H44022900158202103301714472004",
  11699. // PsnNo: "44020000001101329945",
  11700. // Info: "2207",
  11701. // }
  11702. // customData = append(customData, custom)
  11703. //
  11704. // custom1 := &CustomData{
  11705. // MsgId: "H4402290015820210330172057803",
  11706. // PsnNo: "44020000001101161813",
  11707. // Info: "2207",
  11708. // }
  11709. // customData = append(customData, custom1)
  11710. // custom2 := &CustomData{
  11711. // MsgId: "H44022900158202103301705198813",
  11712. // PsnNo: "44190000133097375417",
  11713. // Info: "2207",
  11714. // }
  11715. // customData = append(customData, custom2)
  11716. // custom3 := &CustomData{
  11717. // MsgId: "H44022900158202103301715524756",
  11718. // PsnNo: "44020000001100187221",
  11719. // Info: "2207",
  11720. // }
  11721. // customData = append(customData, custom3)
  11722. // custom4 := &CustomData{
  11723. // MsgId: "H44022900158202103301730376224",
  11724. // PsnNo: "44020000001101959155",
  11725. // Info: "2207",
  11726. // }
  11727. // customData = append(customData, custom4)
  11728. // custom5 := &CustomData{
  11729. // MsgId: "H44022900158202103301748008725",
  11730. // PsnNo: "44020000001104246641",
  11731. // Info: "2207",
  11732. // }
  11733. // customData = append(customData, custom5)
  11734. // custom6 := &CustomData{
  11735. // MsgId: "H44022900158202103301718096755",
  11736. // PsnNo: "44020000001102211860",
  11737. // Info: "2207",
  11738. // }
  11739. // customData = append(customData, custom6)
  11740. // custom7 := &CustomData{
  11741. // MsgId: "H44022900158202103301736551640",
  11742. // PsnNo: "44020000001102687718",
  11743. // Info: "2207",
  11744. // }
  11745. //
  11746. // customData = append(customData, custom7)
  11747. //
  11748. // custom8 := &CustomData{
  11749. // MsgId: "H44022900158202103301743097676",
  11750. // PsnNo: "44020000001102127785",
  11751. // Info: "2207",
  11752. // }
  11753. // customData = append(customData, custom8)
  11754. // custom9 := &CustomData{
  11755. // MsgId: "H44022900158202103301712304203",
  11756. // PsnNo: "44020000001101518097",
  11757. // Info: "2207",
  11758. // }
  11759. // customData = append(customData, custom9)
  11760. // custom10 := &CustomData{
  11761. // MsgId: "H44022900158202103301738448785",
  11762. // PsnNo: "44020000001100500813",
  11763. // Info: "2207",
  11764. // }
  11765. // customData = append(customData, custom10)
  11766. //
  11767. // custom11 := &CustomData{
  11768. // MsgId: "H44022900158202103301732455843",
  11769. // PsnNo: "44020000001102690557",
  11770. // Info: "2207",
  11771. // }
  11772. //
  11773. // customData = append(customData, custom11)
  11774. //
  11775. // custom12 := &CustomData{
  11776. // MsgId: "H44022900158202103301745421708",
  11777. // PsnNo: "44020000001102211928",
  11778. // Info: "2207",
  11779. // }
  11780. // customData = append(customData, custom12)
  11781. //
  11782. // custom1212 := &CustomData{
  11783. // MsgId: "H440229001582021033017351627",
  11784. // PsnNo: "44020000001102481733",
  11785. // Info: "2207",
  11786. // }
  11787. // customData = append(customData, custom1212)
  11788. //
  11789. // custom13 := &CustomData{
  11790. // MsgId: "H44022900158202103301740327951",
  11791. // PsnNo: "44020000001103174866",
  11792. // Info: "2207",
  11793. // }
  11794. // customData = append(customData, custom13)
  11795. // custom14 := &CustomData{
  11796. // MsgId: "H4402290015820210330174922668",
  11797. // PsnNo: "44020000001102927272",
  11798. // Info: "2207",
  11799. // }
  11800. // customData = append(customData, custom14)
  11801. // custom15 := &CustomData{
  11802. // MsgId: "H44022900158202103301752362273",
  11803. // PsnNo: "44020000001102942890",
  11804. // Info: "2207",
  11805. // }
  11806. // customData = append(customData, custom15)
  11807. //
  11808. // custom16 := &CustomData{
  11809. // MsgId: "H44022900158202103301751082917",
  11810. // PsnNo: "44020000001101662162",
  11811. // Info: "2207",
  11812. // }
  11813. // customData = append(customData, custom16)
  11814. //
  11815. // custom17 := &CustomData{
  11816. // MsgId: "H44022900158202103301754147728",
  11817. // PsnNo: "44020000000229014511",
  11818. // Info: "2207",
  11819. // }
  11820. // customData = append(customData, custom17)
  11821. //
  11822. // adminUser := c.GetAdminUserInfo()
  11823. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  11824. //
  11825. // for _, item := range customData {
  11826. // result := service.Gdyb2601(item.PsnNo, item.MsgId, item.Info, miConfig.OrgName, "张俊杰", miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey)
  11827. // fmt.Println(result)
  11828. // }
  11829. //}
  11830. //
  11831. //func (c *HisApiController) GetAllopatry() {
  11832. // year := c.GetString("year")
  11833. // month := c.GetString("month")
  11834. // admin_user_id, _ := c.GetInt64("admin_user_id")
  11835. // adminUser := c.GetAdminUserInfo()
  11836. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  11837. // roles, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  11838. // result, _ := service.Gdyb9001(miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, 1669)
  11839. //
  11840. // var dat map[string]interface{}
  11841. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  11842. // fmt.Println(dat)
  11843. // } else {
  11844. // fmt.Println(err)
  11845. // }
  11846. // userJSONBytes, _ := json.Marshal(dat)
  11847. // var res models.Result9001
  11848. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  11849. // utils.ErrorLog("解析失败:%v", err)
  11850. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11851. // return
  11852. // }
  11853. //
  11854. // result2, _ := service.Gdyb3260(miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, year, month, "")
  11855. // var dat2 map[string]interface{}
  11856. // if err := json.Unmarshal([]byte(result2), &dat2); err == nil {
  11857. // fmt.Println(dat)
  11858. // } else {
  11859. // fmt.Println(err)
  11860. // }
  11861. // userJSONBytes2, _ := json.Marshal(dat2)
  11862. // var res2 models.Result3260
  11863. // if err := json.Unmarshal(userJSONBytes2, &res2); err != nil {
  11864. // utils.ErrorLog("解析失败:%v", err)
  11865. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11866. // return
  11867. // }
  11868. // if res2.Infcode == 0 {
  11869. // c.ServeSuccessJSON(map[string]interface{}{
  11870. // "list": res2.Output.Data,
  11871. // })
  11872. // return
  11873. // } else {
  11874. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11875. // return
  11876. // }
  11877. //
  11878. //}
  11879. //
  11880. //func (c *HisApiController) ComfirmAllopatry() {
  11881. // year := c.GetString("year")
  11882. // month := c.GetString("month")
  11883. // admin_user_id, _ := c.GetInt64("admin_user_id")
  11884. // adminUser := c.GetAdminUserInfo()
  11885. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  11886. // roles, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  11887. // result, _ := service.Gdyb9001(miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, 1669)
  11888. // var dat map[string]interface{}
  11889. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  11890. // fmt.Println(dat)
  11891. // } else {
  11892. // fmt.Println(err)
  11893. // }
  11894. // userJSONBytes, _ := json.Marshal(dat)
  11895. // var res models.Result9001
  11896. // if err := json.Unmarshal(userJSONBytes, &res); err != nil {
  11897. // utils.ErrorLog("解析失败:%v", err)
  11898. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11899. // return
  11900. // }
  11901. //
  11902. // result2, _ := service.Gdyb3260(miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, year, month, "")
  11903. // var dat2 map[string]interface{}
  11904. // if err := json.Unmarshal([]byte(result2), &dat2); err == nil {
  11905. // fmt.Println(dat)
  11906. // } else {
  11907. // fmt.Println(err)
  11908. // }
  11909. // userJSONBytes2, _ := json.Marshal(dat2)
  11910. // var res2 models.Result3260
  11911. // if err := json.Unmarshal(userJSONBytes2, &res2); err != nil {
  11912. // utils.ErrorLog("解析失败:%v", err)
  11913. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11914. // return
  11915. // }
  11916. //
  11917. // if res2.Infcode == 0 {
  11918. // result, _, msgId := service.Gdyb3261(miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, year, month, res2)
  11919. // var dat map[string]interface{}
  11920. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  11921. // fmt.Println(dat)
  11922. // } else {
  11923. // fmt.Println(err)
  11924. // }
  11925. // userJSONBytes, _ := json.Marshal(dat)
  11926. // var res3 models.Result3261
  11927. // if err := json.Unmarshal(userJSONBytes, &res3); err != nil {
  11928. // utils.ErrorLog("解析失败:%v", err)
  11929. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11930. // return
  11931. // }
  11932. //
  11933. // if res3.Infcode == 0 {
  11934. // record := &models.HisYidiClearRecord{
  11935. // UserOrgId: c.GetAdminUserInfo().CurrentOrgId,
  11936. // Ctime: time.Now().Unix(),
  11937. // Mtime: time.Now().Unix(),
  11938. // Status: 1,
  11939. // MsgId: msgId,
  11940. // }
  11941. // service.SaveClearRecord(record)
  11942. // c.ServeSuccessJSON(map[string]interface{}{
  11943. // "msg": "提取成功",
  11944. // })
  11945. // }
  11946. // }
  11947. //}
  11948. //
  11949. //func (c *HisApiController) RefundAllopatry() {
  11950. // year := c.GetString("year")
  11951. // month := c.GetString("month")
  11952. // id, _ := c.GetInt64("id")
  11953. // admin_user_id, _ := c.GetInt64("admin_user_id")
  11954. // adminUser := c.GetAdminUserInfo()
  11955. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  11956. // roles, _ := service.GetAdminUserInfoByID(adminUser.CurrentOrgId, admin_user_id)
  11957. // record, _ := service.GetClearRecordById(id)
  11958. // result, _ := service.Gdyb3262(miConfig.OrgName, roles.UserName, miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey, year, month, record.MsgId)
  11959. //
  11960. // var dat map[string]interface{}
  11961. // if err := json.Unmarshal([]byte(result), &dat); err == nil {
  11962. // fmt.Println(dat)
  11963. // } else {
  11964. // fmt.Println(err)
  11965. // }
  11966. // userJSONBytes, _ := json.Marshal(dat)
  11967. // var empty ResultFourteen
  11968. // if err := json.Unmarshal(userJSONBytes, &empty); err != nil {
  11969. // utils.ErrorLog("解析失败:%v", err)
  11970. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  11971. // return
  11972. // }
  11973. // if empty.Infcode == 0 {
  11974. // c.ServeSuccessJSON(map[string]interface{}{
  11975. // "msg": "撤销成功",
  11976. // })
  11977. // return
  11978. // }
  11979. //}
  11980. //
  11981. //func (c *HisApiController) ReversalOtherData() {
  11982. // var customData []*CustomData
  11983. //
  11984. // custom := &CustomData{
  11985. // MsgId: "H44022900158202103301714472004",
  11986. // PsnNo: "44020000001101329945",
  11987. // Info: "2208",
  11988. // }
  11989. // customData = append(customData, custom)
  11990. //
  11991. // custom1 := &CustomData{
  11992. // MsgId: "H4402290015820210330172057803",
  11993. // PsnNo: "44020000001101161813",
  11994. // Info: "2208",
  11995. // }
  11996. // customData = append(customData, custom1)
  11997. // custom2 := &CustomData{
  11998. // MsgId: "H44022900158202103301705198813",
  11999. // PsnNo: "44190000133097375417",
  12000. // Info: "2208",
  12001. // }
  12002. // customData = append(customData, custom2)
  12003. // custom3 := &CustomData{
  12004. // MsgId: "H44022900158202103301715524756",
  12005. // PsnNo: "44020000001100187221",
  12006. // Info: "2208",
  12007. // }
  12008. // customData = append(customData, custom3)
  12009. // custom4 := &CustomData{
  12010. // MsgId: "H44022900158202103301730376224",
  12011. // PsnNo: "44020000001101959155",
  12012. // Info: "2208",
  12013. // }
  12014. // customData = append(customData, custom4)
  12015. // custom5 := &CustomData{
  12016. // MsgId: "H44022900158202103301748008725",
  12017. // PsnNo: "44020000001104246641",
  12018. // Info: "2208",
  12019. // }
  12020. // customData = append(customData, custom5)
  12021. // custom6 := &CustomData{
  12022. // MsgId: "H44022900158202103301718096755",
  12023. // PsnNo: "44020000001102211860",
  12024. // Info: "2208",
  12025. // }
  12026. // customData = append(customData, custom6)
  12027. // custom7 := &CustomData{
  12028. // MsgId: "H44022900158202103301736551640",
  12029. // PsnNo: "44020000001102687718",
  12030. // Info: "2208",
  12031. // }
  12032. //
  12033. // customData = append(customData, custom7)
  12034. //
  12035. // custom8 := &CustomData{
  12036. // MsgId: "H44022900158202103301743097676",
  12037. // PsnNo: "44020000001102127785",
  12038. // Info: "2208",
  12039. // }
  12040. // customData = append(customData, custom8)
  12041. // custom9 := &CustomData{
  12042. // MsgId: "H44022900158202103301712304203",
  12043. // PsnNo: "44020000001101518097",
  12044. // Info: "2208",
  12045. // }
  12046. // customData = append(customData, custom9)
  12047. // custom10 := &CustomData{
  12048. // MsgId: "H44022900158202103301738448785",
  12049. // PsnNo: "44020000001100500813",
  12050. // Info: "2208",
  12051. // }
  12052. // customData = append(customData, custom10)
  12053. //
  12054. // custom11 := &CustomData{
  12055. // MsgId: "H44022900158202103301732455843",
  12056. // PsnNo: "44020000001102690557",
  12057. // Info: "2208",
  12058. // }
  12059. //
  12060. // customData = append(customData, custom11)
  12061. //
  12062. // custom12 := &CustomData{
  12063. // MsgId: "H44022900158202103301745421708",
  12064. // PsnNo: "44020000001102211928",
  12065. // Info: "2208",
  12066. // }
  12067. // customData = append(customData, custom12)
  12068. //
  12069. // custom1212 := &CustomData{
  12070. // MsgId: "H440229001582021033017351627",
  12071. // PsnNo: "44020000001102481733",
  12072. // Info: "2208",
  12073. // }
  12074. // customData = append(customData, custom1212)
  12075. //
  12076. // custom13 := &CustomData{
  12077. // MsgId: "H44022900158202103301740327951",
  12078. // PsnNo: "44020000001103174866",
  12079. // Info: "2208",
  12080. // }
  12081. // customData = append(customData, custom13)
  12082. // custom14 := &CustomData{
  12083. // MsgId: "H4402290015820210330174922668",
  12084. // PsnNo: "44020000001102927272",
  12085. // Info: "2208",
  12086. // }
  12087. // customData = append(customData, custom14)
  12088. // custom15 := &CustomData{
  12089. // MsgId: "H44022900158202103301752362273",
  12090. // PsnNo: "44020000001102942890",
  12091. // Info: "2208",
  12092. // }
  12093. // customData = append(customData, custom15)
  12094. //
  12095. // custom16 := &CustomData{
  12096. // MsgId: "H44022900158202103301751082917",
  12097. // PsnNo: "44020000001101662162",
  12098. // Info: "2208",
  12099. // }
  12100. // customData = append(customData, custom16)
  12101. //
  12102. // custom17 := &CustomData{
  12103. // MsgId: "H44022900158202103301754147728",
  12104. // PsnNo: "44020000000229014511",
  12105. // Info: "2208",
  12106. // }
  12107. // customData = append(customData, custom17)
  12108. //
  12109. // adminUser := c.GetAdminUserInfo()
  12110. // miConfig, _ := service.FindMedicalInsuranceInfo(adminUser.CurrentOrgId)
  12111. //
  12112. // for _, item := range customData {
  12113. // result := service.Gdyb2601(item.PsnNo, item.MsgId, item.Info, miConfig.OrgName, "张俊杰", miConfig.Code, miConfig.InsuplcAdmdvs, miConfig.MdtrtareaAdmvs, miConfig.SecretKey)
  12114. // fmt.Println(result)
  12115. // }
  12116. //}
  12117. //
  12118. //func PathExists(path string) (bool, error) {
  12119. // _, err := os.Stat(path)
  12120. // if err == nil {
  12121. // return true, nil
  12122. // }
  12123. // if os.IsNotExist(err) {
  12124. // return false, nil
  12125. // }
  12126. // return false, err
  12127. //}
  12128. //
  12129. ////创建文件夹
  12130. //func Mkdir(dir string) {
  12131. // // 创建文件夹
  12132. // exist, err := PathExists(dir)
  12133. // if err != nil {
  12134. // fmt.Println(err.Error())
  12135. // } else {
  12136. // if exist {
  12137. // fmt.Println(dir + "文件夹已存在!")
  12138. // } else {
  12139. // // 文件夹名称,权限
  12140. // err := os.Mkdir(dir, os.ModePerm)
  12141. // if err != nil {
  12142. // fmt.Println(dir+"文件夹创建失败:", err.Error())
  12143. // } else {
  12144. // fmt.Println(dir + "文件夹创建成功!")
  12145. // }
  12146. // }
  12147. // }
  12148. //}
  12149. //
  12150. ////压缩文件
  12151. //func Zip(srcFile string, destZip string) error {
  12152. // zipfile, err := os.Create(destZip)
  12153. // if err != nil {
  12154. // return err
  12155. // }
  12156. // defer zipfile.Close()
  12157. //
  12158. // archive := zip.NewWriter(zipfile)
  12159. // defer archive.Close()
  12160. //
  12161. // filepath.Walk(srcFile, func(path string, info os.FileInfo, err error) error {
  12162. // if err != nil {
  12163. // return err
  12164. // }
  12165. //
  12166. // header, err := zip.FileInfoHeader(info)
  12167. // if err != nil {
  12168. // return err
  12169. // }
  12170. //
  12171. // header.Name = strings.TrimPrefix(path, filepath.Dir(srcFile)+"/")
  12172. // // header.Name = path
  12173. // if info.IsDir() {
  12174. // header.Name += "/"
  12175. // } else {
  12176. // header.Method = zip.Deflate
  12177. // }
  12178. //
  12179. // writer, err := archive.CreateHeader(header)
  12180. // if err != nil {
  12181. // return err
  12182. // }
  12183. //
  12184. // if !info.IsDir() {
  12185. // file, err := os.Open(path)
  12186. // if err != nil {
  12187. // return err
  12188. // }
  12189. // defer file.Close()
  12190. // _, err = io.Copy(writer, file)
  12191. // }
  12192. // return err
  12193. // })
  12194. //
  12195. // return err
  12196. //}
  12197. //
  12198. //func ReadFile(filePath string) []byte {
  12199. // f, err := os.Open(filePath)
  12200. // if err != nil {
  12201. // fmt.Println("read file fail", err)
  12202. // return nil
  12203. // }
  12204. // defer f.Close()
  12205. //
  12206. // fd, err := ioutil.ReadAll(f)
  12207. // if err != nil {
  12208. // fmt.Println("read to fd fail", err)
  12209. // return nil
  12210. // }
  12211. //
  12212. // return fd
  12213. //}
  12214. //
  12215. //func saveLog(result string, request string, infno string, desc string) {
  12216. //
  12217. // org_id, _ := beego.AppConfig.Int64("org_id")
  12218. // miConfig, _ := service.FindMedicalInsuranceInfo(org_id)
  12219. // dir := miConfig.OrgName + "日志"
  12220. // utils.Mkdir(dir)
  12221. // month := time.Unix(1557042972, 0).Format("1")
  12222. // year := time.Now().Format("2006")
  12223. // month = time.Now().Format("01")
  12224. // day := time.Now().Format("02")
  12225. // hour := time.Now().Format("15")
  12226. // min := time.Now().Format("04")
  12227. // sec := time.Now().Format("05")
  12228. //
  12229. // result_time := year + "-" + month + "-" + day + " " + hour + ":" + min + ":" + sec
  12230. //
  12231. // file := strconv.FormatInt(org_id, 10) + "_" + year + month + day + "_log"
  12232. // file_name := file + ".txt"
  12233. // file_path := miConfig.OrgName + "日志" + "/" + file_name
  12234. // exist, _ := utils.PathExists(file_path)
  12235. // if exist { //存在
  12236. // fmt.Println("存在")
  12237. // f, err := os.OpenFile(file_path, os.O_WRONLY, 0644)
  12238. // if err != nil {
  12239. // fmt.Println("read fail")
  12240. // }
  12241. // content := "\r\n" + "\r\n" + "\r\n" + result_time + " " + "【 " + desc + infno + "入参" + " 】:" + "\r\n" + request + "\r\n" + result_time + " " + "【 " + desc + infno + "出参" + " 】:" + "\r\n" + result
  12242. // n, _ := f.Seek(0, 2)
  12243. // _, err = f.WriteAt([]byte(content), n)
  12244. //
  12245. // } else { //不存在
  12246. // fmt.Println("文件不存在,创建文件")
  12247. // f, err := os.Create(miConfig.OrgName + "日志" + "/" + file_name)
  12248. // defer f.Close()
  12249. // if err != nil {
  12250. // } else {
  12251. // _, err = f.Write([]byte("记录日志"))
  12252. // }
  12253. // }
  12254. //
  12255. //}
  12256. //
  12257. //type Charset string
  12258. //
  12259. //const (
  12260. // UTF8 = Charset("UTF-8")
  12261. // GB18030 = Charset("GB18030")
  12262. //)
  12263. //
  12264. //func ConvertToString(src string, srcCode string, tagCode string) string {
  12265. // srcCoder := mahonia.NewDecoder(srcCode)
  12266. // srcResult := srcCoder.ConvertString(src)
  12267. // tagCoder := mahonia.NewDecoder(tagCode)
  12268. // _, cdata, _ := tagCoder.Translate([]byte(srcResult), true)
  12269. // result := string(cdata)
  12270. // return result
  12271. //}
  12272. //
  12273. //func (c *HisApiController) ReadEleCard() {
  12274. // id_card_type, _ := c.GetInt64("id_card_type")
  12275. // admin_user_id, _ := c.GetInt64("admin_user_id")
  12276. // fmt.Println(c.GetAdminUserInfo().CurrentOrgId)
  12277. // roles, _ := service.GetAdminUserInfoByID(c.GetAdminUserInfo().CurrentOrgId, admin_user_id)
  12278. // miConfig, _ := service.FindMedicalInsuranceInfo(c.GetAdminUserInfo().CurrentOrgId)
  12279. //
  12280. // if miConfig.MdtrtareaAdmvs == "320921" || miConfig.MdtrtareaAdmvs == "320982" {
  12281. // var api string
  12282. // if miConfig.MdtrtareaAdmvs == "320921" {
  12283. // api = "http://192.168.3.111:9532/" + "jsyb/readcard?" + "fixmedins_code=" + miConfig.Code + "&secret_key=" + miConfig.SecretKey + "&ak=" + miConfig.AccessKey + "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName +
  12284. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&cainfo=" + miConfig.Cainfo + "&id_card_type=" + strconv.FormatInt(id_card_type, 10) + "&operator_id=" + strconv.FormatInt(admin_user_id, 10) + "&operator=" + roles.UserName
  12285. // fmt.Println(api)
  12286. //
  12287. // } else {
  12288. // api = "http://192.168.5.251:9532/" + "jsyb/readcard?" + "fixmedins_code=" + miConfig.Code + "&secret_key=" + miConfig.SecretKey + "&ak=" + miConfig.AccessKey + "&org_name=" + miConfig.OrgName + "&doctor=" + roles.UserName +
  12289. // "&insuplc_admdvs=" + miConfig.InsuplcAdmdvs + "&mdtrtarea_admvs=" + miConfig.MdtrtareaAdmvs + "&secret_key=" + miConfig.SecretKey + "&url=" + miConfig.Url + "&cainfo=" + miConfig.Cainfo + "&id_card_type=" + strconv.FormatInt(id_card_type, 10)
  12290. // }
  12291. //
  12292. // resp, requestErr := http.Get(api)
  12293. // if requestErr != nil {
  12294. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  12295. // return
  12296. // }
  12297. //
  12298. // body, ioErr := ioutil.ReadAll(resp.Body)
  12299. // if ioErr != nil {
  12300. // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
  12301. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  12302. // return
  12303. // }
  12304. // var respJSON map[string]interface{}
  12305. // if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
  12306. // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
  12307. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  12308. // return
  12309. // }
  12310. // var status string
  12311. // status = respJSON["data"].(map[string]interface{})["status"].(string)
  12312. // //card_type := respJSON["data"].(map[string]interface{})["type"].(string)
  12313. // var token string
  12314. // var res ResultTwo //1101结果
  12315. // var res10265 ResultTwo10265 //1101结果
  12316. // if status == "0" { //读卡成功
  12317. // var card_info string //卡信息
  12318. // var busi_card_info string
  12319. // token = respJSON["data"].(map[string]interface{})["token"].(string)
  12320. // busi_card_info = respJSON["data"].(map[string]interface{})["busi_card_info"].(string)
  12321. // card_info = respJSON["data"].(map[string]interface{})["card_info"].(string)
  12322. //
  12323. // fmt.Println(card_info)
  12324. // fmt.Println(busi_card_info)
  12325. //
  12326. // respJSON = respJSON["data"].(map[string]interface{})["result"].(map[string]interface{})
  12327. // result, _ := json.Marshal(respJSON)
  12328. //
  12329. // if err := json.Unmarshal([]byte(result), &res10265); err != nil {
  12330. // utils.ErrorLog("解析失败:%v", err)
  12331. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
  12332. // return
  12333. // }
  12334. // res.ErrMsg = res10265.ErrMsg
  12335. // infocode, _ := strconv.ParseInt(res10265.Infcode, 10, 64)
  12336. // res.Infcode = infocode
  12337. // //res.Output = res10265.Output
  12338. // res.InfRefmsgid = res10265.InfRefmsgid
  12339. // if res.Infcode == 0 {
  12340. // c.ServeSuccessJSON(map[string]interface{}{
  12341. // "number": token,
  12342. // })
  12343. // }
  12344. // } else {
  12345. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisFailedException)
  12346. // return
  12347. // }
  12348. // } else { //读卡失败
  12349. // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisFailedException)
  12350. // return
  12351. // }
  12352. //}