1.更新了体检上门
2.修复自费成功页面无法隐藏加载中页面问题
This commit is contained in:
372
pages/tjsmMgr/tjsmMgr.js
Normal file
372
pages/tjsmMgr/tjsmMgr.js
Normal file
@@ -0,0 +1,372 @@
|
||||
const util = require('../../utils/util.js');
|
||||
const api = require('../../config/api.js');
|
||||
const user = require('../../utils/user.js');
|
||||
|
||||
//获取应用实例
|
||||
const app = getApp();
|
||||
|
||||
Page({
|
||||
data: {
|
||||
isShow: false, //控制确认学生信息对话框
|
||||
stulist: {},
|
||||
xyrwList: [],
|
||||
rwname:'',
|
||||
rwempty: 0,
|
||||
batchno: '',
|
||||
nationId: '',
|
||||
list:[],
|
||||
loadingHidden: true,
|
||||
flag: false,
|
||||
openid: ''
|
||||
},
|
||||
|
||||
isValidID:function (id) {
|
||||
if (!/^\d{17}(\d|X)$/.test(id)) return false; // 检查格式是否正确
|
||||
|
||||
// 计算第18位校验码
|
||||
const weights = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2];
|
||||
const checkCode = '10X98765432';
|
||||
let sum = 0;
|
||||
for (let i = 0; i < id.length - 1; i++) {
|
||||
sum += parseInt(id[i], 10) * weights[i];
|
||||
}
|
||||
sum = sum % 11;
|
||||
|
||||
// 验证第18位校验码是否正确
|
||||
return checkCode[sum] === id[17].toUpperCase();
|
||||
},
|
||||
|
||||
btnAdd: function(){
|
||||
if(this.isValidID(this.data.nationId) == false){
|
||||
wx.showToast({
|
||||
title: '身份证不合法!',
|
||||
icon:'success',
|
||||
duration: 1000
|
||||
})
|
||||
this.setData({ nationId: '', });
|
||||
return;
|
||||
}
|
||||
//根据身份证号和批次号查询学生信息
|
||||
var that = this;
|
||||
util.request(api.smstudentByInit, {
|
||||
nationid: that.data.nationId,
|
||||
batchno: this.data.batchno
|
||||
})
|
||||
.then(function(res) {
|
||||
if (res.code === 0) {
|
||||
console.log(res.data);
|
||||
if(res.data == null){
|
||||
wx.showToast({
|
||||
title: '无此体检人员',
|
||||
icon:'error'
|
||||
})
|
||||
}else{
|
||||
that.setData({
|
||||
stulist: res.data,
|
||||
isShow: true
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
onCancelStudent: function(){
|
||||
},
|
||||
|
||||
onConfirmStudent: function(){
|
||||
let that = this;
|
||||
let cardNum = this.data.stulist.nationId;
|
||||
// let type = this.data.type
|
||||
let hzxm =this.data.stulist.name;
|
||||
let sex = this.getSexFromIdCard(this.data.stulist.nationId)
|
||||
let age = this.calculateAge(this.data.stulist.nationId)
|
||||
let userid = this.data.stulist.id;
|
||||
// let classid = this.data.xytjinfo.classid;
|
||||
let classname = this.data.stulist.classname;
|
||||
let schoolname = this.data.stulist.schoolname;
|
||||
let sqName = this.data.stulist.sqName;
|
||||
let cardtype = "";
|
||||
|
||||
console.log(hzxm)
|
||||
console.log(cardNum)
|
||||
console.log(sex)
|
||||
console.log(age)
|
||||
console.log(userid)
|
||||
|
||||
//家长确认学生信息,进行建档和关联就诊人操作
|
||||
util.requestPost(api.smcreatestudent, {
|
||||
openid: app.globalData.openId,
|
||||
name: hzxm,
|
||||
deptId: userid,
|
||||
sex: sex,
|
||||
age: age,
|
||||
className: classname,
|
||||
schoolName: schoolname,
|
||||
sqName: sqName,
|
||||
nationId: cardNum
|
||||
})
|
||||
.then(function(res) {
|
||||
console.log(res);
|
||||
if (res.code === 0) {
|
||||
console.log("createstudent res:");
|
||||
console.log(res);
|
||||
console.log("createstudent resdata:");
|
||||
console.log(res.data);
|
||||
cardtype = res.data;
|
||||
|
||||
// if(type == 0)
|
||||
// {
|
||||
// // app.globalData.gdefaultflag = type;
|
||||
// app.globalData.gname = hzxm;
|
||||
// app.globalData.gsex = sex;
|
||||
// app.globalData.gage = age;
|
||||
// // app.globalData.gdeptId = classid;
|
||||
// app.globalData.gclassName = classname;
|
||||
// app.globalData.gschoolName = schoolname;
|
||||
// app.globalData.gnationId = cardNum;
|
||||
// }
|
||||
|
||||
//自动建档并关联到父openid
|
||||
that.linkUser(hzxm, cardNum, cardtype);
|
||||
|
||||
wx.showToast({
|
||||
title: '添加成功',
|
||||
icon:'success'
|
||||
})
|
||||
setTimeout(item => {
|
||||
wx.navigateBack({
|
||||
delta: 1 //返回上一级页面
|
||||
})
|
||||
},1000)
|
||||
|
||||
}
|
||||
else{
|
||||
wx.showToast({
|
||||
title: res.msg,
|
||||
icon:'error'
|
||||
})
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
linkUser:function(gname, xPatid, cardtype){
|
||||
//第二步 关联到父openid
|
||||
console.log(xPatid, 'usrPatid');
|
||||
wx.request({
|
||||
url:'https://fy.btlsoln.com:8443/patientBindWXUser?cardno&cardtype&openid&relate&type&hzxm',
|
||||
method:"GET",
|
||||
data:{
|
||||
cardno: xPatid,
|
||||
cardtype: cardtype,
|
||||
relate: '1', //都是子女
|
||||
type: '1', //不当做默认就诊人
|
||||
openid: app.globalData.openId,
|
||||
hzxm: gname
|
||||
},
|
||||
header: {
|
||||
'content-type': 'application/json'
|
||||
},
|
||||
success: (res)=> {
|
||||
if(res.data.errCode == 0){
|
||||
wx.showToast({
|
||||
title: '关联就诊人成功',
|
||||
icon:'success'
|
||||
})
|
||||
return true;
|
||||
}else{
|
||||
wx.showToast({
|
||||
title: "关联就诊人失败",
|
||||
icon:'error'
|
||||
})
|
||||
return false;
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
//获取下园任务列表
|
||||
getXyrwList: function() {
|
||||
var that = this;
|
||||
util.request(api.smxyrwinfo, {
|
||||
|
||||
})
|
||||
.then(function(res) {
|
||||
if (res.code === 0) {
|
||||
console.log("xyrwinfo resdata:");
|
||||
console.log(res.data);
|
||||
if(res.data.length == 0){
|
||||
that.setData({
|
||||
rwempty: 0
|
||||
});
|
||||
app.globalData.hasXyrw = false;
|
||||
}else{
|
||||
that.setData({
|
||||
rwempty: 1,
|
||||
xyrwList: res.data,
|
||||
rwname: res.data[0].batchName,
|
||||
batchno: res.data[0].batchno
|
||||
});
|
||||
app.globalData.hasXyrw = true;
|
||||
that.getPerList(res.data[0].batchno);
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
//取列表
|
||||
getPerList: function(resbatchno){
|
||||
let that = this;
|
||||
util.request(api.smstudentByparent, {
|
||||
openid: app.globalData.openId,
|
||||
batchno: resbatchno
|
||||
})
|
||||
.then(function(res) {
|
||||
if (res.code === 0) {
|
||||
console.log("list res:");
|
||||
console.log(res);
|
||||
console.log("list resdata:");
|
||||
console.log(res.data);
|
||||
that.setData({
|
||||
list: res.data
|
||||
});
|
||||
|
||||
console.log("list length", that.data.list.length);
|
||||
if(that.data.list.length == 0 ){
|
||||
that.setData({
|
||||
loadingHidden: false,
|
||||
flag: false
|
||||
});
|
||||
}else{
|
||||
//有体检人,取出默认体检人
|
||||
var filterNum = that.data.list.filter(function(person,index,arrs){
|
||||
return person.defaultflag==0
|
||||
});
|
||||
console.log("fileter");
|
||||
console.log(filterNum);
|
||||
|
||||
that.setData({
|
||||
loadingHidden: true,
|
||||
flag: true
|
||||
});
|
||||
}
|
||||
|
||||
that.setData({
|
||||
loadingHidden: true
|
||||
});
|
||||
}
|
||||
})
|
||||
},
|
||||
naviToAdd(){
|
||||
let state = 0
|
||||
wx.navigateTo({
|
||||
url: '/pages/studentMsgDel/studentMsgDel?state='+state,
|
||||
})
|
||||
},
|
||||
naviToDet(e){
|
||||
return;
|
||||
console.log(e.currentTarget.dataset.item)
|
||||
let item = e.currentTarget.dataset.item
|
||||
let idCard = item.nationId
|
||||
let trueName = item.name
|
||||
let type = item.defaultflag
|
||||
let sex = item.sex
|
||||
let age = item.age
|
||||
let classid = item.deptId
|
||||
let classname = item.className
|
||||
let schoolname = item.schoolName
|
||||
let state = 1
|
||||
var id = 0;
|
||||
id = item.id
|
||||
|
||||
wx.navigateTo({
|
||||
url: '/pages/studentMsgDel/studentMsgDel?state='+state+'&classid='+classid+'&classname='+classname+'&schoolname='+schoolname+'&idCard='+idCard+'&trueName='+trueName+'&type='+type +'&sex='+sex +'&age='+age +'&id='+id,
|
||||
})
|
||||
},
|
||||
naviToXytj(){
|
||||
wx.navigateTo({
|
||||
url: '/pages/xytj/xytj',
|
||||
})
|
||||
},
|
||||
|
||||
|
||||
onChange({ detail }) {
|
||||
this.setData({ checked: detail });
|
||||
},
|
||||
|
||||
onShareAppMessage: function() {
|
||||
},
|
||||
|
||||
onPullDownRefresh() {
|
||||
},
|
||||
|
||||
onLoad: function(options) {
|
||||
// 页面初始化 options为页面跳转所带来的参数
|
||||
this.getXyrwList();
|
||||
|
||||
this.setData({
|
||||
loadingHidden: false,
|
||||
})
|
||||
},
|
||||
onReady: function() {
|
||||
// 页面渲染完成
|
||||
wx.setNavigationBarTitle({
|
||||
title: "管理体检人员"
|
||||
})
|
||||
|
||||
},
|
||||
onShow: function() {
|
||||
// 页面显示
|
||||
this.getPerList()
|
||||
this.setData({
|
||||
loadingHidden: false,
|
||||
})
|
||||
|
||||
},
|
||||
onHide: function() {
|
||||
// 页面隐藏
|
||||
},
|
||||
onUnload: function() {
|
||||
// 页面关闭
|
||||
},
|
||||
|
||||
// 从身份证号码中提取性别信息
|
||||
getSexFromIdCard: function(idCard){
|
||||
var org_gender = idCard.substring(16, 17);
|
||||
// var sex = org_gender % 2 == 1 ? "男" : "女";
|
||||
var sex = org_gender % 2 == 1 ? 1 : 2;
|
||||
|
||||
return sex; // 这里假设身份证号码长度为18位并按照标准格式存放
|
||||
},
|
||||
|
||||
// 从身份证号码中提取生日信息(格式为YYYYMMDD)
|
||||
getBirthdayFromIdCard: function(idCard){
|
||||
return idCard.substring(6, 14); // 这里假设身份证号码长度为18位并按照标准格式存放
|
||||
|
||||
},
|
||||
// 将字符串类型的生日转换成Date对象
|
||||
convertToDateObject: function(birthdayString){
|
||||
const year = birthdayString.substr(0, 4);
|
||||
const month = birthdayString.substr(4, 2);
|
||||
const day = birthdayString.substr(6, 2);
|
||||
|
||||
return new Date(`${year}-${month}-${day}`);
|
||||
|
||||
},
|
||||
|
||||
// 计算年龄函数
|
||||
calculateAge: function(idCard){
|
||||
// 获取当前日期
|
||||
const currentDate = new Date();
|
||||
|
||||
const birthdate = this.convertToDateObject(this.getBirthdayFromIdCard(idCard));
|
||||
let age;
|
||||
|
||||
if (currentDate >= birthdate && !isNaN(currentDate)) {
|
||||
age = Math.floor((currentDate - birthdate) / (365 * 24 * 60 * 60 * 1000));
|
||||
} else {
|
||||
console.error('无效的身份证号码或者未知错误');
|
||||
}
|
||||
|
||||
return age || '';
|
||||
|
||||
}
|
||||
})
|
||||
3
pages/tjsmMgr/tjsmMgr.json
Normal file
3
pages/tjsmMgr/tjsmMgr.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"usingComponents": {}
|
||||
}
|
||||
139
pages/tjsmMgr/tjsmMgr.wxml
Normal file
139
pages/tjsmMgr/tjsmMgr.wxml
Normal file
@@ -0,0 +1,139 @@
|
||||
<!--index.wxml-->
|
||||
<view class="wrap">
|
||||
<view class="service">
|
||||
<icon></icon>
|
||||
<text>当前批次</text>
|
||||
</view>
|
||||
<view class = "rwempty" wx:if = "{{ rwempty }}" >{{ rwname }}</view>
|
||||
<view class = "rwempty" wx:if = "{{ !rwempty }}" >当前无任务</view>
|
||||
</view>
|
||||
<view class="main">
|
||||
<view class="content">
|
||||
|
||||
<loading hidden="{{loadingHidden}}">加载中...</loading>
|
||||
<view wx:if="{{loadingHidden}}">
|
||||
|
||||
<view wx:if="{{flag == true}}">
|
||||
<view class="studentitem" wx:for="{{list}}" wx:key="item" data-item="{{item}}" bindtap="naviToDet">
|
||||
<view class="up">
|
||||
<view class="name">{{item.name}}</view>
|
||||
<view class="msg">
|
||||
<view class="t1"></view>
|
||||
<view class="icon" wx:if="{{item.defaultflag == 0}}">
|
||||
<view class="mr">默认体检人</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="down">
|
||||
<view>{{item.nationId}}</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view wx:else="{{flag == false}}" class="zw">暂无体检人员信息,请将体检人员的身份证号输入下方,再次确认体检人员的身份信息!</view>
|
||||
<view class="mobileItem">
|
||||
<view class="left">身份证号:</view>
|
||||
<view class="inputf">
|
||||
<van-field
|
||||
input-class="my-input-class"
|
||||
model:value="{{ nationId }}"
|
||||
placeholder="请输入体检人员的身份证号"
|
||||
maxlength = "18"
|
||||
type = "idcard"
|
||||
/>
|
||||
</view>
|
||||
</view>
|
||||
<view class="btn" bindtap="btnAdd">添加体检人员</view>
|
||||
<!-- <view class="btn" bindtap="naviToXytj" >返回下园体检</view> -->
|
||||
|
||||
<van-dialog
|
||||
use-slot
|
||||
title="体检人员信息"
|
||||
bind:confirm="onConfirmStudent"
|
||||
bind:cancel="onCancelStudent"
|
||||
id="van-dialog"
|
||||
show-cancel-button
|
||||
show="{{ isShow }}"
|
||||
>
|
||||
<view class="wrapStu" >
|
||||
<view class="itemStu" >
|
||||
<view class="leftStu">单位:</view>
|
||||
<view class="rightStu">
|
||||
{{ stulist.schoolName }}
|
||||
</view>
|
||||
</view>
|
||||
<!-- <view class="itemStu" >
|
||||
<view class="leftStu">年级:</view>
|
||||
<view class="rightStu">
|
||||
{{ stulist.sqName }}
|
||||
</view>
|
||||
</view> -->
|
||||
<!-- <view class="itemStu" >
|
||||
<view class="leftStu">班级:</view>
|
||||
<view class="rightStu">
|
||||
{{ stulist.className }}
|
||||
</view>
|
||||
</view> -->
|
||||
<view class="itemStu" >
|
||||
<view class="leftStu">姓名:</view>
|
||||
<view class="rightStu">
|
||||
{{ stulist.name }}
|
||||
</view>
|
||||
</view>
|
||||
<view class="itemStu" >
|
||||
<view class="leftStu">身份证:</view>
|
||||
<view class="rightStu">
|
||||
{{ stulist.nationId }}
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<!-- <view class="stulist" >
|
||||
<view class="confirmItem" >
|
||||
<view class="confirmLeft">学校:</view>
|
||||
<view class="input">
|
||||
{{ stulist.schoolName }}
|
||||
</view>
|
||||
</view>
|
||||
<view class="confirmItem" >
|
||||
<view class="confirmLeft">年级:</view>
|
||||
<view class="input">
|
||||
{{ stulist.sqName }}
|
||||
</view>
|
||||
</view>
|
||||
<view class="confirmItem" >
|
||||
<view class="confirmLeft">班级:</view>
|
||||
<view class="input">
|
||||
{{ stulist.className }}
|
||||
</view>
|
||||
</view>
|
||||
<view class="confirmItem" >
|
||||
<view class="confirmLeft">姓名:</view>
|
||||
<view class="input">
|
||||
{{ stulist.name }}
|
||||
</view>
|
||||
</view>
|
||||
<view class="confirmItem" >
|
||||
<view class="confirmLeft">身份证号码:</view>
|
||||
<view class="input">
|
||||
{{ stulist.nationId }}
|
||||
</view>
|
||||
</view>
|
||||
</view> -->
|
||||
</van-dialog>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<!-- 确保信息显示 -->
|
||||
<!-- <view class="area">
|
||||
<view class="area-header">
|
||||
<view class="area-header-cont">
|
||||
|
||||
</view>
|
||||
</view>
|
||||
</view> -->
|
||||
<!-- <view class="tips" >结算处理中,请稍后...</view> -->
|
||||
|
||||
<!-- <view class="bottom-btn">
|
||||
<view class="c" bindtap="naviToXytj" >返回下园体检</view>
|
||||
</view> -->
|
||||
|
||||
959
pages/tjsmMgr/tjsmMgr.wxss
Normal file
959
pages/tjsmMgr/tjsmMgr.wxss
Normal file
@@ -0,0 +1,959 @@
|
||||
/* pages/userMgr/userMgr.wxss */
|
||||
.main{
|
||||
margin: 30rpx 0;
|
||||
width: 750rpx;
|
||||
}
|
||||
.content{
|
||||
width: 90%;
|
||||
margin: 0 auto;
|
||||
}
|
||||
.mobileItem{
|
||||
height: 120rpx;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
border-bottom: 1rpx solid #f8f8f8;
|
||||
}
|
||||
.left{
|
||||
height: 100%;
|
||||
width: 200rpx;
|
||||
font-size: 35rpx;
|
||||
color: #333;
|
||||
line-height: 120rpx;
|
||||
/* border: 1rpx solid #6306f8; */
|
||||
}
|
||||
.inputf{
|
||||
flex: 1;
|
||||
font-size: 35rpx;
|
||||
color: #333;
|
||||
line-height: 120rpx;
|
||||
/* border: 1rpx solid #0af1a4; */
|
||||
}
|
||||
.input{
|
||||
flex: 1;
|
||||
font-size: 30rpx;
|
||||
color: #333;
|
||||
line-height: 120rpx;
|
||||
/* border: 1rpx solid #f10c0c; */
|
||||
margin-left: 30rpx;
|
||||
}
|
||||
.confirmItem{
|
||||
height: 120rpx;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
border-bottom: 1rpx solid #0e0d0d;
|
||||
}
|
||||
.confirmLeft{
|
||||
height: 100%;
|
||||
width: 200rpx;
|
||||
font-size: 30rpx;
|
||||
color: #333;
|
||||
line-height: 120rpx;
|
||||
margin-left: 30rpx;
|
||||
align-items: left;
|
||||
/* border: 1rpx solid #6306f8; */
|
||||
}
|
||||
|
||||
.tips{
|
||||
display: flex;
|
||||
justify-content: center; /* 水平居中 */
|
||||
align-items: center; /* 垂直居中 */
|
||||
height: 300rpx; /* 容器高度,根据需要设置 */
|
||||
font-size: 40rpx;
|
||||
}
|
||||
.studentitem{
|
||||
height: 200rpx;
|
||||
width: 100%;
|
||||
border-radius: 5rpx;
|
||||
margin: 40rpx auto;
|
||||
box-shadow:0px 0px 5rpx #e2e2e2;
|
||||
background: rgba(245,249,255);
|
||||
padding: 30rpx;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.zw{
|
||||
height: 250rpx;
|
||||
width: 100%;
|
||||
border-radius: 5rpx;
|
||||
margin: 40rpx auto;
|
||||
box-shadow:0px 0px 15rpx #e2e2e2;
|
||||
padding:0 30rpx;
|
||||
box-sizing: border-box;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
font-size: 33rpx;
|
||||
color: #666;
|
||||
}
|
||||
.up{
|
||||
height: 80rpx;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
}
|
||||
.name{
|
||||
font-size: 35rpx;
|
||||
height: 80rpx;
|
||||
padding-right: 30rpx;
|
||||
line-height: 80rpx;
|
||||
color: #333;
|
||||
}
|
||||
.msg{
|
||||
flex: 1;
|
||||
height: 70rpx;
|
||||
line-height: 80rpx;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
}
|
||||
.t1{
|
||||
height: 50rpx;
|
||||
width: 130rpx;
|
||||
text-align: center;
|
||||
line-height: 50rpx;
|
||||
font-size:33rpx;
|
||||
border-radius: 25rpx;
|
||||
/* color: rgba(45,135,255);
|
||||
background: rgba(226,237,254); */
|
||||
}
|
||||
.mr{
|
||||
font-size: 30rpx;
|
||||
color: #666;
|
||||
}
|
||||
.down{
|
||||
height: 80rpx;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
line-height: 80rpx;
|
||||
font-size: 30rpx;
|
||||
color: #666;
|
||||
}
|
||||
.icon{
|
||||
height: 50rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
.mr{
|
||||
font-size: 33rpx;
|
||||
color: #333;
|
||||
margin-right: 15rpx;
|
||||
}
|
||||
.sw{
|
||||
margin-top: 5rpx;
|
||||
}
|
||||
.btn{
|
||||
height: 100rpx;
|
||||
margin-top: 150rpx;
|
||||
margin-bottom: 40rpx;
|
||||
width: 100%;
|
||||
background: rgba(0,110,255);
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
line-height: 100rpx;
|
||||
border-radius: 10rpx;
|
||||
font-size: 35rpx;
|
||||
letter-spacing: 5rpx;
|
||||
}
|
||||
|
||||
.popsearch{
|
||||
margin-right: 15rpx;
|
||||
}
|
||||
.pickempty{
|
||||
font-size: 35rpx;
|
||||
font-weight: bold;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
margin-top: 80rpx;
|
||||
}
|
||||
.btnview{
|
||||
justify-content: center;
|
||||
display: flex;
|
||||
margin-top: 80rpx;
|
||||
|
||||
}
|
||||
.btnClass {
|
||||
background: #4bc107 !important;
|
||||
color: #fff !important;
|
||||
}
|
||||
|
||||
.banner{
|
||||
margin-bottom: 30rpx;
|
||||
}
|
||||
.slide-image{
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
}
|
||||
.service{
|
||||
font-size: 35rpx;
|
||||
font-weight: bold;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-top: 20rpx;
|
||||
}
|
||||
.service icon{
|
||||
width: 40rpx;
|
||||
height: 15rpx;
|
||||
margin-right: 20rpx;
|
||||
background-color: #50CEBB;
|
||||
border-radius: 15rpx;
|
||||
}
|
||||
.wrap{
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
padding: 0 30rpx;
|
||||
box-sizing: border-box;
|
||||
/* border: 1rpx solid #0af1a4; */
|
||||
}
|
||||
.rwempty{
|
||||
font-size: 35rpx;
|
||||
font-weight: bold;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
margin-top: 10rpx;
|
||||
}
|
||||
.Stulist{
|
||||
height: 600rpx;
|
||||
width: 500rpx;
|
||||
margin-left: 50rpx;
|
||||
margin-top: 30rpx;
|
||||
/* line-height: 120rpx; */
|
||||
/* border: 20rpx solid #030303; */
|
||||
}
|
||||
|
||||
.itemStu{
|
||||
height: 120rpx;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
align-items: center;
|
||||
border-bottom: 2rpx solid #e2e2e2;
|
||||
}
|
||||
.leftStu{
|
||||
width: 30%;
|
||||
font-size: 30rpx;
|
||||
color: #666;
|
||||
text-align-last:justify;
|
||||
text-align:justify;
|
||||
text-justify:distribute-all-lines;
|
||||
}
|
||||
.rightStu{
|
||||
width: 66%;
|
||||
height: 100%;
|
||||
font-size: 30rpx;
|
||||
color: #333;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
.wrapStu{
|
||||
width: 90%;
|
||||
border-radius: 5rpx;
|
||||
margin: 40rpx auto;
|
||||
box-shadow:0px 0px 15rpx #e2e2e2;
|
||||
padding:0 30rpx;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.my-input-class {
|
||||
border-radius: 8px; /* 增加圆角边框 */
|
||||
/* border: 1px solid rgb(248, 21, 21); */
|
||||
|
||||
font-size: 35rpx;
|
||||
}
|
||||
|
||||
.banner image {
|
||||
width: 100%;
|
||||
height: 417rpx;
|
||||
}
|
||||
|
||||
.banner video {
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.m-menu {
|
||||
background: #fff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
padding-bottom: 0rpx;
|
||||
padding-top: 25rpx;
|
||||
}
|
||||
|
||||
.m-menu .item {
|
||||
width: 150rpx;
|
||||
height: 126rpx;
|
||||
}
|
||||
|
||||
.m-menu image {
|
||||
display: block;
|
||||
width: 58rpx;
|
||||
height: 58rpx;
|
||||
margin: 0 auto;
|
||||
margin-bottom: 12rpx;
|
||||
}
|
||||
|
||||
.m-menu text {
|
||||
display: block;
|
||||
font-size: 24rpx;
|
||||
text-align: center;
|
||||
margin: 0 auto;
|
||||
line-height: 1;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.a-section {
|
||||
width: 750rpx;
|
||||
height: auto;
|
||||
overflow: hidden;
|
||||
background: #fff;
|
||||
color: #333;
|
||||
margin-top: 20rpx;
|
||||
}
|
||||
|
||||
.a-section .h {
|
||||
display: flex;
|
||||
flex-flow: row nowrap;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
height: 130rpx;
|
||||
}
|
||||
|
||||
.a-section .h .txt {
|
||||
padding-right: 30rpx;
|
||||
background-size: 16.656rpx 27rpx;
|
||||
display: inline-block;
|
||||
height: 36rpx;
|
||||
font-size: 33rpx;
|
||||
line-height: 36rpx;
|
||||
}
|
||||
|
||||
.loc_light_icon {
|
||||
color: #000;
|
||||
font-size: 10px;
|
||||
line-height: 30px;
|
||||
text-align: center;
|
||||
margin-top: 10px;
|
||||
margin-bottom: 5px;
|
||||
background-clip: content-box;
|
||||
word-wrap:break-word;
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.loc_light {
|
||||
color: #000;
|
||||
font-size: 10px;
|
||||
line-height: 10px;
|
||||
text-align: left;
|
||||
margin-bottom: 5px;
|
||||
background-clip: content-box;
|
||||
word-wrap:break-word;
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.dark,
|
||||
.light {
|
||||
color: #000;
|
||||
font-size: 13px;
|
||||
line-height: 18px;
|
||||
text-align: left;
|
||||
margin-bottom: 5px;
|
||||
margin-top: 5px;
|
||||
background-clip: content-box;
|
||||
word-wrap:break-word;
|
||||
}
|
||||
|
||||
.dark {
|
||||
background-color: #39a9ed;
|
||||
}
|
||||
|
||||
.light {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
|
||||
.a-location .b{
|
||||
width: 750rpx;
|
||||
height: auto;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.a-brand .b {
|
||||
width: 750rpx;
|
||||
height: auto;
|
||||
overflow: hidden;
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.a-brand .wrap {
|
||||
position: relative;
|
||||
}
|
||||
|
||||
.a-brand .img {
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
.a-brand .mt {
|
||||
position: absolute;
|
||||
z-index: 2;
|
||||
padding: 27rpx 31rpx;
|
||||
left: 0;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
.a-brand .mt .brand {
|
||||
display: block;
|
||||
font-size: 33rpx;
|
||||
height: 43rpx;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.a-brand .mt .price, .a-brand .mt .unit {
|
||||
font-size: 25rpx;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.a-brand .item-1 {
|
||||
float: left;
|
||||
width: 375rpx;
|
||||
height: 252rpx;
|
||||
overflow: hidden;
|
||||
border-top: 1rpx solid #fff;
|
||||
margin-left: 1rpx;
|
||||
}
|
||||
|
||||
.a-brand .item-1:nth-child(2n+1) {
|
||||
margin-left: 0;
|
||||
width: 374rpx;
|
||||
}
|
||||
|
||||
.a-brand .item-1 .img {
|
||||
width: 375rpx;
|
||||
height: 253rpx;
|
||||
}
|
||||
|
||||
.a-coupon {
|
||||
width: 750rpx;
|
||||
height: auto;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.a-coupon .b .item {
|
||||
position: relative;
|
||||
height: 200rpx;
|
||||
width: 700rpx;
|
||||
background: linear-gradient(to right, #cfa568, #e3bf79);
|
||||
margin-bottom: 10rpx;
|
||||
margin-left: 30rpx;
|
||||
margin-right: 30rpx;
|
||||
padding-top: 30rpx;
|
||||
}
|
||||
|
||||
.a-coupon .b .tag {
|
||||
height: 32rpx;
|
||||
background: #a48143;
|
||||
padding-left: 16rpx;
|
||||
padding-right: 16rpx;
|
||||
position: absolute;
|
||||
left: 20rpx;
|
||||
color: #fff;
|
||||
top: 20rpx;
|
||||
font-size: 20rpx;
|
||||
text-align: center;
|
||||
line-height: 32rpx;
|
||||
}
|
||||
|
||||
.a-coupon .b .content {
|
||||
margin-top: 24rpx;
|
||||
margin-left: 40rpx;
|
||||
display: flex;
|
||||
margin-right: 40rpx;
|
||||
flex-direction: row;
|
||||
}
|
||||
|
||||
.a-coupon .b .content .left {
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
.a-coupon .b .discount {
|
||||
font-size: 50rpx;
|
||||
color: #b4282d;
|
||||
}
|
||||
|
||||
.a-coupon .b .min {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.a-coupon .b .content .right {
|
||||
width: 400rpx;
|
||||
}
|
||||
|
||||
.a-coupon .b .name {
|
||||
font-size: 44rpx;
|
||||
color: #fff;
|
||||
margin-bottom: 14rpx;
|
||||
}
|
||||
|
||||
.a-coupon .b .desc {
|
||||
font-size: 24rpx;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.a-coupon .b .time {
|
||||
font-size: 24rpx;
|
||||
color: #fff;
|
||||
line-height: 30rpx;
|
||||
}
|
||||
|
||||
.a-groupon {
|
||||
width: 750rpx;
|
||||
height: auto;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.a-groupon .b .item {
|
||||
border-top: 1px solid #d9d9d9;
|
||||
margin: 0 20rpx;
|
||||
height: 244rpx;
|
||||
width: 710rpx;
|
||||
}
|
||||
|
||||
.a-groupon .b .img {
|
||||
margin-top: 12rpx;
|
||||
margin-right: 12rpx;
|
||||
float: left;
|
||||
width: 220rpx;
|
||||
height: 220rpx;
|
||||
}
|
||||
|
||||
.a-groupon .b .right {
|
||||
float: left;
|
||||
height: 244rpx;
|
||||
width: 476rpx;
|
||||
display: flex;
|
||||
flex-flow: row nowrap;
|
||||
}
|
||||
|
||||
.a-groupon .b .text {
|
||||
display: flex;
|
||||
flex-wrap: nowrap;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
overflow: hidden;
|
||||
height: 244rpx;
|
||||
width: 476rpx;
|
||||
}
|
||||
|
||||
.a-groupon .b .name {
|
||||
float: left;
|
||||
display: block;
|
||||
color: #333;
|
||||
line-height: 50rpx;
|
||||
font-size: 30rpx;
|
||||
}
|
||||
|
||||
.a-groupon .b .desc {
|
||||
width: 476rpx;
|
||||
display: block;
|
||||
color: #999;
|
||||
line-height: 50rpx;
|
||||
font-size: 25rpx;
|
||||
}
|
||||
|
||||
.a-groupon .b .price {
|
||||
width: 476rpx;
|
||||
display: flex;
|
||||
color: #ab956d;
|
||||
line-height: 50rpx;
|
||||
font-size: 33rpx;
|
||||
}
|
||||
|
||||
.a-groupon .b .counterPrice {
|
||||
text-decoration: line-through;
|
||||
font-size: 28rpx;
|
||||
color: #999;
|
||||
}
|
||||
|
||||
.a-groupon .b .retailPrice {
|
||||
margin-left: 30rpx;
|
||||
font-size: 28rpx;
|
||||
color: #a78845;
|
||||
}
|
||||
|
||||
.a-new .b {
|
||||
width: 750rpx;
|
||||
height: auto;
|
||||
overflow: hidden;
|
||||
padding: 0 31rpx 45rpx 31rpx;
|
||||
}
|
||||
|
||||
.a-new .b .item {
|
||||
float: left;
|
||||
width: 302rpx;
|
||||
margin-top: 10rpx;
|
||||
margin-left: 21rpx;
|
||||
margin-right: 21rpx;
|
||||
}
|
||||
|
||||
.a-new .b .item-b {
|
||||
margin-left: 42rpx;
|
||||
}
|
||||
|
||||
.a-new .b .img {
|
||||
width: 302rpx;
|
||||
height: 302rpx;
|
||||
border-radius: 10rpx;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.a-new .b .name {
|
||||
text-align: center;
|
||||
display: block;
|
||||
width: 302rpx;
|
||||
height: 35rpx;
|
||||
margin-bottom: 14rpx;
|
||||
overflow: hidden;
|
||||
font-size: 30rpx;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.a-new .b .price {
|
||||
display: block;
|
||||
text-align: center;
|
||||
line-height: 30rpx;
|
||||
font-size: 30rpx;
|
||||
color: #ab956d;
|
||||
}
|
||||
|
||||
.a-popular {
|
||||
width: 750rpx;
|
||||
height: auto;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.a-popular .b .item {
|
||||
border-top: 1px solid #d9d9d9;
|
||||
margin: 0 20rpx;
|
||||
height: 264rpx;
|
||||
width: 710rpx;
|
||||
}
|
||||
|
||||
.a-popular .b .img {
|
||||
margin-top: 12rpx;
|
||||
margin-right: 12rpx;
|
||||
float: left;
|
||||
width: 240rpx;
|
||||
height: 240rpx;
|
||||
border-radius: 10rpx;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.a-popular .b .right {
|
||||
float: left;
|
||||
height: 264rpx;
|
||||
width: 456rpx;
|
||||
display: flex;
|
||||
flex-flow: row nowrap;
|
||||
}
|
||||
|
||||
.a-popular .b .text {
|
||||
display: flex;
|
||||
flex-wrap: nowrap;
|
||||
flex-direction: column;
|
||||
justify-content: center;
|
||||
overflow: hidden;
|
||||
height: 264rpx;
|
||||
width: 456rpx;
|
||||
}
|
||||
|
||||
.a-popular .b .name {
|
||||
width: 456rpx;
|
||||
display: block;
|
||||
color: #333;
|
||||
line-height: 50rpx;
|
||||
font-size: 30rpx;
|
||||
}
|
||||
|
||||
.a-popular .b .desc {
|
||||
width: 456rpx;
|
||||
display: block;
|
||||
color: #999;
|
||||
line-height: 50rpx;
|
||||
font-size: 25rpx;
|
||||
}
|
||||
|
||||
.a-popular .b .price {
|
||||
width: 456rpx;
|
||||
display: block;
|
||||
color: #ab956d;
|
||||
line-height: 50rpx;
|
||||
font-size: 33rpx;
|
||||
}
|
||||
|
||||
.a-topic .b {
|
||||
height: 533rpx;
|
||||
width: 750rpx;
|
||||
padding: 0 0 48rpx 0;
|
||||
}
|
||||
|
||||
.a-topic .b .list {
|
||||
height: 533rpx;
|
||||
width: 750rpx;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
.a-topic .b .item {
|
||||
display: inline-block;
|
||||
height: 533rpx;
|
||||
width: 680.5rpx;
|
||||
margin-left: 30rpx;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.a-topic .b .item:last-child {
|
||||
margin-right: 30rpx;
|
||||
}
|
||||
|
||||
.a-topic .b .img {
|
||||
height: 387.5rpx;
|
||||
width: 680.5rpx;
|
||||
margin-bottom: 30rpx;
|
||||
}
|
||||
|
||||
.a-topic .b .np {
|
||||
height: 35rpx;
|
||||
margin-bottom: 13.5rpx;
|
||||
color: #333;
|
||||
font-size: 30rpx;
|
||||
}
|
||||
|
||||
.a-topic .b .np .price {
|
||||
margin-left: 20.8rpx;
|
||||
color: #ab956d;
|
||||
}
|
||||
|
||||
.a-topic .b .desc {
|
||||
display: block;
|
||||
height: 30rpx;
|
||||
color: #999;
|
||||
font-size: 24rpx;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
.good-grid {
|
||||
width: 750rpx;
|
||||
height: auto;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.good-grid .h {
|
||||
display: flex;
|
||||
flex-flow: row nowrap;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
height: 130rpx;
|
||||
font-size: 33rpx;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.good-grid .b {
|
||||
width: 750rpx;
|
||||
padding: 0 6.25rpx;
|
||||
height: auto;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.good-grid .b .item {
|
||||
float: left;
|
||||
background: #fff;
|
||||
width: 365rpx;
|
||||
margin-bottom: 6.25rpx;
|
||||
height: 452rpx;
|
||||
overflow: hidden;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.good-grid .b .item .a {
|
||||
height: 452rpx;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.good-grid .b .item-b {
|
||||
margin-left: 6.25rpx;
|
||||
}
|
||||
|
||||
.good-grid .item .img {
|
||||
margin-top: 20rpx;
|
||||
width: 302rpx;
|
||||
height: 302rpx;
|
||||
}
|
||||
|
||||
.good-grid .item .name {
|
||||
display: block;
|
||||
width: 365.625rpx;
|
||||
padding: 0 20rpx;
|
||||
overflow: hidden;
|
||||
height: 35rpx;
|
||||
margin: 11.5rpx 0 22rpx 0;
|
||||
text-align: center;
|
||||
font-size: 30rpx;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.good-grid .item .price {
|
||||
display: block;
|
||||
width: 365.625rpx;
|
||||
height: 30rpx;
|
||||
text-align: center;
|
||||
font-size: 30rpx;
|
||||
color: #ab956d;
|
||||
}
|
||||
|
||||
.good-grid .t {
|
||||
height: 100rpx;
|
||||
background: #fff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
.search {
|
||||
height: 88rpx;
|
||||
width: 100%;
|
||||
padding: 0 30rpx;
|
||||
background: #fff;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.search .van-icon-search {
|
||||
line-height: 59rpx;
|
||||
}
|
||||
|
||||
.search .input {
|
||||
width: 690rpx;
|
||||
height: 56rpx;
|
||||
background: #ededed;
|
||||
border-radius: 8rpx;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.search .txt {
|
||||
height: 42rpx;
|
||||
line-height: 42rpx;
|
||||
color: #666;
|
||||
padding-left: 10rpx;
|
||||
font-size: 30rpx;
|
||||
}
|
||||
|
||||
.bottom-btn {
|
||||
position: fixed;
|
||||
float: middle;
|
||||
left: 0;
|
||||
bottom: 0;
|
||||
z-index: 10;
|
||||
width: 100%;
|
||||
height: 100rpx;
|
||||
display: flex;
|
||||
background: #fff;
|
||||
margin-bottom: 50rpx;
|
||||
margin-right: 100rpx;
|
||||
}
|
||||
.bottom-btn .c {
|
||||
float: middle;
|
||||
background: #7232dd;
|
||||
height: 80rpx;
|
||||
line-height: 80rpx;
|
||||
flex: 1;
|
||||
text-align: center;
|
||||
color: #fff;
|
||||
border-radius: 30px 30px 30px 30px;
|
||||
margin-right: 50rpx;
|
||||
margin-left: 50rpx;
|
||||
}
|
||||
|
||||
.bottom-btn .l {
|
||||
float: left;
|
||||
height: 100rpx;
|
||||
width: 162rpx;
|
||||
border: 1px solid #f4f4f4;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
.bottom-btn .l.l-collect {
|
||||
border-right: none;
|
||||
border-left: none;
|
||||
text-align: center;
|
||||
width: 90rpx;
|
||||
}
|
||||
|
||||
.bottom-btn .l.l-collect .icon {
|
||||
position: absolute;
|
||||
top: 28rpx;
|
||||
left: 20rpx;
|
||||
font-size: 44rpx;
|
||||
}
|
||||
|
||||
.bottom-btn .l.l-kefu {
|
||||
position: relative;
|
||||
height: 54rpx;
|
||||
width: 63rpx;
|
||||
}
|
||||
|
||||
.bottom-btn .l.l-cart .box {
|
||||
position: relative;
|
||||
height: 60rpx;
|
||||
width: 60rpx;
|
||||
|
||||
}
|
||||
|
||||
.bottom-btn .l.l-cart .cart-count {
|
||||
height: 28rpx;
|
||||
width: 28rpx;
|
||||
z-index: 10;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
background: #7232dd;
|
||||
text-align: center;
|
||||
font-size: 18rpx;
|
||||
color: #fff;
|
||||
line-height: 28rpx;
|
||||
border-radius: 50%;
|
||||
}
|
||||
|
||||
.bottom-btn .l.l-cart .icon {
|
||||
position: absolute;
|
||||
top: 10rpx;
|
||||
left: 0;
|
||||
font-size: 44rpx;
|
||||
}
|
||||
|
||||
|
||||
|
||||
.bottom-btn .r {
|
||||
border: 1px solid #CCB5F2;
|
||||
background: #CCB5F2;
|
||||
float: left;
|
||||
height: 100rpx;
|
||||
line-height: 96rpx;
|
||||
flex: 1;
|
||||
text-align: center;
|
||||
color: #fff;
|
||||
border-radius: 15px 0px 0px 15px;
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user