makerfundApply.vue 51 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349
  1. <template>
  2. <!-- 创客资金申请表单 -->
  3. <div class="makerfundApply">
  4. <div class="vfpHeader">
  5. <div class="titleOne">创客资金申请</div>
  6. <el-button type="primary" @click="$router.back()">返回</el-button>
  7. </div>
  8. <hr>
  9. <!-- 项目名称、类型开始 -->
  10. <div class="Apply1">
  11. <div class="inpInterval">项目名称</div>
  12. <el-select v-model="selects.projectName" style="width: 30%;" placeholder="请选择">
  13. <el-option
  14. v-for="item in projectFilter"
  15. :key="item.id"
  16. :label="item.title"
  17. :value="item.id">
  18. </el-option>
  19. </el-select>
  20. </div>
  21. <div class="Apply1">
  22. <div class="inpInterval">项目类型</div>
  23. <el-select v-model="selects.projectType" placeholder="请选择">
  24. <el-option
  25. v-for="item in projectType"
  26. :key="item.id"
  27. :label="item.name"
  28. :value="item.name">
  29. </el-option>
  30. </el-select>
  31. </div>
  32. <!-- 项目名称、类型结束 -->
  33. <div class="tabTit">
  34. <div>
  35. <p>经费支出类别(单位:元)</p>
  36. </div>
  37. </div>
  38. <hr>
  39. <div class="moneyBlock" v-for="(item,index) in directFundBlock" :key="index"> <!-- 直接经费 -->
  40. <div class="howMoneyFlex">
  41. <div class="howMoney">
  42. <div class="inpInterval">直接经费</div>
  43. <el-select v-model="item.directFundData" @change="directFundDataSelectChange()" placeholder="请选择">
  44. <el-option
  45. v-for="item in item.directFundSelects"
  46. :key="item.value"
  47. :label="item.label"
  48. :value="item.value">
  49. </el-option>
  50. </el-select>
  51. </div>
  52. <div class="howMoney">
  53. <div class="inpInterval twoStyle">预算</div>
  54. <el-input v-model="item.budget" type="number" class="inputNumber howMoneyInp" placeholder="金额"></el-input>
  55. </div>
  56. <div class="howMoney">
  57. <div class="inpInterval twoStyle">已支付</div>
  58. <el-input v-model="item.usedFund" type="number" class="inputNumber howMoneyInp" placeholder="金额"></el-input>
  59. </div>
  60. <div class="howMoney">
  61. <div class="inpInterval twoStyle">本次申请</div>
  62. <el-input v-model="item.apply" type="number" class="inputNumber howMoneyInp" placeholder="金额"></el-input>
  63. </div>
  64. <div class="howMoney">
  65. <div class="inpInterval twoStyle">余额</div>
  66. <el-input disabled :value="item.budget - item.usedFund -item.apply" type="number" class="inputNumber howMoneyInp" placeholder="金额"></el-input>
  67. </div>
  68. <el-button v-show="index!=0" type="primary" style="font-size: 16px;height: 40px;line-height: 0;" @click="delDerData(index)">删除</el-button>
  69. </div>
  70. <div class="howMoney" >
  71. <div class="inpInterval" style="position: relative;top:-20px">事由</div>
  72. <el-input
  73. type="textarea"
  74. :rows="3"
  75. class="textArea"
  76. resize="none"
  77. style="width:800px"
  78. placeholder="请输入内容"
  79. v-model="item.reason">
  80. </el-input>
  81. </div>
  82. </div>
  83. <div>
  84. <div class="addMoneyBtn" @click="addDirectFund">
  85. <div class="jia">+</div>添加
  86. </div>
  87. </div>
  88. <div> <!-- 间接经费 -->
  89. <div class="moneyBlock" v-for="(item,i) in indirectFundBlock" :key="i">
  90. <div class="howMoneyFlex">
  91. <div class="howMoney">
  92. <div class="inpInterval">间接经费</div>
  93. <el-select v-model="item.indirectFundData" @change="indirectFundSelectChange" placeholder="请选择">
  94. <el-option
  95. v-for="item in item.indirectFundSelects"
  96. :key="item.value"
  97. :label="item.label"
  98. :value="item.value">
  99. </el-option>
  100. </el-select>
  101. </div>
  102. <div class="howMoney">
  103. <div class="inpInterval twoStyle">预算</div>
  104. <el-input v-model="item.budget" type="number" class="inputNumber howMoneyInp" placeholder="金额"></el-input>
  105. </div>
  106. <div class="howMoney">
  107. <div class="inpInterval twoStyle">已支付</div>
  108. <el-input v-model="item.usedFund" type="number" class="inputNumber howMoneyInp" placeholder="金额"></el-input>
  109. </div>
  110. <div class="howMoney">
  111. <div class="inpInterval twoStyle">本次申请</div>
  112. <el-input v-model="item.apply" type="number" class="inputNumber howMoneyInp" placeholder="金额"></el-input>
  113. </div>
  114. <div class="howMoney">
  115. <div class="inpInterval twoStyle">余额</div>
  116. <el-input disabled :value="item.budget - item.usedFund -item.apply" type="number" class="inputNumber howMoneyInp" placeholder="金额"></el-input>
  117. </div>
  118. <el-button v-show="i!=0" type="primary" style="font-size: 16px;height: 40px;line-height: 0;" @click="delInDerData(i)">删除</el-button>
  119. </div>
  120. <div class="howMoney">
  121. <div class="inpInterval" style="position: relative;top:-20px">事由</div>
  122. <el-input
  123. type="textarea"
  124. :rows="3"
  125. class="textArea"
  126. resize="none"
  127. style="width:800px"
  128. placeholder="请输入内容"
  129. v-model="item.reason">
  130. </el-input>
  131. </div>
  132. </div>
  133. </div>
  134. <div>
  135. <div class="addMoneyBtn" @click="addIndirectFund">
  136. <div class="jia">+</div>添加
  137. </div>
  138. </div>
  139. <!-- 其他经费 -->
  140. <div class="moneyBlock">
  141. <!-- <div class="howMoneyFlex">
  142. <div class="howMoney">
  143. <div class="inpInterval" >其他</div>
  144. <el-input v-model="residue.elseReason" placeholder="请输入内容"></el-input>
  145. </div>
  146. <div class="howMoney">
  147. <div class="inpInterval twoStyle">预算</div>
  148. <el-input v-model="residue.budget" type="number" class="inputNumber howMoneyInp" placeholder="金额"></el-input>
  149. </div>
  150. <div class="howMoney">
  151. <div class="inpInterval twoStyle">已支付</div>
  152. <el-input v-model="residue.usedFund" type="number" class="inputNumber howMoneyInp" placeholder="金额"></el-input>
  153. </div>
  154. <div class="howMoney">
  155. <div class="inpInterval twoStyle">余额</div>
  156. <el-input disabled :value="residue.budget - residue.usedFund" type="number" class="inputNumber howMoneyInp" placeholder="金额"></el-input>
  157. </div>
  158. </div> -->
  159. <div class="howMoney">
  160. <div class="inpInterval" style="position: relative;top:-20px">备注</div>
  161. <el-input
  162. type="textarea"
  163. :rows="3"
  164. resize="none"
  165. class="textArea"
  166. style="width:800px"
  167. placeholder="请输入内容"
  168. v-model="residue.reason">
  169. </el-input>
  170. </div>
  171. </div>
  172. <div> <!-- 附件上传 -->
  173. <div class="tabTit">
  174. <div><p>附件上传</p></div>
  175. </div>
  176. <hr>
  177. <el-progress v-show="progress.show" :percentage="progress.value" :format="ProgressFormat"></el-progress>
  178. <div style="display: flex;flex-wrap: wrap;width: 100%;margin-bottom: 45px;">
  179. <el-upload
  180. action="https://jsonplaceholder.typicode.com/posts/"
  181. list-type="picture-card"
  182. style="position: relative;margin-left: 10px;"
  183. disabled
  184. :on-remove="handleRemove">
  185. <BeUpload @getFile="getFile" :progress="progress" style="position: absolute;left: 0;width: 147px;height: 100%;opacity: 0;" class="uploadPic" :navName="'上传封面'" :accept="accept"></BeUpload>
  186. <i class="el-icon-plus"></i>
  187. </el-upload>
  188. <el-upload
  189. action="https://jsonplaceholder.typicode.com/posts/"
  190. list-type="picture-card"
  191. class="delUpload"
  192. style="position: relative;"
  193. v-show="file[0]"
  194. disabled
  195. v-for="(item,index) in this.file" :key="index"
  196. >
  197. <span class="delUploadBtnSty" @click="delUploadBtn(index)">×</span>
  198. <img style="position: absolute;left: -1px;top:-1px;width: 149px;height: 101%;border-radius: 5px;" :src="dialogImageUrl" alt="">
  199. <div style="position: absolute;left: -20%;bottom: -30px;width: 200px;height: 30px;color: #000;line-height: 30px;display: flex;justify-content: center;">{{ item.fileName }}</div>
  200. <!-- <img v-if="imageUrl" :src="imageUrl" class="avatar"> -->
  201. </el-upload>
  202. </div>
  203. </div>
  204. <div class="baseBtn">
  205. <div class="blockWidth">
  206. <el-button type="primary" @click="createFrom">生成表单</el-button>
  207. <el-button type="primary" @click="uploadData">提交</el-button>
  208. </div>
  209. </div>
  210. <!-- 提交对话框开始 -->
  211. <el-dialog
  212. title="提示"
  213. :visible.sync="submitHint"
  214. width="600px"
  215. class="projectApplicationfundAddDialog"
  216. :before-close="init">
  217. <div class="addDialogLogo">LOGO</div>
  218. <div class="deleteContent">确定提交?</div>
  219. <span slot="footer" class="dialog-footer">
  220. <el-button type="primary" @click="submitAll" class="AllDialogBtn">确认提交</el-button>
  221. <el-button @click="init" class="AllDialogBtn" size="small">取消</el-button>
  222. </span>
  223. </el-dialog>
  224. <!-- 提交对话框结束 -->
  225. <!-- 生成表单对话框开始 -->
  226. <el-dialog
  227. title="表单"
  228. :visible.sync="createFromDialog"
  229. width="60%"
  230. style="top: -150px;"
  231. class="createFromDialogSty"
  232. :before-close="init">
  233. <div class="addDialogLogo">LOGO</div>
  234. <div class="deleteContent">
  235. <table class="tableStyle" width="100%" border="1">
  236. <caption style="height: 40px;font-size: 22px;">学校创客专项资金使用申请表(单位:元)</caption>
  237. <caption style="height: 30px;text-align: left;">
  238. <div style="display: flex;">
  239. <div style="margin-right: 10px;margin-top: -5px;"> 项目类型:</div>
  240. <el-radio-group disabled v-model="selects.projectType">
  241. <el-radio label="创客空间">创客空间</el-radio>
  242. <el-radio label="创客实践室">创客实践室</el-radio>
  243. <el-radio label="个人创客">个人创客</el-radio>
  244. <el-radio label="创客活动">创客活动</el-radio>
  245. </el-radio-group>
  246. </div>
  247. </caption>
  248. <caption style="height: 30px;text-align: left;">项目名称:<span style="margin-left:30%;font-weight: bold;font-size: 16px;">{{ residue.PName }}</span></caption>
  249. <tr>
  250. <td>序号</td>
  251. <td>经济支出类别(A)</td>
  252. <td>预算</td>
  253. <td>已支付</td>
  254. <td>本次申请</td>
  255. <td>余额</td>
  256. <td style="width: 20%;">事由</td>
  257. </tr>
  258. <tr>
  259. <td>01</td>
  260. <td style="text-align: left;">一.经费支出</td>
  261. <td>{{ AllFund.budget }}</td>
  262. <td>{{ AllFund.expended }}</td>
  263. <td>{{ AllFund.application }}</td>
  264. <td>{{ AllFund.surplus }}</td>
  265. <td style="width: 20%;"></td>
  266. </tr>
  267. <tr>
  268. <td>02</td>
  269. <td style="text-align: left;">(一)直接费用</td>
  270. <td>{{ IndirectFunding.budget }}</td>
  271. <td>{{ IndirectFunding.expended }}</td>
  272. <td>{{IndirectFunding.application}}</td>
  273. <td>{{ IndirectFunding.surplus }}</td>
  274. <td style="width: 20%;"></td>
  275. </tr>
  276. <tr>
  277. <td>03</td>
  278. <td style="text-align: left;">小型仪器设备费</td>
  279. <td>{{ directData.facility==0?'':directData.facility }}</td>
  280. <td>{{ usedDirectData.facility==0?'':usedDirectData.facility }}</td>
  281. <td>{{ applicationDirectData.facility==0?'':applicationDirectData.facility }}</td>
  282. <td>{{ directData.facility-usedDirectData.facility-applicationDirectData.facility }}</td>
  283. <td style="width: 20%;">{{ directDataReason.reason }}</td>
  284. </tr>
  285. <tr>
  286. <td>04</td>
  287. <td style="text-align: left;">材料费</td>
  288. <td>{{ directData.cl==0?'':directData.cl }}</td>
  289. <td>{{ usedDirectData.cl==0?'':usedDirectData.cl }}</td>
  290. <td>{{ applicationDirectData.cl==0?'':applicationDirectData.cl }}</td>
  291. <td>{{ directData.cl-usedDirectData.cl-applicationDirectData.cl }}</td>
  292. <td style="width: 20%;">{{ directDataReason.reason1 }}</td>
  293. </tr>
  294. <tr>
  295. <td>05</td>
  296. <td style="text-align: left;">测试化验加工费</td>
  297. <td>{{ directData.jg==0?'':directData.jg }}</td>
  298. <td>{{ usedDirectData.jg==0?'':usedDirectData.jg }}</td>
  299. <td>{{ applicationDirectData.jg==0?'':applicationDirectData.jg }}</td>
  300. <td>{{ directData.jg-usedDirectData.jg-applicationDirectData.jg }}</td>
  301. <td style="width: 20%;">{{ directDataReason.reason2 }}</td>
  302. </tr>
  303. <tr>
  304. <td>06</td>
  305. <td style="text-align: left;">项目协作费</td>
  306. <td>{{ directData.xz==0?'':directData.xz }}</td>
  307. <td>{{ usedDirectData.xz==0?'':usedDirectData.xz }}</td>
  308. <td>{{ applicationDirectData.xz==0?'':applicationDirectData.xz }}</td>
  309. <td>{{ directData.xz-usedDirectData.xz-applicationDirectData.xz }}</td>
  310. <td style="width: 20%;">{{ directDataReason.reason3 }}</td>
  311. </tr>
  312. <tr>
  313. <td>07</td>
  314. <td style="text-align: left;">其他支出</td>
  315. <td>{{ directData.qt==0?'':directData.qt }}</td>
  316. <td>{{ usedDirectData.qt==0?'':usedDirectData.qt }}</td>
  317. <td>{{ applicationDirectData.qt==0?'':applicationDirectData.qt }}</td>
  318. <td>{{ directData.qt- usedDirectData.qt-applicationDirectData.qt}}</td>
  319. <td style="width: 20%;">{{ directDataReason.reason4 }}</td>
  320. </tr>
  321. <tr>
  322. <td>08</td>
  323. <td style="text-align: left;">(二)间接费用</td>
  324. <td>{{ Expenditure['budget'] }}</td>
  325. <td>{{ Expenditure['expended'] }}</td>
  326. <td>{{ Expenditure['application'] }}</td>
  327. <td>{{ Expenditure['surplus'] }}</td>
  328. <td style="width: 20%;"></td>
  329. </tr>
  330. <tr>
  331. <td>03</td>
  332. <td style="text-align: left;">项目成果鉴定费</td>
  333. <td>{{ indirectData.facility==0?'':indirectData.facility }}</td>
  334. <td>{{ usedInDirectData.facility==0?'':usedInDirectData.facility }}</td>
  335. <td>{{ applicationInDirectData.facility==0?'':applicationInDirectData.facility }}</td>
  336. <td>{{ indirectData.facility-usedInDirectData.facility-applicationInDirectData.facility }}</td>
  337. <td style="width: 20%;">{{ indirectDataReason.reason }}</td>
  338. </tr>
  339. <tr>
  340. <td>04</td>
  341. <td style="text-align: left;">参展参赛费</td>
  342. <td>{{ indirectData.cl==0?'':indirectData.cl }}</td>
  343. <td>{{ usedInDirectData.cl==0?'':usedInDirectData.cl }}</td>
  344. <td>{{ applicationInDirectData.cl==0?'':applicationInDirectData.cl }}</td>
  345. <td>{{ indirectData.cl-usedInDirectData.cl-applicationInDirectData.cl }}</td>
  346. <td style="width: 20%;">{{ indirectDataReason.reason1 }}</td>
  347. </tr>
  348. <tr>
  349. <td>05</td>
  350. <td style="text-align: left;">创客交流活动费</td>
  351. <td>{{ indirectData.jg==0?'':indirectData.jg }}</td>
  352. <td>{{ usedInDirectData.jg==0?'':usedInDirectData.jg }}</td>
  353. <td>{{ applicationInDirectData.jg==0?'':applicationInDirectData.jg }}</td>
  354. <td>{{ indirectData.jg-usedInDirectData.jg-applicationInDirectData.jg }}</td>
  355. <td style="width: 20%;">{{ indirectDataReason.reason2 }}</td>
  356. </tr>
  357. <tr>
  358. <td>06</td>
  359. <td style="text-align: left;">知识产权事务费</td>
  360. <td>{{ indirectData.xz==0?'':indirectData.xz }}</td>
  361. <td>{{ usedInDirectData.xz==0?'':usedInDirectData.xz }}</td>
  362. <td>{{ applicationInDirectData.xz==0?'':applicationInDirectData.xz }}</td>
  363. <td>{{ indirectData.xz-usedInDirectData.xz-applicationInDirectData.xz }}</td>
  364. <td style="width: 20%;">{{ indirectDataReason.reason3 }}</td>
  365. </tr>
  366. <tr>
  367. <td>07</td>
  368. <td style="text-align: left;">其他支出</td>
  369. <td>{{ indirectData.qt==0?'':indirectData.qt }}</td>
  370. <td>{{ usedInDirectData.qt==0?'':usedInDirectData.qt }}</td>
  371. <td>{{ applicationInDirectData.qt==0?'':applicationInDirectData.qt }}</td>
  372. <td>{{ indirectData.qt-usedInDirectData.qt-applicationInDirectData.qt }}</td>
  373. <td style="width: 20%;">{{ indirectDataReason.reason4 }}</td>
  374. </tr>
  375. <!-- <tr v-for="(item,index) in items" :key="index">
  376. <td>{{ index+1 }}</td>
  377. <td style="text-align: left;">{{ item.fromSort }}</td>
  378. <td>{{ item.fromBudget }}</td>
  379. <td>{{ item.fromUsed }}</td>
  380. <td>{{ item.fromApp }}</td>
  381. <td>{{ item.fromBalance }}</td>
  382. <td style="width: 20%;">{{ item.fromReason }}</td>
  383. </tr> -->
  384. <tr>
  385. <td style="height: 80px;">备注</td>
  386. <td colspan="6" style="text-align:left;">{{ residue.reason }}</td>
  387. </tr>
  388. </table>
  389. </div>
  390. <span slot="footer" class="dialog-footer">
  391. <el-button type="primary" @click="submitCreateFrom" class="AllDialogBtn">确认</el-button>
  392. <el-button @click="createFromDialog = false" class="AllDialogBtn" size="small">取消</el-button>
  393. </span>
  394. </el-dialog>
  395. <!-- 生成表单对话框结束 -->
  396. </div>
  397. </template>
  398. <script>
  399. import BeUpload from "../../components/tool/beUpload.vue";
  400. import getExcel from "@/components/tool/getExcel";
  401. export default {
  402. components: {
  403. BeUpload,
  404. },
  405. data() {
  406. return {
  407. // items:[
  408. // {num:'01',fromSort:'一.经费支出',fromBudget:'0',fromUsed:'0',fromApp:'0',fromBalance:'0',fromReason:''},
  409. // {num:'02',fromSort:'(一)直接费用',fromBudget:'0',fromUsed:'0',fromApp:'0',fromBalance:'0',fromReason:''},
  410. // {num:'03',fromSort:'小型仪器设备费',fromBudget:'',fromUsed:'',fromApp:'',fromBalance:'0',fromReason:''},
  411. // {num:'04',fromSort:'材料费',fromBudget:'',fromUsed:'',fromApp:'',fromBalance:'0',fromReason:''},
  412. // {num:'05',fromSort:'测试化验加工费',fromBudget:'',fromUsed:'',fromApp:'',fromBalance:'0',fromReason:''},
  413. // {num:'06',fromSort:'项目协作费',fromBudget:'',fromUsed:'',fromApp:'',fromBalance:'0',fromReason:''},
  414. // {num:'07',fromSort:'其他支出',fromBudget:'',fromUsed:'',fromApp:'',fromBalance:'0',fromReason:''},
  415. // {num:'08',fromSort:'(二)间接费用',fromBudget:'0',fromUsed:'0',fromApp:'0',fromBalance:'0',fromReason:''},
  416. // {num:'09',fromSort:'项目成果鉴定费',fromBudget:'',fromUsed:'',fromApp:'',fromBalance:'0',fromReason:''},
  417. // {num:'10',fromSort:'参展参赛费',fromBudget:'',fromUsed:'',fromApp:'',fromBalance:'0',fromReason:''},
  418. // {num:'11',fromSort:'创客交流活动费',fromBudget:'',fromUsed:'',fromApp:'',fromBalance:'0',fromReason:''},
  419. // {num:'12',fromSort:'知识产权事务费',fromBudget:'',fromUsed:'',fromApp:'',fromBalance:'0',fromReason:''},
  420. // {num:'13',fromSort:'其他支出',fromBudget:'',fromUsed:'',fromApp:'',fromBalance:'0',fromReason:''},
  421. // ],
  422. checkList: [],
  423. accept:"*",
  424. submitHint:false, //提交按钮
  425. createFromDialog:false, //生成表单
  426. dialogImageUrl:require('../../assets/img/zzpic426.jpg'),
  427. disabled: false,
  428. file:[],
  429. selects:{
  430. projectName:'',
  431. projectType:''
  432. },
  433. progress:{ //进度条
  434. value:0,
  435. show:false
  436. },
  437. projectFilter:[], //项目名称
  438. projectType:[ //项目类型
  439. {
  440. id:1,
  441. name:'创客空间'
  442. },
  443. {
  444. id:2,
  445. name:'创客实践室'
  446. },
  447. {
  448. id:3,
  449. name:'个人创客'
  450. },
  451. {
  452. id:4,
  453. name:'创客活动'
  454. }
  455. ],
  456. directFundBlock:[ //直接经费
  457. {
  458. directFundData:'',
  459. directFundSelects:[
  460. {
  461. value:1,
  462. label:'小型仪器设备费'
  463. },
  464. {
  465. value:2,
  466. label:'材料费'
  467. },
  468. {
  469. value:3,
  470. label:'测试化验加工费'
  471. },
  472. {
  473. value:4,
  474. label:'项目协作费'
  475. },
  476. {
  477. value:5,
  478. label:'其他支出'
  479. },
  480. ],
  481. budget:'', //预算
  482. usedFund:'', //已使用
  483. apply:'', //本次申请
  484. reason:'' //理由
  485. }
  486. ],
  487. newDirectFundBlock:{ //添加直接经费
  488. directFundData:'',
  489. directFundSelects:[
  490. {
  491. value:1,
  492. label:'小型仪器设备费'
  493. },
  494. {
  495. value:2,
  496. label:'材料费'
  497. },
  498. {
  499. value:3,
  500. label:'测试化验加工费'
  501. },
  502. {
  503. value:4,
  504. label:'项目协作费'
  505. },
  506. {
  507. value:5,
  508. label:'其他支出'
  509. },
  510. ],
  511. budget:'', //预算
  512. usedFund:'', //已使用
  513. apply:'', //本次申请
  514. reason:'' //理由
  515. },
  516. indirectFundBlock:[ //间接经费
  517. {
  518. indirectFundData:'',
  519. indirectFundSelects:[
  520. {
  521. value:1,
  522. label:'项目成功鉴定费'
  523. },
  524. {
  525. value:2,
  526. label:'参展参赛费'
  527. },
  528. {
  529. value:3,
  530. label:'创客交流活动费'
  531. },
  532. {
  533. value:4,
  534. label:'知识产权事务费'
  535. },
  536. {
  537. value:5,
  538. label:'其他支出'
  539. },
  540. ],
  541. budget:'', //预算
  542. usedFund:'', //已使用
  543. apply:'', //本次申请
  544. reason:'' //理由
  545. }
  546. ],
  547. newIndirectFundBlock:{ //添加间接经费
  548. indirectFundData:'',
  549. indirectFundSelects:[
  550. {
  551. value:1,
  552. label:'项目成功鉴定费'
  553. },
  554. {
  555. value:2,
  556. label:'参展参赛费'
  557. },
  558. {
  559. value:3,
  560. label:'创客交流活动费'
  561. },
  562. {
  563. value:4,
  564. label:'知识产权事务费'
  565. },
  566. {
  567. value:5,
  568. label:'其他支出'
  569. },
  570. ],
  571. budget:'', //预算
  572. usedFund:'', //已使用
  573. apply:'', //本次申请
  574. reason:'' //理由
  575. },
  576. residue:{ //其他
  577. PName:"",//项目名称
  578. elseReason:'',
  579. budget:'',
  580. usedFund:'',
  581. reason:'',
  582. }
  583. ,
  584. directData:{ //直接经费预算
  585. facility:0,
  586. cl:0,
  587. jg:0,
  588. xz:0,
  589. qt:0,
  590. },
  591. directDataReason:{
  592. reason:'',
  593. reason1:'',
  594. reason2:'',
  595. reason3:'',
  596. reason4:''
  597. },
  598. usedDirectData:{ //直接经费已支出
  599. facility:0,
  600. cl:0,
  601. jg:0,
  602. xz:0,
  603. qt:0,
  604. },
  605. applicationDirectData:{ //直接经费本次申请
  606. facility:0,
  607. cl:0,
  608. jg:0,
  609. xz:0,
  610. qt:0,
  611. },
  612. indirectData:{ //间接经费预算
  613. facility:0,
  614. cl:0,
  615. jg:0,
  616. xz:0,
  617. qt:0,
  618. },
  619. indirectDataReason:{
  620. reason:'',
  621. reason1:'',
  622. reason2:'',
  623. reason3:'',
  624. reason4:''
  625. },
  626. usedInDirectData:{ //间接经费已支出
  627. facility:0,
  628. cl:0,
  629. jg:0,
  630. xz:0,
  631. qt:0,
  632. },
  633. applicationInDirectData:{ //间接经费本次申请
  634. facility:0,
  635. cl:0,
  636. jg:0,
  637. xz:0,
  638. qt:0,
  639. },
  640. DirectFunding:{ //直接经费汇总
  641. budget:0, //预算
  642. expended:0, //已支付
  643. application:0, //本次申请
  644. surplus:0, //余额
  645. },
  646. IndirectFunding:{//间接经费汇总
  647. budget:0, //预算
  648. expended:0, //已支付
  649. application:0, //本次申请
  650. surplus:0, //余额
  651. },
  652. Expenditure:{//经费支出汇总
  653. budget:0, //预算
  654. expended:0, //已支付
  655. application:0, //本次申请
  656. surplus:0, //余额
  657. },
  658. AllFund:{ //经费支出
  659. budget:0, //预算
  660. expended:0, //已支付
  661. application:0, //本次申请
  662. surplus:0, //余额
  663. }
  664. }
  665. },
  666. methods:{
  667. AllEquipment(){
  668. this.directFundBlock.forEach((e,i)=>{
  669. switch(e.directFundData)
  670. {
  671. case 1:
  672. this.directData.facility+=e.budget*1;
  673. this.usedDirectData.facility+=e.usedFund*1;
  674. this.directDataReason.reason=e.reason;
  675. this.applicationDirectData.facility = e.apply*1
  676. // console.log(this.directData.facility);
  677. break;
  678. case 2:
  679. this.directData.cl+=e.budget*1;
  680. this.usedDirectData.cl+=e.usedFund*1;
  681. this.directDataReason.reason1=e.reason;
  682. this.applicationDirectData.cl = e.apply*1
  683. // console.log(this.directData.cl);
  684. break;
  685. case 3:
  686. this.directData.jg=e.budget*1;
  687. this.usedDirectData.jg+=e.usedFund*1;
  688. this.directDataReason.reason2=e.reason;
  689. this.applicationDirectData.jg = e.apply*1
  690. break;
  691. case 4:
  692. this.directData.xz=e.budget*1;
  693. this.usedDirectData.xz+=e.usedFund*1;
  694. this.directDataReason.reason3=e.reason;
  695. this.applicationDirectData.xz = e.apply*1
  696. break;
  697. case 5:
  698. this.directData.qt=e.budget*1;
  699. this.usedDirectData.qt+=e.usedFund*1;
  700. this.directDataReason.reason4=e.reason;
  701. this.applicationDirectData.qt = e.apply*1
  702. break;
  703. }
  704. })
  705. this.indirectFundBlock.forEach((e,i)=>{
  706. switch(e.indirectFundData)
  707. {
  708. case 1:
  709. this.indirectData.facility+=e.budget*1;
  710. this.usedInDirectData.facility+=e.usedFund*1;
  711. this.indirectDataReason.reason=e.reason;
  712. this.applicationInDirectData.facility = e.apply*1;
  713. // console.log(this.directData.facility);
  714. break;
  715. case 2:
  716. this.indirectData.cl+=e.budget*1;
  717. this.usedInDirectData.cl+=e.usedFund*1;
  718. this.indirectDataReason.reason1=e.reason;
  719. this.applicationInDirectData.cl = e.apply*1;
  720. // console.log(this.directData.cl);
  721. break;
  722. case 3:
  723. this.indirectData.jg=e.budget*1;
  724. this.usedInDirectData.jg+=e.usedFund*1;
  725. this.indirectDataReason.reason2=e.reason;
  726. this.applicationInDirectData.jg = e.apply*1;
  727. break;
  728. case 4:
  729. this.indirectData.xz=e.budget*1;
  730. this.usedInDirectData.xz+=e.usedFund*1;
  731. this.indirectDataReason.reason3=e.reason;
  732. this.applicationInDirectData.xz = e.apply*1;
  733. break;
  734. case 5:
  735. this.indirectData.qt=e.budget*1;
  736. this.usedInDirectData.qt+=e.usedFund*1;
  737. this.indirectDataReason.reason4=e.reason;
  738. this.applicationInDirectData.qt = e.apply*1;
  739. break;
  740. }
  741. })
  742. // this.DirectFunding.budget = this.
  743. //直接费用全部预算
  744. for(let i in this.directData)this.IndirectFunding['budget']+=this.directData[i];
  745. //直接费用全部已支出
  746. for(let a in this.usedDirectData)this.IndirectFunding['expended']+=this.usedDirectData[a];
  747. //直接费用本次申请
  748. for(let b in this.applicationDirectData)this.IndirectFunding['application']+=this.applicationDirectData[b]
  749. //直接费用余额
  750. this.IndirectFunding['surplus'] = this.IndirectFunding['budget']-this.IndirectFunding['expended']-this.IndirectFunding['application']
  751. //间接费用
  752. //间接费用全部预算
  753. for(let c in this.indirectData)this.Expenditure['budget']+=this.indirectData[c];
  754. //间接费用全部已支出
  755. for(let d in this.usedInDirectData)this.Expenditure['expended']+=this.usedInDirectData[d];
  756. //间接费用本次申请
  757. for(let e in this.applicationInDirectData)this.Expenditure['application']+=this.applicationInDirectData[e];
  758. //间接费用余额
  759. this.Expenditure['surplus'] = this.Expenditure['budget']-this.Expenditure['expended']-this.Expenditure['application']
  760. //经费支出
  761. //预算
  762. this.AllFund.budget =this.Expenditure['budget']+this.IndirectFunding['budget'];
  763. //已支出
  764. this.AllFund.expended = this.Expenditure['expended']+this.IndirectFunding['expended'];
  765. //本次申请
  766. this.AllFund.application = this.Expenditure['application']+this.IndirectFunding['application']
  767. //育儿
  768. this.AllFund.surplus = this.AllFund['budget']-this.AllFund['expended']-this.AllFund['application'];
  769. //项目名称
  770. this.residue.PName = this.projectFilter.filter(item=>item.id==this.selects.projectName).length!=0?this.projectFilter.filter(item=>item.id==this.selects.projectName)[0]['title']:'';
  771. },
  772. createFrom(){ // 显示表单对话框
  773. this.directData={ //直接经费预算
  774. facility:0,
  775. cl:0,
  776. jg:0,
  777. xz:0,
  778. qt:0
  779. },
  780. this.usedDirectData={ //直接经费已支出
  781. facility:0,
  782. cl:0,
  783. jg:0,
  784. xz:0,
  785. qt:0
  786. },
  787. this.indirectData={ //间接经费预算
  788. facility:0,
  789. cl:0,
  790. jg:0,
  791. xz:0,
  792. qt:0
  793. },
  794. this.usedInDirectData={ //间接经费已支出
  795. facility:0,
  796. cl:0,
  797. jg:0,
  798. xz:0,
  799. qt:0
  800. },
  801. this.directDataReason={
  802. reason:'',
  803. reason1:'',
  804. reason2:'',
  805. reason3:'',
  806. reason4:''
  807. },
  808. this.IndirectFunding = { //直接经费汇总
  809. budget:0, //预算
  810. expended:0, //已支付
  811. application:0, //本次申请
  812. surplus:0, //余额
  813. },
  814. this.Expenditure={//经费支出汇总
  815. budget:0, //预算
  816. expended:0, //已支付
  817. application:0, //本次申请
  818. surplus:0, //余额
  819. }
  820. this.AllFund={ //经费支出
  821. budget:0, //预算
  822. expended:0, //已支付
  823. application:0, //本次申请
  824. surplus:0, //余额
  825. }
  826. this.applicationInDirectData={ //间接经费本次申请
  827. facility:0,
  828. cl:0,
  829. jg:0,
  830. xz:0,
  831. qt:0,
  832. }
  833. this.applicationDirectData={ //直接经费本次申请
  834. facility:0,
  835. cl:0,
  836. jg:0,
  837. xz:0,
  838. qt:0,
  839. }
  840. this.AllEquipment();
  841. this.createFromDialog=true;
  842. },
  843. submitCreateFrom(){ //生成表单
  844. getExcel({
  845. PName:this.residue.PName, //项目名称
  846. remarks:this.residue.reason,//备注
  847. direct:{
  848. budget:this.directData,
  849. expended:this.usedDirectData,
  850. apply:this.applicationDirectData,
  851. reason:this.directDataReason,
  852. },
  853. indirect:{
  854. budget:this.indirectData,
  855. expended:this.usedInDirectData,
  856. apply:this.applicationInDirectData,
  857. reason:this.indirectDataReason
  858. }
  859. })
  860. },
  861. ProgressFormat(value){ //进度条
  862. return value ==100?'100%':`${value}%`
  863. },
  864. delInDerData(index){ //删除间接经费
  865. this.indirectFundBlock.splice(index,1)
  866. },
  867. delDerData(index){ //删除直接经费
  868. console.log(index);
  869. this.directFundBlock.splice(index,1)
  870. },
  871. delUploadBtn(index){ //删除上传文件
  872. console.log(index);
  873. this.file.splice(index,1)
  874. this.$message.success('删除成功')
  875. },
  876. handleRemove(index) {
  877. console.log(index);
  878. },
  879. uploadData(){
  880. this.submitHint=true;
  881. },
  882. submitAll(){
  883. if(this.selects.projectName=='') return this.$message.error('请选择项目名称')
  884. if(this.selects.projectType=='') return this.$message.error('请选择项目类型')
  885. let dirSum = this.directFundBlock.reduce((per,cur)=>{
  886. return per*1+cur.budget*1
  887. },0)
  888. let indirSum =this.indirectFundBlock.reduce((per,cur)=>{
  889. return per*1+cur.budget*1
  890. },0)
  891. let allSum=dirSum+indirSum+this.residue.budget*1
  892. // console.log(allSum);
  893. let usedDirSum = this.directFundBlock.reduce((per,cur)=>{
  894. return per*1+cur.usedFund*1
  895. },0)
  896. let usedIndirSum =this.indirectFundBlock.reduce((per,cur)=>{
  897. return per*1+cur.usedFund*1
  898. },0)
  899. let usedAllSum=usedDirSum+usedIndirSum+this.residue.usedFund*1
  900. // console.log(usedAllSum);
  901. let param={
  902. uid:this.$store.state.userInfo.userid,
  903. cid:this.selects.projectName,
  904. type:this.selects.projectType,
  905. dir:JSON.stringify(this.directFundBlock),
  906. indir:JSON.stringify(this.indirectFundBlock),
  907. elseFund:JSON.stringify(this.residue),
  908. file:JSON.stringify(this.file),
  909. AllSum:allSum,
  910. usedSum:usedAllSum
  911. }
  912. this.ajax
  913. .post(this.$store.state.api+'/insertMakerFund',param)
  914. .then(res=>{
  915. console.log(res);
  916. if (res.data==1) {
  917. this.$router.push('/makerfund')
  918. return this.$message.success('创建成功')
  919. }else{
  920. this.$message.error('创建失败')
  921. }
  922. },err=>{
  923. console.log(err);
  924. })
  925. },
  926. getFile(val) { //上传封面
  927. this.file.push(val)
  928. this.progress.show = false;
  929. // this.imageUrl=require("../../assets/img/jj.jpg")
  930. },
  931. getData(){
  932. let param={
  933. uid:this.$store.state.userInfo.userid,
  934. fid:''
  935. }
  936. this.ajax
  937. .get(this.$store.state.api+'/SelectMakerFundSelects',param)
  938. .then(res=>{
  939. // console.log(res.data);
  940. this.projectFilter=res.data[1]
  941. },err=>{
  942. console.log(err);
  943. })
  944. },
  945. addDirectFund(){ //添加直接经费
  946. //判断如果已经写满
  947. if(this.directFundBlock.length==this.newDirectFundBlock.directFundSelects.length)return this.$message.warning("已无法继续添加")
  948. let oldArr={};
  949. Object.assign(oldArr,this.newDirectFundBlock)
  950. oldArr.directFundSelects = oldArr.directFundSelects.filter(item=>this.directFundBlock.filter(dItem=>dItem.directFundData==item.value).length==0)
  951. this.directFundBlock.push(oldArr)
  952. for(let k in this.newDirectFundBlock) return this.newDirectFundBlock[k]=''
  953. },
  954. addIndirectFund(){ //添加间接经费
  955. //判断如果已经写满
  956. if(this.indirectFundBlock.length==this.newIndirectFundBlock.indirectFundSelects.length)return this.$message.warning("已无法继续添加")
  957. let oldArr={};
  958. Object.assign(oldArr,this.newIndirectFundBlock)
  959. oldArr.indirectFundSelects = oldArr.indirectFundSelects.filter(item=>this.indirectFundBlock.filter(dItem=>dItem.indirectFundData==item.value).length==0)
  960. this.indirectFundBlock.push(oldArr)
  961. for(let k in this.newIndirectFundBlock) return this.newIndirectFundBlock[k]=''
  962. },
  963. init(){
  964. //重置
  965. this.submitHint=false;
  966. this.createFromDialog=false;
  967. },
  968. directFundDataSelectChange(){
  969. //直接经费全部下拉框
  970. let directFundBlockSelect = [
  971. {
  972. value:1,
  973. label:'小型仪器设备费'
  974. },
  975. {
  976. value:2,
  977. label:'材料费'
  978. },
  979. {
  980. value:3,
  981. label:'测试化验加工费'
  982. },
  983. {
  984. value:4,
  985. label:'项目协作费'
  986. },
  987. {
  988. value:5,
  989. label:'其他支出'
  990. },
  991. ]
  992. let oneself=[];
  993. this.directFundBlock.forEach(item=>{
  994. //获取他本身自己的下拉框
  995. oneself.push(directFundBlockSelect.filter(sItem=>sItem.value==item.directFundData)[0])
  996. //获取未选择的
  997. directFundBlockSelect = directFundBlockSelect.filter(sItem=>sItem.value!=item.directFundData)
  998. })
  999. //再遍历一遍
  1000. this.directFundBlock.forEach((item,index)=>{
  1001. let oneSelect = [];
  1002. directFundBlockSelect.forEach(item=>oneSelect.push(item));
  1003. if(oneself[index]!=undefined)oneSelect.push(oneself[index])
  1004. item.directFundSelects = oneSelect;
  1005. })
  1006. //遍历所有的直接经费
  1007. },
  1008. indirectFundSelectChange(){
  1009. //间接经费全部下拉框
  1010. let indirectFundSelect = [
  1011. {
  1012. value:1,
  1013. label:'项目成功鉴定费'
  1014. },
  1015. {
  1016. value:2,
  1017. label:'参展参赛费'
  1018. },
  1019. {
  1020. value:3,
  1021. label:'创客交流活动费'
  1022. },
  1023. {
  1024. value:4,
  1025. label:'知识产权事务费'
  1026. },
  1027. {
  1028. value:5,
  1029. label:'其他支出'
  1030. },
  1031. ];
  1032. let oneself=[];
  1033. this.indirectFundBlock.forEach(item=>{
  1034. //获取他本身自己的下拉框
  1035. oneself.push(indirectFundSelect.filter(sItem=>sItem.value==item.indirectFundData)[0])
  1036. //获取未选择的
  1037. indirectFundSelect = indirectFundSelect.filter(sItem=>sItem.value!=item.indirectFundData)
  1038. })
  1039. //再遍历一遍
  1040. this.indirectFundBlock.forEach((item,index)=>{
  1041. let oneSelect = [];
  1042. indirectFundSelect.forEach(item=>oneSelect.push(item));
  1043. if(oneself[index]!=undefined)oneSelect.push(oneself[index])
  1044. item.directFundSelects = oneSelect;
  1045. })
  1046. //遍历所有的直接经费
  1047. },
  1048. },
  1049. mounted(){
  1050. this.getData()
  1051. }
  1052. }
  1053. </script>
  1054. <style lang="less">
  1055. .makerfundApply{
  1056. .delUpload{
  1057. width: 147px;
  1058. margin-left: 60px;
  1059. margin-bottom: 62px;
  1060. }
  1061. .delUploadBtnSty{
  1062. position: absolute;
  1063. right: 0;top: 0px;
  1064. line-height: 20px;
  1065. display: flex;
  1066. justify-content: center;
  1067. width: 20px;
  1068. height: 20px;
  1069. font-size: 35px;
  1070. z-index: 10;
  1071. color: #fff;
  1072. // background: #fff;
  1073. }
  1074. .avatar-uploader .el-upload { //文件上传
  1075. border: 1px dashed #d9d9d9;
  1076. border-radius: 6px;
  1077. cursor: pointer;
  1078. position: relative;
  1079. overflow: hidden;
  1080. }
  1081. .avatar-uploader-icon {
  1082. font-size: 28px;
  1083. color: #8c939d;
  1084. width: 178px;
  1085. height: 178px;
  1086. line-height: 178px;
  1087. text-align: center;
  1088. }
  1089. .avatar {
  1090. width: 178px;
  1091. height: 178px;
  1092. display: block;
  1093. }
  1094. //提交对话框开始
  1095. .projectApplicationfundAddDialog{
  1096. .el-dialog__header{
  1097. display: flex;
  1098. justify-content: center;
  1099. }
  1100. .el-dialog{
  1101. border-radius: 5px;
  1102. overflow: hidden;
  1103. top: 10%;
  1104. }
  1105. .deleteContent{
  1106. width: 100%;
  1107. text-align: center;
  1108. font-size: 22px;
  1109. color: #000;
  1110. }
  1111. .addDialogLogo{
  1112. width: 60px;
  1113. height: 30px;
  1114. border-radius: 5px;
  1115. display: flex;
  1116. justify-content: center;
  1117. line-height: 30px;
  1118. background: #f2f2f2;
  1119. position: absolute;
  1120. left: 20px; top: 15px;
  1121. }
  1122. .el-dialog__header{
  1123. background: #32455b;
  1124. }
  1125. .el-dialog__title{
  1126. color:#fff;
  1127. display: flex;
  1128. justify-content: center;
  1129. font-size: 18px;
  1130. position: relative;
  1131. top: -2px;
  1132. }
  1133. .addDialogMid{
  1134. box-sizing: border-box;
  1135. padding:0 60px 0 10px;
  1136. .addDialogTit{
  1137. display: flex;
  1138. span{
  1139. width: 80px;
  1140. line-height: 40px;
  1141. text-align: left;
  1142. }
  1143. }
  1144. .addDialogTit1{
  1145. display: flex;
  1146. justify-content: space-between;
  1147. margin-bottom: 15px;
  1148. }
  1149. .addDialogTit2{
  1150. margin-top: 10px;
  1151. font-size: 18px;
  1152. color: #000;
  1153. text-indent: 2em;
  1154. }
  1155. .addDialogCon{
  1156. margin-top: 20px;
  1157. }
  1158. }
  1159. .dialog-footer{
  1160. display: flex;
  1161. justify-content: center;
  1162. }
  1163. }
  1164. //提交对话框结束
  1165. .createFromDialogSty{ //生成表单
  1166. .el-dialog__header{
  1167. display: flex;
  1168. justify-content: center;
  1169. }
  1170. .el-dialog{
  1171. border-radius: 5px;
  1172. overflow: hidden;
  1173. top: 10%;
  1174. }
  1175. .deleteContent{
  1176. width: 100%;
  1177. text-align: center;
  1178. font-size: 22px;
  1179. color: #000;
  1180. }
  1181. .addDialogLogo{
  1182. width: 60px;
  1183. height: 30px;
  1184. border-radius: 5px;
  1185. display: flex;
  1186. justify-content: center;
  1187. line-height: 30px;
  1188. background: #f2f2f2;
  1189. position: absolute;
  1190. left: 20px; top: 15px;
  1191. }
  1192. .el-dialog__header{
  1193. background: #32455b;
  1194. }
  1195. .el-dialog__title{
  1196. color:#fff;
  1197. display: flex;
  1198. justify-content: center;
  1199. font-size: 18px;
  1200. position: relative;
  1201. top: -2px;
  1202. }
  1203. .addDialogMid{
  1204. box-sizing: border-box;
  1205. padding:0 60px 0 10px;
  1206. .addDialogTit{
  1207. display: flex;
  1208. span{
  1209. width: 80px;
  1210. line-height: 40px;
  1211. text-align: left;
  1212. }
  1213. }
  1214. .addDialogTit1{
  1215. display: flex;
  1216. justify-content: space-between;
  1217. margin-bottom: 15px;
  1218. }
  1219. .addDialogTit2{
  1220. margin-top: 10px;
  1221. font-size: 18px;
  1222. color: #000;
  1223. text-indent: 2em;
  1224. }
  1225. .addDialogCon{
  1226. margin-top: 20px;
  1227. }
  1228. }
  1229. .dialog-footer{
  1230. display: flex;
  1231. justify-content: center;
  1232. }
  1233. }
  1234. .Apply1{ //顶部两个下拉框
  1235. height: 45px;
  1236. width: 100%;
  1237. display: flex;
  1238. justify-content: flex-start;
  1239. margin-top: 20px;
  1240. .inpName{
  1241. height: 40px;
  1242. outline:none ;
  1243. width: 600px;
  1244. border: #ccc 1px solid;
  1245. border-radius: 5px;
  1246. box-sizing: border-box;
  1247. padding: 1px 15px;
  1248. }
  1249. }
  1250. .moneyBlock{
  1251. max-width: 100%;
  1252. margin-bottom: 20px;
  1253. .howMoneyFlex{
  1254. display: flex;
  1255. flex-wrap: wrap;
  1256. }
  1257. .howMoney{
  1258. display: flex;
  1259. margin-right: 10px;
  1260. margin-bottom: 10px;
  1261. .howMoneyInp{
  1262. .el-input__inner{
  1263. width: 170px;
  1264. }
  1265. }
  1266. }
  1267. }
  1268. .inpInterval{
  1269. min-width: 70px;
  1270. display: inline-block;
  1271. text-align: justify;
  1272. text-justify:distribute-all-lines;
  1273. text-align-last: justify;
  1274. transform: translate(0,22%);
  1275. padding-right: 15px;
  1276. font-size: 16px;
  1277. }
  1278. .addMoneyBtn{ //添加样式
  1279. margin: 15px 85px 30px;
  1280. }
  1281. }
  1282. .tableStyle{
  1283. border-collapse:collapse;
  1284. font-size: 16px;
  1285. td{
  1286. // align-content: center;
  1287. height: 35px;
  1288. }
  1289. }
  1290. </style>