index.vue 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596
  1. <template>
  2. <div v-if="pageDisplay" class="app-container">
  3. <formComponent
  4. v-if="searchWhether"
  5. :formOption="formOption"
  6. :dataList="dataList"
  7. :inDex="inDex"
  8. ref="avatar"
  9. @submitForm="submitForm"
  10. @returnToForm="returnToForm"
  11. />
  12. <listComponent
  13. :tableData="tableData"
  14. @selectionbox="selectionbox"
  15. @see="viewMethod"
  16. @modify="modification"
  17. @deletion="deletion"
  18. @buttonList="buttonList"
  19. @showSearch="showSearch"
  20. @feedback="feedback"
  21. @getList="getList"
  22. :isItHidden="isItHidden"
  23. :customButton="customButton"
  24. :listStyle="listStyle"
  25. :queryList="queryList"
  26. :setRowList="setRowList"
  27. />
  28. </div>
  29. <div v-else class="app-container">
  30. <formComponent
  31. v-if="searchWhether"
  32. :formOption="contentOption"
  33. :dataList="dataList"
  34. :inDex="inDex"
  35. ref="avatar"
  36. @submitForm="submitForm"
  37. @returnToForm="returnToForm"
  38. />
  39. <listComponent
  40. :tableData="contentList"
  41. @selectionbox="selectionbox"
  42. @see="viewMethod"
  43. @modify="modification"
  44. @deletion="deletion"
  45. @buttonList="buttonList"
  46. @showSearch="showSearch"
  47. @feedback="feedback"
  48. @getList="getList"
  49. :isItHidden="isItHidden"
  50. :customButton="contentButton"
  51. :listStyle="listStyle"
  52. :queryList="purchaseList"
  53. :setRowList="setRowList"
  54. />
  55. </div>
  56. </template>
  57. <script>
  58. import {select} from '@/api/system/set'
  59. import {listQuery} from '@/api/purchaseRequest/index'
  60. import Cookies from 'js-cookie'
  61. export default {
  62. name: 'index',
  63. data(){
  64. return{
  65. searchWhether:true,
  66. pageDisplay:true,
  67. dataList:{},
  68. contentList:[],
  69. inDex:4,
  70. tableData:[],
  71. tableList:[],
  72. isItHidden:true,
  73. listStyle:[
  74. {
  75. surface: "1",
  76. label: "serialNumber",
  77. name: "序号",
  78. checked: 0,
  79. width: 100,
  80. onabort:'',
  81. },{
  82. surface: "2",
  83. label: "fBillno",
  84. name: "申请编号",
  85. checked: 0,
  86. width: 100,
  87. onabort:'this.value=this.value.replace(/[^_a-zA-Z]/g,\'\')'
  88. },{
  89. surface: "3",
  90. label: "fGoodsid",
  91. name: "项目名称",
  92. checked: 0,
  93. width: 100,
  94. onabort:''
  95. },{
  96. surface: "4",
  97. label: "fCorpid",
  98. name: "客户名称",
  99. checked: 0,
  100. width: 100,
  101. onabort:''
  102. },{
  103. surface: "5",
  104. label: "fMoney",
  105. name: "金额",
  106. checked: 0,
  107. width: 100,
  108. onabort:''
  109. },{
  110. surface: "6",
  111. label: "createTime",
  112. name: "申请日期",
  113. checked: 0,
  114. width: 100,
  115. onabort:''
  116. },{
  117. surface: "7",
  118. label: "createBy",
  119. name: "申请人",
  120. checked: 0,
  121. width: 100,
  122. onabort:''
  123. },{
  124. surface: "8",
  125. label: "fReviewDate",
  126. name: "审核日期",
  127. checked: 0,
  128. width: 100,
  129. onabort:''
  130. },{
  131. surface: "9",
  132. label: "remark",
  133. name: "备注",
  134. checked: 0,
  135. width: 100,
  136. onabort:''
  137. },{
  138. surface: "10",
  139. label: "operation",
  140. name: "操作",
  141. checked: 0,
  142. width: 160,
  143. operation:'1',
  144. onabort:''
  145. }
  146. ],
  147. contentStyle:[
  148. {
  149. surface: "1",
  150. label: "fLineNumber",
  151. name: "序号",
  152. checked: 0,
  153. width: 100,
  154. onabort:''
  155. },{
  156. surface: "2",
  157. label: "fLineNumber",
  158. name: "品名",
  159. checked: 0,
  160. width: 100,
  161. onabort:''
  162. },{
  163. surface: "3",
  164. label: "asdaasd",
  165. name: "单价",
  166. checked: 0,
  167. width: 100,
  168. onabort:''
  169. },{
  170. surface: "4",
  171. label: "aadswada",
  172. name: "采购重量",
  173. checked: 0,
  174. width: 100,
  175. onabort:''
  176. },{
  177. surface: "5",
  178. label: "fLineNuber",
  179. name: "实际重量",
  180. checked: 0,
  181. width: 100,
  182. onabort:''
  183. },{
  184. surface: "6",
  185. label: "fLine2Nuber",
  186. name: "计量单位",
  187. checked: 0,
  188. width: 100,
  189. onabort:''
  190. },{
  191. surface: "7",
  192. label: "fLineN32uber",
  193. name: "金额",
  194. checked: 0,
  195. width: 100,
  196. onabort:''
  197. },{
  198. surface: "8",
  199. label: "fLinger",
  200. name: "付费方式",
  201. checked: 0,
  202. width: 100,
  203. onabort:''
  204. },{
  205. surface: "9",
  206. label: "fLineNubr",
  207. name: "备注",
  208. checked: 0,
  209. width: 100,
  210. onabort:''
  211. },{
  212. surface: "10",
  213. label: "fLieNuber",
  214. name: "申请日期",
  215. checked: 0,
  216. width: 100,
  217. onabort:''
  218. },{
  219. surface: "11",
  220. label: "feNuber",
  221. name: "申请人",
  222. checked: 0,
  223. width: 100,
  224. onabort:''
  225. },{
  226. surface: "12",
  227. label: "fLineuber",
  228. name: "审核日期",
  229. checked: 0,
  230. width: 100,
  231. onabort:''
  232. },{
  233. surface: "13",
  234. label: "fMaterialw1",
  235. name: "操作",
  236. checked: 0,
  237. width: 160,
  238. operation:'1',
  239. onabort:''
  240. }
  241. ],
  242. queryList:{
  243. tableName:'采购申请',
  244. columnList:[]
  245. },
  246. purchaseList:{
  247. tableName:'采购申请详情',
  248. columnList:[]
  249. },
  250. setRowList:[],
  251. customButton:[
  252. {
  253. type:'primary',
  254. size:'mini',
  255. icon:'el-icon-edit',
  256. name:'新增',
  257. disabled:false,
  258. },{
  259. type:'warning',
  260. size:'mini',
  261. icon:'el-icon-edit',
  262. name:'修改',
  263. disabled:false,
  264. },{
  265. type:'primary',
  266. size:'mini',
  267. icon:'el-icon-edit',
  268. name:'导出',
  269. disabled:false,
  270. },{
  271. type:'primary',
  272. size:'mini',
  273. icon:'el-icon-edit',
  274. name:'复制新增',
  275. disabled:false,
  276. }
  277. ],
  278. contentButton:[
  279. {
  280. type:'danger',
  281. size:'mini',
  282. icon:'el-icon-arrow-left',
  283. name:'返回列表',
  284. disabled:false,
  285. },{
  286. type:'primary',
  287. size:'mini',
  288. icon:'el-icon-plus',
  289. name:'录入',
  290. disabled:false,
  291. },{
  292. type:'success',
  293. size:'mini',
  294. icon:'el-icon-edit',
  295. name:'修改',
  296. disabled:false,
  297. },{
  298. type:'warning',
  299. size:'mini',
  300. icon:'el-icon-download',
  301. name:'导出',
  302. disabled:false,
  303. },{
  304. type:'info',
  305. size:'mini',
  306. icon:'el-icon-edit-outline',
  307. name:'打印',
  308. disabled:false,
  309. }
  310. ],
  311. formOption:[
  312. {
  313. span:6,
  314. label: 'fNum3ber',
  315. name:"申请编号",
  316. inputType:2,
  317. width:200,
  318. labelSize:'80',
  319. rules:[{ required: false, message: ' '}]
  320. },{
  321. span:6,
  322. label: 'fNu3mber',
  323. name:"项目名称",
  324. inputType:1,
  325. width:200,
  326. labelSize:'80',
  327. rules:[{ required: false, message: ' '}]
  328. },{
  329. span:6,
  330. label: 'fNumb2er',
  331. name:"客户名称",
  332. inputType:2,
  333. width:200,
  334. labelSize:'80',
  335. rules:[{ required: false, message: ' '}]
  336. },{
  337. span:6,
  338. label: 'fNumber',
  339. name:"申请人",
  340. inputType:2,
  341. width:200,
  342. labelSize:'80',
  343. rules:[{ required: false, message: ' '}]
  344. },{
  345. span:6,
  346. label: 'fNumberasda',
  347. name:"金额",
  348. inputType:5,
  349. width:200,
  350. labelSize:'80',
  351. rules:[{ required: false, message: ' '}]
  352. },{
  353. span:6,
  354. label: 'fNumber',
  355. name:"申请日期",
  356. inputType:3,
  357. width:200,
  358. labelSize:'80',
  359. rules:[{ required: false, message: ' '}]
  360. }
  361. ],
  362. contentOption:[
  363. {
  364. span:6,
  365. label: 'fNum3ber',
  366. name:"系统编号",
  367. inputType:2,
  368. width:200,
  369. labelSize:'80',
  370. rules:[{ required: false, message: ' '}]
  371. },{
  372. span:6,
  373. label: 'fNum3ber',
  374. name:"项目名称",
  375. inputType:2,
  376. width:200,
  377. labelSize:'80',
  378. rules:[{ required: false, message: ' '}]
  379. },{
  380. span:6,
  381. label: 'fNum3ber',
  382. name:"项目主管",
  383. inputType:2,
  384. width:200,
  385. labelSize:'80',
  386. rules:[{ required: false, message: ' '}]
  387. },{
  388. span:6,
  389. label: 'fNum3ber',
  390. name:"客户",
  391. inputType:2,
  392. width:200,
  393. labelSize:'80',
  394. rules:[{ required: false, message: ' '}]
  395. },{
  396. span:6,
  397. label: 'fNum3ber',
  398. name:"供应商",
  399. inputType:2,
  400. width:200,
  401. labelSize:'80',
  402. rules:[{ required: false, message: ' '}]
  403. },{
  404. span:6,
  405. label: 'fNum3ber',
  406. name:"仓库",
  407. inputType:2,
  408. width:200,
  409. labelSize:'80',
  410. rules:[{ required: false, message: ' '}]
  411. },{
  412. span:6,
  413. label: 'fNum3ber',
  414. name:"提货日期",
  415. inputType:2,
  416. width:200,
  417. labelSize:'80',
  418. rules:[{ required: false, message: ' '}]
  419. },{
  420. span:6,
  421. label: 'fNum3ber',
  422. name:"申请人",
  423. inputType:2,
  424. width:200,
  425. labelSize:'80',
  426. rules:[{ required: false, message: ' '}]
  427. },
  428. {
  429. span:6,
  430. label: 'fNum3ber',
  431. name:"学生",
  432. inputType:2,
  433. width:200,
  434. labelSize:'80',
  435. rules:[{ required: false, message: ' '}]
  436. },{
  437. span:6,
  438. label: 'fNum3ber',
  439. name:"教室",
  440. inputType:2,
  441. width:200,
  442. labelSize:'80',
  443. rules:[{ required: false, message: ' '}]
  444. },{
  445. span:6,
  446. label: 'fNum3ber',
  447. name:"备注",
  448. inputType:2,
  449. width:200,
  450. labelSize:'80',
  451. rules:[{ required: false, message: ' '}]
  452. },
  453. {
  454. span:6,
  455. label: 'fNum3ber',
  456. name:"开票公司",
  457. inputType:2,
  458. width:200,
  459. labelSize:'80',
  460. rules:[{ required: false, message: ' '}]
  461. },
  462. ]
  463. }
  464. },
  465. created() {
  466. let data = {
  467. tableName: this.queryList.tableName,
  468. userId: Cookies.get("userName"),
  469. };
  470. this.getRow(data)
  471. this.query()
  472. },
  473. methods:{
  474. //查询主页列数据
  475. query(){
  476. listQuery('SQ').then(res =>{
  477. this.tableData = res.rows
  478. })
  479. },
  480. //查询列数据
  481. getRow(data) {
  482. console.log(data.tableName)
  483. select(data).then((res) => {
  484. console.log(res)
  485. if (data.tableName === '采购申请详情'){
  486. if (res.data.length != 0) {
  487. this.purchaseList.columnList = res.data.filter((e) => e.checked == 0);
  488. this.purchaseList.columnList = res.data;
  489. this.setRowList = res.data
  490. this.purchaseList.columnList = this.purchaseList.columnList.filter((e) => e.checked == 0);
  491. // this.waitFor = true
  492. }else {
  493. // this.waitFor = true
  494. this.purchaseList.columnList = this.contentStyle
  495. this.setRowList = this.contentStyle
  496. }
  497. this.pageDisplay = false
  498. this.isItHidden = false
  499. this.inDex = this.contentOption.length
  500. }else {
  501. if (res.data.length != 0) {
  502. this.queryList.columnList = res.data.filter((e) => e.checked == 0);
  503. this.queryList.columnList = res.data;
  504. this.setRowList = res.data
  505. this.queryList.columnList = this.queryList.columnList.filter((e) => e.checked == 0);
  506. // this.waitFor = true
  507. }else {
  508. // this.waitFor = true
  509. this.queryList.columnList = this.listStyle
  510. this.setRowList = this.listStyle
  511. console.log(this.queryList.columnList)
  512. }
  513. this.pageDisplay = true
  514. this.isItHidden = true
  515. this.inDex = 4
  516. }
  517. });
  518. },
  519. returnToForm(row){
  520. console.log(row,111)
  521. },
  522. //查看
  523. viewMethod(scope){
  524. console.log(scope)
  525. },
  526. //修改
  527. modification(scope){
  528. console.log(scope)
  529. },
  530. //删除
  531. deletion(scope){
  532. console.log(scope)
  533. },
  534. //选择框
  535. selectionbox(selection){
  536. console.log(selection)
  537. },
  538. //所以按钮
  539. buttonList(row){
  540. console.log(row)
  541. let data
  542. switch(row.name) {
  543. case '新增':
  544. data = {
  545. tableName: this.purchaseList.tableName,
  546. userId: Cookies.get("userName"),
  547. };
  548. this.getRow(data)
  549. break;
  550. case '返回列表':
  551. data = {
  552. tableName: this.queryList.tableName,
  553. userId: Cookies.get("userName"),
  554. };
  555. this.getRow(data)
  556. break;
  557. default:
  558. this.$message.error('按钮未知错误');
  559. }
  560. },
  561. // 显示搜索条件、点击后会调用此方法
  562. showSearch(){
  563. console.log('到我了')
  564. this.searchWhether = !this.searchWhether
  565. },
  566. //搜索、重置、展开
  567. feedback(res){
  568. console.log(res)
  569. if (res == '展开'){
  570. if (this.inDex == 4){
  571. this.inDex = this.formOption.length
  572. }else {
  573. this.inDex = 4
  574. }
  575. }else if (res == '搜索'){
  576. this.$refs.avatar.submitForm()
  577. }else if (res == '重置'){
  578. this.$refs.avatar.form = {}
  579. }
  580. },
  581. //表单验证通过执行搜索
  582. submitForm(){
  583. console.log('执行搜索')
  584. },
  585. //点击刷新会调用此方法
  586. getList(){
  587. console.log('到我了2')
  588. }
  589. }
  590. }
  591. </script>
  592. <style scoped>
  593. </style>