changeVip.vue 3.74 KB
<template>
	<view>
		<view class="searchbar">
			<uni-easyinput placeholderStyle="font-size:30rpx" :input-border="false" prefixIcon="search"
				v-model="queryParams.code" placeholder="搜索变更单号" @blur="getList" @clear="getList">
			</uni-easyinput>
			<view class="invertedbtn-red" @click="goAdd">+ 新建变更</view>
		</view>
		
		<view class="appList">
			<view class="appItem" v-for="(item,index) in list" :key="index">
				<view class="status" @click="goDetail(item)">
					<view>
						<text v-if="item.status == 0" class="text-warning">待提交</text>
						<text v-if="item.status == 1" class="text-primary">审核中</text>
						<text v-if="item.status == 2" class="text-success">审核通过</text>
						<text v-if="item.status == 3" class="text-danger">审核拒绝</text>
						<text v-if="item.status == 4" class="text-warning">已撤回</text>
					</view>
				</view>
		
				<view class="name mt0" @click="goDetail(item)">
					<text class="text-primary">{{item.code}}</text>-{{item.shenMemName}}
				</view>
				<view class="flexbox" @click="goDetail(item)">
					<view>
						变更人数
						<view>
							<text class="text-danger">{{item.count}}</text>
						</view>
						
					</view>
		
					<view class="w50">
						提交时间
						<view>{{item.commitTime||'--'}}</view>
					</view>
				</view>
				<view class="func" v-if="(item.status==0||item.status==3||item.status==4)">
					<button @click="handleUpdate(item)">编辑</button>
					<button @click="commitFN(item)">提交审核</button>
					<button @click="handleDelete(item)">删除</button>
				</view>

			</view>
		</view>
		
		
		
		<view class="nodata" v-if="list.length==0">
			<image mode="aspectFit" src="/static/nodata.png"></image>
			<text>暂无数据</text>
		</view>
	</view>
</template>

<script setup>
	import * as api from '@/common/api.js'
	import config from '@/config.js'
	import {
		ref
	} from 'vue'
	import {
		onLoad,
		onShow
	} from '@dcloudio/uni-app'
	const app = getApp();
	const queryParams = ref({
		code:''
	})
	const list = ref([])
	const total = ref(0)
	onShow(()=>{
		getList()
	})
	function goAdd(){
		let path = `/personalVip/addChange`
		uni.navigateTo({
			url: path
		});
	}
	function getList(){
		uni.showLoading({
			title:'加载中'
		})
		api.getInfoModRange(queryParams.value).then(res=>{
			list.value = res.rows
			total.value = res.total
			uni.hideLoading()
		})
	}
	function goDetail(item){
		let path = `/personalVip/changeVipDetail?rangeId=${item.id}`
		uni.navigateTo({
			url: path
		});
	}
	function handleUpdate(item){
		// 编辑
		let path = `/personalVip/addChange?rangeId=${item.id}`
		uni.navigateTo({
			url: path
		});
	}
	function commitFN(row){
		uni.showModal({
			title: '提示',
			content: `确定提交吗`,
			success: function(res) {
				if (res.confirm) {
					api.commitPersonalChange(row.id).then(Response=>{
						uni.showToast({
							icon:"none",
							title:'提交成功!'
						})
						getList()
					})
				}
			}
		})
	}
	function handleDelete(row){
		uni.showModal({
			title: '提示',
			content: `确定删除吗`,
			success: function(res) {
				if (res.confirm) {
					api.delPersonalChange([row.id]).then(Response=>{
						uni.showToast({
							icon:"none",
							title:'删除成功!'
						})
						getList()
					})
				}
			}
		})
	}

</script>

<style lang='scss' scoped>
	.searchbar {
		display: flex;
		align-items: center;
		padding: 25rpx;
		box-sizing: border-box;

		:deep(.uni-easyinput .uni-easyinput__content) {
			border-radius: 35rpx;
			border: none;
			height: 70rpx;
		}

		:deep(.uni-easyinput__content-input) {
			font-size: 26rpx;
		}

		.invertedbtn-red {
			border-radius: 50px;
			background-color: #fff;

			font-size: 30rpx;
			padding: 10rpx 20rpx;
		}
	}

</style>