Merge branch 'main' of http://git.excellentkk.cn/mkm/OfficeApp
This commit is contained in:
commit
afabc19f0f
78
App.vue
78
App.vue
@ -1,46 +1,46 @@
|
||||
<script>
|
||||
// var jpushModule = uni.requireNativePlugin("JG-JPush");
|
||||
var jpushModule = uni.requireNativePlugin("JG-JPush");
|
||||
// var jpushModule = uni.requireNativePlugin("JG-JPush");
|
||||
var jpushModule = uni.requireNativePlugin("JG-JPush");
|
||||
|
||||
export default {
|
||||
onLaunch: function () {
|
||||
console.log('App Launch')
|
||||
try {
|
||||
if (!this.$store.state.app.token) uni.redirectTo({
|
||||
url: '/pages/oaLogin/oaLogin'
|
||||
})
|
||||
} catch (e) {
|
||||
uni.redirectTo({
|
||||
url: '/pages/oaLogin/oaLogin'
|
||||
})
|
||||
}
|
||||
|
||||
// jpushModule.initJPushService()
|
||||
// const audioContext = uni.createInnerAudioContext()
|
||||
// audioContext.src = './static/mp3/order.mp3'
|
||||
// let ida = [0]
|
||||
// jpushModule.addNotificationListener(function (result) {
|
||||
// if (!ida.includes(result.messageID)) {
|
||||
// audioContext.play()
|
||||
// }
|
||||
// ida.push(result.messageID)
|
||||
// })
|
||||
},
|
||||
onShow: function () {
|
||||
console.log('App Show')
|
||||
},
|
||||
onHide: function () {
|
||||
console.log('App Hide')
|
||||
}
|
||||
}
|
||||
export default {
|
||||
onLaunch: function() {
|
||||
console.log('App Launch')
|
||||
try {
|
||||
if (!this.$store.state.app.token) uni.redirectTo({
|
||||
url: '/pages/oaLogin/oaLogin'
|
||||
})
|
||||
} catch (e) {
|
||||
uni.redirectTo({
|
||||
url: '/pages/oaLogin/oaLogin'
|
||||
})
|
||||
}
|
||||
|
||||
// jpushModule.initJPushService()
|
||||
// const audioContext = uni.createInnerAudioContext()
|
||||
// audioContext.src = './static/mp3/order.mp3'
|
||||
// let ida = [0]
|
||||
// jpushModule.addNotificationListener(function (result) {
|
||||
// if (!ida.includes(result.messageID)) {
|
||||
// audioContext.play()
|
||||
// }
|
||||
// ida.push(result.messageID)
|
||||
// })
|
||||
},
|
||||
onShow: function() {
|
||||
console.log('App Show')
|
||||
},
|
||||
onHide: function() {
|
||||
console.log('App Hide')
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
/*每个页面公共css */
|
||||
@import "static/css/base.css";
|
||||
@import "static/css/style.scss";
|
||||
/*每个页面公共css */
|
||||
@import "static/css/base.css";
|
||||
@import "static/css/style.scss";
|
||||
|
||||
view {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
view {
|
||||
box-sizing: border-box;
|
||||
}
|
||||
</style>
|
File diff suppressed because it is too large
Load Diff
19
main.js
19
main.js
@ -7,6 +7,7 @@ import uView from '@/uni_modules/uview-ui'
|
||||
import taskCard from "@/components/taskCard/taskCard.vue"
|
||||
import mybtn from "@/components/mybtn/mybtn.vue"
|
||||
import company from "@/components/company/company.vue"
|
||||
|
||||
Vue.use(uView)
|
||||
Vue.use(taskCard)
|
||||
Vue.use(mybtn)
|
||||
@ -19,18 +20,20 @@ import Vue from 'vue'
|
||||
Vue.config.productionTip = false
|
||||
App.mpType = 'app'
|
||||
const app = new Vue({
|
||||
...App,
|
||||
store
|
||||
...App,
|
||||
store
|
||||
})
|
||||
app.$mount()
|
||||
// #endif
|
||||
|
||||
// #ifdef VUE3
|
||||
import { createSSRApp } from 'vue'
|
||||
import {
|
||||
createSSRApp
|
||||
} from 'vue'
|
||||
export function createApp() {
|
||||
const app = createSSRApp(App)
|
||||
return {
|
||||
app
|
||||
}
|
||||
const app = createSSRApp(App)
|
||||
return {
|
||||
app
|
||||
}
|
||||
}
|
||||
// #endif
|
||||
// #endif
|
3158
package-lock.json
generated
3158
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
6
package.json
Normal file
6
package.json
Normal file
@ -0,0 +1,6 @@
|
||||
{
|
||||
"devDependencies": {
|
||||
"node-sass": "^9.0.0",
|
||||
"sass-loader": "^13.3.2"
|
||||
}
|
||||
}
|
908
pages.json
908
pages.json
@ -1,86 +1,86 @@
|
||||
{
|
||||
"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
|
||||
"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages
|
||||
|
||||
{
|
||||
"path": "pages/oaHome/oaHome",
|
||||
"style": {
|
||||
"navigationBarTitleText": "首页",
|
||||
"enablePullDownRefresh": true,
|
||||
"app-plus": {
|
||||
"titleNView": false
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/oaLogin/oaLogin",
|
||||
"style": {
|
||||
"navigationBarTitleText": "登录",
|
||||
"app-plus": {
|
||||
"titleNView": false
|
||||
}
|
||||
}
|
||||
{
|
||||
"path": "pages/oaHome/oaHome",
|
||||
"style": {
|
||||
"navigationBarTitleText": "首页",
|
||||
"enablePullDownRefresh": true,
|
||||
"app-plus": {
|
||||
"titleNView": false
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/oaLogin/oaLogin",
|
||||
"style": {
|
||||
"navigationBarTitleText": "登录",
|
||||
"app-plus": {
|
||||
"titleNView": false
|
||||
}
|
||||
}
|
||||
|
||||
},
|
||||
{
|
||||
"path": "pages/business/business",
|
||||
"style": {
|
||||
"navigationBarTitleText": "商机信息",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/business/business",
|
||||
"style": {
|
||||
"navigationBarTitleText": "商机信息",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
},
|
||||
{
|
||||
"path": "pages/index/index",
|
||||
"style": {
|
||||
"navigationBarTitleText": "uni-app",
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/oaExamine/oaExamine",
|
||||
"style": {
|
||||
"navigationBarTitleText": "审批",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/oaTask/oaTask",
|
||||
"style": {
|
||||
"navigationBarTitleText": "今日任务",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/oaMy/oaMy",
|
||||
"style": {
|
||||
"navigationBarTitleText": "我的",
|
||||
"app-plus": {
|
||||
"titleNView": false
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"path": "pages/oaManager/oaManager",
|
||||
"style": {
|
||||
"navigationBarTitleText": "片区经理",
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/index/index",
|
||||
"style": {
|
||||
"navigationBarTitleText": "uni-app",
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/oaExamine/oaExamine",
|
||||
"style": {
|
||||
"navigationBarTitleText": "审批",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/oaTask/oaTask",
|
||||
"style": {
|
||||
"navigationBarTitleText": "今日任务",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "pages/oaMy/oaMy",
|
||||
"style": {
|
||||
"navigationBarTitleText": "我的",
|
||||
"app-plus": {
|
||||
"titleNView": false
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"path": "pages/oaManager/oaManager",
|
||||
"style": {
|
||||
"navigationBarTitleText": "片区经理",
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "pages/oaNews/oaNews",
|
||||
"style": {
|
||||
"navigationBarTitleText": "公告详情",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "pages/oaNews/oaNews",
|
||||
"style": {
|
||||
"navigationBarTitleText": "公告详情",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "pages/logistics/index",
|
||||
@ -118,414 +118,414 @@
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "pages/updatePasswprd/updatePasswprd",
|
||||
"style": {
|
||||
"navigationBarTitleText": "修改密码",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "pages/updatePasswprd/updatePasswprd",
|
||||
"style": {
|
||||
"navigationBarTitleText": "修改密码",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}
|
||||
],
|
||||
"subPackages": [{
|
||||
"root": "pages/views",
|
||||
"name": "views",
|
||||
"pages": [{
|
||||
"path": "application",
|
||||
"style": {
|
||||
"navigationBarTitleText": "地图首页",
|
||||
"enablePullDownRefresh": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "new_task",
|
||||
"style": {
|
||||
"navigationBarTitleText": "新建任务",
|
||||
"enablePullDownRefresh": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "com_approve",
|
||||
"style": {
|
||||
"navigationBarTitleText": "通用审批",
|
||||
"enablePullDownRefresh": false
|
||||
}
|
||||
}, {
|
||||
"path": "personal_center",
|
||||
"style": {
|
||||
"navigationBarTitleText": "个人中心1",
|
||||
"enablePullDownRefresh": false
|
||||
}
|
||||
}
|
||||
],
|
||||
"subPackages": [{
|
||||
"root": "pages/views",
|
||||
"name": "views",
|
||||
"pages": [{
|
||||
"path": "application",
|
||||
"style": {
|
||||
"navigationBarTitleText": "地图首页",
|
||||
"enablePullDownRefresh": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "new_task",
|
||||
"style": {
|
||||
"navigationBarTitleText": "新建任务",
|
||||
"enablePullDownRefresh": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"path": "com_approve",
|
||||
"style": {
|
||||
"navigationBarTitleText": "通用审批",
|
||||
"enablePullDownRefresh": false
|
||||
}
|
||||
}, {
|
||||
"path": "personal_center",
|
||||
"style": {
|
||||
"navigationBarTitleText": "个人中心1",
|
||||
"enablePullDownRefresh": false
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "task_details",
|
||||
"style": {
|
||||
"navigationBarTitleText": "",
|
||||
"enablePullDownRefresh": false
|
||||
}
|
||||
}, {
|
||||
"path": "task_details",
|
||||
"style": {
|
||||
"navigationBarTitleText": "",
|
||||
"enablePullDownRefresh": false
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "personal_center_two",
|
||||
"style": {
|
||||
"navigationBarTitleText": "个人中心2",
|
||||
"enablePullDownRefresh": false
|
||||
}
|
||||
}, {
|
||||
"path": "personal_center_two",
|
||||
"style": {
|
||||
"navigationBarTitleText": "个人中心2",
|
||||
"enablePullDownRefresh": false
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "public_document",
|
||||
"style": {
|
||||
"navigationBarTitleText": "公司公示文档",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "public_document",
|
||||
"style": {
|
||||
"navigationBarTitleText": "公司公示文档",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "leave_request",
|
||||
"style": {
|
||||
"navigationBarTitleText": "请假申请",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "leave_request",
|
||||
"style": {
|
||||
"navigationBarTitleText": "请假申请",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}
|
||||
]
|
||||
}, {
|
||||
"root": "subpkg",
|
||||
"name": "subpkg",
|
||||
"pages": [{
|
||||
"path": "personnel/personnel",
|
||||
"style": {
|
||||
"navigationBarTitleText": "人员管理",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}
|
||||
]
|
||||
}, {
|
||||
"root": "subpkg",
|
||||
"name": "subpkg",
|
||||
"pages": [{
|
||||
"path": "personnel/personnel",
|
||||
"style": {
|
||||
"navigationBarTitleText": "人员管理",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "finance/finance",
|
||||
"style": {
|
||||
"navigationBarTitleText": "财务管理",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "finance/finance",
|
||||
"style": {
|
||||
"navigationBarTitleText": "财务管理",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "topUp/topUp",
|
||||
"style": {
|
||||
"navigationBarTitleText": "账户充值",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white",
|
||||
"app-plus": {
|
||||
"titleNView": {
|
||||
"buttons": [{
|
||||
"color": "#fff",
|
||||
"text": "充值记录",
|
||||
"fontSize": "15",
|
||||
"width": "90"
|
||||
}]
|
||||
}
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"path": "topUp/topUp",
|
||||
"style": {
|
||||
"navigationBarTitleText": "账户充值",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white",
|
||||
"app-plus": {
|
||||
"titleNView": {
|
||||
"buttons": [{
|
||||
"color": "#fff",
|
||||
"text": "充值记录",
|
||||
"fontSize": "15",
|
||||
"width": "90"
|
||||
}]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "contract/contract",
|
||||
"style": {
|
||||
"navigationBarTitleText": "合同管理",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "contract/contract",
|
||||
"style": {
|
||||
"navigationBarTitleText": "合同管理",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "contractDetail/contractDetail",
|
||||
"style": {
|
||||
"navigationBarTitleText": "合同详情",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "contractDetail/contractDetail",
|
||||
"style": {
|
||||
"navigationBarTitleText": "合同详情",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "pdfView/pdfView",
|
||||
"style": {
|
||||
"navigationBarTitleText": "合同内容",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "pdfView/pdfView",
|
||||
"style": {
|
||||
"navigationBarTitleText": "合同内容",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "companyInfo/companyInfo",
|
||||
"style": {
|
||||
"navigationBarTitleText": "公司信息",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "companyInfo/companyInfo",
|
||||
"style": {
|
||||
"navigationBarTitleText": "公司信息",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "companySign/companySign",
|
||||
"style": {
|
||||
"navigationBarTitleText": "签约公司详情",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "companySign/companySign",
|
||||
"style": {
|
||||
"navigationBarTitleText": "签约公司详情",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "personnelDetails/personnelDetails",
|
||||
"style": {
|
||||
"navigationBarTitleText": "人员详细信息",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "personnelDetails/personnelDetails",
|
||||
"style": {
|
||||
"navigationBarTitleText": "人员详细信息",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "orderDetail/orderDetail",
|
||||
"style": {
|
||||
"navigationBarTitleText": "流水详情",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "orderDetail/orderDetail",
|
||||
"style": {
|
||||
"navigationBarTitleText": "流水详情",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "withdrawDeposit/withdrawDeposit",
|
||||
"style": {
|
||||
"navigationBarTitleText": "提现余额",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white",
|
||||
"app-plus": {
|
||||
"titleNView": {
|
||||
"buttons": [{
|
||||
"color": "#fff",
|
||||
"text": "提现记录",
|
||||
"fontSize": "15",
|
||||
"width": "90"
|
||||
}]
|
||||
}
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"path": "withdrawList/withdrawList",
|
||||
"style": {
|
||||
"navigationBarTitleText": "提现记录",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "withdrawDeposit/withdrawDeposit",
|
||||
"style": {
|
||||
"navigationBarTitleText": "提现余额",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white",
|
||||
"app-plus": {
|
||||
"titleNView": {
|
||||
"buttons": [{
|
||||
"color": "#fff",
|
||||
"text": "提现记录",
|
||||
"fontSize": "15",
|
||||
"width": "90"
|
||||
}]
|
||||
}
|
||||
}
|
||||
}
|
||||
}, {
|
||||
"path": "withdrawList/withdrawList",
|
||||
"style": {
|
||||
"navigationBarTitleText": "提现记录",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "noticeList/noticeList",
|
||||
"style": {
|
||||
"navigationBarTitleText": "公告列表",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "noticeList/noticeList",
|
||||
"style": {
|
||||
"navigationBarTitleText": "公告列表",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "topUpList/topUpList",
|
||||
"style": {
|
||||
"navigationBarTitleText": "充值记录",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "topUpList/topUpList",
|
||||
"style": {
|
||||
"navigationBarTitleText": "充值记录",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "companyAdmin/companyAdmin",
|
||||
"style": {
|
||||
"navigationBarTitleText": "公司管理",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "companyAdmin/companyAdmin",
|
||||
"style": {
|
||||
"navigationBarTitleText": "公司管理",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "newPersonnel/newPersonnel",
|
||||
"style": {
|
||||
"navigationBarTitleText": "新增人员",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "newPersonnel/newPersonnel",
|
||||
"style": {
|
||||
"navigationBarTitleText": "新增人员",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "archives/archives",
|
||||
"style": {
|
||||
"navigationBarTitleText": "档案管理",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "archives/archives",
|
||||
"style": {
|
||||
"navigationBarTitleText": "档案管理",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "newArchives/newArchives",
|
||||
"style": {
|
||||
"navigationBarTitleText": "信息登记",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "newArchives/newArchives",
|
||||
"style": {
|
||||
"navigationBarTitleText": "信息登记",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "updateArchives/updateArchives",
|
||||
"style": {
|
||||
"navigationBarTitleText": "信息更新",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "updateArchives/updateArchives",
|
||||
"style": {
|
||||
"navigationBarTitleText": "信息更新",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "fixedAssets/fixedAssets",
|
||||
"style": {
|
||||
"navigationBarTitleText": "固定资产",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "fixedAssets/fixedAssets",
|
||||
"style": {
|
||||
"navigationBarTitleText": "固定资产",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "taskAdmin/taskAdmin",
|
||||
"style": {
|
||||
"navigationBarTitleText": "任务管理",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "taskAdmin/taskAdmin",
|
||||
"style": {
|
||||
"navigationBarTitleText": "任务管理",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "archivesDetail/archivesDetail",
|
||||
"style": {
|
||||
"navigationBarTitleText": "档案详情",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "archivesDetail/archivesDetail",
|
||||
"style": {
|
||||
"navigationBarTitleText": "档案详情",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "captain/captain",
|
||||
"style": {
|
||||
"navigationBarTitleText": "队长列表",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "captain/captain",
|
||||
"style": {
|
||||
"navigationBarTitleText": "队长列表",
|
||||
"enablePullDownRefresh": true,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "companyFinance/companyFinance",
|
||||
"style": {
|
||||
"navigationBarTitleText": "公司财务",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "companyFinance/companyFinance",
|
||||
"style": {
|
||||
"navigationBarTitleText": "公司财务",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "companyUnsign/companyUnsign",
|
||||
"style": {
|
||||
"navigationBarTitleText": "未签约公司列表",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "companyUnsign/companyUnsign",
|
||||
"style": {
|
||||
"navigationBarTitleText": "未签约公司列表",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "submit/submit",
|
||||
"style": {
|
||||
"navigationBarTitleText": "提交审核",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "submit/submit",
|
||||
"style": {
|
||||
"navigationBarTitleText": "提交审核",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "dispatching/dispatching",
|
||||
"style": {
|
||||
"navigationBarTitleText": "任务:宣传配送",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "dispatching/dispatching",
|
||||
"style": {
|
||||
"navigationBarTitleText": "任务:宣传配送",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "blockTransaction/blockTransaction",
|
||||
"style": {
|
||||
"navigationBarTitleText": "任务:片区交易",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "blockTransaction/blockTransaction",
|
||||
"style": {
|
||||
"navigationBarTitleText": "任务:片区交易",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}, {
|
||||
"path": "fileTask/fileTask",
|
||||
"style": {
|
||||
"navigationBarTitleText": "已更新商机",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#3175f9",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
}, {
|
||||
"path": "fileTask/fileTask",
|
||||
"style": {
|
||||
"navigationBarTitleText": "已更新商机",
|
||||
"enablePullDownRefresh": false,
|
||||
"navigationBarBackgroundColor": "#0122C7",
|
||||
"navigationBarTextStyle": "white"
|
||||
}
|
||||
|
||||
}]
|
||||
}],
|
||||
"globalStyle": {
|
||||
"navigationBarTextStyle": "black",
|
||||
"navigationBarTitleText": "uni-app",
|
||||
"navigationBarBackgroundColor": "#F8F8F8",
|
||||
"backgroundColor": "#F8F8F8"
|
||||
},
|
||||
"tabBar": {
|
||||
"color": "#282828",
|
||||
"selectedColor": "#3175f9",
|
||||
"borderStyle": "white",
|
||||
"backgroundColor": "#ffffff",
|
||||
"list": [{
|
||||
"pagePath": "pages/oaHome/oaHome",
|
||||
"text": "首页",
|
||||
"iconPath": "/static/tabs-icon/home.png",
|
||||
"selectedIconPath": "/static/tabs-icon/home-a.png"
|
||||
},
|
||||
{
|
||||
"pagePath": "pages/oaExamine/oaExamine",
|
||||
"text": "审批",
|
||||
"iconPath": "/static/tabs-icon/Task.png",
|
||||
"selectedIconPath": "/static/tabs-icon/Task-a.png"
|
||||
},
|
||||
{
|
||||
"pagePath": "pages/oaTask/oaTask",
|
||||
"text": "任务",
|
||||
"iconPath": "/static/tabs-icon/approval.png",
|
||||
"selectedIconPath": "/static/tabs-icon/approval-a.png"
|
||||
},
|
||||
// {
|
||||
// "pagePath": "pages/oaManager/oaManager",
|
||||
// "text": "片区经理",
|
||||
// "iconPath": "/static/tabs-icon/manager.png",
|
||||
// "selectedIconPath": "/static/tabs-icon/manager-a.png"
|
||||
// },
|
||||
{
|
||||
"pagePath": "pages/business/business",
|
||||
"text": "商机",
|
||||
"iconPath": "/static/tabs-icon/manager.png",
|
||||
"selectedIconPath": "/static/tabs-icon/manager-a.png"
|
||||
},
|
||||
{
|
||||
"pagePath": "pages/oaMy/oaMy",
|
||||
"text": "我的",
|
||||
"iconPath": "/static/tabs-icon/my.png",
|
||||
"selectedIconPath": "/static/tabs-icon/my-a.png"
|
||||
}
|
||||
]
|
||||
},
|
||||
"uniIdRouter": {}
|
||||
}]
|
||||
}],
|
||||
"globalStyle": {
|
||||
"navigationBarTextStyle": "black",
|
||||
"navigationBarTitleText": "uni-app",
|
||||
"navigationBarBackgroundColor": "#F8F8F8",
|
||||
"backgroundColor": "#F8F8F8"
|
||||
},
|
||||
"tabBar": {
|
||||
"color": "#282828",
|
||||
"selectedColor": "#0122C7",
|
||||
"borderStyle": "white",
|
||||
"backgroundColor": "#ffffff",
|
||||
"list": [{
|
||||
"pagePath": "pages/oaHome/oaHome",
|
||||
"text": "首页",
|
||||
"iconPath": "/static/tabs-icon/home.png",
|
||||
"selectedIconPath": "/static/tabs-icon/home-a.png"
|
||||
},
|
||||
{
|
||||
"pagePath": "pages/oaExamine/oaExamine",
|
||||
"text": "审批",
|
||||
"iconPath": "/static/tabs-icon/Task.png",
|
||||
"selectedIconPath": "/static/tabs-icon/Task-a.png"
|
||||
},
|
||||
{
|
||||
"pagePath": "pages/oaTask/oaTask",
|
||||
"text": "任务",
|
||||
"iconPath": "/static/tabs-icon/approval.png",
|
||||
"selectedIconPath": "/static/tabs-icon/approval-a.png"
|
||||
},
|
||||
// {
|
||||
// "pagePath": "pages/oaManager/oaManager",
|
||||
// "text": "片区经理",
|
||||
// "iconPath": "/static/tabs-icon/manager.png",
|
||||
// "selectedIconPath": "/static/tabs-icon/manager-a.png"
|
||||
// },
|
||||
{
|
||||
"pagePath": "pages/business/business",
|
||||
"text": "商机",
|
||||
"iconPath": "/static/tabs-icon/manager.png",
|
||||
"selectedIconPath": "/static/tabs-icon/manager-a.png"
|
||||
},
|
||||
{
|
||||
"pagePath": "pages/oaMy/oaMy",
|
||||
"text": "我的",
|
||||
"iconPath": "/static/tabs-icon/my.png",
|
||||
"selectedIconPath": "/static/tabs-icon/my-a.png"
|
||||
}
|
||||
]
|
||||
},
|
||||
"uniIdRouter": {}
|
||||
}
|
@ -1,114 +1,132 @@
|
||||
<template>
|
||||
<view>
|
||||
<u-sticky bgColor="#0122C7" style="width: 100vw">
|
||||
<u-tabs
|
||||
:list="tabLists"
|
||||
@change="sectionChange"
|
||||
lineColor="#fff"
|
||||
:scrollable="false"
|
||||
lineWidth="40"
|
||||
inactiveStyle="color:#fff"
|
||||
activeStyle="color:#fff"
|
||||
></u-tabs>
|
||||
</u-sticky>
|
||||
<view class="content">
|
||||
<u-search
|
||||
placeholder="搜索你的订单"
|
||||
@search="getOrderList"
|
||||
:show-action="false"
|
||||
bg-color="white"
|
||||
v-model="keywords"
|
||||
></u-search>
|
||||
<view v-if="!orderlist.length">
|
||||
<u-empty mode="data" icon="../../static/img/empty/data.png"> </u-empty>
|
||||
</view>
|
||||
<view v-else>
|
||||
<logistiCard
|
||||
ref="logistiCards"
|
||||
v-for="(item, index) in orderlist"
|
||||
@getlist="getOrderList"
|
||||
@showTost="showToast"
|
||||
@showToast2="showToast2"
|
||||
:goodsInfo="item"
|
||||
:key="index"
|
||||
>
|
||||
</logistiCard>
|
||||
</view>
|
||||
<!-- -->
|
||||
<u-toast ref="uToast"></u-toast>
|
||||
</view>
|
||||
</view>
|
||||
<view>
|
||||
<!-- <globalPopup ref="globalPopup"></globalPopup> -->
|
||||
<u-sticky bgColor="#0122C7" style="width: 100vw;">
|
||||
<u-tabs :list="tabLists" @change="sectionChange" lineColor='#fff' :scrollable="false" lineWidth='40'
|
||||
inactiveStyle='color:#fff' activeStyle="color:#fff"></u-tabs>
|
||||
</u-sticky>
|
||||
<view class="content">
|
||||
<u-search placeholder="搜索你的订单" @search="getOrderList" :show-action='false' bg-color='white'
|
||||
v-model="keywords"></u-search>
|
||||
<view v-if="!orderlist.length">
|
||||
<u-empty mode="data" icon="../../static/img/empty/data.png">
|
||||
</u-empty>
|
||||
</view>
|
||||
<view v-else>
|
||||
<logistiCard ref="logistiCards" v-for='(item,index) in orderlist' @getlist="getOrderList"
|
||||
@showTost='showToast' @showToast2="showToast2" :goodsInfo="item" :key="index">
|
||||
</logistiCard>
|
||||
</view>
|
||||
<!-- -->
|
||||
<u-toast ref="uToast"></u-toast>
|
||||
</view>
|
||||
|
||||
|
||||
</view>
|
||||
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {
|
||||
getList
|
||||
} from "@/api/logistics.js"
|
||||
import {
|
||||
informationAdd
|
||||
} from "@/api/logistics.js"
|
||||
import logistiCard from "@/components/logistiComptent/logistiCard/logistiCard.vue"
|
||||
export default {
|
||||
components: {
|
||||
logistiCard
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
keywords: "",
|
||||
list: ['待取货', '已取货', '已送达'],
|
||||
curNow: 0,
|
||||
orderlist: []
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
sectionChange (index) {
|
||||
this.curNow = index;
|
||||
this.getOrderList()
|
||||
},
|
||||
import {
|
||||
getList
|
||||
} from "@/api/logistics.js"
|
||||
// import globalPopup from "@/components/GlobalPopup/GlobalPopup.vue"
|
||||
import {
|
||||
informationAdd
|
||||
} from "@/api/logistics.js"
|
||||
import logistiCard from "@/components/logistiComptent/logistiCard/logistiCard.vue"
|
||||
//#ifdef APP-PLUS
|
||||
var jpushModule = uni.requireNativePlugin("JG-JPush");
|
||||
// #endif
|
||||
export default {
|
||||
components: {
|
||||
logistiCard,
|
||||
// globalPopup
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
notArr: [],
|
||||
keywords: "",
|
||||
tabLists: [{
|
||||
name: '待配送',
|
||||
}, {
|
||||
name: '待送达'
|
||||
}, {
|
||||
name: '已送达'
|
||||
}],
|
||||
curNow: 0,
|
||||
orderlist: []
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
go() {
|
||||
uni.navigateTo({
|
||||
url: "/pages/logistics/te"
|
||||
})
|
||||
},
|
||||
sectionChange(index) {
|
||||
|
||||
showToast () {
|
||||
// 6
|
||||
this.$refs.uToast.show({
|
||||
type: 'success',
|
||||
title: '成功主题(带图标)',
|
||||
message: "操作成功",
|
||||
iconUrl: 'https://cdn.uviewui.com/uview/demo/toast/success.png'
|
||||
})
|
||||
},
|
||||
showToast2 () {
|
||||
// 6
|
||||
this.curNow = index.index;
|
||||
this.getOrderList()
|
||||
},
|
||||
|
||||
this.$refs.uToast.show({
|
||||
type: 'error',
|
||||
message: "取件码不能为空",
|
||||
iconUrl: 'https://cdn.uviewui.com/uview/demo/toast/error.png'
|
||||
},)
|
||||
},
|
||||
getOrderList () {
|
||||
console.log("列表更新")
|
||||
let id = JSON.parse(uni.getStorageSync('USER_INFO')).id
|
||||
getList({
|
||||
status: this.curNow,
|
||||
courier_id: id,
|
||||
keywords: this.keywords
|
||||
}).then(res => {
|
||||
this.orderlist = []
|
||||
this.orderlist = res.data.data
|
||||
})
|
||||
}
|
||||
showToast() {
|
||||
// 6
|
||||
this.$refs.uToast.show({
|
||||
type: 'success',
|
||||
title: '成功主题(带图标)',
|
||||
message: "操作成功",
|
||||
iconUrl: 'https://cdn.uviewui.com/uview/demo/toast/success.png'
|
||||
})
|
||||
},
|
||||
showToast2() {
|
||||
// 6
|
||||
|
||||
},
|
||||
onLoad () { },
|
||||
onShow () {
|
||||
this.getOrderList()
|
||||
}
|
||||
this.$refs.uToast.show({
|
||||
type: 'error',
|
||||
message: "取件码不能为空",
|
||||
iconUrl: 'https://cdn.uviewui.com/uview/demo/toast/error.png'
|
||||
}, )
|
||||
},
|
||||
getOrderList() {
|
||||
console.log("列表更新")
|
||||
let id = JSON.parse(uni.getStorageSync('USER_INFO')).id
|
||||
getList({
|
||||
status: this.curNow,
|
||||
courier_id: id,
|
||||
keywords: this.keywords
|
||||
}).then(res => {
|
||||
this.orderlist = []
|
||||
this.orderlist = res.data.data
|
||||
})
|
||||
}
|
||||
|
||||
}
|
||||
},
|
||||
onLoad() {
|
||||
let that = this
|
||||
//#ifdef APP-PLUS
|
||||
jpushModule.addNotificationListener(function(result) {
|
||||
if (!that.notArr.includes(result.messageID)) {
|
||||
that.$refs.globalPopup.showPopu();
|
||||
that.getOrderList()
|
||||
|
||||
}
|
||||
that.notArr.push(result.messageID)
|
||||
})
|
||||
// #endif
|
||||
},
|
||||
onShow() {
|
||||
this.getOrderList()
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang='scss'>
|
||||
.content {
|
||||
background-color: #f5f5f5;
|
||||
padding: 1vh 2vw;
|
||||
}
|
||||
.content {
|
||||
margin-top: 2vh;
|
||||
background-color: #F5F5F5;
|
||||
padding: 0vh 2vw;
|
||||
}
|
||||
</style>
|
@ -1,3 +1,5 @@
|
||||
<!-- -->
|
||||
|
||||
<template>
|
||||
<view>
|
||||
<button @click="test2">按钮</button>
|
||||
|
File diff suppressed because it is too large
Load Diff
1
static/css/global.scss
Normal file
1
static/css/global.scss
Normal file
@ -0,0 +1 @@
|
||||
$base-color: #0122c7;
|
@ -1,233 +1,463 @@
|
||||
<template>
|
||||
<view class="">
|
||||
<view class="personnel_list">
|
||||
<view class="item" v-for="(item, index) in list" :key="item.id">
|
||||
<view class="top">
|
||||
<image class="avatar" src="../../static/img/public/record.png"></image>
|
||||
<view class="body">
|
||||
<view>姓名:<text class="name">{{item.name}}</text></view>
|
||||
<view>
|
||||
片区:<text class="name">{{(item.village_name||'')+(item.brigade_name||'')}}</text>
|
||||
</view>
|
||||
<view>电话:<text class="name">{{item.phone}}</text></view>
|
||||
<view class="">
|
||||
<!-- <view class="personnel_list">
|
||||
<view class="item" v-for="(item, index) in list" :key="item.id">
|
||||
<view class="top">
|
||||
<image class="avatar" src="../../static/img/public/record.png"></image>
|
||||
<view class="body">
|
||||
<view>姓名:<text class="name">{{item.name}}</text></view>
|
||||
<view>
|
||||
片区:<text class="name">{{(item.village_name||'')+(item.brigade_name||'')}}</text>
|
||||
</view>
|
||||
<view>电话:<text class="name">{{item.phone}}</text></view>
|
||||
</view>
|
||||
</view>
|
||||
<u-line color="#cccccc"></u-line>
|
||||
<view class="bottom">
|
||||
<view>更新时间: {{item.update_time}}</view>
|
||||
<view class="right" v-if="showView">
|
||||
<view class="update"
|
||||
@click="navTo(`/subpkg/updateArchives/updateArchives?id=${item.id}&task_id=${task_id}`)">
|
||||
更新
|
||||
</view>
|
||||
<view class="look" @click="navTo('/subpkg/archivesDetail/archivesDetail?id='+item.id)">
|
||||
查看
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<u-empty v-if="loadConfig.status=='nomore'&& list.length==0" text="没有档案" icon="/static/img/empty/list.png">
|
||||
</u-empty>
|
||||
<u-loadmore v-else :status="loadConfig.status" :loading-text="loadConfig.loadingText"
|
||||
:loadmore-text="loadConfig.loadmoreText" :nomore-text="loadConfig.nomoreText" />
|
||||
</view>
|
||||
-->
|
||||
|
||||
<view class="personnel_list">
|
||||
<view class="card" v-for="(item, index) in list" :key="item.id">
|
||||
<view class="card_head">
|
||||
<text style="font-size: 32rpx">最后更新: {{item.update_time.substring(0, 10)}}</text>
|
||||
<text v-if="showView"
|
||||
@click="navTo(`/subpkg/updateArchives/updateArchives?id=${item.id}&task_id=${task_id}`)">更新档案</text>
|
||||
<text v-if="showView"
|
||||
@click="navTo('/subpkg/archivesDetail/archivesDetail?id='+item.id)">查看档案</text>
|
||||
</view>
|
||||
<view class="card_content">
|
||||
|
||||
<view class="right">
|
||||
<view class="">
|
||||
<text>人员姓名 :</text>
|
||||
<text> {{item.name}}</text>
|
||||
</view>
|
||||
<view class="">
|
||||
<text>联系电话 :</text>
|
||||
<text>{{item.phone}}</text>
|
||||
</view>
|
||||
<view class="">
|
||||
<text>所属片区 :</text>
|
||||
<text>{{(item.village_name||'')+(item.brigade_name||'')}}</text>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
|
||||
<view class="left">
|
||||
<view class="cir">
|
||||
<u--image class="u_avatar" :showLoading="true" :src=" '../../static/img/public/man.png'"
|
||||
width="112.28rpx" height="112.28rpx" shape="circle"></u--image>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
<!-- <block v-for="(item, index) in list" :key="item.id">
|
||||
<view class="personnel_item" @click="navTo('/subpkg/archives/archives?id='+item.id)">
|
||||
<view class="type" :class="item.is_contract?'type_blue':''">
|
||||
<image v-if="item.is_contract" src="../../static/icons/ok_w.png"></image>
|
||||
<image v-else src="../../static/icons/err_w.png"></image>
|
||||
</view>
|
||||
</view>
|
||||
<u-line color="#cccccc"></u-line>
|
||||
<view class="bottom">
|
||||
<view>更新时间: {{item.update_time}}</view>
|
||||
<view class="right" v-if="showView">
|
||||
<view class="update" @click="navTo(`/subpkg/updateArchives/updateArchives?id=${item.id}&task_id=${task_id}`)">
|
||||
更新
|
||||
<view class="top" style="margin-bottom: 28rpx;">
|
||||
<view class="left">
|
||||
<u--image class="u_avatar" :showLoading="true" :src="item.avatar||'../../static/img/public/man.png'"
|
||||
width="112.28rpx" height="112.28rpx" shape="circle"></u--image>
|
||||
</view>
|
||||
<view class="look" @click="navTo('/subpkg/archivesDetail/archivesDetail?id='+item.id)">
|
||||
查看
|
||||
<view class="right">
|
||||
<view class="info_top">
|
||||
<view class="info_name">{{item.nickname}}</view>
|
||||
<text class="phone">电话:</text>
|
||||
<text class="tel">{{item.phone||item.account}}</text>
|
||||
</view>
|
||||
<view class="info_bottom">
|
||||
<text class="item phone">
|
||||
分管片区:
|
||||
</text>
|
||||
<view class="item">
|
||||
<view class="location">
|
||||
<text>{{ (item.street_name||'')+(item.village_name||'')+(item.brigade_name||'') }}</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="info_bottom">
|
||||
<text class="item phone">
|
||||
所属公司:
|
||||
</text>
|
||||
<view class="item" v-if="item.company">
|
||||
<view class="location">
|
||||
{{item.company.company_name}}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<u-line color="#999999FF"></u-line>
|
||||
<view class="bottom" style="margin-top: 28rpx;float: right;">
|
||||
<view class="look">{{'管理户数: '+item.informationg_count+" 户"}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<u-empty v-if="loadConfig.status=='nomore'&& list.length==0" text="没有档案" icon="/static/img/empty/list.png">
|
||||
</u-empty>
|
||||
<u-loadmore v-else :status="loadConfig.status" :loading-text="loadConfig.loadingText"
|
||||
:loadmore-text="loadConfig.loadmoreText" :nomore-text="loadConfig.nomoreText" />
|
||||
</view>
|
||||
<mybtn text="信息登记" v-if="showView" @click="navTo('/subpkg/newArchives/newArchives')"></mybtn>
|
||||
</view>
|
||||
</block> -->
|
||||
<u-empty v-if="loadConfig.status == 'nomore' && list.length == 0"
|
||||
icon="/static/img/empty/data.png"></u-empty>
|
||||
<u-loadmore v-else :status="loadConfig.status" :loading-text="loadConfig.loadingText"
|
||||
:loadmore-text="loadConfig.loadmoreText" :nomore-text="loadConfig.nomoreText" />
|
||||
</view>
|
||||
|
||||
|
||||
<mybtn text="信息登记" v-if="showView" @click="navTo('/subpkg/newArchives/newArchives')"></mybtn>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {
|
||||
informationList
|
||||
} from "@/api/information.js";
|
||||
import {
|
||||
taskInformationgist
|
||||
} from "@/api/task.js";
|
||||
import {
|
||||
Toast
|
||||
} from "../../libs/uniApi";
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
user_id: -1,
|
||||
task_id: -1,
|
||||
is_admin: false,
|
||||
list: [],
|
||||
loadConfig: {
|
||||
page: 1,
|
||||
limit: 15,
|
||||
loadingText: '努力加载中',
|
||||
loadmoreText: '轻轻上拉',
|
||||
nomoreText: '我也是有底线的~~',
|
||||
status: 'loadmore'
|
||||
},
|
||||
}
|
||||
},
|
||||
onLoad(options) {
|
||||
// 判断是否包含小队长id
|
||||
if (options.id) this.user_id = options.id;
|
||||
else if (this.$store.state.app.userInfo.admin_id == 0) { //如果用户是小队长,将带上自己的id
|
||||
this.user_id = this.$store.state.app.userInfo.id;
|
||||
}else { // 判断是否为管理员
|
||||
this.is_admin = true;
|
||||
}
|
||||
// 判断是否为任务
|
||||
if(options.task_id) {
|
||||
this.task_id = options.task_id;
|
||||
uni.setNavigationBarTitle({
|
||||
title: '任务:信息更新'
|
||||
})
|
||||
}
|
||||
this.loadInformationList();
|
||||
uni.$on('loadArchives', this.initLoad);
|
||||
},
|
||||
onShow() {
|
||||
import {
|
||||
informationList
|
||||
} from "@/api/information.js";
|
||||
import {
|
||||
taskInformationgist
|
||||
} from "@/api/task.js";
|
||||
import {
|
||||
Toast
|
||||
} from "../../libs/uniApi";
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
user_id: -1,
|
||||
task_id: -1,
|
||||
is_admin: false,
|
||||
list: [],
|
||||
loadConfig: {
|
||||
page: 1,
|
||||
limit: 15,
|
||||
loadingText: '努力加载中',
|
||||
loadmoreText: '轻轻上拉',
|
||||
nomoreText: '我也是有底线的~~',
|
||||
status: 'loadmore'
|
||||
},
|
||||
}
|
||||
},
|
||||
onLoad(options) {
|
||||
// 判断是否包含小队长id
|
||||
if (options.id) this.user_id = options.id;
|
||||
else if (this.$store.state.app.userInfo.admin_id == 0) { //如果用户是小队长,将带上自己的id
|
||||
this.user_id = this.$store.state.app.userInfo.id;
|
||||
} else { // 判断是否为管理员
|
||||
this.is_admin = true;
|
||||
}
|
||||
// 判断是否为任务
|
||||
if (options.task_id) {
|
||||
this.task_id = options.task_id;
|
||||
uni.setNavigationBarTitle({
|
||||
title: '任务:信息更新'
|
||||
})
|
||||
}
|
||||
this.loadInformationList();
|
||||
uni.$on('loadArchives', this.initLoad);
|
||||
},
|
||||
onShow() {
|
||||
|
||||
},
|
||||
computed: {
|
||||
// 是否显示查看和更新按钮
|
||||
showView() {
|
||||
return !this.$store.state.app.userInfo.admin_id && this.$store.state.app.userInfo.is_captain;
|
||||
}
|
||||
},
|
||||
onReachBottom() {
|
||||
this.loadInformationList();
|
||||
},
|
||||
methods: {
|
||||
navTo(url) {
|
||||
if (url) {
|
||||
uni.showLoading({
|
||||
title: '加载中',
|
||||
mask: true
|
||||
})
|
||||
uni.navigateTo({
|
||||
url: url,
|
||||
success() {
|
||||
uni.hideLoading()
|
||||
}
|
||||
})
|
||||
} else Toast('暂未开放');
|
||||
},
|
||||
async initLoad() {
|
||||
this.loadConfig.page = 1;
|
||||
this.loadConfig.status = "loadmore";
|
||||
this.list = [];
|
||||
this.is_admin?null:await this.loadInformationList();
|
||||
uni.stopPullDownRefresh();
|
||||
},
|
||||
async loadInformationList() {
|
||||
let that = this;
|
||||
if (this.loadConfig.status == "nomore") return;
|
||||
this.loadConfig.status = "loading"
|
||||
let res = {};
|
||||
if(this.is_admin) res = await taskInformationgist({
|
||||
id: this.task_id
|
||||
});
|
||||
else res = await informationList({
|
||||
page: this.loadConfig.page,
|
||||
limit: this.loadConfig.limit,
|
||||
user_id: that.user_id
|
||||
})
|
||||
this.loadConfig.status = "loadmore"
|
||||
if (res.data.length < this.loadConfig.limit) {
|
||||
this.loadConfig.status = "nomore"
|
||||
} else {
|
||||
this.loadConfig.page++;
|
||||
}
|
||||
this.list = [...this.list, ...res.data];
|
||||
}
|
||||
},
|
||||
onPullDownRefresh() {
|
||||
this.initLoad();
|
||||
}
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
// 是否显示查看和更新按钮
|
||||
showView() {
|
||||
return !this.$store.state.app.userInfo.admin_id && this.$store.state.app.userInfo.is_captain;
|
||||
}
|
||||
},
|
||||
onReachBottom() {
|
||||
this.loadInformationList();
|
||||
},
|
||||
methods: {
|
||||
navTo(url) {
|
||||
if (url) {
|
||||
uni.showLoading({
|
||||
title: '加载中',
|
||||
mask: true
|
||||
})
|
||||
uni.navigateTo({
|
||||
url: url,
|
||||
success() {
|
||||
uni.hideLoading()
|
||||
}
|
||||
})
|
||||
} else Toast('暂未开放');
|
||||
},
|
||||
async initLoad() {
|
||||
this.loadConfig.page = 1;
|
||||
this.loadConfig.status = "loadmore";
|
||||
this.list = [];
|
||||
this.is_admin ? null : await this.loadInformationList();
|
||||
uni.stopPullDownRefresh();
|
||||
},
|
||||
async loadInformationList() {
|
||||
let that = this;
|
||||
if (this.loadConfig.status == "nomore") return;
|
||||
this.loadConfig.status = "loading"
|
||||
let res = {};
|
||||
if (this.is_admin) res = await taskInformationgist({
|
||||
id: this.task_id
|
||||
});
|
||||
else res = await informationList({
|
||||
page: this.loadConfig.page,
|
||||
limit: this.loadConfig.limit,
|
||||
user_id: that.user_id
|
||||
})
|
||||
this.loadConfig.status = "loadmore"
|
||||
if (res.data.length < this.loadConfig.limit) {
|
||||
this.loadConfig.status = "nomore"
|
||||
} else {
|
||||
this.loadConfig.page++;
|
||||
}
|
||||
this.list = [...this.list, ...res.data];
|
||||
}
|
||||
},
|
||||
onPullDownRefresh() {
|
||||
this.initLoad();
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.new_btn {
|
||||
position: fixed;
|
||||
bottom: 28rpx;
|
||||
left: 50%;
|
||||
transform: translate(-50%);
|
||||
margin-top: 32rpx;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 694rpx;
|
||||
height: 84rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 42rpx 42rpx 42rpx 42rpx;
|
||||
color: #fff;
|
||||
line-height: 80rpx;
|
||||
text-align: center;
|
||||
}
|
||||
.new_btn {
|
||||
position: fixed;
|
||||
bottom: 28rpx;
|
||||
left: 50%;
|
||||
transform: translate(-50%);
|
||||
margin-top: 32rpx;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 694rpx;
|
||||
height: 84rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 42rpx 42rpx 42rpx 42rpx;
|
||||
color: #fff;
|
||||
line-height: 80rpx;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.personnel_list {
|
||||
padding: 28rpx 0;
|
||||
margin-bottom: 130rpx;
|
||||
.personnel_list {
|
||||
padding: 28rpx 0;
|
||||
margin-bottom: 130rpx;
|
||||
|
||||
.item {
|
||||
margin: 0 auto;
|
||||
width: 694rpx;
|
||||
// height: 201rpx;
|
||||
background: #FFFFFF;
|
||||
border-radius: 14rpx 14rpx 14rpx 14rpx;
|
||||
opacity: 1;
|
||||
margin-bottom: 21rpx;
|
||||
box-sizing: border-box;
|
||||
padding: 28rpx;
|
||||
font-size: 24.53rpx;
|
||||
color: #999999FF;
|
||||
.card {
|
||||
margin: 0 auto;
|
||||
margin-bottom: 28rpx;
|
||||
width: 694rpx;
|
||||
background: #ffffff;
|
||||
border-radius: 30rpx;
|
||||
opacity: 1;
|
||||
overflow: hidden;
|
||||
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
||||
|
||||
.top {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
width: 100%;
|
||||
.card_head {
|
||||
padding: 28rpx;
|
||||
background-color: $theme-oa-color;
|
||||
color: white;
|
||||
height: 100rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.avatar {
|
||||
width: 120rpx;
|
||||
height: 120rpx;
|
||||
margin-right: 18rpx;
|
||||
margin-bottom: 12rpx;
|
||||
}
|
||||
.card_content {
|
||||
padding: 28rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
.body {
|
||||
flex: 1;
|
||||
font-size: 28rpx;
|
||||
color: #333;
|
||||
font-weight: bold;
|
||||
|
||||
.name {
|
||||
font-size: 28rpx;
|
||||
color: #333;
|
||||
font-weight: 500;
|
||||
display: inline-block;
|
||||
margin-left: 18rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.bottom {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
margin-top: 20rpx;
|
||||
font-size: 25rpx;
|
||||
|
||||
.right {
|
||||
font-size: 28rpx;
|
||||
display: flex;
|
||||
|
||||
.look {
|
||||
color: $theme-oa-color;
|
||||
}
|
||||
|
||||
.update {
|
||||
color: #34A853;
|
||||
margin-right: 38rpx;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
.left {
|
||||
text-align: center;
|
||||
// padding: 15rpx 25rpx;
|
||||
padding-top: 20rpx;
|
||||
|
||||
|
||||
}
|
||||
width: 160rpx;
|
||||
background-color: $theme-oa-color;
|
||||
color: white;
|
||||
border-radius: 40rpx;
|
||||
|
||||
}
|
||||
.cir {
|
||||
width: 120rpx;
|
||||
height: 120rpx;
|
||||
background-color: #ffffff;
|
||||
margin-left: 25rpx;
|
||||
border-radius: 120rpx;
|
||||
position: relative;
|
||||
}
|
||||
}
|
||||
|
||||
.right {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
|
||||
view {
|
||||
text:nth-child(2) {
|
||||
margin-left: 20rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// .top {
|
||||
// display: flex;
|
||||
// justify-content: left;
|
||||
// // align-items: center;
|
||||
|
||||
// .avatar {
|
||||
// width: 88rpx;
|
||||
// height: 88rpx;
|
||||
// border-radius: 50%;
|
||||
// margin-right: 18rpx;
|
||||
// }
|
||||
|
||||
.u_avatar {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
|
||||
// .text {
|
||||
// display: flex;
|
||||
// justify-content: space-around;
|
||||
// flex-direction: column;
|
||||
|
||||
// .name {
|
||||
// font-size: 32rpx;
|
||||
// font-weight: 500;
|
||||
// color: #333333;
|
||||
// }
|
||||
|
||||
// .mobile {
|
||||
// color: #999999;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
// .bottom {
|
||||
// display: flex;
|
||||
// justify-content: space-between;
|
||||
// font-size: 25rpx;
|
||||
// font-weight: 400;
|
||||
|
||||
// .left {
|
||||
// display: flex;
|
||||
// justify-content: left;
|
||||
// align-items: center;
|
||||
// margin-top: 20rpx;
|
||||
|
||||
// .circle {
|
||||
// width: 11rpx;
|
||||
// height: 11rpx;
|
||||
// opacity: 1;
|
||||
// border: 2rpx solid #34A853;
|
||||
// margin-right: 10rpx;
|
||||
// border-radius: 50%;
|
||||
// }
|
||||
|
||||
// .green {
|
||||
// font-weight: 400;
|
||||
// color: #34A853;
|
||||
// line-height: 0rpx;
|
||||
// margin-right: 18rpx;
|
||||
// -webkit-background-clip: text;
|
||||
// }
|
||||
|
||||
// .b_l_text {
|
||||
// width: 360rpx;
|
||||
// overflow: hidden;
|
||||
// text-overflow: ellipsis;
|
||||
// white-space: nowrap;
|
||||
// }
|
||||
// }
|
||||
|
||||
// .right {
|
||||
// color: #3274F9;
|
||||
// margin-top: 20rpx;
|
||||
// }
|
||||
// }
|
||||
}
|
||||
|
||||
// .item {
|
||||
// margin: 0 auto;
|
||||
// width: 694rpx;
|
||||
// // height: 201rpx;
|
||||
// background: #FFFFFF;
|
||||
// border-radius: 14rpx 14rpx 14rpx 14rpx;
|
||||
// opacity: 1;
|
||||
// margin-bottom: 21rpx;
|
||||
// box-sizing: border-box;
|
||||
// padding: 28rpx;
|
||||
// font-size: 24.53rpx;
|
||||
// color: #999999FF;
|
||||
|
||||
// .top {
|
||||
// display: flex;
|
||||
// align-items: center;
|
||||
// width: 100%;
|
||||
|
||||
// .avatar {
|
||||
// width: 120rpx;
|
||||
// height: 120rpx;
|
||||
// margin-right: 18rpx;
|
||||
// margin-bottom: 12rpx;
|
||||
// }
|
||||
|
||||
// .body {
|
||||
// flex: 1;
|
||||
// font-size: 28rpx;
|
||||
// color: #333;
|
||||
// font-weight: bold;
|
||||
|
||||
// .name {
|
||||
// font-size: 28rpx;
|
||||
// color: #333;
|
||||
// font-weight: 500;
|
||||
// display: inline-block;
|
||||
// margin-left: 18rpx;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
// .bottom {
|
||||
// display: flex;
|
||||
// justify-content: space-between;
|
||||
// align-items: center;
|
||||
// margin-top: 20rpx;
|
||||
// font-size: 25rpx;
|
||||
|
||||
// .right {
|
||||
// font-size: 28rpx;
|
||||
// display: flex;
|
||||
|
||||
// .look {
|
||||
// color: $theme-oa-color;
|
||||
// }
|
||||
|
||||
// .update {
|
||||
// color: #34A853;
|
||||
// margin-right: 38rpx;
|
||||
// }
|
||||
// }
|
||||
|
||||
// }
|
||||
|
||||
|
||||
// }
|
||||
|
||||
}
|
||||
</style>
|
@ -1,349 +1,377 @@
|
||||
<template>
|
||||
<view class="">
|
||||
<!-- <view class="top_box">
|
||||
<view class="">
|
||||
<!-- <view class="top_box">
|
||||
<view class="item" :class="current==0?'active':''" @click="current=0">基本信息</view>
|
||||
<view class="item" :class="current==1?'active':''" @click="current=1">商机信息</view>
|
||||
</view> -->
|
||||
<u-sticky bgColor="#fff">
|
||||
<u-tabs :list="tabLists" @click="changeCurrent" lineColor='#3274F9' :scrollable="false" lineWidth='40'
|
||||
inactiveStyle='color:#666' activeStyle="color:#3274F9"></u-tabs>
|
||||
</u-sticky>
|
||||
<u-skeleton :style="{'margin': skeleton?28+'rpx':0}" :loading="skeleton" :animate="true" title rows="6"
|
||||
rows-width="100%" rowsHeight="56">
|
||||
<u--form v-show="current==0" labelPosition="left" :model="formData" ref="archives">
|
||||
<view class="card">
|
||||
<view class="item">
|
||||
<view class="title">基本信息</view>
|
||||
<u-form-item labelWidth="auto" label="姓名" required prop="name" borderBottom>
|
||||
<u--input v-model="formData.name" :readonly="readonly" placeholder="请输入姓名"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item label="性别" required prop="sex" borderBottom>
|
||||
<u-radio-group v-model="formData.sex" :disabled="readonly" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'男'},{value:2,label:'女'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item label="年龄" required prop="age" borderBottom>
|
||||
<u--input v-model="formData.age" :readonly="readonly" placeholder="请输入年龄"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="身份证号" required prop="id_card" borderBottom>
|
||||
<u--input v-model="formData.id_card" :readonly="readonly" placeholder="请输入身份证号" type="idcard"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="联系方式" required prop="phone" borderBottom>
|
||||
<u--input v-model="formData.phone" :readonly="readonly" placeholder="请输入手机号" type="number"></u--input>
|
||||
</u-form-item>
|
||||
</view>
|
||||
</view>
|
||||
<view class="card" style="margin-bottom: 0;">
|
||||
<view class="item">
|
||||
<view class="title">地区信息</view>
|
||||
<!-- <districtSelector ref="districtSelectorRef" :datas="formData" :readonly="true"></districtSelector> -->
|
||||
<u-form-item labelWidth="auto" label="地址" borderBottom>
|
||||
<u--textarea :value="nowAddress" autoHeight readonly></u--textarea>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="小队" required prop="address" borderBottom>
|
||||
<!-- <u--input v-model="formData.brigade_name&&formData.brigade_name[0].brigade_name" :readonly="readonly" placeholder="请选择小队"></u--input> -->
|
||||
<u--input v-model="formData.brigade_name" :readonly="readonly" placeholder="请选择小队"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="详细地址" required prop="address" borderBottom>
|
||||
<u--input v-model="formData.address" :readonly="readonly" placeholder="请输入详细地址"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="汽车是否能到家" required prop="highway" borderBottom>
|
||||
<u-radio-group v-model="formData.highway" :disabled="readonly" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'是'},{value:0,label:'否'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<block value="智能手机">
|
||||
<u-form-item labelWidth="auto" label="是否使用智能手机" required prop="smart_phone" borderBottom>
|
||||
<u-radio-group v-model="formData.smart_phone" :disabled="readonly" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'是'},{value:0,label:'否'}]" :key="index" :label="item.label"
|
||||
:name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<block v-if="formData.smart_phone>0">
|
||||
<u-form-item labelWidth="auto" label="微信号" required borderBottom>
|
||||
<u--input v-model="formData.wechat" :readonly="readonly" placeholder="请输入微信号"></u--input>
|
||||
</u-form-item>
|
||||
</block>
|
||||
</block>
|
||||
</view>
|
||||
</view>
|
||||
</u--form>
|
||||
<residents v-show="current==0" ref="residentsRef" :readonly="true" :datas="formData"></residents>
|
||||
<view v-show="current==1">
|
||||
<block v-for="(item, index) in formData.datas" :key="'demand'+index+item.id">
|
||||
<view class="update_time">
|
||||
<view>更新时间:{{item.update_time}}</view>
|
||||
<view class="right">{{updateTo(item.update_time)}}</view>
|
||||
</view>
|
||||
<block>
|
||||
<breeding v-if="item.id==32" ref="demandRef32" :datas="item.datas" :readonly="true"></breeding>
|
||||
<plant v-if="item.id==7" ref="demandRef7" :datas="item.datas" :readonly="true"></plant>
|
||||
<store v-if="item.id==8" ref="demandRef8" :datas="item.datas" :readonly="true"></store>
|
||||
<deepProcessing v-if="item.id==9" ref="demandRef9" :datas="item.datas" :readonly="true"></deepProcessing>
|
||||
<thickProcessing v-if="item.id==10" ref="demandRef10" :datas="item.datas" :readonly="true"></thickProcessing>
|
||||
</block>
|
||||
<block>
|
||||
<houseRepair v-if="item.id==12" ref="demandRef12" :datas="item.datas" :readonly="true"></houseRepair>
|
||||
<houseDecoration v-if="item.id==13" ref="demandRef13" :datas="item.datas" :readonly="true"></houseDecoration>
|
||||
<houseRenovate v-if="item.id==14" ref="demandRef14" :datas="item.datas" :readonly="true"></houseRenovate>
|
||||
<houseTransaction v-if="item.id==15" ref="demandRef15" :datas="item.datas" :readonly="true"></houseTransaction>
|
||||
</block>
|
||||
<block>
|
||||
<banquetMarry v-if="item.id==17" ref="demandRef17" :datas="item.datas" :readonly="true"></banquetMarry>
|
||||
<banquetBirthday v-if="item.id==18" ref="demandRef18" :datas="item.datas" :readonly="true"></banquetBirthday>
|
||||
<banquetFullMoon v-if="item.id==19" ref="demandRef19" :datas="item.datas" :readonly="true"></banquetFullMoon>
|
||||
<banquetOther v-if="item.id==20" ref="demandRef20" :datas="item.datas" :readonly="true"></banquetOther>
|
||||
<banquetFuneral v-if="item.id==21" ref="demandRef21" :datas="item.datas" :readonly="true"></banquetFuneral>
|
||||
</block>
|
||||
</block>
|
||||
<u-empty v-if="formData.datas.length==0" icon="/static/img/empty/data.png" text="没有数据"></u-empty>
|
||||
</view>
|
||||
</u-skeleton>
|
||||
</view>
|
||||
<u-sticky bgColor="#fff">
|
||||
<u-tabs :list="tabLists" @click="changeCurrent" lineColor='#3274F9' :scrollable="false" lineWidth='40'
|
||||
inactiveStyle='color:#666' activeStyle="color:#3274F9"></u-tabs>
|
||||
</u-sticky>
|
||||
<u-skeleton :style="{'margin': skeleton?28+'rpx':0}" :loading="skeleton" :animate="true" title rows="6"
|
||||
rows-width="100%" rowsHeight="56">
|
||||
<u--form v-show="current==0" labelPosition="left" :model="formData" ref="archives">
|
||||
<view class="card">
|
||||
<view class="item">
|
||||
<view class="title">基本信息</view>
|
||||
<u-form-item labelWidth="auto" label="姓名" required prop="name" borderBottom>
|
||||
<u--input v-model="formData.name" :readonly="readonly" placeholder="请输入姓名"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item label="性别" required prop="sex" borderBottom>
|
||||
<u-radio-group v-model="formData.sex" :disabled="readonly" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'男'},{value:2,label:'女'}]" :key="index"
|
||||
:label="item.label" :name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<u-form-item label="年龄" required prop="age" borderBottom>
|
||||
<u--input v-model="formData.age" :readonly="readonly" placeholder="请输入年龄"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="身份证号" required prop="id_card" borderBottom>
|
||||
<u--input v-model="formData.id_card" :readonly="readonly" placeholder="请输入身份证号"
|
||||
type="idcard"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="联系方式" required prop="phone" borderBottom>
|
||||
<u--input v-model="formData.phone" :readonly="readonly" placeholder="请输入手机号"
|
||||
type="number"></u--input>
|
||||
</u-form-item>
|
||||
</view>
|
||||
</view>
|
||||
<view class="card" style="margin-bottom: 0;">
|
||||
<view class="item">
|
||||
<view class="title">地区信息</view>
|
||||
<!-- <districtSelector ref="districtSelectorRef" :datas="formData" :readonly="true"></districtSelector> -->
|
||||
<u-form-item labelWidth="auto" label="地址" borderBottom>
|
||||
<u--textarea :value="nowAddress" autoHeight readonly></u--textarea>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="小队" required prop="address" borderBottom>
|
||||
<!-- <u--input v-model="formData.brigade_name&&formData.brigade_name[0].brigade_name" :readonly="readonly" placeholder="请选择小队"></u--input> -->
|
||||
<u--input v-model="formData.brigade_name" :readonly="readonly"
|
||||
placeholder="请选择小队"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="详细地址" required prop="address" borderBottom>
|
||||
<u--input v-model="formData.address" :readonly="readonly" placeholder="请输入详细地址"></u--input>
|
||||
</u-form-item>
|
||||
<u-form-item labelWidth="auto" label="汽车是否能到家" required prop="highway" borderBottom>
|
||||
<u-radio-group v-model="formData.highway" :disabled="readonly" style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'是'},{value:0,label:'否'}]" :key="index"
|
||||
:label="item.label" :name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<block value="智能手机">
|
||||
<u-form-item labelWidth="auto" label="是否使用智能手机" required prop="smart_phone" borderBottom>
|
||||
<u-radio-group v-model="formData.smart_phone" :disabled="readonly"
|
||||
style="margin: 16rpx;">
|
||||
<u-radio :customStyle="{marginRight: '16px'}"
|
||||
v-for="(item, index) in [{value:1,label:'是'},{value:0,label:'否'}]" :key="index"
|
||||
:label="item.label" :name="item.value">
|
||||
</u-radio>
|
||||
</u-radio-group>
|
||||
</u-form-item>
|
||||
<block v-if="formData.smart_phone>0">
|
||||
<u-form-item labelWidth="auto" label="微信号" required borderBottom>
|
||||
<u--input v-model="formData.wechat" :readonly="readonly"
|
||||
placeholder="请输入微信号"></u--input>
|
||||
</u-form-item>
|
||||
</block>
|
||||
</block>
|
||||
</view>
|
||||
</view>
|
||||
</u--form>
|
||||
<residents v-show="current==0" ref="residentsRef" :readonly="true" :datas="formData"></residents>
|
||||
<view v-show="current==1">
|
||||
<block v-for="(item, index) in formData.datas" :key="'demand'+index+item.id">
|
||||
<view class="update_time">
|
||||
<view>更新时间:{{item.update_time}}</view>
|
||||
<view class="right">{{updateTo(item.update_time)}}</view>
|
||||
</view>
|
||||
<block>
|
||||
<breeding v-if="item.id==32" ref="demandRef32" :datas="item.datas" :readonly="true"></breeding>
|
||||
<plant v-if="item.id==7" ref="demandRef7" :datas="item.datas" :readonly="true"></plant>
|
||||
<store v-if="item.id==8" ref="demandRef8" :datas="item.datas" :readonly="true"></store>
|
||||
<deepProcessing v-if="item.id==9" ref="demandRef9" :datas="item.datas" :readonly="true">
|
||||
</deepProcessing>
|
||||
<thickProcessing v-if="item.id==10" ref="demandRef10" :datas="item.datas" :readonly="true">
|
||||
</thickProcessing>
|
||||
</block>
|
||||
<block>
|
||||
<houseRepair v-if="item.id==12" ref="demandRef12" :datas="item.datas" :readonly="true">
|
||||
</houseRepair>
|
||||
<houseDecoration v-if="item.id==13" ref="demandRef13" :datas="item.datas" :readonly="true">
|
||||
</houseDecoration>
|
||||
<houseRenovate v-if="item.id==14" ref="demandRef14" :datas="item.datas" :readonly="true">
|
||||
</houseRenovate>
|
||||
<houseTransaction v-if="item.id==15" ref="demandRef15" :datas="item.datas" :readonly="true">
|
||||
</houseTransaction>
|
||||
</block>
|
||||
<block>
|
||||
<banquetMarry v-if="item.id==17" ref="demandRef17" :datas="item.datas" :readonly="true">
|
||||
</banquetMarry>
|
||||
<banquetBirthday v-if="item.id==18" ref="demandRef18" :datas="item.datas" :readonly="true">
|
||||
</banquetBirthday>
|
||||
<banquetFullMoon v-if="item.id==19" ref="demandRef19" :datas="item.datas" :readonly="true">
|
||||
</banquetFullMoon>
|
||||
<banquetOther v-if="item.id==20" ref="demandRef20" :datas="item.datas" :readonly="true">
|
||||
</banquetOther>
|
||||
<banquetFuneral v-if="item.id==21" ref="demandRef21" :datas="item.datas" :readonly="true">
|
||||
</banquetFuneral>
|
||||
</block>
|
||||
</block>
|
||||
<u-empty v-if="formData.datas.length==0" icon="/static/img/empty/data.png" text="没有数据"></u-empty>
|
||||
</view>
|
||||
</u-skeleton>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Toast } from "../../libs/uniApi"
|
||||
import { informationAdd, informationDetails } from "@/api/information.js"
|
||||
import { comonentList } from '@/static/server/archives.js'
|
||||
import { getTimeAgo } from "@/utils/time.js"
|
||||
import districtSelector from "@/components/districtSelector/districtSelector.vue" //地区选择器
|
||||
import residents from "@/components/newArchives/residents.vue" // 常住人口
|
||||
import breeding from "@/components/newArchives/breeding.vue" // 种养殖
|
||||
import plant from "@/components/newArchives/plant.vue" // 种养殖
|
||||
import store from "@/components/newArchives/store.vue" // 开设店铺
|
||||
import deepProcessing from "@/components/newArchives/deepProcessing.vue" // 深加工
|
||||
import thickProcessing from "@/components/newArchives/thickProcessing.vue" // 粗加工
|
||||
import houseRepair from "@/components/newArchives/houseRepair.vue" // 修房
|
||||
import houseDecoration from "@/components/newArchives/houseDecoration.vue" // 装房
|
||||
import houseRenovate from "@/components/newArchives/houseRenovate.vue" // 翻新
|
||||
import houseTransaction from "@/components/newArchives/houseTransaction.vue" // 买卖房子
|
||||
import banquetMarry from "@/components/newArchives/banquetMarry.vue" // 婚宴
|
||||
import banquetBirthday from "@/components/newArchives/banquetBirthday.vue" // 寿宴
|
||||
import banquetFullMoon from "@/components/newArchives/banquetFullMoon.vue" // 满月酒
|
||||
import banquetOther from "@/components/newArchives/banquetOther.vue" // 其他庆祝宴
|
||||
import banquetFuneral from "@/components/newArchives/banquetFuneral.vue" // 白事
|
||||
export default {
|
||||
components: {
|
||||
districtSelector,
|
||||
residents,
|
||||
breeding,
|
||||
plant,
|
||||
store,
|
||||
deepProcessing,
|
||||
thickProcessing,
|
||||
houseRepair,
|
||||
houseDecoration,
|
||||
houseRenovate,
|
||||
houseTransaction,
|
||||
banquetMarry,
|
||||
banquetBirthday,
|
||||
banquetFullMoon,
|
||||
banquetOther,
|
||||
banquetFuneral
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
listMap: new Map(),
|
||||
tabLists: [{
|
||||
name: '基本信息',
|
||||
}, {
|
||||
name: '商机信息'
|
||||
}],
|
||||
skeleton: true,
|
||||
readonly: true,
|
||||
current: 0,
|
||||
showDemandList: [],
|
||||
formData: {
|
||||
id_card: '',
|
||||
sex: '',
|
||||
name: '',
|
||||
phone: '', //电话
|
||||
highway: '', //汽车是否能到家
|
||||
smart_phone: '', //是否使用智能手机
|
||||
wechat: '', //微信号
|
||||
address: '', //家庭地址
|
||||
age: '', //年龄
|
||||
category_id: 1,
|
||||
category_child: 1,
|
||||
data_type: '1',
|
||||
datas: []
|
||||
},
|
||||
import {
|
||||
Toast
|
||||
} from "../../libs/uniApi"
|
||||
import {
|
||||
informationAdd,
|
||||
informationDetails
|
||||
} from "@/api/information.js"
|
||||
import {
|
||||
comonentList
|
||||
} from '@/static/server/archives.js'
|
||||
import {
|
||||
getTimeAgo
|
||||
} from "@/utils/time.js"
|
||||
import districtSelector from "@/components/districtSelector/districtSelector.vue" //地区选择器
|
||||
import residents from "@/components/newArchives/residents.vue" // 常住人口
|
||||
import breeding from "@/components/newArchives/breeding.vue" // 种养殖
|
||||
import plant from "@/components/newArchives/plant.vue" // 种养殖
|
||||
import store from "@/components/newArchives/store.vue" // 开设店铺
|
||||
import deepProcessing from "@/components/newArchives/deepProcessing.vue" // 深加工
|
||||
import thickProcessing from "@/components/newArchives/thickProcessing.vue" // 粗加工
|
||||
import houseRepair from "@/components/newArchives/houseRepair.vue" // 修房
|
||||
import houseDecoration from "@/components/newArchives/houseDecoration.vue" // 装房
|
||||
import houseRenovate from "@/components/newArchives/houseRenovate.vue" // 翻新
|
||||
import houseTransaction from "@/components/newArchives/houseTransaction.vue" // 买卖房子
|
||||
import banquetMarry from "@/components/newArchives/banquetMarry.vue" // 婚宴
|
||||
import banquetBirthday from "@/components/newArchives/banquetBirthday.vue" // 寿宴
|
||||
import banquetFullMoon from "@/components/newArchives/banquetFullMoon.vue" // 满月酒
|
||||
import banquetOther from "@/components/newArchives/banquetOther.vue" // 其他庆祝宴
|
||||
import banquetFuneral from "@/components/newArchives/banquetFuneral.vue" // 白事
|
||||
export default {
|
||||
components: {
|
||||
districtSelector,
|
||||
residents,
|
||||
breeding,
|
||||
plant,
|
||||
store,
|
||||
deepProcessing,
|
||||
thickProcessing,
|
||||
houseRepair,
|
||||
houseDecoration,
|
||||
houseRenovate,
|
||||
houseTransaction,
|
||||
banquetMarry,
|
||||
banquetBirthday,
|
||||
banquetFullMoon,
|
||||
banquetOther,
|
||||
banquetFuneral
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
listMap: new Map(),
|
||||
tabLists: [{
|
||||
name: '基本信息',
|
||||
}, {
|
||||
name: '商机信息'
|
||||
}],
|
||||
skeleton: true,
|
||||
readonly: true,
|
||||
current: 0,
|
||||
showDemandList: [],
|
||||
formData: {
|
||||
id_card: '',
|
||||
sex: '',
|
||||
name: '',
|
||||
phone: '', //电话
|
||||
highway: '', //汽车是否能到家
|
||||
smart_phone: '', //是否使用智能手机
|
||||
wechat: '', //微信号
|
||||
address: '', //家庭地址
|
||||
age: '', //年龄
|
||||
category_id: 1,
|
||||
category_child: 1,
|
||||
data_type: '1',
|
||||
datas: []
|
||||
},
|
||||
|
||||
}
|
||||
},
|
||||
onLoad(options) {
|
||||
this.initInformationDetails({ id: options.id });
|
||||
this.initMap();
|
||||
},
|
||||
onShow() {},
|
||||
computed: {
|
||||
nowAddress() {
|
||||
let address = this.$store.state.app.userInfo;
|
||||
let str = '';
|
||||
address.province_name?str+=address.province_name:null;
|
||||
address.city_name?str+=address.city_name:null;
|
||||
address.area_name?str+=address.area_name:null;
|
||||
address.street_name?str+=address.street_name:null;
|
||||
address.village_name?str+=address.village_name:null;
|
||||
return str;
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
initMap() {
|
||||
comonentList.forEach(item => {
|
||||
this.listMap.set(item.id, item.name);
|
||||
})
|
||||
},
|
||||
async initInformationDetails(id) {
|
||||
let res = await informationDetails(id);
|
||||
this.$u.sleep(100).then(()=>{
|
||||
this.skeleton = false;
|
||||
Object.keys(res.data).forEach(key => {
|
||||
this.formData[key] = res.data[key];
|
||||
})
|
||||
})
|
||||
},
|
||||
toastShow() {
|
||||
Toast('不可修改')
|
||||
},
|
||||
changeCurrent(e) {
|
||||
this.current = e.index;
|
||||
},
|
||||
updateTo(time){
|
||||
return getTimeAgo(time)
|
||||
}
|
||||
},
|
||||
onPullDownRefresh() {
|
||||
uni.stopPullDownRefresh()
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
onLoad(options) {
|
||||
this.initInformationDetails({
|
||||
id: options.id
|
||||
});
|
||||
this.initMap();
|
||||
},
|
||||
onShow() {},
|
||||
computed: {
|
||||
nowAddress() {
|
||||
let address = this.$store.state.app.userInfo;
|
||||
let str = '';
|
||||
address.province_name ? str += address.province_name : null;
|
||||
address.city_name ? str += address.city_name : null;
|
||||
address.area_name ? str += address.area_name : null;
|
||||
address.street_name ? str += address.street_name : null;
|
||||
address.village_name ? str += address.village_name : null;
|
||||
return str;
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
initMap() {
|
||||
comonentList.forEach(item => {
|
||||
this.listMap.set(item.id, item.name);
|
||||
})
|
||||
},
|
||||
async initInformationDetails(id) {
|
||||
let res = await informationDetails(id);
|
||||
this.$u.sleep(100).then(() => {
|
||||
this.skeleton = false;
|
||||
Object.keys(res.data).forEach(key => {
|
||||
this.formData[key] = res.data[key];
|
||||
})
|
||||
})
|
||||
},
|
||||
toastShow() {
|
||||
Toast('不可修改')
|
||||
},
|
||||
changeCurrent(e) {
|
||||
this.current = e.index;
|
||||
},
|
||||
updateTo(time) {
|
||||
return getTimeAgo(time)
|
||||
}
|
||||
},
|
||||
onPullDownRefresh() {
|
||||
uni.stopPullDownRefresh()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.top_box {
|
||||
background-color: #fff;
|
||||
display: flex;
|
||||
.top_box {
|
||||
background-color: #fff;
|
||||
display: flex;
|
||||
|
||||
.item {
|
||||
width: 175rpx;
|
||||
height: 53rpx;
|
||||
background: #F5F5F5FF;
|
||||
color: #999999FF;
|
||||
border-radius: 35rpx 35rpx 35rpx 35rpx;
|
||||
opacity: 1;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
margin: 28rpx;
|
||||
}
|
||||
.item {
|
||||
width: 175rpx;
|
||||
height: 53rpx;
|
||||
background: #F5F5F5FF;
|
||||
color: #999999FF;
|
||||
border-radius: 35rpx 35rpx 35rpx 35rpx;
|
||||
opacity: 1;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
margin: 28rpx;
|
||||
}
|
||||
|
||||
.active {
|
||||
background: $theme-oa-color;
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
.active {
|
||||
background: $theme-oa-color;
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.update_time {
|
||||
padding: 32rpx 28rpx 0 28rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
.right{
|
||||
color: $theme-oa-color;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
.card {
|
||||
background-color: #fff;
|
||||
margin: 28rpx;
|
||||
padding: 28rpx;
|
||||
border-radius: 14rpx;
|
||||
.update_time {
|
||||
padding: 32rpx 28rpx 0 28rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
.item {
|
||||
margin-top: 30rpx;
|
||||
.right {
|
||||
color: $theme-oa-color;
|
||||
}
|
||||
}
|
||||
|
||||
&:nth-child(1) {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
.title {
|
||||
font-weight: 500;
|
||||
font-size: 34rpx;
|
||||
|
||||
&::before {
|
||||
width: 8rpx;
|
||||
height: 26rpx;
|
||||
border-radius: 4rpx;
|
||||
background-color: #3175f9;
|
||||
content: "";
|
||||
display: inline-block;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
.card {
|
||||
background-color: #fff;
|
||||
margin: 28rpx;
|
||||
padding: 28rpx;
|
||||
border-radius: 14rpx;
|
||||
|
||||
.btn {
|
||||
margin-top: 32rpx;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 84rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 42rpx 42rpx 42rpx 42rpx;
|
||||
color: #fff;
|
||||
line-height: 80rpx;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
.item {
|
||||
margin-top: 30rpx;
|
||||
|
||||
.delete {
|
||||
&:nth-child(1) {
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
margin: 22rpx 0;
|
||||
.title {
|
||||
font-weight: 500;
|
||||
font-size: 34rpx;
|
||||
|
||||
// margin-bottom: 40rpx;
|
||||
&::before {
|
||||
width: 8rpx;
|
||||
height: 26rpx;
|
||||
border-radius: 4rpx;
|
||||
background-color: #3175f9;
|
||||
content: "";
|
||||
display: inline-block;
|
||||
margin-right: 8rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
width: 100%;
|
||||
.btn {
|
||||
margin-top: 32rpx;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 84rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 42rpx 42rpx 42rpx 42rpx;
|
||||
color: #fff;
|
||||
line-height: 80rpx;
|
||||
text-align: center;
|
||||
}
|
||||
}
|
||||
|
||||
height: 64rpx;
|
||||
.delete {
|
||||
|
||||
line-height: 64rpx;
|
||||
margin: 22rpx 0;
|
||||
|
||||
background: #f56c6c;
|
||||
// margin-bottom: 40rpx;
|
||||
|
||||
border-radius: 14rpx;
|
||||
width: 100%;
|
||||
|
||||
font-size: 28rpx;
|
||||
height: 64rpx;
|
||||
|
||||
color: #fff;
|
||||
line-height: 64rpx;
|
||||
|
||||
text-align: center;
|
||||
background: #f56c6c;
|
||||
|
||||
}
|
||||
border-radius: 14rpx;
|
||||
|
||||
.plus {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
font-size: 28rpx;
|
||||
|
||||
.demand {
|
||||
margin-top: 40rpx;
|
||||
margin-bottom: 50rpx;
|
||||
}
|
||||
color: #fff;
|
||||
|
||||
text-align: center;
|
||||
|
||||
}
|
||||
|
||||
.plus {
|
||||
margin: 22rpx 0;
|
||||
// margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
height: 64rpx;
|
||||
line-height: 64rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 14rpx;
|
||||
font-size: 28rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.demand {
|
||||
margin-top: 40rpx;
|
||||
margin-bottom: 50rpx;
|
||||
}
|
||||
</style>
|
@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<view class="page">
|
||||
<!-- <view class="card" v-for="item in list" :key="item.id" @click="navTo('/subpkg/archives/archives?id='+item.id)">
|
||||
<view class="page">
|
||||
<!-- <view class="card" v-for="item in list" :key="item.id" @click="navTo('/subpkg/archives/archives?id='+item.id)">
|
||||
<view class="top">
|
||||
<u--image class="u_avatar" :showLoading="true" :src="item.avatar||'../../static/img/public/man.png'"
|
||||
width="112.28rpx" height="112.28rpx" shape="circle">
|
||||
@ -23,8 +23,49 @@
|
||||
</view>
|
||||
<u-loadmore :status="loadConfig.status" :loading-text="loadConfig.loadingText"
|
||||
:loadmore-text="loadConfig.loadmoreText" :nomore-text="loadConfig.nomoreText" /> -->
|
||||
<view class="personnel_list">
|
||||
<block v-for="(item, index) in list" :key="item.id">
|
||||
<view class="personnel_list">
|
||||
<view class="card" v-for="(item, index) in list" :key="item.id"
|
||||
@click="navTo('/subpkg/archives/archives?id='+item.id)">
|
||||
<view class="card_head">
|
||||
<text style="font-size: 34rpx;">最后更新: 2023-8-1</text>
|
||||
<text>{{'管理户数: '+item.informationg_count+" 户"}}<u-icon
|
||||
style="display: inline-block;margin-left: 10rpx;" color="white"
|
||||
name="arrow-right"></u-icon></text>
|
||||
</view>
|
||||
<view class="card_content">
|
||||
<view class="left">
|
||||
<view class="cir">
|
||||
<u--image class="u_avatar" :showLoading="true"
|
||||
:src="item.avatar||'../../static/img/public/man.png'" width="112.28rpx"
|
||||
height="112.28rpx" shape="circle"></u--image>
|
||||
</view>
|
||||
|
||||
<view style="margin-top: 40rpx;">
|
||||
<u-icon style="display: inline-block;margin-left: 10rpx;" color="white"
|
||||
name="edit-pen-fill"></u-icon> {{item.is_contract?"已签约":"未签约"}}
|
||||
</view>
|
||||
</view>
|
||||
<view class="right">
|
||||
<view class="">
|
||||
<text>公司名称 :</text>
|
||||
<text> {{item.company.company_name}}</text>
|
||||
</view>
|
||||
<view class="">
|
||||
<text>人员姓名 :</text>
|
||||
<text>{{item.nickname}}</text>
|
||||
</view>
|
||||
<view class="">
|
||||
<text>联系电话 :</text>
|
||||
<text>{{item.phone||item.account}}</text>
|
||||
</view>
|
||||
<view class="">
|
||||
<text>负责区域 :</text>
|
||||
<text>{{ (item.street_name||'')+(item.village_name||'')+(item.brigade_name||'') }}</text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- <block v-for="(item, index) in list" :key="item.id">
|
||||
<view class="personnel_item" @click="navTo('/subpkg/archives/archives?id='+item.id)">
|
||||
<view class="type" :class="item.is_contract?'type_blue':''">
|
||||
<image v-if="item.is_contract" src="../../static/icons/ok_w.png"></image>
|
||||
@ -68,361 +109,423 @@
|
||||
<view class="look">{{'管理户数: '+item.informationg_count+" 户"}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</block>
|
||||
<u-empty v-if="loadConfig.status=='nomore'&& list.length==0" icon="/static/img/empty/data.png"></u-empty>
|
||||
<u-loadmore v-else :status="loadConfig.status" :loading-text="loadConfig.loadingText"
|
||||
:loadmore-text="loadConfig.loadmoreText" :nomore-text="loadConfig.nomoreText" />
|
||||
</view>
|
||||
</block> -->
|
||||
<u-empty v-if="loadConfig.status=='nomore'&& list.length==0" icon="/static/img/empty/data.png"></u-empty>
|
||||
<u-loadmore v-else :status="loadConfig.status" :loading-text="loadConfig.loadingText"
|
||||
:loadmore-text="loadConfig.loadmoreText" :nomore-text="loadConfig.nomoreText" />
|
||||
</view>
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { companyUser } from "@/api/company.js"
|
||||
import { Toast } from '@/libs/uniApi.js'
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
list: [],
|
||||
loadConfig: {
|
||||
page: 1,
|
||||
limit: 15,
|
||||
lastpage: '',
|
||||
loadingText: '努力加载中',
|
||||
loadmoreText: '轻轻上拉',
|
||||
nomoreText: '我也是有底线的~~',
|
||||
status: 'loadmore'
|
||||
},
|
||||
}
|
||||
},
|
||||
onLoad() {
|
||||
this.initLoad()
|
||||
},
|
||||
onShow() {},
|
||||
onReachBottom() {
|
||||
this.loadList();
|
||||
},
|
||||
methods: {
|
||||
navTo(url) {
|
||||
url ?
|
||||
uni.navigateTo({
|
||||
url: url,
|
||||
}) : Toast('暂未开放')
|
||||
},
|
||||
initLoad() {
|
||||
this.loadConfig.page = 1;
|
||||
this.loadConfig.status = "loadmore";
|
||||
this.list = [];
|
||||
this.loadList();
|
||||
uni.stopPullDownRefresh();
|
||||
},
|
||||
async loadList() {
|
||||
if (this.loadConfig.status == "nomore") return;
|
||||
this.loadConfig.status = "loading";
|
||||
let res = await companyUser({
|
||||
page: this.loadConfig.page,
|
||||
limit: this.loadConfig.limit,
|
||||
company_id: this.$store.state.app.userInfo.company_id,
|
||||
is_captain: 1
|
||||
})
|
||||
this.loadConfig.status = "loadmore"
|
||||
if (res.data.data.length < this.loadConfig.limit) {
|
||||
this.loadConfig.status = "nomore"
|
||||
} else {
|
||||
this.loadConfig.page++;
|
||||
}
|
||||
this.list = [...this.list, ...res.data.data];
|
||||
},
|
||||
},
|
||||
onPullDownRefresh() {
|
||||
this.initLoad();
|
||||
}
|
||||
}
|
||||
import {
|
||||
companyUser
|
||||
} from "@/api/company.js"
|
||||
import {
|
||||
Toast
|
||||
} from '@/libs/uniApi.js'
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
list: [],
|
||||
loadConfig: {
|
||||
page: 1,
|
||||
limit: 15,
|
||||
lastpage: '',
|
||||
loadingText: '努力加载中',
|
||||
loadmoreText: '轻轻上拉',
|
||||
nomoreText: '我也是有底线的~~',
|
||||
status: 'loadmore'
|
||||
},
|
||||
}
|
||||
},
|
||||
onLoad() {
|
||||
this.initLoad()
|
||||
},
|
||||
onShow() {},
|
||||
onReachBottom() {
|
||||
this.loadList();
|
||||
},
|
||||
methods: {
|
||||
navTo(url) {
|
||||
url ?
|
||||
uni.navigateTo({
|
||||
url: url,
|
||||
}) : Toast('暂未开放')
|
||||
},
|
||||
initLoad() {
|
||||
this.loadConfig.page = 1;
|
||||
this.loadConfig.status = "loadmore";
|
||||
this.list = [];
|
||||
this.loadList();
|
||||
uni.stopPullDownRefresh();
|
||||
},
|
||||
async loadList() {
|
||||
if (this.loadConfig.status == "nomore") return;
|
||||
this.loadConfig.status = "loading";
|
||||
let res = await companyUser({
|
||||
page: this.loadConfig.page,
|
||||
limit: this.loadConfig.limit,
|
||||
company_id: this.$store.state.app.userInfo.company_id,
|
||||
is_captain: 1
|
||||
})
|
||||
this.loadConfig.status = "loadmore"
|
||||
if (res.data.data.length < this.loadConfig.limit) {
|
||||
this.loadConfig.status = "nomore"
|
||||
} else {
|
||||
this.loadConfig.page++;
|
||||
}
|
||||
this.list = [...this.list, ...res.data.data];
|
||||
},
|
||||
},
|
||||
onPullDownRefresh() {
|
||||
this.initLoad();
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.page {
|
||||
padding-top: 28rpx;
|
||||
}
|
||||
<style lang="scss" scoped>
|
||||
.page {
|
||||
padding-top: 28rpx;
|
||||
}
|
||||
|
||||
.card {
|
||||
margin: 0 auto;
|
||||
margin-bottom: 28rpx;
|
||||
padding: 28rpx;
|
||||
width: 694rpx;
|
||||
height: 221rpx;
|
||||
background: #FFFFFF;
|
||||
border-radius: 14rpx 14rpx 14rpx 14rpx;
|
||||
opacity: 1;
|
||||
.card {
|
||||
margin: 0 auto;
|
||||
margin-bottom: 28rpx;
|
||||
width: 694rpx;
|
||||
background: #FFFFFF;
|
||||
border-radius: 30rpx;
|
||||
opacity: 1;
|
||||
overflow: hidden;
|
||||
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
||||
|
||||
.top {
|
||||
display: flex;
|
||||
justify-content: left;
|
||||
// align-items: center;
|
||||
.card_head {
|
||||
padding: 28rpx;
|
||||
background-color: $theme-oa-color;
|
||||
color: white;
|
||||
height: 100rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
.avatar {
|
||||
width: 88rpx;
|
||||
height: 88rpx;
|
||||
border-radius: 50%;
|
||||
margin-right: 18rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.u_avatar {
|
||||
margin-right: 18rpx;
|
||||
}
|
||||
.card_content {
|
||||
padding: 28rpx;
|
||||
display: flex;
|
||||
|
||||
.text {
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
flex-direction: column;
|
||||
.left {
|
||||
text-align: center;
|
||||
// padding: 15rpx 25rpx;
|
||||
padding-top: 20rpx;
|
||||
|
||||
.name {
|
||||
font-size: 32rpx;
|
||||
font-weight: 500;
|
||||
color: #333333;
|
||||
}
|
||||
margin-right: 50rpx;
|
||||
width: 160rpx;
|
||||
background-color: $theme-oa-color;
|
||||
color: white;
|
||||
border-radius: 40rpx;
|
||||
|
||||
.mobile {
|
||||
color: #999999;
|
||||
}
|
||||
}
|
||||
}
|
||||
.cir {
|
||||
width: 120rpx;
|
||||
height: 120rpx;
|
||||
background-color: #FFFFFF;
|
||||
margin-left: 25rpx;
|
||||
border-radius: 120rpx;
|
||||
position: relative;
|
||||
|
||||
.bottom {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
font-size: 25rpx;
|
||||
font-weight: 400;
|
||||
|
||||
.left {
|
||||
display: flex;
|
||||
justify-content: left;
|
||||
align-items: center;
|
||||
margin-top: 20rpx;
|
||||
}
|
||||
|
||||
.circle {
|
||||
width: 11rpx;
|
||||
height: 11rpx;
|
||||
opacity: 1;
|
||||
border: 2rpx solid #34A853;
|
||||
margin-right: 10rpx;
|
||||
border-radius: 50%;
|
||||
}
|
||||
}
|
||||
|
||||
.green {
|
||||
font-weight: 400;
|
||||
color: #34A853;
|
||||
line-height: 0rpx;
|
||||
margin-right: 18rpx;
|
||||
-webkit-background-clip: text;
|
||||
}
|
||||
|
||||
.b_l_text {
|
||||
width: 360rpx;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
}
|
||||
.right {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
|
||||
.right {
|
||||
color: #3274F9;
|
||||
margin-top: 20rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
view {
|
||||
text:nth-child(2) {
|
||||
margin-left: 20rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.personnel_list {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
padding-bottom: 130rpx;
|
||||
// .top {
|
||||
// display: flex;
|
||||
// justify-content: left;
|
||||
// // align-items: center;
|
||||
|
||||
.personnel_item {
|
||||
width: 694rpx;
|
||||
// height: 407rpx;
|
||||
background: #FFFFFF;
|
||||
border-radius: 14rpx 14rpx 14rpx 14rpx;
|
||||
margin-bottom: 32rpx;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
padding: 28rpx;
|
||||
// .avatar {
|
||||
// width: 88rpx;
|
||||
// height: 88rpx;
|
||||
// border-radius: 50%;
|
||||
// margin-right: 18rpx;
|
||||
// }
|
||||
|
||||
.type {
|
||||
width: 50rpx;
|
||||
height: 50rpx;
|
||||
background-color: #F02828;
|
||||
border-radius: 50%;
|
||||
font-size: 25rpx;
|
||||
font-weight: 400;
|
||||
color: #FFFFFF;
|
||||
line-height: 35rpx;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 28rpx;
|
||||
right: 28rpx;
|
||||
.u_avatar {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
|
||||
image {
|
||||
width: 18rpx;
|
||||
height: 18rpx;
|
||||
margin-right: 1rpx;
|
||||
}
|
||||
}
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
|
||||
.type_blue {
|
||||
background-color: #34A853;
|
||||
}
|
||||
// .text {
|
||||
// display: flex;
|
||||
// justify-content: space-around;
|
||||
// flex-direction: column;
|
||||
|
||||
.top {
|
||||
// background-color: #3274F9;
|
||||
display: flex;
|
||||
// .name {
|
||||
// font-size: 32rpx;
|
||||
// font-weight: 500;
|
||||
// color: #333333;
|
||||
// }
|
||||
|
||||
.right {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-around;
|
||||
margin-left: 28rpx;
|
||||
font-size: 25rpx;
|
||||
font-weight: 400;
|
||||
overflow: hidden;
|
||||
color: #999999;
|
||||
// .mobile {
|
||||
// color: #999999;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
.info_top {
|
||||
display: flex;
|
||||
align-items: flex-end;
|
||||
font-size: 25rpx;
|
||||
font-weight: 400;
|
||||
color: $theme-oa-color;
|
||||
margin-bottom: 10rpx;
|
||||
// .bottom {
|
||||
// display: flex;
|
||||
// justify-content: space-between;
|
||||
// font-size: 25rpx;
|
||||
// font-weight: 400;
|
||||
|
||||
.info_name {
|
||||
font-size: 32rpx;
|
||||
font-weight: 400;
|
||||
color: #333333;
|
||||
margin-right: 18rpx;
|
||||
}
|
||||
// .left {
|
||||
// display: flex;
|
||||
// justify-content: left;
|
||||
// align-items: center;
|
||||
// margin-top: 20rpx;
|
||||
|
||||
.phone {
|
||||
margin-left: 30rpx;
|
||||
color: #999999;
|
||||
}
|
||||
// .circle {
|
||||
// width: 11rpx;
|
||||
// height: 11rpx;
|
||||
// opacity: 1;
|
||||
// border: 2rpx solid #34A853;
|
||||
// margin-right: 10rpx;
|
||||
// border-radius: 50%;
|
||||
// }
|
||||
|
||||
.tel {
|
||||
color: #000;
|
||||
}
|
||||
}
|
||||
// .green {
|
||||
// font-weight: 400;
|
||||
// color: #34A853;
|
||||
// line-height: 0rpx;
|
||||
// margin-right: 18rpx;
|
||||
// -webkit-background-clip: text;
|
||||
// }
|
||||
|
||||
.info_bottom {
|
||||
display: flex;
|
||||
margin-bottom: 8rpx;
|
||||
// .b_l_text {
|
||||
// width: 360rpx;
|
||||
// overflow: hidden;
|
||||
// text-overflow: ellipsis;
|
||||
// white-space: nowrap;
|
||||
// }
|
||||
// }
|
||||
|
||||
.item {
|
||||
display: flex;
|
||||
align-items: flex-start;
|
||||
}
|
||||
// .right {
|
||||
// color: #3274F9;
|
||||
// margin-top: 20rpx;
|
||||
// }
|
||||
// }
|
||||
|
||||
.phone {
|
||||
margin-right: 28rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.location {
|
||||
width: 320rpx;
|
||||
// white-space: nowrap;
|
||||
// /* 不换行 */
|
||||
// overflow: hidden;
|
||||
// /* 将超出文本隐藏 */
|
||||
// text-overflow: ellipsis;
|
||||
// /* 使用省略号表示被隐藏的文本 */
|
||||
color: #000;
|
||||
}
|
||||
}
|
||||
|
||||
.company {
|
||||
display: flex;
|
||||
// .personnel_list {
|
||||
// display: flex;
|
||||
// flex-direction: column;
|
||||
// align-items: center;
|
||||
// padding-bottom: 130rpx;
|
||||
|
||||
text {
|
||||
margin-right: 30rpx;
|
||||
flex-shrink: 0;
|
||||
}
|
||||
// .personnel_item {
|
||||
// width: 694rpx;
|
||||
// // height: 407rpx;
|
||||
// background: #FFFFFF;
|
||||
// border-radius: 14rpx 14rpx 14rpx 14rpx;
|
||||
// margin-bottom: 32rpx;
|
||||
// overflow: hidden;
|
||||
// position: relative;
|
||||
// padding: 28rpx;
|
||||
|
||||
.itm {
|
||||
width: 320rpx;
|
||||
// white-space: nowrap;
|
||||
// /* 不换行 */
|
||||
// overflow: hidden;
|
||||
// /* 将超出文本隐藏 */
|
||||
// text-overflow: ellipsis;
|
||||
// /* 使用省略号表示被隐藏的文本 */
|
||||
color: #000;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// .type {
|
||||
// width: 50rpx;
|
||||
// height: 50rpx;
|
||||
// background-color: #F02828;
|
||||
// border-radius: 50%;
|
||||
// font-size: 25rpx;
|
||||
// font-weight: 400;
|
||||
// color: #FFFFFF;
|
||||
// line-height: 35rpx;
|
||||
// display: flex;
|
||||
// justify-content: center;
|
||||
// align-items: center;
|
||||
// position: absolute;
|
||||
// top: 28rpx;
|
||||
// right: 28rpx;
|
||||
|
||||
.center {
|
||||
padding: 28rpx 0;
|
||||
// image {
|
||||
// width: 18rpx;
|
||||
// height: 18rpx;
|
||||
// margin-right: 1rpx;
|
||||
// }
|
||||
// }
|
||||
|
||||
.top {
|
||||
font-size: 28rpx;
|
||||
font-weight: 400;
|
||||
color: #666666FF;
|
||||
margin-bottom: 20rpx;
|
||||
// .type_blue {
|
||||
// background-color: #34A853;
|
||||
// }
|
||||
|
||||
.green {
|
||||
color: #34A853FF;
|
||||
}
|
||||
// .top {
|
||||
// // background-color: #3274F9;
|
||||
// display: flex;
|
||||
|
||||
.yellow {
|
||||
color: #F9AA32FF;
|
||||
}
|
||||
}
|
||||
// .right {
|
||||
// display: flex;
|
||||
// flex-direction: column;
|
||||
// justify-content: space-around;
|
||||
// margin-left: 28rpx;
|
||||
// font-size: 25rpx;
|
||||
// font-weight: 400;
|
||||
// overflow: hidden;
|
||||
// color: #999999;
|
||||
|
||||
.bottom {
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
font-size: 25rpx;
|
||||
font-weight: 400;
|
||||
color: #999999;
|
||||
// .info_top {
|
||||
// display: flex;
|
||||
// align-items: flex-end;
|
||||
// font-size: 25rpx;
|
||||
// font-weight: 400;
|
||||
// color: $theme-oa-color;
|
||||
// margin-bottom: 10rpx;
|
||||
|
||||
image {
|
||||
width: 18rpx;
|
||||
height: 18rpx;
|
||||
margin-right: 9rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
// .info_name {
|
||||
// font-size: 32rpx;
|
||||
// font-weight: 400;
|
||||
// color: #333333;
|
||||
// margin-right: 18rpx;
|
||||
// }
|
||||
|
||||
.bottom {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
// .phone {
|
||||
// margin-left: 30rpx;
|
||||
// color: #999999;
|
||||
// }
|
||||
|
||||
.look {
|
||||
height: 43rpx;
|
||||
background: #FFFFFF;
|
||||
border-radius: 26rpx 26rpx 26rpx 26rpx;
|
||||
opacity: 1;
|
||||
// border: 2rpx solid $theme-oa-color;
|
||||
font-size: 28rpx;
|
||||
font-weight: 400;
|
||||
margin-left: 28rpx;
|
||||
color: $theme-oa-color;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
// .tel {
|
||||
// color: #000;
|
||||
// }
|
||||
// }
|
||||
|
||||
.sign {
|
||||
color: #34A853;
|
||||
// border: 2rpx solid #34A853;
|
||||
}
|
||||
// .info_bottom {
|
||||
// display: flex;
|
||||
// margin-bottom: 8rpx;
|
||||
|
||||
.red {
|
||||
color: #F02828;
|
||||
// border: 2rpx solid #F02828;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// .item {
|
||||
// display: flex;
|
||||
// align-items: flex-start;
|
||||
// }
|
||||
|
||||
// .phone {
|
||||
// margin-right: 28rpx;
|
||||
// }
|
||||
|
||||
// .location {
|
||||
// width: 320rpx;
|
||||
// // white-space: nowrap;
|
||||
// // /* 不换行 */
|
||||
// // overflow: hidden;
|
||||
// // /* 将超出文本隐藏 */
|
||||
// // text-overflow: ellipsis;
|
||||
// // /* 使用省略号表示被隐藏的文本 */
|
||||
// color: #000;
|
||||
// }
|
||||
// }
|
||||
|
||||
// .company {
|
||||
// display: flex;
|
||||
|
||||
// text {
|
||||
// margin-right: 30rpx;
|
||||
// flex-shrink: 0;
|
||||
// }
|
||||
|
||||
// .itm {
|
||||
// width: 320rpx;
|
||||
// // white-space: nowrap;
|
||||
// // /* 不换行 */
|
||||
// // overflow: hidden;
|
||||
// // /* 将超出文本隐藏 */
|
||||
// // text-overflow: ellipsis;
|
||||
// // /* 使用省略号表示被隐藏的文本 */
|
||||
// color: #000;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
// .center {
|
||||
// padding: 28rpx 0;
|
||||
|
||||
// .top {
|
||||
// font-size: 28rpx;
|
||||
// font-weight: 400;
|
||||
// color: #666666FF;
|
||||
// margin-bottom: 20rpx;
|
||||
|
||||
// .green {
|
||||
// color: #34A853FF;
|
||||
// }
|
||||
|
||||
// .yellow {
|
||||
// color: #F9AA32FF;
|
||||
// }
|
||||
// }
|
||||
|
||||
// .bottom {
|
||||
// display: flex;
|
||||
// justify-content: space-around;
|
||||
// font-size: 25rpx;
|
||||
// font-weight: 400;
|
||||
// color: #999999;
|
||||
|
||||
// image {
|
||||
// width: 18rpx;
|
||||
// height: 18rpx;
|
||||
// margin-right: 9rpx;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
// .bottom {
|
||||
// display: flex;
|
||||
// justify-content: center;
|
||||
|
||||
// .look {
|
||||
// height: 43rpx;
|
||||
// background: #FFFFFF;
|
||||
// border-radius: 26rpx 26rpx 26rpx 26rpx;
|
||||
// opacity: 1;
|
||||
// // border: 2rpx solid $theme-oa-color;
|
||||
// font-size: 28rpx;
|
||||
// font-weight: 400;
|
||||
// margin-left: 28rpx;
|
||||
// color: $theme-oa-color;
|
||||
// display: flex;
|
||||
// justify-content: center;
|
||||
// align-items: center;
|
||||
// }
|
||||
|
||||
// .sign {
|
||||
// color: #34A853;
|
||||
// // border: 2rpx solid #34A853;
|
||||
// }
|
||||
|
||||
// .red {
|
||||
// color: #F02828;
|
||||
// // border: 2rpx solid #F02828;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
</style>
|
@ -1,304 +1,314 @@
|
||||
<template>
|
||||
<view class="">
|
||||
<u-sticky bgColor="#fff">
|
||||
<u-tabs :list="tabLists" @click="changeCurrent" lineColor='#3274F9' :scrollable="false" lineWidth='40'
|
||||
inactiveStyle='color:#666' activeStyle="color:#3274F9"></u-tabs>
|
||||
</u-sticky>
|
||||
<view v-if="loadType">
|
||||
<view class="company_info" v-show="current==0">
|
||||
<company></company>
|
||||
</view>
|
||||
<view class="company_list" v-show="current==1">
|
||||
<view class="info_card" v-for="item in companyList" :key="item.id">
|
||||
<view class="top" @click="navTo('/subpkg/companySign/companySign?id='+item.id)">
|
||||
<view>
|
||||
<view class="info_name" :class="item.is_contract?'have':'no'">{{item.company_name}}</view>
|
||||
<view class="info_type">{{item.company_type_name}}</view>
|
||||
</view>
|
||||
<view class="btn">详情<uni-icons type="forward" color="#666666"></uni-icons></view>
|
||||
</view>
|
||||
<u-line></u-line>
|
||||
<view class="bottom">
|
||||
<image src="../../static/img/contract/company.png"></image>
|
||||
<view class="text">
|
||||
<view class="text_item">
|
||||
<view class="left_text">主要联系人:</view>
|
||||
<view>{{item.master_name}}</view>
|
||||
</view>
|
||||
<view class="text_item" @click="copyPhone(item.master_phone)">
|
||||
<view class="left_text">联系方式:</view>
|
||||
<view>{{item.master_phone}}</view>
|
||||
</view>
|
||||
<view class="text_item">
|
||||
<view class="left_text">区县乡镇:</view>
|
||||
<view>{{item.city_name+'/'+item.area_name+'/'+item.street_name}}</view>
|
||||
</view>
|
||||
<!-- <view>片区经理:</view> -->
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<u-loadmore :status="loadConfig.status" :loading-text="loadConfig.loadingText"
|
||||
:loadmore-text="loadConfig.loadmoreText" :nomore-text="loadConfig.nomoreText" />
|
||||
<mybtn text="新建签约" @click="navTo('/subpkg/companyUnsign/companyUnsign')"></mybtn>
|
||||
</view>
|
||||
<view class="company_info" v-show="current==2">
|
||||
<companyFinance></companyFinance>
|
||||
</view>
|
||||
<view v-show="current==3">
|
||||
<task ref="taskRef" style="width: 100vw;"></task>
|
||||
</view>
|
||||
</view>
|
||||
<u-empty v-else icon="/static/img/empty/data.png" text="没有数据"></u-empty>
|
||||
</view>
|
||||
<view class="">
|
||||
<u-sticky bgColor="#0022C7">
|
||||
<u-tabs :list="tabLists" @click="changeCurrent" lineColor='white' :scrollable="false" lineWidth='40'
|
||||
inactiveStyle='color:white' activeStyle="color:white"></u-tabs>
|
||||
</u-sticky>
|
||||
<view v-if="loadType">
|
||||
<view class="company_info" v-show="current==0">
|
||||
<company></company>
|
||||
</view>
|
||||
<view class="company_list" v-show="current==1">
|
||||
<view class="info_card" v-for="item in companyList" :key="item.id">
|
||||
<view class="top" @click="navTo('/subpkg/companySign/companySign?id='+item.id)">
|
||||
<view>
|
||||
<view class="info_name" :class="item.is_contract?'have':'no'">{{item.company_name}}</view>
|
||||
<view class="info_type">{{item.company_type_name}}</view>
|
||||
</view>
|
||||
<view class="btn">详情<uni-icons type="forward" color="#666666"></uni-icons></view>
|
||||
</view>
|
||||
<u-line></u-line>
|
||||
<view class="bottom">
|
||||
<image src="../../static/img/contract/company.png"></image>
|
||||
<view class="text">
|
||||
<view class="text_item">
|
||||
<view class="left_text">主要联系人:</view>
|
||||
<view>{{item.master_name}}</view>
|
||||
</view>
|
||||
<view class="text_item" @click="copyPhone(item.master_phone)">
|
||||
<view class="left_text">联系方式:</view>
|
||||
<view>{{item.master_phone}}</view>
|
||||
</view>
|
||||
<view class="text_item">
|
||||
<view class="left_text">区县乡镇:</view>
|
||||
<view>{{item.city_name+'/'+item.area_name+'/'+item.street_name}}</view>
|
||||
</view>
|
||||
<!-- <view>片区经理:</view> -->
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<u-loadmore :status="loadConfig.status" :loading-text="loadConfig.loadingText"
|
||||
:loadmore-text="loadConfig.loadmoreText" :nomore-text="loadConfig.nomoreText" />
|
||||
<mybtn text="新建签约" @click="navTo('/subpkg/companyUnsign/companyUnsign')"></mybtn>
|
||||
</view>
|
||||
<view class="company_info" v-show="current==2">
|
||||
<companyFinance></companyFinance>
|
||||
</view>
|
||||
<view v-show="current==3">
|
||||
<task ref="taskRef" style="width: 100vw;"></task>
|
||||
</view>
|
||||
</view>
|
||||
<u-empty v-else icon="/static/img/empty/data.png" text="没有数据"></u-empty>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { companyIndex } from "@/api/company.js"
|
||||
import { Toast } from '@/libs/uniApi.js'
|
||||
import companyFinance from "@/components/companyFinance/companyFinance.vue"
|
||||
import task from "@/components/task/index.vue"
|
||||
export default {
|
||||
components: { companyFinance, task },
|
||||
data() {
|
||||
return {
|
||||
current: 0,
|
||||
currentChild: 0,
|
||||
loadType: true,// 当公司不存在时显示
|
||||
tabLists: [{
|
||||
name: '我的公司',
|
||||
}, {
|
||||
name: '签约公司'
|
||||
}, {
|
||||
name: '公司财务'
|
||||
}, {
|
||||
name: '任务情况'
|
||||
}],
|
||||
loadConfig: {
|
||||
page: 1,
|
||||
limit: 15,
|
||||
lastpage: '',
|
||||
loadingText: '努力加载中',
|
||||
loadmoreText: '轻轻上拉',
|
||||
nomoreText: '我也是有底线的~~',
|
||||
status: 'loadmore'
|
||||
},
|
||||
companyList: []
|
||||
}
|
||||
},
|
||||
onLoad() {},
|
||||
onShow() {
|
||||
if(this.$store.state.app.userInfo.company_id){
|
||||
this.loadCompanyList();
|
||||
}else {
|
||||
this.loadType = false;
|
||||
}
|
||||
},
|
||||
onReachBottom() {
|
||||
if(this.current==1) this.loadCompanyList();
|
||||
else if(this.current==3) this.$refs.taskRef.loadList();
|
||||
},
|
||||
methods: {
|
||||
async initLoad() {
|
||||
this.loadConfig.page = 1;
|
||||
this.loadConfig.status = "loadmore";
|
||||
this.companyList = [];
|
||||
await this.loadCompanyList();
|
||||
},
|
||||
// 加载公司列表
|
||||
async loadCompanyList() {
|
||||
if (this.loadConfig.status == "nomore") return;
|
||||
this.loadConfig.status = "loading";
|
||||
let res = await companyIndex({
|
||||
page: this.loadConfig.page,
|
||||
limit: this.loadConfig.limit
|
||||
})
|
||||
this.loadConfig.status = "loadmore"
|
||||
if (res.data.data.length < this.loadConfig.limit) {
|
||||
this.loadConfig.status = "nomore"
|
||||
} else {
|
||||
this.loadConfig.page++;
|
||||
}
|
||||
this.companyList = [...this.companyList, ...res.data?.data]
|
||||
},
|
||||
navTo(url) {
|
||||
url ?
|
||||
uni.navigateTo({
|
||||
url: url
|
||||
}) : Toast('暂未开放')
|
||||
},
|
||||
naviBack() {
|
||||
uni.navigateBack()
|
||||
},
|
||||
copyPhone(str = "", type = "号码") {
|
||||
if (str) uni.setClipboardData({
|
||||
data: str + "",
|
||||
success: (e) => {
|
||||
Toast(type + '已复制')
|
||||
},
|
||||
fail: (e) => {
|
||||
Toast('复制失败')
|
||||
}
|
||||
})
|
||||
},
|
||||
changeCurrent(e){
|
||||
this.current = e.index;
|
||||
}
|
||||
},
|
||||
onPullDownRefresh() {
|
||||
if(this.current==1) this.initLoad();
|
||||
else if(this.current==3) this.$refs.taskRef.initLoadConfig();
|
||||
this.$u.sleep(500).then(()=>{uni.stopPullDownRefresh()})
|
||||
}
|
||||
}
|
||||
import {
|
||||
companyIndex
|
||||
} from "@/api/company.js"
|
||||
import {
|
||||
Toast
|
||||
} from '@/libs/uniApi.js'
|
||||
import companyFinance from "@/components/companyFinance/companyFinance.vue"
|
||||
import task from "@/components/task/index.vue"
|
||||
export default {
|
||||
components: {
|
||||
companyFinance,
|
||||
task
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
current: 0,
|
||||
currentChild: 0,
|
||||
loadType: true, // 当公司不存在时显示
|
||||
tabLists: [{
|
||||
name: '我的公司',
|
||||
}, {
|
||||
name: '签约公司'
|
||||
}, {
|
||||
name: '公司财务'
|
||||
}, {
|
||||
name: '任务情况'
|
||||
}],
|
||||
loadConfig: {
|
||||
page: 1,
|
||||
limit: 15,
|
||||
lastpage: '',
|
||||
loadingText: '努力加载中',
|
||||
loadmoreText: '轻轻上拉',
|
||||
nomoreText: '我也是有底线的~~',
|
||||
status: 'loadmore'
|
||||
},
|
||||
companyList: []
|
||||
}
|
||||
},
|
||||
onLoad() {},
|
||||
onShow() {
|
||||
if (this.$store.state.app.userInfo.company_id) {
|
||||
this.loadCompanyList();
|
||||
} else {
|
||||
this.loadType = false;
|
||||
}
|
||||
},
|
||||
onReachBottom() {
|
||||
if (this.current == 1) this.loadCompanyList();
|
||||
else if (this.current == 3) this.$refs.taskRef.loadList();
|
||||
},
|
||||
methods: {
|
||||
async initLoad() {
|
||||
this.loadConfig.page = 1;
|
||||
this.loadConfig.status = "loadmore";
|
||||
this.companyList = [];
|
||||
await this.loadCompanyList();
|
||||
},
|
||||
// 加载公司列表
|
||||
async loadCompanyList() {
|
||||
if (this.loadConfig.status == "nomore") return;
|
||||
this.loadConfig.status = "loading";
|
||||
let res = await companyIndex({
|
||||
page: this.loadConfig.page,
|
||||
limit: this.loadConfig.limit
|
||||
})
|
||||
this.loadConfig.status = "loadmore"
|
||||
if (res.data.data.length < this.loadConfig.limit) {
|
||||
this.loadConfig.status = "nomore"
|
||||
} else {
|
||||
this.loadConfig.page++;
|
||||
}
|
||||
this.companyList = [...this.companyList, ...res.data?.data]
|
||||
},
|
||||
navTo(url) {
|
||||
url ?
|
||||
uni.navigateTo({
|
||||
url: url
|
||||
}) : Toast('暂未开放')
|
||||
},
|
||||
naviBack() {
|
||||
uni.navigateBack()
|
||||
},
|
||||
copyPhone(str = "", type = "号码") {
|
||||
if (str) uni.setClipboardData({
|
||||
data: str + "",
|
||||
success: (e) => {
|
||||
Toast(type + '已复制')
|
||||
},
|
||||
fail: (e) => {
|
||||
Toast('复制失败')
|
||||
}
|
||||
})
|
||||
},
|
||||
changeCurrent(e) {
|
||||
this.current = e.index;
|
||||
}
|
||||
},
|
||||
onPullDownRefresh() {
|
||||
if (this.current == 1) this.initLoad();
|
||||
else if (this.current == 3) this.$refs.taskRef.initLoadConfig();
|
||||
this.$u.sleep(500).then(() => {
|
||||
uni.stopPullDownRefresh()
|
||||
})
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
page{
|
||||
|
||||
}
|
||||
.fixed_box {
|
||||
width: 100%;
|
||||
position: fixed;
|
||||
/* #ifdef APP-PLUS */
|
||||
top: 0;
|
||||
/* #endif */
|
||||
/* #ifdef H5 */
|
||||
top: 44px;
|
||||
/* #endif */
|
||||
left: 0;
|
||||
z-index: 999;
|
||||
}
|
||||
page {}
|
||||
|
||||
.top_box {
|
||||
background-color: #fff;
|
||||
display: flex;
|
||||
.fixed_box {
|
||||
width: 100%;
|
||||
position: fixed;
|
||||
/* #ifdef APP-PLUS */
|
||||
top: 0;
|
||||
/* #endif */
|
||||
/* #ifdef H5 */
|
||||
top: 44px;
|
||||
/* #endif */
|
||||
left: 0;
|
||||
z-index: 999;
|
||||
}
|
||||
|
||||
.item {
|
||||
flex-shrink: 0;
|
||||
/* 禁止缩小 */
|
||||
width: 155rpx;
|
||||
height: 53rpx;
|
||||
background: #F5F5F5FF;
|
||||
color: #999999FF;
|
||||
border-radius: 35rpx 35rpx 35rpx 35rpx;
|
||||
opacity: 1;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
margin: 28rpx 0;
|
||||
margin-left: 28rpx;
|
||||
}
|
||||
.top_box {
|
||||
background-color: #fff;
|
||||
display: flex;
|
||||
|
||||
.active {
|
||||
background: $theme-oa-color;
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
.item {
|
||||
flex-shrink: 0;
|
||||
/* 禁止缩小 */
|
||||
width: 155rpx;
|
||||
height: 53rpx;
|
||||
background: #F5F5F5FF;
|
||||
color: #999999FF;
|
||||
border-radius: 35rpx 35rpx 35rpx 35rpx;
|
||||
opacity: 1;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
margin: 28rpx 0;
|
||||
margin-left: 28rpx;
|
||||
}
|
||||
|
||||
.top_box2 {
|
||||
.item {
|
||||
margin-top: 0;
|
||||
width: 120rpx;
|
||||
}
|
||||
}
|
||||
.active {
|
||||
background: $theme-oa-color;
|
||||
color: #fff;
|
||||
}
|
||||
}
|
||||
|
||||
.company_info {
|
||||
// margin-top: 110rpx;
|
||||
}
|
||||
.top_box2 {
|
||||
.item {
|
||||
margin-top: 0;
|
||||
width: 120rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.company_list {
|
||||
padding-bottom: 32rpx;
|
||||
// margin-top: 190rpx;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
.company_info {
|
||||
// margin-top: 110rpx;
|
||||
}
|
||||
|
||||
.info_card {
|
||||
width: 694rpx;
|
||||
// height: 300rpx;
|
||||
background: #FFFFFF;
|
||||
border-radius: 21rpx 21rpx 21rpx 21rpx;
|
||||
margin-top: 28rpx;
|
||||
padding: 24rpx;
|
||||
.company_list {
|
||||
padding-bottom: 32rpx;
|
||||
// margin-top: 190rpx;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
|
||||
.top {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
margin-bottom: 28rpx;
|
||||
.info_card {
|
||||
width: 694rpx;
|
||||
// height: 300rpx;
|
||||
background: #FFFFFF;
|
||||
border-radius: 21rpx 21rpx 21rpx 21rpx;
|
||||
margin-top: 28rpx;
|
||||
padding: 24rpx;
|
||||
|
||||
.info_name {
|
||||
font-size: 32rpx;
|
||||
font-weight: 500;
|
||||
color: #333333;
|
||||
}
|
||||
.top {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
margin-bottom: 28rpx;
|
||||
|
||||
.have {
|
||||
&::before {
|
||||
content: "已签约";
|
||||
border-radius: 14rpx;
|
||||
border: 5rpx solid #5ac725;
|
||||
color: #5ac725;
|
||||
padding: 3rpx 6rpx;
|
||||
font-size: 28rpx;
|
||||
margin-right: 10rpx;
|
||||
}
|
||||
}
|
||||
.info_name {
|
||||
font-size: 32rpx;
|
||||
font-weight: 500;
|
||||
color: #333333;
|
||||
}
|
||||
|
||||
.no {
|
||||
&::before {
|
||||
content: "未签约";
|
||||
border-radius: 14rpx;
|
||||
border: 5rpx solid #f56c6c;
|
||||
color: #f56c6c;
|
||||
padding: 3rpx 6rpx;
|
||||
font-size: 28rpx;
|
||||
margin-right: 10rpx;
|
||||
}
|
||||
}
|
||||
.have {
|
||||
&::before {
|
||||
content: "已签约";
|
||||
border-radius: 14rpx;
|
||||
border: 5rpx solid #5ac725;
|
||||
color: #5ac725;
|
||||
padding: 3rpx 6rpx;
|
||||
font-size: 28rpx;
|
||||
margin-right: 10rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.info_type {
|
||||
font-size: 25rpx;
|
||||
font-weight: 500;
|
||||
color: $theme-oa-color;
|
||||
margin-top: 10rpx;
|
||||
}
|
||||
.no {
|
||||
&::before {
|
||||
content: "未签约";
|
||||
border-radius: 14rpx;
|
||||
border: 5rpx solid #f56c6c;
|
||||
color: #f56c6c;
|
||||
padding: 3rpx 6rpx;
|
||||
font-size: 28rpx;
|
||||
margin-right: 10rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.btn {
|
||||
flex-shrink: 0;
|
||||
font-size: 25rpx;
|
||||
font-weight: 400;
|
||||
color: #666666;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: right;
|
||||
}
|
||||
}
|
||||
.info_type {
|
||||
font-size: 25rpx;
|
||||
font-weight: 500;
|
||||
color: $theme-oa-color;
|
||||
margin-top: 10rpx;
|
||||
}
|
||||
|
||||
.bottom {
|
||||
display: flex;
|
||||
margin-top: 28rpx;
|
||||
.btn {
|
||||
flex-shrink: 0;
|
||||
font-size: 25rpx;
|
||||
font-weight: 400;
|
||||
color: #666666;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: right;
|
||||
}
|
||||
}
|
||||
|
||||
image {
|
||||
height: 140rpx;
|
||||
width: 140rpx;
|
||||
margin-right: 28rpx;
|
||||
}
|
||||
.bottom {
|
||||
display: flex;
|
||||
margin-top: 28rpx;
|
||||
|
||||
.text {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
.text_item{
|
||||
display: flex;
|
||||
.left_text{
|
||||
flex-shrink: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
image {
|
||||
height: 140rpx;
|
||||
width: 140rpx;
|
||||
margin-right: 28rpx;
|
||||
}
|
||||
|
||||
.text {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
|
||||
.text_item {
|
||||
display: flex;
|
||||
|
||||
.left_text {
|
||||
flex-shrink: 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
</style>
|
@ -1,348 +1,489 @@
|
||||
<template>
|
||||
<view class="personnel">
|
||||
<view class="personnel_list">
|
||||
<block v-for="(item, index) in userList" :key="item.id">
|
||||
<view class="personnel_item">
|
||||
<view class="type" :class="item.is_contract?'type_blue':''">
|
||||
<image v-if="item.is_contract" src="../../static/icons/ok_w.png"></image>
|
||||
<image v-else src="../../static/icons/err_w.png"></image>
|
||||
</view>
|
||||
<view class="top" style="margin-bottom: 28rpx;">
|
||||
<view class="left">
|
||||
<u--image class="u_avatar" :showLoading="true" :src="item.avatar||'../../static/img/public/man.png'"
|
||||
width="112.28rpx" height="112.28rpx" shape="circle"></u--image>
|
||||
</view>
|
||||
<view class="right">
|
||||
<view class="info_top">
|
||||
<view class="info_name">{{item.nickname}}</view>
|
||||
<text class="phone">电话:</text>
|
||||
<text class="tel">{{item.phone||item.account}}</text>
|
||||
</view>
|
||||
<view class="info_bottom">
|
||||
<text class="item phone">
|
||||
分管片区:
|
||||
</text>
|
||||
<view class="item">
|
||||
<view class="location">{{ (item.street_name||'')+(item.village_name||'')+(item.brigade_name||'') }}</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="info_bottom">
|
||||
<text class="item phone">
|
||||
所属公司:
|
||||
</text>
|
||||
<view class="item" v-if="item.company">
|
||||
<view class="location">
|
||||
{{item.company.company_name}}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- <view class="center">
|
||||
<view class="top" v-for="(role, roleIndex) in item.roles" :key="roleIndex">
|
||||
{{role}}
|
||||
</view>
|
||||
</view> -->
|
||||
<u-line color="#999999FF"></u-line>
|
||||
<view class="bottom" style="margin-top: 28rpx;float: right;">
|
||||
<button class="look sign" v-if="item.is_contract==1" @click="changeSign(item)">已签约</button>
|
||||
<button class="look red" v-else @click="changeSign(item)">未签约</button>
|
||||
<button class="look" @click="navTo('/subpkg/finance/finance?id='+item.id)">财务查看</button>
|
||||
<button class="look" @click="navTo('/subpkg/personnelDetails/personnelDetails?id='+item.id)">信息查看</button>
|
||||
</view>
|
||||
</view>
|
||||
</block>
|
||||
<u-empty v-if="loadConfig.status=='nomore'&& userList.length==0" icon="/static/img/empty/data.png"></u-empty>
|
||||
<u-loadmore v-else :status="loadConfig.status" :loading-text="loadConfig.loadingText"
|
||||
:loadmore-text="loadConfig.loadmoreText" :nomore-text="loadConfig.nomoreText" />
|
||||
</view>
|
||||
<!-- <button class="new_btn" @click.stop="navTo('/subpkg/newPersonnel/newPersonnel')">创建账号</button> -->
|
||||
<mybtn text="创建账号" @click="navTo('/subpkg/newPersonnel/newPersonnel')"></mybtn>
|
||||
</view>
|
||||
<view class="personnel">
|
||||
<view class="personnel_list">
|
||||
|
||||
<!--
|
||||
<block v-for="(item, index) in userList" :key="item.id">
|
||||
<view class="personnel_item">
|
||||
<view class="type" :class="item.is_contract?'type_blue':''">
|
||||
<image v-if="item.is_contract" src="../../static/icons/ok_w.png"></image>
|
||||
<image v-else src="../../static/icons/err_w.png"></image>
|
||||
</view>
|
||||
<view class="top" style="margin-bottom: 28rpx;">
|
||||
<view class="left">
|
||||
<u--image class="u_avatar" :showLoading="true"
|
||||
:src="item.avatar||'../../static/img/public/man.png'" width="112.28rpx"
|
||||
height="112.28rpx" shape="circle"></u--image>
|
||||
</view>
|
||||
<view class="right">
|
||||
<view class="info_top">
|
||||
<view class="info_name">{{item.nickname}}</view>
|
||||
<text class="phone">电话:</text>
|
||||
<text class="tel">{{item.phone||item.account}}</text>
|
||||
</view>
|
||||
<view class="info_bottom">
|
||||
<text class="item phone">
|
||||
分管片区:
|
||||
</text>
|
||||
<view class="item">
|
||||
<view class="location">
|
||||
{{ (item.street_name||'')+(item.village_name||'')+(item.brigade_name||'') }}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="info_bottom">
|
||||
<text class="item phone">
|
||||
所属公司:
|
||||
</text>
|
||||
<view class="item" v-if="item.company">
|
||||
<view class="location">
|
||||
{{item.company.company_name}}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<u-line color="#999999FF"></u-line>
|
||||
<view class="bottom" style="margin-top: 28rpx;float: right;">
|
||||
<button class="look sign" v-if="item.is_contract==1" @click="changeSign(item)">已签约</button>
|
||||
<button class="look red" v-else @click="changeSign(item)">未签约</button>
|
||||
<button class="look" @click="navTo('/subpkg/finance/finance?id='+item.id)">财务查看</button>
|
||||
<button class="look"
|
||||
@click="navTo('/subpkg/personnelDetails/personnelDetails?id='+item.id)">信息查看</button>
|
||||
</view>
|
||||
</view>
|
||||
</block>
|
||||
-->
|
||||
<view class="personnel_list">
|
||||
<view class="card" v-for="(item, index) in userList" :key="item.id">
|
||||
<view class="card_head">
|
||||
<text style="font-size: 32rpx">创建时间: 2020-25-2</text>
|
||||
<text @click="navTo('/subpkg/finance/finance?id='+item.id)">财务查看</text>
|
||||
<text @click="navTo('/subpkg/personnelDetails/personnelDetails?id='+item.id)">信息查看</text>
|
||||
</view>
|
||||
<view class="card_content">
|
||||
<view class="left">
|
||||
<view class="cir">
|
||||
<u--image class="u_avatar" :showLoading="true"
|
||||
:src="item.avatar||'../../static/img/public/man.png'" width="112.28rpx"
|
||||
height="112.28rpx" shape="circle"></u--image>
|
||||
</view>
|
||||
|
||||
<view style="margin-top: 40rpx;" @click="changeSign(item)">
|
||||
<u-icon style="display: inline-block;margin-left: 10rpx;" color="white"
|
||||
name="edit-pen-fill"></u-icon> {{item.is_contract?'已签约':'未签约'}}
|
||||
</view>
|
||||
</view>
|
||||
<view class="right">
|
||||
<view class="">
|
||||
<text>公司名称 :</text>
|
||||
<text> {{item.company.company_name}}</text>
|
||||
</view>
|
||||
<view class="">
|
||||
<text>人员姓名 :</text>
|
||||
<text>{{item.nickname}}</text>
|
||||
</view>
|
||||
<view class="">
|
||||
<text>联系电话 :</text>
|
||||
<text>{{item.phone}}</text>
|
||||
</view>
|
||||
<view class="">
|
||||
<text>负责区域 :</text>
|
||||
<text> {{ (item.street_name||'')+(item.village_name||'')+(item.brigade_name||'') }}
|
||||
</text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
<u-empty v-if="loadConfig.status=='nomore'&& userList.length==0"
|
||||
icon="/static/img/empty/data.png"></u-empty>
|
||||
<u-loadmore v-else :status="loadConfig.status" :loading-text="loadConfig.loadingText"
|
||||
:loadmore-text="loadConfig.loadmoreText" :nomore-text="loadConfig.nomoreText" />
|
||||
</view>
|
||||
<!-- <button class="new_btn" @click.stop="navTo('/subpkg/newPersonnel/newPersonnel')">创建账号</button> -->
|
||||
<mybtn text="创建账号" @click="navTo('/subpkg/newPersonnel/newPersonnel')"></mybtn>
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Toast } from '@/libs/uniApi.js'
|
||||
import { companyUser } from "@/api/company.js"
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
loadConfig: {
|
||||
page: 1,
|
||||
limit: 15,
|
||||
loadingText: '努力加载中',
|
||||
loadmoreText: '轻轻上拉',
|
||||
nomoreText: '我也是有底线的~~',
|
||||
status: 'loadmore'
|
||||
},
|
||||
userList: []
|
||||
}
|
||||
},
|
||||
onLoad() {
|
||||
this.loadUserList();
|
||||
uni.$on('initPersonnel', this.initLoad);
|
||||
},
|
||||
methods: {
|
||||
navTo(url) {
|
||||
url ?
|
||||
uni.navigateTo({
|
||||
url: url,
|
||||
}) : Toast('暂未开放')
|
||||
},
|
||||
async initLoad() {
|
||||
this.loadConfig.page = 1;
|
||||
this.loadConfig.status = "loadmore";
|
||||
this.userList = [];
|
||||
await this.loadUserList();
|
||||
uni.stopPullDownRefresh();
|
||||
},
|
||||
async loadUserList() {
|
||||
let that = this;
|
||||
if (this.loadConfig.status == "nomore") return;
|
||||
this.loadConfig.status = "loading"
|
||||
let res = await companyUser({
|
||||
page: this.loadConfig.page,
|
||||
limit: this.loadConfig.limit,
|
||||
company_id: this.$store.state.app.userInfo.company_id
|
||||
})
|
||||
this.loadConfig.status = "loadmore"
|
||||
if (res.data.data.length < this.loadConfig.limit) {
|
||||
this.loadConfig.status = "nomore"
|
||||
} else {
|
||||
this.loadConfig.page++;
|
||||
}
|
||||
this.userList = [...this.userList, ...res.data?.data]
|
||||
},
|
||||
// 点击已签约或未签约按钮
|
||||
changeSign(data){
|
||||
if(data.is_contract)Toast('已完成签约');
|
||||
else uni.showModal({
|
||||
content:'该人员还未签约,是否立即签约?',
|
||||
success: (e) => {
|
||||
if(e.confirm)this.navTo('/subpkg/personnelDetails/personnelDetails?id='+data.id);
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
onPullDownRefresh() {
|
||||
this.initLoad();
|
||||
}
|
||||
}
|
||||
import {
|
||||
Toast
|
||||
} from '@/libs/uniApi.js'
|
||||
import {
|
||||
companyUser
|
||||
} from "@/api/company.js"
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
loadConfig: {
|
||||
page: 1,
|
||||
limit: 15,
|
||||
loadingText: '努力加载中',
|
||||
loadmoreText: '轻轻上拉',
|
||||
nomoreText: '我也是有底线的~~',
|
||||
status: 'loadmore'
|
||||
},
|
||||
userList: []
|
||||
}
|
||||
},
|
||||
onLoad() {
|
||||
this.loadUserList();
|
||||
uni.$on('initPersonnel', this.initLoad);
|
||||
},
|
||||
methods: {
|
||||
navTo(url) {
|
||||
url ?
|
||||
uni.navigateTo({
|
||||
url: url,
|
||||
}) : Toast('暂未开放')
|
||||
},
|
||||
async initLoad() {
|
||||
this.loadConfig.page = 1;
|
||||
this.loadConfig.status = "loadmore";
|
||||
this.userList = [];
|
||||
await this.loadUserList();
|
||||
uni.stopPullDownRefresh();
|
||||
},
|
||||
async loadUserList() {
|
||||
let that = this;
|
||||
if (this.loadConfig.status == "nomore") return;
|
||||
this.loadConfig.status = "loading"
|
||||
let res = await companyUser({
|
||||
page: this.loadConfig.page,
|
||||
limit: this.loadConfig.limit,
|
||||
company_id: this.$store.state.app.userInfo.company_id
|
||||
})
|
||||
this.loadConfig.status = "loadmore"
|
||||
if (res.data.data.length < this.loadConfig.limit) {
|
||||
this.loadConfig.status = "nomore"
|
||||
} else {
|
||||
this.loadConfig.page++;
|
||||
}
|
||||
this.userList = [...this.userList, ...res.data?.data]
|
||||
},
|
||||
// 点击已签约或未签约按钮
|
||||
changeSign(data) {
|
||||
if (data.is_contract) Toast('已完成签约');
|
||||
else uni.showModal({
|
||||
content: '该人员还未签约,是否立即签约?',
|
||||
success: (e) => {
|
||||
if (e.confirm) this.navTo('/subpkg/personnelDetails/personnelDetails?id=' + data.id);
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
onPullDownRefresh() {
|
||||
this.initLoad();
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.personnel {
|
||||
.new_btn {
|
||||
position: fixed;
|
||||
bottom: 30rpx;
|
||||
// margin-top: 32rpx;
|
||||
// margin-bottom: 40rpx;
|
||||
left: 50%;
|
||||
transform: translate(-50%);
|
||||
z-index: 999;
|
||||
width: 694rpx;
|
||||
height: 84rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 42rpx 42rpx 42rpx 42rpx;
|
||||
color: #fff;
|
||||
line-height: 80rpx;
|
||||
text-align: center;
|
||||
}
|
||||
.personnel {
|
||||
.new_btn {
|
||||
position: fixed;
|
||||
bottom: 30rpx;
|
||||
// margin-top: 32rpx;
|
||||
// margin-bottom: 40rpx;
|
||||
left: 50%;
|
||||
transform: translate(-50%);
|
||||
z-index: 999;
|
||||
width: 694rpx;
|
||||
height: 84rpx;
|
||||
background: $theme-oa-color;
|
||||
border-radius: 42rpx 42rpx 42rpx 42rpx;
|
||||
color: #fff;
|
||||
line-height: 80rpx;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.personnel_list {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
align-items: center;
|
||||
padding-top: 32rpx;
|
||||
padding-bottom: 130rpx;
|
||||
.personnel_list {
|
||||
padding: 28rpx 0;
|
||||
margin-bottom: 130rpx;
|
||||
|
||||
.personnel_item {
|
||||
width: 694rpx;
|
||||
// height: 407rpx;
|
||||
background: #FFFFFF;
|
||||
border-radius: 14rpx 14rpx 14rpx 14rpx;
|
||||
margin-bottom: 32rpx;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
padding: 28rpx;
|
||||
.card {
|
||||
margin: 0 auto;
|
||||
margin-bottom: 28rpx;
|
||||
width: 694rpx;
|
||||
background: #FFFFFF;
|
||||
border-radius: 30rpx;
|
||||
opacity: 1;
|
||||
overflow: hidden;
|
||||
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
||||
|
||||
.type {
|
||||
width: 50rpx;
|
||||
height: 50rpx;
|
||||
background-color: #F02828;
|
||||
border-radius: 50%;
|
||||
font-size: 25rpx;
|
||||
font-weight: 400;
|
||||
color: #FFFFFF;
|
||||
line-height: 35rpx;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
position: absolute;
|
||||
top: 28rpx;
|
||||
right: 28rpx;
|
||||
.card_head {
|
||||
padding: 28rpx;
|
||||
background-color: $theme-oa-color;
|
||||
color: white;
|
||||
height: 100rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
image {
|
||||
width: 18rpx;
|
||||
height: 18rpx;
|
||||
margin-right: 1rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.type_blue {
|
||||
background-color: #34A853;
|
||||
}
|
||||
.card_content {
|
||||
padding: 28rpx;
|
||||
display: flex;
|
||||
|
||||
.top {
|
||||
// background-color: #3274F9;
|
||||
display: flex;
|
||||
.left {
|
||||
text-align: center;
|
||||
// padding: 15rpx 25rpx;
|
||||
padding-top: 20rpx;
|
||||
|
||||
.right {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-around;
|
||||
margin-left: 28rpx;
|
||||
font-size: 25rpx;
|
||||
font-weight: 400;
|
||||
overflow: hidden;
|
||||
color: #999999;
|
||||
margin-right: 50rpx;
|
||||
width: 160rpx;
|
||||
background-color: $theme-oa-color;
|
||||
color: white;
|
||||
border-radius: 40rpx;
|
||||
|
||||
.info_top {
|
||||
display: flex;
|
||||
align-items: flex-end;
|
||||
font-size: 25rpx;
|
||||
font-weight: 400;
|
||||
color: $theme-oa-color;
|
||||
margin-bottom: 10rpx;
|
||||
.cir {
|
||||
width: 120rpx;
|
||||
height: 120rpx;
|
||||
background-color: #FFFFFF;
|
||||
margin-left: 25rpx;
|
||||
border-radius: 120rpx;
|
||||
position: relative;
|
||||
|
||||
.info_name {
|
||||
font-size: 32rpx;
|
||||
font-weight: 400;
|
||||
color: #333333;
|
||||
margin-right: 18rpx;
|
||||
}
|
||||
|
||||
.phone {
|
||||
margin-left: 30rpx;
|
||||
color: #999999;
|
||||
}
|
||||
}
|
||||
|
||||
.tel {
|
||||
color: #000;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.info_bottom {
|
||||
display: flex;
|
||||
margin-bottom: 8rpx;
|
||||
|
||||
.item {
|
||||
display: flex;
|
||||
align-items: flex-start;
|
||||
}
|
||||
.right {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
|
||||
.phone {
|
||||
margin-right: 28rpx;
|
||||
}
|
||||
view {
|
||||
text:nth-child(2) {
|
||||
margin-left: 20rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.location {
|
||||
width: 350rpx;
|
||||
// white-space: nowrap;
|
||||
// /* 不换行 */
|
||||
// overflow: hidden;
|
||||
// /* 将超出文本隐藏 */
|
||||
// text-overflow: ellipsis;
|
||||
// /* 使用省略号表示被隐藏的文本 */
|
||||
color: #000;
|
||||
}
|
||||
}
|
||||
|
||||
.company {
|
||||
display: flex;
|
||||
.u_avatar {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
|
||||
text {
|
||||
margin-right: 30rpx;
|
||||
}
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
|
||||
.itm {
|
||||
width: 350rpx;
|
||||
white-space: nowrap;
|
||||
/* 不换行 */
|
||||
overflow: hidden;
|
||||
/* 将超出文本隐藏 */
|
||||
text-overflow: ellipsis;
|
||||
/* 使用省略号表示被隐藏的文本 */
|
||||
color: #000;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.center {
|
||||
padding: 28rpx 0;
|
||||
|
||||
.top {
|
||||
font-size: 28rpx;
|
||||
font-weight: 400;
|
||||
color: #666666FF;
|
||||
margin-bottom: 20rpx;
|
||||
}
|
||||
|
||||
.green {
|
||||
color: #34A853FF;
|
||||
}
|
||||
|
||||
.yellow {
|
||||
color: #F9AA32FF;
|
||||
}
|
||||
}
|
||||
|
||||
.bottom {
|
||||
display: flex;
|
||||
justify-content: space-around;
|
||||
font-size: 25rpx;
|
||||
font-weight: 400;
|
||||
color: #999999;
|
||||
|
||||
image {
|
||||
width: 18rpx;
|
||||
height: 18rpx;
|
||||
margin-right: 9rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.bottom {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
// .personnel_list {
|
||||
// display: flex;
|
||||
// flex-direction: column;
|
||||
// align-items: center;
|
||||
// padding-top: 32rpx;
|
||||
// padding-bottom: 130rpx;
|
||||
|
||||
.look {
|
||||
width: 128rpx;
|
||||
height: 43rpx;
|
||||
background: #FFFFFF;
|
||||
border-radius: 26rpx 26rpx 26rpx 26rpx;
|
||||
opacity: 1;
|
||||
// border: 2rpx solid $theme-oa-color;
|
||||
font-size: 28rpx;
|
||||
font-weight: 400;
|
||||
margin-left: 28rpx;
|
||||
color: $theme-oa-color;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
// .personnel_item {
|
||||
// width: 694rpx;
|
||||
// // height: 407rpx;
|
||||
// background: #FFFFFF;
|
||||
// border-radius: 14rpx 14rpx 14rpx 14rpx;
|
||||
// margin-bottom: 32rpx;
|
||||
// overflow: hidden;
|
||||
// position: relative;
|
||||
// padding: 28rpx;
|
||||
|
||||
.sign {
|
||||
color: #34A853;
|
||||
// border: 2rpx solid #34A853;
|
||||
}
|
||||
// .type {
|
||||
// width: 50rpx;
|
||||
// height: 50rpx;
|
||||
// background-color: #F02828;
|
||||
// border-radius: 50%;
|
||||
// font-size: 25rpx;
|
||||
// font-weight: 400;
|
||||
// color: #FFFFFF;
|
||||
// line-height: 35rpx;
|
||||
// display: flex;
|
||||
// justify-content: center;
|
||||
// align-items: center;
|
||||
// position: absolute;
|
||||
// top: 28rpx;
|
||||
// right: 28rpx;
|
||||
|
||||
.red {
|
||||
color: #F02828;
|
||||
// border: 2rpx solid #F02828;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// image {
|
||||
// width: 18rpx;
|
||||
// height: 18rpx;
|
||||
// margin-right: 1rpx;
|
||||
// }
|
||||
// }
|
||||
|
||||
}
|
||||
// .type_blue {
|
||||
// background-color: #34A853;
|
||||
// }
|
||||
|
||||
// .top {
|
||||
// // background-color: #3274F9;
|
||||
// display: flex;
|
||||
|
||||
// .right {
|
||||
// display: flex;
|
||||
// flex-direction: column;
|
||||
// justify-content: space-around;
|
||||
// margin-left: 28rpx;
|
||||
// font-size: 25rpx;
|
||||
// font-weight: 400;
|
||||
// overflow: hidden;
|
||||
// color: #999999;
|
||||
|
||||
// .info_top {
|
||||
// display: flex;
|
||||
// align-items: flex-end;
|
||||
// font-size: 25rpx;
|
||||
// font-weight: 400;
|
||||
// color: $theme-oa-color;
|
||||
// margin-bottom: 10rpx;
|
||||
|
||||
// .info_name {
|
||||
// font-size: 32rpx;
|
||||
// font-weight: 400;
|
||||
// color: #333333;
|
||||
// margin-right: 18rpx;
|
||||
// }
|
||||
|
||||
// .phone {
|
||||
// margin-left: 30rpx;
|
||||
// color: #999999;
|
||||
// }
|
||||
|
||||
// .tel {
|
||||
// color: #000;
|
||||
// }
|
||||
// }
|
||||
|
||||
// .info_bottom {
|
||||
// display: flex;
|
||||
// margin-bottom: 8rpx;
|
||||
|
||||
// .item {
|
||||
// display: flex;
|
||||
// align-items: flex-start;
|
||||
// }
|
||||
|
||||
// .phone {
|
||||
// margin-right: 28rpx;
|
||||
// }
|
||||
|
||||
// .location {
|
||||
// width: 350rpx;
|
||||
// // white-space: nowrap;
|
||||
// // /* 不换行 */
|
||||
// // overflow: hidden;
|
||||
// // /* 将超出文本隐藏 */
|
||||
// // text-overflow: ellipsis;
|
||||
// // /* 使用省略号表示被隐藏的文本 */
|
||||
// color: #000;
|
||||
// }
|
||||
// }
|
||||
|
||||
// .company {
|
||||
// display: flex;
|
||||
|
||||
// text {
|
||||
// margin-right: 30rpx;
|
||||
// }
|
||||
|
||||
// .itm {
|
||||
// width: 350rpx;
|
||||
// white-space: nowrap;
|
||||
// /* 不换行 */
|
||||
// overflow: hidden;
|
||||
// /* 将超出文本隐藏 */
|
||||
// text-overflow: ellipsis;
|
||||
// /* 使用省略号表示被隐藏的文本 */
|
||||
// color: #000;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
// .center {
|
||||
// padding: 28rpx 0;
|
||||
|
||||
// .top {
|
||||
// font-size: 28rpx;
|
||||
// font-weight: 400;
|
||||
// color: #666666FF;
|
||||
// margin-bottom: 20rpx;
|
||||
|
||||
// .green {
|
||||
// color: #34A853FF;
|
||||
// }
|
||||
|
||||
// .yellow {
|
||||
// color: #F9AA32FF;
|
||||
// }
|
||||
// }
|
||||
|
||||
// .bottom {
|
||||
// display: flex;
|
||||
// justify-content: space-around;
|
||||
// font-size: 25rpx;
|
||||
// font-weight: 400;
|
||||
// color: #999999;
|
||||
|
||||
// image {
|
||||
// width: 18rpx;
|
||||
// height: 18rpx;
|
||||
// margin-right: 9rpx;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
// .bottom {
|
||||
// display: flex;
|
||||
// justify-content: center;
|
||||
|
||||
// .look {
|
||||
// width: 128rpx;
|
||||
// height: 43rpx;
|
||||
// background: #FFFFFF;
|
||||
// border-radius: 26rpx 26rpx 26rpx 26rpx;
|
||||
// opacity: 1;
|
||||
// // border: 2rpx solid $theme-oa-color;
|
||||
// font-size: 28rpx;
|
||||
// font-weight: 400;
|
||||
// margin-left: 28rpx;
|
||||
// color: $theme-oa-color;
|
||||
// display: flex;
|
||||
// justify-content: center;
|
||||
// align-items: center;
|
||||
// }
|
||||
|
||||
// .sign {
|
||||
// color: #34A853;
|
||||
// // border: 2rpx solid #34A853;
|
||||
// }
|
||||
|
||||
// .red {
|
||||
// color: #F02828;
|
||||
// // border: 2rpx solid #F02828;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
|
||||
|
||||
}
|
||||
</style>
|
119
test.vue
Normal file
119
test.vue
Normal file
@ -0,0 +1,119 @@
|
||||
<template>
|
||||
|
||||
|
||||
<view class="personnel_list">
|
||||
<view class="cards">
|
||||
<view class="cards_head">
|
||||
<text style="font-size: 32rpx">最后更新:2020-25-2</text>
|
||||
<text>更新档案</text>
|
||||
<text>查看档案</text>
|
||||
</view>
|
||||
<view class="cards_content">
|
||||
<view class="right">
|
||||
<view class="">
|
||||
<text>人员姓名 :</text>
|
||||
<text> { item.name }</text>
|
||||
</view>
|
||||
<view class="">
|
||||
<text>联系电话 :</text>
|
||||
<text>{ item.phone }</text>
|
||||
</view>
|
||||
<view class="">
|
||||
<text>所属片区 :</text>
|
||||
<text> 所属片区 </text>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="left">
|
||||
<view class="cir">
|
||||
<u--image
|
||||
class="u_avatar"
|
||||
:showLoading="true"
|
||||
:src="'../../static/img/public/man.png'"
|
||||
width="112.28rpx"
|
||||
height="112.28rpx"
|
||||
shape="circle"
|
||||
></u--image>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
|
||||
</template>
|
||||
|
||||
<style lang="scss">
|
||||
|
||||
.personnel_list {
|
||||
padding: 28rpx 0;
|
||||
margin-bottom: 130rpx;
|
||||
|
||||
.cards {
|
||||
margin: 0 auto;
|
||||
margin-bottom: 28rpx;
|
||||
width: 694rpx;
|
||||
background: #ffffff;
|
||||
border-radius: 30rpx;
|
||||
opacity: 1;
|
||||
overflow: hidden;
|
||||
box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.6);
|
||||
|
||||
.cards_head {
|
||||
padding: 28rpx;
|
||||
background-color: $theme-oa-color;
|
||||
color: white;
|
||||
height: 100rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.cards_content {
|
||||
padding: 28rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
|
||||
.left {
|
||||
text-align: center;
|
||||
// padding: 15rpx 25rpx;
|
||||
padding-top: 20rpx;
|
||||
|
||||
width: 160rpx;
|
||||
background-color: $theme-oa-color;
|
||||
color: white;
|
||||
border-radius: 40rpx;
|
||||
|
||||
.cir {
|
||||
width: 120rpx;
|
||||
height: 120rpx;
|
||||
background-color: #ffffff;
|
||||
margin-left: 25rpx;
|
||||
border-radius: 120rpx;
|
||||
position: relative;
|
||||
}
|
||||
}
|
||||
|
||||
.right {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
justify-content: space-between;
|
||||
|
||||
view {
|
||||
text:nth-child(2) {
|
||||
margin-left: 20rpx;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.u_avatar {
|
||||
position: absolute;
|
||||
top: 50%;
|
||||
left: 50%;
|
||||
|
||||
transform: translate(-50%, -50%);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
</style>
|
42
uni.scss
42
uni.scss
@ -15,7 +15,7 @@
|
||||
/* 颜色变量 */
|
||||
|
||||
@import '@/uni_modules/uview-ui/theme.scss';
|
||||
$theme-oa-color: #3175f9;
|
||||
$theme-oa-color: #0122c7;
|
||||
/* 行为相关颜色 */
|
||||
$uni-color-primary: #007aff;
|
||||
$uni-color-success: #4cd964;
|
||||
@ -23,32 +23,32 @@ $uni-color-warning: #f0ad4e;
|
||||
$uni-color-error: #dd524d;
|
||||
|
||||
/* 文字基本颜色 */
|
||||
$uni-text-color:#333;//基本色
|
||||
$uni-text-color-inverse:#fff;//反色
|
||||
$uni-text-color-grey:#999;//辅助灰色,如加载更多的提示信息
|
||||
$uni-text-color: #333; //基本色
|
||||
$uni-text-color-inverse: #fff; //反色
|
||||
$uni-text-color-grey: #999; //辅助灰色,如加载更多的提示信息
|
||||
$uni-text-color-placeholder: #808080;
|
||||
$uni-text-color-disable:#c0c0c0;
|
||||
$uni-text-color-disable: #c0c0c0;
|
||||
|
||||
/* 背景颜色 */
|
||||
$uni-bg-color:#ffffff;
|
||||
$uni-bg-color-grey:#f8f8f8;
|
||||
$uni-bg-color-hover:#f1f1f1;//点击状态颜色
|
||||
$uni-bg-color-mask:rgba(0, 0, 0, 0.4);//遮罩颜色
|
||||
$uni-bg-color: #ffffff;
|
||||
$uni-bg-color-grey: #f8f8f8;
|
||||
$uni-bg-color-hover: #f1f1f1; //点击状态颜色
|
||||
$uni-bg-color-mask: rgba(0, 0, 0, 0.4); //遮罩颜色
|
||||
|
||||
/* 边框颜色 */
|
||||
$uni-border-color:#c8c7cc;
|
||||
$uni-border-color: #c8c7cc;
|
||||
|
||||
/* 尺寸变量 */
|
||||
|
||||
/* 文字尺寸 */
|
||||
$uni-font-size-sm:12px;
|
||||
$uni-font-size-base:14px;
|
||||
$uni-font-size-lg:16;
|
||||
$uni-font-size-sm: 12px;
|
||||
$uni-font-size-base: 14px;
|
||||
$uni-font-size-lg: 16;
|
||||
|
||||
/* 图片尺寸 */
|
||||
$uni-img-size-sm:20px;
|
||||
$uni-img-size-base:26px;
|
||||
$uni-img-size-lg:40px;
|
||||
$uni-img-size-sm: 20px;
|
||||
$uni-img-size-base: 26px;
|
||||
$uni-img-size-lg: 40px;
|
||||
|
||||
/* Border Radius */
|
||||
$uni-border-radius-sm: 2px;
|
||||
@ -70,9 +70,9 @@ $uni-spacing-col-lg: 12px;
|
||||
$uni-opacity-disabled: 0.3; // 组件禁用态的透明度
|
||||
|
||||
/* 文章场景相关 */
|
||||
$uni-color-title: #2C405A; // 文章标题颜色
|
||||
$uni-font-size-title:20px;
|
||||
$uni-color-title: #2c405a; // 文章标题颜色
|
||||
$uni-font-size-title: 20px;
|
||||
$uni-color-subtitle: #555555; // 二级标题颜色
|
||||
$uni-font-size-subtitle:26px;
|
||||
$uni-color-paragraph: #3F536E; // 文章段落颜色
|
||||
$uni-font-size-paragraph:15px;
|
||||
$uni-font-size-subtitle: 26px;
|
||||
$uni-color-paragraph: #3f536e; // 文章段落颜色
|
||||
$uni-font-size-paragraph: 15px;
|
||||
|
Loading…
x
Reference in New Issue
Block a user