123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837 |
- <template>
- <div class="addVisit">
- <m-header v-if="statusList.headerStatus" :name="name" />
- <van-cell-group>
- <van-field label="回访老师" v-model="teacherName" readonly input-align="right" placeholder="请选择" />
- </van-cell-group>
- <van-cell-group>
- <van-field label="学员姓名" @click="onCheckStudent" v-model="studentName" readonly input-align="right" :is-link="id || userId || studentId ? false : true" placeholder="请选择">
- <template #right-icon>
- <a v-if="studentPhone" @click.stop="() => {}" class="phone_section" :href="'tel:' + studentPhone"><img src="../../assets/images/icon_phone.png" class="iconPhone" alt="" /></a>
- </template>
- </van-field>
- <van-field label="回访类型" @click="onChange('type')" v-model="form.type" readonly input-align="right" :is-link="id || userId ? false : true" placeholder="请选择" />
- <van-field label="回访目的" @click="onChange('purpose')" v-model="form.purpose" readonly input-align="right" :is-link="id || userId ? false : true" placeholder="请选择" />
- <van-field v-if="form.type == '小课回访'" label="学员状态" @click="onChange('feedbackType')" v-model="form.feedbackTypeName" readonly input-align="right" :is-link="id ? false : true" placeholder="请选择" />
- <van-field v-if="form.purpose == '考勤申诉'" label="家长反馈" @click="onChange('feedbackTypeDesc')" v-model="form.feedbackTypeDescName" readonly input-align="right" :is-link="id ? false : true" placeholder="请选择" />
- <van-field label="问题状态" @click="onChange('probStatus')" v-model="form.probStatusName" readonly input-align="right" :is-link="id ? false : true" placeholder="请选择" />
- </van-cell-group>
- <van-cell-group v-if="form.purpose!='考勤申诉'">
- <div class="dot"></div>
- <van-field label="当前学生情况" class="textarea" :readonly="id ? true : false" v-model="form.overview" rows="2" autosize type="textarea" maxlength="400" placeholder="请输入留言" :show-word-limit="id ? false : true" />
- </van-cell-group>
- <van-cell-group v-if="!form.feedbackTypeDescName || form.feedbackTypeDescName=='其他'">
- <div class="dot"></div>
- <van-field label="沟通后家长反馈" class="textarea" :readonly="id ? true : false" v-model="form.feedback" rows="2" autosize type="textarea" maxlength="400" placeholder="请输入留言" :show-word-limit="id ? false : true" />
- </van-cell-group>
- <van-cell-group>
- <van-field label="回访时间" class="visiTimer" v-model="form.visitTime" readonly @click="onEnListShow" input-align="right" :is-link="id ? false : true" placeholder="请选择" />
- </van-cell-group>
- <van-cell-group v-if="(id && uploader[0] && uploader[0].url) || !id">
- <div class="visiWrap">
- <p>回访图片</p>
- <!-- :before-delete="beforDelete" -->
- <van-uploader v-model="uploader" :before-read="beforeRead" :after-read="afterRead" :disabled="id ? true : false" :deletable="!id ? true : false" accept="image/*" multiple :max-count="5" />
- <p class="submit" v-if="!id">上传文件大小不能超过5MB且最多上传五张</p>
- </div>
- </van-cell-group>
- <div class="button-group" v-if="!id">
- <van-button type="primary" @click="onSubmit" round size="large">确认</van-button>
- </div>
- <van-action-sheet v-model="visit.status" :actions="visit.data" cancel-text="取消" @cancel="visit.status = false" @select="onModeSelect" />
- <van-popup v-model="dataForm.status" position="bottom">
- <van-datetime-picker v-model="dataForm.currentDate" type="date" :min-date="dataForm.minDate" :max-date="dataForm.maxDate" :formatter="formatter" @cancel="dataForm.status = false" @confirm="onCurrentConfirm" />
- </van-popup>
- <!-- 选择上课学生 -->
- <van-popup v-model="statusList.studentStatus" :lock-scroll="true" position="bottom" :style="{ height: '180%' }">
- <van-sticky>
- <van-search show-action shape="round" :left-icon="searchIcon" @search="onSearch" v-model="params.search" placeholder="请输入学生名或手机号">
- <template #action>
- <div @click="onSearch">搜索</div>
- </template>
- </van-search>
- </van-sticky>
- <div class="paddingB80">
- <van-list v-model="loading" class="studentContainer" v-if="dataShow" key="data" :finished="finished" finished-text="" @load="getStudent">
- <van-radio-group v-model="radioSelect">
- <van-cell-group>
- <van-cell v-for="(item, index) in dataList" :key="index" @click="onCheckboxSelect(item)" class="input-cell" :center="true">
- <template slot="icon">
- <img class="logo" v-if="item.avatar" :src="item.avatar" alt="" />
- <img class="logo" v-else src="@/assets/images/icon_student.png" alt="" />
- </template>
- <template slot="title">
- <div class="studentName">
- {{ item.userName }}
- </div>
- </template>
- <template slot="label">
- <span>{{ desensitPhone(item.phone) }}</span>
- </template>
- <template slot="default">
- <van-radio :name="item.userId"></van-radio>
- </template>
- </van-cell>
- </van-cell-group>
- </van-radio-group>
- </van-list>
- <m-empty class="empty" v-else key="data" />
- </div>
- <div class="button-group-popup">
- <span class="btn" @click="onPopupCancel">取消</span>
- <span class="btn primary" @click="onPopupSubmit">确认选择</span>
- </div>
- </van-popup>
- </div>
- </template>
- <script>
- import MHeader from "@/components/MHeader";
- import { browser } from "@/common/common";
- import MEmpty from "@/components/MEmpty";
- import dayjs from "dayjs";
- import { queryStudentsWithTeacher, visitAdd, visitGetInfo, queryUserById } from "@/api/teacher";
- import { queryUserInfo } from "@/api/app";
- import { policy } from "@/views/massMessage/api";
- import setLoading from "@/utils/loading";
- import axios from "axios";
- export default {
- name: "addVisit",
- components: {
- MHeader,
- MEmpty,
- },
- data() {
- const query = this.$route.query;
- return {
- id: query.id,
- name: query.name,
- userId: query.userId, // 如果有userId的时候说明是从评测详情进来的
- studentId: query.studentId, // 这个参数是从原生传过来的,单独做了处理
- beforeId: query.beforeId, // 如果有beforeId的时候说明是从待回访列表进来的
- inside: query.inside || 0,
- visitFlag: Number(query.visitFlag) || 0,
- uploader: [],
- isAttError:false,
- dataForm: {
- // 时间下拉框
- status: false,
- minDate: new Date(2000, 0, 1),
- maxDate: new Date(),
- currentDate: new Date(),
- },
- statusList: {
- // 散状态集合
- headerStatus: true, // 头部是否展示
- studentStatus: false, // 上课学生状态
- },
- typeList: [{ name: "课程推荐" }, { name: "常规回访" }, { name: "小课回访" }, { name: "云教练" }, { name: "其它" }],
- visit: {
- status: false,
- type: null,
- data: [],
- },
- studentName: query.username || null,
- studentPhone: query.phone || null,
- teacherName: null,
- form: {
- teacherId: null,
- studentId: query.userId || query.studentId || query.beforeId || null,
- type: query.userId ? "云教练" : query.beforeId ? "常规回访" : null,
- purpose: query.userId ? "体验回访" : query.beforeId ? "教学内容未达标" : null,
- overview: "",
- feedback: "",
- visitTime: query.userId || query.id || query.beforeId ? dayjs().format("YYYY年MM月DD日") : null,
- visiterType: "TEACHER",
- feedbackTypeDesc: "",
- feedbackType: "",
- probStatus: 0,
- probStatusName:'待跟进',
- objectId:''
-
- },
- loading: false,
- finished: false,
- params: {
- search: null,
- page: 1,
- rows: 20,
- },
- dataShow: true, // 是否有数据
- radioSelect: null,
- radioSelectName: null,
- radioSelectPhone: null,
- clickStatus: false,
- dataList: [],
- searchIcon: require("@/assets/images/search.png"),
- // ossUploadUrl: "https://ks3-cn-beijing.ksyuncs.com/daya",
- ossUploadUrl: "https://daya.ks3-cn-beijing.ksyuncs.com",
- dataObj: {
- policy: "",
- signature: "",
- key: "",
- KSSAccessKeyId: "",
- acl: "public-read",
- name: "",
- },
- feedbackTypeList: [
- { name: "在读", value: "NORMAL" },
- { name: "暂停", value: "PAUSE" },
- { name: "沉睡", value: "SLEEPY" },
- { name: "流失", value: "LOST" },
- { name: "假期上课", value: "HOLIDAY_COURSE" },
-
- ],
- feedbackTypeDescList: [{ name: "生病", value: "SICK" }, { name: "有事", value: "SOMETHING" }, { name: "不想参加", value: "NO_PARTICIPATE" }, { name: "其他", value: "OTHER" }],
- probStatusList: [
- { name: "已解决", value: 1 },
- { name: "待跟进", value: 0 },
- ],
- };
- },
- mounted() {
- let params = this.$route.query;
- if (params.Authorization) {
- localStorage.setItem("Authorization", decodeURI(params.Authorization));
- localStorage.setItem("userInfo", decodeURI(params.Authorization));
- }
- if (browser().android || browser().iPhone) {
- this.statusList.headerStatus = false;
- }
- if(params.isAttError){
- this.isAttError = params.isAttError
- this.studentName= params.info.username || null;
- // studentPhone: params.phone || null,
- this.form.studentId = params.info.userId || null;
- this.form.type = params.info.type
- this.form.purpose = params.info.purpose
- this.form.objectId = params.info.objectId
- }
- document.title = this.name || "新增回访记录";
- this.__init();
- },
- methods: {
- async __init() {
- let res = await queryUserInfo();
- let result = res.data;
- if (res.status == 200) {
- this.teacherName = result.realName;
- this.form.teacherId = result.id;
- } else {
- this.$toast(res.msg);
- }
- if (this.id) {
- setLoading(true);
- let queryInfo = await visitGetInfo({ id: this.id });
- const queryResult = queryInfo.data;
- let form = this.form;
- setLoading(false);
- if (queryResult.code == 200) {
- let tempData = queryResult.data;
- this.studentName = tempData.studentName;
- form.studentId = tempData.studentId;
- form.type = tempData.type;
- form.purpose = tempData.purpose;
- form.overview = tempData.overview;
- form.feedback = tempData.feedback;
- form.visitTime = dayjs(tempData.visitTime).format("YYYY年MM月DD日");
- form.visiterType = tempData.visiterType;
- form.feedbackType = tempData.feedbackType;
- form.feedbackTypeDesc = tempData.feedbackTypeDesc;
- form.probStatus = tempData.probStatus;
- if (form.feedbackType) {
- form.feedbackTypeName = "";
- this.feedbackTypeList.forEach((item) => {
- if (item.value == form.feedbackType) {
- form.feedbackTypeName = item.name;
- }
- });
- }
- if (form.feedbackTypeDesc) {
- form.feedbackTypeDescName = "";
- this.feedbackTypeDescList.forEach((item) => {
- if (item.value == form.feedbackTypeDesc) {
-
- form.feedbackTypeDescName = item.name;
- }
- });
- }
- if (form.probStatus) {
- form.probStatusName = "已解决";
- } else {
- form.probStatusName = "待跟进";
- }
- /**
- * form.feedbackTypeDescName = null;
- form.feedbackTypeDesc = null;
- form.probStatus = null;
- form.probStatusName = null;
- form.feedbackTypeDescName = null;
- form.feedbackTypeDesc = null;
- */
- form.probStatus = tempData.probStatus;
- let attrList = tempData.attachments.split(",");
- this.uploader = attrList.map((item) => {
- return { url: item };
- });
- // console.log(this.uploader);
- } else {
- this.$toast(res.msg);
- }
- }
- let userId = this.userId || this.studentId || this.beforeId;
- if (userId) {
- await queryUserById({ userId }).then((res) => {
- let result = res.data;
- this.studentPhone = result.phone;
- this.studentName = result.username;
- });
- }
- },
- async onSubmit() {
- let form = this.form;
- if (!form.studentId) {
- this.$toast("请选择学员");
- return;
- } else if (!form.type) {
- this.$toast("请选择回访类型");
- return;
- } else if (!form.purpose) {
- this.$toast("请选择回访目的");
- return;
- } else if (!form.visitTime) {
- this.$toast("请选择回访时间");
- return;
- } else if (!form.feedbackType && form.type == "小课回访") {
- this.$toast("请选择学员状态");
- return;
- } else if (!form.feedbackTypeDesc && form.purpose == "考勤申诉") {
- this.$toast("请选择家长反馈");
- return;
- } else if (!(form.probStatus+'')) {
- this.$toast("请选择问题状态");
- return;
- }else if(!form.feedback&&form.feedbackTypeDesc=='OTHER'){
- this.$toast("请填写家长反馈");
- return
- }
- if (this.clickStatus) {
- return;
- }
- this.clickStatus = true;
- setLoading(true);
- // let visitTime = this.form.visitTime.replace(/[^\d]/g,'/');
- // let someDate = new Date(visitTime)
- let visitTime = dayjs(this.dataForm.currentDate).format("YYYY-MM-DD");
- let attachmentsList = this.uploader.map((item) => {
- return item.url;
- });
- let params = {
- ...form,
- visitTime,
-
- attachments: attachmentsList.join(","),
- };
- // 待回访时要传的参数
- if (this.beforeId) {
- params.objectId = this.$route.query.objectId;
- }
- let res = await visitAdd({ ...params });
- let result = res.data;
- setLoading(false);
- if (result.code == 200) {
- this.$toast("添加成功");
- setTimeout(() => {
- if (this.inside) {
- this.onAppBack();
- }else if(this.isAttError){
- this.$router.back()
- } else if (this.userId) {
- let { visitFlag, ...query } = this.$route.query;
- visitFlag = 0;
- this.$router.replace({
- path: "/trainDetail",
- query: {
- ...query,
- visitFlag,
- },
- });
- } else if (this.beforeId) {
- let { ...query } = this.$route.query;
- this.$router.replace({
- path: "/visitList",
- query: {
- userId: this.beforeId,
- ...query,
- },
- });
- } else {
- this.$router.replace("visitList");
- }
- }, 800);
- } else {
- this.$toast(result.msg);
- this.clickStatus = false;
- return;
- }
- },
- onAppBack() {
- if (browser().android) {
- DAYA.postMessage(JSON.stringify({ api: "back" }));
- } else if (browser().iPhone) {
- window.webkit.messageHandlers.DAYA.postMessage(JSON.stringify({ api: "back" }));
- }
- },
- onCheckStudent() {
- if (this.id || this.userId || this.studentId || this.beforeId || this.isAttError) {
- return;
- }
- this.statusList.studentStatus = true;
- },
- onChange(type) {
- if (this.id) {
- return;
- }
- if ((this.userId || this.beforeId) && type != "probStatus") {
- return;
- }
- if(this.isAttError && (type=='type' || type=='purpose')){
- return
- }
- let visit = this.visit;
- let form = this.form;
- if (type == "type") {
- visit.data = this.typeList;
- } else if (type == "purpose") {
-
- if (form.type == "其它") {
- visit.data = [{ name: "其它" }, { name: "会员续费" }];
- } else if (form.type == "课程推荐") {
- visit.data = [{ name: "新课推荐" }, { name: "续费提醒" }];
- } else if (form.type == "常规回访") {
- visit.data = [{ name: "课后及作业回访" }, { name: "练习及乐团表现" }, { name: "考勤申诉" }, { name: "异常请假回访" }];
- } else if (form.type == "小课回访") {
- visit.data = [{ name: "续费类回访" }, { name: "服务回访" }, { name: "其他" }];
- } else if (form.type == "云教练") {
- visit.data = [{ name: "体验回访" }];
- } else {
- this.$toast("请选择回访类型");
- return;
- }
- } else if (type == "feedbackType") {
- visit.data = this.feedbackTypeList;
- } else if (type == "feedbackTypeDesc") {
- visit.data = this.feedbackTypeDescList;
- } else if (type == "probStatus") {
- visit.data = this.probStatusList;
- }
- visit.status = true;
- visit.type = type;
- },
- onSearch() {
- this.params.page = 1;
- this.dataList = [];
- this.dataShow = true;
- this.loading = true;
- this.finished = false;
- this.getStudent();
- },
- onCheckboxSelect(item) {
- this.radioSelect = item.userId;
- this.radioSelectName = item.userName;
- this.radioSelectPhone = item.phone;
- },
- onPopupCancel() {
- this.statusList.studentStatus = false;
- },
- onPopupSubmit() {
- this.form.studentId = this.radioSelect;
- this.studentName = this.radioSelectName;
- this.studentPhone = this.radioSelectPhone;
- this.statusList.studentStatus = false;
- },
- onCurrentConfirm(value) {
- if (value) {
- this.form.visitTime = dayjs(value).format("YYYY年MM月DD日");
- }
- this.dataForm.status = false;
- },
- onEnListShow() {
- // 从云教练统计来的,不许改时间,默认当前时间
- if (this.id || this.visitFlag) {
- return;
- }
- this.dataForm.status = true;
- },
- getStudent() {
- let params = this.params;
- queryStudentsWithTeacher(params).then((res) => {
- let result = res.data;
- this.loading = false;
- if (result.code == 200 && result.data) {
- params.page = result.data.pageNo;
- this.dataList = this.dataList.concat(result.data.rows);
- if (params.page >= result.data.totalPage) {
- this.finished = true;
- }
- this.params.page++;
- } else {
- this.finished = true;
- }
- // 判断是否有数据
- if (this.dataList.length <= 0) {
- this.dataShow = false;
- }
- });
- },
- onModeSelect(value) {
- let visit = this.visit;
- let form = this.form;
- if (visit.type == "type") {
- form.type = value.name;
- form.purpose = null;
- form.feedbackTypeDescName = null;
- form.feedbackTypeDesc = null;
- // form.probStatus = 0;
- // form.probStatusName = null;
- form.feedbackTypeDescName = null;
- form.feedbackTypeDesc = null;
- } else if (visit.type == "purpose") {
- form.purpose = value.name;
- } else if (visit.type == "feedbackType") {
- form.feedbackType = value.value;
- form.feedbackTypeName = value.name;
- } else if (visit.type == "feedbackTypeDesc") {
- form.feedbackTypeDescName = value.name;
- form.feedbackTypeDesc = value.value;
- form.feedback = ''
- } else if (visit.type == "probStatus") {
- form.probStatus = value.value;
- form.probStatusName = value.name;
- }
- visit.status = false;
- },
- formatter(type, value) {
- if (type === "year") {
- return `${value}年`;
- } else if (type === "month") {
- return `${value}月`;
- } else if (type === "day") {
- return `${value}日`;
- }
- return value;
- },
- desensitPhone(phone) {
- // 手机号脱敏
- let first = phone.substr(0, 3);
- let last = phone.substr(-4);
- return first + "****" + last;
- },
- beforeRead(file) {
- if (file.length) {
- file.map((item) => {
- const isLt2M = item.size / 1000 / 1000 < 5;
- if (!isLt2M) {
- this.$toast("上传文件大小不能超过 5MB");
- return false;
- }
- });
- } else {
- const isLt2M = file.size / 1000 / 1000 < 5;
- if (!isLt2M) {
- this.$toast("上传文件大小不能超过 5MB");
- return false;
- }
- }
- return true;
- },
- async uploadFile(file) {
- // console.log("uploadFile", file);
- try {
- file.status = "uploading";
- file.message = "上传中...";
- let tempName = file.file.name || "";
- const fileName = tempName && tempName.replace(/ /gi, "_");
- let key = new Date().getTime() + fileName;
- let objTemp = {
- filename: fileName,
- bucketName: this.bucket_name,
- postData: {
- filename: fileName,
- acl: "public-read",
- key: key,
- unknowValueField: [],
- },
- };
- const res = await policy(objTemp);
- const obj = {
- policy: res.data.policy,
- signature: res.data.signature,
- key: key,
- KSSAccessKeyId: res.data.kssAccessKeyId,
- acl: "public-read",
- name: fileName,
- };
- let formData = new FormData();
- for (let key in obj) {
- formData.append(key, obj[key]);
- }
- formData.append("file", file.file);
- // console.log(formData);
- await axios({
- method: "post",
- url: this.ossUploadUrl,
- data: formData,
- });
- const uploadUrl = this.ossUploadUrl + "/" + key;
- file.url = uploadUrl;
- file.status = "done";
- } catch (e) {
- console.log(e);
- file.status = "failed";
- file.message = "上传失败";
- this.uploader = [];
- }
- },
- async afterRead(file) {
- // 上传头像
- const form = this.form;
- try {
- if (file && file.length) {
- file.forEach((item) => {
- this.uploadFile(item);
- });
- } else {
- this.uploadFile(file);
- }
- } catch (e) {
- console.log(e);
- return false;
- }
- // this.$toast.loading({
- // duration: 0,
- // forbidClick: true,
- // message: "上传中...",
- // });
- //
- // try {
- // file.status = "uploading";
- // file.message = "上传中...";
- // let formData = new FormData();
- // formData.append("file", file.file);
- // let res = await uploadFile(formData);
- // this.$toast.clear();
- // let result = res.data;
- // if (result.code == 200) {
- // file.status = "done";
- // form.fileName = file.file.name;
- // form.fileUrl = result.data.url;
- // form.messageType = this.onCheckFileType(file.file.type);
- // } else {
- // file.status = "failed";
- // file.message = "上传失败";
- // this.$toast(result.msg);
- // form.fileName = "";
- // form.fileUrl = "";
- // return false;
- // }
- // } catch (err) {
- // this.$toast.clear();
- // file.status = "failed";
- // file.message = "上传失败";
- // form.fileName = "";
- // form.fileUrl = "";
- // return false;
- // }
- },
- },
- };
- </script>
- <style lang="less" scoped>
- @import url("../../assets/commonLess/variable.less");
- /deep/.van-popup--bottom {
- border-radius: 0px 0px 0px 0px !important;
- overflow: auto !important;
- }
- .addVisit {
- min-height: 100vh;
- }
- .vip-title {
- padding: 0.06rem 0.14rem 0.04rem;
- font-size: 0.14rem;
- color: #808080;
- }
- /deep/.van-cell-group {
- margin-bottom: 0.1rem;
- }
- /deep/.van-cell {
- display: flex;
- align-items: center;
- font-size: 0.16rem;
- line-height: 0.28rem;
- }
- /deep/.van-field__label,
- /deep/.van-cell__value {
- flex: 1 auto;
- }
- /deep/.van-field__word-limit {
- margin-top: 0px;
- position: absolute;
- top: -0.2rem;
- right: 5px;
- font-size: 0.14rem;
- }
- /deep/.van-field__control:disabled {
- color: #6a6969;
- }
- .textarea {
- display: flex;
- flex-direction: column;
- align-items: inherit;
- padding: 0.1rem 0.21rem;
- /deep/.van-field__label {
- width: 100%;
- }
- // /deep/.van-field__value {
- // border: 1px solid #ccc;
- // }
- }
- .button-group {
- margin: 0.3rem 0.26rem 0.2rem;
- .van-button--primary {
- background: @mColor;
- border: 1px solid @mColor;
- font-size: 0.18rem;
- height: 0.5rem;
- }
- }
- .studentContainer {
- /deep/.van-cell__title {
- font-size: 0.14rem;
- color: @mFontColor;
- // flex: 1 auto;
- }
- .logo {
- width: 0.42rem;
- height: 0.42rem;
- margin-right: 0.12rem;
- border-radius: 100%;
- }
- .input-cell {
- padding: 0.2rem 0.16rem;
- .van-radio {
- justify-content: flex-end;
- }
- }
- /deep/.van-cell__value {
- height: 0.2rem;
- }
- /deep/.van-radio__icon .van-icon {
- border-color: #d3d3d3;
- }
- /deep/.van-radio__icon--checked {
- .van-icon {
- border-color: @mColor;
- background: @mColor;
- }
- }
- .van-tag {
- margin-left: 0.08rem;
- }
- }
- /deep/.van-field__right-icon,
- .phone_section {
- display: flex;
- }
- .iconPhone {
- width: 0.17rem;
- height: 0.21rem;
- }
- .paddingB80 {
- padding-bottom: 0.8rem;
- }
- .button-group-popup {
- position: fixed;
- bottom: 0;
- padding: 0.2rem 0;
- width: 100%;
- text-align: center;
- background-color: #ffffff;
- .btn {
- line-height: 0.5rem;
- display: inline-block;
- border: 1px solid @mColor;
- width: 1.65rem;
- border-radius: 0.4rem;
- color: @mColor;
- background: #fff;
- font-size: 0.18rem;
- &.primary {
- color: #fff;
- background: @mColor;
- }
- }
- .btn + .btn {
- margin-left: 0.1rem;
- }
- }
- .studentColor {
- color: @mColor;
- }
- .visiTimer {
- /deep/.van-field__control {
- color: #333333 !important;
- font-size: 0.16rem;
- }
- }
- .studentName {
- font-size: 0.16rem;
- color: #1a1a1a;
- line-height: 0.22rem;
- }
- .dot {
- width: 4px;
- height: 0.17rem;
- background: #01c1b5;
- border-radius: 3px;
- position: absolute;
- z-index: 200;
- top: 0.14rem;
- left: 0.12rem;
- }
- .van-icon-search {
- color: @mColor;
- }
- .visiWrap {
- padding: 10px 16px;
- p {
- font-size: 0.16rem;
- line-height: 0.28rem;
- color: #646566;
- margin-bottom: 0.1rem;
- }
- .submit {
- color: red;
- font-size: 0.12rem;
- }
- }
- </style>
|