浏览代码

客户页面

wangxy 3 天之前
父节点
当前提交
3550bf5897

+ 17 - 0
api/sanfang.js

@@ -25,3 +25,20 @@ export function getKehuList(data = {}) {
 }
 
 
+export function getMobanList(data = {}) {
+  return request({
+    url: '/app/guanliyuan/sanfang/moban/list',
+    headers: {
+      isToken: true
+    },
+    method: 'post',
+    data,
+    timeout: 20000
+  })
+}
+
+
+
+
+
+

+ 66 - 3
pages/admin/Hetong/addSanfangHetong.vue

@@ -3,8 +3,35 @@
 		<view @click="goUpPage" class="nav-bar-icon"></view>
 		<text class="nav-bar-title">新增三方合同</text>
 	</view>
-	<button @click="handleSelct('kh')">选择客户</button>
-	<button @click="handleSelct('jz')">选择家政</button>
+
+	<!-- 合同模板 -->
+	<view class="form-label-select">
+		<view class="phone-form-label"><text class="form-label-require"></text>合同模板</view>
+		<picker :range="data.mobanList" mode='selector' :value="data.mobanIndex" range-key="name"
+			@change="onMobanSelect" class="select-picker-box">
+			<template v-if="data.mobanIndex==null">请点击选择</template>
+			<view class="form-radio-select" v-else>
+				<view>{{ data.mobanList[data.mobanIndex].name  }}</view>
+			</view>
+		</picker>
+	</view>
+
+	<!-- 客户信息 -->
+	<kehuCardVue :info="data.kehu"></kehuCardVue>
+	<!-- 家政人员 -->
+	<jiazhengCardVue :info="data.jiazheng"></jiazhengCardVue>
+	<!-- 合同信息 -->
+	<hetongCardVue :info="data.hetong"></hetongCardVue>
+	<!-- 其他约定 -->
+	<qiTaYueDingVue :info="data.qita"></qiTaYueDingVue>
+	<!-- 家政签名 -->
+	<qianMingVue :info="data.qianming"></qianMingVue>
+
+
+
+
+	<!-- <button @click="handleSelct('kh')">选择客户</button>
+	<button @click="handleSelct('jz')">选择家政</button> -->
 	<!-- 客户 -->
 	<selectKh ref="khRef"></selectKh>
 	<!-- 家政 -->
@@ -23,6 +50,27 @@
 	import * as httpApi from "@/api/sanfang.js"
 	import selectKh from "./components/selectKh.vue"
 	import selectJz from "./components/selectJz.vue"
+	import hetongCardVue from "./components/hetongCard.vue";
+	import jiazhengCardVue from "./components/jiazhengCard.vue";
+	import kehuCardVue from "./components/kehuCard.vue";
+	import qianMingVue from "./components/qianMing.vue";
+	import qiTaYueDingVue from "./components/qiTaYueDing.vue";
+
+
+	const data = reactive({
+		mobanList: [],
+		mobanIndex: null,
+		kehu: {
+			name: '',
+			idCard: '',
+			tel: '',
+			dizhi: ''
+		},
+		jiazheng: {},
+		hetong: {},
+		qita: '',
+		qianming: ''
+	})
 
 	const khRef = ref(null)
 	const jzRef = ref(null)
@@ -34,10 +82,25 @@
 			jzRef.value.handleShow();
 		}
 	}
-	
+
 	function goUpPage() {
 		uni.navigateBack()
 	}
+
+	function getMoban() {
+		httpApi.getMobanList().then(res => {
+			data.mobanList = res.data;
+		})
+	}
+
+	function onMobanSelect(da) {
+		data.mobanIndex = da.detail.value
+	}
+
+
+	onLoad(() => {
+		getMoban();
+	})
 </script>
 
 <style>

+ 8 - 0
pages/admin/Hetong/components/bingFuWuFei.vue

@@ -0,0 +1,8 @@
+<template>
+</template>
+
+<script>
+</script>
+
+<style>
+</style>

+ 8 - 0
pages/admin/Hetong/components/fuWuBaoChou.vue

@@ -0,0 +1,8 @@
+<template>
+</template>
+
+<script>
+</script>
+
+<style>
+</style>

+ 8 - 0
pages/admin/Hetong/components/fuWuNeiRong.vue

@@ -0,0 +1,8 @@
+<template>
+</template>
+
+<script>
+</script>
+
+<style>
+</style>

+ 8 - 0
pages/admin/Hetong/components/fuWuShiJian.vue

@@ -0,0 +1,8 @@
+<template>
+</template>
+
+<script>
+</script>
+
+<style>
+</style>

+ 8 - 0
pages/admin/Hetong/components/hetongCard.vue

@@ -0,0 +1,8 @@
+<template>
+</template>
+
+<script>
+</script>
+
+<style>
+</style>

+ 8 - 0
pages/admin/Hetong/components/jiazhengCard.vue

@@ -0,0 +1,8 @@
+<template>
+</template>
+
+<script>
+</script>
+
+<style>
+</style>

+ 48 - 0
pages/admin/Hetong/components/kehuCard.vue

@@ -0,0 +1,48 @@
+<template>
+	<uni-collapse>
+		<uni-collapse-item title="客户信息" :open="true">
+			<view>客户选择 <icon></icon></view>
+			<view>
+				<text>姓名:</text>
+				<text>{{info.realName}}</text>
+			</view>
+			<view>
+				<text>身份证:</text>
+				<text>{{info.idCard}}</text>
+			</view>
+			<view>
+				<view>电话:</view>
+				<view>{{info.tel}}</view>
+			</view>
+			<view>
+				<view>具体地址:</view>
+				<view>{{info.dizhi}}</view>
+			</view>
+		</uni-collapse-item>
+	</uni-collapse>
+</template>
+
+<script setup>
+	import {
+		ref,
+		reactive,
+		nextTick
+	} from "vue";
+	const props = defineProps({
+		info: {
+			type: Object
+		}
+	})
+	
+	
+	
+	
+	
+	
+	
+	
+	
+</script>
+
+<style>
+</style>

+ 8 - 0
pages/admin/Hetong/components/qiTaYueDing.vue

@@ -0,0 +1,8 @@
+<template>
+</template>
+
+<script>
+</script>
+
+<style>
+</style>

+ 8 - 0
pages/admin/Hetong/components/qianMing.vue

@@ -0,0 +1,8 @@
+<template>
+</template>
+
+<script>
+</script>
+
+<style>
+</style>

+ 1 - 1
pages/admin/Hetong/components/selectKh.vue

@@ -31,7 +31,7 @@
 										<view>{{item.idCard}}</view>
 										<view>{{item.tel}}</view>
 										<view>
-											<radio :value="item.value" :checked="index === current" />
+											<radio :value="item.id" :checked="item.id === data.activeData" />
 										</view>
 									</view>
 								</template>