diff --git a/src/api/bs/myGetPlan.js b/src/api/bs/myGetPlan.js new file mode 100644 index 0000000..3debd33 --- /dev/null +++ b/src/api/bs/myGetPlan.js @@ -0,0 +1,19 @@ +import request from '@/plugin/axios' + +// 获得收/付款计划分页 +export function getPaymentPlanPage(query) { + return request({ + url: '/bs/payment-plan/page', + method: 'get', + params: query + }) +} + + +// 获得收款计划 +export function getPaymentPlan(id) { + return request({ + url: '/bs/payment-plan/get?id=' + id, + method: 'get' + }) +} \ No newline at end of file diff --git a/src/components/MyGetPlanListCard/index.vue b/src/components/MyGetPlanListCard/index.vue new file mode 100644 index 0000000..ed19ed4 --- /dev/null +++ b/src/components/MyGetPlanListCard/index.vue @@ -0,0 +1,184 @@ + + + + + diff --git a/src/router/modules/contract.js b/src/router/modules/contract.js index bca1d32..92af477 100644 --- a/src/router/modules/contract.js +++ b/src/router/modules/contract.js @@ -12,7 +12,8 @@ export default { { path: '/myBidder', name: `${pre}myBidder`, component: () => import('@/views/contract/myBidder'), meta: { cache: true, title: '中标审批列表' } }, { path: '/mySupplier', name: `${pre}mySupplier`, component: () => import('@/views/contract/mySupplier'), meta: { cache: true, title: '供应商合同审批列表' } }, { path: '/myPay', name: `${pre}myPay`, component: () => import('@/views/contract/myPay'), meta: { cache: true, title: '付款申请列表' } }, - { path: '/myPayPlan', name: `${pre}myPayPlan`, component: () => import('@/views/contract/myPayPlan'), meta: { cache: true, title: '付款计划列表' } }, + { path: '/myPayPlan', name: `${pre}myPayPlan`, component: () => import('@/views/contract/myPayPlan'), meta: { cache: true, title: '付款计划列表' } }, + { path: '/myGetPlan', name: `${pre}myGetPlan`, component: () => import('@/views/contract/myGetPlan'), meta: { cache: true, title: '收款计划列表' } }, { path: '/myProtocolFramework', name: `${pre}myProtocolFramework`, component: () => import('@/views/contract/myProtocolFramework'), meta: { cache: true, title: '协议框架列表' } }, { path: '/bidder', name: `${pre}bidder`, component: () => import('@/views/contract/bidder'), meta: { cache: true, title: '中标审批' } }, { path: '/supplier', name: `${pre}supplier`, component: () => import('@/views/contract/supplier'), meta: { cache: true, title: '供应商合同审批' } }, @@ -20,6 +21,7 @@ export default { { path: '/supplierMsg', name: `${pre}supplierMsg`, component: () => import('@/views/contract/supplierMsg'), meta: { cache: true, title: '供应商信息' } }, { path: '/customerCompany', name: `${pre}customerCompany`, component: () => import('@/views/contract/customerCompany'), meta: { cache: true, title: '客户信息' } }, { path: '/payPlan', name: `${pre}payPlan`, component: () => import('@/views/contract/payPlan'), meta: { cache: true, title: '付款计划' } }, + { path: '/getPlan', name: `${pre}getPlan`, component: () => import('@/views/contract/getPlan'), meta: { cache: true, title: '收款计划' } }, { path: '/mySupplierMsg', name: `${pre}mySupplierMsg`, component: () => import('@/views/contract/mySupplierMsg'), meta: { cache: true, title: '供应商信息列表' } }, { path: '/myCustomerCompany', name: `${pre}myCustomerCompany`, component: () => import('@/views/contract/myCustomerCompany'), meta: { cache: true, title: '客户信息列表' } }, /* { path: '/contract/procurement/supplierMsgDatail', name: `${pre}contract/procurement/supplierMsgDatail`, component: () => import('@/views/contract/supplierMsgDatail'), meta: { cache: true, title: '供应商信息' } }, */ diff --git a/src/views/contract/getPlan/index.vue b/src/views/contract/getPlan/index.vue new file mode 100644 index 0000000..f08250f --- /dev/null +++ b/src/views/contract/getPlan/index.vue @@ -0,0 +1,295 @@ + + + + diff --git a/src/views/contract/myGetPlan/components/HeaderFilter.vue b/src/views/contract/myGetPlan/components/HeaderFilter.vue new file mode 100644 index 0000000..627bfed --- /dev/null +++ b/src/views/contract/myGetPlan/components/HeaderFilter.vue @@ -0,0 +1,253 @@ + + + + + diff --git a/src/views/contract/myGetPlan/components/UserList.vue b/src/views/contract/myGetPlan/components/UserList.vue new file mode 100644 index 0000000..e8453d7 --- /dev/null +++ b/src/views/contract/myGetPlan/components/UserList.vue @@ -0,0 +1,320 @@ + + + + diff --git a/src/views/contract/myGetPlan/components/index.scss b/src/views/contract/myGetPlan/components/index.scss new file mode 100644 index 0000000..e5c432f --- /dev/null +++ b/src/views/contract/myGetPlan/components/index.scss @@ -0,0 +1,163 @@ +$hf-contain-p: 0 1.2rem; +$hf-contain-f: 0.76rem; +$hf-high-color: #0088fe; +// 激活的颜色 +$hf-high-color: #0088fe; +.header-filter { + .hf-r-icon-bg-act { + .van-icon { + color: $hf-high-color !important; + } + } + background: #ffffff; + display: flex; + justify-content: space-between; + align-items: center; + padding: $hf-contain-p; + + .hf-l-list { + .hf-l-list-menu { + /deep/.van-dropdown-menu__bar { + height: auto; + box-shadow: none; + + .van-dropdown-menu__item { + flex: inherit; + margin-right: 1rem; + + .van-dropdown-menu__title { + padding: 0.6rem 0.4rem 0.6rem 0; + font-size: $hf-contain-f; + + &::after { + border: 1px solid; + padding: 0.1rem; + border-color: transparent transparent #333333 #333333; + } + } + + .van-dropdown-menu__title--active { + color: $hf-high-color; + + &::after { + border-color: transparent transparent $hf-high-color $hf-high-color; + } + } + } + } + } + } + + .hf-r-list { + display: flex; + + .hf-r-list-item { + margin-left: 0.4rem; + + .hf-r-icon-bg { + background: #d7d7d7; + width: 1.5rem; + height: 1.5rem; + border-radius: 1.5rem; + display: flex; + justify-content: center; + align-items: center; + color: #ffffff; + } + } + } + + .hf-drop-view { + padding: $hf-contain-p; + padding-bottom: 0.8rem; + + .hf-drop-contain { + display: flex; + flex-wrap: wrap; + padding-bottom: 0.8rem; + + .hr-drop-filter-item { + padding: $hf-contain-p; + font-size: $hf-contain-f; + width: 50%; + box-sizing: border-box; + padding: 0.8rem 0; + } + + .hr-drop-filter-item-act { + color: $hf-high-color; + } + } + + // 快捷筛选 + .hf-drop-quick { + margin-top: 1rem; + + .hf-drop-quick-item { + margin-bottom: 1.5rem; + + .hf-drop-quick-title { + color: #333333; + font-size: 0.84rem; + } + + .hf-drop-quick-list { + display: flex; + margin: 0.6rem 0; + font-size: $hf-contain-f; + + .hf-drop-quick-list-item { + border: 1px solid #f3f3f3; + background: #f3f3f3; + margin-right: 0.8rem; + padding: 0.4rem 0.6rem; + border-radius: 1rem; + transition: background-color, color 0.2s linear; + } + + .hf-drop-quick-list-item-act { + background: #ffffff; + color: $hf-high-color; + border: 1px solid $hf-high-color; + } + + .hf-drop-quick-list-item-checkbox { + margin-right: 1rem; + + /deep/.van-checkbox__label { + margin-left: 0.2rem; + } + } + } + + .hf-drop-quick-calendar { + /deep/.van-calendar__header { + box-shadow: none; + border-bottom: 1px solid #eeeeee; + } + } + } + } + } + + .hf-drop-contain-empty { + color: #666666; + text-align: center; + font-size: 0.8rem; + } + + .searchInput { + padding: 0.3rem 0; + width: 100%; + + .van-search__content { + background: #ffffff; + border: 1px solid #f3f3f3; + border-radius: 0.3rem; + + /deep/input { + caret-color: #0088fe; + } + } + } +} diff --git a/src/views/contract/myGetPlan/index.vue b/src/views/contract/myGetPlan/index.vue new file mode 100644 index 0000000..0164de2 --- /dev/null +++ b/src/views/contract/myGetPlan/index.vue @@ -0,0 +1,23 @@ + + + diff --git a/src/views/contract/myPayPlan/components/UserList.vue b/src/views/contract/myPayPlan/components/UserList.vue index 063832c..f82669b 100644 --- a/src/views/contract/myPayPlan/components/UserList.vue +++ b/src/views/contract/myPayPlan/components/UserList.vue @@ -137,6 +137,7 @@ export default { let queryParams = { pageNo: 1, pageSize: this.singlePageSize, + paymentType: 0, ...this.queryForm } this.$loading(true, 'tableLoading') @@ -174,7 +175,8 @@ export default { handleInitSpList() { let queryParams = { pageNo: 1, - pageSize: this.singlePageSize + pageSize: this.singlePageSize, + paymentType: 0 } getMyPayPlanPage(queryParams).then((res) => { this.spList = res.data.list || [] @@ -184,7 +186,8 @@ export default { return new Promise((resolve, reject) => { let listQuery = { pageNo: 1, - pageSize: this.singlePageSize + pageSize: this.singlePageSize, + paymentType: 0 } getMyPayPlanPage(listQuery) .then((res) => { diff --git a/src/views/home/index.vue b/src/views/home/index.vue index fd94309..0608ae8 100644 --- a/src/views/home/index.vue +++ b/src/views/home/index.vue @@ -300,7 +300,7 @@ export default { show: true }, { - route: '/contract/cs/getPlan', + route: '/myGetPlan', title: '收款计划', icon: 'user-o', show: true