123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281 |
- package coordinate
-
- import (
- "bytes"
- "encoding/json"
- "encoding/xml"
- "fmt"
- "gdyb/controllers"
- "gdyb/enums"
- "gdyb/models"
- "gdyb/service"
- "gdyb/utils"
- "github.com/astaxie/beego"
- "io/ioutil"
- "math"
- "math/rand"
- "net/http"
- "sort"
- "strconv"
- "strings"
- "time"
- )
-
- type CoordinateController struct {
- controllers.BaseAuthAPIController
- }
-
- type ResultReg struct {
- ResultCode string `json:"resultCode"`
- ResultDesc string `json:"resultDesc"`
- InfoSeq string `json:"infoSeq"`
- }
-
- type ResultSettle struct {
- ResultCode string `json:"resultCode"`
- ResultDesc string `json:"resultDesc"`
- }
-
- type ResultCancelSettle struct {
- ResultCode string `json:"resultCode"`
- ResultDesc string `json:"resultDesc"`
- }
-
- type Settle struct {
- PatientId string `json:"resultCode"`
- DocId string `json:"docId"`
- InfoSeq string `json:"infoSeq"`
- }
-
- type Refund struct {
- PatientId string `json:"resultCode"`
- DocId string `json:"docId"`
- InfoSeq string `json:"infoSeq"`
- }
-
- type RefundDetail struct {
- Msg string `json:"msg"`
- Result []struct {
- ResultMsg string `json:"resultMsg"`
- Code string `json:"code"`
- Records int `json:"records"`
- TotalPage int `json:"totalPage"`
- List []struct {
- Zae01 int64 `json:"ZAE01"`
- } `json:"list"`
- RecordsTotal int `json:"recordsTotal"`
- Pagenumber int `json:"pagenumber"`
- Result string `json:"result"`
- Total int `json:"total"`
- RecordsFtered int `json:"recordsFtered"`
- Page int `json:"page"`
- } `json:"result"`
- Code string `json:"code"`
- }
- type RefundDetailtwo struct {
- Msg string `json:"msg"`
- Code string `json:"code"`
- }
-
- type ResultQuery struct {
- Msg string `json:"msg"`
- Result []struct {
- Type string `json:"type"`
- Name string `json:"name"`
- Vaa01 int `json:"vaa01"`
- Vaa07 int `json:"vaa07"`
- Visittime string `json:"visittime"`
- } `json:"result"`
- Code string `json:"code"`
- }
-
- type Data struct {
- List []ListItem `json:"resultObj"`
- Result bool `json:"result"`
- Code int `json:"code"`
- ResultMsg string `json:"resultMsg"`
- Msg string `json:"msg"`
- Error bool `json:"error"`
- Success bool `json:"success"`
- }
-
- type Data10 struct {
- List []ListItem10 `json:"resultObj"`
- Result bool `json:"result"`
- Code int `json:"code"`
- ResultMsg string `json:"resultMsg"`
- Msg string `json:"msg"`
- Error bool `json:"error"`
- Success bool `json:"success"`
- }
-
- type ListItem10 struct {
- Vaf01 int64 `json:"vaf01"`
- }
-
- type ListItem struct {
- Acf01 int64 `json:"acf01"`
- Bcq04 string `json:"bcq04"`
- Abw01 string `json:"abw01"`
- Aau01 string `json:"aau01"`
- Vaa08 string `json:"vaa08"`
- Vae11 string `json:"vae11"`
- Vaa05 string `json:"vaa05"`
- Vaa10 int `json:"vaa10"`
- Vaa01 int `json:"vaa01"`
- Vaa07 int `json:"vaa07"`
- Vaa12 string `json:"vaa12"`
- Abbrp string `json:"abbrp"`
- Bck01A int `json:"bck01a"`
- Bck01B int `json:"bck01b"`
-
- Vaa15 string `json:"vaa15"`
- Vaa35 string `json:"vaa35"`
- }
-
- type ResultUpload struct {
- Code string `json:"code"`
- Msg string `json:"msg"`
- Result []struct {
- List []interface{} `json:"list"`
- Page int64 `json:"page"`
- Pagenumber int64 `json:"pagenumber"`
- Records int64 `json:"records"`
- RecordsFiltered int64 `json:"recordsFiltered"`
- RecordsTotal int64 `json:"recordsTotal"`
- Result string `json:"result"`
- ResultMsg string `json:"resultMsg"`
- Total int64 `json:"total"`
- TotalPage int64 `json:"totalPage"`
- Userdata string `json:"userdata"`
- } `json:"result"`
- }
-
- type ResultUpload2 struct {
- Code int64 `json:"code"`
- Msg string `json:"msg"`
- resultObj interface{} `json:"resultObj"`
- }
-
- func CoordinateRcegistRouters() {
- //beego.Router("/coordinate/check", &CoordinateController{}, "get:SavePatientMessageInfo")
- ////坐标挂号
- //beego.Router("/coordinate/register", &CoordinateController{}, "get:Register")
- ////坐标记账
- ////beego.Router("/coordinate/opKeepAccounts", &CoordinateController{}, "get:OpKeepAccounts")
- ////坐标撤销记账
- ////beego.Router("/coordinate/opCancelKeepAccounts", &CoordinateController{}, "get:OpCancelKeepAccounts")
- ////坐标结算回调
- //beego.Router("/coordinate/settle", &CoordinateController{}, "post:Settle")
- ////坐标退费回调
- //beego.Router("/coordinate/refund", &CoordinateController{}, "post:Refund")
- ////坐标患者查询~上传医嘱~结算功能
- ////beego.Router("/coordinate/settleAccount", &CoordinateController{}, "get:SettleAccount")
-
- //beego.Router("/coordinate/other", &CoordinateController{}, "get:NMGother")
-
- ////内蒙古
- beego.Router("/nmg/coordinate/settleAccount", &CoordinateController{}, "get:NMGSettleAccount")
- beego.Router("/nmg/coordinate/settleAccount/cancel", &CoordinateController{}, "get:NMGCancelSettleAccount")
- beego.Router("/nmg/coordinate/querystockdrug", &CoordinateController{}, "get:QuerydrugStock")
- beego.Router("/nmg/coordinate/querystockgood", &CoordinateController{}, "get:QuerygoodStock")
-
- //beego.Router("/nmg/coordinate/deladvice", &CoordinateController{}, "get:NMGdeladvice")
- //beego.Router("/nmg/coordinate/createadvice", &CoordinateController{}, "get:NMGcreateadvice")
- //beego.Router("/nmg/coordinate/querydiagnose", &CoordinateController{}, "get:NMGquerydiagnose")
- //beego.Router("/nmg/coordinate/querycheck", &CoordinateController{}, "get:NMGquerycheck")
-
-
- //beego.Router("/nmg/coordinate/settleAccountone", &CoordinateController{}, "get:NMGSettleAccount")
-
- }
-
- //func (c *CoordinateController) QueryStock(){
- // api3 := "http://192.168.100.199:9532/" + "nmg/coordinate/querystock"
- // resp3, requestErr3 := http.Get(api3)
- // if requestErr3 != nil {
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // return
- // }
- // body3, ioErr3 := ioutil.ReadAll(resp3.Body)
- // if ioErr3 != nil {
- // utils.ErrorLog("接口返回数据读取失败: %v", ioErr3)
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // return
- // }
- // var respJSON3 map[string]interface{}
- // if err := json.Unmarshal([]byte(string(body3)), &respJSON3); err != nil {
- // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // return
- // }
- //
- // //respJSON4 := respJSON3["data"].(map[string]interface{})["drug"].(map[string]interface{})
- // //userJSONBytes3, _ := json.Marshal(respJSON4)
- // //
- // //var drug Medicine
- // //err2 := json.Unmarshal(userJSONBytes3, &drug)
- // //if err2 != nil {
- // // fmt.Println("解析JSON出错:", err2)
- // // return
- // //}
- // //
- // //
- // //respJSON5 := respJSON3["data"].(map[string]interface{})["project"].(map[string]interface{})
- // //userJSONBytes4, _ := json.Marshal(respJSON5)
- // //
- // //var project ProjectStruct
- // //err := json.Unmarshal(userJSONBytes4, &project)
- // //if err != nil {
- // // fmt.Println("解析JSON出错:", err)
- // // return
- // //}
- // //
- // //c.ServeSuccessJSON(map[string]interface{}{
- // // "drug": drug.Data,
- // // "project": project.Data,
- // //})
- //
- //}
- func (c *CoordinateController) QuerydrugStock() {
- result, _ := service.GetDrugs()
- //result2, _ := service.GetProject()
- saveLog(result, "", "查询", "查询", "")
- //saveLog(result2, "", "查询", "查询", "")
-
- var drug Medicine
- err2 := json.Unmarshal([]byte(result), &drug)
- if err2 != nil {
- fmt.Println("解析JSON出错:", err2)
- return
- }
- c.ServeSuccessJSON(map[string]interface{}{
- "drug": drug.Data,
- })
- }
- func (c *CoordinateController) QuerygoodStock() {
- //result, _ := service.GetDrugs()
- result2, _ := service.GetProject()
- //saveLog(result, "", "查询", "查询", "")
- saveLog(result2, "", "查询", "查询", "")
- var project ProjectStruct
- err := json.Unmarshal([]byte(result2), &project)
- if err != nil {
- fmt.Println("解析JSON出错:", err)
- return
- }
- c.ServeSuccessJSON(map[string]interface{}{
- "project": project.Data,
- })
- }
-
- //查询检查
- func (c *CoordinateController) NMGquerycheck() {
-
- }
-
- type ResultObj struct {
- Cbm01 int `json:"cbm01"`
- Vaf01List []int `json:"vaf01List"`
- }
-
- type Response struct {
- ResultObj []ResultObj `json:"resultObj"`
- Result bool `json:"result"`
- Code int `json:"code"`
- ResultMsg string `json:"resultMsg"`
- Msg string `json:"msg"`
- Error bool `json:"error"`
- Success bool `json:"success"`
- }
-
- type Responsexml struct {
- XMLName xml.Name `xml:"root"`
- ErrorCode int `xml:"errorcode"`
- ErrorMsg string `xml:"errormsg"`
- Data string `xml:"data"`
- }
-
- func NMGzhuyuan(c *CoordinateController, name string) (res Data) {
- api3 := "http://127.0.0.1:9532/" + "nmg/coordinate/patient?name=" + name
- resp3, requestErr3 := http.Get(api3)
- if requestErr3 != nil {
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- return
- }
- body3, ioErr3 := ioutil.ReadAll(resp3.Body)
- if ioErr3 != nil {
- utils.ErrorLog("接口返回数据读取失败: %v", ioErr3)
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- return
- }
- var respJSON3 map[string]interface{}
- if err := json.Unmarshal([]byte(string(body3)), &respJSON3); err != nil {
- utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- return
- }
-
- respJSON3 = respJSON3["data"].(map[string]interface{})["res"].(map[string]interface{})
- userJSONBytes3, _ := json.Marshal(respJSON3)
-
- if err := json.Unmarshal(userJSONBytes3, &res); err != nil {
- utils.ErrorLog("解析失败:%v", err)
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- return
- }
- return res
- }
- func NMGmenzhen(c *CoordinateController, name string) (res Data) {
- api3 := "http://127.0.0.1:9532/" + "nmg/coordinate/patienttwo?name=" + name
- resp3, requestErr3 := http.Get(api3)
- if requestErr3 != nil {
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- return
- }
- body3, ioErr3 := ioutil.ReadAll(resp3.Body)
- if ioErr3 != nil {
- utils.ErrorLog("接口返回数据读取失败: %v", ioErr3)
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- return
- }
- var respJSON3 map[string]interface{}
- if err := json.Unmarshal([]byte(string(body3)), &respJSON3); err != nil {
- utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- return
- }
-
- respJSON3 = respJSON3["data"].(map[string]interface{})["res"].(map[string]interface{})
- userJSONBytes3, _ := json.Marshal(respJSON3)
-
- if err := json.Unmarshal(userJSONBytes3, &res); err != nil {
- utils.ErrorLog("解析失败:%v", err)
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- return
- }
- return res
- }
-
- func RemoveRepeatedPurviewElementdoctoradvice(arr []models.HisDoctorAdviceInfo) (newArr []models.HisDoctorAdviceInfo) {
- newArr = make([]models.HisDoctorAdviceInfo, 0)
- for i := 0; i < len(arr); i++ {
- repeat := false
- for j := i + 1; j < len(arr); j++ {
- if arr[i].Groupno == arr[j].Groupno && arr[i].PrescriptionId == arr[j].PrescriptionId {
- repeat = true
- break
- }
- }
- if !repeat {
- newArr = append(newArr, arr[i])
- }
- }
- return
- }
-
- func RemoveRepeatedPurviewElementproject(arr []models.HisPrescriptionProject) (newArr []models.HisPrescriptionProject) {
- newArr = make([]models.HisPrescriptionProject, 0)
- for i := 0; i < len(arr); i++ {
- repeat := false
- for j := i + 1; j < len(arr); j++ {
- if arr[i].HisProject.ZuobiaoId == arr[j].HisProject.ZuobiaoId && arr[i].HisProject.Bby01 == arr[j].HisProject.Bby01 {
- repeat = true
- break
- }
- }
- if !repeat {
- newArr = append(newArr, arr[i])
- }
- }
- return
- }
-
- func RemoveRepeatedPurviewElementgood(arr []models.HisPrescriptionProject) (newArr []models.HisPrescriptionProject) {
- newArr = make([]models.HisPrescriptionProject, 0)
- for i := 0; i < len(arr); i++ {
- repeat := false
- for j := i + 1; j < len(arr); j++ {
- if arr[i].GoodInfo.ZuobiaoId == arr[j].GoodInfo.ZuobiaoId && arr[i].GoodInfo.Bby01 == arr[j].GoodInfo.Bby01 {
- repeat = true
- break
- }
- }
- if !repeat {
- newArr = append(newArr, arr[i])
- }
- }
- return
- }
-
- func RemoveRepeatedPurviewElementdrug(arr []models.HisDoctorAdviceInfo) (newArr []models.HisDoctorAdviceInfo) {
- newArr = make([]models.HisDoctorAdviceInfo, 0)
- for i := 0; i < len(arr); i++ {
- repeat := false
- for j := i + 1; j < len(arr); j++ {
- if arr[i].BaseDrugLib.ZuobiaoId == arr[j].BaseDrugLib.ZuobiaoId && arr[i].BaseDrugLib.Bby01 == arr[j].BaseDrugLib.Bby01 && arr[i].DeliveryWay ==arr[j].DeliveryWay {
- repeat = true
- break
- }
- }
- if !repeat {
- newArr = append(newArr, arr[i])
- }
- }
- return
- }
-
-
- func RemoveRepeatedPurviewElementdrugtwo(arr []models.HisDoctorAdviceInfo) (newArr []models.HisDoctorAdviceInfo) {
- newArr = make([]models.HisDoctorAdviceInfo, 0)
- for i := 0; i < len(arr); i++ {
- repeat := false
- for j := i + 1; j < len(arr); j++ {
- if arr[i].Newfn == arr[j].Newfn{
- repeat = true
- break
- }
- }
- if !repeat {
- newArr = append(newArr, arr[i])
- }
- }
- return
- }
-
- //func (c *CoordinateController) NMGSettleAccounttwo() {
- // patient_id, _ := c.GetInt64("patient_id")
- // record_date := c.GetString("record_date")
- // admin_user_id, _ := c.GetInt64("admin_user_id")
- // diagnosis_id := c.GetString("diagnosis")
- // sick_type, _ := c.GetInt64("sick_type")
- // reg_type, _ := c.GetInt64("p_type")
- // org_id, _ := c.GetInt64("org_id")
- // org_id = 10206
- // org, _ := service.GetOrgById(org_id)
- // patient, _ := service.GetPatientByID(org.Id, patient_id)
- // settle_accounts_type, _ := c.GetInt64("settle_accounts_type")
- //
- // res := NMGzhuyuan(c, patient.Name)
- // res8 := NMGmenzhen(c, patient.Name)
- //
- // //优先查询今天门诊的患者,如果今天没有门诊的患者查询出住院的患者
- // if res8.Code == 200 {
- // var res9 Data
- // res9.List = append(res9.List, res8.List...)
- // var li ListItem
- // for _, item := range res9.List {
- // cure_date := strings.Split(item.Vae11, " ")
- // if cure_date[0] == record_date && patient.Name == item.Vaa05 {
- // li = item
- // }
- // }
- // if li.Acf01 == 0 && li.Vaa07 == 0 && li.Vaa01 == 0 { //今天没有门诊患者,则查询出最后一个日期的住院患者
- // var res10 Data
- // //res9.List = append(res9.List, res.List...)
- // res10.List = append(res10.List, res.List...)
- // layout := "2006-01-02 15:04:05"
- // var maxDate time.Time
- // for _, item := range res10.List {
- // currentDate, err := time.Parse(layout, item.Vae11)
- // if err != nil {
- // fmt.Println("Error parsing date:", err)
- // continue
- // }
- // if currentDate.After(maxDate) {
- // maxDate = currentDate
- // }
- // if !maxDate.IsZero() {
- // fmt.Println("The maximum date is:", maxDate.Format(layout))
- // } else {
- // fmt.Println("No valid dates found")
- // }
- // }
- // fmt.Println(maxDate.Format("2006-01-02 15:04:05"))
- // for _, item := range res10.List {
- // if item.Vae11 == maxDate.Format("2006-01-02 15:04:05") && patient.Name == item.Vaa05 {
- // li = item
- // }
- // }
- // }
- //
- // timeLayout := "2006-01-02"
- // loc, _ := time.LoadLocation("Local")
- // theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_date+" 00:00:00", loc)
- // if err != nil {
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
- // return
- // }
- // org_id := org.Id
- // recordDateTime := theTime.Unix()
- // patientPrescription, _ := service.FindPatientPrescriptionInfoTwo(org_id, patient.ID, recordDateTime, 2)
- // if patientPrescription.ID == 0 {
- // patientPrescription, _ = service.FindLastPatientPrescriptionInfo(org_id, patient.ID, recordDateTime)
- // }
- // departmwnt, _ := service.GetDepartMentDetail(patientPrescription.Departments)
- // //admin_user_info, _ := service.GetAdminUserInfoByID(org_id, admin_user_id)
- // doctor_info, _ := service.GetAdminUserInfoByID(org_id, patientPrescription.DoctorId)
- //
- // var recordStartTime int64
- // var recordEndTime int64
- //
- // var prescriptions []models.HisPrescription
- // if settle_accounts_type == 1 { //日结
- // prescriptions, _ = service.GetUnSettleHisPrescriptionFive(org_id, patient_id, recordDateTime, 2)
- // } else { //月结
- // start_time_str := c.GetString("start_time")
- // end_time_str := c.GetString("end_time")
- // theStartTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time_str+" 00:00:00", loc)
- // if err != nil {
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
- // return
- // }
- // recordStartTime = theStartTime.Unix()
- // theEndTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time_str+" 00:00:00", loc)
- // if err != nil {
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
- // return
- // }
- // recordEndTime = theEndTime.Unix()
- //
- // prescriptions, _ = service.GetUnSettleMonthHisPrescription(org_id, patient_id, recordStartTime, recordEndTime)
- // }
- //
- // var ids []int64
- //
- // for _, item := range prescriptions {
- // ids = append(ids, item.ID)
- // }
- // var total float64
- //
- // var customs []*models.NewCustomTwo
- // for _, item := range prescriptions {
- // if item.Type == 1 { //药品
- // for _, subItem := range item.HisDoctorAdviceInfo {
- // tempTime := time.Unix(item.PreTime, 0)
- // //timeFormat := tempTime.Format("20060102150405")
- // timeFormatOne := tempTime.Format("2006-01-02 15:04:05")
- // cus := &models.NewCustomTwo{
- // AdviceId: subItem.ID,
- // ProjectId: 0,
- // DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*subItem.PrescribingNumber),
- // Cut: fmt.Sprintf("%.4f", subItem.PrescribingNumber),
- // FeedetlSn: subItem.FeedetlSn,
- // Price: fmt.Sprintf("%.2f", subItem.Price),
- // MedListCodg: subItem.BaseDrugLib.MedicalInsuranceNumber,
- // Type: 1,
- // ItemId: subItem.BaseDrugLib.ZuobiaoId,
- // StartTime: timeFormatOne,
- // Content: subItem.AdviceName,
- // Bby01: subItem.BaseDrugLib.Bby01,
- // }
- // customs = append(customs, cus)
- // }
- // }
- // if item.Type == 2 { //项目
- // for _, subItem := range item.HisPrescriptionProject {
- // if subItem.Type == 2 {
- // tempTime := time.Unix(item.PreTime, 0)
- // //timeFormat := tempTime.Format("20060102150405")
- // timeFormatOne := tempTime.Format("2006-01-02 15:04:05")
- // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- // cus := &models.NewCustomTwo{
- // AdviceId: 0,
- // ProjectId: subItem.ID,
- // DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*cnt),
- // Cut: fmt.Sprintf("%.4f", cnt),
- // FeedetlSn: subItem.FeedetlSn,
- // Price: fmt.Sprintf("%.4f", float64(subItem.Price)),
- // MedListCodg: subItem.HisProject.MedicalCode,
- // Type: 2,
- // ItemId: subItem.HisProject.ZuobiaoId,
- // StartTime: timeFormatOne,
- // Content: subItem.HisProject.ProjectName,
- // Bby01: subItem.HisProject.Bby01,
- // }
- // customs = append(customs, cus)
- //
- // } else {
- // tempTime := time.Unix(item.PreTime, 0)
- // //timeFormat := tempTime.Format("20060102150405")
- // timeFormatOne := tempTime.Format("2006-01-02 15:04:05")
- // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- // cus := &models.NewCustomTwo{
- // AdviceId: 0,
- // ProjectId: subItem.ID,
- // DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*cnt),
- // Cut: fmt.Sprintf("%.4f", cnt),
- // FeedetlSn: subItem.FeedetlSn,
- // Price: fmt.Sprintf("%.4f", float64(subItem.Price)),
- // MedListCodg: subItem.GoodInfo.MedicalInsuranceNumber,
- // Type: 3,
- // ItemId: subItem.GoodInfo.ZuobiaoId,
- // StartTime: timeFormatOne,
- // Content: subItem.GoodInfo.GoodName,
- // Bby01: subItem.GoodInfo.Bby01,
- // }
- // customs = append(customs, cus)
- // }
- //
- // }
- // }
- // }
- //
- // for _, item := range prescriptions {
- // if item.Type == 1 { //药品
- // for _, subItem := range item.HisDoctorAdviceInfo {
- // price, _ := strconv.ParseFloat(fmt.Sprintf("%.2f", subItem.Price), 64)
- // total_one := price * subItem.PrescribingNumber
- //
- // total = total + total_one
- //
- //
- // }
- // }
- // if item.Type == 2 { //项目
- //
- // for _, subItem := range item.HisPrescriptionProject {
- // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- // price, _ := strconv.ParseFloat(fmt.Sprintf("%.2f", subItem.Price), 64)
- // total_one := price * cnt
- // total = total + total_one
- // }
- // }
- // }
- //
- // //allTotal := fmt.Sprintf("%2f", total)
- //
- // var info models.UploadInfo
- // info.Acf01 = int64(li.Acf01)
- // info.Bce01 = "132"
- // info.Bck01 = "48"
- // info.Vaa07 = int64(li.Vaa07)
- // info.Vaa01 = int64(li.Vaa01)
- // info.Vaa05 = li.Vaa05
- // info.Bce01a = doctor_info.DoctorNumber
- //
- // for _, item := range customs {
- // var cha models.ChargeListtwo
- // cnt, _ := strconv.ParseFloat(item.Cut, 64)
- //
- // Bby01, _ := strconv.ParseInt(item.Bby01, 10, 64)
- //
- // cha.Bby01 = Bby01
- // cha.Vaj25 = cnt
- // info.ChargeListtwo = append(info.ChargeListtwo, &cha)
- // }
- //
- // var root models.Root
- // var tradeInfo models.TradeInfo
- // var cBM1 models.CBM1
- // var vAF1 models.VAF1
- // var vAO1 models.VAO1
- // var vBQ1 models.VBQ1
- //
- // if li.Acf01 == 1 {
- // tradeInfo.PatSource = 1
- // tradeInfo.Type = 0
- // } else {
- // tradeInfo.PatSource = 2
- // tradeInfo.Type = 1
- //
- // }
- // tradeInfo.Detpid = departmwnt.Number
- // tradeInfo.Empid = doctor_info.DoctorNumber
- // tradeInfo.Empno = doctor_info.DoctorCode
- // tradeInfo.Empname = doctor_info.UserName
- // root.TradeInfo = tradeInfo
- //
- // //
- // //
- // //var del_ids []string
- // //
- // //
- // ////信息
- // for _, item := range prescriptions {
- // departmwnt_two, _ := service.GetDepartMentDetail(item.VMHisPrescriptionInfo.Departments)
- // var ie_cbm1 models.IEone
- // ie_cbm1.CBMID = strconv.FormatInt(item.ID, 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAA07 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.ACF01 = strconv.FormatInt(int64(li.Acf01), 10)
- // //ie_cbm1.CBM06 = strconv.FormatInt(int64(res.List[0].Acf01), 10)
- //
- // if li.Acf01 == 1 {
- // ie_cbm1.CBM06 = item.MedType
- // ie_cbm1.BCK01A = "0"
- // } else {
- // ie_cbm1.CBM06 = "0"
- // ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01A), 10) //病区id
- // }
- // ie_cbm1.CBM07 = item.MedType
- // ie_cbm1.BCK01B = strconv.FormatInt(int64(li.Bck01B), 10)
- // ie_cbm1.BCK01C = departmwnt_two.Number
- // ie_cbm1.CBM19 = "0"
- // cBM1.Ie = append(cBM1.Ie, ie_cbm1)
- // }
- // root.CBM1 = cBM1
- // ////医嘱
- // for _, item := range prescriptions {
- // departmwnt_two, _ := service.GetDepartMentDetail(item.VMHisPrescriptionInfo.Departments)
- //
- // if item.Type == 1 {
- // //组号去重
- // //temphisDoctorAdviceInfo := RemoveRepeatedPurviewElementdoctoradvice(item.HisDoctorAdviceInfo)
- //
- // // 使用 map 来存储 groupno 的数量
- // //groupCount := make(map[int64]int64)
- //
- // // 使用 map 来存储 groupno 的数量和最后一条数据的索引
- // groupInfo := make(map[int64]struct {
- // Count int64
- // LastElement int
- // })
- //
- // // 遍历切片,计算 groupno 的数量和最后一条数据的索引
- // for i, obj := range item.HisDoctorAdviceInfo {
- // info, ok := groupInfo[obj.Groupno]
- // if !ok {
- // info = struct {
- // Count int64
- // LastElement int
- // }{}
- // }
- // info.Count++
- // info.LastElement = i
- // groupInfo[obj.Groupno] = info
- // }
- //
- // // 根据 groupno 的数量设置字段值
- // for i, obj := range item.HisDoctorAdviceInfo {
- // info := groupInfo[obj.Groupno]
- // if info.Count < 2 {
- // item.HisDoctorAdviceInfo[i].NewGroupno = strconv.FormatInt(int64(1), 10)
- // } else {
- // // 对于数量大于等于 2 的,将最后一条数据设置 1,其他设置为随机数
- // if i == info.LastElement {
- // item.HisDoctorAdviceInfo[i].NewGroupno = strconv.FormatInt(int64(1), 10)
- // } else {
- // item.HisDoctorAdviceInfo[i].NewGroupno = strconv.FormatInt(obj.ID, 10)
- // }
- // }
- // }
- //
- // for _, subitem := range item.HisDoctorAdviceInfo {
- // var ie_cbm1 models.IEtwo
- // ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- // ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01A), 10)
- // ie_cbm1.ROWNR = subitem.NewGroupno
- // ie_cbm1.VAF10 = "1"
- // ie_cbm1.VAF11 = "2"
- // ie_cbm1.BDA01 = "1" //诊疗类型
- // ie_cbm1.BBX01 = subitem.BaseDrugLib.ZuobiaoId
- // ie_cbm1.VAF14 = "" //检验样本类型
- // ie_cbm1.VAF15 = ""
- // ie_cbm1.BBY01 = subitem.BaseDrugLib.Bby01 //药品规格id或材料规格id
- //
- // if li.Acf01 == 1 {
- // ie_cbm1.VAF17 = strconv.FormatInt(int64(subitem.Day), 10)
- //
- // } else {
- // ie_cbm1.VAF17 = "0"
- //
- // }
- //
- // ie_cbm1.VAF18 = fmt.Sprintf("%.2f", subitem.SingleDose) //药品规格id或材料规格id
- // ie_cbm1.VAF19 = fmt.Sprintf("%.2f", subitem.SingleDose) + " " + subitem.SingleDoseUnit //药品规格id或材料规格id
- // ie_cbm1.VAF20 = fmt.Sprintf("%.2f", subitem.SingleDose)
- // ie_cbm1.VAF21 = fmt.Sprintf("%.2f", subitem.PrescribingNumber)
- //
- // ie_cbm1.VAF22 = subitem.AdviceName + " " + subitem.BaseDrugLib.DrugSpec
- // ie_cbm1.Crypt = "0"
- // ie_cbm1.VAF23 = ""
- // ie_cbm1.BCK01B = subitem.BaseDrugLib.Bck01b
- // ie_cbm1.VAF26 = subitem.ExecutionFrequency
- // ie_cbm1.VAF27 = "1"
- // ie_cbm1.VAF28 = "1"
- // ie_cbm1.VAF29 = "1"
- //
- // ie_cbm1.VAF30 = ""
- // ie_cbm1.VAF31 = "0"
- //
- // ie_cbm1.VAF32 = "0" //todo
- // ie_cbm1.VAF33 = "0"
- // ie_cbm1.VAF34 = "0"
- // ie_cbm1.VAF35 = "0"
- //
- // tempTime1 := time.Unix(subitem.StartTime, 0)
- // timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- // ie_cbm1.VAF36 = timeFormatOne
- // ie_cbm1.VAF37 = "1899-12-30"
- // doctor_info, _ := service.GetAdminUserInfoByID(org_id, item.Creator)
- // ie_cbm1.BCK01C = departmwnt_two.Number
- //
- // ie_cbm1.BCE02A = doctor_info.DoctorCode
- // ie_cbm1.BCE03A = doctor_info.UserName
- // ie_cbm1.BCE03B = ""
- //
- // ie_cbm1.VAF53 = "-1"
- // ie_cbm1.VAF55 = subitem.Remark
- // ie_cbm1.BCK01D = departmwnt_two.Number
- // ie_cbm1.VAF58 = "0"
- // ie_cbm1.VAF59 = strconv.FormatInt(int64(subitem.Groupno), 10)
- // ie_cbm1.VAF60 = ""
- // ie_cbm1.VAF61 = "1"
- // ie_cbm1.VAF62 = "0"
- // ie_cbm1.LSign = "0"
- // ie_cbm1.BDA01A = ie_cbm1.BDA01
- // ie_cbm1.LRoute = "0"
- // ie_cbm1.BCE01A = doctor_info.DoctorNumber
- // ie_cbm1.BCE01B = "0"
- //
- // ie_cbm1.VAF01B = "0"
- // ie_cbm1.VCO01 = "0"
- // ie_cbm1.BCE01H = "0"
- // ie_cbm1.BCE03H = ""
- // ie_cbm1.BIW02 = ""
- // ie_cbm1.RCurrent = "0"
- // ie_cbm1.FCheck = "0"
- // ie_cbm1.UnameA = ""
- // ie_cbm1.VEH02 = ""
- // vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- // }
- //
- // //hisDoctorAdviceInfo := RemoveRepeatedPurviewElementdoctoradvice(item.HisDoctorAdviceInfo)
- //
- // //每种药品下的给药途径
- // for _, subitem := range item.HisDoctorAdviceInfo {
- // //saveLog("", result, "1111", "way", "")
- //
- // result2 := fmt.Sprintf("%+v", subitem)
- // fmt.Println(result2)
- //
- //
- // way, _ := service.GetDrugwayDicByName(subitem.DeliveryWay, c.GetAdminUserInfo().CurrentOrgId)
- // result := fmt.Sprintf("%+v", way)
- // saveLog("", result, "1111", "way", "")
- // var ie_cbm1 models.IEtwo
- // ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- // ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01A), 10)
- // ie_cbm1.ROWNR = "0"
- // ie_cbm1.VAF10 = "1"
- // ie_cbm1.VAF11 = "2"
- // ie_cbm1.BDA01 = "T" //诊疗类型
- // ie_cbm1.BBX01 = way.Code
- // ie_cbm1.VAF14 = "" //检验样本类型
- // ie_cbm1.VAF15 = "" //检验样本类型
- // ie_cbm1.BBY01 = way.Bby01 //药品规格id或材料规格id
- // if li.Acf01 == 1 {
- // ie_cbm1.VAF17 = strconv.FormatInt(int64(subitem.Day), 10) //药品规格id或材料规格id
- // } else {
- // ie_cbm1.VAF17 = "0" //药品规格id或材料规格id
- // }
- //
- // ie_cbm1.VAF18 = fmt.Sprintf("%.2f", subitem.SingleDose) //药品规格id或材料规格id
- // ie_cbm1.VAF19 = fmt.Sprintf("%.2f", subitem.SingleDose) + " " + subitem.SingleDoseUnit //药品规格id或材料规格id
- // ie_cbm1.VAF20 = fmt.Sprintf("%.2f", subitem.SingleDose)
- // //ie_cbm1.VAF21 = fmt.Sprintf("%.2f",subitem.PrescribingNumber)
- //
- // //ie_cbm1.VAF18 = "" //药品规格id或材料规格id
- // //ie_cbm1.VAF19 = ""
- // //ie_cbm1.VAF20 = ""
- // if subitem.DrugWayCount == "" {
- // ie_cbm1.VAF21 = "1"
- //
- // } else {
- // ie_cbm1.VAF21 = subitem.DrugWayCount
- //
- // }
- //
- // ie_cbm1.VAF22 = way.Name
- // ie_cbm1.Crypt = "0"
- // ie_cbm1.VAF23 = ""
- // ie_cbm1.BCK01B = subitem.BaseDrugLib.Bck01b
- // ie_cbm1.VAF26 = subitem.ExecutionFrequency
- // ie_cbm1.VAF27 = "1"
- // ie_cbm1.VAF28 = "1"
- // ie_cbm1.VAF29 = "1"
- // ie_cbm1.BCK01C = departmwnt_two.Number
- //
- // ie_cbm1.VAF30 = ""
- // ie_cbm1.VAF31 = "0"
- //
- // ie_cbm1.VAF32 = "1" //todo
- // ie_cbm1.VAF33 = "0"
- // ie_cbm1.VAF34 = "0"
- // ie_cbm1.VAF35 = "0"
- //
- // tempTime1 := time.Unix(subitem.StartTime, 0)
- // timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- // ie_cbm1.VAF36 = timeFormatOne
- // ie_cbm1.VAF37 = "1899-12-30"
- // doctor_info, _ := service.GetAdminUserInfoByID(org_id, item.Creator)
- //
- // ie_cbm1.BCE02A = doctor_info.DoctorCode
- // ie_cbm1.BCE03A = doctor_info.UserName
- // ie_cbm1.BCE03B = ""
- //
- // ie_cbm1.VAF53 = "-1"
- // ie_cbm1.VAF55 = subitem.Remark
- // ie_cbm1.BCK01D = departmwnt_two.Number
- // ie_cbm1.VAF58 = "0"
- // ie_cbm1.VAF59 = strconv.FormatInt(int64(subitem.Groupno), 10)
- //
- // ie_cbm1.VAF60 = ""
- // ie_cbm1.VAF61 = "1"
- // ie_cbm1.VAF62 = "0"
- // ie_cbm1.LSign = "0"
- // ie_cbm1.BDA01A = ie_cbm1.BDA01
- // ie_cbm1.LRoute = "0"
- // ie_cbm1.BCE01A = doctor_info.DoctorNumber
- // ie_cbm1.BCE01B = "0"
- //
- // ie_cbm1.VAF01B = "0"
- // ie_cbm1.VCO01 = "0"
- // ie_cbm1.BCE01H = "0"
- // ie_cbm1.BCE03H = ""
- // ie_cbm1.BIW02 = ""
- // ie_cbm1.RCurrent = "0"
- // ie_cbm1.FCheck = "0"
- // ie_cbm1.UnameA = ""
- // ie_cbm1.VEH02 = ""
- // ie_cbm1.VAF07 = "0"
- // vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- // }
- //
- // } else if item.Type == 2 {
- // for index, subitem := range item.HisPrescriptionProject {
- // if subitem.Type == 2 {
- // if subitem.HisProject.CostClassify != 3 {
- // var ie_cbm1 models.IEtwo
- // ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- // ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01A), 10)
- // ie_cbm1.ROWNR = strconv.FormatInt(int64(index+1), 10)
- // ie_cbm1.VAF10 = "1"
- // ie_cbm1.VAF11 = "2"
- // ie_cbm1.BDA01 = "T" //诊疗类型
- // ie_cbm1.BBX01 = subitem.HisProject.ZuobiaoId
- // ie_cbm1.VAF14 = "" //检验样本类型
- // ie_cbm1.VAF15 = "" //检验样本类型
- // ie_cbm1.BBY01 = subitem.HisProject.Bby01 //药品规格id或材料规格id
- // if li.Acf01 == 1 {
- // ie_cbm1.VAF17 = subitem.Day //药品规格id或材料规格id
- // if len(subitem.Day) == 0 {
- // ie_cbm1.VAF17 = "1"
- // }
- //
- // } else {
- // ie_cbm1.VAF17 = "0" //药品规格id或材料规格idn
- // }
- // if subitem.SingleDose == "" {
- //
- // subitem.SingleDose = "1"
- // }
- //
- // ie_cbm1.VAF18 = subitem.SingleDose //药品规格id或材料规格id
- // ie_cbm1.VAF19 = subitem.SingleDose + " " + subitem.Unit //药品规格id或材料规格id
- // ie_cbm1.VAF20 = subitem.SingleDose
- // ie_cbm1.VAF21 = subitem.Count
- //
- // ie_cbm1.VAF22 = subitem.HisProject.ProjectName
- // ie_cbm1.Crypt = "0"
- // ie_cbm1.VAF23 = ""
- // ie_cbm1.BCK01B = subitem.HisProject.Bck01b
- // ie_cbm1.VAF26 = subitem.ExecutionFrequency
- // ie_cbm1.VAF27 = "1"
- // ie_cbm1.VAF28 = "1"
- // ie_cbm1.VAF29 = ""
- // ie_cbm1.BCK01C = departmwnt_two.Number
- //
- // ie_cbm1.VAF30 = ""
- // ie_cbm1.VAF31 = "0"
- //
- // ie_cbm1.VAF32 = "0" //todo
- // ie_cbm1.VAF33 = "0"
- // ie_cbm1.VAF34 = "0"
- // ie_cbm1.VAF35 = "0"
- //
- // tempTime1 := time.Unix(subitem.StartTime, 0)
- // timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- // ie_cbm1.VAF36 = timeFormatOne
- // ie_cbm1.VAF37 = "1899-12-30"
- // doctor_info, _ := service.GetAdminUserInfoByID(org_id, item.Creator)
- //
- // ie_cbm1.BCE02A = doctor_info.DoctorCode
- // ie_cbm1.BCE03A = doctor_info.UserName
- // ie_cbm1.BCE03B = ""
- //
- // ie_cbm1.VAF53 = "-1"
- // ie_cbm1.VAF55 = subitem.Remark
- // ie_cbm1.BCK01D = departmwnt_two.Number
- // ie_cbm1.VAF58 = "0"
- // ie_cbm1.VAF59 = strconv.FormatInt(int64(index+1), 10)
- //
- // ie_cbm1.VAF60 = ""
- // ie_cbm1.VAF61 = "1"
- // ie_cbm1.VAF62 = "0"
- // ie_cbm1.LSign = "0"
- // ie_cbm1.BDA01A = "" //诊疗类型
- // ie_cbm1.LRoute = "0"
- // ie_cbm1.BCE01A = doctor_info.DoctorNumber
- //
- // //ie_cbm1.BCE01A = doctor_info.UserName
- // ie_cbm1.BCE01B = "0"
- //
- // ie_cbm1.VAF01B = "0"
- // ie_cbm1.VCO01 = "0"
- // ie_cbm1.BCE01H = "0"
- // ie_cbm1.BCE03H = ""
- // ie_cbm1.BIW02 = ""
- // ie_cbm1.RCurrent = "0"
- // ie_cbm1.FCheck = "0"
- // ie_cbm1.UnameA = ""
- // ie_cbm1.VAF07 = "0"
- //
- // ie_cbm1.VEH02 = ""
- // vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- // }
- // if subitem.HisProject.CostClassify == 3 {
- // var ie_cbm1 models.IEtwo
- // ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- // ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01A), 10)
- // ie_cbm1.ROWNR = strconv.FormatInt(int64(index+1), 10)
- // ie_cbm1.VAF10 = "1"
- // ie_cbm1.VAF11 = "2"
- // ie_cbm1.BDA01 = "L" //诊疗类型
- // ie_cbm1.BBX01 = subitem.HisProject.ZuobiaoId
- // ie_cbm1.VAF14 = "" //检验样本类型
- // ie_cbm1.VAF15 = "" //检验样本类型
- // ie_cbm1.BBY01 = subitem.HisProject.Bby01 //药品规格id或材料规格id
- // if li.Acf01 == 1 {
- // ie_cbm1.VAF17 = subitem.Day //药品规格id或材料规格id
- // } else {
- // ie_cbm1.VAF17 = "0" //药品规格id或材料规格idn
- // }
- // if subitem.SingleDose == "" {
- //
- // subitem.SingleDose = "1"
- // }
- //
- // ie_cbm1.VAF18 = subitem.SingleDose //药品规格id或材料规格id
- // ie_cbm1.VAF19 = subitem.SingleDose + " " + subitem.Unit //药品规格id或材料规格id
- // ie_cbm1.VAF20 = subitem.SingleDose
- // ie_cbm1.VAF21 = subitem.Count
- //
- // ie_cbm1.VAF22 = subitem.HisProject.ProjectName
- // ie_cbm1.Crypt = "0"
- // ie_cbm1.VAF23 = ""
- // ie_cbm1.BCK01B = subitem.HisProject.Bck01b
- // ie_cbm1.VAF26 = subitem.ExecutionFrequency
- // ie_cbm1.VAF27 = "1"
- // ie_cbm1.VAF28 = "1"
- // ie_cbm1.VAF29 = ""
- // ie_cbm1.BCK01C = departmwnt_two.Number
- // ie_cbm1.VAF30 = ""
- // ie_cbm1.VAF31 = "0"
- // ie_cbm1.VAF32 = "0" //todo
- // ie_cbm1.VAF33 = "0"
- // ie_cbm1.VAF34 = "0"
- // ie_cbm1.VAF35 = "0"
- // tempTime1 := time.Unix(subitem.StartTime, 0)
- // timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- // ie_cbm1.VAF36 = timeFormatOne
- // ie_cbm1.VAF37 = "1899-12-30"
- // doctor_info, _ := service.GetAdminUserInfoByID(org_id, item.Creator)
- //
- // ie_cbm1.BCE02A = doctor_info.DoctorCode
- // ie_cbm1.BCE03A = doctor_info.UserName
- // ie_cbm1.BCE03B = ""
- //
- // ie_cbm1.VAF53 = "-1"
- // ie_cbm1.VAF55 = subitem.Remark
- // ie_cbm1.BCK01D = departmwnt_two.Number
- // ie_cbm1.VAF58 = "0"
- // ie_cbm1.VAF59 = strconv.FormatInt(int64(index+1), 10)
- //
- // ie_cbm1.VAF60 = ""
- // ie_cbm1.VAF61 = "1"
- // ie_cbm1.VAF62 = "0"
- // ie_cbm1.LSign = "0"
- // ie_cbm1.BDA01A = "" //诊疗类型
- // ie_cbm1.LRoute = "0"
- // ie_cbm1.BCE01A = doctor_info.DoctorNumber
- // ie_cbm1.VAF07 = "0"
- //
- // //ie_cbm1.BCE01A = doctor_info.UserName
- // ie_cbm1.BCE01B = "0"
- //
- // ie_cbm1.VAF01B = "0"
- // ie_cbm1.VCO01 = "0"
- // ie_cbm1.BCE01H = "0"
- // ie_cbm1.BCE03H = ""
- // ie_cbm1.BIW02 = ""
- // ie_cbm1.RCurrent = "0"
- // ie_cbm1.FCheck = "0"
- // ie_cbm1.UnameA = ""
- // ie_cbm1.VEH02 = ""
- // vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- // }
- //
- // } else if subitem.Type == 3 {
- // var ie_cbm1 models.IEtwo
- // ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- // ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01A), 10)
- // ie_cbm1.ROWNR = strconv.FormatInt(int64(index+1), 10)
- //
- // ie_cbm1.VAF10 = "1"
- // ie_cbm1.VAF11 = "2"
- // ie_cbm1.BDA01 = "4" //诊疗类型
- // ie_cbm1.BBX01 = subitem.GoodInfo.ZuobiaoId
- // ie_cbm1.VAF14 = "" //检验样本类型
- // ie_cbm1.VAF15 = "" //检验样本类型
- // ie_cbm1.BBY01 = subitem.GoodInfo.Bby01 //药品规格id或材料规格id
- //
- // if li.Acf01 == 1 {
- // ie_cbm1.VAF17 = subitem.Day //药品规格id或材料规格id
- //
- // } else {
- // ie_cbm1.VAF17 = "0" //药品规格id或材料规格id
- //
- // }
- // if subitem.SingleDose == "" {
- // subitem.SingleDose = "1"
- // }
- //
- // ie_cbm1.VAF18 = subitem.SingleDose //药品规格id或材料规格id
- // ie_cbm1.VAF19 = subitem.SingleDose + " " + subitem.Unit //药品规格id或材料规格id
- // ie_cbm1.VAF20 = subitem.SingleDose
- // ie_cbm1.VAF21 = subitem.Count
- // ie_cbm1.BCK01C = departmwnt_two.Number
- //
- // ie_cbm1.VAF22 = subitem.GoodInfo.GoodName + " " + subitem.GoodInfo.SpecificationName
- // ie_cbm1.Crypt = "0"
- // ie_cbm1.VAF23 = ""
- // ie_cbm1.BCK01B = subitem.GoodInfo.Bck01b
- // ie_cbm1.VAF26 = subitem.ExecutionFrequency
- // ie_cbm1.VAF27 = ""
- // ie_cbm1.VAF28 = "1"
- // ie_cbm1.VAF29 = ""
- // ie_cbm1.VAF07 = "0"
- //
- // ie_cbm1.VAF30 = ""
- // ie_cbm1.VAF31 = "0"
- //
- // ie_cbm1.VAF32 = "0" //todo
- // ie_cbm1.VAF33 = "0"
- // ie_cbm1.VAF34 = "0"
- // ie_cbm1.VAF35 = "0"
- //
- // tempTime1 := time.Unix(subitem.StartTime, 0)
- // timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- // ie_cbm1.VAF36 = timeFormatOne
- // ie_cbm1.VAF37 = "1899-12-30"
- // doctor_info, _ := service.GetAdminUserInfoByID(org_id, item.Creator)
- //
- // ie_cbm1.BCE02A = doctor_info.DoctorCode
- // ie_cbm1.BCE03A = doctor_info.UserName
- // ie_cbm1.BCE03B = ""
- // ie_cbm1.BCK01C = departmwnt_two.Number
- //
- // ie_cbm1.VAF53 = "-1"
- // ie_cbm1.VAF55 = subitem.Remark
- // ie_cbm1.BCK01D = departmwnt_two.Number
- // ie_cbm1.VAF58 = "0"
- // ie_cbm1.VAF59 = strconv.FormatInt(int64(index+1), 10)
- // ie_cbm1.VAF60 = ""
- // ie_cbm1.VAF61 = "1"
- // ie_cbm1.VAF62 = "0"
- // ie_cbm1.LSign = "0"
- // ie_cbm1.BDA01A = "" //诊疗类型
- // ie_cbm1.LRoute = "0"
- // ie_cbm1.BCE01A = doctor_info.DoctorNumber
- // ie_cbm1.BCE01B = "0"
- // ie_cbm1.VAF01B = "0"
- // ie_cbm1.VCO01 = "0"
- // ie_cbm1.BCE01H = "0"
- // ie_cbm1.BCE03H = ""
- // ie_cbm1.BIW02 = ""
- // ie_cbm1.RCurrent = "0"
- // ie_cbm1.FCheck = "0"
- // ie_cbm1.UnameA = ""
- // ie_cbm1.VEH02 = ""
- // vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- // }
- // }
- // }
- //
- // }
- // root.VAF1 = vAF1
- // for _, item := range prescriptions {
- // sick, _ := service.FindSickById(sick_type)
- //
- // dias := strings.Split(item.VMHisPrescriptionInfo.Diagnosis, ",")
- // //service.get
- //
- // //诊断
- // for index, subitem := range dias {
- // diagnosisConfig, _ := service.FindDiagnoseByIdtwo(subitem)
- // if index == 0 {
- // var ie_cbm1 models.IEthree
- // ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAA07 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.ACF01 = strconv.FormatInt(int64(li.Acf01), 10)
- // ie_cbm1.VAO06 = strconv.FormatInt(int64(index+1), 10)
- // ie_cbm1.VAO07 = "1"
- // ie_cbm1.VAO10 = "0"
- // ie_cbm1.VAO11 = "1"
- // ie_cbm1.BAK01A = sick.ContentCode
- // ie_cbm1.CAM01 = diagnosisConfig.ContentCode
- // ie_cbm1.VAO15 = diagnosisConfig.ClassName
- // ie_cbm1.VAO18 = "0"
- // ie_cbm1.VAO22 = "1"
- // ie_cbm1.IAA01 = ""
- // ie_cbm1.IAD03 = ""
- // ie_cbm1.BAK01B = ""
- // ie_cbm1.VAO26 = ""
- // ie_cbm1.IAD04 = ""
- // ie_cbm1.IAD01 = ""
- // ie_cbm1.VAO25 = "1"
- // ie_cbm1.VAO35 = ""
- // vAO1.Ie = append(vAO1.Ie, ie_cbm1)
- //
- // } else {
- // var ie_cbm1 models.IEthree
- // ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAA07 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.ACF01 = strconv.FormatInt(int64(li.Acf01), 10)
- // ie_cbm1.VAO06 = strconv.FormatInt(int64(index+1), 10)
- // ie_cbm1.VAO07 = "1"
- // ie_cbm1.VAO10 = "0"
- // ie_cbm1.VAO11 = "1"
- // ie_cbm1.BAK01A = sick.ContentCode
- // ie_cbm1.CAM01 = diagnosisConfig.ContentCode
- // ie_cbm1.VAO15 = diagnosisConfig.ClassName
- // ie_cbm1.VAO18 = "0"
- // ie_cbm1.VAO22 = "1"
- // ie_cbm1.IAA01 = ""
- // ie_cbm1.IAD03 = ""
- // ie_cbm1.BAK01B = ""
- // ie_cbm1.VAO26 = ""
- // ie_cbm1.IAD04 = ""
- // ie_cbm1.IAD01 = ""
- // ie_cbm1.VAO25 = "2"
- // ie_cbm1.VAO35 = ""
- // vAO1.Ie = append(vAO1.Ie, ie_cbm1)
- // }
- // }
- // }
- // ////
- // //////检验检查医嘱
- // //for _, item := range prescriptions{
- // // fmt.Println("6666666666666")
- // // if item.Type == 2{
- // // for _, subitem := range item.HisPrescriptionProject {
- // // if subitem.Type == 2{
- // // if subitem.HisProject.CostClassify == 3 {
- // // var ie_cbm1 models.IEfour
- // // ie_cbm1.VBQ01 = strconv.FormatInt(int64(item.ID), 10)
- // // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // // ie_cbm1.VAA07 = strconv.FormatInt(int64(li.Vaa07), 10)
- // // ie_cbm1.ACF01 = strconv.FormatInt(int64(li.Acf01), 10)
- // // ie_cbm1.VAP01 = "0"
- // // ie_cbm1.VBQ07 = "0"
- // // ie_cbm1.BCK01A = departmwnt.Number
- // // ie_cbm1.BCK01B= "0"
- // // ie_cbm1.BCE03A= ""
- // // ie_cbm1.BCE01A= "0"
- // // ie_cbm1.VBQ27= subitem.HisProject.ProjectName
- // // ie_cbm1.VBQ28= patientPrescription.Diagnosis
- // // ie_cbm1.VBQ29= ""
- // // ie_cbm1.VBQ30= ""
- // // vBQ1.Ie = append(vBQ1.Ie, ie_cbm1)
- // // }
- // //
- // // }
- // //
- // // }
- // // }
- // //}
- //
- // root.VAO1 = vAO1
- // root.VBQ1 = vBQ1
- //
- // //zuobiao, _ := service.Getzuobiao(c.GetAdminUserInfo().CurrentOrgId, patient_id, recordDateTime)
- //
- // //is_success := true
- // //failed_mag := ""
- // //查询出对应的坐标系统医嘱id,先进行删除操作,在创建医嘱。如果没有医嘱id,则直接创建医嘱
- // //if zuobiao.ID > 0 {
- // // cbm01s := strings.Split(zuobiao.Cbm01, ",")
- // // fmt.Println(cbm01s)
- // //
- // // for _, iditem := range cbm01s {
- // // fmt.Println(iditem)
- // // var root2 models.Root2
- // // var tradeInfo2 models.TradeInfo
- // // if li.Acf01 == 1 {
- // // tradeInfo2.PatSource = 1
- // // tradeInfo2.Type = 0
- // // } else {
- // // tradeInfo2.PatSource = 2
- // // tradeInfo2.Type = 1
- // //
- // // }
- // // tradeInfo2.Detpid = departmwnt.Number
- // // tradeInfo2.Empid = doctor_info.DoctorNumber
- // // tradeInfo2.Empno = doctor_info.DoctorCode
- // // tradeInfo2.Empname = doctor_info.UserName
- // // var vaf01 models.VAF10
- // // var ie1111 models.IEfive
- // // ie1111.VAF01 = iditem
- // // vaf01.Ie = append(vaf01.Ie, ie1111)
- // // root2.TradeInfo = tradeInfo2
- // // root2.VAF1 = vaf01
- // // xmlStr2, err := xml.MarshalIndent(root2, "", " ")
- // // if err != nil {
- // // fmt.Println("转换为XML时发生错误:", err)
- // // return
- // // }
- // // data := make(map[string]interface{})
- // // data["xmlStr"] = string(xmlStr2)
- // // bytesData, _ := json.Marshal(data)
- // // client := &http.Client{}
- // //
- // // var req *http.Request
- // //
- // //
- // // req, _ = http.NewRequest("POST", "http://192.168.100.199:9532/"+"nmg/coordinate/del", bytes.NewReader(bytesData))
- // // resp, _ := client.Do(req)
- // // defer resp.Body.Close()
- // // body, ioErr := ioutil.ReadAll(resp.Body)
- // // if ioErr != nil {
- // // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
- // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // // return
- // // }
- // // var respJSON map[string]interface{}
- // // if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
- // // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
- // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // // return
- // // }
- // //
- // // respJSON2 := respJSON["data"].(map[string]interface{})["msg"].(string)
- // // fmt.Println( respJSON)
- // // fmt.Println( respJSON["data"].(map[string]interface{}))
- // // fmt.Println(respJSON2)
- // //
- // // if respJSON2 != "成功"{
- // // //is_success = false
- // // failed_mag = respJSON2
- // // }
- // // }
- // //}
- //
- // xmlStr2, err := xml.MarshalIndent(root, "", " ")
- // if err != nil {
- // fmt.Println("转换为XML时发生错误:", err)
- // return
- // }
- // data := make(map[string]interface{})
- // data["xmlStr"] = string(xmlStr2)
- // bytesData, _ := json.Marshal(data)
- // var req *http.Request
- // client := &http.Client{}
- // saveLog("", string(xmlStr2), "1111", "上传明细xml", "")
- //
- // req, _ = http.NewRequest("POST", "http://192.168.100.199:9532/"+"nmg/coordinate/upload", bytes.NewReader(bytesData))
- // resp, _ := client.Do(req)
- // defer resp.Body.Close()
- // body, ioErr := ioutil.ReadAll(resp.Body)
- // if ioErr != nil {
- // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // return
- // }
- // var respJSON map[string]interface{}
- // if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
- // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // return
- // }
- //
- // respJSON3 := respJSON["data"].(map[string]interface{})["msg"].(string)
- // respJSON4 := respJSON["data"].(map[string]interface{})["res"].(string)
- //
- // if respJSON3 == "成功" {
- //
- // if li.Acf01 != 1 {
- // //记账
- // result2, request2 := service.NMGSettleForCoordinate(info)
- // saveLog(result2, request2, "记账", "记账", org.OrgName)
- //
- // //data := make(map[string]interface{})
- // //data["info"] = &info
- // //
- // //fmt.Println(data)
- // //
- // //bytesData, _ := json.Marshal(data)
- // //var req *http.Request
- // //
- // //client := &http.Client{}
- // //
- // //req, _ = http.NewRequest("POST", "http://192.168.100.199:9532/"+"nmg/coordinate/settle", bytes.NewReader(bytesData))
- // //resp, _ := client.Do(req)
- // //defer resp.Body.Close()
- // //body, ioErr := ioutil.ReadAll(resp.Body)
- // //if ioErr != nil {
- // // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
- // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // // return
- // //}
- // //var respJSON map[string]interface{}
- // //if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
- // // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
- // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // // return
- // //}
- // //
- // //respJSON = respJSON["data"].(map[string]interface{})["res"].(map[string]interface{})
- // //userJSONBytes, _ := json.Marshal(respJSON)
- // //
- // //var res2 ResultUpload2
- // //if err := json.Unmarshal(userJSONBytes, &res2); err != nil {
- // // utils.ErrorLog("解析失败:%v", err)
- // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // // return
- // //}
- // //if res2.Code == 500{
- // // c.ServeSuccessJSON(map[string]interface{}{
- // // "failed_code": -10,
- // // "msg": res2.Msg,
- // // })
- // // return
- // //}
- // }
- // timestamp := time.Now().Unix()
- // tempTime := time.Unix(timestamp, 0)
- // timeFormat := tempTime.Format("20060102150405")
- // chrgBchno := rand.Intn(100000) + 10000
- // ipt_otp_no := timeFormat + strconv.FormatInt(int64(chrgBchno), 10) + strconv.FormatInt(patient.ID, 10)
- // his := models.VMHisPatient{
- // Name: patient.Name,
- // Gender: patient.Gender,
- // Birthday: patient.Birthday,
- // MedicalTreatmentType: 0,
- // IdType: 1,
- // IdCardNo: patient.IdCardNo,
- // BalanceAccountsType: 1,
- // MedicalInsuranceNumber: "",
- // RegisterType: 0,
- // RegisterCost: 0,
- // TreatmentCost: 0,
- // Status: 0,
- // Ctime: time.Now().Unix(),
- // Mtime: time.Now().Unix(),
- // PsnNo: strconv.FormatInt(int64(li.Vaa01), 10),
- // PsnCertType: "",
- // Certno: patient.IdCardNo,
- // PsnName: patient.Name,
- // Gend: "",
- // Naty: "",
- // Brdy: "",
- // Age: 0,
- // Iinfo: "",
- // Idetinfo: "",
- // PatientId: patient.ID,
- // RecordDate: theTime.Unix(),
- //
- // UserOrgId: org_id,
- // AdminUserId: admin_user_id,
- // IsReturn: 1,
- // Doctor: patientPrescription.DoctorId,
- // Departments: patientPrescription.Departments,
- // IptOtpNo: ipt_otp_no,
- // Number: strconv.FormatInt(int64(li.Vaa07), 10),
- // PhoneNumber: patient.Phone,
- // }
- // service.UpdateHisPatientStatusten(&his)
- // service.UpdateHisPrescriptionHisID(his.ID, patient.ID, recordDateTime, org_id)
- // tm := time.Unix(time.Now().Unix(), 0)
- //
- // order := &models.HisOrder{
- // PsnNo: strconv.FormatInt(int64(li.Vaa01), 10),
- // UserOrgId: org_id,
- // PatientId: patient_id,
- // SettleAccountsDate: recordDateTime,
- // Ctime: time.Now().Unix(),
- // Mtime: time.Now().Unix(),
- // Status: 1,
- // OrderStatus: 1,
- // MdtrtId: strconv.FormatInt(int64(li.Vaa07), 10),
- // Number: strconv.FormatInt(int64(li.Vaa07), 10),
- // SetlId: respJSON4,
- // MedfeeSumamt: total,
- // MedType: strconv.Itoa(int(reg_type)),
- // SettleType: settle_accounts_type,
- // Diagnosis: diagnosis_id,
- // PType: int64(li.Acf01),
- // SetlTime: tm.Format("2006-01-02 15:04:05"),
- // SettleStartTime: recordStartTime,
- // SettleEndTime: recordEndTime,
- // }
- // err = service.CreateOrder(order)
- // if err != nil {
- // //c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeCreateOrderException)
- // return
- // }
- //
- // for _, item := range customs {
- // var advice_id int64 = 0
- // var project_id int64 = 0
- // //var item_id int64 = 0
- //
- // var types int64 = 0
- //
- // if item.Type == 1 {
- // advice_id = item.AdviceId
- // project_id = 0
- // //item_id = 0.
- // } else if item.Type == 2 {
- // advice_id = 0
- // //item_id = 0
- // project_id = item.ProjectId
- // }
- // detItemFeeSumamt, _ := strconv.ParseFloat(item.DetItemFeeSumamt, 32)
- // cut, _ := strconv.ParseFloat(item.Cut, 32)
- // pric, _ := strconv.ParseFloat(item.Price, 32)
- // info := &models.HisOrderInfo{
- // OrderNumber: order.Number,
- // UploadDate: time.Now().Unix(),
- // AdviceId: advice_id,
- // DetItemFeeSumamt: detItemFeeSumamt,
- // Cnt: cut,
- // Pric: pric,
- // PatientId: patient_id,
- // Status: 1,
- // Mtime: time.Now().Unix(),
- // Ctime: time.Now().Unix(),
- // UserOrgId: org_id,
- // HisPatientId: his.ID,
- // OrderId: order.ID,
- // ProjectId: project_id,
- // Type: types,
- // //ItemId: item_id,
- // }
- // service.CreateOrderInfo(info)
- // }
- // his.Diagnosis = diagnosis_id
- // his.SickType = sick_type
- // his.RegisterType = reg_type
- // his.MedicalTreatmentType = reg_type
- // service.UpdataHisPateintTwo(&his)
- // err = service.UpDatePrescriptionNumber(org_id, ids, strconv.FormatInt(int64(li.Vaa07), 10))
- // err = service.UpDateHisPrescriptionInfoNumbertwo(org_id, patient_id, strconv.FormatInt(int64(li.Vaa07), 10), recordDateTime, his.ID)
- // err = service.UpdataOrderStatusThreef(strconv.FormatInt(int64(li.Vaa07), 10), org_id)
- //
- // var zuobiao_advice models.HisZuobiaoAdvice
- // zuobiao_advice.Status = 1
- // zuobiao_advice.RecordDate = recordDateTime
- // zuobiao_advice.PatientId = patient_id
- // zuobiao_advice.Cbm01 = respJSON4
- // zuobiao_advice.Ctime = time.Now().Unix()
- // zuobiao_advice.Mtime = time.Now().Unix()
- // zuobiao_advice.Oid = order.ID
- // zuobiao_advice.StartTime = recordStartTime
- // zuobiao_advice.EndTime = recordEndTime
- // zuobiao_advice.Vaa01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // zuobiao_advice.Vaa07 = strconv.FormatInt(int64(li.Vaa07), 10)
- // zuobiao_advice.UserOrgId = c.GetAdminUserInfo().CurrentOrgId
- // service.Createzuobiao(&zuobiao_advice)
- //
- // c.ServeSuccessJSON(map[string]interface{}{
- // "msg": "成功",
- // })
- //
- // } else {
- // c.ServeSuccessJSON(map[string]interface{}{
- // "failed_code": -10,
- // "msg": respJSON3,
- // })
- //
- // }
- //
- // } else {
- //
- // c.ServeSuccessJSON(map[string]interface{}{
- // "failed_code": -10,
- // "msg": res.Msg,
- // })
- // }
- //}
- //func (c *CoordinateController) NMGSettleAccountthree() {
- // patient_id, _ := c.GetInt64("patient_id")
- // record_date := c.GetString("record_date")
- // //admin_user_id, _ := c.GetInt64("admin_user_id")
- // diagnosis_id := c.GetString("diagnosis")
- // sick_type, _ := c.GetInt64("sick_type")
- // reg_type, _ := c.GetInt64("p_type")
- // org_id, _ := c.GetInt64("org_id")
- // org_id = 10206
- // org, _ := service.GetOrgById(org_id)
- // patient, _ := service.GetPatientByID(org.Id, patient_id)
- // settle_accounts_type, _ := c.GetInt64("settle_accounts_type")
- //
- // res := NMGzhuyuan(c, patient.Name)
- // res8 := NMGmenzhen(c, patient.Name)
- //
- // //优先查询今天门诊的患者,如果今天没有门诊的患者查询出住院的患者
- // if res8.Code == 200 {
- // var res9 Data
- // res9.List = append(res9.List, res8.List...)
- // var li ListItem
- // // 获取当前时间
- // //var maxTimestamp int64
- //
- // // 定义一个变量来保存离当前时间最近的数据
- // //var closestData MyData
- // //var closestTimeDiff time.Duration
- //
- // // 遍历切片,找到离当前时间最近的数据
- // //for _, data := range res9.List {
- // // // 将时间字符串解析为 time.Time 类型
- // // timeObj, err := time.Parse("2006-01-02 15:04:05", data.Vae11)
- // // if err != nil {
- // // fmt.Println("时间解析错误:", err)
- // // continue
- // // }
- // // // 获取时间戳
- // // timestamp := timeObj.Unix()
- // // // 比较时间戳
- // // if timestamp > maxTimestamp {
- // // maxTimestamp = timestamp
- // // }
- // //}
- // //
- // //fmt.Println(maxTimestamp)
- //
- // sort.Slice(res9.List, func(i, j int) bool {
- // // 将时间字符串解析为 time.Time 类型
- // timeObj1, err1 := time.Parse("2006-01-02 15:04:05", res9.List[i].Vae11)
- // timeObj2, err2 := time.Parse("2006-01-02 15:04:05", res9.List[j].Vae11)
- //
- // // 错误处理
- // if err1 != nil || err2 != nil {
- // fmt.Println("时间解析错误:", err1, err2)
- // return false
- // }
- //
- // // 比较时间
- // return timeObj1.Before(timeObj2)
- // })
- //
- // cure_date := strings.Split(res9.List[len(res9.List)-1].Vae11, " ")
- // if cure_date[0] == record_date && patient.Name == res9.List[len(res9.List)-1].Vaa05 {
- // li = res9.List[len(res9.List)-1]
- // }
- // fmt.Println("按照时间排序后的数据:", li)
- // if li.Acf01 == 0 && li.Vaa07 == 0 && li.Vaa01 == 0 { //今天没有门诊患者,则查询出最后一个日期的住院患者
- // var res10 Data
- // //res9.List = append(res9.List, res.List...)
- // res10.List = append(res10.List, res.List...)
- // layout := "2006-01-02 15:04:05"
- // var maxDate time.Time
- // for _, item := range res10.List {
- // currentDate, err := time.Parse(layout, item.Vae11)
- // if err != nil {
- // fmt.Println("Error parsing date:", err)
- // continue
- // }
- // if currentDate.After(maxDate) {
- // maxDate = currentDate
- // }
- // if !maxDate.IsZero() {
- // fmt.Println("The maximum date is:", maxDate.Format(layout))
- // } else {
- // fmt.Println("No valid dates found")
- // }
- // }
- // fmt.Println(maxDate.Format("2006-01-02 15:04:05"))
- // for _, item := range res10.List {
- // if item.Vae11 == maxDate.Format("2006-01-02 15:04:05") && patient.Name == item.Vaa05 {
- // li = item
- // }
- // }
- // }
- // fmt.Println(li)
- //
- // timeLayout := "2006-01-02"
- // loc, _ := time.LoadLocation("Local")
- // theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_date+" 00:00:00", loc)
- // if err != nil {
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
- // return
- // }
- // org_id := org.Id
- // recordDateTime := theTime.Unix()
- // patientPrescription, _ := service.FindPatientPrescriptionInfoTwo(org_id, patient.ID, recordDateTime, 2)
- // if patientPrescription.ID == 0 {
- // patientPrescription, _ = service.FindLastPatientPrescriptionInfo(org_id, patient.ID, recordDateTime)
- // }
- // departmwnt, _ := service.GetDepartMentDetail(patientPrescription.Departments)
- // //admin_user_info, _ := service.GetAdminUserInfoByID(org_id, admin_user_id)
- // doctor_info, _ := service.GetAdminUserInfoByID(org_id, patientPrescription.DoctorId)
- //
- // var recordStartTime int64
- // var recordEndTime int64
- //
- // var prescriptions []models.HisPrescription
- // if settle_accounts_type == 1 { //日结
- // prescriptions, _ = service.GetUnSettleHisPrescriptionFive(org_id, patient_id, recordDateTime, 2)
- // } else { //月结
- // start_time_str := c.GetString("start_time")
- // end_time_str := c.GetString("end_time")
- // theStartTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time_str+" 00:00:00", loc)
- // if err != nil {
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
- // return
- // }
- // recordStartTime = theStartTime.Unix()
- // theEndTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time_str+" 00:00:00", loc)
- // if err != nil {
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
- // return
- // }
- // recordEndTime = theEndTime.Unix()
- //
- // prescriptions, _ = service.GetUnSettleMonthHisPrescription(org_id, patient_id, recordStartTime, recordEndTime)
- // }
- //
- // var total float64
- //
- // var customs []*models.NewCustomTwo
- // for _, item := range prescriptions {
- // if item.Type == 1 { //药品
- // for _, subItem := range item.HisDoctorAdviceInfo {
- // tempTime := time.Unix(item.PreTime, 0)
- // //timeFormat := tempTime.Format("20060102150405")
- // timeFormatOne := tempTime.Format("2006-01-02 15:04:05")
- // cus := &models.NewCustomTwo{
- // AdviceId: subItem.ID,
- // ProjectId: 0,
- // DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*subItem.PrescribingNumber),
- // Cut: fmt.Sprintf("%.4f", subItem.PrescribingNumber),
- // FeedetlSn: subItem.FeedetlSn,
- // Price: fmt.Sprintf("%.2f", subItem.Price),
- // MedListCodg: subItem.BaseDrugLib.MedicalInsuranceNumber,
- // Type: 1,
- // ItemId: subItem.BaseDrugLib.ZuobiaoId,
- // StartTime: timeFormatOne,
- // Content: subItem.AdviceName,
- // Bby01: subItem.BaseDrugLib.Bby01,
- // }
- // customs = append(customs, cus)
- // }
- // }
- // if item.Type == 2 { //项目
- // for _, subItem := range item.HisPrescriptionProject {
- // if subItem.Type == 2 {
- // tempTime := time.Unix(item.PreTime, 0)
- // //timeFormat := tempTime.Format("20060102150405")
- // timeFormatOne := tempTime.Format("2006-01-02 15:04:05")
- // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- // cus := &models.NewCustomTwo{
- // AdviceId: 0,
- // ProjectId: subItem.ID,
- // DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*cnt),
- // Cut: fmt.Sprintf("%.4f", cnt),
- // FeedetlSn: subItem.FeedetlSn,
- // Price: fmt.Sprintf("%.4f", float64(subItem.Price)),
- // MedListCodg: subItem.HisProject.MedicalCode,
- // Type: 2,
- // ItemId: subItem.HisProject.ZuobiaoId,
- // StartTime: timeFormatOne,
- // Content: subItem.HisProject.ProjectName,
- // Bby01: subItem.HisProject.Bby01,
- // }
- // customs = append(customs, cus)
- //
- // } else {
- // tempTime := time.Unix(item.PreTime, 0)
- // //timeFormat := tempTime.Format("20060102150405")
- // timeFormatOne := tempTime.Format("2006-01-02 15:04:05")
- // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- // cus := &models.NewCustomTwo{
- // AdviceId: 0,
- // ProjectId: subItem.ID,
- // DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*cnt),
- // Cut: fmt.Sprintf("%.4f", cnt),
- // FeedetlSn: subItem.FeedetlSn,
- // Price: fmt.Sprintf("%.4f", float64(subItem.Price)),
- // MedListCodg: subItem.GoodInfo.MedicalInsuranceNumber,
- // Type: 3,
- // ItemId: subItem.GoodInfo.ZuobiaoId,
- // StartTime: timeFormatOne,
- // Content: subItem.GoodInfo.GoodName,
- // Bby01: subItem.GoodInfo.Bby01,
- // }
- // customs = append(customs, cus)
- // }
- //
- // }
- // }
- // }
- //
- // for _, item := range prescriptions {
- // if item.Type == 1 { //药品
- // for _, subItem := range item.HisDoctorAdviceInfo {
- // price, _ := strconv.ParseFloat(fmt.Sprintf("%.2f", subItem.Price), 64)
- // total_one := price * subItem.PrescribingNumber
- // fmt.Println("subItem")
- // fmt.Println(subItem.Price)
- // fmt.Println("price")
- // fmt.Println(price)
- // fmt.Println("total_one")
- // fmt.Println(total_one)
- // total = total + total_one
- // fmt.Println(total)
- //
- // }
- // }
- // if item.Type == 2 { //项目
- //
- // for _, subItem := range item.HisPrescriptionProject {
- // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- // price, _ := strconv.ParseFloat(fmt.Sprintf("%.2f", subItem.Price), 64)
- // total_one := price * cnt
- // total = total + total_one
- // }
- // }
- // }
- //
- // //allTotal := fmt.Sprintf("%2f", total)
- //
- // var info models.UploadInfo
- // info.Acf01 = int64(li.Acf01)
- // info.Bce01 = "132"
- // info.Bck01 = "48"
- // info.Vaa07 = int64(li.Vaa07)
- // info.Vaa01 = int64(li.Vaa01)
- // info.Vaa05 = li.Vaa05
- // info.Bce01a = doctor_info.DoctorNumber
- //
- // for _, item := range customs {
- // var cha models.ChargeListtwo
- // cnt, _ := strconv.ParseFloat(item.Cut, 64)
- //
- // Bby01, _ := strconv.ParseInt(item.Bby01, 10, 64)
- //
- // cha.Bby01 = Bby01
- // cha.Vaj25 = cnt
- // info.ChargeListtwo = append(info.ChargeListtwo, &cha)
- // }
- //
- // //
- // //
- // //var del_ids []string
- // //
- // //
- // ////信息
- // var is_upload_success bool = true
- // var curpage int
- // var pagesize int = 8
- // var start int = 1
- // var stop int
- // var zuobiao_ids string
- // var err_msg string
- // var idss []int64
- //
- // //pagecount := 10
- // pagecount := int(math.Ceil(float64(len(prescriptions)) / float64(pagesize)))
- //
- // for curpage = 1; curpage <= pagecount; curpage++ {
- // var root models.Root
- // var tradeInfo models.TradeInfo
- // var cBM1 models.CBM1
- // var vAF1 models.VAF1
- // var vAO1 models.VAO1
- // var vBQ1 models.VBQ1
- //
- // if li.Acf01 == 1 {
- // tradeInfo.PatSource = 1
- // tradeInfo.Type = 0
- // } else {
- // tradeInfo.PatSource = 2
- // tradeInfo.Type = 1
- //
- // }
- // tradeInfo.Detpid = departmwnt.Number
- // tradeInfo.Empid = doctor_info.DoctorNumber
- // tradeInfo.Empno = doctor_info.DoctorCode
- // tradeInfo.Empname = doctor_info.UserName
- // root.TradeInfo = tradeInfo
- //
- // if curpage == 1 {
- // start = 1
- // } else {
- // start = (curpage-1)*pagesize + 1
- // }
- // stop = curpage * pagesize
- // if stop > len(prescriptions) {
- // stop = len(prescriptions)
- // }
- //
- // var ids []int64
- //
- // for _, item := range prescriptions[start-1 : stop] {
- // ids = append(ids, item.ID)
- // }
- //
- // for _, item := range prescriptions[start-1 : stop] {
- // departmwnt_two, _ := service.GetDepartMentDetail(item.VMHisPrescriptionInfo.Departments)
- // var ie_cbm1 models.IEone
- // ie_cbm1.CBMID = strconv.FormatInt(item.ID, 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAA07 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.ACF01 = strconv.FormatInt(int64(li.Acf01), 10)
- // //ie_cbm1.CBM06 = strconv.FormatInt(int64(res.List[0].Acf01), 10)
- //
- // if li.Acf01 == 1 {
- // ie_cbm1.CBM06 = item.MedType
- // ie_cbm1.BCK01A = "0"
- // } else {
- // ie_cbm1.CBM06 = "0"
- // ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01A), 10) //病区id
- // }
- // ie_cbm1.CBM07 = item.MedType
- // ie_cbm1.BCK01B = strconv.FormatInt(int64(li.Bck01B), 10)
- // ie_cbm1.BCK01C = departmwnt_two.Number
- // ie_cbm1.CBM19 = "0"
- // cBM1.Ie = append(cBM1.Ie, ie_cbm1)
- // }
- // root.CBM1 = cBM1
- // ////医嘱
- // for _, item := range prescriptions[start-1 : stop] {
- // departmwnt_two, _ := service.GetDepartMentDetail(item.VMHisPrescriptionInfo.Departments)
- //
- // if item.Type == 1 {
- // //组号去重
- // //temphisDoctorAdviceInfo := RemoveRepeatedPurviewElementdoctoradvice(item.HisDoctorAdviceInfo)
- //
- // // 使用 map 来存储 groupno 的数量
- // //groupCount := make(map[int64]int64)
- //
- // // 使用 map 来存储 groupno 的数量和最后一条数据的索引
- // groupInfo := make(map[int64]struct {
- // Count int64
- // LastElement int
- // })
- //
- // // 遍历切片,计算 groupno 的数量和最后一条数据的索引
- // for i, obj := range item.HisDoctorAdviceInfo {
- // info, ok := groupInfo[obj.Groupno]
- // if !ok {
- // info = struct {
- // Count int64
- // LastElement int
- // }{}
- // }
- // info.Count++
- // info.LastElement = i
- // groupInfo[obj.Groupno] = info
- // }
- //
- // // 根据 groupno 的数量设置字段值
- // for i, obj := range item.HisDoctorAdviceInfo {
- // info := groupInfo[obj.Groupno]
- // if info.Count < 2 {
- // item.HisDoctorAdviceInfo[i].NewGroupno = strconv.FormatInt(int64(1), 10)
- // } else {
- // // 对于数量大于等于 2 的,将最后一条数据设置 1,其他设置为随机数
- // if i == info.LastElement {
- // item.HisDoctorAdviceInfo[i].NewGroupno = strconv.FormatInt(int64(1), 10)
- // } else {
- // item.HisDoctorAdviceInfo[i].NewGroupno = strconv.FormatInt(obj.ID, 10)
- // }
- // }
- // }
- //
- // for _, subitem := range item.HisDoctorAdviceInfo {
- // var ie_cbm1 models.IEtwo
- // ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- // ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01A), 10)
- // ie_cbm1.ROWNR = subitem.NewGroupno
- // ie_cbm1.VAF10 = "1"
- // ie_cbm1.VAF11 = "2"
- // ie_cbm1.BDA01 = "1" //诊疗类型
- // ie_cbm1.BBX01 = subitem.BaseDrugLib.ZuobiaoId
- // ie_cbm1.VAF14 = "" //检验样本类型
- // ie_cbm1.VAF15 = ""
- // ie_cbm1.BBY01 = subitem.BaseDrugLib.Bby01 //药品规格id或材料规格id
- //
- // if li.Acf01 == 1 {
- // ie_cbm1.VAF17 = strconv.FormatInt(int64(subitem.Day), 10)
- //
- // } else {
- // ie_cbm1.VAF17 = "0"
- //
- // }
- //
- // ie_cbm1.VAF18 = fmt.Sprintf("%.2f", subitem.SingleDose) //药品规格id或材料规格id
- // ie_cbm1.VAF19 = fmt.Sprintf("%.2f", subitem.SingleDose) + " " + subitem.SingleDoseUnit //药品规格id或材料规格id
- // ie_cbm1.VAF20 = fmt.Sprintf("%.2f", subitem.SingleDose)
- // ie_cbm1.VAF21 = fmt.Sprintf("%.2f", subitem.PrescribingNumber)
- //
- // ie_cbm1.VAF22 = subitem.AdviceName + " " + subitem.BaseDrugLib.DrugSpec
- // ie_cbm1.Crypt = "0"
- // ie_cbm1.VAF23 = ""
- // ie_cbm1.BCK01B = subitem.BaseDrugLib.Bck01b
- // ie_cbm1.VAF26 = subitem.ExecutionFrequency
- // ie_cbm1.VAF27 = "1"
- // ie_cbm1.VAF28 = "1"
- // ie_cbm1.VAF29 = "1"
- //
- // ie_cbm1.VAF30 = ""
- // ie_cbm1.VAF31 = "0"
- //
- // ie_cbm1.VAF32 = "0" //todo
- // ie_cbm1.VAF33 = "0"
- // ie_cbm1.VAF34 = "0"
- // ie_cbm1.VAF35 = "0"
- //
- // tempTime1 := time.Unix(subitem.StartTime, 0)
- // timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- // ie_cbm1.VAF36 = timeFormatOne
- // ie_cbm1.VAF37 = "1899-12-30"
- // doctor_info, _ := service.GetAdminUserInfoByID(org_id, item.Creator)
- // ie_cbm1.BCK01C = departmwnt_two.Number
- //
- // ie_cbm1.BCE02A = doctor_info.DoctorCode
- // ie_cbm1.BCE03A = doctor_info.UserName
- // ie_cbm1.BCE03B = ""
- //
- // ie_cbm1.VAF53 = "-1"
- // ie_cbm1.VAF55 = subitem.Remark
- // ie_cbm1.BCK01D = departmwnt_two.Number
- // ie_cbm1.VAF58 = "0"
- // ie_cbm1.VAF59 = strconv.FormatInt(int64(subitem.Groupno), 10)
- // ie_cbm1.VAF60 = ""
- // ie_cbm1.VAF61 = "1"
- // ie_cbm1.VAF62 = "0"
- // ie_cbm1.LSign = "0"
- // ie_cbm1.BDA01A = ie_cbm1.BDA01
- // ie_cbm1.LRoute = "0"
- // ie_cbm1.BCE01A = doctor_info.DoctorNumber
- // ie_cbm1.BCE01B = "0"
- //
- // ie_cbm1.VAF01B = "0"
- // ie_cbm1.VCO01 = "0"
- // ie_cbm1.BCE01H = "0"
- // ie_cbm1.BCE03H = ""
- // ie_cbm1.BIW02 = ""
- // ie_cbm1.RCurrent = "0"
- // ie_cbm1.FCheck = "0"
- // ie_cbm1.UnameA = ""
- // ie_cbm1.VEH02 = ""
- // vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- // }
- //
- // hisDoctorAdviceInfo := RemoveRepeatedPurviewElementdoctoradvice(item.HisDoctorAdviceInfo)
- //
- // //每种药品下的给药途径
- // for _, subitem := range hisDoctorAdviceInfo {
- // way, _ := service.GetDrugwayDicByName(subitem.DeliveryWay, c.GetAdminUserInfo().CurrentOrgId)
- // var ie_cbm1 models.IEtwo
- // ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- // ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01A), 10)
- // ie_cbm1.ROWNR = "0"
- // ie_cbm1.VAF10 = "1"
- // ie_cbm1.VAF11 = "2"
- // ie_cbm1.BDA01 = "T" //诊疗类型
- // ie_cbm1.BBX01 = way.Code
- // ie_cbm1.VAF14 = "" //检验样本类型
- // ie_cbm1.VAF15 = "" //检验样本类型
- // ie_cbm1.BBY01 = way.Bby01 //药品规格id或材料规格id
- // if li.Acf01 == 1 {
- // ie_cbm1.VAF17 = strconv.FormatInt(int64(subitem.Day), 10) //药品规格id或材料规格id
- // } else {
- // ie_cbm1.VAF17 = "0" //药品规格id或材料规格id
- // }
- //
- // ie_cbm1.VAF18 = fmt.Sprintf("%.2f", subitem.SingleDose) //药品规格id或材料规格id
- // ie_cbm1.VAF19 = fmt.Sprintf("%.2f", subitem.SingleDose) + " " + subitem.SingleDoseUnit //药品规格id或材料规格id
- // ie_cbm1.VAF20 = fmt.Sprintf("%.2f", subitem.SingleDose)
- // //ie_cbm1.VAF21 = fmt.Sprintf("%.2f",subitem.PrescribingNumber)
- //
- // //ie_cbm1.VAF18 = "" //药品规格id或材料规格id
- // //ie_cbm1.VAF19 = ""
- // //ie_cbm1.VAF20 = ""
- // if subitem.DrugWayCount == "" {
- // ie_cbm1.VAF21 = "1"
- //
- // } else {
- // ie_cbm1.VAF21 = subitem.DrugWayCount
- //
- // }
- //
- // ie_cbm1.VAF22 = way.Name
- // ie_cbm1.Crypt = "0"
- // ie_cbm1.VAF23 = ""
- // ie_cbm1.BCK01B = subitem.BaseDrugLib.Bck01b
- // ie_cbm1.VAF26 = subitem.ExecutionFrequency
- // ie_cbm1.VAF27 = "1"
- // ie_cbm1.VAF28 = "1"
- // ie_cbm1.VAF29 = "1"
- // ie_cbm1.BCK01C = departmwnt_two.Number
- //
- // ie_cbm1.VAF30 = ""
- // ie_cbm1.VAF31 = "0"
- //
- // ie_cbm1.VAF32 = "1" //todo
- // ie_cbm1.VAF33 = "0"
- // ie_cbm1.VAF34 = "0"
- // ie_cbm1.VAF35 = "0"
- //
- // tempTime1 := time.Unix(subitem.StartTime, 0)
- // timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- // ie_cbm1.VAF36 = timeFormatOne
- // ie_cbm1.VAF37 = "1899-12-30"
- // doctor_info, _ := service.GetAdminUserInfoByID(org_id, item.Creator)
- //
- // ie_cbm1.BCE02A = doctor_info.DoctorCode
- // ie_cbm1.BCE03A = doctor_info.UserName
- // ie_cbm1.BCE03B = ""
- //
- // ie_cbm1.VAF53 = "-1"
- // ie_cbm1.VAF55 = subitem.Remark
- // ie_cbm1.BCK01D = departmwnt_two.Number
- // ie_cbm1.VAF58 = "0"
- // ie_cbm1.VAF59 = strconv.FormatInt(int64(subitem.Groupno), 10)
- //
- // ie_cbm1.VAF60 = ""
- // ie_cbm1.VAF61 = "1"
- // ie_cbm1.VAF62 = "0"
- // ie_cbm1.LSign = "0"
- // ie_cbm1.BDA01A = ie_cbm1.BDA01
- // ie_cbm1.LRoute = "0"
- // ie_cbm1.BCE01A = doctor_info.DoctorNumber
- // ie_cbm1.BCE01B = "0"
- //
- // ie_cbm1.VAF01B = "0"
- // ie_cbm1.VCO01 = "0"
- // ie_cbm1.BCE01H = "0"
- // ie_cbm1.BCE03H = ""
- // ie_cbm1.BIW02 = ""
- // ie_cbm1.RCurrent = "0"
- // ie_cbm1.FCheck = "0"
- // ie_cbm1.UnameA = ""
- // ie_cbm1.VEH02 = ""
- // ie_cbm1.VAF07 = "0"
- // vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- // }
- //
- // } else if item.Type == 2 {
- // for index, subitem := range item.HisPrescriptionProject {
- // if subitem.Type == 2 {
- // if subitem.HisProject.CostClassify != 3 {
- // var ie_cbm1 models.IEtwo
- // ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- // ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01A), 10)
- // ie_cbm1.ROWNR = strconv.FormatInt(int64(index+1), 10)
- // ie_cbm1.VAF10 = "1"
- // ie_cbm1.VAF11 = "2"
- // ie_cbm1.BDA01 = "T" //诊疗类型
- // ie_cbm1.BBX01 = subitem.HisProject.ZuobiaoId
- // ie_cbm1.VAF14 = "" //检验样本类型
- // ie_cbm1.VAF15 = "" //检验样本类型
- // ie_cbm1.BBY01 = subitem.HisProject.Bby01 //药品规格id或材料规格id
- // if li.Acf01 == 1 {
- // ie_cbm1.VAF17 = subitem.Day //药品规格id或材料规格id
- // if len(subitem.Day) == 0 {
- // ie_cbm1.VAF17 = "1"
- // }
- //
- // } else {
- // ie_cbm1.VAF17 = "0" //药品规格id或材料规格idn
- // }
- // if subitem.SingleDose == "" {
- //
- // subitem.SingleDose = "1"
- // }
- //
- // ie_cbm1.VAF18 = subitem.SingleDose //药品规格id或材料规格id
- // ie_cbm1.VAF19 = subitem.SingleDose + " " + subitem.Unit //药品规格id或材料规格id
- // ie_cbm1.VAF20 = subitem.SingleDose
- // ie_cbm1.VAF21 = subitem.Count
- //
- // ie_cbm1.VAF22 = subitem.HisProject.ProjectName
- // ie_cbm1.Crypt = "0"
- // ie_cbm1.VAF23 = ""
- // ie_cbm1.BCK01B = subitem.HisProject.Bck01b
- // ie_cbm1.VAF26 = subitem.ExecutionFrequency
- // ie_cbm1.VAF27 = "1"
- // ie_cbm1.VAF28 = "1"
- // ie_cbm1.VAF29 = ""
- // ie_cbm1.BCK01C = departmwnt_two.Number
- //
- // ie_cbm1.VAF30 = ""
- // ie_cbm1.VAF31 = "0"
- //
- // ie_cbm1.VAF32 = "0" //todo
- // ie_cbm1.VAF33 = "0"
- // ie_cbm1.VAF34 = "0"
- // ie_cbm1.VAF35 = "0"
- //
- // tempTime1 := time.Unix(subitem.StartTime, 0)
- // timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- // ie_cbm1.VAF36 = timeFormatOne
- // ie_cbm1.VAF37 = "1899-12-30"
- // doctor_info, _ := service.GetAdminUserInfoByID(org_id, item.Creator)
- //
- // ie_cbm1.BCE02A = doctor_info.DoctorCode
- // ie_cbm1.BCE03A = doctor_info.UserName
- // ie_cbm1.BCE03B = ""
- //
- // ie_cbm1.VAF53 = "-1"
- // ie_cbm1.VAF55 = subitem.Remark
- // ie_cbm1.BCK01D = departmwnt_two.Number
- // ie_cbm1.VAF58 = "0"
- // ie_cbm1.VAF59 = strconv.FormatInt(int64(index+1), 10)
- //
- // ie_cbm1.VAF60 = ""
- // ie_cbm1.VAF61 = "1"
- // ie_cbm1.VAF62 = "0"
- // ie_cbm1.LSign = "0"
- // ie_cbm1.BDA01A = "" //诊疗类型
- // ie_cbm1.LRoute = "0"
- // ie_cbm1.BCE01A = doctor_info.DoctorNumber
- //
- // //ie_cbm1.BCE01A = doctor_info.UserName
- // ie_cbm1.BCE01B = "0"
- //
- // ie_cbm1.VAF01B = "0"
- // ie_cbm1.VCO01 = "0"
- // ie_cbm1.BCE01H = "0"
- // ie_cbm1.BCE03H = ""
- // ie_cbm1.BIW02 = ""
- // ie_cbm1.RCurrent = "0"
- // ie_cbm1.FCheck = "0"
- // ie_cbm1.UnameA = ""
- // ie_cbm1.VAF07 = "0"
- //
- // ie_cbm1.VEH02 = ""
- // vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- // }
- // if subitem.HisProject.CostClassify == 3 {
- // var ie_cbm1 models.IEtwo
- // ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- // ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01A), 10)
- // ie_cbm1.ROWNR = strconv.FormatInt(int64(index+1), 10)
- // ie_cbm1.VAF10 = "1"
- // ie_cbm1.VAF11 = "2"
- // ie_cbm1.BDA01 = "L" //诊疗类型
- // ie_cbm1.BBX01 = subitem.HisProject.ZuobiaoId
- // ie_cbm1.VAF14 = "" //检验样本类型
- // ie_cbm1.VAF15 = "" //检验样本类型
- // ie_cbm1.BBY01 = subitem.HisProject.Bby01 //药品规格id或材料规格id
- // if li.Acf01 == 1 {
- // ie_cbm1.VAF17 = subitem.Day //药品规格id或材料规格id
- // } else {
- // ie_cbm1.VAF17 = "0" //药品规格id或材料规格idn
- // }
- // if subitem.SingleDose == "" {
- //
- // subitem.SingleDose = "1"
- // }
- //
- // ie_cbm1.VAF18 = subitem.SingleDose //药品规格id或材料规格id
- // ie_cbm1.VAF19 = subitem.SingleDose + " " + subitem.Unit //药品规格id或材料规格id
- // ie_cbm1.VAF20 = subitem.SingleDose
- // ie_cbm1.VAF21 = subitem.Count
- //
- // ie_cbm1.VAF22 = subitem.HisProject.ProjectName
- // ie_cbm1.Crypt = "0"
- // ie_cbm1.VAF23 = ""
- // ie_cbm1.BCK01B = subitem.HisProject.Bck01b
- // ie_cbm1.VAF26 = subitem.ExecutionFrequency
- // ie_cbm1.VAF27 = "1"
- // ie_cbm1.VAF28 = "1"
- // ie_cbm1.VAF29 = ""
- // ie_cbm1.BCK01C = departmwnt_two.Number
- // ie_cbm1.VAF30 = ""
- // ie_cbm1.VAF31 = "0"
- // ie_cbm1.VAF32 = "0" //todo
- // ie_cbm1.VAF33 = "0"
- // ie_cbm1.VAF34 = "0"
- // ie_cbm1.VAF35 = "0"
- // tempTime1 := time.Unix(subitem.StartTime, 0)
- // timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- // ie_cbm1.VAF36 = timeFormatOne
- // ie_cbm1.VAF37 = "1899-12-30"
- // doctor_info, _ := service.GetAdminUserInfoByID(org_id, item.Creator)
- //
- // ie_cbm1.BCE02A = doctor_info.DoctorCode
- // ie_cbm1.BCE03A = doctor_info.UserName
- // ie_cbm1.BCE03B = ""
- //
- // ie_cbm1.VAF53 = "-1"
- // ie_cbm1.VAF55 = subitem.Remark
- // ie_cbm1.BCK01D = departmwnt_two.Number
- // ie_cbm1.VAF58 = "0"
- // ie_cbm1.VAF59 = strconv.FormatInt(int64(index+1), 10)
- //
- // ie_cbm1.VAF60 = ""
- // ie_cbm1.VAF61 = "1"
- // ie_cbm1.VAF62 = "0"
- // ie_cbm1.LSign = "0"
- // ie_cbm1.BDA01A = "" //诊疗类型
- // ie_cbm1.LRoute = "0"
- // ie_cbm1.BCE01A = doctor_info.DoctorNumber
- // ie_cbm1.VAF07 = "0"
- //
- // //ie_cbm1.BCE01A = doctor_info.UserName
- // ie_cbm1.BCE01B = "0"
- //
- // ie_cbm1.VAF01B = "0"
- // ie_cbm1.VCO01 = "0"
- // ie_cbm1.BCE01H = "0"
- // ie_cbm1.BCE03H = ""
- // ie_cbm1.BIW02 = ""
- // ie_cbm1.RCurrent = "0"
- // ie_cbm1.FCheck = "0"
- // ie_cbm1.UnameA = ""
- // ie_cbm1.VEH02 = ""
- // vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- // }
- //
- // } else if subitem.Type == 3 {
- // var ie_cbm1 models.IEtwo
- // ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- // ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01A), 10)
- // ie_cbm1.ROWNR = strconv.FormatInt(int64(index+1), 10)
- //
- // ie_cbm1.VAF10 = "1"
- // ie_cbm1.VAF11 = "2"
- // ie_cbm1.BDA01 = "4" //诊疗类型
- // ie_cbm1.BBX01 = subitem.GoodInfo.ZuobiaoId
- // ie_cbm1.VAF14 = "" //检验样本类型
- // ie_cbm1.VAF15 = "" //检验样本类型
- // ie_cbm1.BBY01 = subitem.GoodInfo.Bby01 //药品规格id或材料规格id
- // if li.Acf01 == 1 {
- // ie_cbm1.VAF17 = subitem.Day //药品规格id或材料规格id
- // if len(subitem.Day) == 0 {
- // ie_cbm1.VAF17 = "1"
- // }
- //
- // } else {
- // ie_cbm1.VAF17 = "0" //药品规格id或材料规格idn
- // }
- // if subitem.SingleDose == "" {
- //
- // subitem.SingleDose = "1"
- // }
- //
- // ie_cbm1.VAF18 = subitem.SingleDose //药品规格id或材料规格id
- // ie_cbm1.VAF19 = subitem.SingleDose + " " + subitem.Unit //药品规格id或材料规格id
- // ie_cbm1.VAF20 = subitem.SingleDose
- // ie_cbm1.VAF21 = subitem.Count
- // ie_cbm1.BCK01C = departmwnt_two.Number
- //
- // ie_cbm1.VAF22 = subitem.GoodInfo.GoodName + " " + subitem.GoodInfo.SpecificationName
- // ie_cbm1.Crypt = "0"
- // ie_cbm1.VAF23 = ""
- // ie_cbm1.BCK01B = subitem.GoodInfo.Bck01b
- // ie_cbm1.VAF26 = subitem.ExecutionFrequency
- // ie_cbm1.VAF27 = "1"
- // ie_cbm1.VAF28 = "1"
- // ie_cbm1.VAF29 = ""
- // ie_cbm1.VAF07 = "0"
- //
- // ie_cbm1.VAF30 = ""
- // ie_cbm1.VAF31 = "0"
- //
- // ie_cbm1.VAF32 = "0" //todo
- // ie_cbm1.VAF33 = "0"
- // ie_cbm1.VAF34 = "0"
- // ie_cbm1.VAF35 = "0"
- //
- // tempTime1 := time.Unix(subitem.StartTime, 0)
- // timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- // ie_cbm1.VAF36 = timeFormatOne
- // ie_cbm1.VAF37 = "1899-12-30"
- // doctor_info, _ := service.GetAdminUserInfoByID(org_id, item.Creator)
- //
- // ie_cbm1.BCE02A = doctor_info.DoctorCode
- // ie_cbm1.BCE03A = doctor_info.UserName
- // ie_cbm1.BCE03B = ""
- // ie_cbm1.BCK01C = departmwnt_two.Number
- //
- // ie_cbm1.VAF53 = "-1"
- // ie_cbm1.VAF55 = subitem.Remark
- // ie_cbm1.BCK01D = departmwnt_two.Number
- // ie_cbm1.VAF58 = "0"
- // ie_cbm1.VAF59 = strconv.FormatInt(int64(index+1), 10)
- // ie_cbm1.VAF60 = ""
- // ie_cbm1.VAF61 = "1"
- // ie_cbm1.VAF62 = "0"
- // ie_cbm1.LSign = "0"
- // ie_cbm1.BDA01A = "" //诊疗类型
- // ie_cbm1.LRoute = "0"
- // ie_cbm1.BCE01A = doctor_info.DoctorNumber
- // ie_cbm1.BCE01B = "0"
- // ie_cbm1.VAF01B = "0"
- // ie_cbm1.VCO01 = "0"
- // ie_cbm1.BCE01H = "0"
- // ie_cbm1.BCE03H = ""
- // ie_cbm1.BIW02 = ""
- // ie_cbm1.RCurrent = "0"
- // ie_cbm1.FCheck = "0"
- // ie_cbm1.UnameA = ""
- // ie_cbm1.VEH02 = ""
- // vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- // }
- // }
- // }
- //
- // }
- // root.VAF1 = vAF1
- // for _, item := range prescriptions[start-1 : stop] {
- // sick, _ := service.FindSickById(sick_type)
- //
- // dias := strings.Split(item.VMHisPrescriptionInfo.Diagnosis, ",")
- // //service.get
- //
- // //诊断
- // for index, subitem := range dias {
- // diagnosisConfig, _ := service.FindDiagnoseByIdtwo(subitem)
- // if index == 0 {
- // var ie_cbm1 models.IEthree
- // ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAA07 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.ACF01 = strconv.FormatInt(int64(li.Acf01), 10)
- // ie_cbm1.VAO06 = strconv.FormatInt(int64(index+1), 10)
- // ie_cbm1.VAO07 = "1"
- // ie_cbm1.VAO10 = "0"
- // ie_cbm1.VAO11 = "1"
- // ie_cbm1.BAK01A = sick.ContentCode
- // ie_cbm1.CAM01 = diagnosisConfig.ContentCode
- // ie_cbm1.VAO15 = diagnosisConfig.ClassName
- // ie_cbm1.VAO18 = "0"
- // ie_cbm1.VAO22 = "1"
- // ie_cbm1.IAA01 = ""
- // ie_cbm1.IAD03 = ""
- // ie_cbm1.BAK01B = ""
- // ie_cbm1.VAO26 = ""
- // ie_cbm1.IAD04 = ""
- // ie_cbm1.IAD01 = ""
- // ie_cbm1.VAO25 = "1"
- // ie_cbm1.VAO35 = ""
- // vAO1.Ie = append(vAO1.Ie, ie_cbm1)
- //
- // } else {
- // var ie_cbm1 models.IEthree
- // ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAA07 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.ACF01 = strconv.FormatInt(int64(li.Acf01), 10)
- // ie_cbm1.VAO06 = strconv.FormatInt(int64(index+1), 10)
- // ie_cbm1.VAO07 = "1"
- // ie_cbm1.VAO10 = "0"
- // ie_cbm1.VAO11 = "1"
- // ie_cbm1.BAK01A = sick.ContentCode
- // ie_cbm1.CAM01 = diagnosisConfig.ContentCode
- // ie_cbm1.VAO15 = diagnosisConfig.ClassName
- // ie_cbm1.VAO18 = "0"
- // ie_cbm1.VAO22 = "1"
- // ie_cbm1.IAA01 = ""
- // ie_cbm1.IAD03 = ""
- // ie_cbm1.BAK01B = ""
- // ie_cbm1.VAO26 = ""
- // ie_cbm1.IAD04 = ""
- // ie_cbm1.IAD01 = ""
- // ie_cbm1.VAO25 = "2"
- // ie_cbm1.VAO35 = ""
- // vAO1.Ie = append(vAO1.Ie, ie_cbm1)
- // }
- // }
- // }
- // ////
- // //////检验检查医嘱
- // //for _, item := range prescriptions{
- // // fmt.Println("6666666666666")
- // // if item.Type == 2{
- // // for _, subitem := range item.HisPrescriptionProject {
- // // if subitem.Type == 2{
- // // if subitem.HisProject.CostClassify == 3 {
- // // var ie_cbm1 models.IEfour
- // // ie_cbm1.VBQ01 = strconv.FormatInt(int64(item.ID), 10)
- // // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // // ie_cbm1.VAA07 = strconv.FormatInt(int64(li.Vaa07), 10)
- // // ie_cbm1.ACF01 = strconv.FormatInt(int64(li.Acf01), 10)
- // // ie_cbm1.VAP01 = "0"
- // // ie_cbm1.VBQ07 = "0"
- // // ie_cbm1.BCK01A = departmwnt.Number
- // // ie_cbm1.BCK01B= "0"
- // // ie_cbm1.BCE03A= ""
- // // ie_cbm1.BCE01A= "0"
- // // ie_cbm1.VBQ27= subitem.HisProject.ProjectName
- // // ie_cbm1.VBQ28= patientPrescription.Diagnosis
- // // ie_cbm1.VBQ29= ""
- // // ie_cbm1.VBQ30= ""
- // // vBQ1.Ie = append(vBQ1.Ie, ie_cbm1)
- // // }
- // //
- // // }
- // //
- // // }
- // // }
- // //}
- //
- // root.VAO1 = vAO1
- // root.VBQ1 = vBQ1
- //
- // xmlStr2, err := xml.MarshalIndent(root, "", " ")
- // if err != nil {
- // fmt.Println("转换为XML时发生错误:", err)
- // return
- // }
- // data := make(map[string]interface{})
- // data["xmlStr"] = string(xmlStr2)
- // bytesData, _ := json.Marshal(data)
- // var req *http.Request
- // client := &http.Client{}
- // fmt.Println(string(xmlStr2))
- // saveLog("", string(xmlStr2), "1111", "上传明细xml", "")
- //
- // req, _ = http.NewRequest("POST", "http://127.0.0.1:9532/"+"nmg/coordinate/upload", bytes.NewBufferString(string(bytesData)))
- // resp, _ := client.Do(req)
- // defer resp.Body.Close()
- // body, ioErr := ioutil.ReadAll(resp.Body)
- // if ioErr != nil {
- // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // return
- // }
- // var respJSON map[string]interface{}
- // if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
- // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // return
- // }
- //
- // respJSON3 := respJSON["data"].(map[string]interface{})["msg"].(string)
- // respJSON4 := respJSON["data"].(map[string]interface{})["res"].(string)
- //
- // if respJSON3 == "成功" {
- //
- // //if li.Acf01 != 1{
- // // //记账
- // // result2, request2 := service.NMGSettleForCoordinate(info)
- // // saveLog(result2, request2, "记账", "记账", org.OrgName)
- // //
- // //
- // // //data := make(map[string]interface{})
- // // //data["info"] = &info
- // // //
- // // //fmt.Println(data)
- // // //
- // // //bytesData, _ := json.Marshal(data)
- // // //var req *http.Request
- // // //
- // // //client := &http.Client{}
- // // //
- // // //req, _ = http.NewRequest("POST", "http://192.168.100.199:9532/"+"nmg/coordinate/settle", bytes.NewReader(bytesData))
- // // //resp, _ := client.Do(req)
- // // //defer resp.Body.Close()
- // // //body, ioErr := ioutil.ReadAll(resp.Body)
- // // //if ioErr != nil {
- // // // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
- // // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // // // return
- // // //}
- // // //var respJSON map[string]interface{}
- // // //if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
- // // // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
- // // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // // // return
- // // //}
- // // //
- // // //respJSON = respJSON["data"].(map[string]interface{})["res"].(map[string]interface{})
- // // //userJSONBytes, _ := json.Marshal(respJSON)
- // // //
- // // //var res2 ResultUpload2
- // // //if err := json.Unmarshal(userJSONBytes, &res2); err != nil {
- // // // utils.ErrorLog("解析失败:%v", err)
- // // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // // // return
- // // //}
- // // //if res2.Code == 500{
- // // // c.ServeSuccessJSON(map[string]interface{}{
- // // // "failed_code": -10,
- // // // "msg": res2.Msg,
- // // // })
- // // // return
- // // //}
- // //}
- // if len(zuobiao_ids) == 0 {
- // zuobiao_ids = respJSON4
- // } else {
- // zuobiao_ids = zuobiao_ids + "," + respJSON4
- // }
- //
- // idss = append(idss, ids...)
- //
- // continue
- //
- // } else {
- // err_msg = respJSON3
- // is_upload_success = false
- // if len(zuobiao_ids) > 0 {
- // tm := time.Unix(time.Now().Unix(), 0)
- // order := &models.HisOrder{
- // PsnNo: strconv.FormatInt(int64(li.Vaa01), 10),
- // UserOrgId: org_id,
- // PatientId: patient_id,
- // SettleAccountsDate: recordDateTime,
- // Ctime: time.Now().Unix(),
- // Mtime: time.Now().Unix(),
- // Status: 1,
- // OrderStatus: 1,
- // MdtrtId: strconv.FormatInt(int64(li.Vaa07), 10),
- // Number: zuobiao_ids,
- // SetlId: zuobiao_ids,
- // MedfeeSumamt: total,
- // MedType: strconv.Itoa(int(reg_type)),
- // SettleType: settle_accounts_type,
- // Diagnosis: diagnosis_id,
- // PType: int64(li.Acf01),
- // SetlTime: tm.Format("2006-01-02 15:04:05"),
- // SettleStartTime: prescriptions[start-1 : stop][0].RecordDate,
- // SettleEndTime: prescriptions[start-1 : stop][len(prescriptions[start-1:stop])-1].RecordDate,
- // }
- // err = service.CreateOrder(order)
- // if err != nil {
- // //c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeCreateOrderException)
- // return
- // }
- // fmt.Println(idss)
- // err = service.UpDatePrescriptionNumber(org_id, idss, zuobiao_ids)
- // //err = service.UpDateHisPrescriptionInfoNumbertwo(org_id, patient_id, strconv.FormatInt(int64(li.Vaa07), 10), recordDateTime, his.ID)
- // err = service.UpdataOrderStatusThreef(zuobiao_ids, org_id)
- //
- // var zuobiao_advice models.HisZuobiaoAdvice
- // zuobiao_advice.Status = 1
- // zuobiao_advice.RecordDate = recordDateTime
- // zuobiao_advice.PatientId = patient_id
- // zuobiao_advice.Cbm01 = zuobiao_ids
- // zuobiao_advice.Ctime = time.Now().Unix()
- // zuobiao_advice.Mtime = time.Now().Unix()
- // zuobiao_advice.Oid = order.ID
- // zuobiao_advice.StartTime = recordStartTime
- // zuobiao_advice.EndTime = recordEndTime
- // zuobiao_advice.Vaa01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // zuobiao_advice.Vaa07 = strconv.FormatInt(int64(li.Vaa07), 10)
- // zuobiao_advice.UserOrgId = c.GetAdminUserInfo().CurrentOrgId
- // service.Createzuobiao(&zuobiao_advice)
- // }
- // }
- // if is_upload_success == false {
- // if len(zuobiao_ids) > 0 {
- // c.ServeSuccessJSON(map[string]interface{}{
- // "failed_code": -10,
- // "msg": "部分处方数据上传成功,可在已上传或者在坐标系统查看。其余上传失败原因: " + err_msg,
- // })
- // return
- //
- // } else {
- // c.ServeSuccessJSON(map[string]interface{}{
- // "failed_code": -10,
- // "msg": err_msg,
- // })
- // return
- //
- // }
- //
- // }
- // }
- //
- // if is_upload_success {
- // if len(zuobiao_ids) > 0 {
- // tm := time.Unix(time.Now().Unix(), 0)
- // order := &models.HisOrder{
- // PsnNo: strconv.FormatInt(int64(li.Vaa01), 10),
- // UserOrgId: org_id,
- // PatientId: patient_id,
- // SettleAccountsDate: recordDateTime,
- // Ctime: time.Now().Unix(),
- // Mtime: time.Now().Unix(),
- // Status: 1,
- // OrderStatus: 1,
- // MdtrtId: strconv.FormatInt(int64(li.Vaa07), 10),
- // Number: zuobiao_ids,
- // SetlId: zuobiao_ids,
- // MedfeeSumamt: total,
- // MedType: strconv.Itoa(int(reg_type)),
- // SettleType: settle_accounts_type,
- // Diagnosis: diagnosis_id,
- // PType: int64(li.Acf01),
- // SetlTime: tm.Format("2006-01-02 15:04:05"),
- // SettleStartTime: prescriptions[start-1 : stop][0].RecordDate,
- // SettleEndTime: prescriptions[start-1 : stop][len(prescriptions[start-1:stop])-1].RecordDate,
- // }
- // err = service.CreateOrder(order)
- // if err != nil {
- // //c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeCreateOrderException)
- // return
- // }
- // err = service.UpDatePrescriptionNumber(org_id, idss, zuobiao_ids)
- // //err = service.UpDateHisPrescriptionInfoNumbertwo(org_id, patient_id, strconv.FormatInt(int64(li.Vaa07), 10), recordDateTime, his.ID)
- // err = service.UpdataOrderStatusThreef(zuobiao_ids, org_id)
- //
- // var zuobiao_advice models.HisZuobiaoAdvice
- // zuobiao_advice.Status = 1
- // zuobiao_advice.RecordDate = recordDateTime
- // zuobiao_advice.PatientId = patient_id
- // zuobiao_advice.Cbm01 = zuobiao_ids
- // zuobiao_advice.Ctime = time.Now().Unix()
- // zuobiao_advice.Mtime = time.Now().Unix()
- // zuobiao_advice.Oid = order.ID
- // zuobiao_advice.StartTime = recordStartTime
- // zuobiao_advice.EndTime = recordEndTime
- // zuobiao_advice.Vaa01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // zuobiao_advice.Vaa07 = strconv.FormatInt(int64(li.Vaa07), 10)
- // zuobiao_advice.UserOrgId = c.GetAdminUserInfo().CurrentOrgId
- // service.Createzuobiao(&zuobiao_advice)
- // }
- //
- // c.ServeSuccessJSON(map[string]interface{}{
- // "msg": "上传成功",
- // })
- //
- // } else {
- // c.ServeSuccessJSON(map[string]interface{}{
- // "failed_code": -10,
- // "msg": err_msg,
- // })
- //
- // }
- //
- // //zuobiao, _ := service.Getzuobiao(c.GetAdminUserInfo().CurrentOrgId, patient_id, recordDateTime)
- //
- // //is_success := true
- // //failed_mag := ""
- // //查询出对应的坐标系统医嘱id,先进行删除操作,在创建医嘱。如果没有医嘱id,则直接创建医嘱
- // //if zuobiao.ID > 0 {
- // // cbm01s := strings.Split(zuobiao.Cbm01, ",")
- // // fmt.Println(cbm01s)
- // //
- // // for _, iditem := range cbm01s {
- // // fmt.Println(iditem)
- // // var root2 models.Root2
- // // var tradeInfo2 models.TradeInfo
- // // if li.Acf01 == 1 {
- // // tradeInfo2.PatSource = 1
- // // tradeInfo2.Type = 0
- // // } else {
- // // tradeInfo2.PatSource = 2
- // // tradeInfo2.Type = 1
- // //
- // // }
- // // tradeInfo2.Detpid = departmwnt.Number
- // // tradeInfo2.Empid = doctor_info.DoctorNumber
- // // tradeInfo2.Empno = doctor_info.DoctorCode
- // // tradeInfo2.Empname = doctor_info.UserName
- // // var vaf01 models.VAF10
- // // var ie1111 models.IEfive
- // // ie1111.VAF01 = iditem
- // // vaf01.Ie = append(vaf01.Ie, ie1111)
- // // root2.TradeInfo = tradeInfo2
- // // root2.VAF1 = vaf01
- // // xmlStr2, err := xml.MarshalIndent(root2, "", " ")
- // // if err != nil {
- // // fmt.Println("转换为XML时发生错误:", err)
- // // return
- // // }
- // // data := make(map[string]interface{})
- // // data["xmlStr"] = string(xmlStr2)
- // // bytesData, _ := json.Marshal(data)
- // // client := &http.Client{}
- // //
- // // var req *http.Request
- // //
- // //
- // // req, _ = http.NewRequest("POST", "http://192.168.100.199:9532/"+"nmg/coordinate/del", bytes.NewReader(bytesData))
- // // resp, _ := client.Do(req)
- // // defer resp.Body.Close()
- // // body, ioErr := ioutil.ReadAll(resp.Body)
- // // if ioErr != nil {
- // // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
- // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // // return
- // // }
- // // var respJSON map[string]interface{}
- // // if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
- // // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
- // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // // return
- // // }
- // //
- // // respJSON2 := respJSON["data"].(map[string]interface{})["msg"].(string)
- // // fmt.Println( respJSON)
- // // fmt.Println( respJSON["data"].(map[string]interface{}))
- // // fmt.Println(respJSON2)
- // //
- // // if respJSON2 != "成功"{
- // // //is_success = false
- // // failed_mag = respJSON2
- // // }
- // // }
- // //}
- //
- // } else {
- //
- // c.ServeSuccessJSON(map[string]interface{}{
- // "failed_code": -10,
- // "msg": res.Msg,
- // })
- // }
- //}
-
- func classifyPrescriptions(prescriptions []models.HisPrescription) (drugPrescriptions, consumablePrescriptions []models.HisPrescription) {
- for _, prescription := range prescriptions {
- switch prescription.Type {
- case 1:
- drugPrescriptions = append(drugPrescriptions, prescription)
- case 2:
- consumablePrescriptions = append(consumablePrescriptions, prescription)
- }
- }
- return drugPrescriptions, consumablePrescriptions
- }
-
-
- func summarizePrescriptions(prescriptions []models.HisPrescription) []models.HisDoctorAdviceInfo {
- ungroupedDrugs := make([]models.HisDoctorAdviceInfo, 0)
-
- groupedPrescriptions := make([]models.HisPrescription, 0)
-
- for _, prescription := range prescriptions {
- groupedDrugsInPrescription, ungroupedDrugsInPrescription := splitDrugsByGroup(prescription.HisDoctorAdviceInfo)
-
-
- // 将没有同组药的药品汇总到一张处方
- ungroupedDrugs = append(ungroupedDrugs, ungroupedDrugsInPrescription...)
-
-
- //将有同组药的每组药品拆分成一张处方
- for _, group := range groupedDrugsInPrescription {
- fmt.Println("333333")
-
- fmt.Println(group)
-
-
- groupedPrescriptions = append(groupedPrescriptions, models.HisPrescription{
- HisDoctorAdviceInfo: group,
- })
- }
- }
-
-
-
- return ungroupedDrugs
- }
-
-
- func summarizePrescriptionsTwo(prescriptions []models.HisPrescription) []models.HisPrescription {
- //ungroupedDrugs := make([]models.HisDoctorAdviceInfo, 0)
-
- groupedPrescriptions := make([]models.HisPrescription, 0)
-
- for _, prescription := range prescriptions {
- groupedDrugsInPrescription, _ := splitDrugsByGroup(prescription.HisDoctorAdviceInfo)
- //fmt.Println("111111")
-
- //fmt.Println(len(ungroupedDrugsInPrescription))
- //fmt.Println(len(groupedDrugsInPrescription))
-
-
- // 将没有同组药的药品汇总到一张处方
- //ungroupedDrugs = append(ungroupedDrugs, ungroupedDrugsInPrescription...)
-
-
- //将有同组药的每组药品拆分成一张处方
- for _, group := range groupedDrugsInPrescription {
-
-
- groupedPrescriptions = append(groupedPrescriptions, models.HisPrescription{
- HisDoctorAdviceInfo: group,
- })
- }
- }
-
- return groupedPrescriptions
- }
-
-
- func splitDrugsByGroup(drugs []models.HisDoctorAdviceInfo) (groupedDrugs [][]models.HisDoctorAdviceInfo, ungroupedDrugs []models.HisDoctorAdviceInfo) {
- groups := make(map[int64][]models.HisDoctorAdviceInfo)
- // 将药品按照组号分组
- for _, drug := range drugs {
- groups[drug.Groupno] = append(groups[drug.Groupno], drug)
- }
- // 遍历分组,将同组药和没有同组药的分开
- for _, group := range groups {
- if len(group) > 1 {
- // 同组药
- groupedDrugs = append(groupedDrugs, group)
- } else {
- // 没有同组药
- ungroupedDrugs = append(ungroupedDrugs, group...)
- }
- }
-
- return groupedDrugs, ungroupedDrugs
- }
-
- //上传费用
- func (c *CoordinateController) NMGSettleAccount() {
- patient_id, _ := c.GetInt64("patient_id")
- record_date := c.GetString("record_date")
- //admin_user_id, _ := c.GetInt64("admin_user_id")
- diagnosis_id := c.GetString("diagnosis")
- sick_type, _ := c.GetInt64("sick_type")
- reg_type, _ := c.GetInt64("p_type")
- org_id, _ := c.GetInt64("org_id")
- p_id, _ := c.GetInt64("p_id")
- charge_type, _ := c.GetInt64("charge_type")
-
- org_id = 10206
- org, _ := service.GetOrgById(org_id)
- patient, _ := service.GetPatientByID(org.Id, patient_id)
- settle_accounts_type, _ := c.GetInt64("settle_accounts_type")
- var res8 Data
- var li ListItem
-
- if charge_type == 1{
-
- res8 = NMGmenzhen(c, patient.Name)
- var res9 Data
- var res11 Data
-
- res9.List = append(res9.List, res8.List...)
- // 获取当前时间
- //var maxTimestamp int64
-
- // 定义一个变量来保存离当前时间最近的数据
- //var closestData MyData
- //var closestTimeDiff time.Duration
-
- // 遍历切片,找到离当前时间最近的数据
- //for _, data := range res9.List {
- // // 将时间字符串解析为 time.Time 类型
- // timeObj, err := time.Parse("2006-01-02 15:04:05", data.Vae11)
- // if err != nil {
- // fmt.Println("时间解析错误:", err)
- // continue
- // }
- // // 获取时间戳
- // timestamp := timeObj.Unix()
- // // 比较时间戳
- // if timestamp > maxTimestamp {
- // maxTimestamp = timestamp
- // }
- //}
- //
- //fmt.Println(maxTimestamp)
-
- for _,item := range res9.List{
- if item.Bck01B == 38{
- res11.List = append(res11.List,item)
- }
-
- }
-
- sort.Slice(res11.List, func(i, j int) bool {
- // 将时间字符串解析为 time.Time 类型
- timeObj1, err1 := time.Parse("2006-01-02 15:04:05", res11.List[i].Vae11)
- timeObj2, err2 := time.Parse("2006-01-02 15:04:05", res11.List[j].Vae11)
-
- // 错误处理
- if err1 != nil || err2 != nil {
- fmt.Println("时间解析错误:", err1, err2)
- return false
- }
-
- // 比较时间
- return timeObj1.Before(timeObj2)
- })
- fmt.Println("按照时间排序qian的数据:", res11.List)
-
-
- cure_date := strings.Split(res11.List[len(res11.List)-1].Vae11, " ")
-
- // 将日期字符串解析为 time.Time 类型
- date1, err := time.Parse("2006-01-02", cure_date[0])
- if err != nil {
- fmt.Println("日期解析错误:", err)
- return
- }
- currentTime := time.Now()
-
- // 使用 Format 方法格式化输出为 yyyy-mm-dd
- formattedDate := currentTime.Format("2006-01-02")
-
-
- date2, err := time.Parse("2006-01-02", formattedDate)
- if err != nil {
- fmt.Println("日期解析错误:", err)
- return
- }
- duration := date2.Sub(date1)
- fmt.Println("cha:", duration)
-
-
-
- if duration.Hours() < 72 && patient.Name == res11.List[len(res11.List)-1].Vaa05 {
- li = res11.List[len(res11.List)-1]
- }
-
- }else{
-
- res8 = NMGzhuyuan(c, patient.Name)
- var res10 Data
- //res9.List = append(res9.List, res.List...)
- res10.List = append(res10.List, res8.List...)
- layout := "2006-01-02 15:04:05"
- var maxDate time.Time
- for _, item := range res10.List {
- currentDate, err := time.Parse(layout, item.Vae11)
- if err != nil {
- fmt.Println("Error parsing date:", err)
- continue
- }
- if currentDate.After(maxDate) {
- maxDate = currentDate
- }
- if !maxDate.IsZero() {
- fmt.Println("The maximum date is:", maxDate.Format(layout))
- } else {
- fmt.Println("No valid dates found")
- }
- }
- fmt.Println(maxDate.Format("2006-01-02 15:04:05"))
- for _, item := range res10.List {
- if item.Vae11 == maxDate.Format("2006-01-02 15:04:05") && patient.Name == item.Vaa05 {
- li = item
- }
- }
-
- }
-
-
- if res8.Code == 200 {
-
- timeLayout := "2006-01-02"
- loc, _ := time.LoadLocation("Local")
- theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_date+" 00:00:00", loc)
- if err != nil {
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
- return
- }
- org_id := org.Id
- recordDateTime := theTime.Unix()
- patientPrescription, _ := service.FindPatientPrescriptionInfoTwo(org_id, patient.ID, recordDateTime, 2)
- if patientPrescription.ID == 0 {
- patientPrescription, _ = service.FindLastPatientPrescriptionInfo(org_id, patient.ID, recordDateTime)
- }
- departmwnt, _ := service.GetDepartMentDetail(patientPrescription.Departments)
- //admin_user_info, _ := service.GetAdminUserInfoByID(org_id, admin_user_id)
- doctor_info, _ := service.GetAdminUserInfoByID(org_id, patientPrescription.DoctorId)
-
- var recordStartTime int64
- var recordEndTime int64
-
- var prescriptions []models.HisPrescription
- if settle_accounts_type == 1 { //日结
- prescriptions, _ = service.GetUnSettleHisPrescriptionFiveone(p_id)
-
- var total float64
- var customs []*models.NewCustomTwo
- for _, item := range prescriptions {
- if item.Type == 1 { //药品
- for _, subItem := range item.HisDoctorAdviceInfo {
- tempTime := time.Unix(item.PreTime, 0)
- //timeFormat := tempTime.Format("20060102150405")
- timeFormatOne := tempTime.Format("2006-01-02 15:04:05")
- cus := &models.NewCustomTwo{
- AdviceId: subItem.ID,
- ProjectId: 0,
- DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*subItem.PrescribingNumber),
- Cut: fmt.Sprintf("%.4f", subItem.PrescribingNumber),
- FeedetlSn: subItem.FeedetlSn,
- Price: fmt.Sprintf("%.2f", subItem.Price),
- MedListCodg: subItem.BaseDrugLib.MedicalInsuranceNumber,
- Type: 1,
- ItemId: subItem.BaseDrugLib.ZuobiaoId,
- StartTime: timeFormatOne,
- Content: subItem.AdviceName,
- Bby01: subItem.BaseDrugLib.Bby01,
- }
- customs = append(customs, cus)
- }
- }
- if item.Type == 2 { //项目
- for _, subItem := range item.HisPrescriptionProject {
- if subItem.Type == 2 {
- tempTime := time.Unix(item.PreTime, 0)
- //timeFormat := tempTime.Format("20060102150405")
- timeFormatOne := tempTime.Format("2006-01-02 15:04:05")
- cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- cus := &models.NewCustomTwo{
- AdviceId: 0,
- ProjectId: subItem.ID,
- DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*cnt),
- Cut: fmt.Sprintf("%.4f", cnt),
- FeedetlSn: subItem.FeedetlSn,
- Price: fmt.Sprintf("%.4f", float64(subItem.Price)),
- MedListCodg: subItem.HisProject.MedicalCode,
- Type: 2,
- ItemId: subItem.HisProject.ZuobiaoId,
- StartTime: timeFormatOne,
- Content: subItem.HisProject.ProjectName,
- Bby01: subItem.HisProject.Bby01,
- }
- customs = append(customs, cus)
-
- } else {
- tempTime := time.Unix(item.PreTime, 0)
- //timeFormat := tempTime.Format("20060102150405")
- timeFormatOne := tempTime.Format("2006-01-02 15:04:05")
- cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- cus := &models.NewCustomTwo{
- AdviceId: 0,
- ProjectId: subItem.ID,
- DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*cnt),
- Cut: fmt.Sprintf("%.4f", cnt),
- FeedetlSn: subItem.FeedetlSn,
- Price: fmt.Sprintf("%.4f", float64(subItem.Price)),
- MedListCodg: subItem.GoodInfo.MedicalInsuranceNumber,
- Type: 3,
- ItemId: subItem.GoodInfo.ZuobiaoId,
- StartTime: timeFormatOne,
- Content: subItem.GoodInfo.GoodName,
- Bby01: subItem.GoodInfo.Bby01,
- }
- customs = append(customs, cus)
- }
-
- }
- }
- }
-
- for _, item := range prescriptions {
- if item.Type == 1 { //药品
- for _, subItem := range item.HisDoctorAdviceInfo {
- price, _ := strconv.ParseFloat(fmt.Sprintf("%.2f", subItem.Price), 64)
- total_one := price * subItem.PrescribingNumber
- fmt.Println("subItem")
- fmt.Println(subItem.Price)
- fmt.Println("price")
- fmt.Println(price)
- fmt.Println("total_one")
- fmt.Println(total_one)
- total = total + total_one
- fmt.Println(total)
-
- }
- }
- if item.Type == 2 { //项目
-
- for _, subItem := range item.HisPrescriptionProject {
- cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- price, _ := strconv.ParseFloat(fmt.Sprintf("%.2f", subItem.Price), 64)
- total_one := price * cnt
- total = total + total_one
- }
- }
- }
-
- //allTotal := fmt.Sprintf("%2f", total)
-
- var info models.UploadInfo
- info.Acf01 = int64(li.Acf01)
- info.Bce01 = "132"
- info.Bck01 = "48"
- info.Vaa07 = int64(li.Vaa07)
- info.Vaa01 = int64(li.Vaa01)
- info.Vaa05 = li.Vaa05
- info.Bce01a = doctor_info.DoctorNumber
-
- for _, item := range customs {
- var cha models.ChargeListtwo
- cnt, _ := strconv.ParseFloat(item.Cut, 64)
-
- Bby01, _ := strconv.ParseInt(item.Bby01, 10, 64)
-
- cha.Bby01 = Bby01
- cha.Vaj25 = cnt
- info.ChargeListtwo = append(info.ChargeListtwo, &cha)
- }
-
- //日结处方进行拆分处理
-
- var big_ps []models.HisPrescription
- drugPrescriptions, consumablePrescriptions := classifyPrescriptions(prescriptions)
-
- groupDrugPrescriptions := summarizePrescriptionsTwo(drugPrescriptions)
- //非没同组药品,汇总处理
- var doc_two []models.HisDoctorAdviceInfo
- var doc []models.HisDoctorAdviceInfo
- doc = summarizePrescriptions(drugPrescriptions)
-
- fmt.Println(groupDrugPrescriptions)
- fmt.Println(doc)
- fmt.Println(consumablePrescriptions)
-
-
-
- var no_group_drug_ps models.HisPrescription
- no_group_drug_ps.MedType = "110"
- no_group_drug_ps.ID = int64(rand.Intn(90000) + 10000)
- no_group_drug_ps.Type = 1
- for _ ,sumitem := range doc{
- rand.Seed(time.Now().UnixNano())
- // 生成4位随机数
- randomNumber := rand.Intn(9000) + 1000
- sumitem.Groupno = sumitem.Groupno + int64(randomNumber)
- //doc = append(doc, sumitem.HisDoctorAdviceInfo...)
- }
-
- doc_two = RemoveRepeatedPurviewElementdrug(doc)
- var dos []models.HisDoctorAdviceInfo
- for _, pro := range doc_two {
- var ppp models.HisDoctorAdviceInfo
- var count float64
- var drugWayCount float64
- for _, pro_two := range doc {
- if pro.BaseDrugLib.ZuobiaoId == pro_two.BaseDrugLib.ZuobiaoId && pro.BaseDrugLib.Bby01 == pro_two.BaseDrugLib.Bby01 && pro.DeliveryWay == pro_two.DeliveryWay {
- ppp = pro_two
-
- count = count + pro_two.PrescribingNumber
-
- if len(pro_two.DrugWayCount) == 0{
- pro_two.DrugWayCount = "1"
- }
- result, _ := strconv.ParseFloat(pro_two.DrugWayCount, 64)
- drugWayCount = drugWayCount + result
-
-
- }
- }
- ppp.PrescribingNumber = count
- ppp.DrugWayCount = strconv.FormatFloat(drugWayCount, 'f', -1, 64)
- dos = append(dos, ppp)
- }
- if len(dos) > 0 {
- no_group_drug_ps.HisDoctorAdviceInfo = dos
- big_ps = append(big_ps, no_group_drug_ps)
- }
-
-
-
-
-
-
- //同组药品不需要进行汇总
- for _, item := range groupDrugPrescriptions {
- if len(item.HisDoctorAdviceInfo) > 0 {
- var group_drug_ps models.HisPrescription
- group_drug_ps.MedType = "110"
- group_drug_ps.ID = int64(rand.Intn(90000) + 10000)
- group_drug_ps.Type = 1
- group_drug_ps.HisDoctorAdviceInfo = item.HisDoctorAdviceInfo
- big_ps = append(big_ps, group_drug_ps)
- }
- }
-
- //耗材和项目汇总
- var projects []models.HisPrescriptionProject
- var goods []models.HisPrescriptionProject
- var checks []models.HisPrescriptionProject
-
- var projects_two []models.HisPrescriptionProject
- var goods_two []models.HisPrescriptionProject
-
- for _, item := range consumablePrescriptions {
- for _, subitem := range item.HisPrescriptionProject {
- if subitem.Type == 2 {
- if subitem.HisProject.CostClassify == 3{
- checks = append(checks, subitem)
- }else{
- projects = append(projects, subitem)
- }
- } else if subitem.Type == 3 {
- goods = append(goods, subitem)
- }
- }
- }
- projects_two = RemoveRepeatedPurviewElementproject(projects)
- goods_two = RemoveRepeatedPurviewElementgood(goods)
- //checks_two = RemoveRepeatedPurviewElementgood(checks)
-
-
- var new_pros []models.HisPrescriptionProject
- var new_goods []models.HisPrescriptionProject
- var new_checks []models.HisPrescriptionProject
-
- for _, pro := range projects_two {
- var ppp models.HisPrescriptionProject
- var count float64
- for _, pro_two := range projects {
- if pro.HisProject.ZuobiaoId == pro_two.HisProject.ZuobiaoId && pro.HisProject.Bby01 == pro_two.HisProject.Bby01 {
- ppp = pro_two
- result, _ := strconv.ParseFloat(pro_two.Count, 64)
- count = count + result
- }
- }
- ppp.Count = strconv.FormatFloat(count, 'f', -1, 64)
- new_pros = append(new_pros, ppp)
- }
- for _, good := range goods_two {
- var ppp models.HisPrescriptionProject
- var count float64
- for _, good_two := range goods {
- if good.GoodInfo.ZuobiaoId == good_two.GoodInfo.ZuobiaoId && good.GoodInfo.Bby01 == good_two.GoodInfo.Bby01 {
- ppp = good_two
- result, _ := strconv.ParseFloat(good_two.Count, 64)
- count = count + result
- }
- }
- ppp.Count = strconv.FormatFloat(count, 'f', -1, 64)
- new_goods = append(new_goods, ppp)
- }
- for _, check := range checks {
- var ppp models.HisPrescriptionProject
- ppp = check
- ppp.Count = check.Count
- new_checks = append(new_checks, ppp)
- }
-
- if len(new_goods) > 0 {
-
- var ps1 models.HisPrescription
- ps1.MedType = "120"
- ps1.ID = int64(rand.Intn(90000) + 10000)
-
- ps1.Type = 2
- ps1.HisPrescriptionProject = append(ps1.HisPrescriptionProject, new_goods...)
- big_ps = append(big_ps, ps1)
- }
- if len(new_pros) > 0 {
-
- var ps2 models.HisPrescription
- ps2.MedType = "130"
- ps2.Type = 2
- ps2.ID = int64(rand.Intn(90000) + 10000)
-
- ps2.HisPrescriptionProject = append(ps2.HisPrescriptionProject, new_pros...)
- big_ps = append(big_ps, ps2)
- }
-
- if len(new_checks) > 0 {
- var ps3 models.HisPrescription
- ps3.MedType = "140"
- ps3.Type = 2
- ps3.ID = int64(rand.Intn(90000) + 10000)
- ps3.HisPrescriptionProject = append(ps3.HisPrescriptionProject, new_checks...)
- big_ps = append(big_ps, ps3)
- }
-
-
-
-
-
-
- ////信息
- var is_upload_success bool = true
- var curpage int
- var pagesize int = len(big_ps)
- var start int = 1
- var stop int
- var zuobiao_ids string
- var err_msg string
- var idss []int64
-
- //pagecount := 10
- pagecount := int(math.Ceil(float64(len(big_ps)) / float64(pagesize)))
-
- for curpage = 1; curpage <= pagecount; curpage++ {
- var root models.Root
- var tradeInfo models.TradeInfo
- var cBM1 models.CBM1
- var vAF1 models.VAF1
- var vAO1 models.VAO1
- var vBQ1 models.VBQ1
-
- if li.Acf01 == 1 {
- tradeInfo.PatSource = 1
- tradeInfo.Type = 0
- } else {
- tradeInfo.PatSource = 2
- tradeInfo.Type = 1
-
- }
- tradeInfo.Detpid = departmwnt.Number
- tradeInfo.Empid = doctor_info.DoctorNumber
- tradeInfo.Empno = doctor_info.DoctorCode
- tradeInfo.Empname = doctor_info.UserName
- root.TradeInfo = tradeInfo
-
- if curpage == 1 {
- start = 1
- } else {
- start = (curpage-1)*pagesize + 1
- }
- stop = curpage * pagesize
- if stop > len(big_ps) {
- stop = len(big_ps)
- }
-
- //var ids []int64
- //
- //for _, item := range prescriptions[start-1 : stop] {
- // ids = append(ids, item.ID)
- //}
-
- for _, item := range big_ps[start-1 : stop] {
- //departmwnt_two, _ := service.GetDepartMentDetail(item.VMHisPrescriptionInfo.Departments)
- var ie_cbm1 models.IEone
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAA07 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.ACF01 = strconv.FormatInt(int64(li.Acf01), 10)
- //ie_cbm1.CBM06 = strconv.FormatInt(int64(res.List[0].Acf01), 10)
-
- if li.Acf01 == 1 {
- if item.MedType == "140"{
- ie_cbm1.CBM06 = "9"
- }
- if item.MedType == "110"{
- ie_cbm1.CBM06 = "1"
- }
- if item.MedType == "120"{
- ie_cbm1.CBM06 = "1"
- }
- if item.MedType == "130"{
- ie_cbm1.CBM06 = "6"
- }
-
-
- ie_cbm1.BCK01A = "0"
- } else {
- ie_cbm1.CBM06 = "0"
- ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01B), 10) //病区id
- }
-
- if item.MedType == "140"{
- ie_cbm1.CBM07 = "10"
- }
- if item.MedType == "110"{
- ie_cbm1.CBM07 = "1"
- }
- if item.MedType == "120"{
- ie_cbm1.CBM07 = "1"
- }
- if item.MedType == "130"{
- ie_cbm1.CBM07 = "12"
- }
-
- ie_cbm1.BCK01B = strconv.FormatInt(int64(li.Bck01B), 10)
- ie_cbm1.BCK01C = "38"
- ie_cbm1.CBM19 = "0"
- cBM1.Ie = append(cBM1.Ie, ie_cbm1)
- }
- root.CBM1 = cBM1
- ////医嘱
- for _, item := range big_ps[start-1 : stop] {
- //departmwnt_two, _ := service.GetDepartMentDetail(item.VMHisPrescriptionInfo.Departments)
-
- if item.Type == 1 {
- //组号去重
- //temphisDoctorAdviceInfo := RemoveRepeatedPurviewElementdoctoradvice(item.HisDoctorAdviceInfo)
-
- // 使用 map 来存储 groupno 的数量
- //groupCount := make(map[int64]int64)
-
- // 使用 map 来存储 groupno 的数量和最后一条数据的索引
- groupInfo := make(map[int64]struct {
- Count int64
- LastElement int
- })
-
- // 遍历切片,计算 groupno 的数量和最后一条数据的索引
- for i, obj := range item.HisDoctorAdviceInfo {
- info, ok := groupInfo[obj.Groupno]
- if !ok {
- info = struct {
- Count int64
- LastElement int
- }{}
- }
- info.Count++
- info.LastElement = i
- groupInfo[obj.Groupno] = info
- }
-
- // 根据 groupno 的数量设置字段值
- for i, obj := range item.HisDoctorAdviceInfo {
- info := groupInfo[obj.Groupno]
- if info.Count < 2 {
- item.HisDoctorAdviceInfo[i].NewGroupno = strconv.FormatInt(int64(1), 10)
- } else {
- // 对于数量大于等于 2 的,将最后一条数据设置 1,其他设置为随机数
- if i == info.LastElement {
- item.HisDoctorAdviceInfo[i].NewGroupno = strconv.FormatInt(int64(1), 10)
- } else {
- item.HisDoctorAdviceInfo[i].NewGroupno = strconv.FormatInt(obj.ID, 10)
- }
- }
- }
-
- for _, subitem := range item.HisDoctorAdviceInfo {
- var ie_cbm1 models.IEtwo
-
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
-
- ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01B), 10)
- ie_cbm1.ROWNR = subitem.NewGroupno
- ie_cbm1.VAF10 = "1"
- ie_cbm1.VAF11 = "2"
- ie_cbm1.BDA01 = "1" //诊疗类型
- ie_cbm1.BBX01 = subitem.BaseDrugLib.ZuobiaoId
- ie_cbm1.VAF14 = "" //检验样本类型
- ie_cbm1.VAF15 = ""
- ie_cbm1.BBY01 = subitem.BaseDrugLib.Bby01 //药品规格id或材料规格id
-
- if li.Acf01 == 1 {
- ie_cbm1.VAF17 = strconv.FormatInt(int64(subitem.Day), 10)
-
- } else {
- ie_cbm1.VAF17 = "0"
-
- }
-
- ie_cbm1.VAF18 = fmt.Sprintf("%.2f", subitem.SingleDose) //药品规格id或材料规格id
- ie_cbm1.VAF19 = fmt.Sprintf("%.2f", subitem.SingleDose) + " " + subitem.SingleDoseUnit //药品规格id或材料规格id
- ie_cbm1.VAF20 = fmt.Sprintf("%.2f", subitem.SingleDose)
- ie_cbm1.VAF21 = fmt.Sprintf("%.2f", subitem.PrescribingNumber)
-
- ie_cbm1.VAF22 = subitem.AdviceName + " " + subitem.BaseDrugLib.DrugSpec
- ie_cbm1.Crypt = "0"
- ie_cbm1.VAF23 = ""
- ie_cbm1.BCK01B = subitem.BaseDrugLib.Bck01b
- ie_cbm1.VAF26 = subitem.ExecutionFrequency
- ie_cbm1.VAF27 = "1"
- ie_cbm1.VAF28 = "1"
- ie_cbm1.VAF29 = "1"
-
- ie_cbm1.VAF30 = ""
- ie_cbm1.VAF31 = "0"
-
- ie_cbm1.VAF32 = "0" //todo
- ie_cbm1.VAF33 = "0"
- ie_cbm1.VAF34 = "0"
- ie_cbm1.VAF35 = "0"
-
- tempTime1 := time.Unix(subitem.StartTime, 0)
- timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- ie_cbm1.VAF36 = timeFormatOne
- ie_cbm1.VAF37 = "1899-12-30"
- doctor_info, _ := service.GetAdminUserInfoByID(org_id, 4270)
- ie_cbm1.BCK01C = "38"
-
- ie_cbm1.BCE02A = doctor_info.DoctorCode
- ie_cbm1.BCE03A = doctor_info.UserName
- ie_cbm1.BCE03B = ""
-
- ie_cbm1.VAF53 = "-1"
- ie_cbm1.VAF55 = subitem.Remark
- ie_cbm1.BCK01D = "38"
- ie_cbm1.VAF58 = "0"
- ie_cbm1.VAF59 = strconv.FormatInt(int64(subitem.Groupno), 10)
-
- ie_cbm1.VAF60 = ""
- ie_cbm1.VAF61 = "1"
- ie_cbm1.VAF62 = "0"
- ie_cbm1.LSign = "0"
- ie_cbm1.BDA01A = ie_cbm1.BDA01
- ie_cbm1.LRoute = "0"
- ie_cbm1.BCE01A = doctor_info.DoctorNumber
- ie_cbm1.BCE01B = "0"
-
- ie_cbm1.VAF01B = "0"
- ie_cbm1.VCO01 = "0"
- ie_cbm1.BCE01H = "0"
- ie_cbm1.BCE03H = ""
- ie_cbm1.BIW02 = ""
- ie_cbm1.RCurrent = "0"
- ie_cbm1.FCheck = "0"
- ie_cbm1.UnameA = ""
- ie_cbm1.VEH02 = ""
- vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- }
-
- hisDoctorAdviceInfo := RemoveRepeatedPurviewElementdoctoradvice(item.HisDoctorAdviceInfo)
-
- //每种药品下的给药途径
- for _, subitem := range hisDoctorAdviceInfo {
- way, _ := service.GetDrugwayDicByName(subitem.DeliveryWay, c.GetAdminUserInfo().CurrentOrgId)
- var ie_cbm1 models.IEtwo
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01B), 10)
- ie_cbm1.ROWNR = "0"
- ie_cbm1.VAF10 = "1"
- ie_cbm1.VAF11 = "2"
- ie_cbm1.BDA01 = "T" //诊疗类型
- ie_cbm1.BBX01 = way.Code
- ie_cbm1.VAF14 = "" //检验样本类型
- ie_cbm1.VAF15 = "" //检验样本类型
- ie_cbm1.BBY01 = way.Bby01 //药品规格id或材料规格id
- if li.Acf01 == 1 {
- ie_cbm1.VAF17 = strconv.FormatInt(int64(subitem.Day), 10) //药品规格id或材料规格id
- } else {
- ie_cbm1.VAF17 = "0" //药品规格id或材料规格id
- }
-
- ie_cbm1.VAF18 = fmt.Sprintf("%.2f", subitem.SingleDose) //药品规格id或材料规格id
- ie_cbm1.VAF19 = fmt.Sprintf("%.2f", subitem.SingleDose) + " " + subitem.SingleDoseUnit //药品规格id或材料规格id
- ie_cbm1.VAF20 = fmt.Sprintf("%.2f", subitem.SingleDose)
- //ie_cbm1.VAF21 = fmt.Sprintf("%.2f",subitem.PrescribingNumber)
-
- //ie_cbm1.VAF18 = "" //药品规格id或材料规格id
- //ie_cbm1.VAF19 = ""
- //ie_cbm1.VAF20 = ""
- if subitem.DrugWayCount == "" {
- ie_cbm1.VAF21 = "1"
-
- } else {
- ie_cbm1.VAF21 = subitem.DrugWayCount
-
- }
-
- ie_cbm1.VAF22 = way.Name
- ie_cbm1.Crypt = "0"
- ie_cbm1.VAF23 = ""
- ie_cbm1.BCK01B = subitem.BaseDrugLib.Bck01b
- ie_cbm1.VAF26 = subitem.ExecutionFrequency
- ie_cbm1.VAF27 = "1"
- ie_cbm1.VAF28 = "1"
- ie_cbm1.VAF29 = "1"
- ie_cbm1.BCK01C = "38"
-
- ie_cbm1.VAF30 = ""
- ie_cbm1.VAF31 = "0"
-
- ie_cbm1.VAF32 = "1" //todo
- ie_cbm1.VAF33 = "0"
- ie_cbm1.VAF34 = "0"
- ie_cbm1.VAF35 = "0"
-
- tempTime1 := time.Unix(subitem.StartTime, 0)
- timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- ie_cbm1.VAF36 = timeFormatOne
- ie_cbm1.VAF37 = "1899-12-30"
- doctor_info, _ := service.GetAdminUserInfoByID(org_id, 4270)
-
- ie_cbm1.BCE02A = doctor_info.DoctorCode
- ie_cbm1.BCE03A = doctor_info.UserName
- ie_cbm1.BCE03B = ""
-
- ie_cbm1.VAF53 = "-1"
- ie_cbm1.VAF55 = subitem.Remark
- ie_cbm1.BCK01D = "38"
- ie_cbm1.VAF58 = "0"
- //ie_cbm1.VAF59 =strconv.FormatInt(int64(subitem.ID ), 10)
- ie_cbm1.VAF59 = strconv.FormatInt(int64(subitem.Groupno), 10)
-
-
- ie_cbm1.VAF60 = ""
- ie_cbm1.VAF61 = "1"
- ie_cbm1.VAF62 = "0"
- ie_cbm1.LSign = "0"
- ie_cbm1.BDA01A = ie_cbm1.BDA01
- ie_cbm1.LRoute = "0"
- ie_cbm1.BCE01A = doctor_info.DoctorNumber
- ie_cbm1.BCE01B = "0"
-
- ie_cbm1.VAF01B = "0"
- ie_cbm1.VCO01 = "0"
- ie_cbm1.BCE01H = "0"
- ie_cbm1.BCE03H = ""
- ie_cbm1.BIW02 = ""
- ie_cbm1.RCurrent = "0"
- ie_cbm1.FCheck = "0"
- ie_cbm1.UnameA = ""
- ie_cbm1.VEH02 = ""
- ie_cbm1.VAF07 = "0"
- vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- }
-
- } else if item.Type == 2 {
- for index, subitem := range item.HisPrescriptionProject {
- if subitem.Type == 2 {
- if subitem.HisProject.CostClassify != 3 {
- var ie_cbm1 models.IEtwo
-
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
-
- ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01B), 10)
- ie_cbm1.ROWNR = strconv.FormatInt(int64(index+1), 10)
- ie_cbm1.VAF10 = "1"
- ie_cbm1.VAF11 = "2"
- ie_cbm1.BDA01 = "T" //诊疗类型
- ie_cbm1.BBX01 = subitem.HisProject.ZuobiaoId
- ie_cbm1.VAF14 = "" //检验样本类型
- ie_cbm1.VAF15 = "" //检验样本类型
- ie_cbm1.BBY01 = subitem.HisProject.Bby01 //药品规格id或材料规格id
- if li.Acf01 == 1 {
- ie_cbm1.VAF17 = subitem.Day //药品规格id或材料规格id
- if len(subitem.Day) == 0 {
- ie_cbm1.VAF17 = "1"
- }
-
- } else {
- ie_cbm1.VAF17 = "0" //药品规格id或材料规格idn
- }
- if subitem.SingleDose == "" {
-
- subitem.SingleDose = "1"
- }
-
- ie_cbm1.VAF18 = subitem.SingleDose //药品规格id或材料规格id
- ie_cbm1.VAF19 = subitem.SingleDose + " " + subitem.Unit //药品规格id或材料规格id
- ie_cbm1.VAF20 = subitem.SingleDose
- ie_cbm1.VAF21 = subitem.Count
-
- ie_cbm1.VAF22 = subitem.HisProject.ProjectName
- ie_cbm1.Crypt = "0"
- ie_cbm1.VAF23 = ""
- ie_cbm1.BCK01B = subitem.HisProject.Bck01b
- ie_cbm1.VAF26 = subitem.ExecutionFrequency
- ie_cbm1.VAF27 = "1"
- ie_cbm1.VAF28 = "1"
- ie_cbm1.VAF29 = ""
- ie_cbm1.BCK01C = "38"
-
- ie_cbm1.VAF30 = ""
- ie_cbm1.VAF31 = "0"
-
- ie_cbm1.VAF32 = "0" //todo
- ie_cbm1.VAF33 = "0"
- ie_cbm1.VAF34 = "0"
- ie_cbm1.VAF35 = "0"
-
- tempTime1 := time.Unix(subitem.StartTime, 0)
- timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- ie_cbm1.VAF36 = timeFormatOne
- ie_cbm1.VAF37 = "1899-12-30"
- doctor_info, _ := service.GetAdminUserInfoByID(org_id, 4270)
-
- ie_cbm1.BCE02A = doctor_info.DoctorCode
- ie_cbm1.BCE03A = doctor_info.UserName
- ie_cbm1.BCE03B = ""
-
- ie_cbm1.VAF53 = "-1"
- ie_cbm1.VAF55 = subitem.Remark
- ie_cbm1.BCK01D = "38"
- ie_cbm1.VAF58 = "0"
- ie_cbm1.VAF59 = strconv.FormatInt(int64(index+1), 10)
-
- ie_cbm1.VAF60 = ""
- ie_cbm1.VAF61 = "1"
- ie_cbm1.VAF62 = "0"
- ie_cbm1.LSign = "0"
- ie_cbm1.BDA01A = "" //诊疗类型
- ie_cbm1.LRoute = "0"
- ie_cbm1.BCE01A = doctor_info.DoctorNumber
-
- //ie_cbm1.BCE01A = doctor_info.UserName
- ie_cbm1.BCE01B = "0"
-
- ie_cbm1.VAF01B = "0"
- ie_cbm1.VCO01 = "0"
- ie_cbm1.BCE01H = "0"
- ie_cbm1.BCE03H = ""
- ie_cbm1.BIW02 = ""
- ie_cbm1.RCurrent = "0"
- ie_cbm1.FCheck = "0"
- ie_cbm1.UnameA = ""
- ie_cbm1.VAF07 = "0"
-
- ie_cbm1.VEH02 = ""
- vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- }
- if subitem.HisProject.CostClassify == 3 {
- var ie_cbm1 models.IEtwo
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01B), 10)
- ie_cbm1.ROWNR = strconv.FormatInt(int64(index+1), 10)
- ie_cbm1.VAF10 = "1"
- ie_cbm1.VAF11 = "2"
- ie_cbm1.BDA01 = "L" //诊疗类型
- ie_cbm1.BBX01 = subitem.HisProject.ZuobiaoId
- ie_cbm1.VAF14 = subitem.HisProject.Vaf14 //检验样本类型
- ie_cbm1.VAF15 = "" //检验样本类型
- ie_cbm1.BBY01 = subitem.HisProject.Bby01 //药品规格id或材料规格id
- if li.Acf01 == 1 {
- ie_cbm1.VAF17 = subitem.Day //药品规格id或材料规格id
- } else {
- ie_cbm1.VAF17 = "0" //药品规格id或材料规格idn
- }
- if subitem.SingleDose == "" {
-
- subitem.SingleDose = "1"
- }
-
- ie_cbm1.VAF18 = subitem.SingleDose //药品规格id或材料规格id
- ie_cbm1.VAF19 = subitem.SingleDose + " " + subitem.Unit //药品规格id或材料规格id
- ie_cbm1.VAF20 = subitem.SingleDose
- ie_cbm1.VAF21 = subitem.Count
-
- ie_cbm1.VAF22 = subitem.HisProject.ProjectName
- ie_cbm1.Crypt = "0"
- ie_cbm1.VAF23 = ""
- ie_cbm1.BCK01B = subitem.HisProject.Bck01b
- ie_cbm1.VAF26 = subitem.ExecutionFrequency
- ie_cbm1.VAF27 = "1"
- ie_cbm1.VAF28 = "1"
- ie_cbm1.VAF29 = ""
- ie_cbm1.BCK01C = "38"
- ie_cbm1.VAF30 = ""
- ie_cbm1.VAF31 = "0"
- ie_cbm1.VAF32 = "0" //todo
- ie_cbm1.VAF33 = "0"
- ie_cbm1.VAF34 = "0"
- ie_cbm1.VAF35 = "0"
- tempTime1 := time.Unix(subitem.StartTime, 0)
- timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- ie_cbm1.VAF36 = timeFormatOne
- ie_cbm1.VAF37 = "1899-12-30"
- doctor_info, _ := service.GetAdminUserInfoByID(org_id, 4270)
-
- ie_cbm1.BCE02A = doctor_info.DoctorCode
- ie_cbm1.BCE03A = doctor_info.UserName
- ie_cbm1.BCE03B = ""
-
- ie_cbm1.VAF53 = "-1"
- ie_cbm1.VAF55 = subitem.Remark
- ie_cbm1.BCK01D = "38"
- ie_cbm1.VAF58 = "0"
- ie_cbm1.VAF59 = strconv.FormatInt(int64(index+1), 10)
-
- ie_cbm1.VAF60 = ""
- ie_cbm1.VAF61 = "1"
- ie_cbm1.VAF62 = "0"
- ie_cbm1.LSign = "0"
- ie_cbm1.BDA01A = "" //诊疗类型
- ie_cbm1.LRoute = "0"
- ie_cbm1.BCE01A = doctor_info.DoctorNumber
- ie_cbm1.VAF07 = "0"
-
- //ie_cbm1.BCE01A = doctor_info.UserName
- ie_cbm1.BCE01B = "0"
-
- ie_cbm1.VAF01B = "0"
- ie_cbm1.VCO01 = "0"
- ie_cbm1.BCE01H = "0"
- ie_cbm1.BCE03H = ""
- ie_cbm1.BIW02 = ""
- ie_cbm1.RCurrent = "0"
- ie_cbm1.FCheck = "0"
- ie_cbm1.UnameA = ""
- ie_cbm1.VEH02 = ""
- vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- }
-
- } else if subitem.Type == 3 {
- var ie_cbm1 models.IEtwo
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01B), 10)
- ie_cbm1.ROWNR = strconv.FormatInt(int64(index+1), 10)
-
- ie_cbm1.VAF10 = "1"
- ie_cbm1.VAF11 = "2"
- ie_cbm1.BDA01 = "4" //诊疗类型
- ie_cbm1.BBX01 = subitem.GoodInfo.ZuobiaoId
- ie_cbm1.VAF15 = "" //检验样本类型
- ie_cbm1.BBY01 = subitem.GoodInfo.Bby01 //药品规格id或材料规格id
- if li.Acf01 == 1 {
- ie_cbm1.VAF17 = subitem.Day //药品规格id或材料规格id
- if len(subitem.Day) == 0 {
- ie_cbm1.VAF17 = "1"
- }
-
- } else {
- ie_cbm1.VAF17 = "0" //药品规格id或材料规格idn
- }
- if subitem.SingleDose == "" {
-
- subitem.SingleDose = "1"
- }
-
- ie_cbm1.VAF18 = subitem.SingleDose //药品规格id或材料规格id
- ie_cbm1.VAF19 = subitem.SingleDose + " " + subitem.Unit //药品规格id或材料规格id
- ie_cbm1.VAF20 = subitem.SingleDose
- ie_cbm1.VAF21 = subitem.Count
- ie_cbm1.BCK01C = "38"
-
- ie_cbm1.VAF22 = subitem.GoodInfo.GoodName + " " + subitem.GoodInfo.SpecificationName
- ie_cbm1.Crypt = "0"
- ie_cbm1.VAF23 = ""
- ie_cbm1.BCK01B = subitem.GoodInfo.Bck01b
- ie_cbm1.VAF26 = subitem.ExecutionFrequency
- ie_cbm1.VAF27 = "1"
- ie_cbm1.VAF28 = "1"
- ie_cbm1.VAF29 = ""
- ie_cbm1.VAF07 = "0"
- ie_cbm1.VAF14 = "" //检验样本类型
-
- ie_cbm1.VAF30 = ""
- ie_cbm1.VAF31 = "0"
-
- ie_cbm1.VAF32 = "0" //todo
- ie_cbm1.VAF33 = "0"
- ie_cbm1.VAF34 = "0"
- ie_cbm1.VAF35 = "0"
-
- tempTime1 := time.Unix(subitem.StartTime, 0)
- timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- ie_cbm1.VAF36 = timeFormatOne
- ie_cbm1.VAF37 = "1899-12-30"
- doctor_info, _ := service.GetAdminUserInfoByID(org_id, 4270)
-
- ie_cbm1.BCE02A = doctor_info.DoctorCode
- ie_cbm1.BCE03A = doctor_info.UserName
- ie_cbm1.BCE03B = ""
- ie_cbm1.BCK01C = "38"
-
- ie_cbm1.VAF53 = "-1"
- ie_cbm1.VAF55 = subitem.Remark
- ie_cbm1.BCK01D ="38"
- ie_cbm1.VAF58 = "0"
- ie_cbm1.VAF59 = strconv.FormatInt(int64(index+1), 10)
- ie_cbm1.VAF60 = ""
- ie_cbm1.VAF61 = "1"
- ie_cbm1.VAF62 = "0"
- ie_cbm1.LSign = "0"
- ie_cbm1.BDA01A = "" //诊疗类型
- ie_cbm1.LRoute = "0"
- ie_cbm1.BCE01A = doctor_info.DoctorNumber
- ie_cbm1.BCE01B = "0"
- ie_cbm1.VAF01B = "0"
- ie_cbm1.VCO01 = "0"
- ie_cbm1.BCE01H = "0"
- ie_cbm1.BCE03H = ""
- ie_cbm1.BIW02 = ""
- ie_cbm1.RCurrent = "0"
- ie_cbm1.FCheck = "0"
- ie_cbm1.UnameA = ""
- ie_cbm1.VEH02 = ""
- vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- }
- }
- }
-
- }
- root.VAF1 = vAF1
- for index, item := range big_ps[start-1 : stop] {
- sick, _ := service.FindSickById(sick_type)
- item.VMHisPrescriptionInfo.Diagnosis = "716"
- dias := strings.Split(item.VMHisPrescriptionInfo.Diagnosis, ",")
- //service.get
-
- //诊断
- for _, subitem := range dias {
- diagnosisConfig, _ := service.FindDiagnoseByIdtwo(subitem)
- if index == 0 {
- var ie_cbm1 models.IEthree
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- //ie_cbm1.CBMID = strconv.FormatInt(int64(index+1), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAA07 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.ACF01 = strconv.FormatInt(int64(li.Acf01), 10)
- ie_cbm1.VAO06 = strconv.FormatInt(int64(index+1), 10)
- ie_cbm1.VAO07 = "1"
- ie_cbm1.VAO10 = "0"
- ie_cbm1.VAO11 = "1"
- ie_cbm1.BAK01A = sick.ContentCode
- ie_cbm1.CAM01 = diagnosisConfig.ContentCode
- ie_cbm1.VAO15 = diagnosisConfig.ClassName
- ie_cbm1.VAO18 = "0"
- ie_cbm1.VAO22 = "1"
- ie_cbm1.IAA01 = ""
- ie_cbm1.IAD03 = ""
- ie_cbm1.BAK01B = ""
- ie_cbm1.VAO26 = ""
- ie_cbm1.IAD04 = ""
- ie_cbm1.IAD01 = ""
- ie_cbm1.VAO25 = "1"
- ie_cbm1.VAO35 = ""
- vAO1.Ie = append(vAO1.Ie, ie_cbm1)
-
- } else {
- var ie_cbm1 models.IEthree
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAA07 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.ACF01 = strconv.FormatInt(int64(li.Acf01), 10)
- ie_cbm1.VAO06 = strconv.FormatInt(int64(index+1), 10)
- ie_cbm1.VAO07 = "1"
- ie_cbm1.VAO10 = "0"
- ie_cbm1.VAO11 = "1"
- ie_cbm1.BAK01A = sick.ContentCode
- ie_cbm1.CAM01 = diagnosisConfig.ContentCode
- ie_cbm1.VAO15 = diagnosisConfig.ClassName
- ie_cbm1.VAO18 = "0"
- ie_cbm1.VAO22 = "1"
- ie_cbm1.IAA01 = ""
- ie_cbm1.IAD03 = ""
- ie_cbm1.BAK01B = ""
- ie_cbm1.VAO26 = ""
- ie_cbm1.IAD04 = ""
- ie_cbm1.IAD01 = ""
- ie_cbm1.VAO25 = "2"
- ie_cbm1.VAO35 = ""
- vAO1.Ie = append(vAO1.Ie, ie_cbm1)
- }
- }
- }
- ////
- //////检验检查医嘱
- //for _, item := range prescriptions{
- // fmt.Println("6666666666666")
- // if item.Type == 2{
- // for _, subitem := range item.HisPrescriptionProject {
- // if subitem.Type == 2{
- // if subitem.HisProject.CostClassify == 3 {
- // var ie_cbm1 models.IEfour
- // ie_cbm1.VBQ01 = strconv.FormatInt(int64(item.ID), 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAA07 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.ACF01 = strconv.FormatInt(int64(li.Acf01), 10)
- // ie_cbm1.VAP01 = "0"
- // ie_cbm1.VBQ07 = "0"
- // ie_cbm1.BCK01A = departmwnt.Number
- // ie_cbm1.BCK01B= "0"
- // ie_cbm1.BCE03A= ""
- // ie_cbm1.BCE01A= "0"
- // ie_cbm1.VBQ27= subitem.HisProject.ProjectName
- // ie_cbm1.VBQ28= patientPrescription.Diagnosis
- // ie_cbm1.VBQ29= ""
- // ie_cbm1.VBQ30= ""
- // vBQ1.Ie = append(vBQ1.Ie, ie_cbm1)
- // }
- //
- // }
- //
- // }
- // }
- //}
-
- root.VAO1 = vAO1
- root.VBQ1 = vBQ1
-
- xmlStr2, err := xml.MarshalIndent(root, "", " ")
- if err != nil {
- fmt.Println("转换为XML时发生错误:", err)
- return
- }
- data := make(map[string]interface{})
- data["xmlStr"] = string(xmlStr2)
- bytesData, _ := json.Marshal(data)
- var req *http.Request
- client := &http.Client{}
- fmt.Println(string(xmlStr2))
- saveLog("", string(xmlStr2), "1111", "上传明细xml", "")
-
- req, _ = http.NewRequest("POST", "http://127.0.0.1:9532/"+"nmg/coordinate/upload", bytes.NewBufferString(string(bytesData)))
- resp, _ := client.Do(req)
- defer resp.Body.Close()
- body, ioErr := ioutil.ReadAll(resp.Body)
- if ioErr != nil {
- utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- return
- }
- var respJSON map[string]interface{}
- if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
- utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- return
- }
-
- respJSON3 := respJSON["data"].(map[string]interface{})["msg"].(string)
- respJSON4 := respJSON["data"].(map[string]interface{})["res"].(string)
-
- if respJSON3 == "成功" {
-
- //if li.Acf01 != 1{
- // //记账
- // result2, request2 := service.NMGSettleForCoordinate(info)
- // saveLog(result2, request2, "记账", "记账", org.OrgName)
- //
- //
- // //data := make(map[string]interface{})
- // //data["info"] = &info
- // //
- // //fmt.Println(data)
- // //
- // //bytesData, _ := json.Marshal(data)
- // //var req *http.Request
- // //
- // //client := &http.Client{}
- // //
- // //req, _ = http.NewRequest("POST", "http://192.168.100.199:9532/"+"nmg/coordinate/settle", bytes.NewReader(bytesData))
- // //resp, _ := client.Do(req)
- // //defer resp.Body.Close()
- // //body, ioErr := ioutil.ReadAll(resp.Body)
- // //if ioErr != nil {
- // // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
- // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // // return
- // //}
- // //var respJSON map[string]interface{}
- // //if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
- // // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
- // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // // return
- // //}
- // //
- // //respJSON = respJSON["data"].(map[string]interface{})["res"].(map[string]interface{})
- // //userJSONBytes, _ := json.Marshal(respJSON)
- // //
- // //var res2 ResultUpload2
- // //if err := json.Unmarshal(userJSONBytes, &res2); err != nil {
- // // utils.ErrorLog("解析失败:%v", err)
- // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // // return
- // //}
- // //if res2.Code == 500{
- // // c.ServeSuccessJSON(map[string]interface{}{
- // // "failed_code": -10,
- // // "msg": res2.Msg,
- // // })
- // // return
- // //}
- //}
- if len(zuobiao_ids) == 0 {
- zuobiao_ids = respJSON4
- } else {
- zuobiao_ids = zuobiao_ids + "," + respJSON4
- }
-
-
-
- continue
-
- } else {
- err_msg = respJSON3
- is_upload_success = false
- if len(zuobiao_ids) > 0 {
- tm := time.Unix(time.Now().Unix(), 0)
- order := &models.HisOrder{
- PsnNo: strconv.FormatInt(int64(li.Vaa01), 10),
- UserOrgId: org_id,
- PatientId: patient_id,
- SettleAccountsDate: recordDateTime,
- Ctime: time.Now().Unix(),
- Mtime: time.Now().Unix(),
- Status: 1,
- OrderStatus: 1,
- MdtrtId: strconv.FormatInt(int64(li.Vaa07), 10),
- Number: zuobiao_ids,
- SetlId: zuobiao_ids,
- MedfeeSumamt: total,
- MedType: strconv.Itoa(int(reg_type)),
- SettleType: settle_accounts_type,
- Diagnosis: diagnosis_id,
- PType: int64(li.Acf01),
- SetlTime: tm.Format("2006-01-02 15:04:05"),
- SettleStartTime: recordStartTime,
- SettleEndTime: recordEndTime,
- }
- err = service.CreateOrder(order)
- if err != nil {
- //c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeCreateOrderException)
- return
- }
- fmt.Println(idss)
- if settle_accounts_type == 1{
-
- err = service.UpDatePrescriptionNumber222(org_id, p_id, zuobiao_ids,patient_id)
-
- }else{
- err = service.UpDatePrescriptionNumber111(org_id, recordStartTime,recordEndTime, zuobiao_ids,patient_id)
-
- }
- //err = service.UpDateHisPrescriptionInfoNumbertwo(org_id, patient_id, strconv.FormatInt(int64(li.Vaa07), 10), recordDateTime, his.ID)
- err = service.UpdataOrderStatusThreef(zuobiao_ids, org_id)
-
- var zuobiao_advice models.HisZuobiaoAdvice
- zuobiao_advice.Status = 1
- zuobiao_advice.RecordDate = recordDateTime
- zuobiao_advice.PatientId = patient_id
- zuobiao_advice.Cbm01 = zuobiao_ids
- zuobiao_advice.Ctime = time.Now().Unix()
- zuobiao_advice.Mtime = time.Now().Unix()
- zuobiao_advice.Oid = order.ID
- zuobiao_advice.StartTime = recordStartTime
- zuobiao_advice.EndTime = recordEndTime
- zuobiao_advice.Vaa01 = strconv.FormatInt(int64(li.Vaa01), 10)
- zuobiao_advice.Vaa07 = strconv.FormatInt(int64(li.Vaa07), 10)
- zuobiao_advice.UserOrgId = c.GetAdminUserInfo().CurrentOrgId
- service.Createzuobiao(&zuobiao_advice)
- }
- }
- if is_upload_success == false {
- if len(zuobiao_ids) > 0 {
- c.ServeSuccessJSON(map[string]interface{}{
- "failed_code": -10,
- "msg": "部分处方数据上传成功,可在已上传或者在坐标系统查看。其余上传失败原因: " + err_msg,
- })
- return
-
- } else {
- c.ServeSuccessJSON(map[string]interface{}{
- "failed_code": -10,
- "msg": err_msg,
- })
- return
-
- }
-
- }
- }
-
- if is_upload_success {
- if len(zuobiao_ids) > 0 {
- tm := time.Unix(time.Now().Unix(), 0)
- order := &models.HisOrder{
- PsnNo: strconv.FormatInt(int64(li.Vaa01), 10),
- UserOrgId: org_id,
- PatientId: patient_id,
- SettleAccountsDate: recordDateTime,
- Ctime: time.Now().Unix(),
- Mtime: time.Now().Unix(),
- Status: 1,
- OrderStatus: 1,
- MdtrtId: strconv.FormatInt(int64(li.Vaa07), 10),
- Number: zuobiao_ids,
- SetlId: zuobiao_ids,
- MedfeeSumamt: total,
- MedType: strconv.Itoa(int(reg_type)),
- SettleType: settle_accounts_type,
- Diagnosis: diagnosis_id,
- PType: int64(li.Acf01),
- SetlTime: tm.Format("2006-01-02 15:04:05"),
- SettleStartTime: recordStartTime,
- SettleEndTime: recordEndTime,
- }
- err = service.CreateOrder(order)
- if err != nil {
- //c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeCreateOrderException)
- return
- }
- err = service.UpDatePrescriptionNumber222(org_id, p_id, zuobiao_ids,patient_id)
-
- //err = service.UpDatePrescriptionNumber111(org_id, recordStartTime,recordEndTime, zuobiao_ids,patient_id)
- //err = service.UpDateHisPrescriptionInfoNumbertwo(org_id, patient_id, strconv.FormatInt(int64(li.Vaa07), 10), recordDateTime, his.ID)
- err = service.UpdataOrderStatusThreef(zuobiao_ids, org_id)
- //err = service.UpdataOrderStatusThreef(zuobiao_ids, org_id)
-
- var zuobiao_advice models.HisZuobiaoAdvice
- zuobiao_advice.Status = 1
- zuobiao_advice.RecordDate = recordDateTime
- zuobiao_advice.PatientId = patient_id
- zuobiao_advice.Cbm01 = zuobiao_ids
- zuobiao_advice.Ctime = time.Now().Unix()
- zuobiao_advice.Mtime = time.Now().Unix()
- zuobiao_advice.Oid = order.ID
- zuobiao_advice.StartTime = recordStartTime
- zuobiao_advice.EndTime = recordEndTime
- zuobiao_advice.Vaa01 = strconv.FormatInt(int64(li.Vaa01), 10)
- zuobiao_advice.Vaa07 = strconv.FormatInt(int64(li.Vaa07), 10)
- zuobiao_advice.UserOrgId = c.GetAdminUserInfo().CurrentOrgId
- service.Createzuobiao(&zuobiao_advice)
- }
-
- c.ServeSuccessJSON(map[string]interface{}{
- "msg": "上传成功",
- })
-
- } else {
- c.ServeSuccessJSON(map[string]interface{}{
- "failed_code": -10,
- "msg": err_msg,
- })
- }
- } else { //月结
- start_time_str := c.GetString("start_time")
- end_time_str := c.GetString("end_time")
- theStartTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time_str+" 00:00:00", loc)
- if err != nil {
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
- return
- }
- recordStartTime = theStartTime.Unix()
- theEndTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time_str+" 00:00:00", loc)
- if err != nil {
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
- return
- }
- recordEndTime = theEndTime.Unix()
-
- prescriptions, _ = service.GetUnSettleMonthHisPrescription(org_id, patient_id, recordStartTime, recordEndTime)
-
- var total float64
-
- var customs []*models.NewCustomTwo
- for _, item := range prescriptions {
- if item.Type == 1 { //药品
- for _, subItem := range item.HisDoctorAdviceInfo {
- tempTime := time.Unix(item.PreTime, 0)
- //timeFormat := tempTime.Format("20060102150405")
- timeFormatOne := tempTime.Format("2006-01-02 15:04:05")
- cus := &models.NewCustomTwo{
- AdviceId: subItem.ID,
- ProjectId: 0,
- DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*subItem.PrescribingNumber),
- Cut: fmt.Sprintf("%.4f", subItem.PrescribingNumber),
- FeedetlSn: subItem.FeedetlSn,
- Price: fmt.Sprintf("%.2f", subItem.Price),
- MedListCodg: subItem.BaseDrugLib.MedicalInsuranceNumber,
- Type: 1,
- ItemId: subItem.BaseDrugLib.ZuobiaoId,
- StartTime: timeFormatOne,
- Content: subItem.AdviceName,
- Bby01: subItem.BaseDrugLib.Bby01,
- }
- customs = append(customs, cus)
- }
- }
- if item.Type == 2 { //项目
- for _, subItem := range item.HisPrescriptionProject {
- if subItem.Type == 2 {
- tempTime := time.Unix(item.PreTime, 0)
- //timeFormat := tempTime.Format("20060102150405")
- timeFormatOne := tempTime.Format("2006-01-02 15:04:05")
- cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- cus := &models.NewCustomTwo{
- AdviceId: 0,
- ProjectId: subItem.ID,
- DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*cnt),
- Cut: fmt.Sprintf("%.4f", cnt),
- FeedetlSn: subItem.FeedetlSn,
- Price: fmt.Sprintf("%.4f", float64(subItem.Price)),
- MedListCodg: subItem.HisProject.MedicalCode,
- Type: 2,
- ItemId: subItem.HisProject.ZuobiaoId,
- StartTime: timeFormatOne,
- Content: subItem.HisProject.ProjectName,
- Bby01: subItem.HisProject.Bby01,
- }
- customs = append(customs, cus)
-
- } else {
- tempTime := time.Unix(item.PreTime, 0)
- //timeFormat := tempTime.Format("20060102150405")
- timeFormatOne := tempTime.Format("2006-01-02 15:04:05")
- cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- cus := &models.NewCustomTwo{
- AdviceId: 0,
- ProjectId: subItem.ID,
- DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*cnt),
- Cut: fmt.Sprintf("%.4f", cnt),
- FeedetlSn: subItem.FeedetlSn,
- Price: fmt.Sprintf("%.4f", float64(subItem.Price)),
- MedListCodg: subItem.GoodInfo.MedicalInsuranceNumber,
- Type: 3,
- ItemId: subItem.GoodInfo.ZuobiaoId,
- StartTime: timeFormatOne,
- Content: subItem.GoodInfo.GoodName,
- Bby01: subItem.GoodInfo.Bby01,
- }
- customs = append(customs, cus)
- }
-
- }
- }
- }
-
- for _, item := range prescriptions {
- if item.Type == 1 { //药品
- for _, subItem := range item.HisDoctorAdviceInfo {
- price, _ := strconv.ParseFloat(fmt.Sprintf("%.2f", subItem.Price), 64)
- total_one := price * subItem.PrescribingNumber
-
- total = total + total_one
-
-
- }
- }
- if item.Type == 2 { //项目
-
- for _, subItem := range item.HisPrescriptionProject {
- cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- price, _ := strconv.ParseFloat(fmt.Sprintf("%.2f", subItem.Price), 64)
- total_one := price * cnt
- total = total + total_one
- }
- }
- }
-
- //allTotal := fmt.Sprintf("%2f", total)
-
- var info models.UploadInfo
- info.Acf01 = int64(li.Acf01)
- info.Bce01 = "132"
- info.Bck01 = "48"
- info.Vaa07 = int64(li.Vaa07)
- info.Vaa01 = int64(li.Vaa01)
- info.Vaa05 = li.Vaa05
- info.Bce01a = doctor_info.DoctorNumber
-
- for _, item := range customs {
- var cha models.ChargeListtwo
- cnt, _ := strconv.ParseFloat(item.Cut, 64)
-
- Bby01, _ := strconv.ParseInt(item.Bby01, 10, 64)
-
- cha.Bby01 = Bby01
- cha.Vaj25 = cnt
- info.ChargeListtwo = append(info.ChargeListtwo, &cha)
- }
-
-
-
- //汇总逻辑,坐标id相同的汇总成一条医嘱,数量累加
- var big_ps []models.HisPrescription
-
- drugPrescriptions, consumablePrescriptions := classifyPrescriptions(prescriptions)
- //药品处方需要和非没同组药品的分出同组药品的
- //var noGroupdrugPrescriptions models.HisPrescription
- var groupdrugPrescriptions []models.HisPrescription
- //同组药处方集合
- groupdrugPrescriptions = summarizePrescriptionsTwo(drugPrescriptions)
- //不同组药汇总到一个处方
- //noGroupdrugPrescriptions = summarizePrescriptions(drugPrescriptions)
- //noGroupdrugPrescriptions.HisDoctorAdviceInfo = append(noGroupdrugPrescriptions.HisDoctorAdviceInfo,summarizePrescriptions(drugPrescriptions)...)
-
-
- //非没同组药品,汇总处理
- var doc_two []models.HisDoctorAdviceInfo
- var doc []models.HisDoctorAdviceInfo
- doc = summarizePrescriptions(drugPrescriptions)
- var no_group_drug_ps models.HisPrescription
- no_group_drug_ps.MedType = "110"
- no_group_drug_ps.ID = int64(rand.Intn(90000) + 10000)
- no_group_drug_ps.Type = 1
- // 设置随机种子
- for _ ,sumitem := range doc{
- rand.Seed(time.Now().UnixNano())
- // 生成4位随机数
- randomNumber := rand.Intn(9000) + 1000
- sumitem.Groupno = sumitem.Groupno + int64(randomNumber)
- //doc = append(doc, sumitem.HisDoctorAdviceInfo...)
- }
-
-
- doc_two = RemoveRepeatedPurviewElementdrug(doc)
- var dos []models.HisDoctorAdviceInfo
- for _, pro := range doc_two {
- var ppp models.HisDoctorAdviceInfo
- var count float64
- var drugWayCount float64
-
- for _, pro_two := range doc {
- if pro.BaseDrugLib.ZuobiaoId == pro_two.BaseDrugLib.ZuobiaoId && pro.BaseDrugLib.Bby01 == pro_two.BaseDrugLib.Bby01 && pro.DeliveryWay == pro_two.DeliveryWay{
- ppp = pro_two
-
- count = count + pro_two.PrescribingNumber
-
- if len(pro_two.DrugWayCount) == 0{
- pro_two.DrugWayCount = "1"
- }
- result, _ := strconv.ParseFloat(pro_two.DrugWayCount, 64)
- drugWayCount = drugWayCount + result
-
-
- }
- }
-
- //fmt.Println(strconv.FormatFloat(drugWayCount, 'f', -1, 64))
-
- ppp.PrescribingNumber = count
- ppp.DrugWayCount = strconv.FormatFloat(drugWayCount, 'f', -1, 64)
- dos = append(dos, ppp)
- }
- no_group_drug_ps.HisDoctorAdviceInfo = dos
- if len(dos) > 0 {
- big_ps = append(big_ps, no_group_drug_ps)
- }
-
-
-
- jsonString, err := json.Marshal(big_ps)
- if err != nil {
- fmt.Println("转换失败:", err)
- return
- }
-
- // 输出JSON字符串
- fmt.Println(string(jsonString))
- saveLog("", string(jsonString), "1111333", "122222224444", "")
-
-
-
- //var hds []models.HisDoctorAdviceInfo
- ////同组药品不需要进行汇总
- for _, item := range groupdrugPrescriptions {
- var group_drug_ps models.HisPrescription
- group_drug_ps.MedType = "190"
- group_drug_ps.ID = int64(rand.Intn(90000) + 10000)
- group_drug_ps.Type = 1
- group_drug_ps.HisDoctorAdviceInfo = item.HisDoctorAdviceInfo
- big_ps = append(big_ps, group_drug_ps)
- }
- //jsonString2, err := json.Marshal(big_ps)
- //if err != nil {
- // fmt.Println("转换失败:", err)
- // return
- //}
- // 输出JSON字符串
- //fmt.Println(string(jsonString2))
- //saveLog("", string(jsonString2), "222222", "33334444444", "")
- //return
-
- //
- //hds = RemoveRepeatedPurviewElementdrugtwo(hds)
- //
- //for _,item := range hds{
- // for _,subitem := range hds{
- // if item.Newfn == subitem.Newfn{
- //
- //
- // }
- // }
- //}
-
-
-
-
- //if len(item.HisDoctorAdviceInfo) > 0 {
- //
- // var group_drug_ps models.HisPrescription
- // group_drug_ps.MedType = "110"
- // group_drug_ps.ID = int64(rand.Intn(90000) + 10000)
- // group_drug_ps.Type = 1
- // group_drug_ps.HisDoctorAdviceInfo = item.HisDoctorAdviceInfo
- // big_ps = append(big_ps, group_drug_ps)
- //}
-
-
- //耗材和项目汇总
- var projects []models.HisPrescriptionProject
- var goods []models.HisPrescriptionProject
- var checks []models.HisPrescriptionProject
-
- var projects_two []models.HisPrescriptionProject
- var goods_two []models.HisPrescriptionProject
- //var checks_two []models.HisPrescriptionProject
-
- for _, item := range consumablePrescriptions {
- for _, subitem := range item.HisPrescriptionProject {
- if subitem.Type == 2 {
- if subitem.HisProject.CostClassify == 3{
- checks = append(checks, subitem)
- }else{
- projects = append(projects, subitem)
- }
- } else if subitem.Type == 3 {
- goods = append(goods, subitem)
- }
- }
- }
- projects_two = RemoveRepeatedPurviewElementproject(projects)
- goods_two = RemoveRepeatedPurviewElementgood(goods)
- //checks_two = RemoveRepeatedPurviewElementproject(checks)
-
- var new_pros []models.HisPrescriptionProject
- var new_goods []models.HisPrescriptionProject
- var new_checks []models.HisPrescriptionProject
-
- for _, pro := range projects_two {
- var ppp models.HisPrescriptionProject
- var count float64
- for _, pro_two := range projects {
- if pro.HisProject.ZuobiaoId == pro_two.HisProject.ZuobiaoId && pro.HisProject.Bby01 == pro_two.HisProject.Bby01 {
- ppp = pro_two
- result, _ := strconv.ParseFloat(pro_two.Count, 64)
- count = count + result
- }
- }
- ppp.Count = strconv.FormatFloat(count, 'f', -1, 64)
- new_pros = append(new_pros, ppp)
- }
- for _, good := range goods_two {
- var ppp models.HisPrescriptionProject
- var count float64
- for _, good_two := range goods {
- if good.GoodInfo.ZuobiaoId == good_two.GoodInfo.ZuobiaoId && good.GoodInfo.Bby01 == good_two.GoodInfo.Bby01 {
- ppp = good_two
- result, _ := strconv.ParseFloat(good_two.Count, 64)
- count = count + result
- }
- }
- ppp.Count = strconv.FormatFloat(count, 'f', -1, 64)
- new_goods = append(new_goods, ppp)
- }
- for _, check := range checks {
- var ppp models.HisPrescriptionProject
- ppp = check
- ppp.Count = check.Count
- new_checks = append(new_checks, ppp)
- }
-
- if len(new_goods) > 0 {
-
- var ps1 models.HisPrescription
- ps1.MedType = "120"
- ps1.ID = int64(rand.Intn(90000) + 10000)
-
- ps1.Type = 2
- ps1.HisPrescriptionProject = append(ps1.HisPrescriptionProject, new_goods...)
- big_ps = append(big_ps, ps1)
- }
- if len(new_pros) > 0 {
-
- var ps2 models.HisPrescription
- ps2.MedType = "130"
- ps2.Type = 2
- ps2.ID = int64(rand.Intn(90000) + 10000)
-
- ps2.HisPrescriptionProject = append(ps2.HisPrescriptionProject, new_pros...)
- big_ps = append(big_ps, ps2)
- }
-
- if len(new_checks) > 0 {
- var ps3 models.HisPrescription
- ps3.MedType = "140"
- ps3.Type = 2
- ps3.ID = int64(rand.Intn(90000) + 10000)
- ps3.HisPrescriptionProject = append(ps3.HisPrescriptionProject, new_checks...)
- big_ps = append(big_ps, ps3)
- }
-
-
-
- ////信息
- var is_upload_success bool = true
- var curpage int
- var pagesize int = len(big_ps)
- var start int = 1
- var stop int
- var zuobiao_ids string
- var err_msg string
- var idss []int64
-
- //pagecount := 10
- pagecount := int(math.Ceil(float64(len(big_ps)) / float64(pagesize)))
-
- for curpage = 1; curpage <= pagecount; curpage++ {
- var root models.Root
- var tradeInfo models.TradeInfo
- var cBM1 models.CBM1
- var vAF1 models.VAF1
- var vAO1 models.VAO1
- var vBQ1 models.VBQ1
-
- if li.Acf01 == 1 {
- tradeInfo.PatSource = 1
- tradeInfo.Type = 0
- } else {
- tradeInfo.PatSource = 2
- tradeInfo.Type = 1
-
- }
- tradeInfo.Detpid = departmwnt.Number
- tradeInfo.Empid = doctor_info.DoctorNumber
- tradeInfo.Empno = doctor_info.DoctorCode
- tradeInfo.Empname = doctor_info.UserName
- root.TradeInfo = tradeInfo
-
- if curpage == 1 {
- start = 1
- } else {
- start = (curpage-1)*pagesize + 1
- }
- stop = curpage * pagesize
- if stop > len(big_ps) {
- stop = len(big_ps)
- }
-
- //var ids []int64
- //
- //for _, item := range prescriptions[start-1 : stop] {
- // ids = append(ids, item.ID)
- //}
-
-
-
- for _, item := range big_ps[start-1 : stop] {
- //departmwnt_two, _ := service.GetDepartMentDetail(item.VMHisPrescriptionInfo.Departments)
- var ie_cbm1 models.IEone
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAA07 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.ACF01 = strconv.FormatInt(int64(li.Acf01), 10)
- //ie_cbm1.CBM06 = strconv.FormatInt(int64(res.List[0].Acf01), 10)
-
- if li.Acf01 == 1 {
- if item.MedType == "110" {
- ie_cbm1.CBM06 = "1"
- }
- if item.MedType == "120"{
- ie_cbm1.CBM06 = "5"
- }
- if item.MedType == "130"{
- ie_cbm1.CBM06 = "0"
- }
- if item.MedType == "140"{
- ie_cbm1.CBM06 = "9"
- }
- if item.MedType == "190"{
- ie_cbm1.CBM06 = "1"
- }
-
- ie_cbm1.BCK01A = "0"
- } else {
- ie_cbm1.CBM06 = "0"
- ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01B), 10) //病区id
- }
- if item.MedType == "110" {
- ie_cbm1.CBM07 = "1"
- }
- if item.MedType == "120"{
- ie_cbm1.CBM07 = "5"
- }
- if item.MedType == "130"{
- ie_cbm1.CBM07 = "0"
- }
- if item.MedType == "140"{
- ie_cbm1.CBM07 = "10"
- }
- if item.MedType == "190"{
- ie_cbm1.CBM06 = "1"
- }
-
- ie_cbm1.BCK01B = strconv.FormatInt(int64(li.Bck01B), 10)
- ie_cbm1.BCK01C = "38"
- ie_cbm1.CBM19 = "0"
- cBM1.Ie = append(cBM1.Ie, ie_cbm1)
- }
- root.CBM1 = cBM1
- ////医嘱
-
-
-
- for _, item := range big_ps[start-1 : stop] {
-
-
- //departmwnt_two, _ := service.GetDepartMentDetail(item.VMHisPrescriptionInfo.Departments)
-
- if item.Type == 1 {
- if item.MedType == "190"{
- //组号去重
- //temphisDoctorAdviceInfo := RemoveRepeatedPurviewElementdoctoradvice(item.HisDoctorAdviceInfo)
-
- // 使用 map 来存储 groupno 的数量
- //groupCount := make(map[int64]int64)
-
- // 使用 map 来存储 groupno 的数量和最后一条数据的索引
- groupInfo := make(map[string]struct {
- Count int64
- LastElement int
- })
-
- // 遍历切片,计算 groupno 的数量和最后一条数据的索引
- for i, obj := range item.HisDoctorAdviceInfo {
- fmt.Println("转换失败1:", strconv.FormatInt(int64(obj.Groupno), 10) +"-"+strconv.FormatInt(int64(obj.PrescriptionId), 10))
- info, ok := groupInfo[strconv.FormatInt(int64(obj.Groupno), 10) +"-"+strconv.FormatInt(int64(obj.PrescriptionId), 10)]
- fmt.Println("转换失败2:",info)
-
- if !ok {
- info = struct {
- Count int64
- LastElement int
- }{}
- }
- info.Count++
- info.LastElement = i
- groupInfo[strconv.FormatInt(int64(obj.Groupno), 10) +"-"+strconv.FormatInt(int64(obj.PrescriptionId), 10)] = info
- fmt.Println("转换失败3:",groupInfo[strconv.FormatInt(int64(obj.Groupno), 10) +"-"+strconv.FormatInt(int64(obj.PrescriptionId), 10)])
-
- }
- fmt.Println("转换失败4:",groupInfo)
-
-
- // 根据 groupno 的数量设置字段值
- for i, obj := range item.HisDoctorAdviceInfo {
- info := groupInfo[strconv.FormatInt(int64(obj.Groupno), 10) +"-"+strconv.FormatInt(int64(obj.PrescriptionId), 10)]
- if info.Count < 2 {
- fmt.Println("转换失败555:")
-
- item.HisDoctorAdviceInfo[i].NewGroupno = strconv.FormatInt(int64(1), 10)
- //item.HisDoctorAdviceInfo[i].Groupno = int64(rand.Intn(90000) + 10000)
-
- } else {
- // 对于数量大于等于 2 的,将最后一条数据设置 1,其他设置为随机数
- if i == info.LastElement {
- fmt.Println("转换失败6666:")
- item.HisDoctorAdviceInfo[i].NewGroupno = strconv.FormatInt(int64(1), 10)
- //item.HisDoctorAdviceInfo[i].Groupno = int64(rand.Intn(90000) + 10000)
- } else {
- fmt.Println("转换失败777777:")
- item.HisDoctorAdviceInfo[i].NewGroupno = strconv.FormatInt(obj.ID, 10)
- }
- }
- }
-
-
-
- for _, subitem := range item.HisDoctorAdviceInfo {
- fmt.Println("转换失败777777:", subitem.NewGroupno)
-
- var ie_cbm1 models.IEtwo
-
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
-
- ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01B), 10)
- ie_cbm1.ROWNR = subitem.NewGroupno
- ie_cbm1.VAF10 = "1"
- ie_cbm1.VAF11 = "2"
- ie_cbm1.BDA01 = "1" //诊疗类型
- ie_cbm1.BBX01 = subitem.BaseDrugLib.ZuobiaoId
- ie_cbm1.VAF14 = "" //检验样本类型
- ie_cbm1.VAF15 = ""
- ie_cbm1.BBY01 = subitem.BaseDrugLib.Bby01 //药品规格id或材料规格id
-
- if li.Acf01 == 1 {
- ie_cbm1.VAF17 = strconv.FormatInt(int64(subitem.Day), 10)
-
- } else {
- ie_cbm1.VAF17 = "0"
-
- }
-
- ie_cbm1.VAF18 = fmt.Sprintf("%.2f", subitem.SingleDose) //药品规格id或材料规格id
- ie_cbm1.VAF19 = fmt.Sprintf("%.2f", subitem.SingleDose) + " " + subitem.SingleDoseUnit //药品规格id或材料规格id
- ie_cbm1.VAF20 = fmt.Sprintf("%.2f", subitem.SingleDose)
- ie_cbm1.VAF21 = fmt.Sprintf("%.2f", subitem.PrescribingNumber)
-
- ie_cbm1.VAF22 = subitem.AdviceName + " " + subitem.BaseDrugLib.DrugSpec
- ie_cbm1.Crypt = "0"
- ie_cbm1.VAF23 = ""
- ie_cbm1.BCK01B = subitem.BaseDrugLib.Bck01b
- ie_cbm1.VAF26 = subitem.ExecutionFrequency
- ie_cbm1.VAF27 = "1"
- ie_cbm1.VAF28 = "1"
- ie_cbm1.VAF29 = "1"
-
- ie_cbm1.VAF30 = ""
- ie_cbm1.VAF31 = "0"
-
- ie_cbm1.VAF32 = "0" //todo
- ie_cbm1.VAF33 = "0"
- ie_cbm1.VAF34 = "0"
- ie_cbm1.VAF35 = "0"
-
- tempTime1 := time.Unix(subitem.StartTime, 0)
- timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- ie_cbm1.VAF36 = timeFormatOne
- ie_cbm1.VAF37 = "1899-12-30"
- doctor_info, _ := service.GetAdminUserInfoByID(org_id, 4270)
- ie_cbm1.BCK01C = "38"
-
- ie_cbm1.BCE02A = doctor_info.DoctorCode
- ie_cbm1.BCE03A = doctor_info.UserName
- ie_cbm1.BCE03B = ""
-
- ie_cbm1.VAF53 = "-1"
- ie_cbm1.VAF55 = subitem.Remark
- ie_cbm1.BCK01D = "38"
- ie_cbm1.VAF58 = "0"
- ie_cbm1.VAF59 = strconv.FormatInt(int64(subitem.Groupno ), 10)
-
- ie_cbm1.VAF60 = ""
- ie_cbm1.VAF61 = "1"
- ie_cbm1.VAF62 = "0"
- ie_cbm1.LSign = "0"
- ie_cbm1.BDA01A = ie_cbm1.BDA01
- ie_cbm1.LRoute = "0"
- ie_cbm1.BCE01A = doctor_info.DoctorNumber
- ie_cbm1.BCE01B = "0"
-
- ie_cbm1.VAF01B = "0"
- ie_cbm1.VCO01 = "0"
- ie_cbm1.BCE01H = "0"
- ie_cbm1.BCE03H = ""
- ie_cbm1.BIW02 = ""
- ie_cbm1.RCurrent = "0"
- ie_cbm1.FCheck = "0"
- ie_cbm1.UnameA = ""
- ie_cbm1.VEH02 = ""
- vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- }
-
-
-
- //hisDoctorAdviceInfo := RemoveRepeatedPurviewElementdoctoradvice(item.HisDoctorAdviceInfo)
-
- //每种药品下的给药途径
- for _, subitem := range item.HisDoctorAdviceInfo {
- way, _ := service.GetDrugwayDicByName(subitem.DeliveryWay, c.GetAdminUserInfo().CurrentOrgId)
- var ie_cbm1 models.IEtwo
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01B), 10)
- ie_cbm1.ROWNR = "0"
- ie_cbm1.VAF10 = "1"
- ie_cbm1.VAF11 = "2"
- ie_cbm1.BDA01 = "T" //诊疗类型
- ie_cbm1.BBX01 = way.Code
- ie_cbm1.VAF14 = "" //检验样本类型
- ie_cbm1.VAF15 = "" //检验样本类型
- ie_cbm1.BBY01 = way.Bby01 //药品规格id或材料规格id
- if li.Acf01 == 1 {
- ie_cbm1.VAF17 = strconv.FormatInt(int64(subitem.Day), 10) //药品规格id或材料规格id
- } else {
- ie_cbm1.VAF17 = "0" //药品规格id或材料规格id
- }
-
- ie_cbm1.VAF18 = fmt.Sprintf("%.2f", subitem.SingleDose) //药品规格id或材料规格id
- ie_cbm1.VAF19 = fmt.Sprintf("%.2f", subitem.SingleDose) + " " + subitem.SingleDoseUnit //药品规格id或材料规格id
- ie_cbm1.VAF20 = fmt.Sprintf("%.2f", subitem.SingleDose)
- //ie_cbm1.VAF21 = fmt.Sprintf("%.2f",subitem.PrescribingNumber)
-
- //ie_cbm1.VAF18 = "" //药品规格id或材料规格id
- //ie_cbm1.VAF19 = ""
- //ie_cbm1.VAF20 = ""
- if subitem.DrugWayCount == "" {
- ie_cbm1.VAF21 = "1"
-
- } else {
- ie_cbm1.VAF21 = subitem.DrugWayCount
-
- }
-
- ie_cbm1.VAF22 = way.Name
- ie_cbm1.Crypt = "0"
- ie_cbm1.VAF23 = ""
- ie_cbm1.BCK01B = subitem.BaseDrugLib.Bck01b
- ie_cbm1.VAF26 = subitem.ExecutionFrequency
- ie_cbm1.VAF27 = "1"
- ie_cbm1.VAF28 = "1"
- ie_cbm1.VAF29 = "1"
- ie_cbm1.BCK01C = "38"
-
- ie_cbm1.VAF30 = ""
- ie_cbm1.VAF31 = "0"
-
- ie_cbm1.VAF32 = "1" //todo
- ie_cbm1.VAF33 = "0"
- ie_cbm1.VAF34 = "0"
- ie_cbm1.VAF35 = "0"
-
- tempTime1 := time.Unix(subitem.StartTime, 0)
- timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- ie_cbm1.VAF36 = timeFormatOne
- ie_cbm1.VAF37 = "1899-12-30"
- doctor_info, _ := service.GetAdminUserInfoByID(org_id, 4270)
-
- ie_cbm1.BCE02A = doctor_info.DoctorCode
- ie_cbm1.BCE03A = doctor_info.UserName
- ie_cbm1.BCE03B = ""
-
- ie_cbm1.VAF53 = "-1"
- ie_cbm1.VAF55 = subitem.Remark
- ie_cbm1.BCK01D = "38"
- ie_cbm1.VAF58 = "0"
- ie_cbm1.VAF59 =strconv.FormatInt(int64(subitem.Groupno ), 10)
-
-
- ie_cbm1.VAF60 = ""
- ie_cbm1.VAF61 = "1"
- ie_cbm1.VAF62 = "0"
- ie_cbm1.LSign = "0"
- ie_cbm1.BDA01A = ie_cbm1.BDA01
- ie_cbm1.LRoute = "0"
- ie_cbm1.BCE01A = doctor_info.DoctorNumber
- ie_cbm1.BCE01B = "0"
-
- ie_cbm1.VAF01B = "0"
- ie_cbm1.VCO01 = "0"
- ie_cbm1.BCE01H = "0"
- ie_cbm1.BCE03H = ""
- ie_cbm1.BIW02 = ""
- ie_cbm1.RCurrent = "0"
- ie_cbm1.FCheck = "0"
- ie_cbm1.UnameA = ""
- ie_cbm1.VEH02 = ""
- ie_cbm1.VAF07 = "0"
- vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- }
-
-
-
- }else{
- //组号去重
- //temphisDoctorAdviceInfo := RemoveRepeatedPurviewElementdoctoradvice(item.HisDoctorAdviceInfo)
-
- // 使用 map 来存储 groupno 的数量
- //groupCount := make(map[int64]int64)
-
- // 使用 map 来存储 groupno 的数量和最后一条数据的索引
- groupInfo := make(map[string]struct {
- Count int64
- LastElement int
- })
-
- // 遍历切片,计算 groupno 的数量和最后一条数据的索引
- for i, obj := range item.HisDoctorAdviceInfo {
- fmt.Println("转换失败1:", strconv.FormatInt(int64(obj.Groupno), 10) +"-"+strconv.FormatInt(int64(obj.PrescriptionId), 10))
- info, ok := groupInfo[strconv.FormatInt(int64(obj.Groupno), 10) +"-"+strconv.FormatInt(int64(obj.PrescriptionId), 10)]
- fmt.Println("转换失败2:",info)
-
- if !ok {
- info = struct {
- Count int64
- LastElement int
- }{}
- }
- info.Count++
- info.LastElement = i
- groupInfo[strconv.FormatInt(int64(obj.Groupno), 10) +"-"+strconv.FormatInt(int64(obj.PrescriptionId), 10)] = info
- fmt.Println("转换失败3:",groupInfo[strconv.FormatInt(int64(obj.Groupno), 10) +"-"+strconv.FormatInt(int64(obj.PrescriptionId), 10)])
-
- }
- fmt.Println("转换失败4:",groupInfo)
-
-
- // 根据 groupno 的数量设置字段值
- for i, obj := range item.HisDoctorAdviceInfo {
- info := groupInfo[strconv.FormatInt(int64(obj.Groupno), 10) +"-"+strconv.FormatInt(int64(obj.PrescriptionId), 10)]
- if info.Count < 2 {
- fmt.Println("转换失败555:")
-
- item.HisDoctorAdviceInfo[i].NewGroupno = strconv.FormatInt(int64(1), 10)
- item.HisDoctorAdviceInfo[i].Groupno = int64(rand.Intn(90000) + 10000)
-
- } else {
- // 对于数量大于等于 2 的,将最后一条数据设置 1,其他设置为随机数
- if i == info.LastElement {
- fmt.Println("转换失败6666:")
- item.HisDoctorAdviceInfo[i].NewGroupno = strconv.FormatInt(int64(1), 10)
- item.HisDoctorAdviceInfo[i].Groupno = int64(rand.Intn(90000) + 10000)
- } else {
- fmt.Println("转换失败777777:")
- item.HisDoctorAdviceInfo[i].NewGroupno = strconv.FormatInt(obj.ID, 10)
- }
- }
- }
-
-
-
- for _, subitem := range item.HisDoctorAdviceInfo {
- fmt.Println("转换失败777777:", subitem.NewGroupno)
-
- var ie_cbm1 models.IEtwo
-
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
-
- ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01B), 10)
- ie_cbm1.ROWNR = subitem.NewGroupno
- ie_cbm1.VAF10 = "1"
- ie_cbm1.VAF11 = "2"
- ie_cbm1.BDA01 = "1" //诊疗类型
- ie_cbm1.BBX01 = subitem.BaseDrugLib.ZuobiaoId
- ie_cbm1.VAF14 = "" //检验样本类型
- ie_cbm1.VAF15 = ""
- ie_cbm1.BBY01 = subitem.BaseDrugLib.Bby01 //药品规格id或材料规格id
-
- if li.Acf01 == 1 {
- ie_cbm1.VAF17 = strconv.FormatInt(int64(subitem.Day), 10)
-
- } else {
- ie_cbm1.VAF17 = "0"
-
- }
-
- ie_cbm1.VAF18 = fmt.Sprintf("%.2f", subitem.SingleDose) //药品规格id或材料规格id
- ie_cbm1.VAF19 = fmt.Sprintf("%.2f", subitem.SingleDose) + " " + subitem.SingleDoseUnit //药品规格id或材料规格id
- ie_cbm1.VAF20 = fmt.Sprintf("%.2f", subitem.SingleDose)
- ie_cbm1.VAF21 = fmt.Sprintf("%.2f", subitem.PrescribingNumber)
-
- ie_cbm1.VAF22 = subitem.AdviceName + " " + subitem.BaseDrugLib.DrugSpec
- ie_cbm1.Crypt = "0"
- ie_cbm1.VAF23 = ""
- ie_cbm1.BCK01B = subitem.BaseDrugLib.Bck01b
- ie_cbm1.VAF26 = subitem.ExecutionFrequency
- ie_cbm1.VAF27 = "1"
- ie_cbm1.VAF28 = "1"
- ie_cbm1.VAF29 = "1"
-
- ie_cbm1.VAF30 = ""
- ie_cbm1.VAF31 = "0"
-
- ie_cbm1.VAF32 = "0" //todo
- ie_cbm1.VAF33 = "0"
- ie_cbm1.VAF34 = "0"
- ie_cbm1.VAF35 = "0"
-
- tempTime1 := time.Unix(subitem.StartTime, 0)
- timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- ie_cbm1.VAF36 = timeFormatOne
- ie_cbm1.VAF37 = "1899-12-30"
- doctor_info, _ := service.GetAdminUserInfoByID(org_id, 4270)
- ie_cbm1.BCK01C = "38"
-
- ie_cbm1.BCE02A = doctor_info.DoctorCode
- ie_cbm1.BCE03A = doctor_info.UserName
- ie_cbm1.BCE03B = ""
-
- ie_cbm1.VAF53 = "-1"
- ie_cbm1.VAF55 = subitem.Remark
- ie_cbm1.BCK01D = "38"
- ie_cbm1.VAF58 = "0"
- ie_cbm1.VAF59 = strconv.FormatInt(int64(subitem.Groupno ), 10)
-
- ie_cbm1.VAF60 = ""
- ie_cbm1.VAF61 = "1"
- ie_cbm1.VAF62 = "0"
- ie_cbm1.LSign = "0"
- ie_cbm1.BDA01A = ie_cbm1.BDA01
- ie_cbm1.LRoute = "0"
- ie_cbm1.BCE01A = doctor_info.DoctorNumber
- ie_cbm1.BCE01B = "0"
-
- ie_cbm1.VAF01B = "0"
- ie_cbm1.VCO01 = "0"
- ie_cbm1.BCE01H = "0"
- ie_cbm1.BCE03H = ""
- ie_cbm1.BIW02 = ""
- ie_cbm1.RCurrent = "0"
- ie_cbm1.FCheck = "0"
- ie_cbm1.UnameA = ""
- ie_cbm1.VEH02 = ""
- vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- }
-
-
-
- //hisDoctorAdviceInfo := RemoveRepeatedPurviewElementdoctoradvice(item.HisDoctorAdviceInfo)
-
- //每种药品下的给药途径
- for _, subitem := range item.HisDoctorAdviceInfo {
- way, _ := service.GetDrugwayDicByName(subitem.DeliveryWay, c.GetAdminUserInfo().CurrentOrgId)
- var ie_cbm1 models.IEtwo
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01B), 10)
- ie_cbm1.ROWNR = "0"
- ie_cbm1.VAF10 = "1"
- ie_cbm1.VAF11 = "2"
- ie_cbm1.BDA01 = "T" //诊疗类型
- ie_cbm1.BBX01 = way.Code
- ie_cbm1.VAF14 = "" //检验样本类型
- ie_cbm1.VAF15 = "" //检验样本类型
- ie_cbm1.BBY01 = way.Bby01 //药品规格id或材料规格id
- if li.Acf01 == 1 {
- ie_cbm1.VAF17 = strconv.FormatInt(int64(subitem.Day), 10) //药品规格id或材料规格id
- } else {
- ie_cbm1.VAF17 = "0" //药品规格id或材料规格id
- }
-
- ie_cbm1.VAF18 = fmt.Sprintf("%.2f", subitem.SingleDose) //药品规格id或材料规格id
- ie_cbm1.VAF19 = fmt.Sprintf("%.2f", subitem.SingleDose) + " " + subitem.SingleDoseUnit //药品规格id或材料规格id
- ie_cbm1.VAF20 = fmt.Sprintf("%.2f", subitem.SingleDose)
- //ie_cbm1.VAF21 = fmt.Sprintf("%.2f",subitem.PrescribingNumber)
-
- //ie_cbm1.VAF18 = "" //药品规格id或材料规格id
- //ie_cbm1.VAF19 = ""
- //ie_cbm1.VAF20 = ""
- if subitem.DrugWayCount == "" {
- ie_cbm1.VAF21 = "1"
-
- } else {
- ie_cbm1.VAF21 = subitem.DrugWayCount
-
- }
-
- ie_cbm1.VAF22 = way.Name
- ie_cbm1.Crypt = "0"
- ie_cbm1.VAF23 = ""
- ie_cbm1.BCK01B = subitem.BaseDrugLib.Bck01b
- ie_cbm1.VAF26 = subitem.ExecutionFrequency
- ie_cbm1.VAF27 = "1"
- ie_cbm1.VAF28 = "1"
- ie_cbm1.VAF29 = "1"
- ie_cbm1.BCK01C = "38"
-
- ie_cbm1.VAF30 = ""
- ie_cbm1.VAF31 = "0"
-
- ie_cbm1.VAF32 = "1" //todo
- ie_cbm1.VAF33 = "0"
- ie_cbm1.VAF34 = "0"
- ie_cbm1.VAF35 = "0"
-
- tempTime1 := time.Unix(subitem.StartTime, 0)
- timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- ie_cbm1.VAF36 = timeFormatOne
- ie_cbm1.VAF37 = "1899-12-30"
- doctor_info, _ := service.GetAdminUserInfoByID(org_id, 4270)
-
- ie_cbm1.BCE02A = doctor_info.DoctorCode
- ie_cbm1.BCE03A = doctor_info.UserName
- ie_cbm1.BCE03B = ""
-
- ie_cbm1.VAF53 = "-1"
- ie_cbm1.VAF55 = subitem.Remark
- ie_cbm1.BCK01D = "38"
- ie_cbm1.VAF58 = "0"
- ie_cbm1.VAF59 =strconv.FormatInt(int64(subitem.Groupno ), 10)
-
-
- ie_cbm1.VAF60 = ""
- ie_cbm1.VAF61 = "1"
- ie_cbm1.VAF62 = "0"
- ie_cbm1.LSign = "0"
- ie_cbm1.BDA01A = ie_cbm1.BDA01
- ie_cbm1.LRoute = "0"
- ie_cbm1.BCE01A = doctor_info.DoctorNumber
- ie_cbm1.BCE01B = "0"
-
- ie_cbm1.VAF01B = "0"
- ie_cbm1.VCO01 = "0"
- ie_cbm1.BCE01H = "0"
- ie_cbm1.BCE03H = ""
- ie_cbm1.BIW02 = ""
- ie_cbm1.RCurrent = "0"
- ie_cbm1.FCheck = "0"
- ie_cbm1.UnameA = ""
- ie_cbm1.VEH02 = ""
- ie_cbm1.VAF07 = "0"
- vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- }
-
- }
-
- } else if item.Type == 2 {
- for index, subitem := range item.HisPrescriptionProject {
- if subitem.Type == 2 {
- if subitem.HisProject.CostClassify != 3 {
- var ie_cbm1 models.IEtwo
-
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
-
- ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01B), 10)
- ie_cbm1.ROWNR = strconv.FormatInt(int64(index+1), 10)
- ie_cbm1.VAF10 = "1"
- ie_cbm1.VAF11 = "2"
- ie_cbm1.BDA01 = "T" //诊疗类型
- ie_cbm1.BBX01 = subitem.HisProject.ZuobiaoId
- ie_cbm1.VAF14 = "" //检验样本类型
- ie_cbm1.VAF15 = "" //检验样本类型
- ie_cbm1.BBY01 = subitem.HisProject.Bby01 //药品规格id或材料规格id
- if li.Acf01 == 1 {
- ie_cbm1.VAF17 = subitem.Day //药品规格id或材料规格id
- if len(subitem.Day) == 0 {
- ie_cbm1.VAF17 = "1"
- }
-
- } else {
- ie_cbm1.VAF17 = "0" //药品规格id或材料规格idn
- }
- if subitem.SingleDose == "" {
-
- subitem.SingleDose = "1"
- }
-
- ie_cbm1.VAF18 = subitem.SingleDose //药品规格id或材料规格id
- ie_cbm1.VAF19 = subitem.SingleDose + " " + subitem.Unit //药品规格id或材料规格id
- ie_cbm1.VAF20 = subitem.SingleDose
- ie_cbm1.VAF21 = subitem.Count
-
- ie_cbm1.VAF22 = subitem.HisProject.ProjectName
- ie_cbm1.Crypt = "0"
- ie_cbm1.VAF23 = ""
- ie_cbm1.BCK01B = subitem.HisProject.Bck01b
- ie_cbm1.VAF26 = subitem.ExecutionFrequency
- ie_cbm1.VAF27 = "1"
- ie_cbm1.VAF28 = "1"
- ie_cbm1.VAF29 = ""
- ie_cbm1.BCK01C = "38"
-
- ie_cbm1.VAF30 = ""
- ie_cbm1.VAF31 = "0"
-
- ie_cbm1.VAF32 = "0" //todo
- ie_cbm1.VAF33 = "0"
- ie_cbm1.VAF34 = "0"
- ie_cbm1.VAF35 = "0"
-
- tempTime1 := time.Unix(subitem.StartTime, 0)
- timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- ie_cbm1.VAF36 = timeFormatOne
- ie_cbm1.VAF37 = "1899-12-30"
- doctor_info, _ := service.GetAdminUserInfoByID(org_id, 4270)
-
- ie_cbm1.BCE02A = doctor_info.DoctorCode
- ie_cbm1.BCE03A = doctor_info.UserName
- ie_cbm1.BCE03B = ""
-
- ie_cbm1.VAF53 = "-1"
- ie_cbm1.VAF55 = subitem.Remark
- ie_cbm1.BCK01D = "38"
- ie_cbm1.VAF58 = "0"
- ie_cbm1.VAF59 = strconv.FormatInt(int64(index+1), 10)
-
- ie_cbm1.VAF60 = ""
- ie_cbm1.VAF61 = "1"
- ie_cbm1.VAF62 = "0"
- ie_cbm1.LSign = "0"
- ie_cbm1.BDA01A = "" //诊疗类型
- ie_cbm1.LRoute = "0"
- ie_cbm1.BCE01A = doctor_info.DoctorNumber
-
- //ie_cbm1.BCE01A = doctor_info.UserName
- ie_cbm1.BCE01B = "0"
-
- ie_cbm1.VAF01B = "0"
- ie_cbm1.VCO01 = "0"
- ie_cbm1.BCE01H = "0"
- ie_cbm1.BCE03H = ""
- ie_cbm1.BIW02 = ""
- ie_cbm1.RCurrent = "0"
- ie_cbm1.FCheck = "0"
- ie_cbm1.UnameA = ""
- ie_cbm1.VAF07 = "0"
-
- ie_cbm1.VEH02 = ""
- vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- }
- if subitem.HisProject.CostClassify == 3 {
- var ie_cbm1 models.IEtwo
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01B), 10)
- ie_cbm1.ROWNR = strconv.FormatInt(int64(index+1), 10)
- ie_cbm1.VAF10 = "1"
- ie_cbm1.VAF11 = "2"
- ie_cbm1.BDA01 = "L" //诊疗类型
- ie_cbm1.BBX01 = subitem.HisProject.ZuobiaoId
- ie_cbm1.VAF14 = subitem.HisProject.Vaf14 //检验样本类型
- ie_cbm1.VAF15 = "" //检验样本类型
- ie_cbm1.BBY01 = subitem.HisProject.Bby01 //药品规格id或材料规格id
- if li.Acf01 == 1 {
- ie_cbm1.VAF17 = subitem.Day //药品规格id或材料规格id
- } else {
- ie_cbm1.VAF17 = "0" //药品规格id或材料规格idn
- }
- if subitem.SingleDose == "" {
-
- subitem.SingleDose = "1"
- }
-
- ie_cbm1.VAF18 = subitem.SingleDose //药品规格id或材料规格id
- ie_cbm1.VAF19 = subitem.SingleDose + " " + subitem.Unit //药品规格id或材料规格id
- ie_cbm1.VAF20 = subitem.SingleDose
- ie_cbm1.VAF21 = subitem.Count
-
- ie_cbm1.VAF22 = subitem.HisProject.ProjectName
- ie_cbm1.Crypt = "0"
- ie_cbm1.VAF23 = ""
- ie_cbm1.BCK01B = subitem.HisProject.Bck01b
- ie_cbm1.VAF26 = subitem.ExecutionFrequency
- ie_cbm1.VAF27 = "1"
- ie_cbm1.VAF28 = "1"
- ie_cbm1.VAF29 = ""
- ie_cbm1.BCK01C = "38"
- ie_cbm1.VAF30 = ""
- ie_cbm1.VAF31 = "0"
- ie_cbm1.VAF32 = "0" //todo
- ie_cbm1.VAF33 = "0"
- ie_cbm1.VAF34 = "0"
- ie_cbm1.VAF35 = "0"
- tempTime1 := time.Unix(subitem.StartTime, 0)
- timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- ie_cbm1.VAF36 = timeFormatOne
- ie_cbm1.VAF37 = "1899-12-30"
- doctor_info, _ := service.GetAdminUserInfoByID(org_id, 4270)
-
- ie_cbm1.BCE02A = doctor_info.DoctorCode
- ie_cbm1.BCE03A = doctor_info.UserName
- ie_cbm1.BCE03B = ""
-
- ie_cbm1.VAF53 = "-1"
- ie_cbm1.VAF55 = subitem.Remark
- ie_cbm1.BCK01D = "38"
- ie_cbm1.VAF58 = "0"
- ie_cbm1.VAF59 = strconv.FormatInt(int64(index+1), 10)
-
- ie_cbm1.VAF60 = ""
- ie_cbm1.VAF61 = "1"
- ie_cbm1.VAF62 = "0"
- ie_cbm1.LSign = "0"
- ie_cbm1.BDA01A = "" //诊疗类型
- ie_cbm1.LRoute = "0"
- ie_cbm1.BCE01A = doctor_info.DoctorNumber
- ie_cbm1.VAF07 = "0"
-
- //ie_cbm1.BCE01A = doctor_info.UserName
- ie_cbm1.BCE01B = "0"
-
- ie_cbm1.VAF01B = "0"
- ie_cbm1.VCO01 = "0"
- ie_cbm1.BCE01H = "0"
- ie_cbm1.BCE03H = ""
- ie_cbm1.BIW02 = ""
- ie_cbm1.RCurrent = "0"
- ie_cbm1.FCheck = "0"
- ie_cbm1.UnameA = ""
- ie_cbm1.VEH02 = ""
- vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- }
-
- } else if subitem.Type == 3 {
- var ie_cbm1 models.IEtwo
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- ie_cbm1.VAF04 = strconv.FormatInt(int64(li.Acf01), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAF06 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.BCK01A = strconv.FormatInt(int64(li.Bck01B), 10)
- ie_cbm1.ROWNR = strconv.FormatInt(int64(index+1), 10)
-
- ie_cbm1.VAF10 = "1"
- ie_cbm1.VAF11 = "2"
- ie_cbm1.BDA01 = "4" //诊疗类型
- ie_cbm1.BBX01 = subitem.GoodInfo.ZuobiaoId
- ie_cbm1.VAF14 = "" //检验样本类型
- ie_cbm1.VAF15 = "" //检验样本类型
- ie_cbm1.BBY01 = subitem.GoodInfo.Bby01 //药品规格id或材料规格id
- if li.Acf01 == 1 {
- ie_cbm1.VAF17 = subitem.Day //药品规格id或材料规格id
- if len(subitem.Day) == 0 {
- ie_cbm1.VAF17 = "1"
- }
-
- } else {
- ie_cbm1.VAF17 = "0" //药品规格id或材料规格idn
- }
- if subitem.SingleDose == "" {
-
- subitem.SingleDose = "1"
- }
-
- ie_cbm1.VAF18 = subitem.SingleDose //药品规格id或材料规格id
- ie_cbm1.VAF19 = subitem.SingleDose + " " + subitem.Unit //药品规格id或材料规格id
- ie_cbm1.VAF20 = subitem.SingleDose
- ie_cbm1.VAF21 = subitem.Count
- ie_cbm1.BCK01C = "38"
-
- ie_cbm1.VAF22 = subitem.GoodInfo.GoodName + " " + subitem.GoodInfo.SpecificationName
- ie_cbm1.Crypt = "0"
- ie_cbm1.VAF23 = ""
- ie_cbm1.BCK01B = subitem.GoodInfo.Bck01b
- ie_cbm1.VAF26 = subitem.ExecutionFrequency
- ie_cbm1.VAF27 = "1"
- ie_cbm1.VAF28 = "1"
- ie_cbm1.VAF29 = ""
- ie_cbm1.VAF07 = "0"
-
- ie_cbm1.VAF30 = ""
- ie_cbm1.VAF31 = "0"
-
- ie_cbm1.VAF32 = "0" //todo
- ie_cbm1.VAF33 = "0"
- ie_cbm1.VAF34 = "0"
- ie_cbm1.VAF35 = "0"
-
- tempTime1 := time.Unix(subitem.StartTime, 0)
- timeFormatOne := tempTime1.Format("2006-01-02 15:04:05")
- ie_cbm1.VAF36 = timeFormatOne
- ie_cbm1.VAF37 = "1899-12-30"
- doctor_info, _ := service.GetAdminUserInfoByID(org_id, 4270)
-
- ie_cbm1.BCE02A = doctor_info.DoctorCode
- ie_cbm1.BCE03A = doctor_info.UserName
- ie_cbm1.BCE03B = ""
- ie_cbm1.BCK01C = "38"
-
- ie_cbm1.VAF53 = "-1"
- ie_cbm1.VAF55 = subitem.Remark
- ie_cbm1.BCK01D ="38"
- ie_cbm1.VAF58 = "0"
- ie_cbm1.VAF59 = strconv.FormatInt(int64(index+1), 10)
- ie_cbm1.VAF60 = ""
- ie_cbm1.VAF61 = "1"
- ie_cbm1.VAF62 = "0"
- ie_cbm1.LSign = "0"
- ie_cbm1.BDA01A = "" //诊疗类型
- ie_cbm1.LRoute = "0"
- ie_cbm1.BCE01A = doctor_info.DoctorNumber
- ie_cbm1.BCE01B = "0"
- ie_cbm1.VAF01B = "0"
- ie_cbm1.VCO01 = "0"
- ie_cbm1.BCE01H = "0"
- ie_cbm1.BCE03H = ""
- ie_cbm1.BIW02 = ""
- ie_cbm1.RCurrent = "0"
- ie_cbm1.FCheck = "0"
- ie_cbm1.UnameA = ""
- ie_cbm1.VEH02 = ""
- vAF1.Ie = append(vAF1.Ie, ie_cbm1)
- }
- }
- }
-
- }
- root.VAF1 = vAF1
- for index, item := range big_ps[start-1 : stop] {
- sick, _ := service.FindSickById(sick_type)
- item.VMHisPrescriptionInfo.Diagnosis = "716"
- dias := strings.Split(item.VMHisPrescriptionInfo.Diagnosis, ",")
- //service.get
-
- //诊断
- for _, subitem := range dias {
- diagnosisConfig, _ := service.FindDiagnoseByIdtwo(subitem)
- if index == 0 {
- var ie_cbm1 models.IEthree
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- //ie_cbm1.CBMID = strconv.FormatInt(int64(index+1), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAA07 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.ACF01 = strconv.FormatInt(int64(li.Acf01), 10)
- ie_cbm1.VAO06 = strconv.FormatInt(int64(index+1), 10)
- ie_cbm1.VAO07 = "1"
- ie_cbm1.VAO10 = "0"
- ie_cbm1.VAO11 = "1"
- ie_cbm1.BAK01A = sick.ContentCode
- ie_cbm1.CAM01 = diagnosisConfig.ContentCode
- ie_cbm1.VAO15 = diagnosisConfig.ClassName
- ie_cbm1.VAO18 = "0"
- ie_cbm1.VAO22 = "1"
- ie_cbm1.IAA01 = ""
- ie_cbm1.IAD03 = ""
- ie_cbm1.BAK01B = ""
- ie_cbm1.VAO26 = ""
- ie_cbm1.IAD04 = ""
- ie_cbm1.IAD01 = ""
- ie_cbm1.VAO25 = "1"
- ie_cbm1.VAO35 = ""
- vAO1.Ie = append(vAO1.Ie, ie_cbm1)
-
- } else {
- var ie_cbm1 models.IEthree
- ie_cbm1.CBMID = strconv.FormatInt(int64(item.ID), 10)
- ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- ie_cbm1.VAA07 = strconv.FormatInt(int64(li.Vaa07), 10)
- ie_cbm1.ACF01 = strconv.FormatInt(int64(li.Acf01), 10)
- ie_cbm1.VAO06 = strconv.FormatInt(int64(index+1), 10)
- ie_cbm1.VAO07 = "1"
- ie_cbm1.VAO10 = "0"
- ie_cbm1.VAO11 = "1"
- ie_cbm1.BAK01A = sick.ContentCode
- ie_cbm1.CAM01 = diagnosisConfig.ContentCode
- ie_cbm1.VAO15 = diagnosisConfig.ClassName
- ie_cbm1.VAO18 = "0"
- ie_cbm1.VAO22 = "1"
- ie_cbm1.IAA01 = ""
- ie_cbm1.IAD03 = ""
- ie_cbm1.BAK01B = ""
- ie_cbm1.VAO26 = ""
- ie_cbm1.IAD04 = ""
- ie_cbm1.IAD01 = ""
- ie_cbm1.VAO25 = "2"
- ie_cbm1.VAO35 = ""
- vAO1.Ie = append(vAO1.Ie, ie_cbm1)
- }
- }
- }
- ////
- //////检验检查医嘱
- //for _, item := range prescriptions{
- // fmt.Println("6666666666666")
- // if item.Type == 2{
- // for _, subitem := range item.HisPrescriptionProject {
- // if subitem.Type == 2{
- // if subitem.HisProject.CostClassify == 3 {
- // var ie_cbm1 models.IEfour
- // ie_cbm1.VBQ01 = strconv.FormatInt(int64(item.ID), 10)
- // ie_cbm1.VAA01 = strconv.FormatInt(int64(li.Vaa01), 10)
- // ie_cbm1.VAA07 = strconv.FormatInt(int64(li.Vaa07), 10)
- // ie_cbm1.ACF01 = strconv.FormatInt(int64(li.Acf01), 10)
- // ie_cbm1.VAP01 = "0"
- // ie_cbm1.VBQ07 = "0"
- // ie_cbm1.BCK01A = departmwnt.Number
- // ie_cbm1.BCK01B= "0"
- // ie_cbm1.BCE03A= ""
- // ie_cbm1.BCE01A= "0"
- // ie_cbm1.VBQ27= subitem.HisProject.ProjectName
- // ie_cbm1.VBQ28= patientPrescription.Diagnosis
- // ie_cbm1.VBQ29= ""
- // ie_cbm1.VBQ30= ""
- // vBQ1.Ie = append(vBQ1.Ie, ie_cbm1)
- // }
- //
- // }
- //
- // }
- // }
- //}
-
- root.VAO1 = vAO1
- root.VBQ1 = vBQ1
-
- xmlStr2, err := xml.MarshalIndent(root, "", " ")
- if err != nil {
- fmt.Println("转换为XML时发生错误:", err)
- return
- }
- data := make(map[string]interface{})
- data["xmlStr"] = string(xmlStr2)
- bytesData, _ := json.Marshal(data)
- var req *http.Request
- client := &http.Client{}
- fmt.Println(string(xmlStr2))
- saveLog("", string(xmlStr2), "1111", "上传明细xml", "")
- req, _ = http.NewRequest("POST", "http://127.0.0.1:9532/"+"nmg/coordinate/upload", bytes.NewBufferString(string(bytesData)))
- resp, _ := client.Do(req)
- defer resp.Body.Close()
- body, ioErr := ioutil.ReadAll(resp.Body)
- if ioErr != nil {
- utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- return
- }
- var respJSON map[string]interface{}
- if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
- utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- return
- }
-
- respJSON3 := respJSON["data"].(map[string]interface{})["msg"].(string)
- respJSON4 := respJSON["data"].(map[string]interface{})["res"].(string)
-
- if respJSON3 == "成功" {
-
- //if li.Acf01 != 1{
- // //记账
- // result2, request2 := service.NMGSettleForCoordinate(info)
- // saveLog(result2, request2, "记账", "记账", org.OrgName)
- //
- //
- // //data := make(map[string]interface{})
- // //data["info"] = &info
- // //
- // //fmt.Println(data)
- // //
- // //bytesData, _ := json.Marshal(data)
- // //var req *http.Request
- // //
- // //client := &http.Client{}
- // //
- // //req, _ = http.NewRequest("POST", "http://192.168.100.199:9532/"+"nmg/coordinate/settle", bytes.NewReader(bytesData))
- // //resp, _ := client.Do(req)
- // //defer resp.Body.Close()
- // //body, ioErr := ioutil.ReadAll(resp.Body)
- // //if ioErr != nil {
- // // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
- // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // // return
- // //}
- // //var respJSON map[string]interface{}
- // //if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
- // // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
- // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // // return
- // //}
- // //
- // //respJSON = respJSON["data"].(map[string]interface{})["res"].(map[string]interface{})
- // //userJSONBytes, _ := json.Marshal(respJSON)
- // //
- // //var res2 ResultUpload2
- // //if err := json.Unmarshal(userJSONBytes, &res2); err != nil {
- // // utils.ErrorLog("解析失败:%v", err)
- // // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // // return
- // //}
- // //if res2.Code == 500{
- // // c.ServeSuccessJSON(map[string]interface{}{
- // // "failed_code": -10,
- // // "msg": res2.Msg,
- // // })
- // // return
- // //}
- //}
- if len(zuobiao_ids) == 0 {
- zuobiao_ids = respJSON4
- } else {
- zuobiao_ids = zuobiao_ids + "," + respJSON4
- }
-
-
-
- continue
-
- } else {
- err_msg = respJSON3
- is_upload_success = false
- if len(zuobiao_ids) > 0 {
- tm := time.Unix(time.Now().Unix(), 0)
- order := &models.HisOrder{
- PsnNo: strconv.FormatInt(int64(li.Vaa01), 10),
- UserOrgId: org_id,
- PatientId: patient_id,
- SettleAccountsDate: recordDateTime,
- Ctime: time.Now().Unix(),
- Mtime: time.Now().Unix(),
- Status: 1,
- OrderStatus: 1,
- MdtrtId: strconv.FormatInt(int64(li.Vaa07), 10),
- Number: zuobiao_ids,
- SetlId: zuobiao_ids,
- MedfeeSumamt: total,
- MedType: strconv.Itoa(int(reg_type)),
- SettleType: settle_accounts_type,
- Diagnosis: diagnosis_id,
- PType: int64(li.Acf01),
- SetlTime: tm.Format("2006-01-02 15:04:05"),
- SettleStartTime: recordStartTime,
- SettleEndTime: recordEndTime,
- }
- err = service.CreateOrder(order)
- if err != nil {
- //c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeCreateOrderException)
- return
- }
- fmt.Println(idss)
- if settle_accounts_type == 1{
-
- err = service.UpDatePrescriptionNumber222(org_id, p_id, zuobiao_ids,patient_id)
-
- }else{
- err = service.UpDatePrescriptionNumber111(org_id, recordStartTime,recordEndTime, zuobiao_ids,patient_id)
-
- }
- //err = service.UpDateHisPrescriptionInfoNumbertwo(org_id, patient_id, strconv.FormatInt(int64(li.Vaa07), 10), recordDateTime, his.ID)
- err = service.UpdataOrderStatusThreef(zuobiao_ids, org_id)
-
- var zuobiao_advice models.HisZuobiaoAdvice
- zuobiao_advice.Status = 1
- zuobiao_advice.RecordDate = recordDateTime
- zuobiao_advice.PatientId = patient_id
- zuobiao_advice.Cbm01 = zuobiao_ids
- zuobiao_advice.Ctime = time.Now().Unix()
- zuobiao_advice.Mtime = time.Now().Unix()
- zuobiao_advice.Oid = order.ID
- zuobiao_advice.StartTime = recordStartTime
- zuobiao_advice.EndTime = recordEndTime
- zuobiao_advice.Vaa01 = strconv.FormatInt(int64(li.Vaa01), 10)
- zuobiao_advice.Vaa07 = strconv.FormatInt(int64(li.Vaa07), 10)
- zuobiao_advice.UserOrgId = c.GetAdminUserInfo().CurrentOrgId
- service.Createzuobiao(&zuobiao_advice)
- }
- }
- if is_upload_success == false {
- if len(zuobiao_ids) > 0 {
- c.ServeSuccessJSON(map[string]interface{}{
- "failed_code": -10,
- "msg": "部分处方数据上传成功,可在已上传或者在坐标系统查看。其余上传失败原因: " + err_msg,
- })
- return
-
- } else {
- c.ServeSuccessJSON(map[string]interface{}{
- "failed_code": -10,
- "msg": err_msg,
- })
- return
-
- }
-
- }
- }
-
- if is_upload_success {
- if len(zuobiao_ids) > 0 {
- tm := time.Unix(time.Now().Unix(), 0)
- order := &models.HisOrder{
- PsnNo: strconv.FormatInt(int64(li.Vaa01), 10),
- UserOrgId: org_id,
- PatientId: patient_id,
- SettleAccountsDate: recordDateTime,
- Ctime: time.Now().Unix(),
- Mtime: time.Now().Unix(),
- Status: 1,
- OrderStatus: 1,
- MdtrtId: strconv.FormatInt(int64(li.Vaa07), 10),
- Number: zuobiao_ids,
- SetlId: zuobiao_ids,
- MedfeeSumamt: total,
- MedType: strconv.Itoa(int(reg_type)),
- SettleType: settle_accounts_type,
- Diagnosis: diagnosis_id,
- PType: int64(li.Acf01),
- SetlTime: tm.Format("2006-01-02 15:04:05"),
- SettleStartTime: recordStartTime,
- SettleEndTime: recordEndTime,
- }
- err = service.CreateOrder(order)
- if err != nil {
- //c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeCreateOrderException)
- return
- }
- err = service.UpDatePrescriptionNumber111(org_id, recordStartTime,recordEndTime, zuobiao_ids,patient_id)
- //err = service.UpDateHisPrescriptionInfoNumbertwo(org_id, patient_id, strconv.FormatInt(int64(li.Vaa07), 10), recordDateTime, his.ID)
- err = service.UpdataOrderStatusThreef(zuobiao_ids, org_id)
-
- var zuobiao_advice models.HisZuobiaoAdvice
- zuobiao_advice.Status = 1
- zuobiao_advice.RecordDate = recordDateTime
- zuobiao_advice.PatientId = patient_id
- zuobiao_advice.Cbm01 = zuobiao_ids
- zuobiao_advice.Ctime = time.Now().Unix()
- zuobiao_advice.Mtime = time.Now().Unix()
- zuobiao_advice.Oid = order.ID
- zuobiao_advice.StartTime = recordStartTime
- zuobiao_advice.EndTime = recordEndTime
- zuobiao_advice.Vaa01 = strconv.FormatInt(int64(li.Vaa01), 10)
- zuobiao_advice.Vaa07 = strconv.FormatInt(int64(li.Vaa07), 10)
- zuobiao_advice.UserOrgId = c.GetAdminUserInfo().CurrentOrgId
- service.Createzuobiao(&zuobiao_advice)
- }
-
- c.ServeSuccessJSON(map[string]interface{}{
- "msg": "上传成功",
- })
-
- } else {
- c.ServeSuccessJSON(map[string]interface{}{
- "failed_code": -10,
- "msg": err_msg,
- })
-
- }
- }
-
-
- //
- //zuobiao, _ := service.Getzuobiao(c.GetAdminUserInfo().CurrentOrgId, patient_id, recordDateTime)
- //
- //is_success := true
- //failed_mag := ""
- //查询出对应的坐标系统医嘱id,先进行删除操作,在创建医嘱。如果没有医嘱id,则直接创建医嘱
- //if zuobiao.ID > 0 {
- // cbm01s := strings.Split(zuobiao.Cbm01, ",")
- // fmt.Println(cbm01s)
- //
- // for _, iditem := range cbm01s {
- // fmt.Println(iditem)
- // var root2 models.Root2
- // var tradeInfo2 models.TradeInfo
- // if li.Acf01 == 1 {
- // tradeInfo2.PatSource = 1
- // tradeInfo2.Type = 0
- // } else {
- // tradeInfo2.PatSource = 2
- // tradeInfo2.Type = 1
- //
- // }
- // tradeInfo2.Detpid = departmwnt.Number
- // tradeInfo2.Empid = doctor_info.DoctorNumber
- // tradeInfo2.Empno = doctor_info.DoctorCode
- // tradeInfo2.Empname = doctor_info.UserName
- // var vaf01 models.VAF10
- // var ie1111 models.IEfive
- // ie1111.VAF01 = iditem
- // vaf01.Ie = append(vaf01.Ie, ie1111)
- // root2.TradeInfo = tradeInfo2
- // root2.VAF1 = vaf01
- // xmlStr2, err := xml.MarshalIndent(root2, "", " ")
- // if err != nil {
- // fmt.Println("转换为XML时发生错误:", err)
- // return
- // }
- // data := make(map[string]interface{})
- // data["xmlStr"] = string(xmlStr2)
- // bytesData, _ := json.Marshal(data)
- // client := &http.Client{}
- //
- // var req *http.Request
- //
- //
- // req, _ = http.NewRequest("POST", "http://192.168.100.199:9532/"+"nmg/coordinate/del", bytes.NewReader(bytesData))
- // resp, _ := client.Do(req)
- // defer resp.Body.Close()
- // body, ioErr := ioutil.ReadAll(resp.Body)
- // if ioErr != nil {
- // utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // return
- // }
- // var respJSON map[string]interface{}
- // if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
- // utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // return
- // }
- //
- // respJSON2 := respJSON["data"].(map[string]interface{})["msg"].(string)
- // fmt.Println( respJSON)
- // fmt.Println( respJSON["data"].(map[string]interface{}))
- // fmt.Println(respJSON2)
- //
- // if respJSON2 != "成功"{
- // //is_success = false
- // failed_mag = respJSON2
- // }
- // }
- //}
-
- } else {
-
- c.ServeSuccessJSON(map[string]interface{}{
- "failed_code": -10,
- "msg": res8.Msg,
- })
- }
- }
-
- type Result struct {
- ResultObj []struct {
- Vaf01 int `json:"vaf01"`
- Vaf10 int `json:"vaf10"`
- } `json:"resultObj"`
- Result bool `json:"result"`
- Code int `json:"code"`
- ResultMsg string `json:"resultMsg"`
- Msg string `json:"msg"`
- Error bool `json:"error"`
- Success bool `json:"success"`
- }
-
- func (c *CoordinateController) NMGCancelSettleAccount() {
- zuobiao_id, _ := c.GetInt64("id")
- zuobiao, _ := service.Getzuobiaobyid(zuobiao_id)
-
- admin_user_id, _ := c.GetInt64("admin_user_id")
- order, _ := service.GetHisOrderByID(zuobiao.Oid)
- admin_user_info, _ := service.GetAdminUserInfoByID(order.UserOrgId, admin_user_id)
-
- is_success := true
- var failed_mag string
- if zuobiao.ID > 0 {
- cbm01s := strings.Split(zuobiao.Cbm01, ",")
- var p_type int64
- //for _, iditem := range cbm01s{
- if order.PType == 1 {
- p_type = 1
- } else {
- p_type = 2
- }
-
- is_del := true
-
- for _, iditem := range cbm01s {
- var vaf01List []string
- a, _ := service.QueryNMGPrescriptionForCoordinate(p_type, vaf01List, iditem)
- var result Result
- err := json.Unmarshal([]byte(a), &result)
- fmt.Println("Error:", result)
- fmt.Println("Error:", err)
-
- if err != nil {
- fmt.Println("Error:", err)
- return
- }
- for _,item := range result.ResultObj{
- if item.Vaf10 != 4 {
- is_del = false
- }
-
- }
- }
- if is_del{
- err := service.UpdataOrderStatustwo(order.ID, zuobiao.Cbm01, order.UserOrgId)
- zuobiao.Status = 0
- service.Createzuobiao(&zuobiao)
- if err == nil {
- c.ServeSuccessJSON(map[string]interface{}{
- "msg": "撤销记账成功",
- })
- } else {
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- return
- }
- c.ServeSuccessJSON(map[string]interface{}{
- "msg": "撤销成功",
- })
-
-
- }else{
- for _, iditem := range cbm01s {
-
- var root2 models.Root2
- var tradeInfo2 models.TradeInfo
- if order.PType == 1 {
- tradeInfo2.PatSource = 1
- tradeInfo2.Type = 0
- } else {
- tradeInfo2.PatSource = 2
- tradeInfo2.Type = 1
- }
- tradeInfo2.Detpid = "38"
- tradeInfo2.Empid = admin_user_info.DoctorNumber
- tradeInfo2.Empno = admin_user_info.DoctorCode
- tradeInfo2.Empname = admin_user_info.UserName
- var vaf01 models.VAF10
- var ie1111 models.IEfive
- ie1111.VAF01 = iditem
- vaf01.Ie = append(vaf01.Ie, ie1111)
- root2.TradeInfo = tradeInfo2
- root2.VAF1 = vaf01
- xmlStr2, err := xml.MarshalIndent(root2, "", " ")
- if err != nil {
- fmt.Println("转换为XML时发生错误:", err)
- return
- }
- data := make(map[string]interface{})
- data["xmlStr"] = string(xmlStr2)
- bytesData, _ := json.Marshal(data)
- client := &http.Client{}
-
- var req *http.Request
-
- req, _ = http.NewRequest("POST", "http://127.0.0.1:9532/"+"nmg/coordinate/del", bytes.NewReader(bytesData))
- resp, _ := client.Do(req)
- defer resp.Body.Close()
- body, ioErr := ioutil.ReadAll(resp.Body)
- if ioErr != nil {
- utils.ErrorLog("接口返回数据读取失败: %v", ioErr)
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- return
- }
- var respJSON map[string]interface{}
- if err := json.Unmarshal([]byte(body), &respJSON); err != nil {
- utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- return
- }
-
- respJSON2 := respJSON["data"].(map[string]interface{})["msg"].(string)
-
- if respJSON2 != "成功" {
- is_success = false
- if len(failed_mag) == 0 {
- failed_mag = respJSON2
- } else {
- failed_mag = failed_mag + "---" + respJSON2
- }
- }
- if strings.Contains(failed_mag, "医嘱已执行收款,不允许在取消医嘱") {
- is_success = false
- }
-
- }
- if is_success {
- err := service.UpdataOrderStatustwo(order.ID, zuobiao.Cbm01, order.UserOrgId)
- zuobiao.Status = 0
- service.Createzuobiao(&zuobiao)
- if err == nil {
- c.ServeSuccessJSON(map[string]interface{}{
- "msg": "撤销记账成功",
- })
- } else {
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- return
- }
- c.ServeSuccessJSON(map[string]interface{}{
- "msg": "撤销成功",
- })
-
- } else {
- c.ServeSuccessJSON(map[string]interface{}{
- "failed_code": -10,
- "msg": failed_mag,
- })
- }
-
- }
-
-
- //} else {
- // c.ServeSuccessJSON(map[string]interface{}{
- // "failed_code": -10,
- // "msg": "查询不到可删除的数据",
- // })
- //}
- }
-
- }
-
- //func (c *CoordinateController)NMGgetcheck(){
- // patient_id, _ := c.GetInt64("patient_id")
- // record_date := c.GetString("record_date")
- // admin_user_id, _ := c.GetInt64("admin_user_id")
- // //diagnosis_id := c.GetString("diagnosis")
- // //sick_type, _ := c.GetInt64("sick_type")
- // //reg_type, _ := c.GetInt64("p_type")
- // org_id, _ := c.GetInt64("org_id")
- // org_id = 10454
- // org, _ := service.GetOrgById(org_id)
- // patient, _ := service.GetPatientByID(org.Id, patient_id)
- // settle_accounts_type, _ := c.GetInt64("settle_accounts_type")
- // result, request := service.GetNMGHisPatientForCoordinate(0,0,2,patient.Name)
- // result5, request5 := service.GetNMGHisPatientForCoordinate(0,0,1,patient.Name)
- //
- // saveLog(result, request, "查询", "查询", "")
- // saveLog(result5, request5, "查询", "查询", "")
- //
- // var res Data
- // if err := json.Unmarshal([]byte(result), &res); err != nil {
- // utils.ErrorLog("解析失败:%v", err)
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // return
- // }
- //
- // var res8 Data
- // if err := json.Unmarshal([]byte(result5), &res8); err != nil {
- // utils.ErrorLog("解析失败:%v", err)
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // return
- // }
- //
- // if res.Code == 200 || res8.Code == 200 {
- // var res9 Data
- // res9.List = append(res9.List,res.List...)
- // res9.List = append(res9.List,res8.List...)
- //
- //
- // var li ListItem
- // for _, item := range res9.List{
- // cure_date := strings.Split(item.Vae11, " ")
- // if cure_date[0] == record_date && patient.Name == item.Vaa05{
- // li = item
- // }
- // }
- // fmt.Println("11111111")
- // fmt.Println(li)
- // fmt.Println("11111111")
- // timeLayout := "2006-01-02"
- // loc, _ := time.LoadLocation("Local")
- // theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_date+" 00:00:00", loc)
- // if err != nil {
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
- // return
- // }
- // org_id := org.Id
- // recordDateTime := theTime.Unix()
- // patientPrescription, _ := service.FindPatientPrescriptionInfoTwo(org_id, patient.ID, recordDateTime, 2)
- // if patientPrescription.ID == 0 {
- // patientPrescription, _ = service.FindLastPatientPrescriptionInfo(org_id, patient.ID, recordDateTime)
- // }
- // //departmwnt, _ := service.GetDepartMentDetail(patientPrescription.Departments)
- // //admin_user_info, _ := service.GetAdminUserInfoByID(org_id, admin_user_id)
- // //doctor_info, _ := service.GetAdminUserInfoByID(org_id, patientPrescription.DoctorId)
- //
- //
- //
- //
- // //service.QueryNMGChenckForCoordinate(li.Acf01,li.Vaa01,li.Vaa07,"")
- //
- //
- // } else {
- // c.ServeSuccessJSON(map[string]interface{}{
- // "failed_code": -10,
- // "msg": res.Msg,
- // })
- // }
- //
- //
- //}
-
- //func (c *CoordinateController) SettleAccount() {
- // patient_id, _ := c.GetInt64("patient_id")
- // record_date := c.GetString("record_date")
- // admin_user_id, _ := c.GetInt64("admin_user_id")
- // diagnosis_id := c.GetString("diagnosis")
- // sick_type, _ := c.GetInt64("sick_type")
- // reg_type, _ := c.GetInt64("p_type")
- // org_id, _ := c.GetInt64("org_id")
- // org_id = 3877
- // org, _ := service.GetOrgById(org_id)
- // patient, _ := service.GetPatientByID(org.Id, patient_id)
- // settle_accounts_type, _ := c.GetInt64("settle_accounts_type")
- //
- // result, request := service.GetHisPatientForCoordinate(patient.IdCardNo)
- // saveLog(result, request, "查询", "查询", org.OrgName)
- // var res ResultQuery
- // if err := json.Unmarshal([]byte(result), &res); err != nil {
- // utils.ErrorLog("解析失败:%v", err)
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // return
- // }
- // if res.Code == "10000" {
- // if len(res.Result) == 0 {
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeHisPatientNoRegException)
- // return
- // }
- // timeLayout := "2006-01-02"
- // loc, _ := time.LoadLocation("Local")
- // theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_date+" 00:00:00", loc)
- // if err != nil {
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
- // return
- // }
- // org_id := org.Id
- // recordDateTime := theTime.Unix()
- // patientPrescription, _ := service.FindPatientPrescriptionInfoTwo(org_id, patient.ID, recordDateTime, 2)
- // if patientPrescription.ID == 0 {
- // patientPrescription, _ = service.FindLastPatientPrescriptionInfo(org_id, patient.ID, recordDateTime)
- // }
- // departmwnt, _ := service.GetDepartMentDetail(patientPrescription.Departments)
- // doctor_info, _ := service.GetAdminUserInfoByID(org_id, patientPrescription.DoctorId)
- // //admin_user_info, _ := service.GetAdminUserInfoByID(org_id, admin_user_id)
- //
- // var prescriptions []*models.HisPrescription
- //
- // if settle_accounts_type == 1 { //日结
- // prescriptions, _ = service.GetUnSettleHisPrescriptionFive(org_id, patient_id, recordDateTime, 2)
- // } else { //月结
- //
- // start_time_str := c.GetString("start_time")
- // end_time_str := c.GetString("end_time")
- // timeLayout := "2006-01-02"
- // loc, _ := time.LoadLocation("Local")
- // theStartTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time_str+" 00:00:00", loc)
- // if err != nil {
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
- // return
- // }
- // recordStartTime := theStartTime.Unix()
- // theEndTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time_str+" 00:00:00", loc)
- // if err != nil {
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
- // return
- // }
- // recordEndTime := theEndTime.Unix()
- // prescriptions, _ = service.GetUnSettleMonthHisPrescription(org_id, patient_id, recordStartTime, recordEndTime)
- // }
- // var total float64
- //
- // for _, item := range prescriptions {
- // fmt.Println(item)
- // if item.Type == 1 { //药品
- // for _, subItem := range item.HisDoctorAdviceInfo {
- // total = total + (subItem.Price * subItem.PrescribingNumber)
- // }
- // }
- // if item.Type == 2 { //项目
- // for _, subItem := range item.HisPrescriptionProject {
- // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- // total = total + (subItem.Price * cnt)
- // }
- // }
- //
- // }
- //
- // var ids []int64
- //
- // for _, item := range prescriptions {
- // ids = append(ids, item.ID)
- // }
- //
- // var customs []*models.NewCustomTwo
- // for _, item := range prescriptions {
- // if item.Type == 1 { //药品
- // for _, subItem := range item.HisDoctorAdviceInfo {
- // cus := &models.NewCustomTwo{
- // AdviceId: subItem.ID,
- // ProjectId: 0,
- // DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*subItem.PrescribingNumber),
- // Cut: fmt.Sprintf("%.4f", subItem.PrescribingNumber),
- // FeedetlSn: subItem.FeedetlSn,
- // Price: fmt.Sprintf("%.2f", subItem.Price),
- // MedListCodg: subItem.BaseDrugLib.MedicalInsuranceNumber,
- // Type: 1,
- // }
- // customs = append(customs, cus)
- // }
- // }
- // if item.Type == 2 { //项目
- // for _, subItem := range item.HisPrescriptionProject {
- // if subItem.Type == 2 {
- // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- // cus := &models.NewCustomTwo{
- // AdviceId: 0,
- // ProjectId: subItem.ID,
- // DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*cnt),
- // Cut: fmt.Sprintf("%.4f", cnt),
- // FeedetlSn: subItem.FeedetlSn,
- // Price: fmt.Sprintf("%.4f", float64(subItem.Price)),
- // MedListCodg: subItem.HisProject.MedicalCode,
- // Type: 2,
- // }
- // customs = append(customs, cus)
- //
- // } else {
- // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- // cus := &models.NewCustomTwo{
- // AdviceId: 0,
- // ProjectId: subItem.ID,
- // DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*cnt),
- // Cut: fmt.Sprintf("%.4f", cnt),
- // FeedetlSn: subItem.FeedetlSn,
- // Price: fmt.Sprintf("%.4f", float64(subItem.Price)),
- // MedListCodg: subItem.GoodInfo.MedicalInsuranceNumber,
- // Type: 3,
- // }
- // customs = append(customs, cus)
- // }
- //
- // }
- // }
- // }
- //
- // var info models.UploadInfo
- // info.Vaa01 = int64(res.Result[0].Vaa01)
- // info.Fasong = "1"
- // info.Vaa07 = int64(res.Result[0].Vaa07)
- // info.Bck01c = departmwnt.Number
- // info.Bce02a = doctor_info.DoctorNumber
- //
- // diagnosis_ids := strings.Split(patientPrescription.Diagnosis, ",")
- // var config []*models.HisXtDiagnoseConfig
- // for _, item := range diagnosis_ids {
- // id, _ := strconv.ParseInt(item, 10, 64)
- // diagnosisConfig, _ := service.FindDiagnoseById(id)
- // config = append(config, &diagnosisConfig)
- // }
- // for index, item := range config {
- // var diag models.Diag
- // diag.Vao06 = strconv.FormatInt(int64(index+1), 10)
- // diag.Bak02 = item.CountryCode
- // info.Diag = append(info.Diag, &diag)
- // }
- // var presInfos []*models.PresInfo
- // var presDetails []*models.PresDetail
- // for index, item := range prescriptions {
- // var presDetail models.PresDetail
- // var presInfo models.PresInfo
- // presInfo.Cbmid = strconv.FormatInt(item.ID, 10)
- // if item.Type == 1 {
- // presInfo.Cbm06 = "0"
- // } else {
- // presInfo.Cbm06 = "5"
- // }
- //
- // if item.Type == 1 {
- // presInfo.Cbm07 = item.MedType
- // } else {
- // presInfo.Cbm07 = item.MedType
- // }
- //
- // presDetail.Vaf59 = strconv.FormatInt(int64(index+1), 10)
- // var infoItems []*models.Item
- // for _, subItem := range item.HisDoctorAdviceInfo {
- // ef, _ := service.GetExecutionFrequencyByName(subItem.ExecutionFrequency, subItem.UserOrgId)
- //
- // var infoItem models.Item
- // infoItem.Rownr = "0"
- // infoItem.Vaf11 = "1"
- // infoItem.Vaf36 = time.Unix(subItem.ExecutionTime, 0).Format("2006-01-02 15:04:05")
- // infoItem.Bbx01 = subItem.BaseDrugLib.MedicalInsuranceNumber
- // infoItem.Bda01 = "1"
- // infoItem.Bby01 = ""
- // if subItem.BaseDrugLib.MinUnit != subItem.BaseDrugLib.DoseUnit {
- // infoItem.Vaf22 = subItem.BaseDrugLib.DrugName + " " + subItem.BaseDrugLib.Dose + subItem.BaseDrugLib.DoseUnit + "*" + strconv.FormatInt(subItem.BaseDrugLib.MinNumber, 10) + subItem.BaseDrugLib.MinUnit + "/" + subItem.BaseDrugLib.MaxUnit
- // }
- // infoItem.Vaf14 = subItem.BaseDrugLib.DrugName
- // infoItem.Bdi01 = ef.Code
- // infoItem.Vaf17 = strconv.FormatInt(subItem.Day, 10)
- // infoItem.Vaf20 = fmt.Sprintf("%.2f", subItem.SingleDose)
- // infoItem.Vaf21 = fmt.Sprintf("%.2f", subItem.PrescribingNumber)
- // infoItem.Vaf35 = "0"
- // infoItem.Vaf32 = "0"
- // infoItem.Bck01b = departmwnt.Number
- // infoItem.Bck01d = departmwnt.Number
- // infoItem.Vaf58 = "0"
- // infoItem.Vaf61 = "1"
- // infoItems = append(infoItems, &infoItem)
- // }
- // for _, subItem := range item.HisPrescriptionProject {
- // ef, _ := service.GetExecutionFrequencyByName(subItem.ExecutionFrequency, subItem.UserOrgId)
- //
- // if subItem.Type == 2 {
- // var infoItem models.Item
- // infoItem.Rownr = "0"
- // infoItem.Vaf11 = "1"
- // infoItem.Vaf36 = time.Unix(subItem.ExecutionTime, 0).Format("2006-01-02 15:04:05")
- // infoItem.Bbx01 = subItem.HisProject.MedicalCode
- //
- // if subItem.HisProject.CostClassify == 2 {
- // infoItem.Bda01 = "T"
- // } else if subItem.HisProject.CostClassify == 3 {
- // infoItem.Bda01 = "L"
- // } else {
- // infoItem.Bda01 = "T"
- // }
- // infoItem.Bby01 = ""
- // infoItem.Vaf22 = subItem.HisProject.ProjectName
- // infoItem.Bdi01 = ef.Code
- // infoItem.Vaf17 = subItem.Day
- // infoItem.Vaf20 = fmt.Sprintf("%.2f", subItem.SingleDose)
- // infoItem.Vaf21 = fmt.Sprintf("%.2f", subItem.Count)
- // infoItem.Vaf35 = "0"
- // infoItem.Vaf18 = "0"
- // infoItem.Vaf32 = "0"
- // infoItem.Bck01b = departmwnt.Number
- // infoItem.Bck01d = departmwnt.Number
- // infoItem.Vaf58 = "0"
- // infoItem.Vaf61 = "1"
- // infoItems = append(infoItems, &infoItem)
- //
- // } else {
- // var infoItem models.Item
- // infoItem.Rownr = "0"
- // infoItem.Vaf11 = "1"
- // infoItem.Vaf36 = time.Unix(subItem.ExecutionTime, 0).Format("2006-01-02 15:04:05")
- // infoItem.Bbx01 = subItem.GoodInfo.MedicalInsuranceNumber
- // infoItem.Bda01 = "M"
- // infoItem.Bby01 = ""
- // infoItem.Vaf22 = subItem.GoodInfo.GoodName + " " + subItem.GoodInfo.SpecificationName
- // infoItem.Bdi01 = ef.Code
- // infoItem.Vaf17 = subItem.Day
- // infoItem.Vaf20 = fmt.Sprintf("%.2f", subItem.SingleDose)
- // infoItem.Vaf21 = fmt.Sprintf("%.2f", subItem.Count)
- // infoItem.Vaf35 = "0"
- // infoItem.Vaf32 = "0"
- // infoItem.Bck01b = departmwnt.Number
- // infoItem.Bck01d = departmwnt.Number
- // infoItem.Vaf58 = "0"
- // infoItem.Vaf61 = "1"
- // infoItems = append(infoItems, &infoItem)
- //
- // }
- //
- // }
- // presDetail.Item = infoItems
- // presDetails = append(presDetails, &presDetail)
- // presInfo.PresDetail = presDetails
- // presInfos = append(presInfos, &presInfo)
- // }
- // info.PresInfo = presInfos
- //
- // result2, request2 := service.UploadPrescriptionForCoordinate(info)
- // saveLog(result2, request2, "上传明细", "上传明细", org.OrgName)
- //
- // var res2 ResultUpload
- // if err := json.Unmarshal([]byte(result2), &res2); err != nil {
- // utils.ErrorLog("解析失败:%v", err)
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // return
- // }
- // if res2.Code == "10000" {
- //
- // timestamp := time.Now().Unix()
- // tempTime := time.Unix(timestamp, 0)
- // timeFormat := tempTime.Format("20060102150405")
- // chrgBchno := rand.Intn(100000) + 10000
- // ipt_otp_no := timeFormat + strconv.FormatInt(int64(chrgBchno), 10) + strconv.FormatInt(patient.ID, 10)
- // his := models.VMHisPatient{
- // Name: patient.Name,
- // Gender: patient.Gender,
- // Birthday: patient.Birthday,
- // MedicalTreatmentType: 0,
- // IdType: 1,
- // IdCardNo: patient.IdCardNo,
- // BalanceAccountsType: 1,
- // MedicalInsuranceNumber: "",
- // RegisterType: 0,
- // RegisterCost: 0,
- // TreatmentCost: 0,
- // Status: 1,
- // Ctime: time.Now().Unix(),
- // Mtime: time.Now().Unix(),
- // PsnNo: strconv.FormatInt(int64(res.Result[0].Vaa01), 10),
- // PsnCertType: "",
- // Certno: patient.IdCardNo,
- // PsnName: patient.Name,
- // Gend: "",
- // Naty: "",
- // Brdy: "",
- // Age: 0,
- // Iinfo: "",
- // Idetinfo: "",
- // PatientId: patient.ID,
- // RecordDate: theTime.Unix(),
- // UserOrgId: org_id,
- // AdminUserId: admin_user_id,
- // IsReturn: 1,
- // Doctor: patientPrescription.DoctorId,
- // Departments: patientPrescription.Departments,
- // IptOtpNo: ipt_otp_no,
- // Number: strconv.FormatInt(int64(res.Result[0].Vaa07), 10),
- // PhoneNumber: patient.Phone,
- // }
- // service.UpdateHisPatientStatusten(&his)
- // service.UpdateHisPrescriptionHisID(his.ID, patient.ID, recordDateTime, org_id)
- // tm := time.Unix(time.Now().Unix(), 0)
- //
- // order := &models.HisOrder{
- // PsnNo: his.PsnNo,
- // UserOrgId: org_id,
- // HisPatientId: his.ID,
- // PatientId: patient_id,
- // SettleAccountsDate: recordDateTime,
- // Ctime: time.Now().Unix(),
- // Mtime: time.Now().Unix(),
- // Status: 1,
- // OrderStatus: 1,
- // MdtrtId: his.Number,
- // Number: ipt_otp_no,
- // SetlId: "",
- // MedfeeSumamt: total,
- // MedType: strconv.Itoa(int(reg_type)),
- // SettleEndTime: 0,
- // SettleStartTime: 0,
- // SettleType: settle_accounts_type,
- // Diagnosis: diagnosis_id,
- // PType: 2,
- // SetlTime: tm.Format("2006-01-02 15:04:05"),
- // }
- // err = service.CreateOrder(order)
- // if err != nil {
- // //c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeCreateOrderException)
- // return
- // }
- //
- // for _, item := range customs {
- // var advice_id int64 = 0
- // var project_id int64 = 0
- // var item_id int64 = 0
- //
- // var types int64 = 0
- //
- // if item.Type == 1 {
- // advice_id = item.AdviceId
- // project_id = 0
- // item_id = 0
- // } else if item.Type == 2 {
- // advice_id = 0
- // item_id = 0
- //
- // project_id = item.ProjectId
- // } else if item.Type == 3 {
- // advice_id = 0
- // item_id = item.ItemId
- // project_id = 0
- // }
- // detItemFeeSumamt, _ := strconv.ParseFloat(item.DetItemFeeSumamt, 32)
- // cut, _ := strconv.ParseFloat(item.Cut, 32)
- // pric, _ := strconv.ParseFloat(item.Price, 32)
- // info := &models.HisOrderInfo{
- // OrderNumber: order.Number,
- // UploadDate: time.Now().Unix(),
- // AdviceId: advice_id,
- // DetItemFeeSumamt: detItemFeeSumamt,
- // Cnt: cut,
- // Pric: pric,
- // PatientId: patient_id,
- // Status: 1,
- // Mtime: time.Now().Unix(),
- // Ctime: time.Now().Unix(),
- // UserOrgId: org_id,
- // HisPatientId: his.ID,
- // OrderId: order.ID,
- // ProjectId: project_id,
- // Type: types,
- // ItemId: item_id,
- // }
- // service.CreateOrderInfo(info)
- // }
- // his.Diagnosis = diagnosis_id
- // his.SickType = sick_type
- // his.RegisterType = reg_type
- // his.MedicalTreatmentType = reg_type
- // service.UpdataHisPateintTwo(&his)
- // err = service.UpDatePrescriptionNumber(org_id, ids, strconv.FormatInt(int64(chrgBchno), 10))
- // err = service.UpDateHisPrescriptionInfoNumbertwo(org_id, patient_id, strconv.FormatInt(int64(chrgBchno), 10), recordDateTime, his.ID)
- // err = service.UpdataOrderStatusThreef(strconv.FormatInt(int64(chrgBchno), 10), org_id)
- //
- // c.ServeSuccessJSON(map[string]interface{}{
- // "msg": "医嘱保存成功",
- // })
- //
- // } else {
- // c.ServeSuccessJSON(map[string]interface{}{
- // "failed_code": -10,
- // "msg": res.Msg,
- // })
- //
- // }
- //
- // } else {
- // c.ServeSuccessJSON(map[string]interface{}{
- // "failed_code": -10,
- // "msg": res.Msg,
- // })
- //
- // }
- //
- //}
-
- func (c *CoordinateController) Settle() {
- //参数1 patient_id
- //参数2 就诊号
- //参数3 单据id
- fmt.Println(c.Ctx.Request.Body)
- body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
- fmt.Println(string(body))
-
- var respJSON map[string]interface{}
- if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
- utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
- return
- }
- patien_id := respJSON["vaa01"].(float64)
- infoSeq := respJSON["vaa07"].(float64)
-
- //strconv.For(patien_id, 10)
-
- vaa001 := fmt.Sprintf("%f", patien_id)
- vaa007 := fmt.Sprintf("%f", infoSeq)
-
- setl_id := respJSON["setl_id"].(string)
- order, _ := service.GetHisOrderFour(vaa001, vaa007, "")
- order.SetlId = setl_id
- if order.ID == 0 {
- json := make(map[string]interface{})
- json["msg"] = "结算记录不存在,请检查参数是否正确"
- json["code"] = "-1"
- c.Data["json"] = json
- c.ServeJSON()
- return
- }
- order.OrderStatus = 2
- service.UpDateOrder(order)
- service.UpdataOrderStatusTwo(order.Number, order.UserOrgId)
- json := make(map[string]interface{})
- json["msg"] = "结算成功"
- json["code"] = "0"
- c.Data["json"] = json
- c.ServeJSON()
- return
- }
- func (c *CoordinateController) Refund() {
- //参数1 patient_id
- //参数2 就诊号
- //参数3 单据id
- body, _ := ioutil.ReadAll(c.Ctx.Request.Body)
- var respJSON map[string]interface{}
- if err := json.Unmarshal([]byte(string(body)), &respJSON); err != nil {
- utils.ErrorLog("接口返回数据解析JSON失败: %v", err)
- return
- }
- patien_id := respJSON["vaa01"].(float64)
- infoSeq := respJSON["vaa07"].(float64)
- //strconv.For(patien_id, 10)
- vaa001 := fmt.Sprintf("%f", patien_id)
- vaa007 := fmt.Sprintf("%f", infoSeq)
- docId := respJSON["setl_id"].(string)
- order, _ := service.GetHisOrderFour(vaa001, vaa007, docId)
- if order.ID == 0 {
- json := make(map[string]interface{})
- json["msg"] = "结算记录不存在,请检查参数是否正确"
- json["code"] = "-1"
- c.Data["json"] = json
- c.ServeJSON()
- return
- }
- service.UpdataOrderStatustwo(order.ID, order.Number, order.UserOrgId)
- json := make(map[string]interface{})
- json["msg"] = "退费成功"
- json["code"] = "0"
- c.Data["json"] = json
- c.ServeJSON()
- return
- }
-
- func (c *CoordinateController) SavePatientMessageInfo() {
- result, request_log := service.SavePatientMessageInfo()
- fmt.Println(result)
- fmt.Println(request_log)
-
- }
- func (c *CoordinateController) checkpatient() {
-
- }
- func (c *CoordinateController) Register() {
- patient_id, _ := c.GetInt64("patient_id")
- diagnosis_time := c.GetString("diagnosis_time")
- record_date := c.GetString("record_date")
- admin_user_id, _ := c.GetInt64("admin_user_id")
- org_id, _ := c.GetInt64("org_id")
- patient, _ := service.GetPatientByID(org_id, patient_id)
- org, _ := service.GetOrgById(org_id)
-
- timeLayout := "2006-01-02"
- loc, _ := time.LoadLocation("Local")
- theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_date+" 00:00:00", loc)
- if err != nil {
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
- return
- }
- if len(patient.ZbPatientId) == 0 {
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorPsnNoEmpty)
- return
- }
-
- recordDateTime := theTime.Unix()
- patientPrescription, _ := service.FindPatientPrescriptionInfoTwo(org_id, patient.ID, recordDateTime, 2)
- if patientPrescription.ID == 0 {
- patientPrescription, _ = service.FindLastPatientPrescriptionInfo(org_id, patient.ID, recordDateTime)
- }
- doctor_info, _ := service.GetAdminUserInfoByID(org_id, patientPrescription.DoctorId)
- admin_user_info, _ := service.GetAdminUserInfoByID(org_id, admin_user_id)
- reg := models.Reg{
- DeptId: "0112",
- PatientId: patient.ZbPatientId,
- PatientName: patient.Name,
- DoctorId: doctor_info.DoctorNumber,
- RegDate: strings.Split(diagnosis_time, " ")[0],
- RegFee: "0",
- TreatFee: "0",
- OperatorId: admin_user_info.UserName,
- IdCardNo: patient.IdCardNo,
- }
-
- result, request_log := service.SaveReg(reg)
- fmt.Println(result)
- fmt.Println(request_log)
- saveLog(result, request_log, "登记", "登记", org.OrgName)
- var res ResultReg
- if err := json.Unmarshal([]byte(result), &res); err != nil {
- utils.ErrorLog("解析失败:%v", err)
- c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- return
- }
- if res.ResultCode == "0" {
- timestamp := time.Now().Unix()
- tempTime := time.Unix(timestamp, 0)
- timeFormat := tempTime.Format("20060102150405")
- chrgBchno := rand.Intn(100000) + 10000
- ipt_otp_no := timeFormat + strconv.FormatInt(int64(chrgBchno), 10) + strconv.FormatInt(patient.ID, 10)
- his := models.VMHisPatient{
- Name: patient.Name,
- Gender: patient.Gender,
- Birthday: patient.Birthday,
- MedicalTreatmentType: 0,
- IdType: 1,
- IdCardNo: patient.IdCardNo,
- BalanceAccountsType: 1,
- MedicalInsuranceNumber: "",
- RegisterType: 0,
- RegisterCost: 0,
- TreatmentCost: 0,
- Status: 1,
- Ctime: time.Now().Unix(),
- Mtime: time.Now().Unix(),
- PsnNo: patient.ZbPatientId,
- PsnCertType: "",
- Certno: patient.IdCardNo,
- PsnName: patient.Name,
- Gend: "",
- Naty: "",
- Brdy: "",
- Age: 0,
- Iinfo: "",
- Idetinfo: "",
- PatientId: patient.ID,
- RecordDate: theTime.Unix(),
- UserOrgId: org_id,
- AdminUserId: admin_user_id,
- IsReturn: 1,
- Doctor: patientPrescription.DoctorId,
- Departments: patientPrescription.Departments,
- IptOtpNo: ipt_otp_no,
- Number: res.InfoSeq,
- PhoneNumber: patient.Phone,
- }
- service.UpdateHisPatientStatus(&his)
- service.UpdateHisPrescriptionHisID(his.ID, patient.ID, recordDateTime, org_id)
- c.ServeSuccessJSON(map[string]interface{}{
- "his_info": his,
- })
- } else {
-
- c.ServeSuccessJSON(map[string]interface{}{
- "failed_code": -10,
- "msg": res.ResultDesc,
- })
-
- }
- }
-
- //func (c *CoordinateController) GetWaitPayDetail() {
- // result, request_log := service.GetWaitPayDetail()
- // fmt.Println(result)
- // fmt.Println(request_log)
- //
- //}
-
- //func (c *CoordinateController) OpKeepAccounts() {
- // id, _ := c.GetInt64("id")
- // record_time := c.GetString("record_time")
- // his_patient_id, _ := c.GetInt64("his_patient_id")
- // timeLayout := "2006-01-02"
- // loc, _ := time.LoadLocation("Local")
- // settle_accounts_type, _ := c.GetInt64("settle_accounts_type")
- // fapiao_code := c.GetString("fapiao_code")
- // fapiao_number := c.GetString("fapiao_number")
- // diagnosis_id := c.GetString("diagnosis")
- // sick_type, _ := c.GetInt64("sick_type")
- // reg_type, _ := c.GetInt64("p_type")
- // org_id, _ := c.GetInt64("org_id")
- // org, _ := service.GetOrgById(org_id)
- //
- // his, _ := service.GetHisPatientByIdThree(his_patient_id)
- //
- // theTime, err := time.ParseInLocation(timeLayout+" 15:04:05", record_time+" 00:00:00", loc)
- // if err != nil {
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
- // return
- // }
- // recordDateTime := theTime.Unix()
- // //adminUser := c.GetAdminUserInfo()
- // var prescriptions []*models.HisPrescription
- // var start_time int64
- // var end_time int64
- //
- // //ids_str := c.GetString("ids")
- // //ids_arr := strings.Split(ids_str, ",")
- //
- // if settle_accounts_type == 1 { //日结
- // //fmt.Println(reg_type)
- // prescriptions, _ = service.GetUnSettleHisPrescriptionFive(org_id, id, recordDateTime, 2)
- //
- // } else { //月结
- //
- // start_time_str := c.GetString("start_time")
- // end_time_str := c.GetString("end_time")
- // timeLayout := "2006-01-02"
- // loc, _ := time.LoadLocation("Local")
- // theStartTime, err := time.ParseInLocation(timeLayout+" 15:04:05", start_time_str+" 00:00:00", loc)
- // if err != nil {
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
- // return
- // }
- // recordStartTime := theStartTime.Unix()
- // start_time = recordStartTime
- // theEndTime, err := time.ParseInLocation(timeLayout+" 15:04:05", end_time_str+" 00:00:00", loc)
- // if err != nil {
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeParamWrong)
- // return
- // }
- // recordEndTime := theEndTime.Unix()
- // end_time = recordEndTime
- // prescriptions, _ = service.GetUnSettleMonthHisPrescription(org_id, id, recordStartTime, recordEndTime)
- // }
- //
- // timestamp := time.Now().Unix()
- // tempTime := time.Unix(timestamp, 0)
- // timeFormat := tempTime.Format("20060102150405")
- // chrgBchno := rand.Intn(100000) + 10000
- // chrg_bchno := timeFormat + strconv.FormatInt(int64(chrgBchno), 10) + strconv.FormatInt(his.PatientId, 10)
- // strconv.FormatInt(his.PatientId, 10)
- //
- // var ids []int64
- //
- // for _, item := range prescriptions {
- // ids = append(ids, item.ID)
- // }
- // var total float64
- //
- // for _, item := range prescriptions {
- // fmt.Println(item)
- // if item.Type == 1 { //药品
- // for _, subItem := range item.HisDoctorAdviceInfo {
- // total = total + (subItem.Price * subItem.PrescribingNumber)
- // }
- // }
- // if item.Type == 2 { //项目
- // for _, subItem := range item.HisPrescriptionProject {
- // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- // total = total + (subItem.Price * cnt)
- // }
- // }
- //
- // for _, subItem := range item.HisAdditionalCharge {
- // total = total + (subItem.Price * float64(subItem.Count))
- // }
- // }
- //
- // tm := time.Unix(time.Now().Unix(), 0)
- //
- // var customs []*models.NewCustomTwo
- // for _, item := range prescriptions {
- // if item.Type == 1 { //药品
- // for _, subItem := range item.HisDoctorAdviceInfo {
- // cus := &models.NewCustomTwo{
- // AdviceId: subItem.ID,
- // ProjectId: 0,
- // DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*subItem.PrescribingNumber),
- // Cut: fmt.Sprintf("%.4f", subItem.PrescribingNumber),
- // FeedetlSn: subItem.FeedetlSn,
- // Price: fmt.Sprintf("%.2f", subItem.Price),
- // MedListCodg: subItem.BaseDrugLib.MedicalInsuranceNumber,
- // Type: 1,
- // }
- // customs = append(customs, cus)
- // }
- // }
- // if item.Type == 2 { //项目
- // for _, subItem := range item.HisPrescriptionProject {
- // if subItem.Type == 2 {
- // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- // cus := &models.NewCustomTwo{
- // AdviceId: 0,
- // ProjectId: subItem.ID,
- // DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*cnt),
- // Cut: fmt.Sprintf("%.4f", cnt),
- // FeedetlSn: subItem.FeedetlSn,
- // Price: fmt.Sprintf("%.4f", float64(subItem.Price)),
- // MedListCodg: subItem.HisProject.MedicalCode,
- // Type: 2,
- // }
- // customs = append(customs, cus)
- //
- // } else {
- // cnt, _ := strconv.ParseFloat(subItem.Count, 64)
- // cus := &models.NewCustomTwo{
- // AdviceId: 0,
- // ProjectId: subItem.ID,
- // DetItemFeeSumamt: fmt.Sprintf("%.4f", subItem.Price*cnt),
- // Cut: fmt.Sprintf("%.4f", cnt),
- // FeedetlSn: subItem.FeedetlSn,
- // Price: fmt.Sprintf("%.4f", float64(subItem.Price)),
- // MedListCodg: subItem.GoodInfo.MedicalInsuranceNumber,
- // Type: 3,
- // }
- // customs = append(customs, cus)
- //
- // }
- //
- // }
- // }
- // for _, item := range item.HisAdditionalCharge {
- // cus := &models.NewCustomTwo{
- // ItemId: item.ID,
- // AdviceId: 0,
- // ProjectId: 0,
- // DetItemFeeSumamt: fmt.Sprintf("%.4f", item.Price),
- // Cut: fmt.Sprintf("%.4f", float64(item.Count)),
- // FeedetlSn: item.FeedetlSn,
- // Price: fmt.Sprintf("%.4f", float64(item.Price)),
- // MedListCodg: item.XtHisAddtionConfig.Code,
- // Type: 3,
- // }
- // customs = append(customs, cus)
- // }
- // }
- // result, request_log := service.OpKeepAccounts(his.Number, customs)
- // saveLog(result, request_log, "记账", "记账", org.OrgName)
- //
- // var res ResultSettle
- // if err := json.Unmarshal([]byte(result), &res); err != nil {
- // utils.ErrorLog("解析失败:%v", err)
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // return
- // }
- // if res.ResultCode == "0" {
- //
- // //totals, _ := strconv.ParseFloat(total, 64)
- // order := &models.HisOrder{
- // PsnNo: his.PsnNo,
- // UserOrgId: org_id,
- // HisPatientId: his.ID,
- // PatientId: id,
- // SettleAccountsDate: recordDateTime,
- // Ctime: time.Now().Unix(),
- // Mtime: time.Now().Unix(),
- // Status: 1,
- // OrderStatus: 1,
- // MdtrtId: his.Number,
- // Number: chrg_bchno,
- // SetlId: "",
- // MedfeeSumamt: total,
- // MedType: strconv.Itoa(int(reg_type)),
- // SettleEndTime: end_time,
- // SettleStartTime: start_time,
- // SettleType: settle_accounts_type,
- // FaPiaoCode: fapiao_code,
- // FaPiaoNumber: fapiao_number,
- // Diagnosis: diagnosis_id,
- // PType: 2,
- // SetlTime: tm.Format("2006-01-02 15:04:05"),
- // }
- // err = service.CreateOrder(order)
- // if err != nil {
- // //c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeCreateOrderException)
- // return
- // }
- //
- // for _, item := range customs {
- // var advice_id int64 = 0
- // var project_id int64 = 0
- // var item_id int64 = 0
- //
- // var types int64 = 0
- //
- // if item.Type == 1 {
- // advice_id = item.AdviceId
- // project_id = 0
- // item_id = 0
- // } else if item.Type == 2 {
- // advice_id = 0
- // item_id = 0
- //
- // project_id = item.ProjectId
- // } else if item.Type == 3 {
- // advice_id = 0
- // item_id = item.ItemId
- // project_id = 0
- // }
- // detItemFeeSumamt, _ := strconv.ParseFloat(item.DetItemFeeSumamt, 32)
- // cut, _ := strconv.ParseFloat(item.Cut, 32)
- // pric, _ := strconv.ParseFloat(item.Price, 32)
- // info := &models.HisOrderInfo{
- // OrderNumber: order.Number,
- // UploadDate: time.Now().Unix(),
- // AdviceId: advice_id,
- // DetItemFeeSumamt: detItemFeeSumamt,
- // Cnt: cut,
- // Pric: pric,
- // PatientId: id,
- // Status: 1,
- // Mtime: time.Now().Unix(),
- // Ctime: time.Now().Unix(),
- // UserOrgId: org_id,
- // HisPatientId: his.ID,
- // OrderId: order.ID,
- // ProjectId: project_id,
- // Type: types,
- // ItemId: item_id,
- // }
- // service.CreateOrderInfo(info)
- // }
- // his.Diagnosis = diagnosis_id
- // his.SickType = sick_type
- // his.RegisterType = reg_type
- // his.MedicalTreatmentType = reg_type
- // service.UpdataHisPateintThree(&his)
- // err = service.UpDatePrescriptionNumber(org_id, ids, chrg_bchno)
- // err = service.UpDateHisPrescriptionInfoNumbertwo(org_id, id, chrg_bchno, recordDateTime, his_patient_id)
- // err = service.UpdataOrderStatusThreef(chrg_bchno, org_id)
- // if err == nil {
- // c.ServeSuccessJSON(map[string]interface{}{
- // "msg": "记账成功",
- // })
- // }
- // } else {
- // c.ServeSuccessJSON(map[string]interface{}{
- // "failed_code": -10,
- // "msg": res.ResultDesc,
- // })
- // }
- //
- //}
- //
- //func (c *CoordinateController) OpCancelKeepAccounts() {
- // order_id, _ := c.GetInt64("order_id")
- // admin_user_id, _ := c.GetInt64("admin_user_id")
- // org_id, _ := c.GetInt64("org_id")
- // org, _ := service.GetOrgById(org_id)
- //
- // order, _ := service.GetHisOrderByID(order_id)
- // if order.ID == 0 {
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeOrderParamWrong)
- // return
- // }
- //
- // role, _ := service.GetAdminUserInfoByID(org_id, admin_user_id)
- // result, request_log := service.OpCancelKeepAccounts(order.SetlId, role.UserName, role.DoctorNumber)
- // saveLog(result, request_log, "撤销记账", "撤销记账", org.OrgName)
- // var res RefundDetail
- // if err := json.Unmarshal([]byte(result), &res); err != nil {
- // utils.ErrorLog("解析失败:%v", err)
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // return
- // }
- // fmt.Println(result)
- // fmt.Println(request_log)
- // fmt.Println(res)
- // flag := 0
- // isSuccess := false
- // for _, item := range res.Result {
- // if item.Code == "200" {
- // flag = flag + 1
- // }
- // }
- // if len(res.Result) == flag {
- // isSuccess = true
- // }
- // var errMsg string
- // for _, item := range res.Result {
- // errMsg = errMsg + "\n" + item.ResultMsg
- // }
- //
- // if isSuccess {
- // err := service.UpdataOrderStatustwo(order_id, order.Number, org_id)
- // if err == nil {
- // c.ServeSuccessJSON(map[string]interface{}{
- // "msg": "撤销记账成功",
- // })
- // } else {
- // c.ServeFailJSONWithSGJErrorCode(enums.ErrorCodeDataException)
- // return
- // }
- // } else {
- // c.ServeSuccessJSON(map[string]interface{}{
- // "failed_code": -10,
- // "msg": errMsg,
- // })
- //
- // }
- //}
-
- //func saveLog(result string, request string, infno string, desc string) {
- //
- // org_id, _ := beego.AppConfig.Int64("org_id")
- // miConfig, _ := service.FindMedicalInsuranceInfo(org_id)
- // dir := miConfig.OrgName + "日志"
- // utils.Mkdir(dir)
- // month := time.Unix(1557042972, 0).Format("1")
- // year := time.Now().Format("2006")
- // month = time.Now().Format("01")
- // day := time.Now().Format("02")
- // hour := time.Now().Format("15")
- // min := time.Now().Format("04")
- // sec := time.Now().Format("05")
- //
- // result_time := year + "-" + month + "-" + day + " " + hour + ":" + min + ":" + sec
- //
- // file := strconv.FormatInt(org_id, 10) + "_" + year + month + day + "_log"
- // file_name := file + ".txt"
- // file_path := miConfig.OrgName + "日志" + "/" + file_name
- // exist, _ := utils.PathExists(file_path)
- // if exist { //存在
- // fmt.Println("存在")
- // f, err := os.OpenFile(file_path, os.O_WRONLY, 0644)
- // if err != nil {
- // fmt.Println("read fail")
- // }
- // content := "\r\n" + "\r\n" + "\r\n" + result_time + " " + "【 " + desc + infno + "入参" + " 】:" + "\r\n" + request + "\r\n" + result_time + " " + "【 " + desc + infno + "出参" + " 】:" + "\r\n" + result
- // n, _ := f.Seek(0, 2)
- // _, err = f.WriteAt([]byte(content), n)
- //
- // } else { //不存在
- // fmt.Println("文件不存在,创建文件")
- // f, err := os.Create(miConfig.OrgName + "日志" + "/" + file_name)
- // defer f.Close()
- // if err != nil {
- // } else {
- // _, err = f.Write([]byte("记录日志"))
- // }
- // }
- //
- //}
-
- func generateRandomNumber() int64 {
- rand.Seed(time.Now().UnixNano())
- return int64(rand.Intn(90000) + 10000)
- }
|