settleAccounts.vue 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340
  1. <template>
  2. <div>
  3. <basic-container >
  4. <el-form :model="form" ref="form" label-width="130px">
  5. <el-row>
  6. <el-col v-for="(item, index) in basicData.column" :span="item.span?item.span:8" :key="index">
  7. <el-form-item :label="item.label" :prop="item.prop" :rules="item.rules">
  8. <el-date-picker v-if="item.type === 'datetime'" style="width: 100%;" v-model="form[item.prop]" size="small" type="datetime" placeholder="选择日期" value-format="yyyy-MM-dd HH:mm:ss"/>
  9. <el-select v-else-if="item.type === 'select'" style="width: 100%" size="small" placeholder="请选择" clearable filterable></el-select>
  10. <el-input type="age" v-else v-model="form[item.prop]" size="small" autocomplete="off" placeholder="请输入"></el-input>
  11. </el-form-item>
  12. </el-col>
  13. </el-row>
  14. </el-form>
  15. </basic-container>
  16. <basic-container>
  17. <avue-crud :option="option"
  18. :data="dataList"
  19. ref="crud"
  20. v-model="form"
  21. :page.sync="page"
  22. :before-open="beforeOpen"
  23. @row-del="rowDel"
  24. @search-change="searchChange"
  25. @search-reset="searchReset"
  26. @selection-change="selectionChange"
  27. @current-change="currentChange"
  28. @size-change="sizeChange"
  29. @refresh-change="refreshChange"
  30. @on-load="onLoad">
  31. <template slot="menuLeft">
  32. <el-button type="primary"
  33. size="small"
  34. icon="el-icon-arrow-right"
  35. plain
  36. @click="">导 出
  37. </el-button>
  38. <el-button type="primary"
  39. size="small"
  40. plain
  41. @click="">打 印
  42. </el-button>
  43. <el-button type="info"
  44. size="small"
  45. plain
  46. @click="">请 核
  47. </el-button>
  48. </template>
  49. <template slot-scope="{row}" slot="querenshou">
  50. <el-button type="primary" size="small" @click="">结 算</el-button>
  51. </template>
  52. <template slot-scope="scope" slot="menu">
  53. <el-button
  54. type="text"
  55. icon="el-icon-view"
  56. size="small"
  57. @click.stop="beforeOpenPage(scope.row,scope.index)"
  58. >查看
  59. </el-button>
  60. <el-button
  61. type="text"
  62. icon="el-icon-edit"
  63. size="small"
  64. @click.stop="editOpen(scope.row,scope.index)"
  65. >编辑
  66. </el-button>
  67. <el-button
  68. type="text"
  69. icon="el-icon-edit"
  70. size="small"
  71. @click.stop="rowDel(scope.row,scope.index)"
  72. >移除
  73. </el-button>
  74. </template>
  75. </avue-crud>
  76. </basic-container>
  77. </div>
  78. </template>
  79. <script>
  80. import option from "./configuration/settleAccounts.json";
  81. import {customerList, typeSave,detail,deleteDetails} from "@/api/basicData/customerCategory"
  82. export default {
  83. name: "customerInformation",
  84. data() {
  85. return {
  86. form: {},
  87. option: option,
  88. parentId:0,
  89. dataList: [],
  90. page: {
  91. pageSize: 10,
  92. pagerCount: 5,
  93. total: 0,
  94. },
  95. query:{},
  96. //顶部from数据
  97. basicData: {
  98. column: [
  99. {
  100. label: '代码',
  101. prop: 'orderNo',
  102. rules: [
  103. {
  104. required: false,
  105. message: ' ',
  106. trigger: 'blur'
  107. }
  108. ]
  109. }, {
  110. label: '项目名称',
  111. prop: 'orderNo',
  112. rules: [
  113. {
  114. required: true,
  115. message: ' ',
  116. trigger: 'blur'
  117. }
  118. ]
  119. }, {
  120. label: '客户名称',
  121. prop: 'orderNo',
  122. data: [],
  123. rules: [
  124. {
  125. required: true,
  126. message: ' ',
  127. trigger: 'blur'
  128. }
  129. ]
  130. }, {
  131. label: '责任人',
  132. prop: 'orderNo',
  133. data: [],
  134. rules: [
  135. {
  136. required: true,
  137. message: ' ',
  138. trigger: 'blur'
  139. }
  140. ]
  141. }, {
  142. label: '电话',
  143. prop: 'orderNo',
  144. rules: [
  145. {
  146. required: true,
  147. message: ' ',
  148. trigger: 'blur'
  149. }
  150. ]
  151. }, {
  152. label: '预收金额',
  153. prop: 'orderNo',
  154. rules: [
  155. {
  156. required: true,
  157. message: ' ',
  158. trigger: 'blur'
  159. }
  160. ]
  161. }, {
  162. label: '开始日期',
  163. prop: 'orderNo',
  164. type:'datetime',
  165. data: [],
  166. rules: [
  167. {
  168. required: true,
  169. message: ' ',
  170. trigger: 'blur'
  171. }
  172. ]
  173. }, {
  174. label: '结束日期',
  175. prop: 'orderNo',
  176. type:'datetime',
  177. data: [],
  178. rules: [
  179. {
  180. required: true,
  181. message: ' ',
  182. trigger: 'blur'
  183. }
  184. ]
  185. }, {
  186. label: '收款方式',
  187. prop: 'orderNo',
  188. type:'select',
  189. data: [],
  190. rules: [
  191. {
  192. required: true,
  193. message: ' ',
  194. trigger: 'blur'
  195. }
  196. ]
  197. }, {
  198. label: '备注',
  199. prop: 'orderNo',
  200. rules: [
  201. {
  202. required: true,
  203. message: ' ',
  204. trigger: 'blur'
  205. }
  206. ]
  207. }
  208. ],
  209. },
  210. }
  211. },
  212. created() {
  213. },
  214. methods: {
  215. //新增时跳转页面
  216. beforeOpen(row){
  217. this.$router.push({
  218. path: "/settleAccounts_editPages",
  219. query: {id: JSON.stringify(row.fwxm)},
  220. });
  221. },
  222. //查看
  223. beforeOpenPage(row){
  224. this.$router.push({
  225. path: "/settleAccounts_editPages",
  226. query: {id: JSON.stringify(row.fwxm)},
  227. });
  228. },
  229. //修改
  230. editOpen(row){
  231. this.$router.push({
  232. path: "/settleAccounts_editPages",
  233. query: {id: JSON.stringify(row.fwxm)},
  234. });
  235. },
  236. //删除列表后面的删除按钮触发触发(row, index, done)
  237. rowDel(row, index, done) {
  238. this.$confirm("确定将选择数据删除?", {
  239. confirmButtonText: "确定",
  240. cancelButtonText: "取消",
  241. type: "warning"
  242. }).then(() => {
  243. this.$message({
  244. type: "success",
  245. message: "操作成功!"
  246. });
  247. // 数据回调进行刷新
  248. done(row);
  249. });
  250. },
  251. //点击搜索按钮触发
  252. searchChange(params, done) {
  253. this.query = params;
  254. this.page.currentPage = 1;
  255. params.parentId = 0
  256. this.onLoad(this.page, params);
  257. done()
  258. },
  259. searchReset() {
  260. console.log('1')
  261. },
  262. selectionChange() {
  263. console.log('1')
  264. },
  265. currentChange() {
  266. console.log('1')
  267. },
  268. sizeChange() {
  269. console.log('1')
  270. },
  271. refreshChange() {
  272. console.log('1')
  273. },
  274. onLoad(page, params = {}) {
  275. const {createTimeA} = this.query;
  276. let values = {
  277. ...params,
  278. size:this.page.pageSize,
  279. current:this.page.currentPage
  280. };
  281. if (createTimeA) {
  282. values = {
  283. ...params,
  284. createTime: createTimeA[0] + ' 00:00:00',
  285. endTime: createTimeA[1] + ' 23:59:59',
  286. ...this.query,
  287. size:this.page.pageSize,
  288. current:this.page.currentPage
  289. };
  290. values.createTimeA = null;
  291. }
  292. values.parentId = 0
  293. customerList(values).then(res => {
  294. this.dataList = [
  295. {
  296. fwxm: "食品许可",
  297. sfjy: "5000",
  298. jjdw: "次",
  299. sl:"12",
  300. bj: "3000",
  301. hjje: "6000",
  302. qesf: "8000",
  303. hejijin:"1500",
  304. querenshou:"300",
  305. pinlv:"年",
  306. tixingri:"2022-11-30",
  307. beizhu:"132",
  308. renwubu:"商务部",
  309. cnegzuoren:"小明",
  310. },
  311. {
  312. fwxm: "食品许可",
  313. sfjy: "5000",
  314. jjdw: "次",
  315. sl:"12",
  316. bj: "3000",
  317. hjje: "6000",
  318. qesf: "8000",
  319. hejijin:"1500",
  320. querenshou:"300",
  321. pinlv:"年",
  322. tixingri:"2022-11-30",
  323. beizhu:"132",
  324. renwubu:"商务部",
  325. cnegzuoren:"小明",
  326. }
  327. ];
  328. this.page.total = 1;
  329. })
  330. },
  331. }
  332. }
  333. </script>
  334. <style scoped>
  335. </style>