index.vue 103 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251
  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-form-item label="业务编号" prop="fBillno">
  11. <el-input
  12. v-model="queryParams.fBillno"
  13. placeholder="请输入业务编号"
  14. style="width: 80%"
  15. clearable
  16. size="small"
  17. @keyup.enter.native="handleQuery"
  18. />
  19. </el-form-item>
  20. <el-form-item label="制单人" prop="createBy">
  21. <el-select
  22. v-model="queryParams.createBy"
  23. filterable
  24. remote
  25. clearable
  26. style="width: 80%"
  27. :remote-method="userRemoteMethod"
  28. placeholder="请选择制单人"
  29. >
  30. <el-option
  31. v-for="(dict, index) in userOptions"
  32. :key="index.userName"
  33. :label="dict.nickName"
  34. :value="dict.userName"
  35. ></el-option>
  36. </el-select>
  37. </el-form-item>
  38. <el-form-item label="入库日期" prop="timeInterval">
  39. <el-date-picker
  40. v-model="queryParams.timeInterval"
  41. type="daterange"
  42. value-format="yyyy-MM-dd"
  43. clearable
  44. style="width: 60%"
  45. range-separator="至"
  46. start-placeholder="开始日期"
  47. end-placeholder="结束日期"
  48. @keyup.enter.native="handleQuery"
  49. >
  50. </el-date-picker>
  51. </el-form-item>
  52. <el-form-item label="贸易方式" prop="fTrademodeid">
  53. <el-select
  54. v-model="queryParams.fTrademodeid"
  55. placeholder="请选择贸易方式"
  56. clearable
  57. style="width: 80%"
  58. @keyup.enter.native="handleQuery"
  59. >
  60. <el-option
  61. v-for="(dict, index) in fTrademodeidOptions"
  62. :key="index.dictValue"
  63. :label="dict.dictLabel"
  64. :value="dict.dictValue"
  65. />
  66. </el-select>
  67. </el-form-item>
  68. <el-form-item label="货权方" prop="fCorpid">
  69. <el-select
  70. v-model="queryParams.fCorpid"
  71. filterable
  72. remote
  73. clearable
  74. style="width: 80%"
  75. @keyup.enter.native="handleQuery"
  76. :remote-method="corpsRemoteMethod"
  77. placeholder="请输入模糊查找"
  78. >
  79. <el-option
  80. v-for="(dict, index) in fMblnoOptions"
  81. :key="index.fId"
  82. :label="dict.fName"
  83. :value="dict.fId"
  84. ></el-option>
  85. </el-select>
  86. </el-form-item>
  87. <el-form-item label="提单号" prop="fMblno">
  88. <el-input
  89. v-model="queryParams.fMblno"
  90. placeholder="请输入提单号"
  91. clearable
  92. style="width: 80%"
  93. size="small"
  94. @keyup.enter.native="handleQuery"
  95. />
  96. </el-form-item>
  97. <el-form-item label="经营单位" prop="fSbu">
  98. <el-select
  99. v-model="queryParams.fSbu"
  100. filterable
  101. remote
  102. clearable
  103. :remote-method="fSbuRemoteMethod"
  104. @keyup.enter.native="handleQuery"
  105. style="width: 80%"
  106. placeholder="请选择经营单位"
  107. >
  108. <el-option
  109. v-for="(dict, index) in fMblnoOptions"
  110. :key="index.fId"
  111. :label="dict.fName"
  112. :value="dict.fId"
  113. ></el-option>
  114. </el-select>
  115. </el-form-item>
  116. <el-form-item label="货物名称" prop="fGoodsid">
  117. <el-select
  118. v-model="queryParams.fGoodsid"
  119. filterable
  120. remote
  121. clearable
  122. style="width: 80%"
  123. :remote-method="goodsRemoteMethod"
  124. @keyup.enter.native="handleQuery"
  125. placeholder="请选择货物名称"
  126. >
  127. <el-option
  128. v-for="(dict, index) in goodsOptions"
  129. :key="index.fId"
  130. :label="dict.fName"
  131. :value="dict.fId"
  132. ></el-option>
  133. </el-select>
  134. </el-form-item>
  135. <el-form-item label="仓库" prop="fWarehouseid">
  136. <el-select
  137. v-model="queryParams.fWarehouseid"
  138. filterable
  139. :disabled="browseStatus"
  140. remote
  141. clearable
  142. style="width: 80%"
  143. :remote-method="warehouseRemoteMethod"
  144. @keyup.enter.native="handleQuery"
  145. placeholder="请输入"
  146. >
  147. <el-option
  148. v-for="(dict, index) in warehouseOptions"
  149. :key="index.fId"
  150. :label="dict.fName"
  151. :value="dict.fId"
  152. ></el-option>
  153. </el-select>
  154. </el-form-item>
  155. <el-form-item label="唛头" prop="fMarks">
  156. <el-input
  157. v-model="queryParams.fMarks"
  158. placeholder="请输入唛头"
  159. clearable
  160. style="width: 80%"
  161. size="small"
  162. @keyup.enter.native="handleQuery"
  163. />
  164. </el-form-item>
  165. <el-form-item>
  166. <el-button
  167. type="cyan"
  168. icon="el-icon-search"
  169. size="mini"
  170. @click="handleQuery"
  171. >搜索
  172. </el-button>
  173. <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
  174. >重置
  175. </el-button>
  176. </el-form-item>
  177. </el-form>
  178. <el-row :gutter="10" class="mb8">
  179. <el-col :span="1.5">
  180. <el-button
  181. type="primary"
  182. icon="el-icon-plus"
  183. size="mini"
  184. @click="handleAdd(false)"
  185. v-hasPermi="['warehouseBusiness:warehousebills:add']"
  186. >新增
  187. </el-button>
  188. </el-col>
  189. <el-col :span="1.5">
  190. <el-button
  191. type="success"
  192. icon="el-icon-edit"
  193. size="mini"
  194. :disabled="single"
  195. @click="handleUpdate"
  196. v-hasPermi="['warehouseBusiness:warehousebills:edit']"
  197. >修改
  198. </el-button>
  199. </el-col>
  200. <el-col :span="1.5">
  201. <el-button
  202. type="danger"
  203. icon="el-icon-delete"
  204. size="mini"
  205. :disabled="multiple"
  206. @click="handleDelete"
  207. v-hasPermi="['warehouseBusiness:warehousebills:remove']"
  208. >删除
  209. </el-button>
  210. </el-col>
  211. <el-col :span="1.5">
  212. <el-button
  213. type="warning"
  214. icon="el-icon-download"
  215. size="mini"
  216. @click="handleExport"
  217. v-hasPermi="['warehouseBusiness:warehousebills:export']"
  218. >导出
  219. </el-button>
  220. </el-col>
  221. <el-col :span="1.5">
  222. <el-button
  223. type="warning"
  224. icon="el-icon-download"
  225. size="mini"
  226. @click="handleExport"
  227. :disabled="multiple"
  228. v-hasPermi="['warehouseBusiness:warehousebills:export']"
  229. >导入
  230. </el-button>
  231. </el-col>
  232. <right-toolbar
  233. :showSearch.sync="showSearch"
  234. @queryTable="getList"
  235. ></right-toolbar>
  236. </el-row>
  237. <el-table
  238. v-loading="loading"
  239. :data="warehousebillsList"
  240. @selection-change="handleSelectionChange"
  241. >
  242. <el-table-column type="selection" width="55" align="center" />
  243. <el-table-column type="index" label="行号" align="center" />
  244. <el-table-column :show-overflow-tooltip="true" label="货权方" align="center" prop="fCorpid" />
  245. <el-table-column label="提单号" align="center" prop="fMblno" />
  246. <el-table-column label="唛头" align="center" prop="fMarks" />
  247. <el-table-column
  248. label="入库日期"
  249. align="center"
  250. prop="fBsdate"
  251. width="180"
  252. ><template slot-scope="scope">
  253. <span>{{ parseTime(scope.row.fBsdate, "{y}-{m}-{d}") }}</span>
  254. </template>
  255. </el-table-column>
  256. <!-- <el-table-column
  257. label="贸易方式"
  258. align="center"
  259. prop="fTrademodeid"
  260. :formatter="fTrademodeidFormat"
  261. /> -->
  262. <el-table-column label="仓库" align="center" prop="fWarehouseid" />
  263. <el-table-column label="入库件数" align="center" prop="fQty" />
  264. <!-- <el-table-column label="入库毛重" align="center" prop="fGrossweight"/>-->
  265. <!-- <el-table-column label="货转客户名称" align="center" prop="fTocorpid" /> -->
  266. <el-table-column label="入库毛重" align="center" prop="fGrossweight" />
  267. <el-table-column label="净重" align="center" prop="fNetweight" />
  268. <el-table-column
  269. width="100"
  270. label="入库状态"
  271. align="center"
  272. prop="fItemsStatus">
  273. <template slot-scope="scope">
  274. <span v-if="scope.row.fItemsStatus === '1'">未入账</span>
  275. <span v-if="scope.row.fItemsStatus === '2'">部分入账</span>
  276. <span v-if="scope.row.fItemsStatus === '6'">全部入账</span>
  277. </template>
  278. </el-table-column>
  279. <el-table-column
  280. width="100"
  281. label="费用状态"
  282. align="center"
  283. prop="fBillstatus">
  284. <template slot-scope="scope">
  285. <span v-if="scope.row.fBillstatus === '1'">录入</span>
  286. <span v-if="scope.row.fBillstatus === '2'">录入</span>
  287. <span v-if="scope.row.fBillstatus === '3'">驳回</span>
  288. <span v-if="scope.row.fBillstatus === '4'">请核</span>
  289. <span v-if="scope.row.fBillstatus === '5'">审核中</span>
  290. <span v-if="scope.row.fBillstatus === '6'">全部入账</span>
  291. </template>
  292. </el-table-column>
  293. <el-table-column
  294. label="操作"
  295. align="center"
  296. class-name="small-padding fixed-width"
  297. width="180"
  298. >
  299. <template slot-scope="scope">
  300. <el-button
  301. size="mini"
  302. type="text"
  303. icon="el-icon-edit"
  304. @click="handleUpdate(scope.row, true)"
  305. v-hasPermi="['warehouseBusiness:warehousebills:edit']"
  306. >查看
  307. </el-button>
  308. <el-button
  309. size="mini"
  310. type="text"
  311. icon="el-icon-edit"
  312. v-if="scope.row.fBillstatus === '1' || scope.row.fBillstatus === '2' || scope.row.fBillstatus === '3'"
  313. @click="handleUpdate(scope.row, false)"
  314. v-hasPermi="['warehouseBusiness:warehousebills:edit']"
  315. >修改
  316. </el-button>
  317. <el-button
  318. size="mini"
  319. type="text"
  320. icon="el-icon-delete"
  321. v-if="scope.row.fBillstatus !== '6' && scope.row.fItemsStatus === '1'"
  322. @click="handleDelete(scope.row)"
  323. v-hasPermi="['warehouseBusiness:warehousebills:remove']"
  324. >删除
  325. </el-button>
  326. </template>
  327. </el-table-column>
  328. </el-table>
  329. <pagination
  330. v-show="total > 0"
  331. :total="total"
  332. :page.sync="queryParams.pageNum"
  333. :limit.sync="queryParams.pageSize"
  334. @pagination="getList"
  335. />
  336. <!-- 新增或修改仓库主(出入库)对话框 -->
  337. <el-dialog
  338. :visible.sync="open"
  339. :close-on-click-modal="false"
  340. width="80%"
  341. append-to-body
  342. >
  343. <el-form ref="form" :model="form" :rules="rules" label-width="120px">
  344. <el-row>
  345. <el-col :span="8">
  346. <el-form-item label="货权方" prop="fCorpid">
  347. <el-select
  348. v-model="form.fCorpid"
  349. filterable
  350. remote
  351. @change="changefCorpid(form)"
  352. :disabled="browseStatus || formBrowseStatus"
  353. style="width: 80%"
  354. :remote-method="corpsRemoteMethod"
  355. placeholder="请输入模糊查找"
  356. >
  357. <el-option
  358. v-for="(dict, index) in fMblnoOptions"
  359. :key="index.fId"
  360. :label="dict.fName"
  361. :value="dict.fId"
  362. ></el-option>
  363. </el-select>
  364. </el-form-item>
  365. </el-col>
  366. <el-col :span="8">
  367. <el-form-item label="结算方式" prop="fStltypeid">
  368. <el-select
  369. v-model="form.fStltypeid"
  370. placeholder="请选择结算方式"
  371. clearable
  372. :disabled="browseStatus || formBrowseStatus"
  373. style="width: 80%"
  374. >
  375. <el-option
  376. v-for="(dict, index) in fStltypeOptions"
  377. :key="index.dictValue"
  378. :label="dict.dictLabel"
  379. :value="dict.dictValue"
  380. />
  381. </el-select>
  382. </el-form-item>
  383. </el-col>
  384. <el-col :span="8">
  385. <el-form-item label="提单号" prop="fMblno">
  386. <el-input
  387. v-model="form.fMblno"
  388. :disabled="browseStatus || formBrowseStatus"
  389. style="width: 80%"
  390. placeholder="手工输入"
  391. />
  392. </el-form-item>
  393. </el-col>
  394. </el-row>
  395. <el-row>
  396. <el-col :span="8">
  397. <el-form-item label="业务日期" prop="fBsdate">
  398. <el-date-picker
  399. v-model="form.fBsdate"
  400. style="width: 80%"
  401. type="date"
  402. :disabled="browseStatus || formBrowseStatus"
  403. @change="changefBsdate"
  404. value-format="timestamp"
  405. placeholder="业务日期"
  406. >
  407. </el-date-picker>
  408. </el-form-item>
  409. </el-col>
  410. <el-col :span="8">
  411. <el-form-item label="仓管员" prop="fStorekeeper">
  412. <el-select
  413. v-model="form.fStorekeeper"
  414. filterable
  415. remote
  416. :disabled="browseStatus || formBrowseStatus"
  417. style="width: 80%"
  418. :remote-method="userRemoteMethod"
  419. placeholder="请输入模糊查找"
  420. >
  421. <el-option
  422. v-for="(dict, index) in userOptions"
  423. :key="index.userName"
  424. :label="dict.nickName"
  425. :value="dict.userName"
  426. ></el-option>
  427. </el-select>
  428. </el-form-item>
  429. </el-col>
  430. <el-col :span="8">
  431. <el-form-item label="仓库" prop="fWarehouseid">
  432. <el-select
  433. v-model="form.fWarehouseid"
  434. filterable
  435. :disabled="browseStatus || formBrowseStatus"
  436. remote
  437. style="width: 80%"
  438. :remote-method="warehouseRemoteMethod"
  439. placeholder="请输入模糊查找"
  440. >
  441. <el-option
  442. v-for="(dict, index) in warehouseOptions"
  443. :key="index.fId"
  444. :label="dict.fName"
  445. :value="dict.fId"
  446. ></el-option>
  447. </el-select>
  448. </el-form-item>
  449. </el-col>
  450. </el-row>
  451. <el-row>
  452. <el-col :span="8">
  453. <el-form-item label="存货编号" prop="fBscorpno">
  454. <el-input
  455. disabled
  456. v-model="form.fBscorpno"
  457. style="width: 80%"
  458. laceholder="存货编号"
  459. />
  460. </el-form-item>
  461. </el-col>
  462. <el-col :span="8">
  463. <el-form-item label="破损" prop="fIfdamage">
  464. <el-select
  465. v-model="form.fIfdamage"
  466. placeholder="请选择是否破损"
  467. clearable
  468. :disabled="browseStatus || formBrowseStatus"
  469. style="width: 80%"
  470. >
  471. <el-option
  472. v-for="(dict, index) in fIfdamageOptions"
  473. :key="index.dictValue"
  474. :label="dict.dictLabel"
  475. :value="dict.dictValue"
  476. />
  477. </el-select>
  478. </el-form-item>
  479. </el-col>
  480. <el-col :span="8">
  481. <el-form-item label="过磅" prop="fIfweigh">
  482. <el-select
  483. v-model="form.fIfweigh"
  484. placeholder="请选择是否过磅"
  485. clearable
  486. :disabled="browseStatus || formBrowseStatus"
  487. style="width: 80%"
  488. >
  489. <el-option
  490. v-for="(dict, index) in fIfweighOptions"
  491. :key="index.dictValue"
  492. :label="dict.dictLabel"
  493. :value="dict.dictValue"
  494. />
  495. </el-select>
  496. </el-form-item>
  497. </el-col>
  498. </el-row>
  499. <el-row>
  500. <el-col :span="8">
  501. <el-form-item label="质押" prop="fIfpledge">
  502. <el-select
  503. v-model="form.fIfpledge"
  504. placeholder="请选择是否过磅"
  505. clearable
  506. :disabled="browseStatus || formBrowseStatus"
  507. style="width: 80%"
  508. >
  509. <el-option
  510. v-for="(dict, index) in fIfpledgeOptions"
  511. :key="index.dictValue"
  512. :label="dict.dictLabel"
  513. :value="dict.dictValue"
  514. />
  515. </el-select>
  516. </el-form-item>
  517. </el-col>
  518. <el-col :span="8">
  519. <el-form-item label="质押银行" prop="fBankcorpid">
  520. <el-select
  521. v-model="queryParams.fBankcorpid"
  522. filterable
  523. remote
  524. clearable
  525. style="width: 80%"
  526. :disabled="browseStatus || formBrowseStatus"
  527. @keyup.enter.native="handleQuery"
  528. :remote-method="corpsRemoteMethodd"
  529. placeholder="请输入模糊查找"
  530. >
  531. <el-option
  532. v-for="(dict, index) in Pledgebank"
  533. :key="index.fId"
  534. :label="dict.fName"
  535. :value="dict.fId"
  536. ></el-option>
  537. </el-select>
  538. </el-form-item>
  539. </el-col>
  540. <el-col :span="8">
  541. <el-form-item label="计费单位" prop="fFeetunit">
  542. <el-select
  543. v-model="form.fFeetunit"
  544. placeholder="请选择计费单位"
  545. clearable
  546. :disabled="browseStatus || formBrowseStatus"
  547. style="width: 80%"
  548. >
  549. <el-option
  550. v-for="(dict, index) in fFeetunitOptions"
  551. :key="index.dictValue"
  552. :label="dict.dictLabel"
  553. :value="dict.dictValue"
  554. />
  555. </el-select>
  556. </el-form-item>
  557. </el-col>
  558. <el-col :span="8">
  559. <el-form-item label="唛头" prop="fMarks">
  560. <el-input
  561. v-model="form.fMarks"
  562. style="width: 80%"
  563. :disabled="browseStatus || formBrowseStatus"
  564. placeholder="唛头"
  565. />
  566. </el-form-item>
  567. </el-col>
  568. <el-col :span="15">
  569. <el-form-item label="备注" prop="fMarks">
  570. <el-input
  571. style="width: 100%"
  572. v-model="form.remark"
  573. type="textarea"
  574. :disabled="browseStatus || formBrowseStatus"
  575. placeholder="请输入内容"
  576. />
  577. </el-form-item>
  578. </el-col>
  579. </el-row>
  580. <div v-if="detailsHidden">
  581. <el-row style="margin-top: 30px">
  582. <el-col :span="8">
  583. <el-form-item label="仓库联系人" prop="fContacts">
  584. <el-input
  585. v-model="form.fContacts"
  586. style="width: 80%"
  587. :disabled="browseStatus || formBrowseStatus"
  588. placeholder="仓库联系人"
  589. />
  590. </el-form-item>
  591. </el-col>
  592. <el-col :span="8">
  593. <el-form-item label="仓库电话" prop="fTel">
  594. <el-input
  595. v-model="form.fTel"
  596. :disabled="browseStatus || formBrowseStatus"
  597. style="width: 80%"
  598. placeholder="请输仓库入电话"
  599. />
  600. </el-form-item>
  601. </el-col>
  602. <el-col :span="8">
  603. <el-form-item label="船名航次" prop="fVslvoy">
  604. <el-input
  605. v-model="form.fVslvoy"
  606. style="width: 80%"
  607. :disabled="browseStatus || formBrowseStatus"
  608. placeholder="船名航次"
  609. />
  610. </el-form-item>
  611. </el-col>
  612. </el-row>
  613. <el-row>
  614. <el-col :span="8">
  615. <el-form-item label="到港日期" prop="fEta">
  616. <el-date-picker
  617. v-model="form.fEta"
  618. style="width: 80%"
  619. type="date"
  620. :disabled="browseStatus || formBrowseStatus"
  621. value-format="timestamp"
  622. placeholder="到港日期"
  623. >
  624. </el-date-picker>
  625. </el-form-item>
  626. </el-col>
  627. <el-col :span="8">
  628. <el-form-item label="报关单号" prop="fCustomno">
  629. <el-input
  630. v-model="form.fCustomno"
  631. style="width: 80%"
  632. :disabled="browseStatus || formBrowseStatus"
  633. laceholder="报关单号"
  634. />
  635. </el-form-item>
  636. </el-col>
  637. <el-col :span="8">
  638. <el-form-item label="经营单位" prop="fSbu">
  639. <el-select
  640. v-model="form.fSbu"
  641. filterable
  642. remote
  643. :disabled="browseStatus || formBrowseStatus"
  644. :remote-method="fSbuRemoteMethod"
  645. style="width: 80%"
  646. placeholder="请选择经营单位"
  647. >
  648. <el-option
  649. v-for="(dict, index) in fMblnoOptions"
  650. :key="index.fId"
  651. :label="dict.fName"
  652. :value="dict.fId"
  653. ></el-option>
  654. </el-select>
  655. </el-form-item>
  656. </el-col>
  657. </el-row>
  658. <el-row>
  659. <el-col :span="8">
  660. <el-form-item label="单据编号" prop="fBillno">
  661. <el-input
  662. v-model="form.fBillno"
  663. disabled
  664. style="width: 80%"
  665. placeholder="单据编号"
  666. />
  667. </el-form-item>
  668. </el-col>
  669. <el-col :span="8">
  670. <el-form-item label="贸易方式" prop="fTrademodeid">
  671. <el-select
  672. v-model="form.fTrademodeid"
  673. placeholder="请选择贸易方式"
  674. :disabled="browseStatus || formBrowseStatus"
  675. clearable
  676. style="width: 80%"
  677. >
  678. <el-option
  679. v-for="(dict, index) in fTrademodeidOptions"
  680. :key="index.dictValue"
  681. :label="dict.dictLabel"
  682. :value="dict.dictValue"
  683. />
  684. </el-select>
  685. </el-form-item>
  686. </el-col>
  687. <el-col :span="8">
  688. <el-form-item label="制单人" prop="createBy">
  689. <el-input
  690. disabled
  691. v-model="form.createBy"
  692. style="width: 80%"
  693. placeholder="制单人"
  694. />
  695. </el-form-item>
  696. </el-col>
  697. </el-row>
  698. <el-row>
  699. <el-col :span="8">
  700. <el-form-item label="制单部门" prop="fDeptid">
  701. <el-select
  702. v-model="form.fDeptid"
  703. filterable
  704. disabled
  705. style="width: 80%"
  706. remote
  707. >
  708. <el-option
  709. v-for="(dict, index) in deptOptions"
  710. :key="index.deptId"
  711. :label="dict.deptName"
  712. :value="dict.deptId"
  713. ></el-option>
  714. </el-select>
  715. </el-form-item>
  716. </el-col>
  717. <el-col :span="8">
  718. <el-form-item disabled label="制单日期" prop="fbilldate">
  719. <el-date-picker
  720. v-model="form.createTime"
  721. size="large"
  722. type="date"
  723. disabled
  724. value-format="timestamp"
  725. placeholder="制单日期"
  726. >
  727. </el-date-picker>
  728. </el-form-item>
  729. </el-col>
  730. </el-row>
  731. </div>
  732. </el-form>
  733. <div class="dialogTableTitle flex a-center jlr" style="display:flex;justify-content:space-between;align-items:center;margin: 10px 0;">
  734. <div>
  735. <el-button type="primary" :disabled="browseStatus" @click.prevent="addRelevant()"
  736. >新行
  737. </el-button>
  738. <el-button :disabled="dataListSelection.length <= 0" @click.prevent="creditClick()"
  739. >入库确认
  740. </el-button>
  741. <!-- <el-button :disabled="browseStatus" @click.prevent="deleteRoww(warehouseDrList)"
  742. >删除
  743. </el-button> -->
  744. <el-button :disabled="browseStatus" type="primary" @click="submitForm(2)">保 存</el-button>
  745. </div>
  746. <div>
  747. <el-button
  748. @click="
  749. detailsHidden ? (detailsHidden = false) : (detailsHidden = true)
  750. "
  751. >{{detailsHidden?"隐藏":"展开"}}</el-button
  752. >
  753. <el-button
  754. type="success"
  755. prop="打印"
  756. @click="showEditDialog_ss"
  757. >收货单
  758. </el-button>
  759. <el-button
  760. type="warning"
  761. prop="打印"
  762. @click="showEditDialog_s"
  763. >入库单
  764. </el-button>
  765. <el-button
  766. type="info"
  767. prop="打印"
  768. @click="showEditDialog_sss"
  769. >作业单
  770. </el-button>
  771. <el-button :disabled="browseStatus" type="primary" @click="submitForm(2)">保 存</el-button>
  772. <el-button :disabled="browseStatus" style="background-color: #008000;color:#fff" @click="submitForm(6)">请核</el-button>
  773. </div>
  774. <div style="font-size:18px">入库明细</div>
  775. </div>
  776. <el-table
  777. :data="dataList"
  778. ref="table"
  779. tooltip-effect="dark"
  780. border
  781. stripe
  782. :summary-method="getSummaries"
  783. @selection-change="Selectinventory"
  784. show-summary
  785. >
  786. <el-table-column type="selection" width="55" align="center" />
  787. <el-table-column label="序号" type="index" width="80">
  788. </el-table-column>
  789. <el-table-column
  790. prop="fBsdate"
  791. header-align="center"
  792. align="center"
  793. width="150px"
  794. label="入库日期"
  795. >
  796. <template slot-scope="scope">
  797. <el-date-picker
  798. v-model="scope.row.fBsdate"
  799. style="width: 138px"
  800. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  801. type="date"
  802. value-format="timestamp"
  803. placeholder="入库日期"
  804. >
  805. </el-date-picker>
  806. </template>
  807. </el-table-column>
  808. <el-table-column
  809. prop="fGoodsid"
  810. header-align="center"
  811. align="center"
  812. width="140px"
  813. label="品名"
  814. >
  815. <template slot-scope="scope">
  816. <el-select
  817. v-model="scope.row.fGoodsid"
  818. filterable
  819. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  820. remote
  821. :remote-method="goodsRemoteMethod"
  822. placeholder="请选择品名"
  823. >
  824. <el-option
  825. v-for="(dict, index) in goodsOptions"
  826. :key="index.fId"
  827. :label="dict.fName"
  828. :value="dict.fId"
  829. ></el-option>
  830. </el-select>
  831. </template>
  832. </el-table-column>
  833. <el-table-column
  834. prop="fWarehouselocid"
  835. header-align="center"
  836. width="140px"
  837. align="center"
  838. label="*库区"
  839. >
  840. <template slot-scope="scope">
  841. <el-select
  842. v-model="scope.row.fWarehouselocid"
  843. filterable
  844. remote
  845. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  846. :remote-method="kqhouseRemoteMethod"
  847. placeholder="请选择库区"
  848. >
  849. <el-option
  850. v-for="(dict, index) in kqhouseOptions"
  851. :key="index.fId"
  852. :label="dict.fName"
  853. :value="dict.fId"
  854. ></el-option>
  855. </el-select>
  856. </template>
  857. </el-table-column>
  858. <el-table-column
  859. prop="fcntrtype"
  860. header-align="center"
  861. align="center"
  862. width="140px"
  863. label="箱型"
  864. >
  865. <template slot-scope="scope">
  866. <el-input
  867. v-model="scope.row.fCntrtype"
  868. placeholder="箱型"
  869. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  870. show-word-limit
  871. />
  872. </template>
  873. </el-table-column>
  874. <el-table-column
  875. prop="fCntqty"
  876. header-align="center"
  877. align="center"
  878. width="140px"
  879. label="箱量"
  880. >
  881. <template slot-scope="scope">
  882. <el-input
  883. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$4")'
  884. v-model="scope.row.fCntqty"
  885. placeholder="箱量"
  886. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  887. show-word-limit
  888. />
  889. </template>
  890. </el-table-column>
  891. <el-table-column
  892. prop="fPlangrossweight"
  893. header-align="center"
  894. align="center"
  895. width="150px"
  896. label="计划毛重"
  897. >
  898. <template slot-scope="scope">
  899. <el-input
  900. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d\d\d\d\d).*$/, "$1$2.$3")'
  901. v-model="scope.row.fPlangrossweight"
  902. placeholder="计划毛重"
  903. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  904. show-word-limit
  905. />
  906. </template>
  907. </el-table-column>
  908. <el-table-column
  909. prop="fPlannetweight"
  910. header-align="center"
  911. align="center"
  912. width="150px"
  913. label="计划净重"
  914. >
  915. <template slot-scope="scope">
  916. <el-input
  917. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d\d\d\d\d).*$/, "$1$2.$3")'
  918. v-model="scope.row.fPlannetweight"
  919. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  920. placeholder="计划净重"
  921. show-word-limit
  922. />
  923. </template>
  924. </el-table-column>
  925. <el-table-column
  926. prop="fPlanvolumn"
  927. header-align="center"
  928. width="150px"
  929. align="center"
  930. label="计划尺码"
  931. >
  932. <template slot-scope="scope">
  933. <el-input
  934. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d\d).*$/, "$1$2.$3")'
  935. v-model="scope.row.fPlanvolumn"
  936. placeholder="尺码"
  937. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  938. show-word-limit
  939. />
  940. </template>
  941. </el-table-column>
  942. <el-table-column
  943. prop="fPlanqty"
  944. header-align="center"
  945. width="150px"
  946. align="center"
  947. label="计划件数"
  948. >
  949. <template slot-scope="scope">
  950. <el-input
  951. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  952. v-model="scope.row.fPlanqty"
  953. placeholder="件数"
  954. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  955. show-word-limit
  956. />
  957. </template>
  958. </el-table-column>
  959. <el-table-column
  960. prop="fGrossweight"
  961. header-align="center"
  962. width="150px"
  963. align="center"
  964. label="*入库毛重"
  965. >
  966. <template slot-scope="scope">
  967. <el-input
  968. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d\d\d\d\d).*$/, "$1$2.$3")'
  969. v-model="scope.row.fGrossweight"
  970. placeholder="入库毛重"
  971. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  972. show-word-limit
  973. />
  974. </template>
  975. </el-table-column>
  976. <el-table-column
  977. prop="fNetweight"
  978. header-align="center"
  979. width="150px"
  980. align="center"
  981. label="*入库净重"
  982. >
  983. <template slot-scope="scope">
  984. <el-input
  985. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d\d\d\d\d).*$/, "$1$2.$3")'
  986. v-model="scope.row.fNetweight"
  987. placeholder="入库净重"
  988. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  989. show-word-limit
  990. />
  991. </template>
  992. </el-table-column>
  993. <el-table-column
  994. prop="fQty"
  995. header-align="center"
  996. width="150px"
  997. align="center"
  998. label="*入库件数"
  999. >
  1000. <template slot-scope="scope">
  1001. <el-input
  1002. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  1003. v-model="scope.row.fQty"
  1004. placeholder="入库件数"
  1005. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  1006. show-word-limit
  1007. />
  1008. </template>
  1009. </el-table-column>
  1010. <el-table-column
  1011. prop="fPackagespecs"
  1012. header-align="center"
  1013. width="150px"
  1014. align="center"
  1015. label="*包装规格"
  1016. >
  1017. <template slot-scope="scope">
  1018. <el-input
  1019. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  1020. v-model="scope.row.fPackagespecs"
  1021. placeholder="包装规格"
  1022. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  1023. show-word-limit
  1024. />
  1025. </template>
  1026. </el-table-column>
  1027. <el-table-column
  1028. prop="fCntrno"
  1029. header-align="center"
  1030. width="130px"
  1031. align="center"
  1032. label="箱号"
  1033. >
  1034. <template slot-scope="scope">
  1035. <el-input
  1036. v-model="scope.row.fCntrno"
  1037. placeholder="箱号"
  1038. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  1039. show-word-limit
  1040. />
  1041. </template>
  1042. </el-table-column>
  1043. <el-table-column
  1044. prop="fGoodsval"
  1045. header-align="center"
  1046. width="130px"
  1047. align="center"
  1048. label="货值"
  1049. >
  1050. <template slot-scope="scope">
  1051. <el-input
  1052. oninput="value=value.replace(/[^\d.]/g,'')"
  1053. v-model="scope.row.fGoodsval"
  1054. placeholder="货值"
  1055. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  1056. show-word-limit
  1057. />
  1058. </template>
  1059. </el-table-column>
  1060. <el-table-column
  1061. prop="fTruckno"
  1062. header-align="center"
  1063. width="130px"
  1064. align="center"
  1065. label="车号"
  1066. >
  1067. <template slot-scope="scope">
  1068. <el-input
  1069. oninput="value=value.replace(/[^\d.]/g,'')"
  1070. v-model="scope.row.fTruckno"
  1071. placeholder="车号"
  1072. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  1073. show-word-limit
  1074. />
  1075. </template>
  1076. </el-table-column>
  1077. <el-table-column
  1078. prop="remark"
  1079. header-align="center"
  1080. width="130px"
  1081. align="center"
  1082. label="备注"
  1083. >
  1084. <template slot-scope="scope">
  1085. <el-input
  1086. v-model="scope.row.remark"
  1087. placeholder="备注"
  1088. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  1089. show-word-limit
  1090. />
  1091. </template>
  1092. </el-table-column>
  1093. <el-table-column
  1094. prop="fBillstatus"
  1095. header-align="center"
  1096. width="150px"
  1097. align="center"
  1098. label="状态"
  1099. >
  1100. <template slot-scope="scope">
  1101. <span v-if="scope.row.fBillstatus === '6'">已入账</span>
  1102. <span v-else>未入账</span>
  1103. <!-- <el-input
  1104. v-model="scope.row.fBillstatus"
  1105. placeholder="状态"
  1106. :disabled="browseStatus"
  1107. show-word-limit
  1108. /> -->
  1109. </template>
  1110. </el-table-column>
  1111. <el-table-column
  1112. header-align="center"
  1113. align="center"
  1114. label="操作"
  1115. width="130PX"
  1116. >
  1117. <template slot-scope="scope">
  1118. <el-button
  1119. :disabled="browseStatus || scope.row.fBillstatus === '6'"
  1120. @click.native.prevent="deleteRow(scope.$index, dataList)"
  1121. size="small"
  1122. >移除</el-button
  1123. >
  1124. </template>
  1125. </el-table-column>
  1126. </el-table>
  1127. <div class="dialogTableTitle flex a-center jlr" style="display:flex;justify-content:space-between;align-items:center;margin: 10px 0;">
  1128. <div>
  1129. <el-button type="primary" :disabled="browseStatus" @click.prevent="addRelevt()"
  1130. >新行
  1131. </el-button>
  1132. </div>
  1133. <div>附件明细</div>
  1134. </div>
  1135. <el-table
  1136. :data="relevantAttachments"
  1137. ref="table"
  1138. tooltip-effect="dark"
  1139. border
  1140. stripe
  1141. style="width: 100%"
  1142. height="150"
  1143. >
  1144. <el-table-column label="序号" type="index" width="80">
  1145. </el-table-column>
  1146. <el-table-column
  1147. prop="fName"
  1148. header-align="center"
  1149. align="center"
  1150. width="250px"
  1151. label="附件名称"
  1152. >
  1153. <template slot-scope="scope">
  1154. <el-input
  1155. v-model="scope.row.fName"
  1156. :disabled="browseStatus"
  1157. placeholder="附件名称"
  1158. show-word-limit
  1159. />
  1160. </template>
  1161. </el-table-column>
  1162. <el-table-column
  1163. prop="createBy"
  1164. header-align="center"
  1165. align="center"
  1166. width="250px"
  1167. label="上传人"
  1168. >
  1169. <template slot-scope="scope">
  1170. <el-input
  1171. v-model="scope.row.createBy"
  1172. :disabled="browseStatus"
  1173. placeholder="默认登陆人"
  1174. show-word-limit
  1175. />
  1176. </template>
  1177. </el-table-column>
  1178. <el-table-column
  1179. prop="createTime"
  1180. header-align="center"
  1181. align="center"
  1182. label="上传时间"
  1183. >
  1184. <template slot-scope="scope">
  1185. <el-date-picker
  1186. v-model="scope.row.createTime"
  1187. type="date"
  1188. disabled
  1189. placeholder="上传时间"
  1190. format="yyyy-MM-dd HH:mm"
  1191. value-format="timestamp"
  1192. ></el-date-picker>
  1193. </template>
  1194. </el-table-column>
  1195. <el-table-column
  1196. prop="fUrl"
  1197. header-align="center"
  1198. align="center"
  1199. width="300px"
  1200. label="上传附件"
  1201. >
  1202. <template slot-scope="scope">
  1203. <uploadFile :disabled="browseStatus" @input="showFile" v-model="scope.row.fUrl" />
  1204. </template>
  1205. </el-table-column>
  1206. <el-table-column
  1207. header-align="center"
  1208. align="center"
  1209. label="操作"
  1210. width="130PX"
  1211. >
  1212. <template slot-scope="scope">
  1213. <el-button
  1214. @click.native.prevent="
  1215. deleteRow(scope.$index, relevantAttachments)
  1216. "
  1217. :disabled="browseStatus"
  1218. size="small"
  1219. >移除
  1220. </el-button>
  1221. </template>
  1222. </el-table-column>
  1223. </el-table>
  1224. <div class="dialogTableTitle flex a-center jlr" style="display:flex;justify-content:space-between;align-items:center;margin: 10px 0;">
  1225. <div>
  1226. <el-button type="primary" :disabled="browseStatus" @click.prevent="addCollection()"
  1227. >新行
  1228. </el-button>
  1229. <!-- <el-button :disabled="browseStatus" @click.prevent="deleteRow(warehouseDrList)"
  1230. >删除
  1231. </el-button> -->
  1232. <el-button type="primary" @click="submitForm(2)">保 存</el-button>
  1233. <!-- <el-button @click.prevent="addAgreement()" type="warning">仓储费协议</el-button> -->
  1234. <el-button @click.prevent="addAgreement()" type="danger">作业费协议</el-button>
  1235. </div>
  1236. <div style="font-size:18px">收款信息</div>
  1237. </div>
  1238. <el-table
  1239. :data="warehouseDrList"
  1240. ref="table"
  1241. tooltip-effect="dark"
  1242. border
  1243. stripe
  1244. show-summary
  1245. @selection-change="Collectionoptions"
  1246. :summary-method="warehouseDrSummaries"
  1247. >
  1248. <el-table-column type="selection" width="55" align="center" />
  1249. <el-table-column label="序号" type="index" width="80">
  1250. </el-table-column>
  1251. <el-table-column
  1252. prop="fCorpid"
  1253. header-align="center"
  1254. align="center"
  1255. width="180px"
  1256. label="客户名称"
  1257. >
  1258. <template slot-scope="scope">
  1259. <el-select
  1260. v-model="scope.row.fCorpid"
  1261. filterable
  1262. remote
  1263. :disabled="browseStatus"
  1264. :remote-method="corpsRemoteMethod"
  1265. placeholder="客户名称"
  1266. >
  1267. <el-option
  1268. v-for="(dict, index) in KHblnoOptions"
  1269. :key="index.fId"
  1270. :label="dict.fName"
  1271. :value="dict.fId"
  1272. ></el-option>
  1273. </el-select>
  1274. </template>
  1275. </el-table-column>
  1276. <el-table-column
  1277. prop="fFeeid"
  1278. header-align="center"
  1279. align="center"
  1280. width="180px"
  1281. label="费用名称"
  1282. >
  1283. <template slot-scope="scope">
  1284. <el-select
  1285. v-model="scope.row.fFeeid"
  1286. filterable
  1287. remote
  1288. :disabled="browseStatus"
  1289. :remote-method="fWRemoteMethod"
  1290. placeholder="费用名称"
  1291. >
  1292. <el-option
  1293. v-for="(dict, index) in fWbuOptions"
  1294. :key="index.fId"
  1295. :label="dict.fName"
  1296. :value="dict.fId"
  1297. ></el-option>
  1298. </el-select>
  1299. </template>
  1300. </el-table-column>
  1301. <el-table-column
  1302. prop="fFeeunitid"
  1303. header-align="center"
  1304. align="center"
  1305. width="180px"
  1306. label="计价单位"
  1307. >
  1308. <template slot-scope="scope">
  1309. <el-select
  1310. v-model="scope.row.fFeeUnitid"
  1311. placeholder="请选择计价单位"
  1312. @change="changeFeeUnit(scope.row)"
  1313. clearable
  1314. :disabled="browseStatus"
  1315. >
  1316. <el-option
  1317. v-for="(dict, index) in jFeetunitOptions"
  1318. :key="index.dictValue"
  1319. :label="dict.dictLabel"
  1320. :value="dict.dictValue"
  1321. />
  1322. </el-select>
  1323. </template>
  1324. </el-table-column>
  1325. <el-table-column
  1326. prop="fQty"
  1327. header-align="center"
  1328. align="center"
  1329. width="130px"
  1330. label="数量"
  1331. >
  1332. <template slot-scope="scope">
  1333. <el-input
  1334. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  1335. v-model="scope.row.fQty"
  1336. placeholder="数量"
  1337. :disabled="browseStatus"
  1338. @change="changeContractAmt(scope.row)"
  1339. show-word-limit
  1340. />
  1341. </template>
  1342. </el-table-column>
  1343. <el-table-column
  1344. prop="fUnitprice"
  1345. header-align="center"
  1346. align="center"
  1347. width="130px"
  1348. label="单价"
  1349. >
  1350. <template slot-scope="scope">
  1351. <el-input
  1352. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  1353. v-model="scope.row.fUnitprice"
  1354. placeholder="单价"
  1355. :disabled="browseStatus"
  1356. @change="changeContractAmt(scope.row)"
  1357. show-word-limit
  1358. />
  1359. </template>
  1360. </el-table-column>
  1361. <el-table-column
  1362. prop="fAmount"
  1363. header-align="center"
  1364. align="center"
  1365. width="130px"
  1366. label="金额"
  1367. >
  1368. <template slot-scope="scope">
  1369. <el-input
  1370. disabled
  1371. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  1372. v-model="scope.row.fAmount"
  1373. placeholder="金额"
  1374. show-word-limit
  1375. />
  1376. </template>
  1377. </el-table-column>
  1378. <el-table-column
  1379. prop="fCurrency"
  1380. header-align="center"
  1381. align="center"
  1382. width="130px"
  1383. label="币别"
  1384. >
  1385. <template slot-scope="scope">
  1386. <el-input
  1387. v-model="scope.row.fCurrency"
  1388. :disabled="browseStatus"
  1389. placeholder="币别"
  1390. show-word-limit
  1391. />
  1392. </template>
  1393. </el-table-column>
  1394. <el-table-column
  1395. prop="fExrate"
  1396. header-align="center"
  1397. align="center"
  1398. width="130px"
  1399. label="汇率"
  1400. >
  1401. <template slot-scope="scope">
  1402. <el-input
  1403. v-model="scope.row.fExrate"
  1404. :disabled="browseStatus"
  1405. placeholder="汇率"
  1406. show-word-limit
  1407. />
  1408. </template>
  1409. </el-table-column>
  1410. <el-table-column
  1411. prop="fTaxrate"
  1412. header-align="center"
  1413. align="center"
  1414. width="130px"
  1415. label="税率"
  1416. >
  1417. <template slot-scope="scope">
  1418. <el-input
  1419. v-model="scope.row.fTaxrate"
  1420. :disabled="browseStatus"
  1421. placeholder="税率"
  1422. show-word-limit
  1423. />
  1424. </template>
  1425. </el-table-column>
  1426. <el-table-column
  1427. prop="remarks"
  1428. header-align="center"
  1429. align="center"
  1430. width="150px"
  1431. label="备注"
  1432. >
  1433. <template slot-scope="scope">
  1434. <el-input
  1435. v-model="scope.row.Remarks"
  1436. :disabled="browseStatus"
  1437. placeholder="备注"
  1438. show-word-limit
  1439. />
  1440. </template>
  1441. </el-table-column>
  1442. <el-table-column
  1443. header-align="center"
  1444. align="center"
  1445. label="操作"
  1446. width="200px"
  1447. >
  1448. <template slot-scope="scope">
  1449. <!-- <el-button size="small">审核费用</el-button> -->
  1450. <el-button
  1451. @click.native.prevent="deleteRow(scope.$index, warehouseDrList)"
  1452. size="small"
  1453. >移除</el-button
  1454. >
  1455. </template>
  1456. </el-table-column>
  1457. </el-table>
  1458. <div class="dialogTableTitle flex a-center jlr" style="display:flex;justify-content:space-between;align-items:center;margin: 10px 0;">
  1459. <div> <el-button type="primary" :disabled="browseStatus" @click.prevent="addpayment()"
  1460. >新行
  1461. </el-button>
  1462. <!-- <el-button :disabled="browseStatus" @click.prevent="deleteRow(warehouseCrList)"
  1463. >删除
  1464. </el-button> -->
  1465. <el-button type="primary" @click="submitForm(2)">保 存</el-button>
  1466. <!-- <el-button type="warning">仓储费协议</el-button> -->
  1467. <el-button type="danger">作业费协议</el-button></div>
  1468. <div style="font-size:18px">付款信息</div>
  1469. </div>
  1470. <el-table
  1471. :data="warehouseCrList"
  1472. ref="table"
  1473. tooltip-effect="dark"
  1474. border
  1475. stripe
  1476. show-summary
  1477. @selection-change="Paymentoptions"
  1478. :summary-method="warehouseDrSummaries"
  1479. >
  1480. <el-table-column type="selection" width="55" align="center" />
  1481. <el-table-column label="序号" type="index" width="80">
  1482. </el-table-column>
  1483. <el-table-column
  1484. prop="fCorpid"
  1485. header-align="center"
  1486. align="center"
  1487. width="180px"
  1488. label="客户名称"
  1489. >
  1490. <template slot-scope="scope">
  1491. <el-select
  1492. v-model="scope.row.fCorpid"
  1493. filterable
  1494. remote
  1495. :disabled="browseStatus"
  1496. :remote-method="corpsRemoteMethod"
  1497. placeholder="客户名称"
  1498. >
  1499. <el-option
  1500. v-for="(dict, index) in KHblnoOptions"
  1501. :key="index.fId"
  1502. :label="dict.fName"
  1503. :value="dict.fId"
  1504. ></el-option>
  1505. </el-select>
  1506. </template>
  1507. </el-table-column>
  1508. <el-table-column
  1509. prop="fFeeid"
  1510. header-align="center"
  1511. align="center"
  1512. width="180px"
  1513. label="费用名称"
  1514. >
  1515. <template slot-scope="scope">
  1516. <el-select
  1517. v-model="scope.row.fFeeid"
  1518. filterable
  1519. :disabled="browseStatus"
  1520. remote
  1521. :remote-method="fWRemoteMethod"
  1522. placeholder="费用名称"
  1523. >
  1524. <el-option
  1525. v-for="(dict, index) in fWbuOptions"
  1526. :key="index.fId"
  1527. :label="dict.fName"
  1528. :value="dict.fId"
  1529. ></el-option>
  1530. </el-select>
  1531. </template>
  1532. </el-table-column>
  1533. <el-table-column
  1534. prop="fFeeUnitid"
  1535. header-align="center"
  1536. align="center"
  1537. width="180px"
  1538. label="计价单位"
  1539. >
  1540. <template slot-scope="scope">
  1541. <el-select
  1542. v-model="scope.row.fFeeUnitid"
  1543. filterable
  1544. remote
  1545. @change="changeFeeUnit(scope.row)"
  1546. :disabled="browseStatus"
  1547. :remote-method="corpsRemoteMethod"
  1548. placeholder="计价单位"
  1549. >
  1550. <el-option
  1551. v-for="(dict, index) in jFeetunitOptions"
  1552. :key="index.dictValue"
  1553. :label="dict.dictLabel"
  1554. :value="dict.dictValue"
  1555. ></el-option>
  1556. </el-select>
  1557. </template>
  1558. </el-table-column>
  1559. <el-table-column
  1560. prop="fQty"
  1561. header-align="center"
  1562. align="center"
  1563. width="150px"
  1564. label="数量"
  1565. >
  1566. <template slot-scope="scope">
  1567. <el-input
  1568. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d\d\d).*$/, "$1$2.$3")'
  1569. v-model="scope.row.fQty"
  1570. :disabled="browseStatus"
  1571. @change="changeContractAmt(scope.row)"
  1572. placeholder="数量"
  1573. show-word-limit
  1574. />
  1575. </template>
  1576. </el-table-column>
  1577. <el-table-column
  1578. prop="fUnitprice"
  1579. header-align="center"
  1580. align="center"
  1581. width="150px"
  1582. label="单价"
  1583. >
  1584. <template slot-scope="scope">
  1585. <el-input
  1586. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  1587. v-model="scope.row.fUnitprice"
  1588. :disabled="browseStatus"
  1589. @change="changeContractAmt(scope.row)"
  1590. placeholder="单价"
  1591. show-word-limit
  1592. />
  1593. </template>
  1594. </el-table-column>
  1595. <el-table-column
  1596. prop="fAmount"
  1597. header-align="center"
  1598. align="center"
  1599. width="150px"
  1600. label="金额"
  1601. >
  1602. <template slot-scope="scope">
  1603. <el-input
  1604. disabled
  1605. oninput='this.value=this.value.replace(/[^\-?\d.]/g,"").replace(/^(\-)*(\d+)\.(\d\d).*$/, "$1$2.$3")'
  1606. v-model="scope.row.fAmount"
  1607. placeholder="金额"
  1608. show-word-limit
  1609. />
  1610. </template>
  1611. </el-table-column>
  1612. <el-table-column
  1613. prop="fCurrency"
  1614. header-align="center"
  1615. align="center"
  1616. width="150px"
  1617. label="币别"
  1618. >
  1619. <template slot-scope="scope">
  1620. <el-input
  1621. v-model="scope.row.fCurrency"
  1622. :disabled="browseStatus"
  1623. placeholder="币别"
  1624. show-word-limit
  1625. />
  1626. </template>
  1627. </el-table-column>
  1628. <el-table-column
  1629. prop="fExrate"
  1630. header-align="center"
  1631. align="center"
  1632. width="150px"
  1633. label="汇率"
  1634. >
  1635. <template slot-scope="scope">
  1636. <el-input
  1637. v-model="scope.row.fExrate"
  1638. :disabled="browseStatus"
  1639. placeholder="汇率"
  1640. show-word-limit
  1641. />
  1642. </template>
  1643. </el-table-column>
  1644. <el-table-column
  1645. prop="fTaxrate"
  1646. header-align="center"
  1647. align="center"
  1648. width="150px"
  1649. label="税率"
  1650. >
  1651. <template slot-scope="scope">
  1652. <el-input
  1653. v-model="scope.row.fTaxrate"
  1654. :disabled="browseStatus"
  1655. placeholder="税率"
  1656. show-word-limit
  1657. />
  1658. </template>
  1659. </el-table-column>
  1660. <el-table-column
  1661. prop="remarks"
  1662. header-align="center"
  1663. align="center"
  1664. width="150px"
  1665. label="备注"
  1666. >
  1667. <template slot-scope="scope">
  1668. <el-input
  1669. v-model="scope.row.remarks"
  1670. :disabled="browseStatus"
  1671. placeholder="备注"
  1672. show-word-limit
  1673. />
  1674. </template>
  1675. </el-table-column>
  1676. <el-table-column
  1677. header-align="center"
  1678. align="center"
  1679. width="200px"
  1680. label="操作"
  1681. >
  1682. <template slot-scope="scope">
  1683. <!-- <el-button size="small">审核费用</el-button> -->
  1684. <el-button
  1685. @click.native.prevent="deleteRow(scope.$index, warehouseCrList)"
  1686. size="small"
  1687. >移除</el-button
  1688. >
  1689. </template>
  1690. </el-table-column>
  1691. </el-table>
  1692. <div slot="footer" class="dialog-footer">
  1693. <el-button
  1694. type="success"
  1695. prop="打印"
  1696. @click="showEditDialog_ss"
  1697. >收货单
  1698. </el-button>
  1699. <el-button
  1700. type="warning"
  1701. prop="打印"
  1702. @click="showEditDialog_s"
  1703. >入库单
  1704. </el-button>
  1705. <el-button
  1706. type="info"
  1707. prop="打印"
  1708. @click="showEditDialog_sss"
  1709. >作业单
  1710. </el-button>
  1711. <el-button :disabled="browseStatus" type="primary" @click="submitForm(2)">保 存</el-button>
  1712. <el-button :disabled="browseStatus" style="background-color: #008000;color:#fff" @click="submitForm(6)">请核</el-button>
  1713. <el-button @click="cancel">取 消</el-button>
  1714. </div>
  1715. <!-- 选择库存总账数据 -->
  1716. <el-dialog
  1717. title="仓储费协议"
  1718. :modal="false"
  1719. style="box-shadow: 0 1px 3px rgba(0, 0, 0, 0) !important"
  1720. :visible.sync="warehousingagreement"
  1721. width="70%"
  1722. >
  1723. <el-table
  1724. :data="whgenlegList"
  1725. ref="table"
  1726. tooltip-effect="dark"
  1727. width="100%"
  1728. border
  1729. stripe
  1730. @selection-change="whgenlegSelectionChange"
  1731. >
  1732. <el-table-column type="selection" width="55"> </el-table-column>
  1733. <el-table-column
  1734. prop="fMblno"
  1735. header-align="center"
  1736. align="center"
  1737. label="提单号"
  1738. >
  1739. </el-table-column>
  1740. <el-table-column
  1741. prop="createTime"
  1742. header-align="center"
  1743. align="center"
  1744. width="180px"
  1745. label="入库日期"
  1746. >
  1747. </el-table-column>
  1748. <el-table-column
  1749. prop="fGoodsid"
  1750. header-align="center"
  1751. align="center"
  1752. label="品名"
  1753. >
  1754. </el-table-column>
  1755. <el-table-column
  1756. prop="fQtyblc"
  1757. header-align="center"
  1758. align="center"
  1759. label="结余数量"
  1760. >
  1761. </el-table-column>
  1762. <el-table-column
  1763. prop="fWarehouseLocationid"
  1764. header-align="center"
  1765. align="center"
  1766. label="库区"
  1767. >
  1768. </el-table-column>
  1769. <el-table-column
  1770. prop="fMarks"
  1771. header-align="center"
  1772. align="center"
  1773. label="唛头"
  1774. >
  1775. </el-table-column>
  1776. </el-table>
  1777. <pagination
  1778. v-show="whgenlegTotal > 0"
  1779. :total="whgenlegTotal"
  1780. :page.sync="whgenlegParams.pageNum"
  1781. :limit.sync="whgenlegParams.pageSize"
  1782. @pagination="getWhgenlegList"
  1783. />
  1784. <div slot="footer" class="dialog-footer">
  1785. <el-button type="primary" @click="whgenlegData">导入</el-button>
  1786. <el-button @click="warehousingagreement = false">取 消</el-button>
  1787. </div>
  1788. </el-dialog>
  1789. <el-dialog
  1790. title="入库页面"
  1791. :modal="false"
  1792. style="box-shadow: 0 1px 3px rgba(0, 0, 0, 0) !important"
  1793. :visible.sync="editDialogVisible_s"
  1794. width="70%"
  1795. >
  1796. <table
  1797. id="print_area"
  1798. class="biaoge zzss"
  1799. border="1"
  1800. style="border-collapse: collapse; border: none"
  1801. >
  1802. <tr>
  1803. <td
  1804. width="100"
  1805. colspan="7"
  1806. class="zzss"
  1807. style="font-size: 28px; font-weight: bold; border: none"
  1808. >
  1809. 青岛大木进仓单
  1810. </td>
  1811. </tr>
  1812. <tr>
  1813. <td
  1814. width="100"
  1815. colspan="7"
  1816. class="zzss"
  1817. style="font-size: 28px; font-weight: bold; border: none"
  1818. >
  1819. &nbsp;
  1820. </td>
  1821. </tr>
  1822. <tr>
  1823. <td width="450" colspan="2" class="zzss">货权方:{{form.fCorpid}}</td>
  1824. <td width="450" colspan="2" class="zzss">仓库:{{form.fWarehouseid}}</td>
  1825. <td width="450" colspan="3" class="zzss">
  1826. 地址:青岛市市北区郑州路1344号
  1827. </td>
  1828. </tr>
  1829. <tr>
  1830. <td width="200" colspan="2" class="zzss">保管方:大木有限公司</td>
  1831. <td width="200" colspan="2" class="zzss">联系人:{{form.fContacts}}</td>
  1832. <td width="200" colspan="3" class="zzss">
  1833. 电话:{{form.fTel}}
  1834. </td>
  1835. </tr>
  1836. <tr>
  1837. <td width="100" border="1">提单号</td>
  1838. <td width="100">品名</td>
  1839. <td width="100">箱型</td>
  1840. <td width="100">品牌</td>
  1841. <td width="100">件数</td>
  1842. <td width="100">重量</td>
  1843. <td width="100">包装规格</td>
  1844. </tr>
  1845. <tr>
  1846. <td width="100">{{form.fMblno}}</td>
  1847. <td width="100">{{fGoodsids}}</td>
  1848. <td width="100">{{fCntrtype}}</td>
  1849. <td width="100">某某</td>
  1850. <td width="100">包</td>
  1851. <td width="100">吨</td>
  1852. <td width="100"></td>
  1853. </tr>
  1854. <tr>
  1855. <td width="100">序号</td>
  1856. <td width="100">入货日期</td>
  1857. <td width="100">箱量(20GP)</td>
  1858. <td width="100">重量</td>
  1859. <td width="100">件数</td>
  1860. <td width="100">入库重量</td>
  1861. <td width="100">入库件数</td>
  1862. </tr>
  1863. <tr v-for="(item,index) in dataListSelection" :key="index">
  1864. <td width="100">{{index+1}}</td>
  1865. <td width="100">{{item.fBsdate}}</td>
  1866. <td width="100">{{item.fCntqty}}</td>
  1867. <td width="100">{{item.fGrossweight}}</td>
  1868. <td width="100">{{item.fPlanqty}}</td>
  1869. <td width="100">{{item.fNetweight}}</td>
  1870. <td width="100">{{item.fQty}}</td>
  1871. </tr>
  1872. <tr>
  1873. <td width="100" colspan="2">合计:</td>
  1874. <td width="100">{{fCntqty}}</td>
  1875. <td width="100">{{fGrossweight}}</td>
  1876. <td width="100">{{fPlanqty}}</td>
  1877. <td width="100">{{fNetweight}}</td>
  1878. <td width="100">{{fQty}}</td>
  1879. </tr>
  1880. <tr>
  1881. <td width="100">备注:</td>
  1882. <td width="100" colspan="6"></td>
  1883. </tr>
  1884. <tr>
  1885. <td width="100" colspan="7" class="zzss">
  1886. 本进仓单经仓管员签字并经保管方盖章后即专项作为货物所有人的货权证明,本单据不得转让。
  1887. </td>
  1888. </tr>
  1889. <tr style="border: none">
  1890. <td width="100" colspan="2" class="zzss" style="border: none">
  1891. 开单员:
  1892. </td>
  1893. <td width="100" colspan="3" class="zzss" style="border: none"></td>
  1894. <td width="100" colspan="2" class="zzss" style="border: none">
  1895. 仓管员:张三
  1896. </td>
  1897. </tr>
  1898. <tr style="border: none">
  1899. <td width="100" colspan="2" class="zzss" style="border: none">
  1900. 开单时间:
  1901. </td>
  1902. <td width="100" colspan="3" class="zzss" style="border: none"></td>
  1903. <td width="100" colspan="2" class="zzss" style="border: none">
  1904. (盖章)
  1905. </td>
  1906. </tr>
  1907. </table>
  1908. <button @click="printSomething">打印</button>
  1909. </el-dialog>
  1910. <el-dialog
  1911. title="收货单打印"
  1912. style="box-shadow: 0 1px 3px rgba(0, 0, 0, 0) !important"
  1913. :visible.sync="editDialogVisible_ss"
  1914. width="70%"
  1915. :modal="false"
  1916. >
  1917. <table
  1918. id="print_area"
  1919. class="biaoge zzss"
  1920. border="1"
  1921. style="border-collapse: collapse; border: none;margin-top;100px;"
  1922. >
  1923. <tr>
  1924. <td
  1925. width="1400"
  1926. colspan="6"
  1927. class="zzss"
  1928. style="font-size: 26px; font-weight: bold; border: none"
  1929. >
  1930. 大木国际物流(青岛)有限公司收货单
  1931. </td>
  1932. </tr>
  1933. <!-- <div v-for="{{}}" :key="index"> -->
  1934. <tr>
  1935. <td width="400">车号:</td>
  1936. <td width="400">{{fTruckno}}</td>
  1937. <td
  1938. width="500"
  1939. colspan="2"
  1940. style="padding-bottom: 0px; font-weight: bold; border: none"
  1941. class="zzss"
  1942. >
  1943. 日期:
  1944. </td>
  1945. <td
  1946. width="500"
  1947. colspan="2"
  1948. style="padding-bottom: 0px; font-weight: bold; border: none"
  1949. class="zzss"
  1950. >
  1951. {{fBsdate}}
  1952. </td>
  1953. </tr>
  1954. <tr v-for="(item,index) in dataListSelection" :key="index">
  1955. <td width="250">货物品名:</td>
  1956. <td width="250">{{item.fGoodsids}}</td>
  1957. <td width="250">白色聚吕</td>
  1958. <!-- <td width="200" colspan="2">件数: 161件</td> -->
  1959. <!-- <td width="200"></td> -->
  1960. <td width="200" colspan="4" class="zzss">件数: {{item.fQty}}件</td>
  1961. </tr>
  1962. <!-- <tr>
  1963. <td width="1400" colspan="6">&nbsp;</td>
  1964. </tr> -->
  1965. <tr v-for="(item,index) in dataListSelection" :key="index">
  1966. <td>备注:</td>
  1967. <td colspan="5">{{item.remark}}</td>
  1968. </tr>
  1969. <tr>
  1970. <td>司机签字:</td>
  1971. <td></td>
  1972. <td colspan="2">司机电话:</td>
  1973. <td colspan="2">{{form.fTel}}</td>
  1974. </tr>
  1975. <tr>
  1976. <td>制单人:</td>
  1977. <td>{{form.createBy}}</td>
  1978. <td colspan="2">收货人:</td>
  1979. <td colspan="2">{{form.fContacts}}</td>
  1980. </tr>
  1981. <!-- <tr>
  1982. <td colspan="6" class="zzss">&nbsp;</td>
  1983. </tr> -->
  1984. <tr>
  1985. <td width="280" class="zzss"></td>
  1986. <td width="280" class="zzss"></td>
  1987. <td width="280" class="zzss"></td>
  1988. <td width="280" class="zzss"></td>
  1989. <td width="290" class="zzss">地址:淮河东路96号</td>
  1990. <td width="290" class="zzss">电话:{{form.fTel}}</td>
  1991. </tr>
  1992. <!-- </div> -->
  1993. </table>
  1994. <button @click="printSomething">打印</button>
  1995. </el-dialog>
  1996. <el-dialog
  1997. title="收货单打印"
  1998. style="box-shadow: 0 1px 3px rgba(0, 0, 0, 0) !important"
  1999. :visible.sync="editDialogVisible_sss"
  2000. width="70%"
  2001. :modal="false"
  2002. >
  2003. <table
  2004. id="print_area"
  2005. class="biaoge zzss"
  2006. border="1"
  2007. style="border-collapse: collapse; border: none"
  2008. >
  2009. <tr>
  2010. <td
  2011. width="1400"
  2012. colspan="6"
  2013. class="zzss"
  2014. style="font-size: 28px; font-weight: bold; border: none"
  2015. >
  2016. 大木国际物流(青岛)有限公司作业单
  2017. </td>
  2018. </tr>
  2019. <tr>
  2020. <td
  2021. width="900"
  2022. colspan="4"
  2023. class="zzss"
  2024. style="font-size: 28px; font-weight: bold"
  2025. >
  2026. &nbsp;
  2027. </td>
  2028. <td
  2029. width="500"
  2030. colspan="2"
  2031. style="padding-bottom: 0px; font-weight: bold; border: none"
  2032. class="zzss"
  2033. >
  2034. 出库日期:{{fBsdate}}
  2035. </td>
  2036. </tr>
  2037. <tr v-for="(item,index) in dataListSelection" :key="index">
  2038. <td width="200">车号</td>
  2039. <td width="200">{{item.fTruckno}}</td>
  2040. <td width="200">货物品名</td>
  2041. <td width="200" colspan="4" class="zzss">{{item.fGoodsids}}</td>
  2042. </tr>
  2043. <tr>
  2044. <td width="1400" colspan="6">&nbsp;</td>
  2045. </tr>
  2046. <tr>
  2047. <td>备注:</td>
  2048. <td colspan="5"></td>
  2049. </tr>
  2050. <tr>
  2051. <td>收费</td>
  2052. <td>装箱费</td>
  2053. <td>元</td>
  2054. <td colspan="4">办单费:5元,过磅费自理</td>
  2055. </tr>
  2056. <tr>
  2057. <td>司机签字:</td>
  2058. <td></td>
  2059. <td>电话</td>
  2060. <td>{{form.fTel}}</td>
  2061. <td colspan="2" rowspan="2">
  2062. 确认货物数量无误,包装于货物完好!<br />出库盖好篷布,如有违背责任自负<br />装卸工是否收小费
  2063. </td>
  2064. </tr>
  2065. <tr>
  2066. <td>制表:</td>
  2067. <td>{{form.createBy}}</td>
  2068. <td>机械/人工:</td>
  2069. <td>{{form.fContacts}}</td>
  2070. </tr>
  2071. <tr>
  2072. <td colspan="6" class="zzss">&nbsp;</td>
  2073. </tr>
  2074. <tr>
  2075. <td width="280" class="zzss"></td>
  2076. <td width="280" class="zzss"></td>
  2077. <td width="280" class="zzss"></td>
  2078. <td width="280" class="zzss"></td>
  2079. <td width="290" class="zzss">地址:淮河东路96号</td>
  2080. <td width="290" class="zzss">电话:18685818919</td>
  2081. </tr>
  2082. </table>
  2083. <button @click="printSomething">打印</button>
  2084. </el-dialog>
  2085. </el-dialog>
  2086. </div>
  2087. </template>
  2088. <script>
  2089. import print from "print-js";
  2090. import {
  2091. addWhgenleg,
  2092. listWarehousebills,
  2093. getWarehousebills,
  2094. delWarehousebills,
  2095. addWarehousebills,
  2096. updateWarehousebills,
  2097. exportWarehousebills,
  2098. } from "@/api/warehouseBusiness/warehouseInStock";
  2099. import { listCorps } from "@/api/basicdata/corps";
  2100. import { listFees } from "@/api/basicdata/fees";
  2101. import { listWarehouse } from "@/api/basicdata/warehouse";
  2102. import { listArea } from "@/api/basicdata/area";
  2103. import { listGoods } from "@/api/basicdata/goods";
  2104. import { listUser, queryUserVal } from "@/api/system/user";
  2105. import UploadFile from "@/components/Uploadfile";
  2106. export default {
  2107. name: "Warehousebills",
  2108. components: {
  2109. UploadFile,
  2110. },
  2111. data() {
  2112. return {
  2113. // 修改查看状态
  2114. browseStatus: false,
  2115. detailsHidden: false,
  2116. warehousingagreement: false,
  2117. formBrowseStatus: false,
  2118. fTruckno: '',
  2119. fBsdate: '',
  2120. fCntrtype: '',
  2121. fGoodsids: '',
  2122. fPlannetweight: "",
  2123. fPlanvolumn: "",
  2124. fPlanqty: "",
  2125. fFeeUnitid: "",
  2126. fFeeUnitids: "",
  2127. fGrossweight: "",
  2128. fid:null,
  2129. fCntqty: "",
  2130. fNetweight: "",
  2131. fQty: "",
  2132. fPlangrossweight: 0,
  2133. // 遮罩层
  2134. loading: true,
  2135. // 选中数组
  2136. ids: [],
  2137. Collectionoptionss: [],
  2138. userVal: {
  2139. userName: null,
  2140. nickName: null,
  2141. deptId: null,
  2142. },
  2143. queryForm: {},
  2144. // 新增用户对话框
  2145. editDialogVisible_s: false,
  2146. editDialogVisible_ss: false,
  2147. editDialogVisible_sss: false,
  2148. editDialogClosed_ss: false,
  2149. dataList: [],
  2150. warehouseCrList: [],
  2151. warehouseDrList: [],
  2152. Pledgebank: [],
  2153. relevantAttachments: [],
  2154. // 非单个禁用
  2155. single: true,
  2156. // 非多个禁用
  2157. multiple: true,
  2158. // 显示搜索条件
  2159. showSearch: true,
  2160. // 总条数
  2161. total: 0,
  2162. // 仓库主(出入库)表格数据
  2163. warehousebillsList: [],
  2164. // 弹出层标题
  2165. title: "",
  2166. // 是否显示弹出层
  2167. open: false,
  2168. // 货权方(客户数据)
  2169. fMblnoOptions: [],
  2170. // 货权方(客户数据)
  2171. // 客户名称
  2172. KHblnoOptions: [],
  2173. // 仓储费协议
  2174. whgenlegList: [],
  2175. whgenlegTotal: 0,
  2176. // 库存明细入账数组
  2177. dataListSelection: [],
  2178. fSbuOptions: [],
  2179. // 操作员
  2180. userOptions: [],
  2181. // 操作员
  2182. goodsOptions: [],
  2183. // 制单部门
  2184. deptOptions: [],
  2185. // 仓库(仓库数据)
  2186. warehouseOptions: [],
  2187. kqhouseOptions: [],
  2188. // 贸易方式(数据字典),对应t_trademodels 字典
  2189. fTrademodeidOptions: [],
  2190. // 计费单位(数据字典),下拉选择毛重或净重字典
  2191. fFeetunitOptions: [],
  2192. // 结算方式(数据字典),下拉选择字典
  2193. fStltypeOptions: [],
  2194. // 是否过磅(数据字典)默认 F ,过磅T 否者F 下拉选择字典
  2195. fIfweighOptions: [],
  2196. // 是否质押(数据字典),默认 F ,质押T 否者F 下拉选择字典
  2197. fIfpledgeOptions: [],
  2198. // 是否破损(数据字典),默认F否则T字典
  2199. fIfdamageOptions: [],
  2200. // 单据类型(数据字典)SJRK字典
  2201. fBilltypeOptions: [],
  2202. // 状态(数据字典),N 入字典
  2203. fBillstatusOptions: [],
  2204. // 费用名称
  2205. fWbuOptions: [],
  2206. // 计价单位
  2207. jFeetunitOptions: [],
  2208. // 查询参数
  2209. queryParams: {
  2210. pageNum: 1,
  2211. pageSize: 10,
  2212. fBillno: null,
  2213. createBy: null,
  2214. createTime: null,
  2215. fCustomsdeclartion: null,
  2216. fOriginalbillno: null,
  2217. fDeptid: null,
  2218. timeInterval: null,
  2219. fBsdeptid: null,
  2220. fContacts: null,
  2221. fTel: null,
  2222. fCorpid: null,
  2223. fTocorpid: null,
  2224. fStltypeid: null,
  2225. fBscorpno: null,
  2226. fWarehouseid: null,
  2227. fStorekeeper: null,
  2228. fBsdate: null,
  2229. fPlanqty: null,
  2230. fPlangrossweight: null,
  2231. fPlannetweight: null,
  2232. fPlanvolumn: null,
  2233. fQty: null,
  2234. fGrossweight: null,
  2235. fNetweight: null,
  2236. fVolumn: null,
  2237. fTrademodeid: null,
  2238. fSbu: null,
  2239. fFeetunit: null,
  2240. fMblno: null,
  2241. fVslvoy: null,
  2242. fEta: null,
  2243. fCustomno: null,
  2244. fIfweigh: null,
  2245. fIfpledge: null,
  2246. fIfdamage: null,
  2247. fBankcorpid: null,
  2248. fBilltype: null,
  2249. fBillstatus: null,
  2250. fCreateby: null,
  2251. fCreatetime: null,
  2252. fGoodsid: null,
  2253. fCntrtype: null,
  2254. fCntqty: null,
  2255. },
  2256. // 库存总账参数
  2257. whgenlegParams: {
  2258. pageNum: 1,
  2259. pageSize: 10,
  2260. fMblno: null,
  2261. fCorpid: null,
  2262. fWarehouseid: null,
  2263. },
  2264. // 表单参数
  2265. form: {
  2266. fItemsStatus: null
  2267. },
  2268. // 表单校验
  2269. rules: {
  2270. fDeptid: [
  2271. { required: true, message: " ", trigger: "blur" },
  2272. ],
  2273. fMblno: [{ required: true, message: " ", trigger: "blur" }],
  2274. fBsdeptid: [
  2275. { required: true, message: " ", trigger: "blur" },
  2276. ],
  2277. fCorpid: [
  2278. {
  2279. required: true,
  2280. message: " ",
  2281. trigger: "blur",
  2282. },
  2283. ],
  2284. fMarks: [
  2285. { required: true, message: " ", trigger: "blur" },
  2286. ],
  2287. fBsdate: [
  2288. { required: true, message: " ", trigger: "blur" },
  2289. ],
  2290. fTrademodeid: [
  2291. { required: true, message: " ", trigger: "blur" },
  2292. ],
  2293. fSbu: [{ required: true, message: " ", trigger: "blur" }],
  2294. fStorekeeper: {
  2295. required: true,
  2296. message: " ",
  2297. trigger: "blur",
  2298. },
  2299. fWarehouseid: [
  2300. { required: true, message: " ", trigger: "blur" },
  2301. ],
  2302. fbillingway: [
  2303. {
  2304. required: true,
  2305. message: " ",
  2306. trigger: "blur",
  2307. },
  2308. ],
  2309. fTocorpid: [
  2310. {
  2311. required: true,
  2312. message:
  2313. " ",
  2314. trigger: "blur",
  2315. },
  2316. ],
  2317. },
  2318. };
  2319. },
  2320. created() {
  2321. this.getList();
  2322. this.getDicts("data_trademodes").then((response) => {
  2323. this.fTrademodeidOptions = response.data;
  2324. });
  2325. this.getDicts("data_unitfees").then((response) => {
  2326. this.fFeetunitOptions = response.data;
  2327. this.jFeetunitOptions = JSON.parse(JSON.stringify(response.data));
  2328. });
  2329. this.getDicts("data_stltype_type").then((response) => {
  2330. this.fStltypeOptions = response.data;
  2331. });
  2332. this.getDicts("data_ifweigh_status").then((response) => {
  2333. this.fIfweighOptions = response.data;
  2334. console.log(this.fIfweighOptions)
  2335. });
  2336. this.getDicts("data_ifpledge_status").then((response) => {
  2337. this.fIfpledgeOptions = response.data;
  2338. });
  2339. this.getDicts("data_ifdamage_status").then((response) => {
  2340. this.fIfdamageOptions = response.data;
  2341. });
  2342. this.getDicts("data_billtype_type").then((response) => {
  2343. this.fBilltypeOptions = response.data;
  2344. });
  2345. this.getDicts("sys_common_status").then((response) => {
  2346. this.fBillstatusOptions = response.data;
  2347. });
  2348. },
  2349. methods: {
  2350. // 上传成功返回数据
  2351. showFile(row) {
  2352. // this.$set(this.relevantAttachments[0], 'fName', row.fileName)
  2353. this.$set(this.relevantAttachments[0], "fUrl", row.url);
  2354. },
  2355. printSomething() {
  2356. // 此处的style即为打印时的样式
  2357. const style =
  2358. "@media print { .print-div{ padding:8px;background-color:#cccccc;line-height:12px } .red{ color:#f00} .green{color:green} td{text-align: center}}";
  2359. print({
  2360. printable: "print_area",
  2361. type: "html",
  2362. style: style, // 亦可使用引入的外部css;
  2363. scanStyles: false,
  2364. });
  2365. },
  2366. // 新增附件上传
  2367. addRelevt() {
  2368. this.relevantAttachments.push({
  2369. fUrl: null,
  2370. fName: null,
  2371. createBy: this.queryParams.createBy,
  2372. createTime: Date.parse(new Date()),
  2373. });
  2374. },
  2375. // 新增仓储协议
  2376. addAgreement () {
  2377. this.whgenlegList = [];
  2378. this.dialogWhgenlegList = [];
  2379. this.whgenlegTotal = 0;
  2380. this.warehousingagreement = true;
  2381. this.getWhgenlegList();
  2382. },
  2383. // 新增list
  2384. addRelevant() {
  2385. let time = null;
  2386. if (this.form.fBsdate) {
  2387. time = this.form.fBsdate;
  2388. }
  2389. this.dataList.push({
  2390. fBsdate: time,
  2391. fGoodsid: null,
  2392. fCntrtype: null,
  2393. fCntqty: 1,
  2394. fPlangrossweight: 0,
  2395. fPlannetweight: 0,
  2396. fNetweight: 0,
  2397. fPlanvolumn: 0,
  2398. fPlanqty: 0,
  2399. fGrossweight: 0,
  2400. fQty: 0,
  2401. fPackagespecs: null,
  2402. fWarehouselocid: null,
  2403. fBoxno: null,
  2404. fGoodsval: null,
  2405. fTruckno: null,
  2406. remark: null,
  2407. });
  2408. },
  2409. // 收货单打印界面
  2410. showEditDialog_s() {
  2411. if(this.Printinglist.length>0) {
  2412. for(let aorp in this.Printinglist){
  2413. var date = new Date(this.Printinglist[aorp].fBsdate)
  2414. var Y = date.getFullYear() + '-'
  2415. var M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'
  2416. var D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '
  2417. this.$set(this.Printinglist[aorp], 'fBsdate', Y + M + D)
  2418. }
  2419. this.editDialogVisible_s = true;
  2420. for(let corp in this.fMblnoOptions){
  2421. if(this.form.fCorpid === this.fMblnoOptions[corp].fId) {
  2422. this.$set(this.form, "fCorpid", this.fMblnoOptions[corp].fName);
  2423. }
  2424. }
  2425. for(let sorp in this.warehouseOptions){
  2426. console.log(this.form.fWarehouseid)
  2427. if(this.form.fWarehouseid === this.warehouseOptions[sorp].fId) {
  2428. this.$set(this.form, "fWarehouseid", this.warehouseOptions[sorp].fName);
  2429. }
  2430. }
  2431. }else {
  2432. this.$message.error("请选择需要打印的明细!");
  2433. }
  2434. },
  2435. showEditDialog_ss() {
  2436. if(this.dataListSelection.length>0) {
  2437. this.editDialogVisible_ss = true;
  2438. }else {
  2439. this.$message.error("请选择需要打印的明细!");
  2440. }
  2441. },
  2442. showEditDialog_sss() {
  2443. if(this.Printinglist.length>0) {
  2444. this.editDialogVisible_sss = true;
  2445. }else {
  2446. this.$message.error("请选择需要打印的明细!");
  2447. }
  2448. },
  2449. // 收款信息
  2450. addCollection() {
  2451. this.warehouseDrList.push({
  2452. fCorpid: null,
  2453. fFeeid: null,
  2454. fFeeUnitid: null,
  2455. fQty: null,
  2456. fUnitprice: null,
  2457. fAmount: null,
  2458. fCurrency: "RMB",
  2459. fExrate: "1",
  2460. fCxrate: null,
  2461. fRate: null,
  2462. remarks: null,
  2463. });
  2464. },
  2465. addpayment() {
  2466. this.warehouseCrList.push({
  2467. fCorpid: null,
  2468. fFeeid: null,
  2469. fFeeUnitid: null,
  2470. fQty: null,
  2471. fUnitprice: null,
  2472. fAmount: null,
  2473. fCurrency: 'RMB',
  2474. fExrate: "1",
  2475. fCxrate: null,
  2476. fRate: null,
  2477. remarks: null,
  2478. });
  2479. },
  2480. queryUser() {
  2481. queryUserVal().then((response) => {
  2482. console.log(response)
  2483. if (response.user !== null) {
  2484. this.userVal = response.user;
  2485. this.$set(this.form, "fDeptid", this.userVal.deptId);
  2486. this.$set(this.form, "createBy", this.userVal.userName);
  2487. this.$set(this.form, "fIfdamage", "1");
  2488. this.$set(this.form, "fIfweigh", "1");
  2489. this.$set(this.form, "fTrademodeid", "1");
  2490. // this.$set(this.relevantAttachments, "opUserName", this.userVal.userName);
  2491. this.$set(this.form, "createTime", Date.parse(new Date()));
  2492. }
  2493. if (response.dept !== null) {
  2494. this.deptOptions = [];
  2495. this.deptOptions.push(response.dept);
  2496. }
  2497. });
  2498. },
  2499. /** 查询仓库主(出入库)列表 */
  2500. getList() {
  2501. this.loading = true;
  2502. listWarehousebills(this.queryParams).then((response) => {
  2503. this.warehousebillsList = response.rows;
  2504. this.total = response.total;
  2505. this.loading = false;
  2506. });
  2507. },
  2508. // 查询仓储费信息
  2509. getWhgenlegList() {
  2510. },
  2511. // 导入仓储费协议
  2512. whgenlegData() {
  2513. },
  2514. // 贸易方式(数据字典),对���t_trademodels 字典翻译
  2515. fTrademodeidFormat(row, column) {
  2516. return this.selectDictLabel(this.fTrademodeidOptions, row.fTrademodeid);
  2517. },
  2518. // 计费单位(数据字典),下拉选择毛重或净重字典翻译
  2519. fFeetunitFormat(row, column) {
  2520. return this.selectDictLabel(this.fFeetunitOptions, row.fFeetunit);
  2521. },
  2522. // 是否过磅(数据字典)默认 F ,过磅T 否者F 下拉选择字典翻译
  2523. fIfweighFormat(row, column) {
  2524. return this.selectDictLabel(this.fIfweighOptions, row.fIfweigh);
  2525. },
  2526. // 编号字典翻译
  2527. fStltypeidFormat(row, column) {
  2528. return this.selectDictLabel(this.fStltypeOptions, row.fStltypeid);
  2529. },
  2530. // 是否质押(数据字典),默认 F ,质押T 否者F 下拉选择字典翻译
  2531. fIfpledgeFormat(row, column) {
  2532. return this.selectDictLabel(this.fIfpledgeOptions, row.fIfpledge);
  2533. },
  2534. // 是否破损(数据字典),默认F否则T字典翻译
  2535. fIfdamageFormat(row, column) {
  2536. return this.selectDictLabel(this.fIfdamageOptions, row.fIfdamage);
  2537. },
  2538. // 单据类型(数据字典)SJRK字典翻译
  2539. fBilltypeFormat(row, column) {
  2540. return this.selectDictLabel(this.fBilltypeOptions, row.fBilltype);
  2541. },
  2542. // 状态(数据字典),N 入字典翻译
  2543. fBillstatusFormat(row, column) {
  2544. return this.selectDictLabel(this.fBillstatusOptions, row.fBillstatus);
  2545. },
  2546. // 取消按钮
  2547. cancel() {
  2548. this.open = false;
  2549. this.reset();
  2550. },
  2551. // 表单重置
  2552. reset() {
  2553. this.form = {
  2554. fId: null,
  2555. fBillno: null,
  2556. fCustomsdeclartion: null,
  2557. fOriginalbillno: null,
  2558. fDeptid: null,
  2559. fBsdeptid: null,
  2560. fContacts: null,
  2561. fTel: null,
  2562. fCorpid: null,
  2563. fTocorpid: null,
  2564. fStltypeid: null,
  2565. fBscorpno: null,
  2566. fWarehouseid: null,
  2567. fStorekeeper: null,
  2568. fBsdate: null,
  2569. fPlanqty: null,
  2570. fPlangrossweight: null,
  2571. fPlannetweight: null,
  2572. fPlanvolumn: null,
  2573. fQty: null,
  2574. fGrossweight: null,
  2575. fNetweight: null,
  2576. fVolumn: null,
  2577. fTrademodeid: null,
  2578. fSbu: null,
  2579. fFeetunit: null,
  2580. fMblno: null,
  2581. fVslvoy: null,
  2582. fEta: null,
  2583. fCustomno: null,
  2584. fIfweigh: null,
  2585. fIfpledge: null,
  2586. fIfdamage: null,
  2587. fBankcorpid: null,
  2588. fBilltype: null,
  2589. fBillstatus: null,
  2590. delFlag: null,
  2591. createBy: null,
  2592. createTime: null,
  2593. updateBy: null,
  2594. updateTime: null,
  2595. remark: null,
  2596. fCreateby: null,
  2597. fCreatetime: null,
  2598. fGoodsid: null,
  2599. fCntrtype: null,
  2600. fCntqty: null,
  2601. };
  2602. this.fMblnoOptions = [];
  2603. this.userOptions = [];
  2604. this.warehouseOptions = [];
  2605. this.fSbuOptions = [];
  2606. this.goodsOptions = [];
  2607. this.kqhouseOptions = [];
  2608. this.relevantAttachments = [];
  2609. this.KHblnoOptions = [];
  2610. this.fWbuOptions = [];
  2611. this.resetForm("form");
  2612. },
  2613. /** 搜索按钮操作 */
  2614. handleQuery() {
  2615. this.queryParams.pageNum = 1;
  2616. this.getList();
  2617. },
  2618. /** 重置按钮操作 */
  2619. resetQuery() {
  2620. this.resetForm("queryForm");
  2621. this.handleQuery();
  2622. },
  2623. // 多选框选中数据
  2624. handleSelectionChange(selection) {
  2625. console.log(selection);
  2626. this.ids = selection.map((item) => item.fId);
  2627. this.single = selection.length !== 1;
  2628. this.multiple = !selection.length;
  2629. },
  2630. // 库存明细多选
  2631. Selectinventory(selection) {
  2632. this.dataListSelection = []
  2633. if (!selection || selection.length === 0) {
  2634. return false
  2635. } else {
  2636. for (let se in selection) {
  2637. if (!selection[se].fBillstatus || selection[se].fBillstatus !== '6') {
  2638. this.dataListSelection.push(selection[se]);
  2639. }
  2640. }
  2641. if (this.dataListSelection.length > 0) {
  2642. this.fTruckno = selection[0].fTruckno;
  2643. this.fCntrtype = selection[0].fCntrtype;
  2644. this.fGoodsids = selection[0].fGoodsids;
  2645. var date = new Date(selection[0].fBsdate)
  2646. var Y = date.getFullYear() + '-'
  2647. var M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-'
  2648. var D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' '
  2649. this.fBsdate = Y + M + D;
  2650. }
  2651. }
  2652. },
  2653. // 收款选择
  2654. Collectionoptions(selection) {
  2655. console.log(selection)
  2656. console.log("666")
  2657. this.Collectionoptionss = selection
  2658. },
  2659. // 收款删除
  2660. deleteRow(row) {
  2661. console.log("$")
  2662. row.splice(this.Collectionoptionss);
  2663. },
  2664. deleteRoww(row) {
  2665. },
  2666. // 付款选择
  2667. Paymentoptions(selection) {
  2668. console.log(selection)
  2669. },
  2670. /** 新增按钮操作 */
  2671. handleAdd(status) {
  2672. this.browseStatus = status;
  2673. this.reset();
  2674. this.queryUser();
  2675. this.open = true;
  2676. this.detailsHidden = false;
  2677. this.dataList = [];
  2678. this.warehouseCrList = [];
  2679. this.warehouseDrList = [];
  2680. this.relevantAttachments = [];
  2681. this.title = "入库单";
  2682. },
  2683. /** 修改按钮操作 */
  2684. handleUpdate(row, status) {
  2685. this.browseStatus = status;
  2686. this.reset();
  2687. this.detailsHidden = false;
  2688. const fId = row.fId || this.ids;
  2689. getWarehousebills(fId).then((response) => {
  2690. if (response.data.warehousebills) {
  2691. this.form = response.data.warehousebills;
  2692. if (this.form.fItemsStatus !== '1') {
  2693. this.formBrowseStatus = true
  2694. }
  2695. }
  2696. if (response.data.corps) {
  2697. this.fMblnoOptions = response.data.corps;
  2698. this.KHblnoOptions = response.data.corps;
  2699. this.fSbuOptions = response.data.corps;
  2700. }
  2701. if (response.data.feesList) {
  2702. this.fWbuOptions = response.data.feesList;
  2703. }
  2704. if (response.data.warehouse) {
  2705. this.warehouseOptions = response.data.warehouse;
  2706. }
  2707. if (response.data.warehouseBillsItem) {
  2708. this.dataList = response.data.warehouseBillsItem;
  2709. }
  2710. if (response.data.enclosures) {
  2711. this.relevantAttachments = response.data.enclosures;
  2712. }
  2713. this.$set(this.form, "fStltypeid", this.form.fStltypeid + "");
  2714. this.$set(this.form, "fEta", Date.parse(this.form.fEta));
  2715. this.$set(this.form, "createTime", Date.parse(this.form.createTime));
  2716. this.$set(this.form, "fTrademodeid", this.form.fTrademodeid + "");
  2717. for (let list in this.dataList) {
  2718. this.$set(
  2719. this.dataList[list],
  2720. "fBsdate",
  2721. Date.parse(this.dataList[list].fBsdate)
  2722. );
  2723. }
  2724. this.goodsOptions = response.data.goodsList;
  2725. this.kqhouseOptions = response.data.warehouseAreas;
  2726. this.warehouseDrList = response.data.warehousebillsfeesDr;
  2727. for (let dr in this.warehouseDrList) {
  2728. this.$set(
  2729. this.warehouseDrList[dr],
  2730. "fFeeUnitid",
  2731. this.warehouseDrList[dr].fFeeUnitid + ""
  2732. );
  2733. }
  2734. this.warehouseCrList = response.data.warehousebillsfeesCr;
  2735. for (let cr in this.warehouseCrList) {
  2736. this.$set(
  2737. this.warehouseCrList[cr],
  2738. "fFeeUnitid",
  2739. this.warehouseCrList[cr].fFeeUnitid + ""
  2740. );
  2741. }
  2742. this.userOptions = response.data.sysUser;
  2743. this.$set(this.form, "fBsdate", Date.parse(this.form.fBsdate));
  2744. this.open = true;
  2745. this.title = "修改仓入库";
  2746. });
  2747. },
  2748. // 库存明细多选框结果
  2749. dataListChange (row) {
  2750. console.log(JSON.stringify(row))
  2751. this.dataListSelection = row
  2752. },
  2753. // 库存总账多选框
  2754. whgenlegSelectionChange(selection) {
  2755. this.dialogWhgenlegList = selection;
  2756. },
  2757. // 合计
  2758. getSummaries(param) {
  2759. console.log(param);
  2760. const { columns, data } = param;
  2761. const sums = [];
  2762. var values = [];
  2763. columns.forEach((column, index) => {
  2764. if (index === 0) {
  2765. sums[index] = "";
  2766. return;
  2767. }
  2768. if (column.property === "fPlangrossweight") {
  2769. values = data.map((item) => Number(item["fPlangrossweight"]));
  2770. }
  2771. if (column.property === "fPlannetweight") {
  2772. values = data.map((item) => Number(item["fPlannetweight"]));
  2773. }
  2774. if (column.property === "fPlanvolumn") {
  2775. values = data.map((item) => Number(item["fPlanvolumn"]));
  2776. }
  2777. if (column.property === "fPlanqty") {
  2778. values = data.map((item) => Number(item["fPlanqty"]));
  2779. }
  2780. if (column.property === "fGrossweight") {
  2781. values = data.map((item) => Number(item["fGrossweight"]));
  2782. }
  2783. if (column.property === "fNetweight") {
  2784. values = data.map((item) => Number(item["fNetweight"]));
  2785. }
  2786. if (column.property === "fQty") {
  2787. values = data.map((item) => Number(item["fQty"]));
  2788. }
  2789. if (column.property === "fCntqty") {
  2790. values = data.map((item) => Number(item["fCntqty"]));
  2791. } // const values = data.map(item => Number(item[column.property]))
  2792. if (
  2793. column.property === "fPlangrossweight" ||
  2794. column.property === "fPlannetweight" ||
  2795. column.property === "fPlanvolumn" ||
  2796. column.property === "fPlanqty" ||
  2797. column.property === "fGrossweight" ||
  2798. column.property === "fNetweight" ||
  2799. column.property === "fQty" ||
  2800. column.property === "fCntqty"
  2801. ) {
  2802. sums[index] = values.reduce((prev, curr) => {
  2803. const value = Number(curr);
  2804. if (!isNaN(value)) {
  2805. if (column.property === "fPlangrossweight") {
  2806. this.fPlangrossweight = prev + curr;
  2807. }
  2808. if (column.property === "fPlannetweight") {
  2809. this.fPlannetweight = prev + curr;
  2810. }
  2811. if (column.property === "fPlanvolumn") {
  2812. this.fPlanvolumn = prev + curr;
  2813. }
  2814. if (column.property === "fPlanqty") {
  2815. this.fPlanqty = prev + curr;
  2816. }
  2817. if (column.property === "fGrossweight") {
  2818. this.fGrossweight = prev + curr;
  2819. }
  2820. if (column.property === "fNetweight") {
  2821. this.fNetweight = prev + curr;
  2822. }
  2823. if (column.property === "fQty") {
  2824. this.fQty = prev + curr;
  2825. }
  2826. if (column.property === "fCntqty") {
  2827. this.fCntqty = prev + curr;
  2828. }
  2829. return prev + curr;
  2830. } else {
  2831. return prev;
  2832. }
  2833. }, 0); // sums[index]
  2834. }
  2835. });
  2836. this.sums = sums;
  2837. return sums;
  2838. },
  2839. // 付款合计
  2840. warehouseDrSummaries(param) {
  2841. const { columns, data } = param;
  2842. const sums = [];
  2843. columns.forEach((column, index) => {
  2844. if (index === 0) {
  2845. sums[index] = "合计";
  2846. return;
  2847. }
  2848. const values = data.map((item) => Number(item[column.property]));
  2849. if (
  2850. column.property === "fUnitprice" ||
  2851. column.property === "fAmount" ||
  2852. column.property === "fQty" ||
  2853. column.property === "fQty"
  2854. ) {
  2855. sums[index] = values.reduce((prev, curr) => {
  2856. const value = Number(curr);
  2857. if (!isNaN(value)) {
  2858. return prev + curr;
  2859. } else {
  2860. return prev;
  2861. }
  2862. }, 0); // sums[index]
  2863. }
  2864. });
  2865. return sums;
  2866. },
  2867. // 数量计算
  2868. changeContractAmt(row) {
  2869. let fQty = 0;
  2870. let fUnitprice = 0;
  2871. if (row.fUnitprice) {
  2872. fUnitprice = row.fUnitprice;
  2873. }
  2874. if (row.fQty) {
  2875. fQty = row.fQty;
  2876. }
  2877. this.$set(row, "fAmount", Number(fUnitprice) * Number(fQty)).toFixed(2);
  2878. },
  2879. changefBsdate(row) {
  2880. if (this.dataList.length > 0) {
  2881. for (var i = 0; i < this.dataList.length; i++) {
  2882. this.$set(this.dataList[i], "fBsdate", row);
  2883. }
  2884. }
  2885. },
  2886. changefCorpid(row) {
  2887. this.$set(row, "fSbu", row.fCorpid);
  2888. },
  2889. // 变更计价单位
  2890. changeFeeUnit(row) {
  2891. console.log(this.fCntqty);
  2892. console.log(row);
  2893. if (!row.fFeeUnitid) {
  2894. return false;
  2895. }
  2896. if (row.fFeeUnitid === "0") {
  2897. this.$set(row, "fQty", this.fCntqty);
  2898. } else if (row.fFeeUnitid === "1") {
  2899. this.$set(row, "fQty", this.fGrossweight);
  2900. }
  2901. if (row.fUnitprice) {
  2902. this.$set(
  2903. row,
  2904. "fAmount",
  2905. parseFloat(Number(row.fUnitprice) * Number(row.fQty)).toFixed(2)
  2906. );
  2907. }
  2908. },
  2909. changefBsdate(row) {
  2910. if (this.dataList.length > 0) {
  2911. for (var i = 0; i < this.dataList.length; i++) {
  2912. this.$set(this.dataList[i], "fBsdate", row);
  2913. }
  2914. }
  2915. },
  2916. // 入账
  2917. creditClick () {
  2918. this.$refs["form"].validate((valid) => {
  2919. for (let warehouseCr in this.dataListSelection) {
  2920. if (!this.dataListSelection[warehouseCr].fWarehouselocid) {
  2921. this.$message.error("请选择库区");
  2922. return false;
  2923. }
  2924. if (!this.dataListSelection[warehouseCr].fGrossweight) {
  2925. this.$message.error("请选择入库毛重");
  2926. return false;
  2927. }
  2928. if (!this.dataListSelection[warehouseCr].fNetweight) {
  2929. this.$message.error("请选择入库净重");
  2930. return false;
  2931. }
  2932. if (!this.dataListSelection[warehouseCr].fQty) {
  2933. this.$message.error("入库件数");
  2934. return false;
  2935. }
  2936. if (!this.dataListSelection[warehouseCr].fPackagespecs) {
  2937. this.$message.error("入库件数");
  2938. return false;
  2939. }
  2940. }
  2941. if (valid) {
  2942. let formData = new window.FormData();
  2943. formData.append("warehouseBills", JSON.stringify(this.form))
  2944. formData.append("warehousebillsitems", JSON.stringify(this.dataListSelection))
  2945. formData.append("whgenleg", JSON.stringify(this.relevantAttachments))
  2946. addWhgenleg(formData).then((response) => {
  2947. this.fid = response.data;
  2948. this.formBrowseStatus = true
  2949. this.msgSuccess("入账成功");
  2950. this.$refs.table.clearSelection();
  2951. for (let li in this.dataListSelection) {
  2952. for (let i in this.dataList) {
  2953. let fQty = this.dataList[i].fQty === this.dataListSelection[li].fQty;
  2954. let fBsdate = this.dataList[i].fBsdate === this.dataListSelection[li].fBsdate;
  2955. let fGoodsid = this.dataList[i].fGoodsid === this.dataListSelection[li].fGoodsid;
  2956. let fcntrtype = this.dataList[i].fcntrtype === this.dataListSelection[li].fcntrtype;
  2957. let fNetweight = this.dataList[i].fNetweight === this.dataListSelection[li].fNetweight;
  2958. let fGrossweight = this.dataList[i].fGrossweight === this.dataListSelection[li].fGrossweight;
  2959. if (fBsdate && fGoodsid && fcntrtype && fGrossweight && fNetweight && fQty) {
  2960. this.$set(this.dataList[i], 'fBillstatus', '6')
  2961. }
  2962. }
  2963. }
  2964. })
  2965. }
  2966. })
  2967. },
  2968. /** 提交按钮 */
  2969. submitForm(status) {
  2970. this.$refs["form"].validate((valid) => {
  2971. if (status !== 2) {
  2972. if (this.dataList.length === 0) {
  2973. this.$message.error("请新增库存明细!");
  2974. return false;
  2975. }
  2976. if (this.warehouseDrList.length === 0) {
  2977. this.$message.error("请新增收款信息!");
  2978. return false;
  2979. }
  2980. if (this.warehouseCrList.length === 0) {
  2981. this.$message.error("请新增付款信息!");
  2982. return false;
  2983. }
  2984. for (let list in this.dataList) {
  2985. if (!this.dataList[list].fGoodsid) {
  2986. this.$message.error("请输入品名!");
  2987. return false;
  2988. }
  2989. if (!this.dataList[list].fWarehouselocid) {
  2990. this.$message.error("请输入库区!");
  2991. return false;
  2992. }
  2993. }
  2994. // for (let relevant in this.relevantAttachments) {
  2995. // if (!this.relevantAttachments[relevant].fName) {
  2996. // this.$message.error("请输入附件名称!");
  2997. // return false;
  2998. // }
  2999. // }
  3000. for (let warehouseDr in this.warehouseDrList) {
  3001. if (!this.warehouseDrList[warehouseDr].fCorpid) {
  3002. this.$message.error("请选择客户名称");
  3003. return false;
  3004. }
  3005. if (!this.warehouseDrList[warehouseDr].fFeeid) {
  3006. this.$message.error("请选择费用名称");
  3007. return false;
  3008. }
  3009. if (!this.warehouseDrList[warehouseDr]) {
  3010. this.$message.error("请选择收款计费单位");
  3011. return false;
  3012. }
  3013. }
  3014. for (let warehouseCr in this.warehouseCrList) {
  3015. if (!this.warehouseCrList[warehouseCr].fCorpid) {
  3016. this.$message.error("请选择客户名称");
  3017. return false;
  3018. }
  3019. if (!this.warehouseCrList[warehouseCr].fFeeid) {
  3020. this.$message.error("请选择费用名称");
  3021. return false;
  3022. }
  3023. if (!this.warehouseCrList[warehouseCr].fFeeUnitid) {
  3024. this.$message.error("请选择付款计费单位");
  3025. return false;
  3026. }
  3027. }
  3028. }
  3029. if (valid) {
  3030. this.form.fBillstatus = status;
  3031. this.form.fNetweight = this.fNetweight;
  3032. this.form.fPlangrossweight = this.fPlangrossweight;
  3033. this.form.fPlannetweight = this.fPlannetweight;
  3034. this.form.fPlanvolumn = this.fPlanvolumn;
  3035. this.form.fPlanqty = this.fPlanqty;
  3036. this.form.fGrossweight = this.fGrossweight;
  3037. this.form.fQty = this.fQty;
  3038. if(!this.form.fId) {
  3039. this.form.fId = this.fid;
  3040. }
  3041. let formData = new window.FormData();
  3042. // 附件数据
  3043. formData.append("tWarehouseBills", JSON.stringify(this.form));
  3044. // 库存明细
  3045. formData.append("tWarehousebillsitems", JSON.stringify(this.dataList));
  3046. // 附件数据
  3047. formData.append("tWhgenleg",JSON.stringify(this.relevantAttachments));
  3048. // 费用明细付款
  3049. formData.append("tWarehousebillsfeesCr", JSON.stringify(this.warehouseCrList));
  3050. // 收款
  3051. formData.append("tWarehousebillsfeesDr", JSON.stringify(this.warehouseDrList));
  3052. addWarehousebills(formData).then((response) => {
  3053. this.msgSuccess("提交成功");
  3054. this.open = false;
  3055. this.getList();
  3056. });
  3057. }
  3058. });
  3059. },
  3060. /** 删除按钮操作 */
  3061. handleDelete(row) {
  3062. const fIds = row.fId || this.ids;
  3063. this.$confirm(
  3064. '是否确认删除仓库主(出入库)编号为"' + fIds + '"的数据项?',
  3065. "警告",
  3066. {
  3067. confirmButtonText: "确定",
  3068. cancelButtonText: "取消",
  3069. type: "warning",
  3070. }
  3071. )
  3072. .then(function () {
  3073. return delWarehousebills(fIds);
  3074. })
  3075. .then(() => {
  3076. this.getList();
  3077. this.msgSuccess("删除成功");
  3078. });
  3079. },
  3080. /** 导出按钮操作 */
  3081. handleExport() {
  3082. const queryParams = this.queryParams;
  3083. this.$confirm("是否确认导出所有仓库主(出入库)数据项?", "警告", {
  3084. confirmButtonText: "确定",
  3085. cancelButtonText: "取消",
  3086. type: "warning",
  3087. })
  3088. .then(function () {
  3089. return exportWarehousebills(queryParams);
  3090. })
  3091. .then((response) => {
  3092. this.download(response.msg);
  3093. });
  3094. },
  3095. deleteRow(index, rows) {
  3096. rows.splice(index, 1);
  3097. },
  3098. /* 远程模糊查询用户 */
  3099. corpsRemoteMethod(name) {
  3100. if (name == null || name === "") {
  3101. return false;
  3102. }
  3103. let queryParams = { pageNum: 1, pageSize: 10, fName: name, type: 1 };
  3104. listCorps(queryParams).then((response) => {
  3105. this.fMblnoOptions = response.rows;
  3106. this.KHblnoOptions = response.rows;
  3107. });
  3108. },
  3109. /* 远程模糊查询质押银行 */
  3110. corpsRemoteMethodd(name) {
  3111. if (name == null || name === "") {
  3112. return false;
  3113. }
  3114. let queryParams = { pageNum: 1, pageSize: 10, fName: name, type: 5 };
  3115. listCorps(queryParams).then((response) => {
  3116. this.Pledgebank = response.rows;
  3117. });
  3118. },
  3119. /* 远程模糊查询商品 */
  3120. goodsRemoteMethod(name) {
  3121. if (name == null || name === "") {
  3122. return false;
  3123. }
  3124. let queryParams = { pageNum: 1, pageSize: 10, fName: name };
  3125. listGoods(queryParams).then((response) => {
  3126. this.goodsOptions = response.rows;
  3127. });
  3128. },
  3129. // 远程模糊查询费用名称
  3130. fWRemoteMethod(name) {
  3131. if (name == null || name === "") {
  3132. return false;
  3133. }
  3134. let queryParams = { pageNum: 1, pageSize: 10, fName: name };
  3135. listFees(queryParams).then((response) => {
  3136. this.fWbuOptions = response.rows;
  3137. });
  3138. },
  3139. /* 远程模糊查询经营单位 */
  3140. fSbuRemoteMethod(name) {
  3141. if (name == null || name === "") {
  3142. return false;
  3143. }
  3144. let queryParams = { pageNum: 1, pageSize: 10, fName: name };
  3145. listCorps(queryParams).then((response) => {
  3146. this.fSbuOptions = response.rows;
  3147. });
  3148. },
  3149. /* 远程模糊查询仓库 */
  3150. warehouseRemoteMethod(name) {
  3151. if (name == null || name === "") {
  3152. return false;
  3153. }
  3154. let queryParams = { pageNum: 1, pageSize: 10, fName: name };
  3155. listWarehouse(queryParams).then((response) => {
  3156. this.warehouseOptions = response.rows;
  3157. });
  3158. },
  3159. /* 远程模糊查询库区 */
  3160. kqhouseRemoteMethod(name) {
  3161. if (name == null || name === "") {
  3162. return false;
  3163. }
  3164. if (!this.form.fWarehouseid) {
  3165. this.$message.error("请输入仓库!");
  3166. return false;
  3167. }
  3168. let queryParams = {
  3169. pageNum: 1,
  3170. pageSize: 10,
  3171. fWarehouseid: this.form.fWarehouseid,
  3172. fName: name,
  3173. };
  3174. listArea(queryParams).then((response) => {
  3175. this.kqhouseOptions = response.rows;
  3176. });
  3177. },
  3178. /* 远程模糊查询操作用户 */
  3179. userRemoteMethod(name) {
  3180. if (name == null || name === "") {
  3181. return false;
  3182. }
  3183. let queryParams = { pageNum: 1, pageSize: 10, userName: name };
  3184. listUser(queryParams).then((response) => {
  3185. this.userOptions = response.rows;
  3186. });
  3187. },
  3188. },
  3189. };
  3190. </script>
  3191. <style lang="scss">
  3192. .juzhong > th {
  3193. text-align: center;
  3194. }
  3195. .biaoge > tr > td {
  3196. height: 50px;
  3197. text-align: center;
  3198. border-right: 1px solid #dfe6ec !important;
  3199. order-bottom: 1px solid #dfe6ec !important;
  3200. border-bottom: 1px solid #dfe6ec !important;
  3201. }
  3202. .el-table thead th {
  3203. background: #1890ff;
  3204. color: #fff;
  3205. }
  3206. .upload-demo {
  3207. margin-left: 50px;
  3208. }
  3209. .el-form-item {
  3210. margin-bottom: 5px!important;
  3211. }
  3212. .el-form-item__label{
  3213. font-size: 12px!important;
  3214. }
  3215. </style>