Browse Source

Task 零工 游客

master
zhaodengke 7 months ago
parent
commit
03a0079f79
5 changed files with 389 additions and 7 deletions
  1. +2
    -1
      src/permission.js
  2. +10
    -1
      src/router/index.js
  3. +4
    -1
      src/views/sunVillage_info/list_tourists.vue
  4. +369
    -0
      src/views/sunVillage_info/list_tourists_ranking_lite.vue
  5. +4
    -4
      src/views/sunVillage_info/list_tourists_registration_detail_visitor.vue

+ 2
- 1
src/permission.js View File

@@ -95,7 +95,8 @@ const whiteList = [
'/sunVillage_info/list_finance_detail', //详情页
'/sunVillage_info/list_photo_detail', //详情页
'/sunVillage_info/list_finance_ranking', //详情页
'/sunVillage_info/list_tourists_ranking', //详情页
'/sunVillage_info/list_tourists_ranking', //零工排行榜
'/sunVillage_info/list_tourists_ranking_lite', //零工排行榜
'/sunVillage_info/list_tourists_registration_detail_visitor', //零工详情页
'/sunVillage_info/login_code', //详情页
'/sunVillage_info/index_code_rights', //详情页


+ 10
- 1
src/router/index.js View File

@@ -3570,7 +3570,7 @@ export const constantRoutes = [
},
component: (resolve) => require(['@/views/sunVillage_info/list_issues_edit'], resolve)
},
{ ////阳光村务(新)-- 合同信息
{ ////阳光村务(新)-- 零工公开榜
path: '/sunVillage_info/list_tourists_ranking',
name: 'sunVillageInfoListTouristsRanking',
meta: {
@@ -3579,6 +3579,15 @@ export const constantRoutes = [
},
component: (resolve) => require(['@/views/sunVillage_info/list_tourists_ranking'], resolve)
},
{ ////阳光村务(新)-- 零工公开榜(精简)
path: '/sunVillage_info/list_tourists_ranking_lite',
name: 'sunVillageInfoListTouristsRankingLite',
meta: {
title: '零工公式公布榜',
hidden: true,
},
component: (resolve) => require(['@/views/sunVillage_info/list_tourists_ranking_lite'], resolve)
},
{ ////阳光村务(新)-- 零工登记
path: '/sunVillage_info/list_tourists_registration',
name: 'sunVillageInfoListTouristsRegistration',


+ 4
- 1
src/views/sunVillage_info/list_tourists.vue View File

@@ -102,11 +102,13 @@
showBtn:true,
nowYear:new Date().getFullYear(),
yearList:[],
visitor: false,
};
},
created() {
this.queryParams.bookId = Cookies.get('bookId');
this.queryParams.deptId = Cookies.get('deptId');
this.visitor = this.$route.query.type == 'code';
if (this.$route.query.type == 'code'){
this.showBtn = false;
}
@@ -187,7 +189,8 @@
this.$router.push({path:'/sunVillage_info/list_tourists_edit',query: {id:id,type:'finance'}})
},
goRanking(id,time){
this.$router.push({path:'/sunVillage_info/list_tourists_ranking',query: {id:id,time:time}})
const url = this.visitor ? '/sunVillage_info/list_tourists_ranking_lite' : '/sunVillage_info/list_tourists_ranking';
this.$router.push({path:url,query: {id:id,time:time}})
},
goRemove(id){
this.$dialog.alert({


+ 369
- 0
src/views/sunVillage_info/list_tourists_ranking_lite.vue View File

@@ -0,0 +1,369 @@
<template>
<div class="home_wrapper">
<div
class="header_main"
:style="`background-image:url(${require('@/assets/images/sunVillage_info/list_head.png')})`"
>
零工公开榜
<div class="return_btn" @click="onClickLeft"></div>
</div>

<p class="top_head_title">{{deptName}}{{yearMonth[0]}}年{{yearMonth[1]}}月份</p>

<div class="list_main">
<van-pull-refresh v-model="refreshing" @refresh="getList()">
<van-list
v-model="loading"
:finished="finished"
finished-text="没有更多了"
@load="getList('+1')"
>
<!----1-->
<div class="item" v-for="(item,index) in applicationList" :key="index" >
<div class="info" @click="viewItem(item.id)">
<div class="title">
<p class="news_title">{{item.workReason}}</p>
</div>
<div class="time">
<div class="icon_time"></div>
{{item.jobTime}}
</div>
</div>
<div class="operation">
<div class="opera_btn view" @click="viewItem(item.id)">
<i class="icon "></i>
</div>
</div>
</div>
</van-list>
</van-pull-refresh>
</div>
<!-- <div class="bottom_tips">-->
<!-- <span class="xs">已经到底啦</span>-->
<!-- </div>-->
</div>
</template>

<script>
import {listOddjob} from "@/api/sunVillage_info/fixedAssets";
import Cookies from "js-cookie";
import request from '@/utils/request'
export default {
name: "sunVillageInfoListTouristsRankingLite",
data() {
return {
refreshing: false,
applicationList:[],
loading: false,
finished: false,
total: 0,
queryParams:{
pageNum:1,
pageSize:10,
orderByColumn:'jobNy',
isAsc:'desc',
year:'',
},
yearMonth:[],
deptName:''
};
},
created() {
this.queryParams.bookId = Cookies.get('bookId');
this.queryParams.deptId = Cookies.get('deptId');
this.deptName = Cookies.get('deptName');
this.queryParams.yearMonth = this.$route.query.time;
this.yearMonth = this.$route.query.time.split('-')
this.getList();
},
methods: {
getList(target){
var _this = this;
setTimeout(() => {
let type = typeof (target);
console.log(type, target);
if(target && this.finished)
return;
if (target === 0) {
this.refreshing = true;
this.finished = true;
this.total = 0;
this.queryParams.pageNum = 1;
this.applicationList = [];
}
else if (type === 'number')
this.queryParams.pageNum = target;
else if (type === 'string') {
this.queryParams.pageNum = eval(this.queryParams.pageNum + target)
}
else
{
this.refreshing = true;
this.finished = true;
this.total = 0;
this.queryParams.pageNum = 1;
this.applicationList = []
}
//console.log(_this.queryParams)
listOddjob(_this.queryParams).then(response => {
if (response.rows.length === 0) {
this.finished = true;
return;
}
for (var i = 0; i < response.rows.length; i++) {
this.applicationList.push(response.rows[i]);
}
this.total += response.rows.length;
this.finished = this.total >= response.total;
}).finally(() => {
this.loading = false;
this.refreshing = false;
});
}, 1000);
},
viewItem(id){
this.$router.push({
path: "/sunVillage_info/list_tourists_registration_detail_visitor",
query: {
id: id,
intent: 'view',
},
}).catch(() => {});
},
},
}
</script>

<style scoped lang="scss">
.home_wrapper{
background: #e9e9e9;
min-height: 100vh;
width: 100vw;
.header_main{
height: 116px;
background: url('../../assets/images/sunVillage_info/list_head.png') no-repeat;
background-size: 100% 100%;
position: fixed;
top: 0;
left: 0;
width: 100%;
font-size: 36px;
line-height: 116px;
text-align: center;
color: #fff;
position: relative;
.return_btn{
width: 24px;
height: 43.2px;
background: url('../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat;
background-size: 20px 36px;
position: absolute;
left: 38px;
top: 36px;
}
.add_btn{
width: 56.4px;
height: 40.8px;
background: url('../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat;
background-size: 47px 34px;
position: absolute;
right: 38px;
top: 36px;
}
}
.record_main{
padding:30px 22px;
.record_det{
height: 38px;
line-height: 38px;
display: flex;
justify-content:space-between;
.year_l{
font-size: 30px;
display: flex;
align-items: center;
color: #858585;

.unit{
padding-left: 5px;
}
.icon{
width: 23px;
height: 12px;
display: block;
background: url('../../assets/images/sunVillage_info/list_icon_1.png') no-repeat;
background-size: 100% 100%;
margin-bottom: 4px;
margin-right: 8px;
&.zk {
transform: rotate(0deg)
}
&.ss{
transform: rotate(180deg)
}

}
}
.total_r{
font-size: 26px;
letter-spacing: 2px;
}
}
.record_list{
display: flex;
flex-flow: wrap;
margin-top: 12PX;
.flex_block{
font-size: 30px;
color: #878787;
padding-right: 30px;
&.current{
color: #4199fe;
font-weight: bold;
}
}
}
}
.list_main{
padding:0 22px;
.item{
height: 140px;
border-radius: 30px;
background: #fff;
box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1);
padding:25px 32px;
display: flex;
margin-bottom: 20px;
justify-content: space-between;
.info{
.title{
display: flex;
font-size: 32px;
align-items: center;
height: 58px;
.icon_box{
width: 34px;
display: block;
height: 30px;
background: url('../../assets/images/sunVillage_info/list_icon_2.png') no-repeat;
background-size: 100% 100%;
margin-right: 10px;
flex-shrink: 0;
}
.news_title{
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
word-break: break-all;
overflow: hidden;
}
.tips_mark{
width: 34px;
height: 34px;
background: #fa0c0c;
border-radius: 8px;
font-size: 24px;
color: #fff;
text-align: center;
line-height: 34px;
margin-left: 10px;
flex-shrink: 0;
}
}
.time{
font-size: 24px;
color: #858585;
display: flex;
align-items: center;
height: 30px;
margin-top: 6px;
.icon_time{
width: 25px;
height: 25px;
background: url('../../assets/images/sunVillage_info/list_icon_4.png') no-repeat;
background-size: 100% 100%;
margin-right: 10px;
}
}
}
.operation{
display: flex;
align-items: center;
justify-content: right;
text-align: right;
.opera_btn{
width: 52px;
height: 52px;
border-radius: 50%;
display: flex;
align-items: center;
justify-content:center;

&.delete{
background:#df0707;
margin-left: 10PX;
.icon{
width: 22px;
height: 29px;
background: url('../../assets/images/sunVillage_info/list_icon_7.png') no-repeat;
background-size: 100% 100%;
display: block;
}
}
&.edit{
background: #79cf13;
margin-left: 10PX;
.icon {
width: 26px;
height: 25px;
background: url('../../assets/images/sunVillage_info/list_icon_6.png') no-repeat;
background-size: 100% 100%;
display: block;
}
}
&.view{
background: #3494ff;
margin-left: 10PX;
.icon {
width: 29px;
height: 21px;
background: url('../../assets/images/sunVillage_info/list_icon_3.png') no-repeat;
background-size: 100% 100%;
display: block;
}
}
&.list{
background: #79cf13;
margin-left: 10PX;
.icon {
width: 29px;
height: 21px;
background: url('../../assets/images/sunVillage_info/list_icon_10.png') no-repeat;
background-size: 100% 100%;
display: block;
}
}
}
}
}

}
.bottom_tips{
font-size: 24px;
color: #a7a6a6;
text-align: center;
margin-top: 32px;
background: url('../../assets/images/sunVillage_info/list_icon_8.png') center center no-repeat;
background-size: 260px 2px;
.xs{
padding:0 8px;
background: #e9e9e9;
}
}
}
.top_head_title{
font-size: 16PX;
text-align: center;
padding: 15PX 0;
}
</style>

+ 4
- 4
src/views/sunVillage_info/list_tourists_registration_detail_visitor.vue View File

@@ -8,12 +8,12 @@
<div class="list_main">

<van-field v-model="form.jobTime" label="出工日期" input-align="right" :border="false" />
<van-field v-model="form.workerName" label="出工姓名" input-align="right" :border="false" />
<!-- <van-field v-model="form.workerName" label="出工姓名" input-align="right" :border="false" />-->
<van-field v-model="form.workReason" label="出工事由" input-align="right" :border="false" />
<van-field v-model="form.workerNote" label="记工员" input-align="right" :border="false" />
<!-- <van-field v-model="form.workerNote" label="记工员" input-align="right" :border="false" />
<van-field v-model="form.workNum" label="出工数" input-align="right" :border="false" type="number" />
<van-field v-model="form.perMoney" label="工日值" input-align="right" :border="false" type="number" />
<van-field v-model="form.totalMoney" label="金额(元)" input-align="right" :border="false" type="number" />
<van-field v-model="form.totalMoney" label="金额(元)" input-align="right" :border="false" type="number" />-->

<van-field
name="openPic"
@@ -42,7 +42,7 @@
</van-field>
<CommonUpload name="openPic3" v-model="form.openPic3" multiple :deletable="false" :show-upload="false"/>

<van-field v-model="form.remark" label="备注" input-align="left" :border="false" />
<!-- <van-field v-model="form.remark" label="备注" input-align="left" :border="false" />-->

</div>



Loading…
Cancel
Save