From fb4c5da09f304c8b97b8209ca3a7aff1d2753de4 Mon Sep 17 00:00:00 2001 From: jiangweiguo <1578967617@qq.com> Date: Wed, 20 Nov 2024 17:26:08 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=A2=E6=88=B7=E4=BF=A1=E6=81=AF0K?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/bs/myCustomerCompany.js | 19 ++ .../MyCustomerCompanyListCard/index.vue | 170 ++++++++++ src/components/MyCustomerListCard/index.vue | 144 +++++--- src/router/modules/contract.js | 2 + src/views/contract/customerCompany/index.vue | 199 +++++++++++ .../components/HeaderFilter.vue | 253 ++++++++++++++ .../myCustomerCompany/components/UserList.vue | 320 ++++++++++++++++++ .../myCustomerCompany/components/index.scss | 163 +++++++++ .../contract/myCustomerCompany/index.vue | 23 ++ .../myPayPlan/components/UserList.vue | 4 +- src/views/home/index.vue | 2 +- 11 files changed, 1254 insertions(+), 45 deletions(-) create mode 100644 src/api/bs/myCustomerCompany.js create mode 100644 src/components/MyCustomerCompanyListCard/index.vue create mode 100644 src/views/contract/customerCompany/index.vue create mode 100644 src/views/contract/myCustomerCompany/components/HeaderFilter.vue create mode 100644 src/views/contract/myCustomerCompany/components/UserList.vue create mode 100644 src/views/contract/myCustomerCompany/components/index.scss create mode 100644 src/views/contract/myCustomerCompany/index.vue diff --git a/src/api/bs/myCustomerCompany.js b/src/api/bs/myCustomerCompany.js new file mode 100644 index 0000000..94a77fa --- /dev/null +++ b/src/api/bs/myCustomerCompany.js @@ -0,0 +1,19 @@ +import request from '@/plugin/axios' + +// 获得客户公司信息分页 +export function getCustomerCompanyPage(query) { + return request({ + url: "/bs/customer-company/page", + method: "get", + params: query, + }); + } + + +// 获得客户公司信息 +export function getCustomerCompany(id) { + return request({ + url: "/bs/customer-company/get?id=" + id, + method: "get", + }); + } \ No newline at end of file diff --git a/src/components/MyCustomerCompanyListCard/index.vue b/src/components/MyCustomerCompanyListCard/index.vue new file mode 100644 index 0000000..0532a90 --- /dev/null +++ b/src/components/MyCustomerCompanyListCard/index.vue @@ -0,0 +1,170 @@ + + + + + diff --git a/src/components/MyCustomerListCard/index.vue b/src/components/MyCustomerListCard/index.vue index 0575aec..e1f8c6f 100644 --- a/src/components/MyCustomerListCard/index.vue +++ b/src/components/MyCustomerListCard/index.vue @@ -7,34 +7,100 @@
{{}}
-->
-
-
{{handleFilterStatus(DICT_TYPE.BS_EXPENSE_APPLY_STATUS,itemData.status).label}}
+
+
+ {{ + handleFilterStatus( + DICT_TYPE.BS_EXPENSE_APPLY_STATUS, + itemData.status + ).label + }} +
-
- 合同编号: {{itemData.contractNumber}} -
-
- 客户名称:{{itemData.customerCompanyName}} +
+ 合同编号: {{ itemData.contractNumber }}
-
- 签约人员:{{itemData.signatoryName}} +
+ 客户名称:{{ itemData.customerCompanyName }}
-
- 合同金额:{{itemData.amount}} +
+ 签约人员:{{ itemData.signatoryName }}
-
- 合同起止时间: {{dayjs(itemData.startTime).format('YY/MM/DD HH:ss')}} ~ {{dayjs(itemData.endTime).format('YY/MM/DD HH:ss')}} +
+ 合同金额:{{ itemData.amount }}
-
-
{{getDictDataLabel(DICT_TYPE.SR_CT_TYPE,itemData.contractType) || '未知'}}
+
+ 合同起止时间: + {{ dayjs(itemData.startTime).format('YY/MM/DD HH:ss') }} ~ + {{ dayjs(itemData.endTime).format('YY/MM/DD HH:ss') }}
+
- - - + + +
@@ -42,21 +108,18 @@ \ No newline at end of file + diff --git a/src/router/modules/contract.js b/src/router/modules/contract.js index 2111c9f..bca1d32 100644 --- a/src/router/modules/contract.js +++ b/src/router/modules/contract.js @@ -18,8 +18,10 @@ export default { { path: '/supplier', name: `${pre}supplier`, component: () => import('@/views/contract/supplier'), meta: { cache: true, title: '供应商合同审批' } }, { path: '/protocolFramework', name: `${pre}protocolFramework`, component: () => import('@/views/contract/protocolFramework'), meta: { cache: true, title: '协议框架' } }, { 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: '/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: '供应商信息' } }, */ { path: '/myCustom', name: `${pre}myCustom`, component: () => import('@/views/contract/myCustom'), meta: { cache: true, title: '客户合同审批列表' } }, { path: '/custom', name: `${pre}custom`, component: () => import('@/views/contract/custom'), meta: { cache: true, title: '客户合同审批' } }, diff --git a/src/views/contract/customerCompany/index.vue b/src/views/contract/customerCompany/index.vue new file mode 100644 index 0000000..9ee656c --- /dev/null +++ b/src/views/contract/customerCompany/index.vue @@ -0,0 +1,199 @@ + + + + diff --git a/src/views/contract/myCustomerCompany/components/HeaderFilter.vue b/src/views/contract/myCustomerCompany/components/HeaderFilter.vue new file mode 100644 index 0000000..627bfed --- /dev/null +++ b/src/views/contract/myCustomerCompany/components/HeaderFilter.vue @@ -0,0 +1,253 @@ + + + + + diff --git a/src/views/contract/myCustomerCompany/components/UserList.vue b/src/views/contract/myCustomerCompany/components/UserList.vue new file mode 100644 index 0000000..786496d --- /dev/null +++ b/src/views/contract/myCustomerCompany/components/UserList.vue @@ -0,0 +1,320 @@ + + + + diff --git a/src/views/contract/myCustomerCompany/components/index.scss b/src/views/contract/myCustomerCompany/components/index.scss new file mode 100644 index 0000000..e5c432f --- /dev/null +++ b/src/views/contract/myCustomerCompany/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/myCustomerCompany/index.vue b/src/views/contract/myCustomerCompany/index.vue new file mode 100644 index 0000000..aa28a1d --- /dev/null +++ b/src/views/contract/myCustomerCompany/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 a998579..063832c 100644 --- a/src/views/contract/myPayPlan/components/UserList.vue +++ b/src/views/contract/myPayPlan/components/UserList.vue @@ -94,8 +94,8 @@ export default { }, components: { RMList: () => import('@/components/ReComponents/RMList'), - MyPayPlanListCard: () => import('@/components/MyPayPlanListCard'), - RePick: () => import('@/components/ReComponents/RePick') + MyPayPlanListCard: () => import('@/components/MyPayPlanListCard') + // RePick: () => import('@/components/ReComponents/RePick') }, data() { return { diff --git a/src/views/home/index.vue b/src/views/home/index.vue index 14294dc..fd94309 100644 --- a/src/views/home/index.vue +++ b/src/views/home/index.vue @@ -294,7 +294,7 @@ export default { show: true }, { - route: '/contract/cs/customer-company', + route: '/myCustomerCompany', title: '客户信息列表', icon: 'user-o', show: true