index.vue 197 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680
  1. <template>
  2. <div class="app-container">
  3. <el-form
  4. :model="queryParams"
  5. ref="queryForm"
  6. :inline="true"
  7. v-show="showSearch"
  8. label-width="88px"
  9. >
  10. <el-row>
  11. <el-form-item label="业务编号" prop="fBillno">
  12. <el-input
  13. v-model="queryParams.fBillno"
  14. placeholder="请输入业务编号"
  15. style="width: 200px"
  16. clearable
  17. size="small"
  18. @keyup.enter.native="handleQuery"
  19. />
  20. </el-form-item>
  21. <el-form-item label="制单人" prop="createBy">
  22. <el-select
  23. v-model="queryParams.createBy"
  24. filterable
  25. remote
  26. clearable
  27. style="width: 200px"
  28. :remote-method="userRemoteMethod"
  29. placeholder="请选择制单人"
  30. >
  31. <el-option
  32. v-for="(dict, index) in userOptions"
  33. :key="index.userName"
  34. :label="dict.nickName"
  35. :value="dict.userName"
  36. ></el-option>
  37. </el-select>
  38. </el-form-item>
  39. <el-form-item label="贸易方式" prop="fTrademodeid">
  40. <el-select
  41. v-model="queryParams.fTrademodeid"
  42. placeholder="请选择贸易方式"
  43. clearable
  44. style="width: 200px"
  45. @keyup.enter.native="handleQuery"
  46. >
  47. <el-option
  48. v-for="(dict, index) in fTrademodeidOptions"
  49. :key="index.dictValue"
  50. :label="dict.dictLabel"
  51. :value="dict.dictValue"
  52. />
  53. </el-select>
  54. </el-form-item>
  55. <el-form-item label="货权方" prop="fCorpid">
  56. <el-select
  57. v-model="queryParams.fCorpid"
  58. filterable
  59. remote
  60. clearable
  61. style="width: 200px"
  62. @keyup.enter.native="handleQuery"
  63. :remote-method="corpsRemoteMethod"
  64. placeholder="请输入模糊查找"
  65. >
  66. <el-option
  67. v-for="(dict, index) in fMblnoOptions"
  68. :key="index.fId"
  69. :label="dict.fName"
  70. :value="dict.fId"
  71. ></el-option>
  72. </el-select>
  73. </el-form-item>
  74. <el-form-item label="提单号" prop="fMblno">
  75. <el-input
  76. v-model="queryParams.fMblno"
  77. placeholder="请输入提单号"
  78. clearable
  79. style="width: 200px"
  80. size="small"
  81. @keyup.enter.native="handleQuery"
  82. />
  83. </el-form-item>
  84. <el-form-item label="经营单位" prop="fSbu">
  85. <el-select
  86. v-model="queryParams.fSbu"
  87. filterable
  88. remote
  89. clearable
  90. :remote-method="fSbuRemoteMethod"
  91. @keyup.enter.native="handleQuery"
  92. style="width: 200px"
  93. placeholder="请选择经营单位"
  94. >
  95. <el-option
  96. v-for="(dict, index) in fMblnoOptions"
  97. :key="index.fId"
  98. :label="dict.fName"
  99. :value="dict.fId"
  100. ></el-option>
  101. </el-select>
  102. </el-form-item>
  103. <el-form-item label="货物名称" prop="fGoodsid">
  104. <el-select
  105. v-model="queryParams.fGoodsid"
  106. filterable
  107. remote
  108. clearable
  109. style="width: 200px"
  110. :remote-method="goodsRemoteMethod"
  111. @keyup.enter.native="handleQuery"
  112. placeholder="请选择货物名称"
  113. >
  114. <el-option
  115. v-for="(dict, index) in goodsOptions"
  116. :key="index.fId"
  117. :label="dict.fName"
  118. :value="dict.fId"
  119. ></el-option>
  120. </el-select>
  121. </el-form-item>
  122. <el-form-item label="仓库" prop="fWarehouseid">
  123. <el-select
  124. v-model="queryParams.fWarehouseid"
  125. filterable
  126. remote
  127. @select="treeseLect"
  128. :disabled="browseStatus || formBrowseStatus"
  129. style="width: 200px"
  130. @keyup.enter.native="handleQuery"
  131. placeholder="请选择"
  132. >
  133. <el-option
  134. v-for="(dict, index) in warehouseOptions"
  135. :key="index.fId"
  136. :label="dict.fName"
  137. :value="dict.fId"
  138. ></el-option>
  139. </el-select>
  140. </el-form-item>
  141. <el-form-item label="品牌" prop="fMarks">
  142. <el-input
  143. v-model="queryParams.fMarks"
  144. placeholder="请输入品牌"
  145. clearable
  146. style="width: 200px"
  147. size="small"
  148. @keyup.enter.native="handleQuery"
  149. />
  150. </el-form-item>
  151. <el-form-item label="费用状态" prop="fBillstatus">
  152. <el-select
  153. style="width:200px"
  154. v-model="queryParams.fBillstatus"
  155. placeholder="请输入费用状态"
  156. >
  157. <el-option label="录入" value="1"></el-option>
  158. <el-option label="暂存" value="2"></el-option>
  159. <el-option label="驳回" value="3"></el-option>
  160. <el-option label="请核" value="4"></el-option>
  161. <el-option label="审核中" value="5"></el-option>
  162. <el-option label="全部入账" value="6"></el-option>
  163. </el-select>
  164. </el-form-item>
  165. <el-form-item label="入库状态" prop="fItemsStatus">
  166. <el-select
  167. style="width:200px"
  168. v-model="queryParams.fItemsStatus"
  169. placeholder="请输入入库状态"
  170. >
  171. <el-option label="计划" value="1"></el-option>
  172. <el-option label="待入库" value="2"></el-option>
  173. <el-option label="入库中" value="3"></el-option>
  174. <el-option label="已入库" value="4"></el-option>
  175. </el-select>
  176. </el-form-item>
  177. <el-form-item label="入库日期" prop="timeInterval">
  178. <el-date-picker
  179. v-model="queryParams.timeInterval"
  180. type="daterange"
  181. value-format="yyyy-MM-dd"
  182. clearable
  183. style="width: 240px"
  184. range-separator="至"
  185. start-placeholder="开始日期"
  186. end-placeholder="结束日期"
  187. @keyup.enter.native="handleQuery"
  188. >
  189. </el-date-picker>
  190. </el-form-item>
  191. <el-form-item style="float: right">
  192. <el-button
  193. type="cyan"
  194. icon="el-icon-search"
  195. size="mini"
  196. @click="handleQuery"
  197. >搜索
  198. </el-button>
  199. <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
  200. >重置
  201. </el-button>
  202. </el-form-item>
  203. </el-row>
  204. </el-form>
  205. <el-row :gutter="10" class="mb8">
  206. <el-col :span="1.5">
  207. <el-button
  208. type="primary"
  209. icon="el-icon-plus"
  210. size="mini"
  211. @click="handleAdd(false)"
  212. v-hasPermi="['warehouseBusiness:inStock:add']"
  213. >新增
  214. </el-button>
  215. </el-col>
  216. <el-col :span="1.5">
  217. <el-button
  218. type="success"
  219. icon="el-icon-edit"
  220. size="mini"
  221. :disabled="single"
  222. @click="handleUpdate"
  223. v-hasPermi="['warehouseBusiness:inStock:edit']"
  224. >修改
  225. </el-button>
  226. </el-col>
  227. <!-- <el-col :span="1.5">
  228. <el-button
  229. type="danger"
  230. icon="el-icon-delete"
  231. size="mini"
  232. :disabled="multiple"
  233. @click="handleDelete"
  234. v-hasPermi="['warehouseBusiness:inStock:remove']"
  235. >删除
  236. </el-button>
  237. </el-col> -->
  238. <el-col :span="1.5">
  239. <el-button
  240. type="warning"
  241. icon="el-icon-download"
  242. size="mini"
  243. @click="handleExport"
  244. v-hasPermi="['warehouseBusiness:inStock:export']"
  245. >导出
  246. </el-button>
  247. </el-col>
  248. <el-col :span="1.5">
  249. <el-button
  250. type="warning"
  251. icon="el-icon-download"
  252. size="mini"
  253. @click="handleExport"
  254. :disabled="multiple"
  255. v-hasPermi="['warehouseBusiness:inStock:export']"
  256. >导入
  257. </el-button>
  258. </el-col>
  259. <right-toolbar
  260. :showSearch.sync="showSearch"
  261. @queryTable="getList"
  262. ></right-toolbar>
  263. </el-row>
  264. <el-table
  265. v-loading="loading"
  266. :data="warehousebillsList"
  267. @selection-change="handleSelectionChange"
  268. show-summary :summary-method="getSum"
  269. >
  270. <el-table-column type="selection" width="60" fixed align="center" />
  271. <el-table-column type="index" label="行号" align="center" fixed/>
  272. <el-table-column label="制单人" align="center" prop="createBy" fixed/>
  273. <el-table-column
  274. width="100"
  275. label="入库状态"
  276. fixed
  277. align="center"
  278. prop="fItemsStatus"
  279. >
  280. <template slot-scope="scope">
  281. <span v-if="scope.row.fItemsStatus === 1">计划</span>
  282. <span v-if="scope.row.fItemsStatus === 2">待入库</span>
  283. <span v-if="scope.row.fItemsStatus === 3">入库中</span>
  284. <span v-if="scope.row.fItemsStatus === 4">已入库</span>
  285. </template>
  286. </el-table-column>
  287. <el-table-column
  288. label="货权方"
  289. fixed
  290. width="220"
  291. align="center"
  292. prop="fCorpid"
  293. />
  294. <el-table-column label="提单号" fixed width="216" align="center" prop="fMblno" show-overflow-tooltip />
  295. <el-table-column label="品名" fixed :show-overflow-tooltip="true" align="center" prop="fProductName" />
  296. <el-table-column label="品牌" fixed align="center" prop="fMarks" />
  297. <el-table-column
  298. label="入库日期"
  299. fixed
  300. align="center"
  301. prop="fBsdate"
  302. width="100"
  303. ><template slot-scope="scope">
  304. <span>{{ parseTime(scope.row.fBsdate, "{y}-{m}-{d}") }}</span>
  305. </template>
  306. </el-table-column>
  307. <!-- <el-table-column
  308. label="贸易方式"
  309. align="center"
  310. prop="fTrademodeid"
  311. :formatter="fTrademodeidFormat"
  312. /> -->
  313. <el-table-column label="仓库" fixed align="center" prop="fWarehouseid" />
  314. <el-table-column label="计划件数" align="center" prop="fPlanqty" />
  315. <el-table-column label="入库件数" align="center" prop="fQty" />
  316. <!-- <el-table-column label="入库毛重" align="center" prop="fGrossweight"/>-->
  317. <!-- <el-table-column label="货转客户名称" align="center" prop="fTocorpid" /> -->
  318. <el-table-column label="入库毛重(kg)" align="center" width="100" prop="fGrossweight" />
  319. <el-table-column label="入库净重(kg)" align="center" width="100" prop="fNetweight" />
  320. <el-table-column label="车号" align="center" prop="fTruckno" width="100"/>
  321. <el-table-column label="司机名称" align="center" prop="fDriverName" />
  322. <el-table-column label="司机电话" align="center" prop="fDriverTel" width="120"/>
  323. <el-table-column label="司机身份证" align="center" prop="fDriverIdCar" width="180"/>
  324. <el-table-column label="业务类别" align="center" prop="fBusinessType"
  325. :formatter="fBusinessTypeFormat"/>
  326. <el-table-column
  327. width="100"
  328. label="费用状态"
  329. align="center"
  330. prop="fBillstatus"
  331. >
  332. <template slot-scope="scope">
  333. <span v-if="scope.row.fBillstatus === 1">录入</span>
  334. <span v-if="scope.row.fBillstatus === 2">暂存</span>
  335. <span v-if="scope.row.fBillstatus === 3">驳回</span>
  336. <span v-if="scope.row.fBillstatus === 4">请核</span>
  337. <span v-if="scope.row.fBillstatus === 5">审核中</span>
  338. <span v-if="scope.row.fBillstatus === 6">全部入账</span>
  339. </template>
  340. </el-table-column>
  341. <el-table-column
  342. label="操作"
  343. align="center"
  344. class-name="small-padding fixed-width"
  345. width="180"
  346. >
  347. <template slot-scope="scope">
  348. <el-button
  349. size="mini"
  350. type="text"
  351. icon="el-icon-edit"
  352. @click="handleUpdate(scope.row, true)"
  353. v-hasPermi="['warehouseBusiness:inStock:edit']"
  354. >查看
  355. </el-button>
  356. <el-button
  357. size="mini"
  358. type="text"
  359. icon="el-icon-edit"
  360. v-if="
  361. scope.row.fBillstatus === 1 ||
  362. scope.row.fBillstatus === 2 ||
  363. scope.row.fBillstatus === 3
  364. "
  365. @click="handleUpdate(scope.row, false)"
  366. v-hasPermi="['warehouseBusiness:inStock:edit']"
  367. >修改
  368. </el-button>
  369. <el-button
  370. size="mini"
  371. type="text"
  372. icon="el-icon-delete"
  373. v-if="scope.row.fItemsStatus === 1"
  374. @click="handleDelete(scope.row)"
  375. v-hasPermi="['warehouseBusiness:inStock:remove']"
  376. >删除
  377. </el-button>
  378. <el-button
  379. size="mini"
  380. type="text"
  381. icon="el-icon-delete"
  382. v-if="scope.row.fBillstatus === 4 || scope.row.fBillstatus === 5"
  383. @click="handleUpdate(scope.row, true)"
  384. >审核进度
  385. </el-button>
  386. </template>
  387. </el-table-column>
  388. </el-table>
  389. <pagination
  390. v-show="total > 0"
  391. :total="total"
  392. :page.sync="queryParams.pageNum"
  393. :limit.sync="queryParams.pageSize"
  394. @pagination="getList"
  395. />
  396. <!-- 新增或修改仓库主(出入库)对话框 -->
  397. <el-dialog
  398. :visible.sync="open"
  399. :close-on-click-modal="false"
  400. @close='addCloseDialog'
  401. :show-close="closeButton"
  402. :before-close="handleClose"
  403. width="80%"
  404. append-to-body
  405. >
  406. <el-form ref="form" :model="form" :rules="rules" label-width="120px">
  407. <el-row>
  408. <el-col :span="8">
  409. <el-form-item label="货权方" prop="fCorpid">
  410. <el-select
  411. v-model="form.fCorpid"
  412. filterable
  413. remote
  414. @change="changefCorpid(form)"
  415. :disabled="browseStatus || formBrowseStatus"
  416. style="width: 80%"
  417. :remote-method="corpsRemoteMethod"
  418. placeholder="请输入模糊查找"
  419. >
  420. <el-option
  421. v-for="(dict, index) in fMblnoOptions"
  422. :key="index.fId"
  423. :label="dict.fName"
  424. :value="dict.fId"
  425. ></el-option>
  426. </el-select>
  427. </el-form-item>
  428. </el-col>
  429. <el-col :span="8">
  430. <el-form-item label="结算方式" prop="fStltypeid">
  431. <el-select
  432. v-model="form.fStltypeid"
  433. placeholder="请选择结算方式"
  434. clearable
  435. :disabled="browseStatus || formBrowseStatus"
  436. style="width: 80%"
  437. >
  438. <el-option
  439. v-for="(dict, index) in fStltypeOptions"
  440. :key="index.dictValue"
  441. :label="dict.dictLabel"
  442. :value="dict.dictValue"
  443. />
  444. </el-select>
  445. </el-form-item>
  446. </el-col>
  447. <el-col :span="8">
  448. <el-form-item label="提单号" prop="fMblno">
  449. <el-input
  450. v-model="form.fMblno"
  451. :disabled="browseStatus || formBrowseStatus"
  452. style="width: 80%"
  453. placeholder="手工输入"
  454. />
  455. </el-form-item>
  456. </el-col>
  457. </el-row>
  458. <el-row>
  459. <el-col :span="8">
  460. <el-form-item label="入库日期" prop="fBsdate">
  461. <el-date-picker
  462. v-model="form.fBsdate"
  463. style="width: 80%"
  464. type="date"
  465. :disabled="browseStatus || formBrowseStatus"
  466. @change="changefBsdate"
  467. value-format="timestamp"
  468. placeholder="入库日期"
  469. >
  470. </el-date-picker>
  471. </el-form-item>
  472. </el-col>
  473. <el-col :span="8">
  474. <el-form-item label="业务时间" prop="fBstime">
  475. <el-time-picker
  476. style="width: 80%"
  477. :disabled="browseStatus || formBrowseStatus"
  478. v-model="form.fBstime"
  479. :picker-options="{
  480. selectableRange: '00:00:01 - 23:59:59'
  481. }"
  482. placeholder="任意时间点">
  483. </el-time-picker>
  484. </el-form-item>
  485. </el-col>
  486. <el-col :span="8">
  487. <el-form-item label="仓库" prop="fWarehouseid">
  488. <el-select
  489. v-model="form.fWarehouseid"
  490. filterable
  491. remote
  492. @change="warwhouseTel"
  493. :disabled="browseStatus || formBrowseStatus"
  494. style="width: 80%"
  495. @keyup.enter.native="handleQuery"
  496. placeholder="请选择"
  497. >
  498. <el-option
  499. v-for="(dict, index) in warehouseOptions"
  500. :key="index.fId"
  501. :label="dict.fName"
  502. :value="dict.fId"
  503. ></el-option>
  504. </el-select>
  505. </el-form-item>
  506. </el-col>
  507. </el-row>
  508. <el-row>
  509. <el-col :span="8">
  510. <el-form-item label="计划件数" prop="fPlanqty">
  511. <el-input
  512. v-model="form.fPlanqty"
  513. style="width: 80%"
  514. maxlength="9"
  515. laceholder="计划件数"
  516. oninput='this.value=this.value.replace(/[^\-?\d]/g,"")'
  517. :disabled="browseStatus"
  518. />
  519. </el-form-item>
  520. </el-col>
  521. <el-col :span="8">
  522. <el-form-item label="计划净重(kg)" prop="fPlannetweight">
  523. <el-input
  524. v-model="form.fPlannetweight"
  525. style="width: 80%"
  526. maxlength="9"
  527. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  528. laceholder="计划净重"
  529. :disabled="browseStatus"
  530. />
  531. </el-form-item>
  532. </el-col>
  533. <el-col :span="8">
  534. <el-form-item label="计划毛重(kg)" prop="fPlangrossweight">
  535. <el-input
  536. v-model="form.fPlangrossweight"
  537. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  538. style="width: 80%"
  539. laceholder="计划毛重"
  540. maxlength="9"
  541. :disabled="browseStatus"
  542. />
  543. </el-form-item>
  544. </el-col>
  545. </el-row>
  546. <el-row>
  547. <el-col :span="8">
  548. <el-form-item label="仓管员" prop="fStorekeeper">
  549. <el-select
  550. v-model="form.fStorekeeper"
  551. filterable
  552. remote
  553. :disabled="browseStatus || formBrowseStatus"
  554. style="width: 80%"
  555. :remote-method="userRemoteMethod"
  556. placeholder="请输入模糊查找"
  557. >
  558. <el-option
  559. v-for="(dict, index) in userOptions"
  560. :key="index.userName"
  561. :label="dict.nickName"
  562. :value="dict.userName"
  563. ></el-option>
  564. </el-select>
  565. </el-form-item>
  566. </el-col>
  567. <el-col :span="8">
  568. <el-form-item label="计费单位" prop="fFeetunit">
  569. <el-select
  570. v-model="form.fFeetunit"
  571. placeholder="请选择计费单位"
  572. clearable
  573. :disabled="browseStatus || formBrowseStatus"
  574. style="width: 80%"
  575. >
  576. <el-option
  577. v-for="(dict, index) in fFeetunitOptions"
  578. :key="index.dictValue"
  579. :label="dict.dictLabel"
  580. :value="dict.dictValue"
  581. />
  582. </el-select>
  583. </el-form-item>
  584. </el-col>
  585. <el-col :span="8">
  586. <el-form-item
  587. label="车号" prop="fTruckno"
  588. :rules="{
  589. required: isrequired_s=== 1 ? true : false,
  590. message: '请选择',
  591. trigger: ['blur', 'change']
  592. }">
  593. <el-input
  594. v-model="form.fTruckno"
  595. style="width: 80%"
  596. :disabled="browseStatus || formBrowseStatus"
  597. placeholder="车号"
  598. />
  599. </el-form-item>
  600. </el-col>
  601. </el-row>
  602. <el-row>
  603. <el-col :span="8">
  604. <el-form-item
  605. label="司机姓名" prop="fDriverName"
  606. :rules="{
  607. required: isrequired_s === 1 ? true : false,
  608. message: '请选择',
  609. trigger: ['blur', 'change']
  610. }">
  611. <el-input
  612. v-model="form.fDriverName"
  613. style="width: 80%"
  614. :disabled="browseStatus || formBrowseStatus"
  615. placeholder="司机姓名"
  616. />
  617. </el-form-item>
  618. </el-col>
  619. <el-col :span="8">
  620. <el-form-item label="司机身份证" prop="fDriverIdCar"
  621. :rules="{
  622. required: isrequired_s === 1 ? true : false,
  623. message: '请选择',
  624. trigger: ['blur', 'change']
  625. }">
  626. <el-input
  627. v-model="form.fDriverIdCar"
  628. style="width: 80%"
  629. :disabled="browseStatus || formBrowseStatus"
  630. placeholder="司机身份证"
  631. />
  632. </el-form-item>
  633. </el-col>
  634. <el-col :span="8">
  635. <el-form-item
  636. label="司机电话"
  637. prop="fDriverTel"
  638. :rules="{
  639. required: isrequired_s === 1 ? true : false,
  640. message: '请选择',
  641. trigger: ['blur', 'change']
  642. }">
  643. <el-input
  644. v-model="form.fDriverTel"
  645. style="width: 80%"
  646. :disabled="browseStatus || formBrowseStatus"
  647. placeholder="司机电话"
  648. />
  649. </el-form-item>
  650. </el-col>
  651. </el-row>
  652. <el-row>
  653. <el-col :span="8">
  654. <el-form-item label="作业类型" prop="fBusinessType">
  655. <el-select
  656. style="width: 80%"
  657. v-model="form.fBusinessType"
  658. filterable
  659. @change="educationChange"
  660. :disabled="contrOl"
  661. >
  662. <el-option
  663. v-for="(dict) in businessTypeOption"
  664. :key="dict.dictValue"
  665. :label="dict.dictLabel"
  666. :value="dict.dictValue"
  667. ></el-option>
  668. </el-select>
  669. </el-form-item>
  670. </el-col>
  671. <el-col :span="8">
  672. <el-form-item label="劳务公司" prop="fLabour">
  673. <el-select
  674. style="width: 80%"
  675. v-model="form.fLabour"
  676. :remote-method="flabourRemoteMethod"
  677. filterable
  678. remote
  679. :disabled="contrOl"
  680. placeholder="请输入劳务公司">
  681. <el-option
  682. v-for="(dict, index) in fCompanyOptIons"
  683. :key="index.fId"
  684. :label="dict.fName"
  685. :value="dict.fId"
  686. ></el-option>
  687. </el-select>
  688. </el-form-item>
  689. </el-col>
  690. <el-col :span="8">
  691. <el-form-item label="车队" prop="fFleet"
  692. :rules="{
  693. required: isrequired === 1 ? true : false,
  694. message: '请选择',
  695. trigger: ['blur', 'change']
  696. }"
  697. >
  698. <el-select
  699. style="width: 80%"
  700. v-model="form.fFleet"
  701. filterable
  702. remote
  703. :remote-method="fleetRemoteMethod"
  704. :disabled="contrOl"
  705. placeholder="请输入车队">
  706. <el-option
  707. v-for="(dict, index) in fleetOptions"
  708. :key="index.fId"
  709. :label="dict.fName"
  710. :value="dict.fId"
  711. ></el-option>
  712. </el-select>
  713. </el-form-item>
  714. </el-col>
  715. </el-row>
  716. <el-row>
  717. <el-col :span="14">
  718. <el-form-item label="备注" prop="remark">
  719. <el-input
  720. style="width: 100%"
  721. v-model="form.remark"
  722. type="textarea"
  723. :disabled="browseStatus"
  724. placeholder="请输入内容"
  725. />
  726. </el-form-item>
  727. </el-col>
  728. <el-col :span="2">
  729. <el-form-item>
  730. <el-button @click="detailsHidden ? (detailsHidden = false) : (detailsHidden = true)">{{ detailsHidden ? '隐藏' : '展开' }}
  731. </el-button>
  732. </el-form-item>
  733. </el-col>
  734. <el-col :span="8">
  735. <el-form-item prop="fChargedate">
  736. <el-date-picker
  737. v-model="form.fChargedate"
  738. type="date"
  739. style="width:80%"
  740. :disabled="browseStatus || formBrowseStatus"
  741. value-format="timestamp"
  742. placeholder="仓储费计算日期"
  743. >
  744. </el-date-picker>
  745. </el-form-item>
  746. </el-col>
  747. </el-row>
  748. <div v-if="detailsHidden">
  749. <el-row style="margin-top: 30px">
  750. <el-col :span="8">
  751. <el-form-item label="仓库联系人" prop="fContacts">
  752. <el-input
  753. v-model="form.fContacts"
  754. style="width: 80%"
  755. :disabled="browseStatus || formBrowseStatus"
  756. placeholder="仓库联系人"
  757. />
  758. </el-form-item>
  759. </el-col>
  760. <el-col :span="8">
  761. <el-form-item label="仓库电话" prop="fTel">
  762. <el-input
  763. v-model="form.fTel"
  764. :disabled="browseStatus || formBrowseStatus"
  765. style="width: 80%"
  766. placeholder="请输仓库入电话"
  767. />
  768. </el-form-item>
  769. </el-col>
  770. <el-col :span="8">
  771. <el-form-item label="船名航次" prop="fVslvoy">
  772. <el-input
  773. v-model="form.fVslvoy"
  774. style="width: 80%"
  775. :disabled="browseStatus || formBrowseStatus"
  776. placeholder="船名航次"
  777. />
  778. </el-form-item>
  779. </el-col>
  780. </el-row>
  781. <el-row>
  782. <el-col :span="8">
  783. <el-form-item label="到港日期" prop="fEta">
  784. <el-date-picker
  785. v-model="form.fEta"
  786. style="width: 80%"
  787. type="date"
  788. :disabled="browseStatus || formBrowseStatus"
  789. value-format="timestamp"
  790. placeholder="到港日期"
  791. >
  792. </el-date-picker>
  793. </el-form-item>
  794. </el-col>
  795. <el-col :span="8">
  796. <el-form-item label="报关单号" prop="fCustomno">
  797. <el-input
  798. v-model="form.fCustomno"
  799. style="width: 80%"
  800. :disabled="browseStatus || formBrowseStatus"
  801. laceholder="报关单号"
  802. />
  803. </el-form-item>
  804. </el-col>
  805. <el-col :span="8">
  806. <el-form-item label="经营单位" prop="fSbu">
  807. <el-select
  808. v-model="form.fSbu"
  809. filterable
  810. remote
  811. :disabled="browseStatus || formBrowseStatus"
  812. :remote-method="fSbuRemoteMethod"
  813. style="width: 80%"
  814. placeholder="请选择经营单位"
  815. >
  816. <el-option
  817. v-for="(dict, index) in fMblnoOptions"
  818. :key="index.fId"
  819. :label="dict.fName"
  820. :value="dict.fId"
  821. ></el-option>
  822. </el-select>
  823. </el-form-item>
  824. </el-col>
  825. </el-row>
  826. <el-row>
  827. <el-col :span="8">
  828. <el-form-item label="单据编号" prop="fBillno">
  829. <el-input
  830. v-model="form.fBillno"
  831. disabled
  832. style="width: 80%"
  833. placeholder="单据编号"
  834. />
  835. </el-form-item>
  836. </el-col>
  837. <el-col :span="8">
  838. <el-form-item label="贸易方式" prop="fTrademodeid">
  839. <el-select
  840. v-model="form.fTrademodeid"
  841. placeholder="请选择贸易方式"
  842. :disabled="browseStatus || formBrowseStatus"
  843. clearable
  844. style="width: 80%"
  845. >
  846. <el-option
  847. v-for="(dict, index) in fTrademodeidOptions"
  848. :key="index.dictValue"
  849. :label="dict.dictLabel"
  850. :value="dict.dictValue"
  851. />
  852. </el-select>
  853. </el-form-item>
  854. </el-col>
  855. <el-col :span="8">
  856. <el-form-item label="制单人" prop="createBy">
  857. <el-input
  858. disabled
  859. v-model="form.createBy"
  860. style="width: 80%"
  861. placeholder="制单人"
  862. />
  863. </el-form-item>
  864. </el-col>
  865. </el-row>
  866. <el-row>
  867. <el-col :span="8">
  868. <el-form-item label="制单部门" prop="fDeptid">
  869. <el-select
  870. v-model="form.fDeptid"
  871. filterable
  872. disabled
  873. style="width: 80%"
  874. remote
  875. >
  876. <el-option
  877. v-for="(dict, index) in deptOptions"
  878. :key="index.deptId"
  879. :label="dict.deptName"
  880. :value="dict.deptId"
  881. ></el-option>
  882. </el-select>
  883. </el-form-item>
  884. </el-col>
  885. <el-col :span="8">
  886. <el-form-item disabled label="制单日期" prop="fbilldate">
  887. <el-date-picker
  888. v-model="form.createTime"
  889. size="large"
  890. type="date"
  891. disabled
  892. style="width: 80%"
  893. value-format="timestamp"
  894. placeholder="制单日期"
  895. >
  896. </el-date-picker>
  897. </el-form-item>
  898. </el-col>
  899. <el-col :span="8">
  900. <el-form-item label="过磅" prop="fIfweigh">
  901. <el-select
  902. v-model="form.fIfweigh"
  903. placeholder="请选择是否过磅"
  904. clearable
  905. :disabled="browseStatus || formBrowseStatus"
  906. style="width: 80%"
  907. >
  908. <el-option
  909. v-for="(dict, index) in fIfweighOptions"
  910. :key="index.dictValue"
  911. :label="dict.dictLabel"
  912. :value="dict.dictValue"
  913. />
  914. </el-select>
  915. </el-form-item>
  916. </el-col>
  917. </el-row>
  918. <el-row>
  919. <el-col :span="8">
  920. <el-form-item label="品名" prop="fProductName">
  921. <el-input
  922. v-model="form.fProductName"
  923. style="width: 80%"
  924. disabled
  925. placeholder="品名"
  926. />
  927. </el-form-item>
  928. </el-col>
  929. <el-col :span="8">
  930. <el-form-item label="品牌">
  931. <el-input
  932. v-model="form.fMarks"
  933. style="width: 80%"
  934. disabled
  935. placeholder="品牌"
  936. />
  937. </el-form-item>
  938. </el-col>
  939. <el-col :span="8">
  940. <el-form-item label="存货编号" prop="fBscorpno">
  941. <el-input
  942. disabled
  943. v-model="form.fBscorpno"
  944. style="width: 80%"
  945. laceholder="存货编号"
  946. />
  947. </el-form-item>
  948. </el-col>
  949. </el-row>
  950. <el-row>
  951. <el-col :span="8">
  952. <el-form-item label="质押" prop="fIfpledge">
  953. <el-select
  954. v-model="form.fIfpledge"
  955. placeholder="请选择是否质押"
  956. clearable
  957. :disabled="browseStatus || formBrowseStatus"
  958. style="width: 80%"
  959. >
  960. <el-option
  961. v-for="(dict, index) in fIfpledgeOptions"
  962. :key="index.dictValue"
  963. :label="dict.dictLabel"
  964. :value="dict.dictValue"
  965. />
  966. </el-select>
  967. </el-form-item>
  968. </el-col>
  969. <el-col :span="8">
  970. <el-form-item label="质押银行" prop="fBankcorpid">
  971. <el-select
  972. v-model="queryParams.fBankcorpid"
  973. filterable
  974. remote
  975. clearable
  976. style="width: 80%"
  977. :disabled="browseStatus || formBrowseStatus"
  978. @keyup.enter.native="handleQuery"
  979. :remote-method="corpsRemoteMethodd"
  980. placeholder="请输入模糊查找"
  981. >
  982. <el-option
  983. v-for="(dict, index) in Pledgebank"
  984. :key="index.fId"
  985. :label="dict.fName"
  986. :value="dict.fId"
  987. ></el-option>
  988. </el-select>
  989. </el-form-item>
  990. </el-col>
  991. </el-row>
  992. </div>
  993. </el-form>
  994. <el-collapse v-model="activeNames">
  995. <el-collapse-item name="1">
  996. <template slot="title">
  997. <i class="el-icon-s-home"></i>入库明细
  998. </template>
  999. <div
  1000. class="dialogTableTitle flex a-center jlr"
  1001. style="
  1002. display: flex;
  1003. justify-content: space-between;
  1004. align-items: center;
  1005. margin: 10px 0;
  1006. "
  1007. >
  1008. <div>
  1009. <el-button
  1010. type="primary"
  1011. :disabled="browseStatus"
  1012. @click.prevent="addRelevant(10)"
  1013. size="small"
  1014. >新行
  1015. </el-button>
  1016. <el-button
  1017. :disabled="browseStatus"
  1018. type="primary"
  1019. @click="submitForm(2)"
  1020. size="small"
  1021. >保 存</el-button
  1022. >
  1023. </div>
  1024. <div>
  1025. <el-button size="small" type="info" :disabled="browseStatus" prop="打印" @click="showEditDialog_sss"
  1026. >作业单
  1027. </el-button>
  1028. <el-button size="small" @click="discharge" :disabled="browseStatus">叫车进场</el-button>
  1029. <el-button
  1030. size="small"
  1031. :disabled="dataListSelection.length <= 0 || browseStatus"
  1032. @click.prevent="creditClick"
  1033. >入库确认
  1034. </el-button>
  1035. <el-button
  1036. size="small"
  1037. :disabled="dataWithdrawList.length <= 0 || browseStatus"
  1038. @click.prevent="withdrawClick"
  1039. >撤回入库
  1040. </el-button
  1041. >
  1042. <el-button size="small" type="success" :disabled="browseStatus" prop="打印"
  1043. >打印吊牌
  1044. </el-button>
  1045. <el-button size="small" type="success" :disabled="browseStatus" prop="打印" @click="showEditDialog_ss"
  1046. >收货单
  1047. </el-button>
  1048. <el-button size="small" type="warning" :disabled="browseStatus" prop="打印" @click="showEditDialog_s"
  1049. >入库单
  1050. </el-button>
  1051. <el-button
  1052. size="small"
  1053. :disabled="browseStatus"
  1054. style="background-color: #008000; color: #fff"
  1055. @click="submitForm(6)"
  1056. >请核
  1057. </el-button>
  1058. </div>
  1059. </div>
  1060. <el-table
  1061. :data="dataList"
  1062. tooltip-effect="dark"
  1063. :rules="checkout"
  1064. ref="checkout"
  1065. border
  1066. stripe
  1067. :summary-method="getSummaries"
  1068. @selection-change="Selectinventory"
  1069. show-summary
  1070. >
  1071. <el-table-column type="selection" width="55" align="center" fixed/>
  1072. <el-table-column label="序号" type="index" width="80" fixed>
  1073. </el-table-column>
  1074. <el-table-column
  1075. prop="fBillstatus"
  1076. header-align="center"
  1077. width="150px"
  1078. align="center"
  1079. fixed
  1080. label="状态"
  1081. >
  1082. <template slot-scope="scope">
  1083. <span v-if="scope.row.fBillstatus === 10">计划</span>
  1084. <span v-if="scope.row.fBillstatus === 20">待入库</span>
  1085. <span v-if="scope.row.fBillstatus === 30">入库中</span>
  1086. <span v-if="scope.row.fBillstatus === 40">已入库</span>
  1087. </template>
  1088. </el-table-column>
  1089. <el-table-column
  1090. fixed
  1091. prop="fBsdate"
  1092. header-align="center"
  1093. align="center"
  1094. width="150px"
  1095. label="入库日期"
  1096. >
  1097. <template slot-scope="scope">
  1098. <el-date-picker
  1099. v-model="scope.row.fBsdate"
  1100. style="width: 138px"
  1101. :disabled="
  1102. browseStatus ||
  1103. scope.row.fBillstatus === 20 ||
  1104. scope.row.fBillstatus === 30 ||
  1105. scope.row.fBillstatus === 40
  1106. "
  1107. type="date"
  1108. value-format="timestamp"
  1109. placeholder="入库日期"
  1110. >
  1111. </el-date-picker>
  1112. </template>
  1113. </el-table-column>
  1114. <el-table-column
  1115. prop="fMblno"
  1116. header-align="center"
  1117. align="center"
  1118. width="140px"
  1119. label="提单号"
  1120. >
  1121. </el-table-column>
  1122. <el-table-column
  1123. prop="fGoodsid"
  1124. header-align="center"
  1125. align="center"
  1126. width="140px"
  1127. label="*品名"
  1128. >
  1129. <template slot-scope="scope">
  1130. <el-select
  1131. v-model="scope.row.fGoodsid"
  1132. filterable
  1133. :disabled="
  1134. browseStatus ||
  1135. scope.row.fBillstatus === 20 ||
  1136. scope.row.fBillstatus === 30 ||
  1137. scope.row.fBillstatus === 40
  1138. "
  1139. remote
  1140. @change="changefGoodsid(scope.row)"
  1141. placeholder="请选择品名"
  1142. >
  1143. <el-option
  1144. v-for="(dict, index) in goodsOptions"
  1145. :key="index.fId"
  1146. :label="dict.fName"
  1147. :value="dict.fId"
  1148. ></el-option>
  1149. </el-select>
  1150. </template>
  1151. </el-table-column>
  1152. <el-table-column
  1153. prop="fBusinessType"
  1154. header-align="center"
  1155. width="140px"
  1156. align="center"
  1157. label="*货物属性"
  1158. >
  1159. <template slot-scope="scope">
  1160. <el-select v-model="scope.row.fBusinessType"
  1161. filterable
  1162. size="small"
  1163. :disabled="browseStatus || scope.row.fBillstatus === 20 || scope.row.fBillstatus === 30 || scope.row.fBillstatus === 40"
  1164. :remote-method="kqhouseRemoteMethod"
  1165. placeholder="请选择商品属性"
  1166. >
  1167. <el-option
  1168. v-for="(dict, index) in fStorageTypeOptions"
  1169. :key="index.dictValue"
  1170. :label="dict.dictLabel"
  1171. :value="dict.dictValue"
  1172. />
  1173. </el-select>
  1174. </template>
  1175. </el-table-column>
  1176. <el-table-column
  1177. prop="fMarks"
  1178. header-align="center"
  1179. align="center"
  1180. width="140px"
  1181. label="*属性详情"
  1182. >
  1183. <template slot-scope="scope">
  1184. <el-input
  1185. v-model="scope.row.fMarks"
  1186. placeholder="请填写属性描述"
  1187. :disabled="
  1188. browseStatus ||
  1189. scope.row.fBillstatus === 20 ||
  1190. scope.row.fBillstatus === 30 ||
  1191. scope.row.fBillstatus === 40
  1192. "
  1193. show-word-limit
  1194. />
  1195. </template>
  1196. </el-table-column>
  1197. <el-table-column
  1198. prop="fWarehouseInformation"
  1199. header-align="center"
  1200. width="240px"
  1201. align="center"
  1202. label="*库区"
  1203. >
  1204. <template slot-scope="scope">
  1205. <el-input
  1206. placeholder="请选择"
  1207. :disabled="!form.fWarehouseid || browseStatus || scope.row.fBillstatus === 20 || scope.row.fBillstatus === 30 || scope.row.fBillstatus === 40"
  1208. v-model="scope.row.fWarehouseInformation"
  1209. @focus="getTreeselect(scope)"
  1210. >
  1211. </el-input>
  1212. </template>
  1213. </el-table-column>
  1214. <el-table-column
  1215. prop="fcntrtype"
  1216. header-align="center"
  1217. align="center"
  1218. width="140px"
  1219. label="箱型"
  1220. >
  1221. <template slot-scope="scope">
  1222. <el-input
  1223. v-model="scope.row.fCntrtype"
  1224. maxlength="4"
  1225. placeholder="箱型"
  1226. :disabled="
  1227. browseStatus ||
  1228. scope.row.fBillstatus === 20 ||
  1229. scope.row.fBillstatus === 30 ||
  1230. scope.row.fBillstatus === 40
  1231. "
  1232. show-word-limit
  1233. />
  1234. </template>
  1235. </el-table-column>
  1236. <el-table-column
  1237. prop="fCntqty"
  1238. header-align="center"
  1239. align="center"
  1240. width="140px"
  1241. label="箱量"
  1242. >
  1243. <template slot-scope="scope">
  1244. <el-input
  1245. v-model="scope.row.fCntqty"
  1246. placeholder="箱量"
  1247. :disabled="
  1248. browseStatus ||
  1249. scope.row.fBillstatus === 20 ||
  1250. scope.row.fBillstatus === 30 ||
  1251. scope.row.fBillstatus === 40
  1252. "
  1253. show-word-limit
  1254. />
  1255. </template>
  1256. </el-table-column>
  1257. <el-table-column
  1258. prop="fQty"
  1259. header-align="center"
  1260. width="150px"
  1261. align="center"
  1262. label="*入库件数"
  1263. >
  1264. <template slot-scope="scope">
  1265. <el-input
  1266. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  1267. v-model="scope.row.fQty"
  1268. @change="qtyChange(scope.row)"
  1269. placeholder="入库件数"
  1270. :disabled="browseStatus || scope.row.fBillstatus === 40"
  1271. show-word-limit
  1272. />
  1273. </template>
  1274. </el-table-column>
  1275. <el-table-column
  1276. prop="fGrossweight"
  1277. header-align="center"
  1278. width="180px"
  1279. align="center"
  1280. label="*入库毛重(kg)"
  1281. >
  1282. <template slot-scope="scope">
  1283. <el-input
  1284. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  1285. v-model="scope.row.fGrossweight"
  1286. placeholder="入库毛重(kg)"
  1287. :disabled="browseStatus || scope.row.fBillstatus === 40"
  1288. show-word-limit
  1289. />
  1290. </template>
  1291. </el-table-column>
  1292. <el-table-column
  1293. prop="fNetweight"
  1294. header-align="center"
  1295. width="180px"
  1296. align="center"
  1297. label="*入库净重(kg)"
  1298. >
  1299. <template slot-scope="scope">
  1300. <el-input
  1301. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  1302. v-model="scope.row.fNetweight"
  1303. placeholder="入库净重"
  1304. :disabled="browseStatus || scope.row.fBillstatus === 40"
  1305. show-word-limit
  1306. />
  1307. </template>
  1308. </el-table-column>
  1309. <el-table-column
  1310. prop="fPackagespecs"
  1311. header-align="center"
  1312. width="150px"
  1313. align="center"
  1314. label="*包装规格"
  1315. >
  1316. <template slot-scope="scope">
  1317. <el-input
  1318. v-model="scope.row.fPackagespecs"
  1319. placeholder="包装规格"
  1320. :disabled="
  1321. browseStatus ||
  1322. scope.row.fBillstatus === 20 ||
  1323. scope.row.fBillstatus === 30 ||
  1324. scope.row.fBillstatus === 40
  1325. "
  1326. show-word-limit
  1327. />
  1328. </template>
  1329. </el-table-column>
  1330. <el-table-column
  1331. prop="fTruckno"
  1332. header-align="center"
  1333. width="130px"
  1334. align="center"
  1335. label="*车号"
  1336. >
  1337. <template slot-scope="scope">
  1338. <el-input
  1339. v-model="scope.row.fTruckno"
  1340. placeholder="*车号"
  1341. :disabled="
  1342. browseStatus ||
  1343. scope.row.fBillstatus === 20 ||
  1344. scope.row.fBillstatus === 30 ||
  1345. scope.row.fBillstatus === 40
  1346. "
  1347. show-word-limit
  1348. />
  1349. </template>
  1350. </el-table-column>
  1351. <el-table-column
  1352. prop="fDriverName"
  1353. header-align="center"
  1354. width="130px"
  1355. align="center"
  1356. label="*司机名"
  1357. >
  1358. <template slot-scope="scope">
  1359. <el-input
  1360. v-model="scope.row.fDriverName"
  1361. placeholder="司机名"
  1362. :disabled="
  1363. browseStatus ||
  1364. scope.row.fBillstatus === 20 ||
  1365. scope.row.fBillstatus === 30 ||
  1366. scope.row.fBillstatus === 40
  1367. "
  1368. show-word-limit
  1369. />
  1370. </template>
  1371. </el-table-column>
  1372. <el-table-column
  1373. prop="fDriverTel"
  1374. header-align="center"
  1375. width="200px"
  1376. align="center"
  1377. label="*司机电话"
  1378. >
  1379. <template slot-scope="scope">
  1380. <el-input
  1381. v-model="scope.row.fDriverTel"
  1382. placeholder="司机电话"
  1383. :disabled="
  1384. browseStatus ||
  1385. scope.row.fBillstatus === 20 ||
  1386. scope.row.fBillstatus === 30 ||
  1387. scope.row.fBillstatus === 40
  1388. "
  1389. show-word-limit
  1390. />
  1391. </template>
  1392. </el-table-column>
  1393. <el-table-column
  1394. prop="fDriverIdCar"
  1395. header-align="center"
  1396. width="200px"
  1397. align="center"
  1398. label="*司机身份证"
  1399. >
  1400. <template slot-scope="scope">
  1401. <el-input
  1402. v-model="scope.row.fDriverIdCar"
  1403. placeholder="司机身份证"
  1404. :disabled="
  1405. browseStatus ||
  1406. scope.row.fBillstatus === 20 ||
  1407. scope.row.fBillstatus === 30 ||
  1408. scope.row.fBillstatus === 40
  1409. "
  1410. show-word-limit
  1411. />
  1412. </template>
  1413. </el-table-column>
  1414. <el-table-column
  1415. prop="fSerialNumber"
  1416. header-align="center"
  1417. width="160px"
  1418. align="center"
  1419. label="流水号"
  1420. >
  1421. <template slot-scope="scope">
  1422. <el-input
  1423. v-model="scope.row.fSerialNumber"
  1424. placeholder="流水号"
  1425. disabled
  1426. show-word-limit
  1427. />
  1428. </template>
  1429. </el-table-column>
  1430. <el-table-column
  1431. prop="fCntrno"
  1432. header-align="center"
  1433. width="130px"
  1434. align="center"
  1435. label="箱号"
  1436. >
  1437. <template slot-scope="scope">
  1438. <el-input
  1439. v-model="scope.row.fCntrno"
  1440. placeholder="箱号"
  1441. :disabled="
  1442. browseStatus ||
  1443. scope.row.fBillstatus === 20 ||
  1444. scope.row.fBillstatus === 30 ||
  1445. scope.row.fBillstatus === 40
  1446. "
  1447. show-word-limit
  1448. />
  1449. </template>
  1450. </el-table-column>
  1451. <el-table-column
  1452. prop="fGoodsval"
  1453. header-align="center"
  1454. width="130px"
  1455. align="center"
  1456. label="货值"
  1457. >
  1458. <template slot-scope="scope">
  1459. <el-input
  1460. oninput="value=value.replace(/[^\d.]/g,'')"
  1461. v-model="scope.row.fGoodsval"
  1462. placeholder="货值"
  1463. :disabled="
  1464. browseStatus ||
  1465. scope.row.fBillstatus === 20 ||
  1466. scope.row.fBillstatus === 30 ||
  1467. scope.row.fBillstatus === 40
  1468. "
  1469. show-word-limit
  1470. />
  1471. </template>
  1472. </el-table-column>
  1473. <el-table-column
  1474. prop="remark"
  1475. header-align="center"
  1476. width="130px"
  1477. align="center"
  1478. label="备注"
  1479. >
  1480. <template slot-scope="scope">
  1481. <el-input
  1482. v-model="scope.row.remark"
  1483. placeholder="备注"
  1484. :disabled="
  1485. browseStatus
  1486. "
  1487. show-word-limit
  1488. />
  1489. </template>
  1490. </el-table-column>
  1491. <el-table-column
  1492. header-align="center"
  1493. align="center"
  1494. label="操作"
  1495. width="130PX"
  1496. >
  1497. <template slot-scope="scope">
  1498. <el-button
  1499. :disabled="
  1500. browseStatus ||
  1501. scope.row.fBillstatus === 20 ||
  1502. scope.row.fBillstatus === 30 ||
  1503. scope.row.fBillstatus === 40
  1504. "
  1505. @click.native.prevent="wDeleteRow(scope.$index, dataList)"
  1506. size="small"
  1507. >移除</el-button
  1508. >
  1509. </template>
  1510. </el-table-column>
  1511. </el-table>
  1512. </el-collapse-item>
  1513. <el-collapse-item>
  1514. <template slot="title">
  1515. <i class="el-icon-s-order"></i>附件明细
  1516. </template>
  1517. <div
  1518. class="dialogTableTitle flex a-center jlr"
  1519. style="
  1520. display: flex;
  1521. justify-content: space-between;
  1522. align-items: center;
  1523. margin: 10px 0;
  1524. "
  1525. >
  1526. <div>
  1527. <el-button
  1528. size="small"
  1529. type="primary"
  1530. :disabled="browseStatus"
  1531. @click.prevent="addRelevt()"
  1532. >新行
  1533. </el-button>
  1534. </div>
  1535. </div>
  1536. <el-table
  1537. :data="relevantAttachments"
  1538. ref="table"
  1539. tooltip-effect="dark"
  1540. border
  1541. stripe
  1542. style="width: 100%"
  1543. height="150"
  1544. >
  1545. <el-table-column label="序号" type="index" width="80">
  1546. </el-table-column>
  1547. <el-table-column
  1548. prop="fName"
  1549. header-align="center"
  1550. align="center"
  1551. width="250px"
  1552. label="附件名称"
  1553. >
  1554. <template slot-scope="scope">
  1555. <el-input
  1556. v-model="scope.row.fName"
  1557. :disabled="browseStatus"
  1558. placeholder="附件名称"
  1559. show-word-limit
  1560. />
  1561. </template>
  1562. </el-table-column>
  1563. <el-table-column
  1564. prop="createBy"
  1565. header-align="center"
  1566. align="center"
  1567. width="250px"
  1568. label="上传人"
  1569. >
  1570. <template slot-scope="scope">
  1571. <el-input
  1572. v-model="scope.row.createBy"
  1573. disabled
  1574. placeholder="上传人"
  1575. show-word-limit
  1576. />
  1577. </template>
  1578. </el-table-column>
  1579. <el-table-column
  1580. prop="createTime"
  1581. header-align="center"
  1582. align="center"
  1583. label="上传时间"
  1584. >
  1585. <template slot-scope="scope">
  1586. <el-date-picker
  1587. v-model="scope.row.createTime"
  1588. type="date"
  1589. disabled
  1590. placeholder="上传时间"
  1591. format="yyyy-MM-dd HH:mm"
  1592. value-format="timestamp"
  1593. ></el-date-picker>
  1594. </template>
  1595. </el-table-column>
  1596. <el-table-column
  1597. prop="fUrl"
  1598. header-align="center"
  1599. align="center"
  1600. width="300px"
  1601. label="上传附件"
  1602. >
  1603. <template slot-scope="scope">
  1604. <uploadFile
  1605. :disabled="browseStatus"
  1606. @input="showFile"
  1607. v-model="scope.row.fUrl"
  1608. />
  1609. </template>
  1610. </el-table-column>
  1611. <el-table-column
  1612. header-align="center"
  1613. align="center"
  1614. label="操作"
  1615. width="130PX"
  1616. >
  1617. <template slot-scope="scope">
  1618. <el-button
  1619. @click.native.prevent="
  1620. deleteRow(scope.$index, relevantAttachments)
  1621. "
  1622. :disabled="browseStatus"
  1623. size="small"
  1624. >移除
  1625. </el-button>
  1626. </template>
  1627. </el-table-column>
  1628. </el-table>
  1629. </el-collapse-item>
  1630. <el-collapse-item>
  1631. <template slot="title">
  1632. <i class="el-icon-circle-plus"></i>收款信息
  1633. </template>
  1634. <div
  1635. class="dialogTableTitle flex a-center jlr"
  1636. style="
  1637. display: flex;
  1638. justify-content: space-between;
  1639. align-items: center;
  1640. margin: 10px 0;
  1641. "
  1642. >
  1643. <div>
  1644. <el-button
  1645. size="small"
  1646. type="primary"
  1647. :disabled="browseStatus"
  1648. @click.prevent="addCollection()"
  1649. >新行
  1650. </el-button>
  1651. <!-- <el-button :disabled="browseStatus" @click.prevent="deleteRow(warehouseDrList)"
  1652. >删除
  1653. </el-button> -->
  1654. <el-button type="primary" size="small" :disabled="browseStatus" @click="submitForm(2)">保 存</el-button>
  1655. <!-- <el-button @click.prevent="addAgreement()" type="warning">仓储费协议</el-button> -->
  1656. <el-button size="small" @click.prevent="handleSelect(3)" :disabled="browseStatus" type="danger"
  1657. >作业费协议</el-button
  1658. >
  1659. </div>
  1660. </div>
  1661. <el-table
  1662. :data="warehouseDrList"
  1663. ref="table"
  1664. tooltip-effect="dark"
  1665. border
  1666. stripe
  1667. show-summary
  1668. @selection-change="Collectionoptions"
  1669. :summary-method="warehouseDrSummaries"
  1670. >
  1671. <el-table-column type="selection" width="55" align="center" />
  1672. <el-table-column label="序号" type="index" width="80">
  1673. </el-table-column>
  1674. <el-table-column
  1675. prop="fCorpid"
  1676. header-align="center"
  1677. align="center"
  1678. width="180px"
  1679. label="客户名称"
  1680. >
  1681. <template slot-scope="scope">
  1682. <el-select
  1683. v-model="scope.row.fCorpid"
  1684. filterable
  1685. remote
  1686. :disabled="browseStatus"
  1687. :remote-method="corpsRemoteMethod"
  1688. placeholder="客户名称"
  1689. >
  1690. <el-option
  1691. v-for="(dict, index) in KHblnoOptions"
  1692. :key="index.fId"
  1693. :label="dict.fName"
  1694. :value="dict.fId"
  1695. ></el-option>
  1696. </el-select>
  1697. </template>
  1698. </el-table-column>
  1699. <el-table-column
  1700. prop="fFeeid"
  1701. header-align="center"
  1702. align="center"
  1703. width="180px"
  1704. label="费用名称"
  1705. >
  1706. <template slot-scope="scope">
  1707. <el-select
  1708. v-model="scope.row.fFeeid"
  1709. filterable
  1710. remote
  1711. :disabled="browseStatus"
  1712. :remote-method="fWRemoteMethod"
  1713. @change="changeFeeId(scope.row)"
  1714. placeholder="费用名称"
  1715. >
  1716. <el-option
  1717. v-for="(dict, index) in fWbuOptions"
  1718. :key="index.fId"
  1719. :label="dict.fName"
  1720. :value="dict.fId"
  1721. ></el-option>
  1722. </el-select>
  1723. </template>
  1724. </el-table-column>
  1725. <el-table-column
  1726. prop="fBusinessType"
  1727. header-align="center"
  1728. align="center"
  1729. width="180px"
  1730. label="作业类型"
  1731. >
  1732. <template slot-scope="scope">
  1733. <el-select
  1734. style="width: 80%"
  1735. v-model="scope.row.fBusinessType"
  1736. filterable
  1737. disabled
  1738. >
  1739. <el-option
  1740. v-for="(dict) in businessTypeOption"
  1741. :key="dict.dictValue"
  1742. :label="dict.dictLabel"
  1743. :value="dict.dictValue"
  1744. ></el-option>
  1745. </el-select>
  1746. </template>
  1747. </el-table-column>
  1748. <el-table-column
  1749. prop="fFeeUnitid"
  1750. header-align="center"
  1751. align="center"
  1752. width="180px"
  1753. label="计价单位"
  1754. >
  1755. <template slot-scope="scope">
  1756. <el-select
  1757. v-model="scope.row.fFeeUnitid"
  1758. placeholder="请选择计价单位"
  1759. @change="changeFeeUnit(scope.row)"
  1760. clearable
  1761. :disabled="browseStatus"
  1762. >
  1763. <el-option
  1764. v-for="(dict, index) in jFeetunitOptions"
  1765. :key="index.dictValue"
  1766. :label="dict.dictLabel"
  1767. :value="dict.dictValue"
  1768. />
  1769. </el-select>
  1770. </template>
  1771. </el-table-column>
  1772. <el-table-column
  1773. prop="fQty"
  1774. header-align="center"
  1775. align="center"
  1776. width="130px"
  1777. label="数量"
  1778. >
  1779. <template slot-scope="scope">
  1780. <el-input
  1781. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  1782. v-model="scope.row.fQty"
  1783. placeholder="数量"
  1784. :disabled="browseStatus"
  1785. @change="changeContractAmt(scope.row)"
  1786. show-word-limit
  1787. />
  1788. </template>
  1789. </el-table-column>
  1790. <el-table-column
  1791. prop="fUnitprice"
  1792. header-align="center"
  1793. align="center"
  1794. width="130px"
  1795. label="单价"
  1796. >
  1797. <template slot-scope="scope">
  1798. <el-input
  1799. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  1800. v-model="scope.row.fUnitprice"
  1801. placeholder="单价"
  1802. :disabled="browseStatus"
  1803. @change="changeContractAmt(scope.row)"
  1804. show-word-limit
  1805. />
  1806. </template>
  1807. </el-table-column>
  1808. <el-table-column
  1809. prop="fAmount"
  1810. header-align="center"
  1811. align="center"
  1812. width="130px"
  1813. label="金额"
  1814. >
  1815. <template slot-scope="scope">
  1816. <el-input
  1817. disabled
  1818. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  1819. v-model="scope.row.fAmount"
  1820. placeholder="金额"
  1821. show-word-limit
  1822. />
  1823. </template>
  1824. </el-table-column>
  1825. <el-table-column
  1826. prop="fStltypeid"
  1827. header-align="center"
  1828. align="center"
  1829. width="130px"
  1830. label="结算方式"
  1831. >
  1832. <template slot-scope="scope">
  1833. <el-select
  1834. v-model="scope.row.fStltypeid"
  1835. placeholder="请选择结算表票结、月结"
  1836. :disabled="browseStatus"
  1837. >
  1838. <el-option
  1839. v-for="dict in fStltypeOptions"
  1840. :key="dict.dictValue"
  1841. :label="dict.dictLabel"
  1842. :value="parseInt(dict.dictValue)"
  1843. ></el-option>
  1844. </el-select>
  1845. </template>
  1846. </el-table-column>
  1847. <el-table-column
  1848. prop="fCurrency"
  1849. header-align="center"
  1850. align="center"
  1851. width="130px"
  1852. label="币别"
  1853. >
  1854. <template slot-scope="scope">
  1855. <el-input
  1856. v-model="scope.row.fCurrency"
  1857. :disabled="browseStatus"
  1858. placeholder="币别"
  1859. show-word-limit
  1860. />
  1861. </template>
  1862. </el-table-column>
  1863. <el-table-column
  1864. prop="fExrate"
  1865. header-align="center"
  1866. align="center"
  1867. width="130px"
  1868. label="汇率"
  1869. >
  1870. <template slot-scope="scope">
  1871. <el-input
  1872. v-model="scope.row.fExrate"
  1873. :disabled="browseStatus"
  1874. placeholder="汇率"
  1875. show-word-limit
  1876. />
  1877. </template>
  1878. </el-table-column>
  1879. <el-table-column
  1880. prop="fTaxrate"
  1881. header-align="center"
  1882. align="center"
  1883. width="130px"
  1884. label="税率"
  1885. >
  1886. <template slot-scope="scope">
  1887. <el-input
  1888. v-model="scope.row.fTaxrate"
  1889. :disabled="browseStatus"
  1890. placeholder="税率"
  1891. show-word-limit
  1892. />
  1893. </template>
  1894. </el-table-column>
  1895. <el-table-column
  1896. prop="fMblno"
  1897. header-align="center"
  1898. align="center"
  1899. width="130px"
  1900. label="提单号"
  1901. >
  1902. <template slot-scope="scope">
  1903. <el-input
  1904. v-model="scope.row.fMblno"
  1905. :disabled="browseStatus"
  1906. placeholder="提单号"
  1907. show-word-limit
  1908. />
  1909. </template>
  1910. </el-table-column>
  1911. <el-table-column
  1912. prop="fProductName"
  1913. header-align="center"
  1914. align="center"
  1915. width="140px"
  1916. label="品名"
  1917. >
  1918. <template slot-scope="scope">
  1919. <el-input
  1920. v-model="scope.row.fProductName"
  1921. :disabled="browseStatus"
  1922. placeholder="品名"
  1923. show-word-limit
  1924. />
  1925. </template>
  1926. </el-table-column>
  1927. <el-table-column
  1928. prop="fMarks"
  1929. header-align="center"
  1930. align="center"
  1931. width="130px"
  1932. label="品牌"
  1933. >
  1934. <template slot-scope="scope">
  1935. <el-input
  1936. v-model="scope.row.fMarks"
  1937. :disabled="browseStatus"
  1938. placeholder="品牌"
  1939. show-word-limit
  1940. />
  1941. </template>
  1942. </el-table-column>
  1943. <el-table-column
  1944. prop="remarks"
  1945. header-align="center"
  1946. align="center"
  1947. width="150px"
  1948. label="备注"
  1949. >
  1950. <template slot-scope="scope">
  1951. <el-input
  1952. v-model="scope.row.Remarks"
  1953. :disabled="browseStatus"
  1954. placeholder="备注"
  1955. show-word-limit
  1956. />
  1957. </template>
  1958. </el-table-column>
  1959. <el-table-column
  1960. header-align="center"
  1961. align="center"
  1962. label="操作"
  1963. width="200px"
  1964. >
  1965. <template slot-scope="scope">
  1966. <el-button
  1967. @click.native.prevent="deleteRow(scope.$index, warehouseDrList)"
  1968. size="small"
  1969. :disabled="browseStatus"
  1970. >移除</el-button
  1971. >
  1972. </template>
  1973. </el-table-column>
  1974. </el-table>
  1975. </el-collapse-item>
  1976. <el-collapse-item>
  1977. <template slot="title">
  1978. <i class="el-icon-remove"></i>付款信息
  1979. </template>
  1980. <div
  1981. class="dialogTableTitle flex a-center jlr"
  1982. style="
  1983. display: flex;
  1984. justify-content: space-between;
  1985. align-items: center;
  1986. margin: 10px 0;
  1987. "
  1988. >
  1989. <div>
  1990. <el-button
  1991. type="primary"
  1992. :disabled="browseStatus"
  1993. @click.prevent="addpayment()"
  1994. size="small"
  1995. >新行
  1996. </el-button>
  1997. <el-button type="primary" size="small" @click="submitForm(2)" :disabled="browseStatus">保 存</el-button>
  1998. <el-button type="danger" size="small" @click.prevent="handleSelect(1)" :disabled="browseStatus"
  1999. >作业费协议</el-button>
  2000. </div>
  2001. </div>
  2002. <el-table
  2003. :data="warehouseCrList"
  2004. ref="table"
  2005. tooltip-effect="dark"
  2006. border
  2007. stripe
  2008. show-summary
  2009. @selection-change="Paymentoptions"
  2010. :summary-method="warehouseDrSummaries"
  2011. >
  2012. <el-table-column type="selection" width="55" align="center" />
  2013. <el-table-column label="序号" type="index" width="80">
  2014. </el-table-column>
  2015. <el-table-column
  2016. prop="fCorpid"
  2017. header-align="center"
  2018. align="center"
  2019. width="180px"
  2020. label="客户名称"
  2021. >
  2022. <template slot-scope="scope">
  2023. <el-select
  2024. v-model="scope.row.fCorpid"
  2025. filterable
  2026. remote
  2027. :disabled="browseStatus"
  2028. :remote-method="corpsRemoteMethod"
  2029. placeholder="客户名称"
  2030. >
  2031. <el-option
  2032. v-for="(dict, index) in KHblnoOptions"
  2033. :key="index.fId"
  2034. :label="dict.fName"
  2035. :value="dict.fId"
  2036. ></el-option>
  2037. </el-select>
  2038. </template>
  2039. </el-table-column>
  2040. <el-table-column
  2041. prop="fFeeid"
  2042. header-align="center"
  2043. align="center"
  2044. width="180px"
  2045. label="费用名称"
  2046. >
  2047. <template slot-scope="scope">
  2048. <el-select
  2049. v-model="scope.row.fFeeid"
  2050. filterable
  2051. :disabled="browseStatus"
  2052. remote
  2053. :remote-method="fWRemoteMethod"
  2054. @change="changeFeeId(scope.row)"
  2055. placeholder="费用名称"
  2056. >
  2057. <el-option
  2058. v-for="(dict, index) in fWbuOptions"
  2059. :key="index.fId"
  2060. :label="dict.fName"
  2061. :value="dict.fId"
  2062. ></el-option>
  2063. </el-select>
  2064. </template>
  2065. </el-table-column>
  2066. <el-table-column
  2067. prop="fBusinessType"
  2068. header-align="center"
  2069. align="center"
  2070. width="180px"
  2071. label="作业类型"
  2072. >
  2073. <template slot-scope="scope">
  2074. <el-select
  2075. style="width: 80%"
  2076. v-model="scope.row.fBusinessType"
  2077. filterable
  2078. disabled
  2079. >
  2080. <el-option
  2081. v-for="(dict) in businessTypeOption"
  2082. :key="dict.dictValue"
  2083. :label="dict.dictLabel"
  2084. :value="dict.dictValue"
  2085. ></el-option>
  2086. </el-select>
  2087. </template>
  2088. </el-table-column>
  2089. <el-table-column
  2090. prop="fFeeUnitid"
  2091. header-align="center"
  2092. align="center"
  2093. width="180px"
  2094. label="计价单位"
  2095. >
  2096. <template slot-scope="scope">
  2097. <el-select
  2098. v-model="scope.row.fFeeUnitid"
  2099. filterable
  2100. remote
  2101. @change="changeFeeUnit(scope.row)"
  2102. :disabled="browseStatus"
  2103. :remote-method="corpsRemoteMethod"
  2104. placeholder="计价单位"
  2105. >
  2106. <el-option
  2107. v-for="(dict, index) in jFeetunitOptions"
  2108. :key="index.dictValue"
  2109. :label="dict.dictLabel"
  2110. :value="dict.dictValue"
  2111. ></el-option>
  2112. </el-select>
  2113. </template>
  2114. </el-table-column>
  2115. <el-table-column
  2116. prop="fQty"
  2117. header-align="center"
  2118. align="center"
  2119. width="150px"
  2120. label="数量"
  2121. >
  2122. <template slot-scope="scope">
  2123. <el-input
  2124. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d\d\d).*$/, "$1$2.$3")'
  2125. v-model="scope.row.fQty"
  2126. :disabled="browseStatus"
  2127. @change="changeContractAmt(scope.row)"
  2128. placeholder="数量"
  2129. show-word-limit
  2130. />
  2131. </template>
  2132. </el-table-column>
  2133. <el-table-column
  2134. prop="fUnitprice"
  2135. header-align="center"
  2136. align="center"
  2137. width="150px"
  2138. label="单价"
  2139. >
  2140. <template slot-scope="scope">
  2141. <el-input
  2142. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  2143. v-model="scope.row.fUnitprice"
  2144. :disabled="browseStatus"
  2145. @change="changeContractAmt(scope.row)"
  2146. placeholder="单价"
  2147. show-word-limit
  2148. />
  2149. </template>
  2150. </el-table-column>
  2151. <el-table-column
  2152. prop="fAmount"
  2153. header-align="center"
  2154. align="center"
  2155. width="150px"
  2156. label="金额"
  2157. >
  2158. <template slot-scope="scope">
  2159. <el-input
  2160. disabled
  2161. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  2162. v-model="scope.row.fAmount"
  2163. placeholder="金额"
  2164. show-word-limit
  2165. />
  2166. </template>
  2167. </el-table-column>
  2168. <el-table-column
  2169. prop="fStltypeid"
  2170. header-align="center"
  2171. align="center"
  2172. width="130px"
  2173. label="结算方式"
  2174. >
  2175. <template slot-scope="scope">
  2176. <el-select
  2177. v-model="scope.row.fStltypeid"
  2178. placeholder="请选择结算表票结、月结"
  2179. :disabled="browseStatus"
  2180. >
  2181. <el-option
  2182. v-for="dict in fStltypeOptions"
  2183. :key="dict.dictValue"
  2184. :label="dict.dictLabel"
  2185. :value="parseInt(dict.dictValue)"
  2186. ></el-option>
  2187. </el-select>
  2188. </template>
  2189. </el-table-column>
  2190. <el-table-column
  2191. prop="fCurrency"
  2192. header-align="center"
  2193. align="center"
  2194. width="150px"
  2195. label="币别"
  2196. >
  2197. <template slot-scope="scope">
  2198. <el-input
  2199. v-model="scope.row.fCurrency"
  2200. :disabled="browseStatus"
  2201. placeholder="币别"
  2202. show-word-limit
  2203. />
  2204. </template>
  2205. </el-table-column>
  2206. <el-table-column
  2207. prop="fExrate"
  2208. header-align="center"
  2209. align="center"
  2210. width="150px"
  2211. label="汇率"
  2212. >
  2213. <template slot-scope="scope">
  2214. <el-input
  2215. v-model="scope.row.fExrate"
  2216. :disabled="browseStatus"
  2217. placeholder="汇率"
  2218. show-word-limit
  2219. />
  2220. </template>
  2221. </el-table-column>
  2222. <el-table-column
  2223. prop="fTaxrate"
  2224. header-align="center"
  2225. align="center"
  2226. width="150px"
  2227. label="税率"
  2228. >
  2229. <template slot-scope="scope">
  2230. <el-input
  2231. v-model="scope.row.fTaxrate"
  2232. :disabled="browseStatus"
  2233. placeholder="税率"
  2234. show-word-limit
  2235. />
  2236. </template>
  2237. </el-table-column>
  2238. <el-table-column
  2239. prop="fMblno"
  2240. header-align="center"
  2241. align="center"
  2242. width="130px"
  2243. label="提单号"
  2244. >
  2245. <template slot-scope="scope">
  2246. <el-input
  2247. v-model="scope.row.fMblno"
  2248. :disabled="browseStatus"
  2249. placeholder="提单号"
  2250. show-word-limit
  2251. />
  2252. </template>
  2253. </el-table-column>
  2254. d
  2255. <el-table-column
  2256. prop="fProductName"
  2257. header-align="center"
  2258. align="center"
  2259. width="140px"
  2260. label="品名"
  2261. >
  2262. <template slot-scope="scope">
  2263. <el-input
  2264. v-model="scope.row.fProductName"
  2265. :disabled="browseStatus"
  2266. placeholder="品名"
  2267. show-word-limit
  2268. />
  2269. </template>
  2270. </el-table-column>
  2271. <el-table-column
  2272. prop="fMarks"
  2273. header-align="center"
  2274. align="center"
  2275. width="130px"
  2276. label="品牌"
  2277. >
  2278. <template slot-scope="scope">
  2279. <el-input
  2280. v-model="scope.row.fMarks"
  2281. :disabled="browseStatus"
  2282. placeholder="品牌"
  2283. show-word-limit
  2284. />
  2285. </template>
  2286. </el-table-column>
  2287. <el-table-column
  2288. prop="remarks"
  2289. header-align="center"
  2290. align="center"
  2291. width="150px"
  2292. label="备注"
  2293. >
  2294. <template slot-scope="scope">
  2295. <el-input
  2296. v-model="scope.row.remarks"
  2297. :disabled="browseStatus"
  2298. placeholder="备注"
  2299. show-word-limit
  2300. />
  2301. </template>
  2302. </el-table-column>
  2303. <el-table-column
  2304. header-align="center"
  2305. align="center"
  2306. width="200px"
  2307. label="操作"
  2308. >
  2309. <template slot-scope="scope">
  2310. <!-- <el-button size="small">审核费用</el-button> -->
  2311. <el-button
  2312. @click.native.prevent="deleteRoww(scope.$index, warehouseCrList)"
  2313. size="small"
  2314. :disabled="browseStatus"
  2315. >移除</el-button
  2316. >
  2317. </template>
  2318. </el-table-column>
  2319. </el-table>
  2320. </el-collapse-item>
  2321. </el-collapse>
  2322. <div slot="footer" class="dialog-footer">
  2323. <!-- 弹窗, 新增 / 修改 -->
  2324. <add-or-update
  2325. v-if="addOrUpdateVisible"
  2326. ref="addOrUpdate"
  2327. @refreshDataList="getDataList"
  2328. ></add-or-update>
  2329. <approval-comments
  2330. v-if="addOrUpdateVisib"
  2331. ref="ApprovalComments"
  2332. @refreshDataList="returnData"
  2333. ></approval-comments>
  2334. <el-button
  2335. type="primary"
  2336. :disabled="approvalStatus"
  2337. v-if="form.fBillstatus > 3"
  2338. @click="addOrUpdateHandle(form)"
  2339. >查看审批</el-button>
  2340. <el-button
  2341. type="primary"
  2342. v-if="approVal === true"
  2343. @click="addOrUpdateHand(form)"
  2344. >审批</el-button>
  2345. <el-button :disabled="browseStatus" type="success" prop="打印" @click="showEditDialog_ss"
  2346. >收货单
  2347. </el-button>
  2348. <el-button :disabled="browseStatus" type="warning" prop="打印" @click="showEditDialog_s"
  2349. >入库单
  2350. </el-button>
  2351. <el-button @click="discharge" :disabled="browseStatus">卸货</el-button>
  2352. <el-button type="info" :disabled="browseStatus" prop="打印" @click="showEditDialog_sss"
  2353. >作业单
  2354. </el-button>
  2355. <el-button
  2356. :disabled="browseStatus"
  2357. type="primary"
  2358. @click="submitForm(2)"
  2359. >保 存</el-button
  2360. >
  2361. <el-button
  2362. :disabled="browseStatus"
  2363. style="background-color: #008000; color: #fff"
  2364. @click="submitForm(6)"
  2365. >请核</el-button>
  2366. <el-button type="danger" v-if="form.fBillstatus === 6" @click="revoke">撤销请核</el-button>
  2367. <el-button type="danger" v-if="form.fBillstatus === 4 && current == before" :disabled="doNot" @click="revokeTwo">撤销请核</el-button>
  2368. <el-button @click="cancelTwo" v-if="approVal === true">取 消</el-button>
  2369. <el-button @click="cancel" v-else>取 消</el-button>
  2370. </div>
  2371. <!-- 入库新行计划重量导入 -->
  2372. <el-dialog
  2373. title="入库明细"
  2374. :modal="false"
  2375. style="height: 500px"
  2376. height="50%"
  2377. :close-on-click-modal="false"
  2378. :visible.sync="weightList"
  2379. @close="closeDialog"
  2380. width="70%"
  2381. >
  2382. <el-form
  2383. ref="planningList"
  2384. :model="form"
  2385. :rules="rules"
  2386. label-width="120px"
  2387. >
  2388. <el-row>
  2389. <el-col :span="8">
  2390. <el-form-item label="计划件数" prop="fPlanqty">
  2391. <el-input
  2392. oninput='this.value=this.value.replace(/[^\-?\d]/g,"")'
  2393. v-model="planningList.fPlanqty"
  2394. style="width: 80%"
  2395. laceholder="计划件数"
  2396. @input="changeList(form)"
  2397. />
  2398. </el-form-item>
  2399. </el-col>
  2400. <el-col :span="8">
  2401. <el-form-item label="计划净重(kg)" prop="fPlannetweight">
  2402. <el-input
  2403. v-model="planningList.fPlannetweight"
  2404. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  2405. style="width: 80%"
  2406. disabled
  2407. laceholder="计划毛重"
  2408. />
  2409. </el-form-item>
  2410. </el-col>
  2411. <el-col :span="8">
  2412. <el-form-item label="计划毛重(kg)" prop="fPlangrossweight">
  2413. <el-input
  2414. v-model="planningList.fPlangrossweight"
  2415. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  2416. style="width: 80%"
  2417. disabled
  2418. laceholder="计划毛重"
  2419. />
  2420. </el-form-item>
  2421. </el-col>
  2422. </el-row>
  2423. </el-form>
  2424. <div slot="footer" class="dialog-footer">
  2425. <el-button type="primary" @click="costList">导入库存明细</el-button>
  2426. <el-button @click="weightList = false">取 消</el-button>
  2427. </div>
  2428. </el-dialog>
  2429. <!-- 选择作业费协议数据 -->
  2430. <el-dialog
  2431. title="作业费协议"
  2432. :close-on-click-modal="false"
  2433. :modal="false"
  2434. style="box-shadow: 0 1px 3px rgba(0, 0, 0, 0) !important"
  2435. :visible.sync="warehousingagreement"
  2436. width="70%"
  2437. >
  2438. <el-table
  2439. :data="tasklegList"
  2440. ref="table"
  2441. tooltip-effect="dark"
  2442. width="100%"
  2443. border
  2444. stripe
  2445. @selection-change="whgenlegSelectionChange"
  2446. >
  2447. <el-table-column type="selection" width="55"> </el-table-column>
  2448. <el-table-column label="行号" type="index" width="80">
  2449. </el-table-column>
  2450. <el-table-column
  2451. prop="fCorpname"
  2452. header-align="center"
  2453. align="center"
  2454. label="客户名称"
  2455. >
  2456. </el-table-column>
  2457. <el-table-column
  2458. prop="fName"
  2459. header-align="center"
  2460. align="center"
  2461. label="费用名称"
  2462. >
  2463. </el-table-column>
  2464. <el-table-column
  2465. prop="fFeeUnitid"
  2466. header-align="center"
  2467. align="center"
  2468. width="180px"
  2469. label="计价单位"
  2470. >
  2471. <template slot-scope="scope">
  2472. <el-select
  2473. v-model="scope.row.fFeeUnitid"
  2474. placeholder="请选择计费单位"
  2475. @change="changeFeeUnit(scope.row)"
  2476. disabled
  2477. clearable
  2478. >
  2479. <el-option
  2480. v-for="dict in jFeetunitOptions"
  2481. :key="dict.dictValue"
  2482. :label="dict.dictLabel"
  2483. :value="dict.dictValue"
  2484. />
  2485. </el-select>
  2486. </template>
  2487. </el-table-column>
  2488. <el-table-column
  2489. prop="fPrice"
  2490. header-align="center"
  2491. align="center"
  2492. label="单价"
  2493. >
  2494. </el-table-column>
  2495. <!-- <el-table-column
  2496. prop="fMarks"
  2497. header-align="center"
  2498. align="center"
  2499. label="唛头"
  2500. >
  2501. </el-table-column> -->
  2502. </el-table>
  2503. <pagination
  2504. v-show="whgenlegTotal > 0"
  2505. :total="whgenlegTotal"
  2506. :page.sync="queryParams.pageNum"
  2507. :limit.sync="queryParams.pageSize"
  2508. @pagination="getWhgenlegList"
  2509. />
  2510. <div slot="footer" class="dialog-footer">
  2511. <el-button type="primary" @click="whgenlegData"
  2512. >导入作业费协议</el-button
  2513. >
  2514. <el-button @click="warehousingagreement = false">取 消</el-button>
  2515. </div>
  2516. </el-dialog>
  2517. <!-- 选择作业费协议数据 -->
  2518. <el-dialog
  2519. title="作业费协议"
  2520. :close-on-click-modal="false"
  2521. :modal="false"
  2522. style="box-shadow: 0 1px 3px rgba(0, 0, 0, 0) !important"
  2523. :visible.sync="warehousingagreements"
  2524. width="70%"
  2525. >
  2526. <el-menu :default-active="activeIndex" v-if="Navigation === true" class="el-menu-demo" mode="horizontal" @select="handleSelect">
  2527. <el-menu-item index="1">车队作业费</el-menu-item>
  2528. <el-menu-item index="2">劳务作业费</el-menu-item>
  2529. </el-menu>
  2530. <el-table
  2531. :data="tasklegList"
  2532. ref="table"
  2533. tooltip-effect="dark"
  2534. width="100%"
  2535. border
  2536. stripe
  2537. @selection-change="whgenlegSelectionChange"
  2538. >
  2539. <el-table-column type="selection" width="55"> </el-table-column>
  2540. <el-table-column label="行号" type="index" width="80">
  2541. </el-table-column>
  2542. <el-table-column
  2543. prop="fCorpname"
  2544. header-align="center"
  2545. align="center"
  2546. label="客户名称"
  2547. >
  2548. </el-table-column>
  2549. <el-table-column
  2550. prop="fName"
  2551. header-align="center"
  2552. align="center"
  2553. label="费用名称"
  2554. >
  2555. </el-table-column>
  2556. <el-table-column
  2557. prop="fFeeUnitid"
  2558. header-align="center"
  2559. align="center"
  2560. width="180px"
  2561. label="计价单位"
  2562. >
  2563. <template slot-scope="scope">
  2564. <el-select
  2565. v-model="scope.row.fFeeUnitid"
  2566. placeholder="请选择计费单位"
  2567. @change="changeFeeUnit(scope.row)"
  2568. disabled
  2569. clearable
  2570. >
  2571. <el-option
  2572. v-for="dict in jFeetunitOptions"
  2573. :key="dict.dictValue"
  2574. :label="dict.dictLabel"
  2575. :value="dict.dictValue"
  2576. />
  2577. </el-select>
  2578. </template>
  2579. </el-table-column>
  2580. <el-table-column
  2581. prop="fPrice"
  2582. header-align="center"
  2583. align="center"
  2584. label="单价"
  2585. >
  2586. </el-table-column>
  2587. </el-table>
  2588. <pagination
  2589. v-show="whgenlegTotal > 0"
  2590. :total="whgenlegTotal"
  2591. :page.sync="queryParams.pageNum"
  2592. :limit.sync="queryParams.pageSize"
  2593. @pagination="getWhgenlegList"
  2594. />
  2595. <div slot="footer" class="dialog-footer">
  2596. <el-button type="primary" @click="zhgenlegData">导 入</el-button>
  2597. <el-button @click="warehousingagreements = false ; Navigation = false">取 消</el-button>
  2598. </div>
  2599. </el-dialog>
  2600. <el-dialog
  2601. title=""
  2602. :modal="false"
  2603. style="box-shadow: 0 1px 3px rgba(0, 0, 0, 0) !important"
  2604. :visible.sync="editDialogVisible_s"
  2605. :close-on-click-modal="false"
  2606. @close="closeDialog"
  2607. width="70%"
  2608. >
  2609. <table
  2610. id="print_area2"
  2611. class="biaoge zzss"
  2612. border="1"
  2613. style="border-collapse: collapse; border: none"
  2614. >
  2615. <tr>
  2616. <td
  2617. width="100"
  2618. colspan="7"
  2619. class="zzss"
  2620. style="font-size: 28px; font-weight: bold; border: none"
  2621. >
  2622. 青岛大木进仓单
  2623. </td>
  2624. </tr>
  2625. <tr>
  2626. <td
  2627. width="100"
  2628. colspan="7"
  2629. class="zzss"
  2630. style="font-size: 28px; font-weight: bold; border: none"
  2631. >
  2632. &nbsp;
  2633. </td>
  2634. </tr>
  2635. <tr>
  2636. <td width="450" colspan="2" class="zzss">
  2637. 货权方:{{ form.fCorpidName }}
  2638. </td>
  2639. <td width="450" colspan="2" class="zzss">
  2640. 仓库:{{ form.fWarehouseid }}
  2641. </td>
  2642. <td width="450" colspan="3" class="zzss">地址:{{ fAddr }}</td>
  2643. </tr>
  2644. <tr>
  2645. <td width="200" colspan="2" class="zzss">保管方:大木有限公司</td>
  2646. <td width="200" colspan="2" class="zzss">
  2647. 联系人:{{ form.fContacts }}
  2648. </td>
  2649. <td width="200" colspan="3" class="zzss">电话:{{ form.fTel }}</td>
  2650. </tr>
  2651. <tr>
  2652. <td width="100" border="1">提单号</td>
  2653. <td width="100">品名</td>
  2654. <td width="100">箱型</td>
  2655. <td width="100">品牌</td>
  2656. <td width="100">件数</td>
  2657. <td width="100">重量</td>
  2658. <td width="100">包装规格</td>
  2659. </tr>
  2660. <tr>
  2661. <td width="100">{{ form.fMblno }}</td>
  2662. <td width="100">{{ form.fProductName }}</td>
  2663. <td width="100">{{ dataList.fCntrtype }}</td>
  2664. <td width="100">{{ form.fMarks }}</td>
  2665. <td width="100">包</td>
  2666. <td width="100">吨</td>
  2667. <td width="100">{{ fPackagespecs }}</td>
  2668. </tr>
  2669. <tr>
  2670. <td width="100">序号</td>
  2671. <td width="100">入货日期</td>
  2672. <td width="100">箱量(20GP)</td>
  2673. <td width="100">重量</td>
  2674. <td width="100">件数</td>
  2675. <td width="100">入库重量</td>
  2676. <td width="100">入库件数</td>
  2677. </tr>
  2678. <tr v-for="(item, indexx) in Printinglist" :key="indexx">
  2679. <td width="100">{{ indexx + 1 }}</td>
  2680. <td width="100">{{ item.fBsdate }}</td>
  2681. <td width="100">{{ item.fCntqty }}</td>
  2682. <td width="100">{{ (item.fGrossweight / 1000).toFixed(2) }}</td>
  2683. <td width="100">{{ item.fPlanqty }}</td>
  2684. <td width="100">{{ (item.fNetweight / 1000).toFixed(2) }}</td>
  2685. <td width="100">{{ item.fQty }}</td>
  2686. </tr>
  2687. <tr>
  2688. <td width="100" colspan="2">合计:</td>
  2689. <td width="100">{{ fCntqty }}</td>
  2690. <td width="100">{{ form.sumFGrossweight }}</td>
  2691. <td width="100">{{ fPlanqty }}</td>
  2692. <td width="100">{{ form.sumFNetweight}}</td>
  2693. <td width="100">{{ fQty }}</td>
  2694. </tr>
  2695. <tr>
  2696. <td width="100">备注:</td>
  2697. <td width="100" colspan="6"></td>
  2698. </tr>
  2699. <tr>
  2700. <td width="100" colspan="7" class="zzss">
  2701. 本进仓单经仓管员签字并经保管方盖章后即专项作为货物所有人的货权证明,本单据不得转让。
  2702. </td>
  2703. </tr>
  2704. <tr style="border: none">
  2705. <td width="100" colspan="2" class="zzss" style="border: none">
  2706. 开单员:
  2707. </td>
  2708. <td width="100" colspan="3" class="zzss" style="border: none"></td>
  2709. <td width="100" colspan="2" class="zzss" style="border: none">
  2710. 仓管员:
  2711. </td>
  2712. </tr>
  2713. <tr style="border: none">
  2714. <td width="100" colspan="2" class="zzss" style="border: none">
  2715. 开单时间:
  2716. </td>
  2717. <td width="100" colspan="3" class="zzss" style="border: none"></td>
  2718. <td width="100" colspan="2" class="zzss" style="border: none">
  2719. (盖章)
  2720. </td>
  2721. </tr>
  2722. </table>
  2723. <el-button @click="printSomething1">打印</el-button>
  2724. <el-button @click="editDialogVisible_s = false">取消 </el-button>
  2725. </el-dialog>
  2726. <el-dialog
  2727. title=""
  2728. style="box-shadow: 0 1px 3px rgba(0, 0, 0, 0) !important"
  2729. :visible.sync="editDialogVisible_ss"
  2730. :close-on-click-modal="false"
  2731. width="70%"
  2732. :modal="false"
  2733. >
  2734. <table
  2735. id="print_area3"
  2736. class="biaoge zzss"
  2737. border="1"
  2738. style="border-collapse: collapse; border: none;margin-top:100px;"
  2739. >
  2740. <tr>
  2741. <td
  2742. width="1400"
  2743. colspan="6"
  2744. class="zzss"
  2745. style="font-size: 26px; font-weight: bold; border: none"
  2746. >
  2747. 大木国际物流(青岛)有限公司收货单
  2748. </td>
  2749. </tr>
  2750. <!-- <div v-for="{{}}" :key="index"> -->
  2751. <tr>
  2752. <td width="400">车号:</td>
  2753. <td width="400" v-if="Printinglist.length === 0"></td>
  2754. <td width="400" v-else>{{ Printinglist[0].fTruckno }}</td>
  2755. <td
  2756. width="500"
  2757. colspan="4"
  2758. style="padding-bottom: 0px; font-weight: bold; border: none"
  2759. class="zzss"
  2760. v-if="Printinglist.length === 0"
  2761. >
  2762. 日期:
  2763. </td>
  2764. <td
  2765. width="500"
  2766. colspan="4"
  2767. style="padding-bottom: 0px; font-weight: bold; border: none"
  2768. class="zzss"
  2769. v-else
  2770. >
  2771. 日期:{{ parseTime(Printinglist[0].fBsdate,"{y}-{m}-{d}") }} {{ fBstime.slice(11,19) }}
  2772. </td>
  2773. <!-- <td
  2774. width="500"
  2775. colspan="2"
  2776. style="padding-bottom: 0px; font-weight: bold; border: none"
  2777. class="zzss"
  2778. >
  2779. </td> -->
  2780. </tr>
  2781. <tr v-for="(item, index) in Printinglist" :key="index">
  2782. <td width="250">货物品名:</td>
  2783. <td width="200" colspan="">{{ item.fGoodsids }}</td>
  2784. <!-- <td width="200" colspan="2">件数: 161件</td> -->
  2785. <!-- <td width="200"></td> -->
  2786. <td width="200" colspan="4" class="zzss">
  2787. 件数: {{ item.fQty }}件
  2788. </td>
  2789. </tr>
  2790. <!-- <tr>
  2791. <td width="1400" colspan="6">&nbsp;</td>
  2792. </tr> -->
  2793. <tr>
  2794. <td>备注:</td>
  2795. <td colspan="5">{{ form.remark }}</td>
  2796. </tr>
  2797. <tr>
  2798. <td>司机签字:</td>
  2799. <td></td>
  2800. <td colspan="2">司机电话:</td>
  2801. <td colspan="2" v-if="dataList.length !== 0">{{ dataList[0].fDriverTel }}</td>
  2802. <td colspan="2" v-else>1</td>
  2803. </tr>
  2804. <tr>
  2805. <td>制单人:</td>
  2806. <td>{{ form.createBy }}</td>
  2807. <td colspan="2">收货人:</td>
  2808. <td colspan="2">{{ form.fContacts }}</td>
  2809. </tr>
  2810. <!-- <tr>
  2811. <td colspan="6" class="zzss">&nbsp;</td>
  2812. </tr> -->
  2813. <tr>
  2814. <td width="280" class="zzss"></td>
  2815. <td width="280" class="zzss"></td>
  2816. <td width="280" class="zzss"></td>
  2817. <td width="280" class="zzss"></td>
  2818. <td width="290" class="zzss">地址:{{ fAddr }}</td>
  2819. <td width="290" class="zzss">电话:{{ form.fTel }}</td>
  2820. </tr>
  2821. <!-- </div> -->
  2822. </table>
  2823. <el-button @click="printSomething">打印</el-button>
  2824. <el-button @click="editDialogVisible_ss = false">取消 </el-button>
  2825. </el-dialog>
  2826. <el-dialog
  2827. title=""
  2828. style="box-shadow: 0 1px 3px rgba(0, 0, 0, 0) !important"
  2829. :visible.sync="editDialogVisible_sss"
  2830. :close-on-click-modal="false"
  2831. width="70%"
  2832. :modal="false"
  2833. >
  2834. <table
  2835. id="print_area1"
  2836. class="biaoge zzss"
  2837. border="1"
  2838. style="border-collapse: collapse;border: none"
  2839. >
  2840. <tr>
  2841. <td
  2842. width="1400"
  2843. colspan="6"
  2844. class="zzss"
  2845. style="font-size: 20px; font-weight: bold; border: none"
  2846. >
  2847. 大木国际物流(青岛)有限公司作业单
  2848. </td>
  2849. </tr>
  2850. <tr>
  2851. <td
  2852. width="500"
  2853. colspan="4"
  2854. style="padding: 6px; font-weight: bold;"
  2855. class="zzss"
  2856. >
  2857. 作业类型:{{ businessType }}
  2858. </td>
  2859. <!-- <td-->
  2860. <!-- width="900"-->
  2861. <!-- colspan="2"-->
  2862. <!-- class="zzss"-->
  2863. <!-- style="font-size: 28px; font-weight: bold;"-->
  2864. <!-- >-->
  2865. <!-- </td>-->
  2866. <td width="500"v-if="!fBsdates || !fBstime" colspan="2" style="padding-bottom: 0; font-weight: bold;">入库时间:</td>
  2867. <td
  2868. v-else
  2869. width="500"
  2870. colspan="2"
  2871. style="padding: 6px; font-weight: bold;"
  2872. class="zzss"
  2873. >
  2874. 入库日期:{{ fBsdates }} {{ fBstime.slice(11,19) }}
  2875. </td>
  2876. </tr>
  2877. <tr>
  2878. <td width="200">车号</td>
  2879. <td width="200">货物品名</td>
  2880. <td width="200">提单号</td>
  2881. <td width="200">品牌/规格/产地</td>
  2882. <td width="200">净重(kg)</td>
  2883. <td width="200">件数(50KG)</td>
  2884. </tr>
  2885. <tr v-for="(item, index) in Printinglist" :key="index">
  2886. <td width="200">{{ item.fTruckno }}</td>
  2887. <td width="200">{{ item.fGoodsids }}</td>
  2888. <td width="200">{{ item.fMblno }}</td>
  2889. <td width="200">{{item.fBusinessTypes}}/{{item.fMarks}}</td>
  2890. <td width="200">{{item.fNetweight}}</td>
  2891. <td width="200">{{ item.fQty }}</td>
  2892. </tr>
  2893. <tr>
  2894. <td width="1400" colspan="6">&nbsp;</td>
  2895. </tr>
  2896. <tr>
  2897. <td>备注:</td>
  2898. <td colspan="5">{{ form.remark }}</td>
  2899. </tr>
  2900. <tr
  2901. v-for="(item, indexe) in Collectionoptionss"
  2902. :key="indexe + 'index'"
  2903. >
  2904. <td>收费</td>
  2905. <td>{{ item.fFeeids }}</td>
  2906. <td>{{ item.fAmount }} 元</td>
  2907. <!-- <td colspan="4">办单费:5元,过磅费自理</td> -->
  2908. </tr>
  2909. <tr>
  2910. <td>司机签字:</td>
  2911. <td></td>
  2912. <td>电话</td>
  2913. <td>{{ fDriverTel }}</td>
  2914. <td colspan="2" rowspan="2">
  2915. 确认货物数量无误,包装于货物完好!<br />出库盖好篷布,如有违背责任自负<br />装卸工是否收小费
  2916. </td>
  2917. </tr>
  2918. <tr>
  2919. <td>制表:</td>
  2920. <td>{{ form.createBy }}</td>
  2921. <td>机械/人工:</td>
  2922. <td></td>
  2923. </tr>
  2924. <!-- <tr>-->
  2925. <!-- <td colspan="6" class="zzss">&nbsp;</td>-->
  2926. <!-- </tr>-->
  2927. <tr>
  2928. <td width="290" class="zzss" colspan="2">地址:{{ dataListFaddr }}</td>
  2929. <td width="290" class="zzss" colspan="2">电话:{{ form.fTel }}</td>
  2930. <td width="280" class="zzss"></td>
  2931. <td width="280" class="zzss"></td>
  2932. </tr>
  2933. </table>
  2934. <div>
  2935. <el-button
  2936. type="primary"
  2937. :disabled="browseStatus"
  2938. @click="printSomething2"
  2939. >打印
  2940. </el-button>
  2941. <el-button @click="editDialogVisible_sss = false">取消 </el-button>
  2942. </div>
  2943. </el-dialog>
  2944. </el-dialog>
  2945. <el-dialog
  2946. title="选择库位"
  2947. :data="treeselectList"
  2948. :visible.sync="choiceWarehouse"
  2949. width="30%"
  2950. :before-close="hanDleclose">
  2951. <treeselect v-model="treeselectList.fWarehouselocid" @select="getAlltree" :options="fWarehouseidOptions" :show-count="true" :disable-branch-nodes="true" placeholder="请选择归属库区" />
  2952. <div>{{Warehouse}}</div>
  2953. <span slot="footer" class="dialog-footer">
  2954. <el-button @click="choiceWarehouse = false">取 消</el-button>
  2955. <el-button type="primary" @click="confirm">确 定</el-button>
  2956. </span>
  2957. </el-dialog>
  2958. </div>
  2959. </template>
  2960. <script>
  2961. import print from "print-js";
  2962. import {
  2963. addWhgenleg,
  2964. addJoblist,
  2965. disChargelist,
  2966. updateCredit,
  2967. listWarehousebills,
  2968. getWarehousebills,
  2969. delWarehousebills,
  2970. addWarehousebills,
  2971. addWarehouse,
  2972. updateWarehousebills,
  2973. exportWarehousebills,
  2974. revoke,
  2975. revokeTwo
  2976. } from "@/api/warehouseBusiness/warehouseInStock";
  2977. import { listAgreement, operationAgreement } from "@/api/agreement/agreement";
  2978. import { listCorps } from "@/api/basicdata/corps";
  2979. import { listFees, getFees } from "@/api/basicdata/fees";
  2980. import {listWarehouse, treeselect , listWarehousesss } from "@/api/basicdata/warehouse";
  2981. import { listArea } from "@/api/basicdata/area";
  2982. import { listGoods } from "@/api/basicdata/goods";
  2983. import { listUser, queryUserVal } from "@/api/system/user";
  2984. import UploadFile from "@/components/Uploadfile";
  2985. import AddOrUpdate from "@/views/viewApproval";
  2986. import ApprovalComments from "@/views/startApproval";
  2987. import { getCharge } from '@/api/finance/charge'
  2988. import Global from '@/layout/components/global';
  2989. import Treeselect from "@riophae/vue-treeselect";
  2990. import "@riophae/vue-treeselect/dist/vue-treeselect.css";
  2991. export default {
  2992. name: "Warehousebills",
  2993. components: {
  2994. UploadFile,
  2995. AddOrUpdate,
  2996. ApprovalComments,
  2997. Treeselect
  2998. },
  2999. data() {
  3000. return {
  3001. businessType:'',
  3002. dataListFaddr:'',
  3003. information:'',
  3004. informationId:'',
  3005. inDex:'',
  3006. Warehouse:'',
  3007. treeselectList:{
  3008. fWarehouselocid:null
  3009. },
  3010. // 部门树选项
  3011. fWarehouseidOptions:[],
  3012. fWarehouseIdOptions:[],
  3013. fWarehouseidOption:[],
  3014. activeNames:['1'],
  3015. isrequired:2,
  3016. isrequired_s:2,
  3017. approval:[],
  3018. Navigation: false,
  3019. doNot:false,
  3020. // 修改查看状态
  3021. browseStatus: false,
  3022. key_id:'',
  3023. contrOl:false,
  3024. // 审批状态控制
  3025. approvalStatus: false,
  3026. detailsHidden: false,
  3027. warehousingagreement: false,
  3028. warehousingagreements: false,
  3029. formBrowseStatus: false,
  3030. fTruckno: "",
  3031. fBsdates: "",
  3032. fMblno:"",
  3033. fCntrtype: "",
  3034. fGoodsids: "",
  3035. fPlaNnumber: "",
  3036. fPlangNumber: "",
  3037. // fPlannetweight: "",
  3038. fPlanvolumn: "",
  3039. // 司机电话
  3040. fDriverTel: "",
  3041. fPlanqty: "",
  3042. fPlangrossweight: "",
  3043. fPlannetweight: "",
  3044. fFeeUnitid: "",
  3045. fFeeUnitids: "",
  3046. fGrossweight: 0,
  3047. fid: "",
  3048. fCntqty: "",
  3049. fPackagespecs: "",
  3050. fNetweight: 0,
  3051. fQty: 0,
  3052. mum: 0,
  3053. // 遮罩层
  3054. loading: true,
  3055. // 选中数组
  3056. ids: [],
  3057. Collectionoptionss: [],
  3058. userVal: {
  3059. userName: null,
  3060. nickName: null,
  3061. deptId: null,
  3062. },
  3063. fFleetVal:{
  3064. name:null
  3065. },
  3066. closeButton:true,
  3067. fBstime:'',
  3068. //表单校验
  3069. checkout: {
  3070. fGoodsids:[
  3071. { required: true, message: ' ', trigger: 'blur' }
  3072. ],
  3073. // fMarks: [
  3074. // { required: true, message: ' ', trigger: 'blur' }
  3075. // ],
  3076. // fWarehouselocid:[
  3077. // { required: true, message: ' ', trigger: 'blur'}
  3078. // ],
  3079. // fGrossweight:[
  3080. // { required: true, message: ' ', trigger: 'blur'}
  3081. // ],
  3082. // fNetweight:[
  3083. // { required: true, message: ' ', trigger: 'blur'}
  3084. // ],
  3085. // fQty:[
  3086. // { required: true, message: ' ', trigger: 'blur'}
  3087. // ],
  3088. // fPackagespecs:[
  3089. // { required: true, message: ' ', trigger: 'blur'}
  3090. // ],
  3091. // fTruckno:[
  3092. // { required: true, message: ' ', trigger: 'blur'}
  3093. // ],
  3094. // fDriverName:[
  3095. // { required: true, message: ' ', trigger: 'blur'}
  3096. // ],
  3097. // fDriverTel:[
  3098. // { required: true, message: ' ', trigger: 'blur'}
  3099. // ],
  3100. // fDriverIdCar:[
  3101. // { required: true, message: ' ', trigger: 'blur'}
  3102. // ]
  3103. },
  3104. queryForm: {},
  3105. // 新增用户对话框
  3106. editDialogVisible_s: false,
  3107. editDialogVisible_ss: false,
  3108. editDialogVisible_sss: false,
  3109. editDialogClosed_ss: false,
  3110. addOrUpdateVisible: false,
  3111. addOrUpdateVisib: false,
  3112. // 新增计划净重
  3113. weightList: false,
  3114. dataList: [],
  3115. warehouseCrList: [],
  3116. warehouseDrList: [],
  3117. Pledgebank: [],
  3118. relevantAttachments: [],
  3119. // 非单个禁用
  3120. single: true,
  3121. // 非多个禁用
  3122. multiple: true,
  3123. // 显示搜索条件
  3124. showSearch: true,
  3125. // 总条数
  3126. total: 0,
  3127. // 仓库主(出入库)表格数据
  3128. warehousebillsList: [],
  3129. // 弹出层标题
  3130. title: "",
  3131. activeIndex: '1',
  3132. activeIndex2: '1',
  3133. // 是否显示弹出层
  3134. open: false,
  3135. // 货权方(客户数据)
  3136. fMblnoOptions: [],
  3137. // 货权方(客户数据)
  3138. // 客户名称
  3139. KHblnoOptions: [],
  3140. // 作业费协议
  3141. tasklegList: [],
  3142. whgenlegTotal: 0,
  3143. Printinglist: [],
  3144. // 库存明细入账数组
  3145. dataListSelection: [],
  3146. fWarehouselocid:'',
  3147. fAddr: "",
  3148. // 库存明细撤回入账数组
  3149. dataWithdrawList: [],
  3150. fSbuOptions: [],
  3151. fleetOptions:[],
  3152. // 操作员
  3153. userOptions: [],
  3154. // 操作员
  3155. goodsOptions: [],
  3156. // 制单部门
  3157. deptOptions: [],
  3158. // 主表状态
  3159. businessTypeOption: [],
  3160. // 仓库(仓库数据)
  3161. warehouseOptions: [],
  3162. kqhouseOptions: [],
  3163. // 贸易方式(数据字典),对应t_trademodels 字典
  3164. fTrademodeidOptions: [],
  3165. // 仓储类型 入库时选择 产地 规格 品牌 所用,对应storage_type 字典
  3166. fStorageTypeOptions: [],
  3167. // 计费单位(数据字典),下拉选择毛重或净重字典
  3168. fFeetunitOptions: [],
  3169. // 结算方式(数据字典),下拉选择字典
  3170. fStltypeOptions: [],
  3171. // 是否过磅(数据字典)默认 F ,过磅T 否者F 下拉选择字典
  3172. fIfweighOptions: [],
  3173. // 是否质押(数据字典),默认 F ,质押T 否者F 下拉选择字典
  3174. fIfpledgeOptions: [],
  3175. // 是否破损(数据字典),默认F否则T字典
  3176. fIfdamageOptions: [],
  3177. // 单据类型(数据字典)SJRK字典
  3178. fBilltypeOptions: [],
  3179. // 状态(数据字典),N 入字典
  3180. fBillstatusOptions: [],
  3181. //结算方式对应字典表
  3182. fStltypeidOptions:[],
  3183. // 劳务公司
  3184. fCompanyOptIons: [],
  3185. // 费用名称
  3186. fWbuOptions: [],
  3187. // 计价单位
  3188. jFeetunitOptions: [
  3189. // { dictLabel: "件数", dictValue: "1" },
  3190. // { dictLabel: "毛重", dictValue: "2" },
  3191. // { dictLabel: "净重", dictValue: "3" },
  3192. // { dictLabel: "尺码", dictValue: "4" },
  3193. // { dictLabel: "固定", dictValue: "5" },
  3194. ],
  3195. current:'',
  3196. before:'',
  3197. //控制选择库位弹出
  3198. choiceWarehouse:false,
  3199. // 查询参数
  3200. queryParams: {
  3201. fWarehouselocid:null,
  3202. pageNum: 1,
  3203. pageSize: 10,
  3204. fBillno: null,
  3205. createBy: null,
  3206. createTime: null,
  3207. fCustomsdeclartion: null,
  3208. fOriginalbillno: null,
  3209. fDeptid: null,
  3210. timeInterval: null,
  3211. fBsdeptid: null,
  3212. fContacts: null,
  3213. fTel: null,
  3214. fCorpid: null,
  3215. fTocorpid: null,
  3216. fStltypeid: null,
  3217. fBscorpno: null,
  3218. fWarehouseid: null,
  3219. fStorekeeper: null,
  3220. fBsdate: null,
  3221. fPlanqty: null,
  3222. fPlangrossweight: null,
  3223. fPlannetweight: null,
  3224. fPlanvolumn: null,
  3225. fQty: null,
  3226. fGrossweight: null,
  3227. fNetweight: null,
  3228. fVolumn: null,
  3229. fTrademodeid: null,
  3230. fSbu: null,
  3231. fFeetunit: null,
  3232. fMblno: null,
  3233. fVslvoy: null,
  3234. fEta: null,
  3235. fCustomno: null,
  3236. fIfweigh: null,
  3237. fIfpledge: null,
  3238. fIfdamage: null,
  3239. fBankcorpid: null,
  3240. fBilltype: null,
  3241. fBillstatus: null,
  3242. fBusinessType: null,
  3243. fCreateby: null,
  3244. fCreatetime: null,
  3245. fGoodsid: null,
  3246. fCntrtype: null,
  3247. fCntqty: null,
  3248. },
  3249. planningList: {
  3250. fPlanqty: null,
  3251. fPlannetweight: null,
  3252. fPlangrossweight: null,
  3253. },
  3254. approVal:false,
  3255. // 表单参数
  3256. form: {
  3257. fLabour:null,
  3258. fFleet:null,
  3259. fBusinessType:null,
  3260. fItemsStatus: null,
  3261. fFeetunit: '2',
  3262. fBstime:''
  3263. },
  3264. // 表单校验
  3265. rules: {
  3266. fDeptid: [{ required: true, message: " ", trigger: "blur" }],
  3267. fMblno: [{ required: true, message: " ", trigger: "blur" }],
  3268. fBsdeptid: [{ required: true, message: " ", trigger: "blur" }],
  3269. fCorpid: [
  3270. {
  3271. required: true,
  3272. message: " ",
  3273. trigger: "blur",
  3274. },
  3275. ],
  3276. fFeetunit: [{ required: true, message: " ", trigger: "blur" }],
  3277. fPlanqty: [{ required: true, message: " ", trigger: "blur" }],
  3278. fPlangrossweight: [{ required: true, message: " ", trigger: "blur" }],
  3279. fPlannetweight: [{ required: true, message: " ", trigger: "blur" }],
  3280. fChargedate: [{ required: true, message: " ", trigger: "blur" }],
  3281. fMarks: [{ required: true, message: " ", trigger: "blur" }],
  3282. fBsdate: [{ required: true, message: " ", trigger: "blur" }],
  3283. fTrademodeid: [{ required: true, message: " ", trigger: "blur" }],
  3284. fSbu: [{ required: true, message: " ", trigger: "blur" }],
  3285. fBusinessType:[{ required: true, message: " ", trigger: "blur" }],
  3286. fStorekeeper: {
  3287. required: true,
  3288. message: " ",
  3289. trigger: "blur",
  3290. },
  3291. // fleet:[{required: this.isrequired == '1' ? true : false,message: " ", trigger: "blur"}],
  3292. fWarehouseid: [{ required: true, message: " ", trigger: "blur" }],
  3293. fbillingway: [
  3294. {
  3295. required: true,
  3296. message: " ",
  3297. trigger: "blur",
  3298. },
  3299. ],
  3300. fTocorpid: [
  3301. {
  3302. required: true,
  3303. message: " ",
  3304. trigger: "blur",
  3305. },
  3306. ],
  3307. },
  3308. defaultTitle:[]
  3309. };
  3310. },
  3311. created() {
  3312. this.getList();
  3313. this.getDicts("storage_type").then((response) => {
  3314. this.fStorageTypeOptions = response.data;
  3315. });
  3316. this.getDicts("data_trademodes").then((response) => {
  3317. this.fTrademodeidOptions = response.data;
  3318. });
  3319. this.getDicts("data_stltype_type").then((response) => {
  3320. this.fStltypeOptions = response.data;
  3321. });
  3322. this.getDicts("tax_rate").then((response) => {
  3323. this.fTaxrate = response.data[0].dictValue;
  3324. });
  3325. this.getDicts("data_ifweigh_status").then((response) => {
  3326. this.fIfweighOptions = response.data;
  3327. });
  3328. this.getDicts("data_ifpledge_status").then((response) => {
  3329. this.fIfpledgeOptions = response.data;
  3330. });
  3331. this.getDicts("data_ifdamage_status").then((response) => {
  3332. this.fIfdamageOptions = response.data;
  3333. });
  3334. this.getDicts("data_billtype_type").then((response) => {
  3335. this.fBilltypeOptions = response.data;
  3336. });
  3337. this.getDicts("sys_common_status").then((response) => {
  3338. this.fBillstatusOptions = response.data;
  3339. });
  3340. this.getDicts("data_unitfees").then((response) => {
  3341. this.fFeetunitOptions = response.data;
  3342. });
  3343. this.getDicts("data_unitfees").then((response) => {
  3344. this.jFeetunitOptions = response.data;
  3345. });
  3346. this.getDicts("st_in_type").then((response) => {
  3347. this.businessTypeOption = response.data;
  3348. });
  3349. this.getDicts("data_stltype_type").then(response => {
  3350. this.fStltypeidOptions = response.data;
  3351. });
  3352. // this.getDicts("data_customer_category").then(response => {
  3353. // this.fCompanyOptIons = response.data;
  3354. // });
  3355. // this.getDicts("data_customer_category").then(response => {
  3356. // this.fleetOptions = response.data;
  3357. // });
  3358. treeselect().then(response => {
  3359. this.warehouseOptions = response.data
  3360. })
  3361. this.warehousesssMethod()
  3362. },
  3363. activated() {
  3364. this.adoPt()
  3365. },
  3366. methods: {
  3367. //合计
  3368. getSum(param){
  3369. const { columns, data } = param
  3370. const sums = []
  3371. columns.forEach((column, index) => {
  3372. if (index === 0) {
  3373. sums[index] = '总计'
  3374. } else if (index ===13 || index ===10 || index ===11 || index ===12 ) {
  3375. const values = data.map(item => Number(item[column.property]))
  3376. if (!values.every(value => isNaN(value))) {
  3377. sums[index] = values.reduce((prev, curr) => {
  3378. const value = Number(curr)
  3379. if (!isNaN(value)) {
  3380. return prev + curr
  3381. } else {
  3382. return prev
  3383. }
  3384. }, 0)
  3385. if(index ===13 || index ===12){
  3386. sums[index] = (sums[index]/1000).toFixed(2) + '吨'
  3387. }
  3388. }
  3389. }
  3390. })
  3391. return sums
  3392. },
  3393. //仓库电话、仓库联系人带入
  3394. warwhouseTel(){
  3395. for(let item in this.warehouseOptions){
  3396. if(this.form.fWarehouseid == this.warehouseOptions[item].fId){
  3397. this.form.fTel = this.warehouseOptions[item].fTel
  3398. this.form.fContacts = this.warehouseOptions[item].fContacts
  3399. }
  3400. }
  3401. },
  3402. handleClose(){
  3403. this.cancel()
  3404. },
  3405. handleSelect(key, keyPath) {
  3406. this.addAgreements(key)
  3407. },
  3408. /** 查询部门下拉树结构 */
  3409. treeseLect(tree){
  3410. this.queryParams.fWarehouselocid = tree.id
  3411. },
  3412. getTreeselect(row) {
  3413. this.treeselectList.fWarehouselocid = null
  3414. this.inDex = row.$index
  3415. this.choiceWarehouse = true
  3416. treeselect(this.form.fWarehouseid).then(response => {
  3417. this.fWarehouseidOptions = response.data;
  3418. this.fWarehouseidOption = response.data;
  3419. })
  3420. this.Warehouse = this.dataList[this.inDex].fWarehouseInformation
  3421. },
  3422. getAlltree(tree){
  3423. this.information = tree.fWarehouseInformation
  3424. this.informationId = tree.id
  3425. },
  3426. confirm(){
  3427. this.$set(this.dataList[this.inDex], 'fWarehouseInformation', this.information)
  3428. this.$set(this.dataList[this.inDex], 'fWarehouselocid', this.informationId)
  3429. this.choiceWarehouse = false
  3430. },
  3431. // 出库件数的计算
  3432. qtyChange(row) {
  3433. if (!row.fQty || row.fQty === "") {
  3434. this.$set(row, "fNetweight", 0);
  3435. this.$set(row, "fGrossweight", 0);
  3436. this.$set(row,'fQty',0)
  3437. return false;
  3438. }
  3439. // 净重 fPlannetweight
  3440. // 毛重 fPlangrossweight
  3441. // let fVolumn = parseFloat(Number(row.fVolumn) / Number(row.fPlanqty)).toFixed(2);
  3442. let netweight = parseFloat(Number(this.form.fPlannetweight) / Number(this.form.fPlanqty)).toFixed(2);
  3443. let grossweigh = parseFloat(Number(this.form.fPlangrossweight) / Number(this.form.fPlanqty)).toFixed(2);
  3444. // this.$set(row, "fVolumn", parseFloat(Number(fVolumn) * Number(row.fQty)).toFixed(2));
  3445. this.$set(row, "fNetweight", parseFloat(Number(netweight) * Number(row.fQty)).toFixed(2));
  3446. this.$set(row, "fGrossweight", parseFloat(Number(grossweigh) * Number(row.fQty)).toFixed(2));
  3447. },
  3448. adoPt(){
  3449. this.approval = this.$route.query.data
  3450. if (this.approval){
  3451. this.reset();
  3452. this.doNot = true
  3453. this.closeButton = false
  3454. this.approval = JSON.parse(this.approval)
  3455. this.approVal = true
  3456. this.browseStatus = true;
  3457. this.contrOl = true;
  3458. this.detailsHidden = false;
  3459. this.formBrowseStatus = false;
  3460. this.dataList = [];
  3461. getWarehousebills(this.approval.billId).then((response) => {
  3462. if (response.data.warehousebills) {
  3463. this.form = response.data.warehousebills;
  3464. if (this.form.fBillstatus > 2) {
  3465. this.approvalStatus = false;
  3466. } else {
  3467. this.approvalStatus = true;
  3468. }
  3469. }
  3470. if (response.data.warehouseBillsItem) {
  3471. this.dataList = response.data.warehouseBillsItem;
  3472. for (let list in this.dataList) {
  3473. if (this.dataList[list].fBillstatus > 10) {
  3474. this.formBrowseStatus = true;
  3475. }
  3476. }
  3477. }
  3478. if (response.data.corps) {
  3479. this.fMblnoOptions = response.data.corps;
  3480. this.KHblnoOptions = response.data.corps;
  3481. this.fCompanyOptIons = response.data.corps;
  3482. }
  3483. if (response.data.feesList) {
  3484. this.fWbuOptions = response.data.feesList;
  3485. }
  3486. if (response.data.warehouse) {
  3487. this.warehouseOptions = response.data.warehouse;
  3488. }
  3489. if (response.data.warehouseBillsItem) {
  3490. this.dataList = response.data.warehouseBillsItem;
  3491. }
  3492. if (response.data.enclosures) {
  3493. this.relevantAttachments = response.data.enclosures;
  3494. }
  3495. this.$set(this.form, "fStltypeid", this.form.fStltypeid + "");
  3496. this.$set(this.form, "fEta", Date.parse(this.form.fEta));
  3497. this.$set(this.form, "fBsdate", Date.parse(this.form.fBsdate));
  3498. this.$set(this.form, "createTime", Date.parse(this.form.createTime));
  3499. this.$set(this.form, "fTrademodeid", this.form.fTrademodeid + "");
  3500. this.$set(
  3501. this.form,
  3502. "fPlannetweight",
  3503. this.form.fPlannetweight.toFixed(2)
  3504. );
  3505. this.$set(
  3506. this.form,
  3507. "fPlangrossweight",
  3508. this.form.fPlangrossweight.toFixed(2)
  3509. );
  3510. for (let list in this.dataList) {
  3511. this.$set(
  3512. this.dataList[list],
  3513. "fBsdate",
  3514. Date.parse(this.dataList[list].fBsdate)
  3515. );
  3516. this.$set(this.dataList[list], 'fBusinessType', this.dataList[list].fBusinessType + '')
  3517. }
  3518. this.goodsOptions = response.data.goodsList;
  3519. this.kqhouseOptions = response.data.warehouseAreas;
  3520. this.warehouseDrList = response.data.warehousebillsfeesDr;
  3521. for (let dr in this.warehouseDrList) {
  3522. this.$set(this.warehouseDrList[dr], "fFeeUnitid", this.warehouseDrList[dr].fFeeunitid + "");
  3523. this.$set(this.warehouseDrList[dr], "fQty", this.warehouseDrList[dr].fQty.toFixed(2));
  3524. this.$set(this.warehouseDrList[dr], "fAmount", this.warehouseDrList[dr].fAmount.toFixed(2));
  3525. }
  3526. this.warehouseCrList = response.data.warehousebillsfeesCr;
  3527. for (let cr in this.warehouseCrList) {
  3528. this.$set(this.warehouseCrList[cr], "fFeeUnitid", this.warehouseCrList[cr].fFeeunitid + '');
  3529. }
  3530. this.userOptions = response.data.sysUser;
  3531. this.open = true;
  3532. this.title = "修改仓入库";
  3533. });
  3534. }
  3535. },
  3536. //关闭弹框的事件
  3537. addCloseDialog(){
  3538. this.reset()
  3539. this.getList()
  3540. },
  3541. cancelTwo(){
  3542. this.open = false
  3543. let view = {
  3544. fullPath: "/business/inStock",
  3545. hash: "",
  3546. matched: Array(2),
  3547. meta: Object,
  3548. name: "InStock",
  3549. params: Object,
  3550. path: "/business/inStock",
  3551. query: Object,
  3552. title: "入库"
  3553. }
  3554. this.$router.push({ path: '/index'})
  3555. this.$store.dispatch('tagsView/delView', view).then(({ visitedViews }) => {
  3556. if (this.isActive(view)) {
  3557. this.toLastView(visitedViews, view)
  3558. }
  3559. })
  3560. Global.$emit("removeCache", "closeSelectedTag", view);
  3561. },
  3562. // 上传成功返回数据
  3563. showFile(row) {
  3564. for (let list in this.relevantAttachments) {
  3565. this.$set(this.relevantAttachments[list], "fUrl", row.url);
  3566. this.$set(this.relevantAttachments[list], "fName", row.fileName);
  3567. }
  3568. },
  3569. hanDleclose(done){
  3570. this.$confirm('确认关闭?')
  3571. .then(_ => {
  3572. done();
  3573. })
  3574. .catch(_ => {});
  3575. },
  3576. revoke(){
  3577. revoke(this.form.fId).then(data=>{
  3578. if (data.code === 200){
  3579. this.reset();
  3580. this.open = false;
  3581. this.contrOl = true
  3582. }
  3583. })
  3584. },
  3585. revokeTwo(){
  3586. let data = {
  3587. actId:110,
  3588. billId:this.form.fId,
  3589. id:this.form.fId
  3590. }
  3591. revokeTwo(data).then(data =>{
  3592. if (data.code === 200) {
  3593. this.msgSuccess("撤销成功");
  3594. this.open = false;
  3595. this.getList()
  3596. this.reset();
  3597. }
  3598. })
  3599. },
  3600. printSomething() {
  3601. // 此处的style即为打印时的样式
  3602. const style =
  3603. "@media print { .print-div{ border:none;padding:8px;background-color:#cccccc;line-height:12px } .red{ color:#f00} .green{color:green} td{text-align: center;border:1px solid #000}}";
  3604. print({
  3605. printable: "print_area3",
  3606. type: "html",
  3607. style: style, // 亦可使用引入的外部css;
  3608. scanStyles: false,
  3609. });
  3610. },
  3611. printSomething1() {
  3612. // 此处的style即为打印时的样式
  3613. const style =
  3614. "@media print { .print-div{ border:none;padding:8px;background-color:#cccccc;line-height:12px } .red{ color:#f00} .green{color:green} td{text-align: center;border:1px solid #000}}";
  3615. print({
  3616. printable: "print_area2",
  3617. type: "html",
  3618. style: style, // 亦可使用引入的外部css;
  3619. scanStyles: false,
  3620. });
  3621. },
  3622. printSomething2() {
  3623. // 此处的style即为打印时的样式
  3624. const style =
  3625. "@media print { .print-div{ border:none;padding:8px;background-color:#cccccc;line-height:12px } .red{ color:#f00} .green{color:green} td{text-align: center;border:1px solid #000}}";
  3626. print({
  3627. printable: "print_area1",
  3628. type: "html",
  3629. style: style, // 亦可使用引入的外部css;
  3630. scanStyles: false,
  3631. });
  3632. this.addList();
  3633. this.editDialogVisible_sss = false;
  3634. },
  3635. // 新增附件上传
  3636. addRelevt() {
  3637. this.relevantAttachments.push({
  3638. fUrl: null,
  3639. fName: null,
  3640. createBy: this.form.createBy,
  3641. createTime: Date.parse(new Date()),
  3642. });
  3643. },
  3644. // 新增作业费协议
  3645. addAgreement() {
  3646. if (!this.form.fCorpid) {
  3647. this.$message({
  3648. message: "请维护货权方",
  3649. type: "warning",
  3650. });
  3651. }else if(this.form.fProductName == undefined) {
  3652. this.$message({
  3653. message: "请维护入库明细品名",
  3654. type: "warning",
  3655. });
  3656. }else {
  3657. this.whgenlegList = [];
  3658. this.dialogWhgenlegList = [];
  3659. this.whgenlegTotal = 0;
  3660. this.warehousingagreement = true;
  3661. this.getWhgenlegList();
  3662. }
  3663. },
  3664. // 新增付款作业费协议
  3665. addAgreements(kye) {
  3666. if (!this.form.fCorpid) {
  3667. this.$message({
  3668. message: "请维护货权方",
  3669. type: "warning",
  3670. });
  3671. }else if(this.form.fProductName == undefined) {
  3672. this.$message({
  3673. message: "请维护入库明细品名",
  3674. type: "warning",
  3675. });
  3676. } else {
  3677. this.whgenlegList = [];
  3678. this.dialogWhgenlegList = [];
  3679. this.whgenlegTotal = 0;
  3680. this.warehousingagreements = true;
  3681. this.getWhgenlegList(kye);
  3682. }
  3683. },
  3684. // 新增list
  3685. addRelevant(status) {
  3686. if (!this.form.fPlannetweight || !this.form.fPlangrossweight || !this.form.fPlanqty) {
  3687. this.$message({ message: "请维护计划净重(kg),计划毛重(kg),计划件数", type: "warning", });
  3688. return false;
  3689. }
  3690. this.fPlaNnumber = this.form.fPlannetweight / this.form.fPlanqty;
  3691. this.fPlangNumber = this.form.fPlangrossweight / this.form.fPlanqty;
  3692. this.planningList.fPlanqty = Number(this.form.fPlanqty) - Number(this.mum)
  3693. this.planningList.fPlannetweight = parseFloat(Number(this.fPlaNnumber) * Number(this.planningList.fPlanqty).toFixed(2))
  3694. this.planningList.fPlangrossweight = parseFloat(Number(this.fPlangNumber) * Number(this.planningList.fPlanqty)).toFixed(2)
  3695. this.weightList = true
  3696. },
  3697. // 收货单打印界面
  3698. showEditDialog_s() {
  3699. if (this.Printinglist.length > 0) {
  3700. this.editDialogVisible_s = true;
  3701. let sumFNetweight = 0
  3702. let sumFGrossweight = 0
  3703. for (let aorp in this.Printinglist) {
  3704. sumFNetweight = Number(sumFNetweight) + Number(this.Printinglist[aorp].fNetweight)
  3705. sumFGrossweight = Number(sumFGrossweight) + Number(this.Printinglist[aorp].fGrossweight)
  3706. var date = new Date(this.Printinglist[aorp].fBsdate);
  3707. var Y = date.getFullYear() + "-";
  3708. var M =
  3709. (date.getMonth() + 1 < 10
  3710. ? "0" + (date.getMonth() + 1)
  3711. : date.getMonth() + 1) + "-";
  3712. var D =
  3713. (date.getDate() < 10 ? "0" + date.getDate() : date.getDate()) + " ";
  3714. this.$set(this.Printinglist[aorp], "fBsdate", Y + M + D);
  3715. }
  3716. this.$set(this.form , 'sumFNetweight', parseFloat(Number(sumFNetweight) / 1000).toFixed(2))
  3717. this.$set(this.form , 'sumFGrossweight', parseFloat(Number(sumFGrossweight) / 1000).toFixed(2))
  3718. for (let corp in this.fMblnoOptions) {
  3719. if (this.form.fCorpid === this.fMblnoOptions[corp].fId) {
  3720. this.$set(this.form, "fCorpidName", this.fMblnoOptions[corp].fName);
  3721. }
  3722. }
  3723. for (let sorp in this.warehouseOptions) {
  3724. if (this.form.fWarehouseid === this.warehouseOptions[sorp].fId) {
  3725. this.$set(this.form, "fWarehouseid", this.warehouseOptions[sorp].fName);
  3726. }
  3727. }
  3728. } else {
  3729. this.$message.error("请选择需要打印的明细!");
  3730. }
  3731. },
  3732. closeDialog() {
  3733. for (let aorp in this.Printinglist) {
  3734. this.$set(
  3735. this.Printinglist[aorp],
  3736. "fBsdate",
  3737. Date.parse(this.Printinglist[aorp].fBsdate)
  3738. );
  3739. }
  3740. },
  3741. showEditDialog_ss() {
  3742. if (this.Printinglist.length > 0) {
  3743. for (let li in this.Printinglist) {
  3744. if (this.dataListSelection.length > 0) {
  3745. this.fTruckno = this.dataListSelection[0].fTruckno;
  3746. this.fCntrtype = this.dataListSelection[0].fCntrtype;
  3747. this.fGoodsids = this.dataListSelection[0].fGoodsids;
  3748. this.fPackagespecs = this.dataListSelection[0].fPackagespecs;
  3749. var date = new Date(this.dataListSelection[0].fBsdate);
  3750. var Y = date.getFullYear() + "-";
  3751. var M =
  3752. (date.getMonth() + 1 < 10
  3753. ? "0" + (date.getMonth() + 1)
  3754. : date.getMonth() + 1) + "-";
  3755. var D =
  3756. (date.getDate() < 10 ? "0" + date.getDate() : date.getDate()) +
  3757. " ";
  3758. this.fBsdates = Y + M + D;
  3759. }
  3760. for (let list in this.goodsOptions) {
  3761. if (
  3762. this.Printinglist[li].fGoodsid === this.goodsOptions[list].fId
  3763. ) {
  3764. this.$set(
  3765. this.Printinglist[li],
  3766. "fGoodsids",
  3767. this.goodsOptions[list].fName
  3768. );
  3769. }
  3770. }
  3771. }
  3772. this.editDialogVisible_ss = true;
  3773. } else {
  3774. this.$message.error("请选择需要打印的明细!");
  3775. }
  3776. },
  3777. showEditDialog_sss() {
  3778. if (this.Printinglist.length > 0) {
  3779. if(this.form.fFeetunit > 3){
  3780. this.$message.error('请维护主表计费单位为件数、毛重(kg)或净重(kg)')
  3781. return false
  3782. }
  3783. if (!this.form.fBusinessType) {
  3784. this.$message.error('请选择作业类型!')
  3785. return false
  3786. }
  3787. for (let li in this.Printinglist) {
  3788. if (!this.Printinglist[li].fId) {
  3789. this.$message.error('请先保存!')
  3790. return false
  3791. }
  3792. if (!this.Printinglist[li].fBsdate) {
  3793. this.$message.error('请选择入库日期')
  3794. return false
  3795. }
  3796. if (!this.Printinglist[li].fGoodsid) {
  3797. this.$message.error('请选择品名')
  3798. return false
  3799. }
  3800. if (!this.Printinglist[li].fWarehouselocid) {
  3801. this.$message.error('请选择库区')
  3802. return false
  3803. }
  3804. if (!this.Printinglist[li].fPackagespecs) {
  3805. this.$message.error('请输入包装规格')
  3806. return false
  3807. }
  3808. if (!this.Printinglist[li].fMarks) {
  3809. this.$message.error('请输入属性详情')
  3810. return false
  3811. }
  3812. if (!this.Printinglist[li].fDriverName) {
  3813. this.$message.error('请输入司机姓名')
  3814. return false
  3815. }
  3816. if (!this.Printinglist[li].fDriverTel) {
  3817. this.$message.error('请输入司机电话')
  3818. return false
  3819. }
  3820. if (!this.Printinglist[li].fTruckno) {
  3821. this.$message.error('请输入车号')
  3822. return false
  3823. }
  3824. if (this.Printinglist[li].fTruckno !== this.Printinglist[0].fTruckno) {
  3825. this.$message.error('请选择车相同车号')
  3826. return false
  3827. }
  3828. if (this.Printinglist[li].fDriverName !== this.Printinglist[0].fDriverName) {
  3829. this.$message.error('请选择相同司机名')
  3830. return false
  3831. }
  3832. if (!this.Printinglist[li].fBusinessType) {
  3833. this.$message.error('请先维护业务类型!')
  3834. return false
  3835. }
  3836. if (!this.Printinglist[li].fMarks) {
  3837. this.$message.error('请先维护业务详情!')
  3838. return false
  3839. }
  3840. for (let list in this.goodsOptions) {
  3841. if (this.Printinglist[li].fGoodsid === this.goodsOptions[list].fId) {
  3842. this.$set(this.Printinglist[li], 'fGoodsids', this.goodsOptions[list].fName)
  3843. break
  3844. }
  3845. }
  3846. for (let list in this.fStorageTypeOptions) {
  3847. if (this.Printinglist[li].fBusinessType === this.fStorageTypeOptions[list].dictValue) {
  3848. this.$set(this.Printinglist[li], 'fBusinessTypes', this.fStorageTypeOptions[list].dictLabel)
  3849. break
  3850. }
  3851. }
  3852. }
  3853. if (this.dataWithdrawList.length > 0 ) {
  3854. for(let item in this.warehouseOptions){
  3855. if(this.form.fWarehouseid == this.warehouseOptions[item].fId){
  3856. this.dataListFaddr = this.warehouseOptions[item].fAddr
  3857. }
  3858. }
  3859. this.fTruckno = this.dataWithdrawList[0].fTruckno
  3860. this.fCntrtype = this.dataWithdrawList[0].fCntrtype
  3861. this.fGoodsids = this.dataWithdrawList[0].fGoodsids
  3862. this.fDriverTel = this.dataWithdrawList[0].fDriverTel
  3863. this.fPackagespecs = this.dataWithdrawList[0].fPackagespecs
  3864. this.fMblno = this.dataWithdrawList[0].fMblno
  3865. this.fQty = this.dataWithdrawList[0].fQty
  3866. // this.fAddr = this.dataListSelection[0].fQty
  3867. var date = new Date(this.dataWithdrawList[0].fBsdate)
  3868. var Y = date.getFullYear() + '-'
  3869. var M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'
  3870. var D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '
  3871. this.fBsdates = Y + M + D
  3872. }
  3873. if (this.dataListSelection.length > 0) {
  3874. for(let item in this.warehouseOptions){
  3875. if(this.form.fWarehouseid == this.warehouseOptions[item].fId){
  3876. this.dataListFaddr = this.warehouseOptions[item].fAddr
  3877. }
  3878. }
  3879. this.fTruckno = this.dataListSelection[0].fTruckno
  3880. this.fCntrtype = this.dataListSelection[0].fCntrtype
  3881. this.fGoodsids = this.dataListSelection[0].fGoodsids
  3882. this.fDriverTel = this.dataListSelection[0].fDriverTel
  3883. this.fPackagespecs = this.dataListSelection[0].fPackagespecs
  3884. this.fMblno = this.dataListSelection[0].fMblno
  3885. this.fQty = this.dataListSelection[0].fQty
  3886. // this.fAddr = this.dataListSelection[0].fQty
  3887. var date = new Date(this.dataListSelection[0].fBsdate)
  3888. var Y = date.getFullYear() + '-'
  3889. var M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'
  3890. var D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '
  3891. this.fBsdates = Y + M + D
  3892. }
  3893. this.editDialogVisible_sss = true
  3894. this.fBstime = this.form.fBstime
  3895. for(let item in this.businessTypeOption){
  3896. if(this.form.fBusinessType == this.businessTypeOption[item].dictValue){
  3897. this.businessType = this.businessTypeOption[item].dictLabel
  3898. }
  3899. }
  3900. } else {
  3901. this.$message.error('请选择需要打印的明细!')
  3902. }
  3903. },
  3904. // 收款信息
  3905. addCollection() {
  3906. if(this.form.fBusinessType == null){
  3907. this.$message.error("请维护作业类型")
  3908. return false
  3909. }else{
  3910. this.warehouseDrList.push({
  3911. fCorpid: null,
  3912. fFeeid: null,
  3913. fFeeUnitid:'',
  3914. fQty: null,
  3915. fUnitprice: null,
  3916. fAmount: null,
  3917. fCurrency: "RMB",
  3918. fExrate: "1",
  3919. fTaxrate: this.fTaxrate,
  3920. fCxrate: null,
  3921. fRate: null,
  3922. remarks: null,
  3923. fMblno:this.form.fMblno,
  3924. fProductName:this.form.fProductName,
  3925. fMarks:this.form.fMarks,
  3926. fBusinessType:this.form.fBusinessType
  3927. });
  3928. this.fWbuOptions = []
  3929. let queryParams = { pageNum: 1, pageSize: 10};
  3930. listFees(queryParams).then((response) => {
  3931. this.fWbuOptions = response.rows;
  3932. });
  3933. }
  3934. },
  3935. addpayment() {
  3936. if(this.form.fBusinessType == null){
  3937. this.$message.error("请维护作业类型")
  3938. return false
  3939. }else {
  3940. this.warehouseCrList.push({
  3941. fCorpid: null,
  3942. fFeeid: null,
  3943. fFeeUnitid: '',
  3944. fQty: null,
  3945. fUnitprice: null,
  3946. fAmount: null,
  3947. fCurrency: "RMB",
  3948. fExrate: "1",
  3949. fTaxrate: this.fTaxrate,
  3950. fCxrate: null,
  3951. fRate: null,
  3952. remarks: null,
  3953. fMblno: this.form.fMblno,
  3954. fProductName: this.form.fProductName,
  3955. fMarks: this.form.fMarks,
  3956. fBusinessType: this.form.fBusinessType
  3957. });
  3958. this.fWbuOptions = []
  3959. let queryParams = { pageNum: 1, pageSize: 10};
  3960. listFees(queryParams).then((response) => {
  3961. this.fWbuOptions = response.rows;
  3962. });
  3963. }
  3964. },
  3965. queryUser() {
  3966. queryUserVal().then((response) => {
  3967. if (response.user !== null) {
  3968. this.userVal = response.user;
  3969. this.$set(this.form, "fDeptid", this.userVal.deptId);
  3970. this.$set(this.form, "createBy", this.userVal.userName);
  3971. this.$set(this.form,"fStorekeeper",this.userVal.nickName)
  3972. this.$set(this.form, "fIfdamage", "1");
  3973. this.$set(this.form, "fIfweigh", "1");
  3974. this.$set(this.form, "fTrademodeid", "1");
  3975. this.$set(this.form, "createTime", Date.parse(new Date()));
  3976. }
  3977. if (response.dept !== null) {
  3978. this.deptOptions = [];
  3979. this.deptOptions.push(response.dept);
  3980. }
  3981. });
  3982. },
  3983. /** 查询仓库主(出入库)列表 */
  3984. getList() {
  3985. let queryParams = { pageNum: 1, pageSize: 10, fTypeid: 6}
  3986. listCorps(queryParams).then((response) => {
  3987. this.fCompanyOptIons = response.rows;
  3988. });
  3989. let params = { pageNum: 1, pageSize: 10, fTypeid: 2}
  3990. listCorps(params).then((response) => {
  3991. this.fleetOptions = response.rows;
  3992. });
  3993. this.loading = true;
  3994. listWarehousebills(this.queryParams).then((response) => {
  3995. this.warehousebillsList = response.rows;
  3996. this.total = response.total;
  3997. this.loading = false;
  3998. });
  3999. },
  4000. // 查询作业费信息
  4001. getWhgenlegList(kye) {
  4002. let data = {}
  4003. let fTaskType = kye
  4004. if (kye == 2){
  4005. this.key_id = kye
  4006. this.Navigation = true
  4007. data = {
  4008. pageNum:1,
  4009. pageSize:10,
  4010. fTaskType:Number(fTaskType),
  4011. fLabour:this.form.fLabour
  4012. }
  4013. }else if (kye == 1) {
  4014. this.key_id = kye
  4015. this.Navigation = true
  4016. data = {
  4017. pageNum:1,
  4018. pageSize:10,
  4019. fTaskType:Number(fTaskType),
  4020. fFleet:this.form.fFleet
  4021. }
  4022. }else {
  4023. this.Navigation = false
  4024. this.key_id = kye
  4025. data = {
  4026. pageNum:1,
  4027. pageSize:10,
  4028. fCorpid:this.form.fCorpid
  4029. }
  4030. }
  4031. operationAgreement(data).then( response => {
  4032. this.tasklegList = response.rows;
  4033. for (let li in this.tasklegList) {
  4034. this.$set(
  4035. this.tasklegList[li],
  4036. "fFeeUnitid",
  4037. this.tasklegList[li].fFeeUnitid + ""
  4038. );
  4039. }
  4040. this.whgenlegTotal = response.total;
  4041. });
  4042. },
  4043. // 导入计划重量
  4044. costList() {
  4045. if (Number(this.planningList.fPlanqty) > Number(this.form.fPlanqty)) {
  4046. this.$message({ message: "计划费件数不能大于主表计划费件数!", type: "warning", });
  4047. return false;
  4048. }
  4049. if (Number(this.planningList.fPlanqty === 0)) {
  4050. this.$message({ message: "计划件数不能为0", type: "warning", });
  4051. return false;
  4052. }
  4053. let fTruckno = null
  4054. let fDriverTel = null
  4055. let fDriverName = null
  4056. let fDriverIdCar = null
  4057. if (this.form.fTruckno) {
  4058. fTruckno = this.form.fTruckno
  4059. }
  4060. if (this.form.fDriverTel) {
  4061. fDriverTel = this.form.fDriverTel
  4062. }
  4063. if (this.form.fDriverName) {
  4064. fDriverName = this.form.fDriverName
  4065. }
  4066. if (this.form.fDriverIdCar) {
  4067. fDriverIdCar = this.form.fDriverIdCar
  4068. }
  4069. this.dataList.push({
  4070. fBsdate: this.form.fBsdate,
  4071. fGoodsid: null,
  4072. fCntrtype: null,
  4073. fCntqty: 1,
  4074. fNetweight: this.planningList.fPlannetweight,
  4075. fPlanvolumn: 0,
  4076. fGrossweight: this.planningList.fPlangrossweight,
  4077. fQty: this.planningList.fPlanqty,
  4078. fPackagespecs: null,
  4079. fWarehouselocid: null,
  4080. fBoxno: null,
  4081. fMarks: null,
  4082. fGoodsval: null,
  4083. fTruckno: fTruckno,
  4084. fDriverTel: fDriverTel,
  4085. fDriverName: fDriverName,
  4086. fDriverIdCar: fDriverIdCar,
  4087. remark: null,
  4088. fBillstatus: 10,
  4089. fMblno:this.form.fMblno
  4090. });
  4091. this.weightList = false;
  4092. // this.contrOl = true
  4093. // 查询库区下 所有库位
  4094. // this.warehouseMethod();
  4095. },
  4096. /* 所有库位信息 */
  4097. warehouseMethod() {
  4098. var fWarehouseid = this.form.fWarehouseid ;
  4099. let queryParams = { pageNum: 1, pageSize: 10, fStatus: 0, delFlag: 0, fWarehouseid : fWarehouseid };
  4100. listWarehouse(queryParams).then((response) => {
  4101. this.kqhouseOptions = response.rows;
  4102. });
  4103. },
  4104. // 导入付款信息
  4105. whgenlegData() {
  4106. if (this.dialogWhgenlegList.length === 0) {
  4107. this.$message({
  4108. message: "请选择需要导入的数据",
  4109. type: "warning",
  4110. });
  4111. } else {
  4112. for (let whgen in this.dialogWhgenlegList) {
  4113. let feeId = this.dialogWhgenlegList[whgen].feeFId;
  4114. getFees(feeId).then((response) => {
  4115. console.log(response)
  4116. this.fWbuOptions.push(response.data);
  4117. });
  4118. let qty = 1;
  4119. if (this.dialogWhgenlegList[whgen].fFeeUnitid === 1) {
  4120. qty = this.fQty
  4121. } else if (this.dialogWhgenlegList[whgen].fFeeUnitid === 2) {
  4122. qty = (this.fGrossweight/1000).toFixed(2)
  4123. } else if (this.dialogWhgenlegList[whgen].fFeeUnitid === 3) {
  4124. qty = (this.fNetweight/1000).toFixed(2)
  4125. } else if (this.dialogWhgenlegList[whgen].fFeeUnitid === 4) {
  4126. qty = this.fVolumn
  4127. }
  4128. // qty=(qty/1000).toFixed(2);
  4129. let fAmount = parseFloat(Number(this.dialogWhgenlegList[whgen].fPrice) * Number(qty)).toFixed(2)
  4130. this.warehouseDrList.push({
  4131. fQty: qty,
  4132. fCorpid: this.dialogWhgenlegList[whgen].fCorpid,
  4133. fFeeid: feeId,
  4134. fFeeunitid: this.dialogWhgenlegList[whgen].fFeeUnitid + '',
  4135. fUnitprice: this.dialogWhgenlegList[whgen].fPrice,
  4136. fCurrency: 'RMB',
  4137. fExrate: 1,
  4138. fAmount: fAmount,
  4139. fTaxrate: this.fTaxrate,
  4140. fMblno:this.form.fMblno,
  4141. fProductName:this.form.fProductName,
  4142. fMarks:this.form.fMarks,
  4143. fBusinessType:this.$set(this.warehouseDrList,'fBusinessType',this.form.fBusinessType)
  4144. })
  4145. }
  4146. this.warehousingagreement = false;
  4147. }
  4148. },
  4149. zhgenlegData() {
  4150. if (this.dialogWhgenlegList.length === 0) {
  4151. this.$message({
  4152. message: "请选择需要导入的数据",
  4153. type: "warning",
  4154. });
  4155. } else {
  4156. for (let zhgen in this.dialogWhgenlegList) {
  4157. let feeId = this.dialogWhgenlegList[zhgen].feeFId;
  4158. getFees(feeId).then((response) => {
  4159. this.fWbuOptions = []
  4160. let queryParams = { pageNum: 1, pageSize: 10};
  4161. listFees(queryParams).then((response) => {
  4162. this.fWbuOptions = response.rows;
  4163. });
  4164. });
  4165. let qty = 1;
  4166. if (this.dialogWhgenlegList[zhgen].fFeeUnitid == 1) {
  4167. qty = this.fQty
  4168. } else if (this.dialogWhgenlegList[zhgen].fFeeUnitid == 2) {
  4169. qty = (this.fGrossweight/1000).toFixed(2)
  4170. } else if (this.dialogWhgenlegList[zhgen].fFeeUnitid == 3) {
  4171. qty = (this.fNetweight/1000).toFixed(2)
  4172. } else if (this.dialogWhgenlegList[zhgen].fFeeUnitid == 7) {
  4173. qty = this.fCntqty
  4174. }
  4175. // qty=(qty/1000).toFixed(2);
  4176. let fAmount = parseFloat(Number(this.dialogWhgenlegList[zhgen].fPrice) * Number(qty)).toFixed(2)
  4177. if(this.key_id == 3){
  4178. this.warehouseDrList.push({
  4179. fQty: qty,
  4180. fCorpid: this.dialogWhgenlegList[zhgen].fCorpid,
  4181. fFeeid: feeId,
  4182. fFeeUnitid: this.dialogWhgenlegList[zhgen].fFeeUnitid + "",
  4183. fUnitprice: this.dialogWhgenlegList[zhgen].fPrice,
  4184. fCurrency: 'RMB',
  4185. fExrate: 1,
  4186. fAmount: fAmount,
  4187. fTaxrate: this.fTaxrate,
  4188. fMblno:this.form.fMblno,
  4189. fProductName:this.form.fProductName,
  4190. fMarks:this.form.fMarks,
  4191. fBusinessType:this.$set(this.warehouseDrList,'fBusinessType',this.form.fBusinessType)
  4192. })
  4193. }else{
  4194. this.warehouseCrList.push({
  4195. fQty: qty,
  4196. fCorpid: this.dialogWhgenlegList[zhgen].fCorpid,
  4197. fFeeid: feeId,
  4198. fFeeUnitid: this.dialogWhgenlegList[zhgen].fFeeUnitid + "",
  4199. fUnitprice: this.dialogWhgenlegList[zhgen].fPrice,
  4200. fCurrency: 'RMB',
  4201. fExrate: 1,
  4202. fAmount: fAmount,
  4203. fTaxrate: this.fTaxrate,
  4204. fMblno:this.form.fMblno,
  4205. fProductName:this.form.fProductName,
  4206. fMarks:this.form.fMarks,
  4207. fBusinessType:this.$set(this.warehouseCrList,'fBusinessType',this.form.fBusinessType)
  4208. })
  4209. }
  4210. }
  4211. this.warehousingagreements = false;
  4212. }
  4213. },
  4214. // 作业类型(数据字典),对应st_in_type 字典翻译
  4215. fBusinessTypeFormat(row,column){
  4216. return this.selectDictLabel(this.businessTypeOption, row.fBusinessType);
  4217. },
  4218. // 贸易方式(数据字典),对���t_trademodels 字典翻译
  4219. fTrademodeidFormat(row, column) {
  4220. return this.selectDictLabel(this.fTrademodeidOptions, row.fTrademodeid);
  4221. },
  4222. // 计费单位(数据字典),下拉选择毛重或净重字典翻译
  4223. fFeetunitFormat(row, column) {
  4224. return this.selectDictLabel(this.fFeetunitOptions, row.fFeetunit);
  4225. },
  4226. // 是否过磅(数据字典)默认 F ,过磅T 否者F 下拉选择字典翻译
  4227. fIfweighFormat(row, column) {
  4228. return this.selectDictLabel(this.fIfweighOptions, row.fIfweigh);
  4229. },
  4230. // 编号字典翻译
  4231. fStltypeidFormat(row, column) {
  4232. return this.selectDictLabel(this.fStltypeOptions, row.fStltypeid);
  4233. },
  4234. // 是否质押(数据字典),默认 F ,质押T 否者F 下拉选择字典翻译
  4235. fIfpledgeFormat(row, column) {
  4236. return this.selectDictLabel(this.fIfpledgeOptions, row.fIfpledge);
  4237. },
  4238. // 是否破损(数据字典),默认F否则T字典翻译
  4239. fIfdamageFormat(row, column) {
  4240. return this.selectDictLabel(this.fIfdamageOptions, row.fIfdamage);
  4241. },
  4242. // 单据类型(数据字典)SJRK字典翻译
  4243. fBilltypeFormat(row, column) {
  4244. return this.selectDictLabel(this.fBilltypeOptions, row.fBilltype);
  4245. },
  4246. // 状态(数据字典),N 入字典翻译
  4247. fBillstatusFormat(row, column) {
  4248. return this.selectDictLabel(this.fBillstatusOptions, row.fBillstatus);
  4249. },
  4250. // 取消按钮
  4251. cancel() {
  4252. this.open = false
  4253. this.fGrossweight = 0
  4254. this.fNetweight = 0
  4255. this.fQty = 0
  4256. this.reset()
  4257. this.getList()
  4258. },
  4259. // 表单重置
  4260. reset() {
  4261. this.doNot = false
  4262. this.browseStatus = false
  4263. this.approvalStatus = false
  4264. this.detailsHidden = false
  4265. this.warehousingagreement = false
  4266. this.warehousingagreements = false
  4267. this.formBrowseStatus = false
  4268. this.editDialogVisible_s = false
  4269. this.editDialogVisible_ss = false
  4270. this.editDialogVisible_sss = false
  4271. this.editDialogClosed_ss = false
  4272. this.addOrUpdateVisible = false
  4273. this.addOrUpdateVisib = false
  4274. this.weightList = false
  4275. this.form = {
  4276. fId: null,
  4277. fBillno: null,
  4278. fCustomsdeclartion: null,
  4279. fOriginalbillno: null,
  4280. fDeptid: null,
  4281. fBsdeptid: null,
  4282. fContacts: null,
  4283. fTel: null,
  4284. fCorpid: null,
  4285. fTocorpid: null,
  4286. fStltypeid: null,
  4287. fBscorpno: null,
  4288. fWarehouseid: null,
  4289. fStorekeeper: null,
  4290. fBsdate: null,
  4291. fPlanqty: null,
  4292. fPlangrossweight: null,
  4293. fPlannetweight: null,
  4294. fPlanvolumn: null,
  4295. fQty: null,
  4296. fGrossweight: null,
  4297. fNetweight: null,
  4298. fVolumn: null,
  4299. fTrademodeid: null,
  4300. fSbu: null,
  4301. fFeetunit: null,
  4302. fMblno: null,
  4303. fVslvoy: null,
  4304. fEta: null,
  4305. fCustomno: null,
  4306. fIfweigh: null,
  4307. fIfpledge: null,
  4308. fIfdamage: null,
  4309. fBankcorpid: null,
  4310. fBilltype: null,
  4311. fBillstatus: null,
  4312. delFlag: null,
  4313. createBy: null,
  4314. createTime: null,
  4315. updateBy: null,
  4316. updateTime: null,
  4317. remark: null,
  4318. fCreateby: null,
  4319. fCreatetime: null,
  4320. fGoodsid: null,
  4321. fCntrtype: null,
  4322. fCntqty: null
  4323. }
  4324. this.dataList = []
  4325. this.fMblnoOptions = []
  4326. this.userOptions = []
  4327. this.warehouseOptions = []
  4328. this.fSbuOptions = []
  4329. this.goodsOptions = []
  4330. this.kqhouseOptions = []
  4331. this.relevantAttachments = []
  4332. this.KHblnoOptions = []
  4333. this.fWbuOptions = []
  4334. this.resetForm("form")
  4335. },
  4336. /** 搜索按钮操作 */
  4337. handleQuery() {
  4338. this.queryParams.pageNum = 1;
  4339. this.getList();
  4340. },
  4341. /** 重置按钮操作 */
  4342. resetQuery() {
  4343. this.queryParams = {
  4344. fBillno:null,
  4345. createBy:null,
  4346. timeInterval:null,
  4347. fTrademodeid:null,
  4348. fCorpid:null,
  4349. fMblno:null,
  4350. fSbu:null,
  4351. fGoodsid:null,
  4352. fWarehouseid:null,
  4353. fMarks:null,
  4354. fBillstatus:null,
  4355. fItemsStatus:null
  4356. }
  4357. this.resetForm("queryForm");
  4358. this.handleQuery();
  4359. },
  4360. // 多选框选中数据
  4361. handleSelectionChange(selection) {
  4362. this.ids = selection.map((item) => item.fId);
  4363. this.single = selection.length !== 1;
  4364. this.multiple = !selection.length;
  4365. },
  4366. // 库存明细多选
  4367. Selectinventory(selection) {
  4368. this.Printinglist = selection;
  4369. this.Printinglists = selection;
  4370. this.dataListSelection = [];
  4371. this.dataWithdrawList = [];
  4372. if (!selection || selection.length === 0) {
  4373. return false;
  4374. } else {
  4375. for (let se in selection) {
  4376. if (!selection[se].fBillstatus || selection[se].fBillstatus !== 40) {
  4377. this.dataListSelection.push(selection[se]);
  4378. } else if (selection[se].fBillstatus && selection[se].fBillstatus === 40) {
  4379. this.dataWithdrawList.push(selection[se]);
  4380. }
  4381. }
  4382. }
  4383. // 打印回显仓库
  4384. for (let corp in this.warehouseOptions) {
  4385. this.fAddr = this.warehouseOptions[corp].fAddr;
  4386. }
  4387. },
  4388. // 收款选
  4389. Collectionoptions(selection) {
  4390. this.Collectionoptionss = selection
  4391. for (let lest in this.fWbuOptions) {
  4392. for (let li in this.Collectionoptionss) {
  4393. if (this.fWbuOptions[lest].fId === this.Collectionoptionss[li].fFeeid) {
  4394. this.$set(this.Collectionoptionss[li], 'fFeeids', this.fWbuOptions[lest].fName)
  4395. }
  4396. }
  4397. }
  4398. },
  4399. // 收款删除
  4400. deleteRow(index, rows) {
  4401. rows.splice(index, 1);
  4402. },
  4403. deleteRoww(index, rows) {
  4404. rows.splice(index, 1);
  4405. },
  4406. // 付款选择
  4407. Paymentoptions(selection) {
  4408. },
  4409. /** 新增按钮操作 */
  4410. handleAdd(status) {
  4411. let queryParams = {pageNum: 1, pageSize: 10};
  4412. listFees(queryParams).then((response) => {
  4413. this.fWbuOptions = response.rows;
  4414. });
  4415. this.reset()
  4416. this.form = {
  4417. fItemsStatus: null,
  4418. fFeetunit:"2",
  4419. fBstime: new Date()
  4420. }
  4421. this.browseStatus = status;
  4422. this.queryUser();
  4423. this.goodsRemoteMethod()
  4424. this.warehousesssMethod()
  4425. this.open = true;
  4426. this.detailsHidden = false;
  4427. this.dataList = [];
  4428. this.warehouseCrList = [];
  4429. this.warehouseDrList = [];
  4430. this.relevantAttachments = [];
  4431. this.mum = 0;
  4432. this.title = "入库单";
  4433. this.contrOl = false
  4434. this.formBrowseStatus = false;
  4435. },
  4436. /** 修改按钮操作 */
  4437. handleUpdate(row, status) {
  4438. this.dataList = []
  4439. this.reset()
  4440. this.browseStatus = status;
  4441. this.contrOl = status;
  4442. this.detailsHidden = false;
  4443. this.formBrowseStatus = false;
  4444. const fId = row.fId || this.ids;
  4445. this.goodsRemoteMethod()
  4446. getWarehousebills(fId).then((response) => {
  4447. if (response.data.warehousebills) {
  4448. this.form = response.data.warehousebills;
  4449. this.before = this.form.createBy
  4450. if (this.form.fBillstatus > 2) {
  4451. this.approvalStatus = false;
  4452. } else {
  4453. this.fMblno = true;
  4454. }
  4455. this.$set(this.form, "fEta", Date.parse(this.form.fEta));
  4456. this.$set(this.form, "fStltypeid", this.form.fStltypeid + "");
  4457. this.$set(this.form, "fFeeUnitid", this.form.fFeeunitid + "");
  4458. this.$set(this.form, "fBsdate", Date.parse(this.form.fBsdate));
  4459. this.$set(this.form, "fTrademodeid", this.form.fTrademodeid + "");
  4460. this.$set(this.form, "createTime", Date.parse(this.form.createTime));
  4461. this.$set(this.form, "fChargedate", Date.parse(this.form.fChargedate));
  4462. this.$set(this.form, "fPlannetweight", this.form.fPlannetweight.toFixed(2));
  4463. this.$set(this.form, "fPlangrossweight", this.form.fPlangrossweight.toFixed(2));
  4464. }
  4465. if (response.data.warehouseBillsItem) {
  4466. this.dataList = response.data.warehouseBillsItem;
  4467. for (let list in this.dataList) {
  4468. this.$set(this.dataList[list], 'fBusinessType', this.dataList[list].fBusinessType + '')
  4469. if (this.dataList[list].fBillstatus > 10) {
  4470. this.formBrowseStatus = true;
  4471. this.$set(this.dataList[list], "fBusinessType", this.dataList[list].fBusinessType + '')
  4472. }else{
  4473. this.formBrowseStatus = false;
  4474. }
  4475. if(this.dataList[list].fBillstatus === 40){
  4476. this.contrOl = true
  4477. }else{
  4478. this.contrOl = false
  4479. }
  4480. }
  4481. }
  4482. if (response.data.corps) {
  4483. this.fMblnoOptions = response.data.corps;
  4484. this.KHblnoOptions = response.data.corps;
  4485. this.fCompanyOptIons = response.data.corps;
  4486. this.fleetOptions = response.data.corps;
  4487. }
  4488. if (response.data.feesList) {
  4489. this.fWbuOptions = response.data.feesList;
  4490. }
  4491. if (response.data.warehouse) {
  4492. this.warehouseOptions = response.data.warehouse;
  4493. }
  4494. if (response.data.warehouseBillsItem) {
  4495. this.dataList = response.data.warehouseBillsItem;
  4496. for(let list in this.dataList){
  4497. if (this.dataList[list].fBillstatus > 10) {
  4498. this.formBrowseStatus = true;
  4499. }
  4500. }
  4501. }
  4502. if (response.data.enclosures) {
  4503. this.relevantAttachments = response.data.enclosures;
  4504. }
  4505. for (let list in this.dataList) {
  4506. this.$set(this.dataList[list], "fBsdate", Date.parse(this.dataList[list].fBsdate));
  4507. }
  4508. this.kqhouseOptions = response.data.warehouseAreas;
  4509. this.warehouseDrList = response.data.warehousebillsfeesDr;
  4510. for (let dr in this.warehouseDrList) {
  4511. this.$set(this.warehouseDrList[dr], "fFeeUnitid", this.warehouseDrList[dr].fFeeunitid + '');
  4512. this.$set(this.warehouseDrList[dr], "fQty", this.warehouseDrList[dr].fQty.toFixed(2));
  4513. this.$set(this.warehouseDrList[dr], "fAmount", this.warehouseDrList[dr].fAmount.toFixed(2));
  4514. }
  4515. this.warehouseCrList = response.data.warehousebillsfeesCr;
  4516. for (let cr in this.warehouseCrList) {
  4517. this.$set(this.warehouseCrList[cr], "fFeeUnitid", this.warehouseCrList[cr].fFeeunitid + "");
  4518. }
  4519. this.userOptions = response.data.sysUser;
  4520. // this.warehouseDrList[0].fBusinessType = this.form.fBusinessType
  4521. this.open = true;
  4522. this.title = "修改仓入库";
  4523. this.warehousesssMethod()
  4524. this.fWbuOptions = []
  4525. let queryParams = { pageNum: 1, pageSize: 10};
  4526. listFees(queryParams).then((response) => {
  4527. this.fWbuOptions = response.rows;
  4528. });
  4529. });
  4530. queryUserVal().then((response)=>{
  4531. this.current = response.user.userName
  4532. })
  4533. },
  4534. // 库存总账多选框
  4535. whgenlegSelectionChange(selection) {
  4536. this.dialogWhgenlegList = selection;
  4537. },
  4538. // 合计
  4539. getSummaries(param) {
  4540. const { columns, data } = param;
  4541. const sums = [];
  4542. var values = [];
  4543. columns.forEach((column, index) => {
  4544. if (index === 0) {
  4545. sums[index] = "";
  4546. return;
  4547. }
  4548. if (column.property === "fPlanvolumn") {
  4549. values = data.map((item) => Number(item["fPlanvolumn"]));
  4550. }
  4551. if (column.property === "fGrossweight") {
  4552. values = data.map((item) => Number(item["fGrossweight"]));
  4553. }
  4554. if (column.property === "fNetweight") {
  4555. values = data.map((item) => Number(item["fNetweight"]));
  4556. }
  4557. if (column.property === "fQty") {
  4558. values = data.map((item) => Number(item["fQty"]));
  4559. }
  4560. if (column.property === "fCntqty") {
  4561. values = data.map((item) => Number(item["fCntqty"]));
  4562. }
  4563. if (
  4564. column.property === "fPlanvolumn" ||
  4565. column.property === "fGrossweight" ||
  4566. column.property === "fNetweight" ||
  4567. column.property === "fQty" ||
  4568. column.property === "fCntqty"
  4569. ) {
  4570. sums[index] = values.reduce((prev, curr) => {
  4571. const value = Number(curr);
  4572. if (!isNaN(value)) {
  4573. if (column.property === "fPlanvolumn") {
  4574. this.fPlanvolumn = prev + curr;
  4575. }
  4576. if (column.property === "fGrossweight") {
  4577. this.fGrossweight = prev + curr;
  4578. }
  4579. if (column.property === "fNetweight") {
  4580. this.fNetweight = prev + curr;
  4581. }
  4582. if (column.property === "fQty") {
  4583. this.fQty = prev + curr;
  4584. this.mum = prev + curr;
  4585. }
  4586. if (column.property === "fCntqty") {
  4587. this.fCntqty = prev + curr;
  4588. }
  4589. return prev + curr;
  4590. } else {
  4591. if (column.property === "fQty") {
  4592. this.fQty = prev;
  4593. this.mum = prev;
  4594. }
  4595. return prev;
  4596. }
  4597. }, 0);
  4598. sums[index] = sums[index].toFixed(2);
  4599. }
  4600. });
  4601. this.sums = sums;
  4602. return sums;
  4603. },
  4604. // 付款合计
  4605. warehouseDrSummaries(param) {
  4606. const { columns, data } = param;
  4607. const sums = [];
  4608. columns.forEach((column, index) => {
  4609. if (index === 0) {
  4610. sums[index] = "合计";
  4611. return;
  4612. }
  4613. const values = data.map((item) => Number(item[column.property]));
  4614. if (
  4615. column.property === "fUnitprice" ||
  4616. column.property === "fAmount" ||
  4617. column.property === "fQty" ||
  4618. column.property === "fQty"
  4619. ) {
  4620. sums[index] = values.reduce((prev, curr) => {
  4621. const value = Number(curr);
  4622. if (!isNaN(value)) {
  4623. return prev + curr;
  4624. } else {
  4625. return prev;
  4626. }
  4627. }, 0);
  4628. sums[index] = sums[index].toFixed(2);
  4629. }
  4630. });
  4631. return sums;
  4632. },
  4633. // 计划废用导入计算
  4634. changeList(row) {
  4635. this.fPlaNnumber = this.form.fPlannetweight / this.form.fPlanqty;
  4636. this.fPlangNumber = this.form.fPlangrossweight / this.form.fPlanqty;
  4637. this.planningList.fPlannetweight = (
  4638. Number(this.planningList.fPlanqty) * Number(this.fPlaNnumber)
  4639. ).toFixed(2);
  4640. this.planningList.fPlangrossweight = (
  4641. Number(this.planningList.fPlanqty) * Number(this.fPlangNumber)
  4642. ).toFixed(2);
  4643. },
  4644. // 数量计算
  4645. changeContractAmt(row) {
  4646. let fQty = 0;
  4647. let fUnitprice = 0;
  4648. if (row.fUnitprice) {
  4649. fUnitprice = row.fUnitprice;
  4650. }
  4651. if (row.fQty) {
  4652. fQty = row.fQty;
  4653. }
  4654. this.$set(row, "fAmount", Number(fUnitprice) * Number(fQty)).toFixed(2);
  4655. },
  4656. changefCorpid(row) {
  4657. this.$set(row, "fSbu", row.fCorpid);
  4658. for (let corp in this.fMblnoOptions) {
  4659. if (row.fCorpid === this.fMblnoOptions[corp].fId) {
  4660. this.$set(
  4661. this.form,
  4662. "fStltypeid",
  4663. this.fMblnoOptions[corp].fStltypeid + ""
  4664. );
  4665. }
  4666. }
  4667. },
  4668. // 品名改变
  4669. changefGoodsid(row) {
  4670. for (let corp in this.goodsOptions) {
  4671. if (row.fGoodsid === this.goodsOptions[corp].fId) {
  4672. this.$set(row, "fGoodsids", this.goodsOptions[corp].fName);
  4673. this.$set(row, "fPackagespecs", this.goodsOptions[corp].fPackagespecs);
  4674. }
  4675. }
  4676. },
  4677. // 变更计价单位
  4678. changeFeeUnit(row) {
  4679. if (!row.fFeeUnitid) {
  4680. return false;
  4681. }
  4682. if (row.fFeeUnitid === "2") {
  4683. this.$set(row, "fQty", (this.fGrossweight/1000).toFixed(2));
  4684. } else if (row.fFeeUnitid === "1") {
  4685. this.$set(row, "fQty", this.fQty.toFixed(2));
  4686. } else if (row.fFeeUnitid === "3") {
  4687. this.$set(row, "fQty", (this.fNetweight / 1000).toFixed(2));
  4688. }else if(row.fFeeUnitid === "7"){
  4689. this.$set(row, "fQty", this.fCntqty);
  4690. } else {
  4691. this.$set(row, "fQty", 0);
  4692. }
  4693. if (row.fUnitprice) {
  4694. this.$set(
  4695. row,
  4696. "fAmount",
  4697. parseFloat(Number(row.fUnitprice) * Number(row.fQty)).toFixed(2)
  4698. );
  4699. }
  4700. },
  4701. changefBsdate(row) {
  4702. this.$set(this.form, 'fChargedate', row)
  4703. if (this.dataList.length > 0) {
  4704. for (var i = 0; i < this.dataList.length; i++) {
  4705. this.$set(this.dataList[i], "fBsdate", row);
  4706. }
  4707. }
  4708. },
  4709. // 入账
  4710. creditClick() {
  4711. this.$refs['form'].validate((valid) => {
  4712. for (let warehouseCr in this.Printinglist) {
  4713. if(this.form.fFeetunit > 3){
  4714. this.$message.error('请维护主表计费单位为件数、毛重(kg)或净重(kg)')
  4715. return false
  4716. }
  4717. if (!this.Printinglist[warehouseCr].fQty || this.Printinglist[warehouseCr].fQty === 0) {
  4718. this.$message.error("请维护入库件数");
  4719. return false;
  4720. }
  4721. if (!this.Printinglist[warehouseCr].fNetweight || this.Printinglist[warehouseCr].fNetweight === 0) {
  4722. this.$message.error("请维护入库净重");
  4723. return false;
  4724. }
  4725. if (!this.Printinglist[warehouseCr].fGrossweight || this.Printinglist[warehouseCr].fGrossweight === 0) {
  4726. this.$message.error("请维护入库毛重");
  4727. return false;
  4728. }
  4729. }
  4730. for (let warehouseCr in this.dataListSelection) {
  4731. if (this.dataListSelection[warehouseCr].fBillstatus === 20) {
  4732. this.$message.error('请先卸货')
  4733. return false
  4734. }
  4735. if (this.dataListSelection[warehouseCr].fBillstatus !== 30) {
  4736. this.$message.error('请先打印作业单')
  4737. return false
  4738. }
  4739. if (!this.dataListSelection[warehouseCr].fBusinessType) {
  4740. this.$message.error('请维护业务类型')
  4741. return false
  4742. }
  4743. if (!this.dataListSelection[warehouseCr].fMarks) {
  4744. this.$message.error('请维护业务详情')
  4745. return false
  4746. }
  4747. if (!this.dataListSelection[warehouseCr].fWarehouselocid) {
  4748. this.$message.error('请选择库区')
  4749. return false
  4750. }
  4751. if (!this.dataListSelection[warehouseCr].fGoodsid) {
  4752. this.$message.error('请选择品名')
  4753. return false
  4754. }
  4755. if (!this.dataListSelection[warehouseCr].fGrossweight) {
  4756. this.$message.error('请选择入库毛重')
  4757. return false
  4758. }
  4759. if (!this.dataListSelection[warehouseCr].fNetweight) {
  4760. this.$message.error('请选择入库净重')
  4761. return false
  4762. }
  4763. if (!this.dataListSelection[warehouseCr].fQty) {
  4764. this.$message.error('请选择入库件数')
  4765. return false
  4766. }
  4767. if (!this.dataListSelection[warehouseCr].fDriverName) {
  4768. this.$message.error('请输入司机姓名')
  4769. return false
  4770. }
  4771. }
  4772. if (valid) {
  4773. let formData = new window.FormData()
  4774. formData.append('warehouseBills', JSON.stringify(this.form))
  4775. formData.append('warehousebillsitems', JSON.stringify(this.dataListSelection))
  4776. formData.append('warehousebillsfeesDr', JSON.stringify(this.warehouseDrList))
  4777. formData.append('warehousebillsfeesCr', JSON.stringify(this.warehouseCrList))
  4778. formData.append('tEnclosure', JSON.stringify(this.relevantAttachments))
  4779. formData.append('whgenleg', JSON.stringify(this.relevantAttachments))
  4780. addWhgenleg(formData).then((response) => {
  4781. this.fid = response.data
  4782. this.formBrowseStatus = true
  4783. let warehouseItem = response.data.warehousebillsitems
  4784. for (let item in warehouseItem) {
  4785. for (let li in this.dataList) {
  4786. if (warehouseItem[item].fId === this.dataList[li].fId) {
  4787. this.$set(this.dataList[li], 'fBillstatus', warehouseItem[item].fBillstatus)
  4788. this.$set(this.dataList[li], 'fIsInventory', warehouseItem[item].fIsInventory)
  4789. break
  4790. }
  4791. }
  4792. }
  4793. this.msgSuccess('入账成功')
  4794. getWarehousebills(this.form.fId).then((response) => {
  4795. if (response.data.warehousebills) {
  4796. this.form = response.data.warehousebills;
  4797. this.before = this.form.createBy
  4798. if (this.form.fBillstatus > 2) {
  4799. this.approvalStatus = false;
  4800. } else {
  4801. this.fMblno = true;
  4802. }
  4803. this.$set(this.form, "fEta", Date.parse(this.form.fEta));
  4804. this.$set(this.form, "fStltypeid", this.form.fStltypeid + "");
  4805. this.$set(this.form, "fFeeUnitid", this.form.fFeeunitid + "");
  4806. this.$set(this.form, "fBsdate", Date.parse(this.form.fBsdate));
  4807. this.$set(this.form, "fTrademodeid", this.form.fTrademodeid + "");
  4808. this.$set(this.form, "createTime", Date.parse(this.form.createTime));
  4809. this.$set(this.form, "fChargedate", Date.parse(this.form.fChargedate));
  4810. this.$set(this.form, "fPlannetweight", this.form.fPlannetweight.toFixed(2));
  4811. this.$set(this.form, "fPlangrossweight", this.form.fPlangrossweight.toFixed(2));
  4812. }
  4813. if (response.data.warehouseBillsItem) {
  4814. this.dataList = response.data.warehouseBillsItem;
  4815. for (let list in this.dataList) {
  4816. this.$set(this.dataList[list], 'fBusinessType', this.dataList[list].fBusinessType + '')
  4817. if (this.dataList[list].fBillstatus > 10) {
  4818. this.formBrowseStatus = true;
  4819. this.$set(this.dataList[list], "fBusinessType", this.dataList[list].fBusinessType + '')
  4820. }else{
  4821. this.formBrowseStatus = false;
  4822. }
  4823. if(this.dataList[list].fBillstatus === 40){
  4824. this.contrOl = true
  4825. }else{
  4826. this.contrOl = false
  4827. }
  4828. }
  4829. }
  4830. if (response.data.corps) {
  4831. this.fMblnoOptions = response.data.corps;
  4832. this.KHblnoOptions = response.data.corps;
  4833. this.fCompanyOptIons = response.data.corps;
  4834. this.fleetOptions = response.data.corps;
  4835. }
  4836. if (response.data.feesList) {
  4837. this.fWbuOptions = response.data.feesList;
  4838. }
  4839. if (response.data.warehouse) {
  4840. this.warehouseOptions = response.data.warehouse;
  4841. }
  4842. if (response.data.warehouseBillsItem) {
  4843. this.dataList = response.data.warehouseBillsItem;
  4844. for(let list in this.dataList){
  4845. if (this.dataList[list].fBillstatus > 10) {
  4846. this.formBrowseStatus = true;
  4847. }
  4848. }
  4849. }
  4850. if (response.data.enclosures) {
  4851. this.relevantAttachments = response.data.enclosures;
  4852. }
  4853. for (let list in this.dataList) {
  4854. this.$set(this.dataList[list], "fBsdate", Date.parse(this.dataList[list].fBsdate));
  4855. }
  4856. this.kqhouseOptions = response.data.warehouseAreas;
  4857. this.warehouseDrList = response.data.warehousebillsfeesDr;
  4858. for (let dr in this.warehouseDrList) {
  4859. this.$set(this.warehouseDrList[dr], "fFeeUnitid", this.warehouseDrList[dr].fFeeunitid + '');
  4860. this.$set(this.warehouseDrList[dr], "fQty", this.warehouseDrList[dr].fQty.toFixed(2));
  4861. this.$set(this.warehouseDrList[dr], "fAmount", this.warehouseDrList[dr].fAmount.toFixed(2));
  4862. }
  4863. this.warehouseCrList = response.data.warehousebillsfeesCr;
  4864. for (let cr in this.warehouseCrList) {
  4865. this.$set(this.warehouseCrList[cr], "fFeeUnitid", this.warehouseCrList[cr].fFeeunitid + "");
  4866. }
  4867. this.userOptions = response.data.sysUser;
  4868. // this.warehouseDrList[0].fBusinessType = this.form.fBusinessType
  4869. this.open = true;
  4870. this.title = "修改仓入库";
  4871. this.warehousesssMethod()
  4872. });
  4873. this.form.fNetweight = this.fNetweight
  4874. this.form.fPlanvolumn = this.fPlanvolumn
  4875. this.form.fGrossweight = this.fGrossweight
  4876. this.form.fQty = this.fQty
  4877. // if (!this.form.fId) {
  4878. // this.form.fId = this.fid
  4879. // }
  4880. // if (!this.form.fBusinessType) {
  4881. // this.$message.error('请选择货物属性!')
  4882. // return false
  4883. // }
  4884. for (let list in this.dataList) {
  4885. if (!this.dataList[list].fBusinessType) {
  4886. this.$message.error('请输入库存明细的货物属性!')
  4887. return false
  4888. }
  4889. }
  4890. let formDatae = new window.FormData()
  4891. // 附件数据
  4892. this.form.fItemsStatus = 4
  4893. this.form.fBillingway = this.form.fFeetunit
  4894. // this.form.fBstime = JSON.stringify(this.form.fBstime)
  4895. formDatae.append('tWarehouseBills', JSON.stringify(this.form))
  4896. // 库存明细
  4897. formDatae.append('tWarehousebillsitems', JSON.stringify(this.dataList))
  4898. // 附件数据
  4899. formDatae.append('tEnclosure', JSON.stringify(this.relevantAttachments))
  4900. // 费用明细付款
  4901. formDatae.append('tWarehousebillsfeesCr', JSON.stringify(this.warehouseCrList))
  4902. // 收款
  4903. formDatae.append('tWarehousebillsfeesDr', JSON.stringify(this.warehouseDrList))
  4904. addWarehousebills(formDatae).then((response) => {
  4905. this.form = response.data.warehouseBills
  4906. this.$set(this.form, 'fEta', Date.parse(this.form.fEta))
  4907. this.$set(this.form, 'fStltypeid', this.form.fStltypeid + '')
  4908. this.$set(this.form, 'fBsdate', Date.parse(this.form.fBsdate))
  4909. this.$set(this.form, 'fTrademodeid', this.form.fTrademodeid + '')
  4910. this.$set(this.form, 'createTime', Date.parse(this.form.createTime))
  4911. this.dataList = response.data.warehousebillsitems
  4912. for (let list in this.dataList) {
  4913. this.$set(this.dataList[list], 'fBsdate', Date.parse(this.dataList[list].fBsdate))
  4914. this.$set(this.dataList[list], 'fBusinessType', this.dataList[list].fBusinessType + '')
  4915. }
  4916. this.fid = response.data.warehouseBills.fId
  4917. this.getList()
  4918. })
  4919. this.$refs.checkout.clearSelection()
  4920. this.contrOl = true
  4921. })
  4922. }
  4923. })
  4924. },
  4925. // 打印作业单
  4926. addList() {
  4927. this.$refs["form"].validate((valid) => {
  4928. if (valid) {
  4929. let dataList = []
  4930. for (let se in this.dataListSelection) {
  4931. if (Number(this.dataListSelection[se].fBillstatus) >= 10) {
  4932. dataList.push(this.dataListSelection[se])
  4933. }
  4934. }
  4935. if (dataList.length !== 0) {
  4936. let formData = new window.FormData();
  4937. formData.append("warehouseBills", JSON.stringify(this.form));
  4938. formData.append("warehousebillsitems", JSON.stringify(dataList));
  4939. formData.append("warehousebillsfeesDr", JSON.stringify(this.warehouseDrList));
  4940. formData.append("warehousebillsfeesCr", JSON.stringify(this.warehouseCrList));
  4941. formData.append("tEnclosure", JSON.stringify(this.relevantAttachments));
  4942. for(let index in dataList){
  4943. if(dataList[index].fBillstatus < 20){
  4944. addJoblist(formData).then((response) => {
  4945. this.formBrowseStatus = true
  4946. let dataSelection = response.data.warehousebillsitems
  4947. for (let li in dataSelection) {
  4948. for (let i in this.dataList) {
  4949. if (dataSelection[li].fId === this.dataList[i].fId && this.dataList[i].fBillstatus === 10) {
  4950. this.$set(this.dataList[i], 'fBillstatus', dataSelection[li].fBillstatus)
  4951. this.$set(this.dataList[i], 'fSerialNumber', dataSelection[li].fSerialNumber)
  4952. break
  4953. }
  4954. }
  4955. }
  4956. this.$refs.checkout.clearSelection()
  4957. })
  4958. }
  4959. }
  4960. }
  4961. }
  4962. });
  4963. },
  4964. // 撤回入账
  4965. withdrawClick() {
  4966. // 撤回入库
  4967. let formData = new window.FormData();
  4968. formData.append("warehouseBills", JSON.stringify(this.form));
  4969. formData.append("warehousebillsitems", JSON.stringify(this.dataWithdrawList));
  4970. formData.append("warehousebillsfeesDr", JSON.stringify(this.warehouseDrList));
  4971. formData.append("warehousebillsfeesCr", JSON.stringify(this.warehouseCrList));
  4972. formData.append("tEnclosure", JSON.stringify(this.relevantAttachments));
  4973. updateCredit(formData).then((response) => {
  4974. this.fid = response.data;
  4975. this.formBrowseStatus = false;
  4976. this.msgSuccess("撤销入账成功");
  4977. this.contrOl = false
  4978. for (let li in this.dataWithdrawList) {
  4979. for (let i in this.dataList) {
  4980. if (this.dataWithdrawList[li].fId === this.dataList[i].fId) {
  4981. this.$set(this.dataList[i], "fBillstatus", 10);
  4982. break
  4983. }
  4984. }
  4985. }
  4986. this.$refs.checkout.clearSelection();
  4987. });
  4988. },
  4989. // 仓库发生变化时
  4990. changeWarehouse () {
  4991. for (let ware in this.warehouseOptions) {
  4992. if (this.form.fWarehouseid === this.warehouseOptions[ware].fId) {
  4993. this.$set(this.form, 'fTel', this.warehouseOptions[ware].fTel)
  4994. this.$set(this.form, 'fContacts', this.warehouseOptions[ware].fContacts)
  4995. }
  4996. }
  4997. },
  4998. // 卸货按钮
  4999. discharge() {
  5000. if (this.Printinglist.length > 0) {
  5001. for (let warehouseCr in this.Printinglist) {
  5002. if (this.Printinglist[warehouseCr].fBillstatus === 10) {
  5003. this.$message.error("请先打印作业单");
  5004. return false;
  5005. }
  5006. if (this.Printinglist[warehouseCr].fBillstatus >= 30) {
  5007. this.$message.error("请勿重复卸货");
  5008. return false;
  5009. }
  5010. // if (!this.Printinglist[warehouseCr].fQty || this.Printinglist[warehouseCr].fQty === 0) {
  5011. // this.$message.error("请维护入库件数");
  5012. // return false;
  5013. // }
  5014. // if (!this.Printinglist[warehouseCr].fNetweight || this.Printinglist[warehouseCr].fNetweight === 0) {
  5015. // this.$message.error("请维护入库净重");
  5016. // return false;
  5017. // }
  5018. // if (!this.Printinglist[warehouseCr].fGrossweight || this.Printinglist[warehouseCr].fGrossweight === 0) {
  5019. // this.$message.error("请维护入库毛重");
  5020. // return false;
  5021. // }
  5022. }
  5023. this.$refs["form"].validate((valid) => {
  5024. if (valid) {
  5025. let dataSelection = JSON.parse(JSON.stringify(this.dataListSelection))
  5026. let formData = new window.FormData();
  5027. formData.append("warehouseBills", JSON.stringify(this.form));
  5028. formData.append("tEnclosure", JSON.stringify(this.relevantAttachments));
  5029. formData.append("warehousebillsitems", JSON.stringify(this.dataListSelection));
  5030. formData.append("warehousebillsfeesDr", JSON.stringify(this.warehouseDrList));
  5031. formData.append("warehousebillsfeesCr", JSON.stringify(this.warehouseCrList));
  5032. if (!this.form.fId) {
  5033. this.form.fId = this.fid;
  5034. }
  5035. disChargelist(formData).then((response) => {
  5036. this.dataList = response.data.warehousebillsitems
  5037. for (let li in this.dataList) {
  5038. this.$set(this.dataList[li], "fBsdate", Date.parse(this.dataList[li].fBsdate));
  5039. this.$set(this.dataList[li], "fBusinessType", this.dataList[li].fBusinessType + '')
  5040. }
  5041. this.msgSuccess("卸货成功");
  5042. getWarehousebills(this.form.fId).then((response) => {
  5043. if (response.data.warehousebills) {
  5044. this.form = response.data.warehousebills;
  5045. this.before = this.form.createBy
  5046. if (this.form.fBillstatus > 2) {
  5047. this.approvalStatus = false;
  5048. } else {
  5049. this.fMblno = true;
  5050. }
  5051. this.$set(this.form, "fEta", Date.parse(this.form.fEta));
  5052. this.$set(this.form, "fStltypeid", this.form.fStltypeid + "");
  5053. this.$set(this.form, "fBsdate", Date.parse(this.form.fBsdate));
  5054. this.$set(this.form, "fTrademodeid", this.form.fTrademodeid + "");
  5055. this.$set(this.form, "createTime", Date.parse(this.form.createTime));
  5056. this.$set(this.form, "fChargedate", Date.parse(this.form.fChargedate));
  5057. this.$set(this.form, "fFeeUnitid", this.form.fFeeunitid + "");
  5058. this.$set(this.form, "fPlannetweight", this.form.fPlannetweight.toFixed(2));
  5059. this.$set(this.form, "fPlangrossweight", this.form.fPlangrossweight.toFixed(2));
  5060. }
  5061. if (response.data.warehouseBillsItem) {
  5062. this.dataList = response.data.warehouseBillsItem;
  5063. for (let list in this.dataList) {
  5064. this.$set(this.dataList[list], 'fBusinessType', this.dataList[list].fBusinessType + '')
  5065. if (this.dataList[list].fBillstatus > 10) {
  5066. this.formBrowseStatus = true;
  5067. this.$set(this.dataList[list], "fBusinessType", this.dataList[list].fBusinessType + '')
  5068. }else{
  5069. this.formBrowseStatus = false;
  5070. }
  5071. if(this.dataList[list].fBillstatus === 40){
  5072. this.contrOl = true
  5073. }else{
  5074. this.contrOl = false
  5075. }
  5076. }
  5077. }
  5078. if (response.data.corps) {
  5079. this.fMblnoOptions = response.data.corps;
  5080. this.KHblnoOptions = response.data.corps;
  5081. this.fCompanyOptIons = response.data.corps;
  5082. this.fleetOptions = response.data.corps;
  5083. }
  5084. if (response.data.feesList) {
  5085. this.fWbuOptions = response.data.feesList;
  5086. }
  5087. if (response.data.warehouse) {
  5088. this.warehouseOptions = response.data.warehouse;
  5089. }
  5090. if (response.data.warehouseBillsItem) {
  5091. this.dataList = response.data.warehouseBillsItem;
  5092. for(let list in this.dataList){
  5093. if (this.dataList[list].fBillstatus > 10) {
  5094. this.formBrowseStatus = true;
  5095. }
  5096. }
  5097. }
  5098. if (response.data.enclosures) {
  5099. this.relevantAttachments = response.data.enclosures;
  5100. }
  5101. for (let list in this.dataList) {
  5102. this.$set(this.dataList[list], "fBsdate", Date.parse(this.dataList[list].fBsdate));
  5103. }
  5104. this.kqhouseOptions = response.data.warehouseAreas;
  5105. this.warehouseDrList = response.data.warehousebillsfeesDr;
  5106. for (let dr in this.warehouseDrList) {
  5107. this.$set(this.warehouseDrList[dr], "fFeeUnitid", this.warehouseDrList[dr].fFeeunitid + '');
  5108. this.$set(this.warehouseDrList[dr], "fQty", this.warehouseDrList[dr].fQty.toFixed(2));
  5109. this.$set(this.warehouseDrList[dr], "fAmount", this.warehouseDrList[dr].fAmount.toFixed(2));
  5110. }
  5111. this.warehouseCrList = response.data.warehousebillsfeesCr;
  5112. for (let cr in this.warehouseCrList) {
  5113. this.$set(this.warehouseCrList[cr], "fFeeUnitid", this.warehouseCrList[cr].fFeeunitid + "");
  5114. }
  5115. this.userOptions = response.data.sysUser;
  5116. // this.warehouseDrList[0].fBusinessType = this.form.fBusinessType
  5117. this.open = true;
  5118. this.title = "修改仓入库";
  5119. this.warehousesssMethod()
  5120. });
  5121. this.$refs.checkout.clearSelection();
  5122. });
  5123. }
  5124. });
  5125. } else {
  5126. this.$message.error("请选择需要卸货的明细!");
  5127. }
  5128. },
  5129. /** 提交按钮 */
  5130. submitForm(status) {
  5131. this.updateDeduplication()
  5132. if (status === 2) {
  5133. this.preservation();
  5134. } else {
  5135. this.pleaseCheck();
  5136. }
  5137. },
  5138. // 更新主表唛头、品名并去重
  5139. updateDeduplication: function() {
  5140. if (this.dataList.length === 0) {
  5141. return false
  5142. }
  5143. let fMarks = []
  5144. let fGoodsid = []
  5145. for (let li in this.dataList) {
  5146. if (this.dataList[li].fMarks) {
  5147. fMarks.push(this.dataList[li].fMarks)
  5148. }
  5149. fGoodsid.push(this.dataList[li].fGoodsids)
  5150. }
  5151. this.$set(this.form, 'fMarks', Array.from(new Set(fMarks)).join(","))
  5152. this.$set(this.form, 'fProductName', Array.from(new Set(fGoodsid)).join(","))
  5153. },
  5154. //作业类型校验
  5155. educationChange() {
  5156. if (this.form.fBusinessType === '1' || this.form.fBusinessType === '2') {
  5157. this.isrequired = 1
  5158. this.isrequired_s = 2
  5159. }else if(this.form.fBusinessType === '3' || this.form.fBusinessType === '4'){
  5160. this.isrequired_s = 1
  5161. this.isrequired = 2
  5162. }else{
  5163. this.isrequired = 2
  5164. this.isrequired_s = 2
  5165. }
  5166. },
  5167. // 提交保存保存成功
  5168. preservation(status) {
  5169. this.$refs['form'].validate((valid) => {
  5170. if (valid) {
  5171. if(!this.dataList.length){
  5172. // this.form.fBillstatus = status
  5173. this.form.fNetweight = this.fNetweight
  5174. this.form.fPlanvolumn = this.fPlanvolumn
  5175. this.form.fGrossweight = this.fGrossweight
  5176. this.form.fQty = this.fQty
  5177. // if (!this.form.fId) {
  5178. // this.form.fId = this.fid
  5179. // }
  5180. // if (!this.form.fBusinessType) {
  5181. // this.$message.error('请选择货物属性!')
  5182. // return false
  5183. // }
  5184. for (let list in this.dataList) {
  5185. if (!this.dataList[list].fBusinessType) {
  5186. this.$message.error('请输入库存明细的货物属性!')
  5187. return false
  5188. }
  5189. }
  5190. let formDatae = new window.FormData()
  5191. // 附件数据
  5192. this.form.fBillingway = this.form.fFeetunit
  5193. // this.form.fBstime = JSON.stringify(this.form.fBstime)
  5194. formDatae.append('tWarehouseBills', JSON.stringify(this.form))
  5195. // 库存明细
  5196. formDatae.append('tWarehousebillsitems', JSON.stringify(this.dataList))
  5197. // 附件数据
  5198. formDatae.append('tEnclosure', JSON.stringify(this.relevantAttachments))
  5199. // 费用明细付款
  5200. formDatae.append('tWarehousebillsfeesCr', JSON.stringify(this.warehouseCrList))
  5201. // 收款
  5202. formDatae.append('tWarehousebillsfeesDr', JSON.stringify(this.warehouseDrList))
  5203. addWarehousebills(formDatae).then((response) => {
  5204. this.msgSuccess('保存成功')
  5205. this.form = response.data.warehouseBills
  5206. this.$set(this.form, 'fEta', Date.parse(this.form.fEta))
  5207. this.$set(this.form, 'fStltypeid', this.form.fStltypeid + '')
  5208. this.$set(this.form, 'fBsdate', Date.parse(this.form.fBsdate))
  5209. this.$set(this.form, 'fTrademodeid', this.form.fTrademodeid + '')
  5210. this.$set(this.form, 'createTime', Date.parse(this.form.createTime))
  5211. this.$set(this.form, "fChargedate", Date.parse(this.form.fChargedate));
  5212. this.dataList = response.data.warehousebillsitems
  5213. for (let list in this.dataList) {
  5214. this.$set(this.dataList[list], 'fBsdate', Date.parse(this.dataList[list].fBsdate))
  5215. this.$set(this.dataList[list], 'fBusinessType', this.dataList[list].fBusinessType + '')
  5216. }
  5217. this.fid = response.data.warehouseBills.fId
  5218. this.getList()
  5219. })
  5220. }else{
  5221. for(let item in this.dataList){
  5222. if(!this.dataList[item].fGoodsids){
  5223. this.$message.error("请维护第"+ (Number(item)+1) +"行品名!")
  5224. return false
  5225. }
  5226. if(!this.dataList[item].fMarks){
  5227. this.$message.error("请维护第"+ (Number(item)+1) +"行货物属性!")
  5228. return false
  5229. }
  5230. }
  5231. this.form.fNetweight = this.fNetweight
  5232. this.form.fPlanvolumn = this.fPlanvolumn
  5233. this.form.fGrossweight = this.fGrossweight
  5234. this.form.fQty = this.fQty
  5235. for (let list in this.dataList) {
  5236. if (!this.dataList[list].fBusinessType) {
  5237. this.$message.error('请输入库存明细的货物属性!')
  5238. return false
  5239. }
  5240. }
  5241. let formDatae = new window.FormData()
  5242. // 附件数据
  5243. formDatae.append('tWarehouseBills', JSON.stringify(this.form))
  5244. // 库存明细
  5245. formDatae.append('tWarehousebillsitems', JSON.stringify(this.dataList))
  5246. // 附件数据
  5247. formDatae.append('tEnclosure', JSON.stringify(this.relevantAttachments))
  5248. // 费用明细付款
  5249. formDatae.append('tWarehousebillsfeesCr', JSON.stringify(this.warehouseCrList))
  5250. // 收款
  5251. formDatae.append('tWarehousebillsfeesDr', JSON.stringify(this.warehouseDrList))
  5252. addWarehousebills(formDatae).then((response) => {
  5253. this.msgSuccess('保存成功')
  5254. this.form = response.data.warehouseBills
  5255. this.$set(this.form, 'fEta', Date.parse(this.form.fEta))
  5256. this.$set(this.form, 'fStltypeid', this.form.fStltypeid + '')
  5257. this.$set(this.form, 'fBsdate', Date.parse(this.form.fBsdate))
  5258. this.$set(this.form, 'fTrademodeid', this.form.fTrademodeid + '')
  5259. this.$set(this.form, 'createTime', Date.parse(this.form.createTime))
  5260. this.dataList = response.data.warehousebillsitems
  5261. for (let list in this.dataList) {
  5262. this.$set(this.dataList[list], 'fBsdate', Date.parse(this.dataList[list].fBsdate))
  5263. this.$set(this.dataList[list], 'fBusinessType', this.dataList[list].fBusinessType + '')
  5264. }
  5265. this.fid = response.data.warehouseBills.fId
  5266. this.getList()
  5267. })
  5268. }
  5269. }
  5270. })
  5271. },
  5272. // 请核成功
  5273. pleaseCheck() {
  5274. this.updateDeduplication()
  5275. this.$refs['form'].validate((valid) => {
  5276. if (this.dataList.length === 0) {
  5277. this.$message.error('请新增库存明细!')
  5278. return false
  5279. }
  5280. if (!this.form.fBusinessType) {
  5281. this.$message.error('请选择货物属性!')
  5282. return false
  5283. }
  5284. for (let list in this.dataList) {
  5285. if (!this.dataList[list].fGoodsid) {
  5286. this.$message.error('请输入品名!')
  5287. return false
  5288. }
  5289. if (!this.dataList[list].fWarehouselocid) {
  5290. this.$message.error('请输入库区!')
  5291. return false
  5292. }
  5293. if (this.dataList[list].fBillstatus !== 40) {
  5294. this.$message.error('请入账库存明细!')
  5295. return false
  5296. }
  5297. }
  5298. for(let item in this.warehouseDrList) {
  5299. if (!this.warehouseDrList[item].fCorpid) {
  5300. if (item === 'fBusinessType') {
  5301. console.log(item)
  5302. } else {
  5303. console.log(this.warehouseDrList[item].fCorpid)
  5304. this.$message.error("请维护收款信息第" + (Number(item) + 1) + "行客户名称")
  5305. return false
  5306. }
  5307. }
  5308. if (!this.warehouseDrList[item].fFeeid) {
  5309. if (item === 'fBusinessType') {
  5310. } else {
  5311. this.$message.error("请维护收款信息第" + (Number(item) + 1) + "行费用名称")
  5312. return false
  5313. }
  5314. }
  5315. if (!this.warehouseDrList[item].fFeeUnitid) {
  5316. if (item === 'fBusinessType') {
  5317. } else {
  5318. this.$message.error("请维护收款信息第" + (Number(item) + 1) + "行计价单位")
  5319. return false
  5320. }
  5321. }
  5322. }
  5323. for(let item in this.warehouseCrList) {
  5324. if (!this.warehouseCrList[item].fCorpid) {
  5325. if (item === 'fBusinessType') {
  5326. } else {
  5327. this.$message.error("请维护付款信息第" + (Number(item) + 1) + "行客户名称")
  5328. return false
  5329. }
  5330. }
  5331. if (!this.warehouseCrList[item].fFeeid) {
  5332. if (item === 'fBusinessType') {
  5333. } else {
  5334. this.$message.error("请维护付款信息第" + (Number(item) + 1) + "行费用名称")
  5335. return false
  5336. }
  5337. }
  5338. if (!this.warehouseCrList[item].fFeeUnitid) {
  5339. if (item === 'fBusinessType') {
  5340. } else {
  5341. this.$message.error("请维护付款信息第" + (Number(item) + 1) + "行计价单位")
  5342. return false
  5343. }
  5344. }
  5345. }
  5346. if (valid) {
  5347. this.form.fBillstatus = status
  5348. this.form.fNetweight = this.fNetweight
  5349. this.form.fPlanvolumn = this.fPlanvolumn
  5350. this.form.fGrossweight = this.fGrossweight
  5351. this.form.fQty = this.fQty
  5352. if (!this.form.fId) {
  5353. this.form.fId = this.fid
  5354. }
  5355. let formData = new window.FormData()
  5356. // 附件数据
  5357. this.form.fBillingway = this.form.fFeetunit
  5358. formData.append('tWarehouseBills', JSON.stringify(this.form))
  5359. // 库存明细
  5360. formData.append('tWarehousebillsitems', JSON.stringify(this.dataList))
  5361. // 附件数据
  5362. formData.append('tEnclosure', JSON.stringify(this.relevantAttachments))
  5363. // 费用明细付款
  5364. formData.append('tWarehousebillsfeesCr', JSON.stringify(this.warehouseCrList))
  5365. // 收款
  5366. formData.append('tWarehousebillsfeesDr', JSON.stringify(this.warehouseDrList))
  5367. addWarehouse(formData).then((response) => {
  5368. this.msgSuccess('提交成功')
  5369. this.open = false
  5370. this.getList()
  5371. this.reset()
  5372. })
  5373. }
  5374. })
  5375. },
  5376. /** 删除按钮操作 */
  5377. handleDelete(row) {
  5378. const fIds = row.fId || this.ids
  5379. this.$confirm(
  5380. '是否确认删除仓库主(出入库)编号为"' + fIds + '"的数据项?',
  5381. '警告',
  5382. {
  5383. confirmButtonText: '确定',
  5384. cancelButtonText: '取消',
  5385. type: 'warning'
  5386. }
  5387. )
  5388. .then(function() {
  5389. return delWarehousebills(fIds)
  5390. })
  5391. .then(() => {
  5392. this.getList()
  5393. this.msgSuccess('删除成功')
  5394. })
  5395. },
  5396. /** 导出按钮操作 */
  5397. handleExport() {
  5398. const queryParams = this.queryParams
  5399. this.$confirm('是否确认导出所有仓库主(出入库)数据项?', '警告', {
  5400. confirmButtonText: '确定',
  5401. cancelButtonText: '取消',
  5402. type: 'warning'
  5403. }).then(function() {
  5404. return exportWarehousebills(queryParams)
  5405. }).then((response) => {
  5406. this.download(response.msg)
  5407. })
  5408. },
  5409. wDeleteRow(index, rows) {
  5410. rows.splice(index, 1)
  5411. let sum = 0
  5412. for (let li in this.dataList) {
  5413. if (this.dataList[li].fQty) {
  5414. sum = Number(sum) + Number(this.dataList[li].fQty)
  5415. }
  5416. if (this.dataList[li].fBillstatus > 10) {
  5417. this.formBrowseStatus = true
  5418. }
  5419. }
  5420. this.mum = sum
  5421. if (this.dataList.length === 0) {
  5422. this.formBrowseStatus = false
  5423. this.contrOl = false
  5424. return false
  5425. }
  5426. },
  5427. // 查看审批流
  5428. getDataList() {
  5429. this.addOrUpdateVisible = false
  5430. },
  5431. returnData() {
  5432. this.addOrUpdateVisib = false
  5433. this.open = false
  5434. this.cancelTwo()
  5435. },
  5436. addOrUpdateHandle(form) {
  5437. this.addOrUpdateVisible = true
  5438. let id = '448'
  5439. let actId = '110'
  5440. this.$nextTick(() => {
  5441. this.$refs.addOrUpdate.init(form.fId, actId)
  5442. })
  5443. },
  5444. addOrUpdateHand(form) {
  5445. this.addOrUpdateVisib = true;
  5446. this.$nextTick(() => {
  5447. this.$refs.ApprovalComments.init(form.fId, 110);
  5448. });
  5449. },
  5450. /* 远程模糊查询用户 */
  5451. corpsRemoteMethod(name) {
  5452. if (name == null || name === "") {
  5453. return false;
  5454. }
  5455. let queryParams = { pageNum: 1, pageSize: 10, fName: name, type: 1 };
  5456. listCorps(queryParams).then((response) => {
  5457. this.fMblnoOptions = response.rows;
  5458. this.KHblnoOptions = response.rows;
  5459. });
  5460. },
  5461. /* 远程模糊查询质押银行 */
  5462. corpsRemoteMethodd(name) {
  5463. if (name == null || name === "") {
  5464. return false;
  5465. }
  5466. let queryParams = { pageNum: 1, pageSize: 10, fName: name, type: 5 };
  5467. listCorps(queryParams).then((response) => {
  5468. this.Pledgebank = response.rows;
  5469. });
  5470. },
  5471. /* 弹窗获取所有商品信息 */
  5472. goodsRemoteMethod() {
  5473. let queryParams = { pageNum: 1, pageSize: 10, fStatus: 0, delFlag: 0 };
  5474. listGoods(queryParams).then((response) => {
  5475. this.goodsOptions = response.rows;
  5476. });
  5477. },
  5478. /* 获取所有仓库信息 */
  5479. warehousesssMethod() {
  5480. let queryParams = { pageNum: 1, pageSize: 10, fStatus: 0, delFlag: 0 };
  5481. listWarehousesss(queryParams).then((response) => {
  5482. this.warehouseOptions = response.rows;
  5483. });
  5484. },
  5485. // 选择费用信息时获取计价单位
  5486. changeFeeId (row) {
  5487. for (let li in this.fWbuOptions) {
  5488. if (row.fFeeid === this.fWbuOptions[li].fId) {
  5489. this.$set(row, 'fFeeUnitid', this.fWbuOptions[li].fFeeunitid + '')
  5490. this.changeFeeUnit(row)
  5491. break
  5492. }
  5493. }
  5494. },
  5495. // 远程模糊查询费用名称
  5496. fWRemoteMethod(name) {
  5497. if (name == null || name === "") {
  5498. return false;
  5499. }
  5500. let queryParams = { pageNum: 1, pageSize: 10, fName: name };
  5501. listFees(queryParams).then((response) => {
  5502. this.fWbuOptions = response.rows;
  5503. });
  5504. },
  5505. /* 远程模糊查询劳务公司 */
  5506. flabourRemoteMethod(name) {
  5507. if (name == null || name === "") {
  5508. return false;
  5509. }
  5510. let queryParams = { pageNum: 1, pageSize: 10, fName: name, fTypeid: 6};
  5511. listCorps(queryParams).then((response) => {
  5512. this.fCompanyOptIons = response.rows;
  5513. });
  5514. },
  5515. /* 远程模糊查询车队 */
  5516. fleetRemoteMethod(name) {
  5517. if (name == null || name === "") {
  5518. return false;
  5519. }
  5520. let queryParams = { pageNum: 1, pageSize: 10, fName: name, fTypeid: 2};
  5521. listCorps(queryParams).then((response) => {
  5522. this.fleetOptions = response.rows;
  5523. });
  5524. },
  5525. /* 远程模糊查询经营单位 */
  5526. fSbuRemoteMethod(name) {
  5527. if (name == null || name === "") {
  5528. return false;
  5529. }
  5530. let queryParams = { pageNum: 1, pageSize: 10, fName: name };
  5531. listCorps(queryParams).then((response) => {
  5532. this.fSbuOptions = response.rows;
  5533. });
  5534. },
  5535. /* 远程模糊查询仓库 */
  5536. warehouseRemoteMethod(name) {
  5537. if (name == null || name === "") {
  5538. return false;
  5539. }
  5540. let queryParams = { pageNum: 1, pageSize: 10, fName: name };
  5541. listWarehouse(queryParams).then((response) => {
  5542. this.warehouseOptions = response.rows;
  5543. });
  5544. },
  5545. /* 远程模糊查询库区 */
  5546. kqhouseRemoteMethod(name) {
  5547. if (name == null || name === "") {
  5548. return false;
  5549. }
  5550. if (!this.form.fWarehouseid) {
  5551. this.$message.error("请输入仓库!");
  5552. return false;
  5553. }
  5554. let queryParams = {
  5555. pageNum: 1,
  5556. pageSize: 10,
  5557. fWarehouseid: this.form.fWarehouseid,
  5558. fName: name,
  5559. };
  5560. listArea(queryParams).then((response) => {
  5561. this.kqhouseOptions = response.rows;
  5562. });
  5563. },
  5564. /* 远程模糊查询操作用户 */
  5565. userRemoteMethod(name) {
  5566. if (name == null || name === "") {
  5567. return false;
  5568. }
  5569. let queryParams = { pageNum: 1, pageSize: 10, userName: name };
  5570. listUser(queryParams).then((response) => {
  5571. this.userOptions = response.rows;
  5572. });
  5573. },
  5574. },
  5575. };
  5576. </script>
  5577. <style lang="scss">
  5578. .juzhong > th {
  5579. text-align: center;
  5580. }
  5581. .biaoge > tr > td {
  5582. height: 50px;
  5583. text-align: center;
  5584. border-right: 1px solid #dfe6ec !important;
  5585. order-bottom: 1px solid #dfe6ec !important;
  5586. border-bottom: 1px solid #dfe6ec !important;
  5587. }
  5588. .el-table thead th {
  5589. background: #1890ff;
  5590. color: #fff;
  5591. }
  5592. .upload-demo {
  5593. margin-left: 50px;
  5594. }
  5595. .el-form-item {
  5596. margin-bottom: 5px !important;
  5597. }
  5598. .el-form-item__label {
  5599. font-size: 12px !important;
  5600. }
  5601. .el-collapse-item__header{
  5602. font-size: 16px;
  5603. font-weight: bolder;
  5604. padding-left: 5px;
  5605. }
  5606. .el-icon-s-home,.el-icon-s-order,.el-icon-circle-plus,.el-icon-remove{
  5607. padding-right: 5px;
  5608. }
  5609. .el-table {
  5610. .el-table__body-wrapper {
  5611. z-index: 2;
  5612. }
  5613. }
  5614. </style>