+
liuyg
2022-02-25 09bfdb083f90acb29e4b9cf2aeb6201287418ade
+
10 files modified
1 files added
408 ■■■■ changed files
api/mock/home.js 3 ●●●● patch | view | raw | blame | history
pages.json 22 ●●●● patch | view | raw | blame | history
pages/grabOrders/grabOrdersMain/business.vue 284 ●●●●● patch | view | raw | blame | history
pages/grabOrders/grabOrdersZAFFPX/inPage/page0.vue 31 ●●●● patch | view | raw | blame | history
pages/grabOrders/grabOrdersZAFFPX/map.vue 25 ●●●●● patch | view | raw | blame | history
pages/grabOrders/grabOrdersZAFFPX/once.vue patch | view | raw | blame | history
pages/grabOrders/grabOrdersZAXC/map.vue 8 ●●●● patch | view | raw | blame | history
pages/grabOrders/grabOrdersZAYWXC/inPage/page0.vue 8 ●●●●● patch | view | raw | blame | history
pages/grabOrders/grabOrdersZAYWXC/map.vue 10 ●●●● patch | view | raw | blame | history
pages/home/home.vue 13 ●●●●● patch | view | raw | blame | history
store/websocket.js 4 ●●● patch | view | raw | blame | history
api/mock/home.js
@@ -130,7 +130,8 @@
                {
                    name: '我参与',
                    img: '/static/images/home/jusou.png',
                    url: '../business/business'
                    // url: '../business/business'
                    url: '../grabOrders/grabOrdersMain/business'
                },
                {
                    name: '积分商城',
pages.json
@@ -336,6 +336,16 @@
        //         "navigationBarTextStyle": "white"
        //     }
        // },
        {
            "path": "pages/grabOrders/grabOrdersMain/business",
            "name": "grabOrders",
            "style": {
                "navigationBarTitleText": "我参与",
                "navigationBarBackgroundColor": "#103289",
                "navigationBarTextStyle": "white",
                "navigationStyle": "custom"
            }
        },
        { //治安巡查
            "path": "pages/grabOrders/grabOrdersZAXC/grabOrders",
            "name": "grabOrdersZAXC",
@@ -349,7 +359,7 @@
            "path": "pages/grabOrders/grabOrdersZAXC/map",
            "name": "map",
            "style": {
                "navigationBarTitleText": "任务详情",
                "navigationBarTitleText": "巡查详情",
                "navigationBarBackgroundColor": "#103289",
                "navigationBarTextStyle": "white"
            }
@@ -367,7 +377,7 @@
            "path": "pages/grabOrders/grabOrdersZAXC/feedback",
            "name": "feedback",
            "style": {
                "navigationBarTitleText": "任务反馈",
                "navigationBarTitleText": "巡查反馈",
                "navigationBarBackgroundColor": "#103289",
                "navigationBarTextStyle": "white"
            }
@@ -385,7 +395,7 @@
            "path": "pages/grabOrders/grabOrdersZAYWXC/map",
            "name": "map",
            "style": {
                "navigationBarTitleText": "任务详情",
                "navigationBarTitleText": "宣传详情",
                "navigationBarBackgroundColor": "#103289",
                "navigationBarTextStyle": "white"
            }
@@ -403,7 +413,7 @@
            "path": "pages/grabOrders/grabOrdersZAYWXC/feedback",
            "name": "feedback",
            "style": {
                "navigationBarTitleText": "任务反馈",
                "navigationBarTitleText": "宣传反馈",
                "navigationBarBackgroundColor": "#103289",
                "navigationBarTextStyle": "white"
            }
@@ -421,7 +431,7 @@
            "path": "pages/grabOrders/grabOrdersZAFFPX/map",
            "name": "map",
            "style": {
                "navigationBarTitleText": "任务详情",
                "navigationBarTitleText": "培训详情",
                "navigationBarBackgroundColor": "#103289",
                "navigationBarTextStyle": "white"
            }
@@ -439,7 +449,7 @@
            "path": "pages/grabOrders/grabOrdersZAFFPX/feedback",
            "name": "feedback",
            "style": {
                "navigationBarTitleText": "任务反馈",
                "navigationBarTitleText": "培训反馈",
                "navigationBarBackgroundColor": "#103289",
                "navigationBarTextStyle": "white"
            }
pages/grabOrders/grabOrdersMain/business.vue
New file
@@ -0,0 +1,284 @@
<template>
    <view class="container">
        <view class="head">
            <u-navbar :is-fixed="false" :border-bottom="false" :is-back="true" back-icon-name="arrow-leftward"
                back-icon-color="#fff" back-icon-size="35" :background="{ background: '#103289' }" title="我参与"
                title-color="#fff"></u-navbar>
            <view class="head-bg"></view>
            <!-- 我的订阅 start -->
            <view class="card sub">
                <view class="title">常用工具</view>
                <view class="list">
                    <u-grid :col="4" :border="false">
                        <u-grid-item bg-color="transparent" v-for="(item, index) in dataOne" :key="index">
                            <navigator hover-class="none" class="nav-item" @click="goOnePage(item.url,index)">
                                <image :src="item.img" mode="widthFix" class="nav-item-img"></image>
                                <view class="nav-item-name">{{item.title}}</view>
                            </navigator>
                        </u-grid-item>
                    </u-grid>
                </view>
            </view>
            <!-- 我的订阅 end -->
            <view class="card wrap">
                <view class="title">保安管理</view>
                <view class="list">
                    <u-grid :col="4" :border="false">
                        <u-grid-item bg-color="transparent" v-for="(item, index) in dataTwo" :key="index">
                            <navigator hover-class="none" url="" class="nav-item" @click="goTwoPage(item.url,index)">
                                <image :src="item.img" mode="widthFix" class="nav-item-img"></image>
                                <view class="nav-item-name">{{item.title}}</view>
                            </navigator>
                        </u-grid-item>
                    </u-grid>
                </view>
            </view>
        </view>
        <u-toast ref="uToast" />
        <!-- 底部导航条 -->
        <!-- <u-tabbar :list="tabbar" :mid-button="false"></u-tabbar> -->
    </view>
</template>
<script>
    export default {
        data() {
            return {
                tabbar: this.$store.state.tabbar,
                dataOne: [{
                    title: '治安巡查',
                    img: '/static/workbench/task1.png',
                    url: ''
                }, {
                    title: '治安义务宣传',
                    img: '/static/workbench/task2.png',
                    url: '/pages/patrol/patrol'
                }, {
                    title: '治安防范培训',
                    img: '/static/workbench/task3.png',
                    url: '/pages/reported/reported'
                }, {
                    title: '保安管理',
                    img: '/static/workbench/task8.png',
                    url: ''
                }],
                dataTwo: [{
                    title: '电子证件',
                    img: '/static/workbench/task9.png',
                    url: ''
                },{
                    title: '模拟考试',
                    img: '/static/workbench/task5.png',
                    url: '/pages/voting/voteManage'
                }
                // ,{
                //     title:'模拟考试',
                //     img:'../../static/workbench/exam.png',
                //     url:'/pages/exam/startexam'
                // }
                ]
            };
        },
        onLoad() {
        },
        mounted() {
            if (this.$store.state.UserData.stype != "1") {
                this.$refs.uToast.show({
                    title: '功能暂未开放',
                    type: 'warning',
                });
            }
        },
        methods: {
            //页面跳转
            goOnePage(url, index) {
                if (this.$store.state.UserData.stype != "1") {
                    this.$refs.uToast.show({
                        title: '功能暂未开放',
                        type: 'warning',
                    });
                    return;
                } else if (index == "0" || index == "3" || index == "4") {
                    this.$refs.uToast.show({
                        title: '功能研发中',
                        type: 'warning',
                    });
                    return;
                } else if (index == 5) {
                    this.getUser();
                } else {
                    uni.navigateTo({
                        url: url
                    })
                }
            },
            //获取用户信息
            getUser() {
                var that = this;
                debugger
                uni.request({
                    url: that.$store.state.BaopiAPI + '/blade-user/detail',
                    method: 'GET',
                    data: {
                        cardid: that.$store.state.UserData.cardid,
                        isDeleted:0,
                        status : 1,
                    },
                    success: (res) => {
                        if(res.statusCode == "200"){
                            var urls="http://223.82.109.183:2080/securityInfo.html?securityNumber="+res.data.data.securitynumber;
                            uni.navigateTo({
                                url: '../voting/information?url=' + urls
                            });
                        }else{
                            this.$refs.uToast.show({
                                title: '暂无证件信息',
                                type: 'warning',
                            });
                        }
                    }
                });
            },
            goTwoPage(url, index) {
                if (this.$store.state.UserData.stype != "1") {
                    this.$refs.uToast.show({
                        title: '功能暂未开放',
                        type: 'warning',
                    });
                    return;
                } else if (index == "2") {
                    this.$refs.uToast.show({
                        title: '功能研发中',
                        type: 'warning',
                    });
                    return;
                } else {
                    uni.navigateTo({
                        url: url
                    })
                }
            },
        }
    };
</script>
<style lang="scss">
    .container {
        background-color: #f7f7f7;
        min-height: 100vh;
        overflow: hidden;
    }
    .head {
        position: relative;
        top: 0;
        left: 0;
        z-index: 1;
    }
    .head-bg {
        position: absolute;
        left: 0px;
        top: 0px;
        z-index: -1;
        width: 750rpx;
        height: 270rpx;
        background: #103289;
    }
    .card {
        margin: 30rpx;
        background: #ffffff;
        border-radius: 20rpx;
        margin-top: 36rpx;
    }
    .sub {
        .title {
            padding-top: 36rpx;
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 30rpx;
            font-family: Source Han Sans CN;
            font-weight: 500;
            color: #000000;
            &::before {
                content: '';
                display: block;
                width: 135rpx;
                height: 1rpx;
                background: #e4e7ed;
                margin: 0 17rpx;
            }
            &::after {
                content: '';
                display: block;
                width: 135rpx;
                height: 1rpx;
                background: #e4e7ed;
                margin: 0 17rpx;
            }
        }
    }
    .list {
        display: flex;
        flex-wrap: wrap;
        padding: 0 0 30rpx;
        .nav-item {
            width: 100%;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            align-items: center;
            font-size: 30rpx;
            font-family: Source Han Sans CN;
            font-weight: 400;
            color: #131313;
            line-height: 48rpx;
            &-img {
                width: 64rpx;
                height: 64rpx;
                margin-bottom: 20rpx;
            }
            &-name {
                font-size: 26rpx;
                font-family: PingFang SC;
                font-weight: 400;
                color: #585b61;
                opacity: 0.77;
            }
        }
    }
    .wrap {
        .title {
            padding: 36rpx 16rpx;
            display: flex;
            align-items: center;
            font-size: 32rpx;
            font-family: Source Han Sans CN;
            font-weight: 500;
            color: #000000;
            &::before {
                content: "";
                display: block;
                width: 5rpx;
                height: 36rpx;
                margin-right: 10rpx;
                background: #103289;
            }
        }
    }
</style>
pages/grabOrders/grabOrdersZAFFPX/inPage/page0.vue
@@ -9,24 +9,31 @@
                    <view class="o-l-m-up">
                        {{item.rname}}
                    </view>
                    <view class="o-l-m-center">
                        <u-icon name="order" color="#d0d0d0" size="28"></u-icon>
                        人数:{{item.num}}/ {{item.jnum}}
                    </view>
                    <!-- <view class="o-l-m-center">
                        <u-icon name="account" color="#d0d0d0" size="28"></u-icon>
                        培训讲师:<span>{{item.fname}}</span>
                    </view> -->
                    <view class="o-l-m-center">
                        <u-icon name="volume" color="#d0d0d0" size="28"></u-icon>
                        时间:{{item.time.slice(0,10)}}
                        培训开始时间:
                    </view>
                    <view class="o-l-m-center" style="padding-left: 13px;">
                        <!-- <u-icon name="volume" color="#d0d0d0" size="28"></u-icon> -->
                    <!--     时间: -->
                        {{item.time}}
                    </view>
                </view>
            </view>
            <view class="onve-right">
                <u-button :class="[item.type == 1?'':item.type == 0?'blues':'greens']" size="mini" :disabled="true"
                    v-if="item.iscation == 0" @click="getOrders(swiperCurrent,item)">
                    <span class="Cation notCation">队员</span>{{item.type == 1?"完成反馈":item.type == 0?"正在进行":"还未开始"}}
                    <!-- <span class="Cation notCation">队员</span> -->
                    {{item.type == 1?"完成反馈":item.type == 0?"正在进行":"还未开始"}}
                </u-button>
                <u-button :class="[item.type == 1?'':item.type == 0?'blues':'greens']" size="mini"
                    :disabled="item.type == 1" v-if="item.iscation == 1" @click="getOrders(swiperCurrent,item)">
                    <span class="Cation">队长</span>{{item.type == 1?"完成反馈":item.type == 0?"上传反馈":"开始任务"}}
                    <!-- <span class="Cation">队长</span> -->
                    {{item.type == 1?"完成反馈":item.type == 0?"上传反馈":"开始任务"}}
                </u-button>
                <view class="o-r-$">
                    积分:{{item.integral}}
@@ -140,6 +147,16 @@
            }
        }
        .o-l-m-center span {
            display: inline-block;
            padding: 0px 5px 1px;
            margin: 0 5px;
            background-color: #ECF5FF;
            border: 0.5px solid #e4f1ff;
            color: #429FFF;
            border-radius: 8px;
        }
        // .onceUp {
        //     width: 100%;
        //     height: 25%;
pages/grabOrders/grabOrdersZAFFPX/map.vue
@@ -20,7 +20,7 @@
            </view> -->
            <view class="once">
                <span class="once-left">
                    任务标题
                    培训标题
                </span>
                <span class="once-right">
                    {{ourData.rname}}
@@ -28,7 +28,7 @@
            </view>
            <view class="once">
                <span class="once-left">
                    任务内容
                    培训内容
                </span>
                <span class="once-right">
                    {{ourData.content}}
@@ -36,7 +36,7 @@
            </view>
            <view class="once">
                <span class="once-left">
                    发布者
                    培训讲师
                </span>
                <span class="once-right">
                    <span>{{ourData.fname}}</span>
@@ -44,7 +44,7 @@
            </view>
            <view class="once">
                <span class="once-left">
                    任务地区
                    培训地点
                </span>
                <span class="once-right">
                    {{ourData.province}}&nbsp;-&nbsp;{{ourData.city}}&nbsp;-&nbsp;{{ourData.district}}
@@ -60,10 +60,10 @@
            </view>
            <view class="once">
                <span class="once-left">
                    人数
                    参培队伍
                </span>
                <span class="once-right">
                    {{ourData.num}}&nbsp;/&nbsp;{{ourData.jnum}}
                    保安员队伍
                </span>
            </view>
            <!-- <view class="once">
@@ -85,13 +85,16 @@
            <view class="once-c" v-if="ourData.buttype == 0">
                <u-button :type="ourData.butCT == 'beginUp'?'primary':ourData.butCT == 'begin'?'success':'info'"
                    @click="openAPP(ourData.buttype)" :disabled="ourData.butCT== 'over' || ourData.iscation == '0'">
                    {{ourData.butCT == 'beginUp'?(ourData.iscation == '0'?'正在进行':'上传反馈'):ourData.butCT == 'begin'?(ourData.iscation == '0'?'还未开始':'开始任务'):'任务完成'}}
                    {{ourData.butCT == 'beginUp'?(ourData.iscation == '0'?'正在培训':'上传反馈'):ourData.butCT == 'begin'?(ourData.iscation == '0'?'还未开始':'开始培训'):'培训结束'}}
                </u-button>
            </view>
            <view class="once-c" v-if="ourData.buttype == 1">
                <u-button :type="ourData.num==ourData.jnum?'info':'success'" @click="openAPP(ourData.buttype)"
                <!-- <u-button :type="ourData.num==ourData.jnum?'info':'success'" @click="openAPP(ourData.buttype)"
                    :disabled="(ourData.num==ourData.jnum)&& ourData.buttype==1 ||ourData.type == 1">
                    {{ourData.num==ourData.jnum?"人数已满":'我参与'}}
                </u-button> -->
                <u-button type="success" @click="openAPP(ourData.buttype)">
                    我参与
                </u-button>
            </view>
@@ -698,7 +701,7 @@
                    buttype: 0,
                    captain: "我",
                    city: "南昌市",
                    content: "测试",
                    content: "测试培训内容",
                    district: "西湖区",
                    id: 37,
                    integral: "222",
@@ -710,13 +713,13 @@
                    province: "江西省",
                    publisher: "管理",
                    raddress: null,
                    rname: "测试1",
                    rname: "测试培训",
                    rtype: "0",
                    serid: "1123598821738675201,",
                    team: "你,他,它",
                    time: "2022-02-18 14:15:52",
                    type: "2",
                    fname: "管理者",
                    fname: "培训老师张",
                    myid: 111,
                    myName: 222,
                    url: "http://223.82.109.183:2081/zhba/upload/20220218/67f0c8bf3e7b5024c64133691f265072.ico",
pages/grabOrders/grabOrdersZAFFPX/once.vue
Binary files differ
pages/grabOrders/grabOrdersZAXC/map.vue
@@ -16,11 +16,11 @@
            @touchmove="touchmove">
            <view :class="['activeTip',activeTip?'isOpens':'notOpens'] " :style="{height:'30px'}"></view>
            <view class="once-b">
                任务详情
                巡查详情
            </view>
            <view class="once">
                <span class="once-left">
                    任务标题
                    巡查标题
                </span>
                <span class="once-right">
                    {{ourData.rname}}
@@ -28,7 +28,7 @@
            </view>
            <view class="once">
                <span class="once-left">
                    任务内容
                    巡查内容
                </span>
                <span class="once-right">
                    {{ourData.content}}
@@ -44,7 +44,7 @@
            </view>
            <view class="once">
                <span class="once-left">
                    任务地区
                    集合点
                </span>
                <span class="once-right">
                    {{ourData.province}}&nbsp;-&nbsp;{{ourData.city}}&nbsp;-&nbsp;{{ourData.district}}
pages/grabOrders/grabOrdersZAYWXC/inPage/page0.vue
@@ -22,11 +22,13 @@
            <view class="onve-right">
                <u-button :class="[item.type == 1?'':item.type == 0?'blues':'greens']" size="mini" :disabled="true"
                    v-if="item.iscation == 0" @click="getOrders(swiperCurrent,item)">
                    <span class="Cation notCation">队员</span>{{item.type == 1?"完成反馈":item.type == 0?"正在进行":"还未开始"}}
                    <!-- <span class="Cation notCation">队员</span> -->
                    {{item.type == 1?"完成反馈":item.type == 0?"正在进行":"还未开始"}}
                </u-button>
                <u-button :class="[item.type == 1?'':item.type == 0?'blues':'greens']" size="mini"
                    :disabled="item.type == 1" v-if="item.iscation == 1" @click="getOrders(swiperCurrent,item)">
                    <span class="Cation">队长</span>{{item.type == 1?"完成反馈":item.type == 0?"上传反馈":"开始任务"}}
                    <!-- <span class="Cation orange">队长</span> -->
                    {{item.type == 1?"完成反馈":item.type == 0?"上传反馈":"开始任务"}}
                </u-button>
                <view class="o-r-$">
                    积分:{{item.integral}}
@@ -199,6 +201,6 @@
    }
    .notCation {
        color: #18a655;
        color: #18a655 !important;
    }
</style>
pages/grabOrders/grabOrdersZAYWXC/map.vue
@@ -16,11 +16,11 @@
            @touchmove="touchmove">
            <view :class="['activeTip',activeTip?'isOpens':'notOpens'] " :style="{height:'30px'}"></view>
            <view class="once-b">
                任务详情
                宣传详情
            </view>
            <view class="once">
                <span class="once-left">
                    任务标题
                    宣传标题
                </span>
                <span class="once-right">
                    {{ourData.rname}}
@@ -28,7 +28,7 @@
            </view>
            <view class="once">
                <span class="once-left">
                    任务内容
                    宣传内容
                </span>
                <span class="once-right">
                    {{ourData.content}}
@@ -44,7 +44,7 @@
            </view>
            <view class="once">
                <span class="once-left">
                    任务地区
                    集合点
                </span>
                <span class="once-right">
                    {{ourData.province}}&nbsp;-&nbsp;{{ourData.city}}&nbsp;-&nbsp;{{ourData.district}}
@@ -85,7 +85,7 @@
            <view class="once-c" v-if="ourData.buttype == 0">
                <u-button :type="ourData.butCT == 'beginUp'?'primary':ourData.butCT == 'begin'?'success':'info'"
                    @click="openAPP(ourData.buttype)" :disabled="ourData.butCT== 'over' || ourData.iscation == '0'">
                    {{ourData.butCT == 'beginUp'?(ourData.iscation == '0'?'正在进行':'上传反馈'):ourData.butCT == 'begin'?(ourData.iscation == '0'?'还未开始':'开始任务'):'任务完成'}}
                    {{ourData.butCT == 'beginUp'?(ourData.iscation == '0'?'正在进行':'上传反馈'):ourData.butCT == 'begin'?(ourData.iscation == '0'?'还未开始':'开始任务'):'宣传任务完成'}}
                </u-button>
            </view>
            <view class="once-c" v-if="ourData.buttype == 1">
pages/home/home.vue
@@ -82,7 +82,8 @@
            </view>
        </view> -->
        <view class="notice-class">
            <u-notice-bar :speed="160" :duration="2000" :isCircular="true" :more-icon="true" mode="horizontal" type="none" :list="gdlist"></u-notice-bar>
            <u-notice-bar :speed="160" :duration="2000" :isCircular="true" :more-icon="true" mode="horizontal"
                type="none" :list="gdlist"></u-notice-bar>
        </view>
        <!-- 公告 end -->
@@ -225,7 +226,7 @@
            //页面跳转
            goBusinessPage(url,index){
                if(index==0){
                    //我要看在tabbar
                    //我要看在tabbar 我参与
                    uni.switchTab({
                        url:url
                    })
@@ -235,12 +236,7 @@
                        type: 'warning',
                    })
                    return;
                }else if (index==4){
                    uni.navigateTo({
                        url:'../grabOrders/grabOrdersZAXC/grabOrders?detailData=' + (JSON.stringify(this.cout))
                    })
                }
                else{
                } else {
                    uni.navigateTo({
                        url:url
                    })
@@ -450,6 +446,7 @@
        .notice-info {
            flex: 1;
            .notice-cell:first-of-type {
                margin-bottom: 15rpx;
            }
store/websocket.js
@@ -83,6 +83,7 @@
                let curRoute = routes[routes.length - 1].route; //获取当前页面的路由
                // console.log(curRoute)
                // return
                // let
                uni.request({
                    url: $store.state.piAPI + "taskqd/selectLi",
                    method: "POST",
@@ -106,7 +107,8 @@
                                });
                                console.log(val)
                                if (types == "android", curRoute != "pages/grabOrders/map") {
                                // if (types == "android", curRoute != "pages/grabOrders/map") {
                                if (curRoute != "pages/grabOrders/map") {
                                    uni.navigateTo({
                                        url: "/pages/grabOrders/map?data=" + JSON.stringify(
                                            val),