From 900b2782dfdae6ffe0937fc1af4fd6de8f84d7c9 Mon Sep 17 00:00:00 2001 From: jiangweiguo <1578967617@qq.com> Date: Thu, 21 Nov 2024 14:22:20 +0800 Subject: [PATCH] =?UTF-8?q?=E7=89=A9=E6=96=99=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/bs/myMateriel.js | 19 ++ src/components/MyMaterielListCard/index.vue | 179 ++++++++++ src/router/modules/contract.js | 2 + src/views/contract/materiel/index.vue | 151 +++++++++ .../myMateriel/components/HeaderFilter.vue | 253 ++++++++++++++ .../myMateriel/components/UserList.vue | 315 ++++++++++++++++++ .../contract/myMateriel/components/index.scss | 163 +++++++++ src/views/contract/myMateriel/index.vue | 23 ++ src/views/home/index.vue | 2 +- 9 files changed, 1106 insertions(+), 1 deletion(-) create mode 100644 src/api/bs/myMateriel.js create mode 100644 src/components/MyMaterielListCard/index.vue create mode 100644 src/views/contract/materiel/index.vue create mode 100644 src/views/contract/myMateriel/components/HeaderFilter.vue create mode 100644 src/views/contract/myMateriel/components/UserList.vue create mode 100644 src/views/contract/myMateriel/components/index.scss create mode 100644 src/views/contract/myMateriel/index.vue diff --git a/src/api/bs/myMateriel.js b/src/api/bs/myMateriel.js new file mode 100644 index 0000000..2afd25c --- /dev/null +++ b/src/api/bs/myMateriel.js @@ -0,0 +1,19 @@ +import request from '@/plugin/axios' + +// 获得产品分页 +export function getMaterielPage(query) { + return request({ + url: '/bs/materiel/page', + method: 'get', + params: query + }) +} + + +// 获得产品 +export function getMateriel(id) { + return request({ + url: '/bs/materiel/get?id=' + id, + method: 'get' + }) +} \ No newline at end of file diff --git a/src/components/MyMaterielListCard/index.vue b/src/components/MyMaterielListCard/index.vue new file mode 100644 index 0000000..b65b3f4 --- /dev/null +++ b/src/components/MyMaterielListCard/index.vue @@ -0,0 +1,179 @@ + + + + + diff --git a/src/router/modules/contract.js b/src/router/modules/contract.js index 8023cac..f9b239e 100644 --- a/src/router/modules/contract.js +++ b/src/router/modules/contract.js @@ -22,6 +22,8 @@ export default { { path: '/customerCompany', name: `${pre}customerCompany`, component: () => import('@/views/contract/customerCompany'), meta: { cache: true, title: '客户信息' } }, { path: '/quotationSheet', name: `${pre}quotationSheet`, component: () => import('@/views/contract/quotationSheet'), meta: { cache: true, title: '报价单管理' } }, { path: '/quotationSheetBidding', name: `${pre}quotationSheetBidding`, component: () => import('@/views/contract/quotationSheetBidding'), meta: { cache: true, title: '报价单中标管理' } }, + { path: '/myMateriel', name: `${pre}myMateriel`, component: () => import('@/views/contract/myMateriel'), meta: { cache: true, title: '物料管理列表' } }, + { path: '/materiel', name: `${pre}materiel`, component: () => import('@/views/contract/materiel'), 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: '供应商信息列表' } }, diff --git a/src/views/contract/materiel/index.vue b/src/views/contract/materiel/index.vue new file mode 100644 index 0000000..a63c250 --- /dev/null +++ b/src/views/contract/materiel/index.vue @@ -0,0 +1,151 @@ + + + + diff --git a/src/views/contract/myMateriel/components/HeaderFilter.vue b/src/views/contract/myMateriel/components/HeaderFilter.vue new file mode 100644 index 0000000..627bfed --- /dev/null +++ b/src/views/contract/myMateriel/components/HeaderFilter.vue @@ -0,0 +1,253 @@ + + + + + diff --git a/src/views/contract/myMateriel/components/UserList.vue b/src/views/contract/myMateriel/components/UserList.vue new file mode 100644 index 0000000..04a87dc --- /dev/null +++ b/src/views/contract/myMateriel/components/UserList.vue @@ -0,0 +1,315 @@ + + + + diff --git a/src/views/contract/myMateriel/components/index.scss b/src/views/contract/myMateriel/components/index.scss new file mode 100644 index 0000000..e5c432f --- /dev/null +++ b/src/views/contract/myMateriel/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/myMateriel/index.vue b/src/views/contract/myMateriel/index.vue new file mode 100644 index 0000000..5fd0ec0 --- /dev/null +++ b/src/views/contract/myMateriel/index.vue @@ -0,0 +1,23 @@ + + + diff --git a/src/views/home/index.vue b/src/views/home/index.vue index bad95c1..cae9615 100644 --- a/src/views/home/index.vue +++ b/src/views/home/index.vue @@ -334,7 +334,7 @@ export default { show: true }, { - route: '/contract/procure/materiel', + route: '/myMateriel', title: '物料管理', icon: 'user-o', show: true