first commit

This commit is contained in:
annnj-company
2026-04-17 18:29:53 +08:00
parent e49fa5a215
commit 130c1026c4
5615 changed files with 1639145 additions and 0 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,196 @@
<template>
<view class="survey-index-container">
<uni-popup ref="popup" type="top" v-show="showPopMenu"><button @click="submitSurvey">提交</button><button>退回</button></uni-popup>
<view class="uni-padding-wrap uni-common-mt">
<uni-segmented-control :current="current" :values="items" :style-type="styleType"
:active-color="activeColor" @clickItem="onClickItem" />
</view>
<view class="content" style="height: 80vh; overflow: auto;">
<uni-card>
<view v-if="current === 0">
<appoint-survey-list></appoint-survey-list>
</view>
<view v-if="current === 1">
<wait-survey-list></wait-survey-list>
</view>
<view v-if="current === 2">
<finish-survey-list></finish-survey-list>
</view>
<view v-if="current === 3">
<back-survey-list></back-survey-list>
</view>
</uni-card>
</view>
</view>
</template>
<script>
import config from '@/config'
import { waitSurvey } from '../../api/survey/survey'
export default {
components: {},
data() {
return {
showPopMenu:false,
items: ['待派单', '跟进中','已完成','已退单'],
styles: [{
value: 'button',
text: '按钮',
checked: true
},
{
value: 'text',
text: '文字'
}
],
colors: ['#007aff', '#4cd964', '#dd524d'],
current: 1,
colorIndex: 0,
activeColor: '#007aff',
styleType: 'button',
currentItem:{},
list: []
}
},
mounted() {
},
created() {
this.route = this.$route.query
},
methods: {
onClickItem(e) {
if (this.current !== e.currentIndex) {
this.current = e.currentIndex
}
},
styleChange(e) {
if (this.styleType !== e.detail.value) {
this.styleType = e.detail.value
}
},
colorChange(e) {
if (this.styleType !== e.detail.value) {
this.activeColor = e.detail.value
}
}
}
}
</script>
<style lang="scss" scoped>
page {
background-color: #f8f8f8;
}
.eva-label {
margin-right: 20px;
width: 170rpx;
}
.uni-common-mt {
margin-top: 30px;
}
.uni-padding-wrap {
// width: 750rpx;
padding: 0px 30px;
}
.survey-detail-container {
margin-bottom: 100rpx;
padding: 20rpx;
}
.btnSurvey {
color: #ff6a00;
}
.line {
width: 100%;
height: 5rpx;
background-color: #E6E6E6;
}
.line2 {
width: 100%;
height: 20rpx;
background-color: #F5F5F5;
}
.desc {
width: 70%;
//background-color: #bb11ff;
}
.slot-box {
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items:center;
flex-wrap: wrap;
//width: 80%;
}
.tag-view {
margin-right: 10px;
margin-bottom: 10px;
}
.uni-list {
flex: 1;
}
.uni-list-item {
/* #ifndef APP-NVUE */
display: flex;
/* #endif */
flex: 1;
flex-direction: row;
background-color: #FFFFFF;
}
.uni-list-item__container {
padding: 12px 15px;
width: 100%;
flex: 1;
position: relative;
/* #ifndef APP-NVUE */
display: flex;
box-sizing: border-box;
/* #endif */
flex-direction: row;
justify-content: space-between;
align-items: center;
border-bottom-style: solid;
border-bottom-width: 1px;
border-bottom-color: #eee;
}
.uni-list-item__content-title {
font-size: 14px;
}
.uni-input {
height: 28px;
line-height: 28px;
font-size: 15px;
padding: 0px;
flex: 1;
width: 280rpx;
background-color: #FFFFFF;
text-align: center;
}
// .flex-item {
// width: 33.3%;
// height: 30rpx;
// text-align: center;
// line-height: 200rpx;
// }
</style>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,132 @@
<template>
<view class="survey-container">
<view>
<!-- 分享示例 -->
<uni-popup ref="surveyType" type="share" safeArea backgroundColor="#fff">
<button class="button" @click="navSurvey('house')"><text class="button-text">住宅查勘模板</text></button>
<button class="button" @click="navSurvey('shop')"><text class="button-text">商业查勘模板</text></button>
</uni-popup>
</view>
<view v-for="(item, findex) in list" :key="findex">
<uni-card @click="handleClick(item)">
<view class="uni-flex uni-row" style="-webkit-justify-content: space-between;justify-content: space-between;">
<view >{{item.order_no}}</view>
<view class="btnSurvey" @click="handleClick(item)">查勘待跟进</view>
</view>
<view class="line" ></view>
<view class="detail">
<view class="uni-flex uni-row">
<view style="width: 150rpx;">物业名称:</view>
<view style="-webkit-flex: 1;flex: 1;">{{item.property_full_name}}</view>
</view>
<view class="uni-flex uni-row">
<view style="width: 150rpx;">所在城市:</view>
<view style="-webkit-flex: 1;flex: 1;">{{item.city}}</view>
</view>
<view class="uni-flex uni-row">
<view style="width: 150rpx;">物业类型:</view>
<view style="-webkit-flex: 1;flex: 1;">{{item.type_str}}</view>
</view>
<view class="uni-flex uni-row">
<view style="width: 150rpx;">业务员:</view>
<view style="-webkit-flex: 1;flex: 1;">{{item.appraiser_name}}</view>
</view>
<view class="uni-flex uni-row">
<view style="width: 150rpx;">指派时间:</view>
<view style="-webkit-flex: 1;flex: 1;">{{item.assign_time}}</view>
</view>
</view>
<view class="line2" v-if="findex !== list.length - 1"></view>
</uni-card>
</view>
</view>
</template>
<script>
import { waitSurvey } from '../../api/survey/survey'
export default {
name:'WaitSurveyList'
data() {
return {
currentItem:{},
list: []
}
},
mounted() {
this.getWaitSurveyList();
},
methods: {
//查勘待跟进
getWaitSurveyList() {
waitSurvey().then(res => {
this.list = res.data.list
}).catch(() => {
console.log('waitSurvey Error')
})
},
handleClick(item) {
this.currentItem = item
this.$refs.surveyType.open()
//this.$tab.navigateTo(`/pages/survey/detail?order_no==${item.order_no}&id=${item.id}&survey_id=${item.survey_id}&survey_type=${item.survey_type}`)
},
navSurvey(surveyType) {
let item = this.currentItem
if(surveyType == 'house') {
this.$tab.navigateTo(`/pages/survey/houseDetail?order_no==${item.order_no}&id=${item.id}&survey_id=${item.survey_id}&survey_type=1`)
}else if (surveyType == 'shop') {
this.$tab.navigateTo(`/pages/survey/shopDetail?order_no==${item.order_no}&id=${item.id}&survey_id=${item.survey_id}&survey_type=2`)
}
}
}
}
</script>
<style lang="scss" scoped>
page {
background-color: #f8f8f8;
}
.survey-container {
margin-bottom: 100rpx;
padding: 20rpx;
}
.btnSurvey {
color: #ff6a00;
}
.line {
width: 100%;
height: 5rpx;
background-color: #E6E6E6;
}
.line2 {
width: 100%;
height: 20rpx;
background-color: #F5F5F5;
}
.text-title {
color: #303133;
font-size: 32rpx;
font-weight: bold;
margin-left: 10rpx;
.iconfont {
font-size: 16px;
margin-right: 10rpx;
}
}
.text-item {
font-size: 28rpx;
padding: 24rpx;
}
.flex-item {
width: 33.3%;
height: 30rpx;
text-align: center;
line-height: 200rpx;
}
</style>