Compare commits

...

2 Commits

Author SHA1 Message Date
Teng 3c0c254e41 Merge branch 'main' of http://47.115.223.229:8888/yangjun/hldy_app_mini 2025-11-11 17:29:23 +08:00
Teng d4b864470b mini 稳定版 2025-11-11 17:28:41 +08:00
164 changed files with 741 additions and 225 deletions

View File

@ -1,6 +1,6 @@
<template>
<view class="zy-modal" :class="dshow?'show':''">
<view style="position: absolute;top: 300rpx;left: 1040rpx;z-index: 9999;" >
<view style="position: absolute;top: 150rpx;left: 940rpx;z-index: 9999;" >
<image style="width: 300rpx;height: 400rpx;position: absolute;top: 0rpx;left: 0rpx;" src="/static/index/update/fly.png" />
</view>
<view class="zy-dialog" style="background-color: #fff;border-radius: 40rpx;">
@ -140,7 +140,7 @@
method: 'GET',
dataType:'json',
success: (res) => {
// console.log("?????",res.data.code)
console.log("?????",res)
// this.$emit('chuandinew',this.updated2version)
if(res.statusCode===404){
return

View File

@ -2,8 +2,8 @@
"name" : "护理单元",
"appid" : "__UNI__FB2D473",
"description" : "护理单元",
"versionName" : "1.7.3",
"versionCode" : 173,
"versionName" : "1.0.004",
"versionCode" : 10004,
"transformPx" : false,
/* 5+App */
"app-plus" : {
@ -63,7 +63,8 @@
"appid" : "wxda748470da82886e",
"UniversalLinks" : ""
}
}
},
"allowOldSDK" : true
},
"icons" : {
"android" : {

View File

@ -1821,7 +1821,7 @@
margin-top: 10rpx;
/* background-color: red; */
overflow: hidden;
z-index: 9999;
z-index: 999;
/* background: linear-gradient(to bottom, #c4dbf4, #c9c2ef, #c6dcf3); */
/* border-bottom: 2rpx solid #fff; */
/* border-left: 2rpx solid #fff; */

View File

@ -458,10 +458,9 @@
{{item1.serviceDuration + "分钟"}}
</view>
<image class="title-time-button" style="width: 80rpx;height: 48rpx;"
v-if="item1.cycleType!='日常'" src="/static/index/newruler/jiao.png" />
<view class="title-time-font" style="right: 10rpx;top: 5rpx;font-size: 23rpx;"
v-if="item1.cycleType!='日常'">
{{ item1.cycleType == '1' ? '日常' : item1.cycleType == '2' ? '周期' : '即时' }}
src="/static/index/newruler/jiao.png" />
<view class="title-time-font" style="right: 10rpx;top: 5rpx;font-size: 23rpx;">
{{ item1.cycleType?item1.cycleType:"日常" }}
</view>
</view>
<view class="title-time-font-rel">
@ -550,16 +549,16 @@
<view class="title-time" style="flex-direction: column;">
<image style="width: 60rpx;height: 60rpx;margin: 0 auto;margin-top: 10rpx"
:src="timearr[saveEditIndex.index0].children[saveEditIndex.index1].netImmediateFile" />
:src="timearr[saveEditIndex.index0].children[saveEditIndex.index1].netImmediateFile?timearr[saveEditIndex.index0].children[saveEditIndex.index1].netImmediateFile:`/static/logo.png`" />
<view class="title-time-time" style="font-size: 30rpx;">
{{timearr[saveEditIndex.index0].children[saveEditIndex.index1].startTime + `-` + timearr[saveEditIndex.index0].children[saveEditIndex.index1].endTime}}
</view>
<image class="title-time-button" style="width: 80rpx;height: 48rpx;"
v-if="timearr[saveEditIndex.index0].children[saveEditIndex.index1].cycleType!='日常'"
v-if="timearr[saveEditIndex.index0].children[saveEditIndex.index1].cycleType"
src="/static/index/newruler/jiao.png" />
<view class="title-time-font" style="right: 10rpx;top: 5rpx;font-size: 23rpx;"
v-if="timearr[saveEditIndex.index0].children[saveEditIndex.index1].cycleType!='日常'">
{{ timearr[saveEditIndex.index0].children[saveEditIndex.index1].cycleType == '1' ? '日常' : timearr[saveEditIndex.index0].children[saveEditIndex.index1].cycleType == '2' ? '周期' : '即时' }}
v-if="timearr[saveEditIndex.index0].children[saveEditIndex.index1].cycleType">
{{ timearr[saveEditIndex.index0].children[saveEditIndex.index1].cycleType }}
</view>
</view>
<view class="title-time-font-rel">
@ -934,9 +933,6 @@
})
//
const secondtemp = ref([])
onMounted(() => {
})
//
const lastTap = ref(0)
// ms
@ -961,6 +957,12 @@
//
const getNew = () => {
if (flyNumber.value.index0 === saveEditIndex.value.index0 && flyNumber.value.index1 === saveEditIndex.value.index1) {
isMove.value = false;
flyNumber.value.index0 = -1;
flyNumber.value.index1 = -1;
return
}
if (timearr.value[saveEditIndex.value.index0].children[saveEditIndex.value.index1].id) {
deleteDirective({ id: timearr.value[saveEditIndex.value.index0].children[saveEditIndex.value.index1].id }).then((res : any) => {
doChangeNew()
@ -1686,7 +1688,7 @@
const addnew = () => {
// console.log("9999", timearr.value[saveEditIndex.value.index0].children[saveEditIndex.value.index1])
if (isDelete.value) {
isDelete.value = false;
deleteRuler(saveEditIndex.value.index0, saveEditIndex.value.index1);
@ -1702,7 +1704,7 @@
}
// return
if (iszhiling.value) {
let allobject = savePackagelist.value[forthmenuIndex.value];
// console.log("special",allobject)
@ -1782,7 +1784,7 @@
let stopIt = false;
let allobject = bigArray.value[upmenuIndex.value].children[downmenuIndex.value].children[thirdmenuIndex.value]
if (allobject.cycleType === "即时护理") {
scrollLeft.value = 1;
bottomItems.value.forEach((element : any, index : number) => {
@ -1801,18 +1803,18 @@
pushValue.directiveId = allobject.id;
pushValue.directiveName = allobject.title;
pushValue.serviceDuration = allobject.serviceDuration;
pushValue.target = `#03a4ff`
pushValue.id = ""
pushValue.nuId = uni.getStorageSync('nuId'),
pushValue.nuName = uni.getStorageSync('nuName'),
pushValue.customerId = uni.getStorageSync('customerId'),
pushValue.customerName = uni.getStorageSync('NUall').elderInfo.name,
bottomItems.value.unshift(pushValue)
pushValue.nuId = uni.getStorageSync('nuId');
pushValue.nuName = uni.getStorageSync('nuName');
pushValue.customerId = uni.getStorageSync('customerId');
pushValue.customerName = uni.getStorageSync('NUall').elderInfo.name;
bottomItems.value.unshift(pushValue)
//
cleansettimeout.value = setTimeout(() => {
bottomItems.value[0].target = `#fff`;
// saveAll()
// console.log("",pushValue)
addInstant(pushValue).then((res : any) => {
if (res.success) {
geteverything()
@ -2047,8 +2049,9 @@
res.result.serviceList.forEach((res : any) => {
timearr.value[res.positioning].children[res.positioningLong] = res;
})
// console.log("", res.result.serviceList)
console.log("返回了", res.result)
bottomItems.value = res.result.instantList
// console.log("",bottomItems.value)
cansumit.value = true;
emotionTagList.value = res.result.emotionTagList;
emotionTagListLook.value = []

View File

@ -586,12 +586,9 @@
scrollnum.value = e.detail.scrollTop;
}
const queryInvo = () => {
// console.log("form", form)
queryCgdInfoList(form).then(res => {
InvoicingList.value.push(...res.result.records);
detailform.wlId = InvoicingList.value[0].wlId
status.value = res.result.total == InvoicingList.value.length ? 'nomore' : 'loadmore';
})

View File

@ -9,8 +9,10 @@
</view>
</view>
<view class="left-menu-father">
<scroll-view scroll-y="true" scroll-with-animation class="left-menu-scroll" :scroll-top="leftscrolltop" @scrolltolower="plsbuytolower" :lower-threshold="400">
<view class="pls-card" v-for="(v,i) in plsbuy" :key='i' @click="clickLeftMenu(i)" :style="{borderColor: i==lefttarget? ``:`#fff` }" >
<scroll-view scroll-y="true" scroll-with-animation class="left-menu-scroll" :scroll-top="leftscrolltop"
@scrolltolower="plsbuytolower" :lower-threshold="400">
<view class="pls-card" v-for="(v,i) in plsbuy" :key='i' @click="clickLeftMenu(i)"
:style="{borderColor: i==lefttarget? ``:`#fff` }">
<view class="pls-card-title">
<view class="title-left">
{{ v.cgdNo }}
@ -19,13 +21,13 @@
<text style="position: absolute;bottom: 4rpx;left: -30rpx;">
</text>
<view class="title-right-big">
{{ v.totalPrice }}
</view>
<image class="title-right-img" src="/static/more.png" />
</view>
</view>
<view class="pls-card-middle">
@ -34,16 +36,19 @@
2025.10.03
</view>
<view class="middle-heng-father">
<view class="middle-heng" style="border-top-left-radius: 20rpx;border-bottom-left-radius: 20rpx;"></view>
<view class="middle-heng" style="border-radius: 20rpx;background-color: #1083F8;"></view>
<view class="middle-ball" style="background-color: #1083F8;"></view>
<view class="middle-heng"
style="border-top-left-radius: 20rpx;border-bottom-left-radius: 20rpx;"></view>
<view class="middle-heng" v-if="Number(v.status)<3 "
style="border-radius: 20rpx;background-color: #1083F8;"></view>
<view class="middle-ball"
:style="Number(v.status)<3?{backgroundColor: `#1083F8`}:{} "></view>
</view>
<view class="end-font">
<view class="" style="color: #1083F8;">
<view class="" :style="Number(v.status)<3?{color: `#1083F8`}:{} ">
采购
</view>
<view class="">
[ 梁嘉豪 ]
[ {{ v.createBy_dictText }} ]
</view>
</view>
</view>
@ -53,10 +58,16 @@
</view>
<view class="middle-heng-father">
<view class="middle-heng"></view>
<view class="middle-ball"></view>
<view class="middle-heng" v-if="Number(v.status)<3 && Number(v.status)>0 "
style="border-radius: 20rpx;background-color: #1083F8;width: 105%;margin-left: -5%;">
</view>
<view class="middle-ball"
:style="Number(v.status)<3 && Number(v.status)>0?{backgroundColor: `#1083F8`}:{} ">
</view>
</view>
<view class="end-font">
<view class="">
<view class=""
:style="Number(v.status)<3 && Number(v.status)>0?{color: `#1083F8`}:{} ">
拣货
</view>
<view class="">
@ -69,11 +80,19 @@
<!-- 2025.10.03 -->
</view>
<view class="middle-heng-father">
<view class="middle-heng" style="border-top-right-radius: 20rpx;border-bottom-right-radius: 20rpx;"></view>
<view class="middle-ball"></view>
<view class="middle-heng"
style="border-top-right-radius: 20rpx;border-bottom-right-radius: 20rpx;">
</view>
<view class="middle-heng" v-if="Number(v.status)<3 && Number(v.status)>1 "
style="border-radius: 20rpx;background-color: #1083F8;width: 105%;margin-left: -5%;">
</view>
<view class="middle-ball"
:style="Number(v.status)<3 && Number(v.status)>1?{backgroundColor: `#1083F8`}:{} ">
</view>
</view>
<view class="end-font">
<view class="">
<view class=""
:style="Number(v.status)<3 && Number(v.status)>1?{color: `#1083F8`}:{} ">
完结
</view>
<view class="">
@ -89,17 +108,182 @@
{{ v.gysName }}
</view>
</view>
<view :class="v?.cgdType=='9' ?`tag-fail`:`tag-success`" >
<view :class="v?.cgdType=='9' ?`tag-fail`:`tag-success`">
{{ v?.cgdType=='9' ?`已作废`:`已确定` }}
</view>
</view>
</view>
</scroll-view>
</view>
</view>
<view class="white-zhezhao"></view>
<view class="contain-right">
<view class="contain-right-title">
<view class="contain-right-button" style="border-color: #D9DADC;box-shadow: 0 1rpx 3rpx #D9DADC;">
<image class="buttont-img" src="/static/index/purchaseorder/select.png" />
<view class="button-font">
筛选
</view>
</view>
<view class="contain-right-button" @click="goback()">
<image class="buttont-img" style="margin-top: 4rpx;" src="/static/index/purchaseorder/back.png" />
<view class="button-font">
返回
</view>
</view>
</view>
<view class="contain-right-middle">
<scroll-view scroll-y="true" class="middle-Y" @scrolltolower="getmore">
<view class="middle-Y-father">
<view class="middle-one" v-for="(v,i) in InvoicingList" :key='i'
:style="{border: middletarget === i? '4rpx dashed #1083F8': '4rpx solid transparent'}"
@click="clickmiddle(i)">
<image class="middle-img"
:src="v.materialImg?serverUrl + v.materialImg : '/static/index/warehouse/procurement/k.png'"
mode="aspectFill"></image>
<view class="middle-right">
<view class="right-title">
{{ v.wlName }}
</view>
<view class="right-middle">
{{ v.wlSpecificationModel }}
</view>
<view style="color: #888888;">
采购数量: {{ v.kcsl + v.wlUnits }}
</view>
</view>
</view>
</view>
</scroll-view>
<view class="wuliao-title">
物料详情
<view class="wuliao-heng"></view>
</view>
<view class="right-bottom">
<view class="right-bottom-left">
<image class="left-img"
:src="showvalue?.materialImg?serverUrl + showvalue?.materialImg : '/static/index/warehouse/procurement/k.png'"
mode="aspectFill"></image>
<view class="left-tags">
<view class="tags-one">
{{ showvalue?.categoryId_dictText }}
</view>
<view class="tags-one">
{{ showvalue?.typeId_dictText }}
</view>
<view class="tags-one">
{{ showvalue?.tagName }}
</view>
</view>
</view>
<view class="right-bottom-right">
<view class="bottom-right-title">
<view class="title-left">
{{ showvalue?.wlName }}
</view>
<view class="title-right">
<text
style="position: absolute;top: 8rpx;left: -35rpx;font-weight: 300;font-size: 28rpx;">
</text>
{{ (showvalue?.procurementPrice * showvalue?.purchaseQuantity).toFixed(2) }}
</view>
</view>
<view class="bottom-right-middle">
<view class="middle-onecard">
<view class="threeone">
<view class="gray-text">
物料编号
</view>
<view class="right-text">
{{ showvalue?.wlMaterialNo }}
</view>
</view>
<view class="threeone">
<view class="gray-text">
规格型号
</view>
<view class="right-text">
{{ showvalue?.wlSpecificationModel }}
</view>
</view>
<view class="gray-heng"></view>
</view>
<view class="middle-onecard">
<view class="threeone">
<view class="gray-text">
采购单价
</view>
<view class="right-text">
{{ showvalue?.procurementPrice }}
</view>
</view>
<view class="threeone">
<view class="gray-text">
采购数量
</view>
<view class="right-text">
{{ showvalue?.purchaseQuantity }}
</view>
</view>
<view class="threeone">
<view class="gray-text">
采购单位
</view>
<view class="right-text">
{{ showvalue?.wlUnits }}
</view>
</view>
<view class="gray-heng"></view>
</view>
<!-- <view class="gray-heng"></view> -->
<view class="middle-onecard">
<view class="threeone">
<view class="gray-text">
库存数量
</view>
<view class="right-text">
{{ showvalue?.kcsl }}
</view>
</view>
<view class="threeone">
<view class="gray-text">
物料上限
</view>
<view class="right-text">
{{ showvalue?.wlUpperLimit }}
</view>
</view>
<view class="threeone">
<view class="gray-text">
物料下限
</view>
<view class="right-text">
{{ showvalue?.wlLowerLimit }}
</view>
</view>
<view class="gray-heng"></view>
</view>
<!-- <view class="gray-heng"></view> -->
<view class="middle-onecard">
<view class="threeone" style="width: 100%;">
<view class="gray-text">
供应商
</view>
<view class="right-text">
{{ showvalue?.suppliersName }}
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</view>
</template>
@ -110,12 +294,17 @@
import { onShow, onLoad, onHide, onPageScroll } from "@dcloudio/uni-app"
import shadowview from './components/ShadowView.vue';
import calculator from './components/calculator.vue';
onMounted(()=>{
firstgetqueryCgdList()
const serverUrl = ref("")
onLoad(() => {
firstgetqueryCgdList();
serverUrl.value = uni.getStorageSync('serverUrl') + '/sys/common/static/';
})
const searchValue = ref("")
const searchValue = ref("");
const middletarget = ref(0);
const plzinfo = reactive({
pageNo: 1,
@ -129,12 +318,18 @@
const firstgetqueryCgdList = () => {
queryCgdList(plzinfo).then((res : any) => {
plsbuy.value.push(...res.result.records)
console.log("plsbuy",plsbuy.value)
if (res.result.records.length) {
form.cgdId = plsbuy.value[0].id
queryInvo();
}
if (res.result.records.length < plzinfo.pageSize) {
plzinfo.canpull = false;
}
})
}
const setout = ref(true)
let times = null
const plsbuytolower = () => {
@ -152,17 +347,93 @@
queryCgdList(plzinfo).then((res : any) => {
// console.log("", res.result.records)
plsbuy.value.push(...res.result.records)
// console.log("records",...res.result.records)
if (res.result.records.length < plzinfo.pageSize) {
plzinfo.canpull = false;
}
})
}
const lefttarget = ref(0);
const clickLeftMenu = (index:any) => {
const clickLeftMenu = (index : any) => {
let num = Math.ceil((index + 1))
leftscrolltop.value = (num - 2) * 186;
lefttarget.value = index
lefttarget.value = index;
form.cgdId = plsbuy.value[index].id
queryCgdInfoList(form).then(res => {
// console.log("zzz",form)
InvoicingList.value = []
InvoicingList.value.push(...res.result.records);
if (form.pageNo) {
clickmiddle(0);
}
})
}
const showvalue = ref({
materialImg: ""
})
const goback = () => {
uni.navigateBack()
}
const form = reactive({
nuId: '',
pageNo: 1,
pageSize: 9,
categoryId: '',
typeId: '',
medicationId: '',
wlParamInfo: '',
cgdId: "",
isWaring: 0,
canpull:true
})
const mobanform = {
nuId: '',
pageNo: 1,
pageSize: 9,
categoryId: '',
typeId: '',
medicationId: '',
wlParamInfo: '',
cgdId: "",
isWaring: 0
}
const clickmiddle = (index : number) => {
middletarget.value = index;
showvalue.value = InvoicingList.value[index];
Object.assign(form, mobanform)
}
const InvoicingList = ref([])
const queryInvo = () => {
queryCgdInfoList(form).then(res => {
InvoicingList.value.push(...res.result.records);
// console.log("", res.result.records)
clickmiddle(0);
})
}
const getmore = () => {
if(form.canpull){
form.pageNo ++
queryCgdInfoList(form).then(res => {
InvoicingList.value.push(...res.result.records);
if(res.result.records.length!=10){
form.canpull = false
}
})
}
}
// const getMaterial = () => {
// getCgdMaterialTreeData(form).then(res => {
// // console.log(form)
// // console.log(res)
// // TreeData.value = res.result;
// console.log("TreeData.value",res)
// })
// }
</script>
<style lang="less" scoped>
@ -211,14 +482,15 @@
}
.left-menu-father {
margin-top: 2vh;
margin-top: 1.3vh;
width: 100%;
height: 84vh;
.left-menu-scroll {
height: 100%;
width: 100%;
.pls-card{
.pls-card {
width: 100%;
height: 26.5vh;
border: #0f9fff 3rpx solid;
@ -226,28 +498,32 @@
border-radius: 40rpx;
margin-bottom: 2vh;
padding: 0 30rpx;
.pls-card-title{
.pls-card-title {
height: 7vh;
width: 100%;
display: flex;
justify-content: space-between;
align-items: flex-end;
.title-left{
.title-left {
font-weight: 600;
font-size: 32rpx;
}
.title-right{
.title-right {
display: flex;
align-items: flex-end;
font-size: 30rpx;
position: relative;
.title-right-big{
.title-right-big {
font-weight: 600;
font-size: 40rpx;
margin-right: 35rpx;
}
.title-right-img{
.title-right-img {
position: absolute;
right: -10rpx;
bottom: 6rpx;
@ -256,17 +532,20 @@
}
}
}
.pls-card-middle{
.pls-card-middle {
width: 100%;
height: 11vh;
margin-top: 1vh;
// background-color: blue;
display: flex;
.pls-card-middle-one{
.pls-card-middle-one {
width: 33.3%;
height: 100%;
// background-color: yellow;
.middle-title{
.middle-title {
width: 100%;
height: 2vh;
// background-color: #007CFF;
@ -274,11 +553,13 @@
text-align: center;
font-size: 25rpx;
}
.middle-heng-father{
.middle-heng-father {
width: 100%;
height: 4vh;
position: relative;
.middle-heng{
.middle-heng {
width: 100%;
height: 1vh;
position: absolute;
@ -286,56 +567,65 @@
top: 50%;
transform: translateY(-50%);
background-color: #EEEEEE;
}
.middle-ball{
.middle-ball {
width: 30rpx;
height: 30rpx;
background-color: #EEEEEE;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
transform: translate(-50%, -50%);
border-radius: 50%;
}
}
.end-font{
.end-font {
width: 100%;
height: 5vh;
height: 6vh;
text-align: center;
color: #666666;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
}
}
.pls-card-end{
.pls-card-end {
width: 100%;
height: 7vh;
display: flex;
justify-content: space-between;
position: relative;
.end-left{
.end-left {
height: 100%;
display: flex;
align-items: center;
.end-left-img{
.end-left-img {
width: 30rpx;
height: 30rpx;
}
.end-left-font{
.end-left-font {
margin-top: 3rpx;
width: 400rpx;
// background-color: #007CFF;
// font-size: 26rpx;
color: #666666;
margin-left: 10rpx;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
}
.tag-fail{
.tag-fail {
width: 120rpx;
height: 50rpx;
border-radius: 30rpx;
@ -348,7 +638,8 @@
right: -5rpx;
bottom: 20rpx;
}
.tag-success{
.tag-success {
width: 120rpx;
height: 50rpx;
border-radius: 30rpx;
@ -368,9 +659,225 @@
}
.contain-right {
z-index: 1;
height: 95vh;
width: 70%;
margin-left: 2%;
overflow: hidden;
.contain-right-title {
width: 100%;
height: 80rpx;
display: flex;
justify-content: flex-end;
.contain-right-button {
display: flex;
justify-content: center;
align-items: center;
height: 100%;
padding: 0 40rpx;
border-radius: 40rpx;
border: 1rpx solid #555555;
margin-left: 20rpx;
.buttont-img {
width: 40rpx;
height: 40rpx;
margin-right: 10rpx;
// margin-top: 4rpx;
}
.button-font {
font-size: 30rpx;
color: #555555;
}
}
}
.contain-right-middle {
width: 100%;
height: 460rpx;
margin-top: 20rpx;
.middle-Y {
width: 100%;
height: 100%;
.middle-Y-father {
display: flex;
flex-wrap: wrap;
width: 100%;
padding-left: 20rpx;
.middle-one {
width: 440rpx;
height: 200rpx;
background-color: #F9F9F9;
border-radius: 30rpx;
margin-left: 20rpx;
margin-bottom: 30rpx;
display: flex;
align-items: center;
justify-content: space-around;
.middle-img {
width: 150rpx;
height: 150rpx;
}
.middle-right {
width: 250rpx;
.right-title {
width: 100%;
white-space: nowrap;
/* 不换行 */
overflow: hidden;
/* 超出隐藏 */
text-overflow: ellipsis;
/* 显示省略号 */
display: block;
font-weight: 600;
font-size: 30rpx;
margin-bottom: 7rpx;
}
.right-middle {
margin-bottom: 7rpx;
}
}
}
}
}
}
}
}
.white-zhezhao {
position: fixed;
height: 100%;
background-color: #fff;
width: 68%;
top: 0;
left: 32%;
}
.wuliao-title {
margin-top: 40rpx;
margin-left: 30rpx;
display: flex;
flex-direction: column;
align-items: center;
font-size: 32rpx;
font-weight: 600;
width: 200rpx;
.wuliao-heng {
background-color: #1083F8;
width: 40rpx;
height: 5rpx;
border-radius: 5rpx;
margin-top: 10rpx;
}
}
.right-bottom {
width: 100%;
height: 600rpx;
display: flex;
.right-bottom-left {
height: 100%;
width: 30%;
padding-left: 30rpx;
.left-img {
width: 300rpx;
height: 300rpx;
}
.left-tags {
width: 100%;
display: flex;
flex-wrap: wrap;
}
.tags-one {
width: 130rpx;
height: 60rpx;
display: flex;
justify-content: center;
align-items: center;
border-radius: 30rpx;
border: 1rpx solid #D2D2D2;
margin-left: 20rpx;
margin-top: 20rpx;
font-size: 25rpx;
color: #555555;
}
}
.right-bottom-right {
height: 100%;
width: 70%;
.bottom-right-title {
width: 100%;
height: 100rpx;
display: flex;
justify-content: space-between;
align-items: center;
// background-color: red;
.title-left {
font-weight: 600;
font-size: 35rpx;
}
.title-right {
font-weight: 600;
font-size: 35rpx;
position: relative;
margin-right: 20rpx;
}
}
.bottom-right-middle {
width: 100%;
.threeone {
width: 33%;
}
.middle-onecard {
width: 100%;
height: 120rpx;
display: flex;
position: relative;
.gray-text {
color: #999999;
margin-bottom: 3rpx;
font-size: 25rpx;
}
.right-text {
font-size: 32rpx;
}
}
}
}
}
.gray-heng {
position: absolute;
left: 0;
bottom: 20%;
background-color: #eff1f3;
height: 0.5rpx;
width: 80%;
}
</style>

View File

@ -60,7 +60,7 @@
uni.$on('fullmonitor:changeinit', (number) => {
this.$refs.monitor.initAutoPlay(number)
uni.setStorageSync('saveinit', number);
console.log("saveinit", number)
this.suo = true;
});
uni.$on('fullmonitor:isshow', (bool) => this.isshow = bool);
uni.$on('fullmonitor:killView', this.killView);

View File

@ -204,12 +204,12 @@
const getImg = () => {
if (/^\d{11}$/.test(form.username)) {
isRel(form.username).then((res : any) => {
console.log("6666",res.result)
// console.log("6666",res.result)
if (res.result.code == `0`) {
uni.setStorageSync('serverUrl', res.result.orgList[0].serverUrl);
uni.setStorageSync('orgList', res.result.orgList);
allserve.value = res.result.orgList
console.log("11111",allserve.value)
// console.log("11111",allserve.value)
time.value = Date.now();
getLoginCode(time.value).then((res : any) => {
@ -300,6 +300,7 @@
uni.setStorageSync('token', res.result.token);
uni.setStorageSync('username', form.username);
uni.setStorageSync('realname', res.result.userInfo.realname);
// huakuaiOK()
if (loading.value === 2) {
huakuaiOK()
} else {

View File

@ -1,6 +1,6 @@
// 全局请求封装
const base_url = 'https://www.focusnu.com/devopsapi'
// const base_url = 'http://192.168.2.26:8081/devopsapi'
// const base_url = 'http://192.168.2.22:8091/devopsapi'
// 请求超出时间
const timeout = 5000

View File

@ -1,6 +1,6 @@
// 全局请求封装
const base_url = 'https://www.focusnu.com/opeapi'
// const base_url = 'http://192.168.2.26:8081/opeapi'
// const base_url = 'http://192.168.2.22:8091/opeapi'
// 请求超出时间
const timeout = 5000

Binary file not shown.

After

Width:  |  Height:  |  Size: 660 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 964 B

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
{"@platforms":["android","iPhone","iPad"],"id":"__UNI__FB2D473","name":"护理单元","version":{"name":"1.7.3","code":173},"description":"护理单元","developer":{"name":"","email":"","url":""},"permissions":{"Share":{},"Camera":{},"VideoPlayer":{},"UniNView":{"description":"UniNView原生渲染"}},"plus":{"useragent":{"value":"uni-app","concatenate":true},"splashscreen":{"autoclose":true,"delay":0,"target":"id:1","waiting":true},"popGesture":"close","launchwebview":{"render":"always","id":"1","kernel":"WKWebview"},"usingComponents":true,"nvueStyleCompiler":"uni-app","compilerVersion":3,"distribute":{"icons":{"android":{"hdpi":"icon-android-hdpi.png","xhdpi":"icon-android-xhdpi.png","xxhdpi":"icon-android-xxhdpi.png","xxxhdpi":"icon-android-xxxhdpi.png"},"ios":{"appstore":"unpackage/res/icons/1024x1024.png","ipad":{"app":"unpackage/res/icons/76x76.png","app@2x":"unpackage/res/icons/152x152.png","notification":"unpackage/res/icons/20x20.png","notification@2x":"unpackage/res/icons/40x40.png","proapp@2x":"unpackage/res/icons/167x167.png","settings":"unpackage/res/icons/29x29.png","settings@2x":"unpackage/res/icons/58x58.png","spotlight":"unpackage/res/icons/40x40.png","spotlight@2x":"unpackage/res/icons/80x80.png"},"iphone":{"app@2x":"unpackage/res/icons/120x120.png","app@3x":"unpackage/res/icons/180x180.png","notification@2x":"unpackage/res/icons/40x40.png","notification@3x":"unpackage/res/icons/60x60.png","settings@2x":"unpackage/res/icons/58x58.png","settings@3x":"unpackage/res/icons/87x87.png","spotlight@2x":"unpackage/res/icons/80x80.png","spotlight@3x":"unpackage/res/icons/120x120.png"},"prerendered":"false"}},"google":{"abiFilters":["armeabi-v7a","arm64-v8a","x86"],"minSdkVersion":22,"permissions":["<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>","<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>","<uses-permission android:name=\"android.permission.VIBRATE\"/>","<uses-permission android:name=\"android.permission.READ_LOGS\"/>","<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>","<uses-feature android:name=\"android.hardware.camera.autofocus\"/>","<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>","<uses-permission android:name=\"android.permission.CAMERA\"/>","<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>","<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>","<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>","<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>","<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>","<uses-feature android:name=\"android.hardware.camera\"/>","<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>","<uses-permission android:name=\"android.permission.REQUEST_INSTALL_PACKAGES\"/>"],"packagename":"uni.app.UNIFB2D473","aliasname":"__uni__fb2d473","password":"Z4Urhm9jqwqMGoeQNpGzJA==","storepwd":"Z4Urhm9jqwqMGoeQNpGzJA==","keypwd":"Z4Urhm9jqwqMGoeQNpGzJA==","keystore":"google-keystore.keystore","custompermissions":true},"apple":{"dSYMs":false,"plistcmds":["Add :UIFileSharingEnabled bool true"],"devices":"universal"},"plugins":{"audio":{"mp3":{"description":"Android平台录音支持MP3格式文件"}},"share":{"weixin":{"UniversalLinks":"","appid":"wxda748470da82886e"}}},"debug":true,"syncDebug":true,"orientation":"portrait-primary"},"nativePlugins":{"MonitorModule":{}},"statusbar":{"immersed":"supportedDevice","style":"dark","background":"#F8F8F8"},"uniStatistics":{"enable":false},"allowsInlineMediaPlayback":true,"uni-app":{"control":"uni-v3","vueVersion":"3","compilerVersion":"4.85","nvueCompiler":"uni-app","renderer":"auto","nvue":{"flex-direction":"column"},"nvueLaunchMode":"normal","webView":{"minUserAgentVersion":"49.0"}},"adid":"122926210510"},"app-harmony":{"useragent":{"value":"uni-app","concatenate":true},"uniStatistics":{"enable":false}},"screenOrientation":["landscape-primary","landscape-secondary"],"launch_path":"__uniappview.html"}
{"@platforms":["android","iPhone","iPad"],"id":"__UNI__FB2D473","name":"护理单元","version":{"name":"1.0.002","code":10002},"description":"护理单元","developer":{"name":"","email":"","url":""},"permissions":{"Share":{},"Camera":{},"VideoPlayer":{},"UniNView":{"description":"UniNView原生渲染"}},"plus":{"useragent":{"value":"uni-app","concatenate":true},"splashscreen":{"autoclose":true,"delay":0,"target":"id:1","waiting":true},"popGesture":"close","launchwebview":{"render":"always","id":"1","kernel":"WKWebview"},"usingComponents":true,"nvueStyleCompiler":"uni-app","compilerVersion":3,"distribute":{"icons":{"android":{"hdpi":"icon-android-hdpi.png","xhdpi":"icon-android-xhdpi.png","xxhdpi":"icon-android-xxhdpi.png","xxxhdpi":"icon-android-xxxhdpi.png"},"ios":{"appstore":"unpackage/res/icons/1024x1024.png","ipad":{"app":"unpackage/res/icons/76x76.png","app@2x":"unpackage/res/icons/152x152.png","notification":"unpackage/res/icons/20x20.png","notification@2x":"unpackage/res/icons/40x40.png","proapp@2x":"unpackage/res/icons/167x167.png","settings":"unpackage/res/icons/29x29.png","settings@2x":"unpackage/res/icons/58x58.png","spotlight":"unpackage/res/icons/40x40.png","spotlight@2x":"unpackage/res/icons/80x80.png"},"iphone":{"app@2x":"unpackage/res/icons/120x120.png","app@3x":"unpackage/res/icons/180x180.png","notification@2x":"unpackage/res/icons/40x40.png","notification@3x":"unpackage/res/icons/60x60.png","settings@2x":"unpackage/res/icons/58x58.png","settings@3x":"unpackage/res/icons/87x87.png","spotlight@2x":"unpackage/res/icons/80x80.png","spotlight@3x":"unpackage/res/icons/120x120.png"},"prerendered":"false"}},"google":{"abiFilters":["armeabi-v7a","arm64-v8a","x86"],"minSdkVersion":22,"permissions":["<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>","<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>","<uses-permission android:name=\"android.permission.VIBRATE\"/>","<uses-permission android:name=\"android.permission.READ_LOGS\"/>","<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>","<uses-feature android:name=\"android.hardware.camera.autofocus\"/>","<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>","<uses-permission android:name=\"android.permission.CAMERA\"/>","<uses-permission android:name=\"android.permission.GET_ACCOUNTS\"/>","<uses-permission android:name=\"android.permission.READ_PHONE_STATE\"/>","<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>","<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>","<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>","<uses-feature android:name=\"android.hardware.camera\"/>","<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>","<uses-permission android:name=\"android.permission.REQUEST_INSTALL_PACKAGES\"/>"],"packagename":"uni.app.UNIFB2D473","aliasname":"__uni__fb2d473","password":"Z4Urhm9jqwqMGoeQNpGzJA==","storepwd":"Z4Urhm9jqwqMGoeQNpGzJA==","keypwd":"Z4Urhm9jqwqMGoeQNpGzJA==","keystore":"google-keystore.keystore","custompermissions":true},"apple":{"dSYMs":false,"plistcmds":["Add :UIFileSharingEnabled bool true"],"devices":"universal"},"plugins":{"allowOldSDK":true,"audio":{"mp3":{"description":"Android平台录音支持MP3格式文件"}},"share":{"weixin":{"UniversalLinks":"","appid":"wxda748470da82886e"}}},"debug":true,"syncDebug":true,"orientation":"portrait-primary"},"nativePlugins":{"MonitorModule":{}},"statusbar":{"immersed":"supportedDevice","style":"dark","background":"#F8F8F8"},"uniStatistics":{"enable":false},"allowsInlineMediaPlayback":true,"uni-app":{"control":"uni-v3","vueVersion":"3","compilerVersion":"4.76","nvueCompiler":"uni-app","renderer":"auto","nvue":{"flex-direction":"column"},"nvueLaunchMode":"normal","webView":{"minUserAgentVersion":"49.0"}},"adid":"122926210510"},"app-harmony":{"useragent":{"value":"uni-app","concatenate":true},"uniStatistics":{"enable":false}},"screenOrientation":["landscape-primary","landscape-secondary"],"launch_path":"__uniappview.html"}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

@ -54,7 +54,7 @@ const _sfc_main = {
uni.$on("fullmonitor:changeinit", (number) => {
this.$refs.monitor.initAutoPlay(number);
uni.setStorageSync("saveinit", number);
formatAppLog("log", "at pages/fullcamera.nvue:63", "saveinit", number);
this.suo = true;
});
uni.$on("fullmonitor:isshow", (bool) => this.isshow = bool);
uni.$on("fullmonitor:killView", this.killView);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -7,8 +7,8 @@
"id": "__UNI__FB2D473",
"name": "护理单元",
"version": {
"name": "1.7.3",
"code": 173
"name": "1.0.004",
"code": 10004
},
"description": "护理单元",
"developer": {
@ -113,6 +113,7 @@
"UniversalLinks": ""
}
},
"allowOldSDK": true,
"audio": {
"mp3": {
"description": "Android平台录音支持MP3格式文件"
@ -148,7 +149,7 @@
"uni-app": {
"control": "uni-v3",
"vueVersion": "3",
"compilerVersion": "4.85",
"compilerVersion": "4.76",
"nvueCompiler": "uni-app",
"renderer": "auto",
"nvue": {

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 660 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 964 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

File diff suppressed because one or more lines are too long

View File

@ -54,7 +54,7 @@ const _sfc_main = {
uni.$on("fullmonitor:changeinit", (number) => {
this.$refs.monitor.initAutoPlay(number);
uni.setStorageSync("saveinit", number);
formatAppLog("log", "at pages/fullcamera.nvue:63", "saveinit", number);
this.suo = true;
});
uni.$on("fullmonitor:isshow", (bool) => this.isshow = bool);
uni.$on("fullmonitor:killView", this.killView);

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
{"version":3,"file":"api.js","sources":["component/Initialization/api.js"],"sourcesContent":["// 引入 request 文件\r\nimport request from '@/request/index.js'\r\n\r\n// 以下 api 为博主项目示例,实际与项目相匹配\r\n\r\n//检测是否存在用户\r\n// export const isRel = (tel) => {\n// \treturn request({\n// \t\turl: `/api/pad/loginApi/getAdvisoryInfo?tel=${encodeURIComponent(tel)}`,\n// \t\tmethod: 'get',\n// \t})\n// }\r\n\r\n//获得登录图片\r\nexport const getCardList = () => {\n\treturn request({\n\t\turl: `${uni.getStorageSync('serverUrl')}/api/pad/baseInfo/queryPadPageList?token=${uni.getStorageSync('token')}`,\n\t\tmethod: 'get',\n\t})\n}\r\n\r\n//登录\r\n// export const loginApp = (params) => {\r\n// \treturn request({\r\n// \t\turl: `${uni.getStorageSync('serverUrl')}/sys/login`,\r\n// \t\tmethod: 'post',\r\n// \t\tdata: params,\r\n// \t})\r\n// }\r\n// // 查询表格\r\n// export const getNclist = () => {\r\n// \treturn request({\r\n// \t\turl: '/nuIpadApi/nuBizNuCustomerServer/getNclist?nuId=1&customerId=1',\r\n// \t\tmethod: 'get',\r\n// \t})\r\n// }\r\n// // 新增表格\r\n// export const addNuCustomerServer = (params) => {\r\n// \treturn request({\r\n// \t\turl: '/nuIpadApi/nuBizNuCustomerServer/addNuCustomerServer',\r\n// \t\tmethod: 'post',\r\n// \t\tdata: params,\r\n// \t})\r\n// }\r\n// // 移动表格\r\n// export const editNuCustomerServer = (params) => {\r\n// \treturn request({\r\n// \t\turl: '/nuIpadApi/nuBizNuCustomerServer/editNuCustomerServer',\r\n// \t\tmethod: 'post',\r\n// \t\tdata: params,\r\n// \t})\r\n// }\r\n// export const deleteNuCustomerServer = (params) => {\n// \treturn request({\n// \t\turl: `/nuIpadApi/nuBizNuCustomerServer/deleteNuCustomerServer?id=${params.id}`,\n// \t\tmethod: 'delete',\n// \t})\n// }\r\n// // 移动表格\r\n// export const addBatch = (params) => {\r\n// \treturn request({\r\n// \t\turl: '/nuIpadApi/nuBizNuCustomerServer/addBatch',\r\n// \t\tmethod: 'post',\r\n// \t\tdata: params,\r\n// \t})\r\n// }"],"names":["request","uni"],"mappings":";;;AAcY,MAAC,cAAc,MAAM;AAChC,SAAOA,sBAAQ;AAAA,IACd,KAAK,GAAGC,oBAAI,eAAe,WAAW,CAAC,4CAA4CA,oBAAI,eAAe,OAAO,CAAC;AAAA,IAC9G,QAAQ;AAAA,EACV,CAAE;AACF;;"}
{"version":3,"file":"api.js","sources":["component/Initialization/api.js"],"sourcesContent":["// 引入 request 文件\r\nimport request from '@/request/index.js'\r\n\r\n\r\n//获得列表\r\nexport const getCardList = () => {\n\treturn request({\n\t\turl: `${uni.getStorageSync('serverUrl')}/api/pad/baseInfo/queryPadPageList?token=${uni.getStorageSync('token')}`,\n\t\tmethod: 'get',\n\t})\n}\r\n// 根据nuid获得卡片\r\nexport const getqueryinfoByBuId = (nuId) => {\n\treturn request({\n\t\turl: `${uni.getStorageSync('serverUrl')}/api/pad/baseInfo/queryinfoByBuId?nuId=${nuId}`,\n\t\tmethod: 'get',\n\t})\n}\r\n"],"names":["request","uni"],"mappings":";;;AAKY,MAAC,cAAc,MAAM;AAChC,SAAOA,sBAAQ;AAAA,IACd,KAAK,GAAGC,oBAAI,eAAe,WAAW,CAAC,4CAA4CA,oBAAI,eAAe,OAAO,CAAC;AAAA,IAC9G,QAAQ;AAAA,EACV,CAAE;AACF;;"}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
{"version":3,"file":"Drawer.js","sources":["component/public/Drawer.vue","../Hbuilder/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovaGxkeV9hcHAvY29tcG9uZW50L3B1YmxpYy9EcmF3ZXIudnVl"],"sourcesContent":["<template>\r\n\t<view>\r\n\t\t<!-- 遮罩层display 由 v-show 控制opacity 由 overlay-show 类控制 -->\r\n\t\t<view v-show=\"isVisible\" :class=\"['overlay', { 'overlay-show': isVisible }]\" @click=\"whiteDrawer\" />\r\n\r\n\t\t<!-- 抽屉 -->\r\n\t\t<view :class=\"['drawer', { 'drawer-open': isVisible }]\" :style=\"drawerStyle\">\r\n\t\t\t<view class=\"drawer-content\">\r\n\t\t\t\t<!-- 抽屉中间的半圆 -->\r\n\t\t\t\t<view v-show=\"isVisible && canclose\" class=\"drawer-content-circle\" @click=\"whiteDrawer\">\r\n\t\t\t\t\t<image class=\"drawer-img\" src=\"/static/index/zuoyuan.png\" />\r\n\t\t\t\t</view>\r\n\t\t\t\t<!-- 抽屉内容 -->\r\n\t\t\t\t<slot />\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t</view>\r\n</template>\r\n\r\n<script setup>\r\n\timport {\r\n\t\tref,\r\n\t\tdefineProps,\r\n\t\tcomputed\r\n\t} from 'vue'\r\n\r\n\t// 控制抽屉显示隐藏\r\n\tconst isVisible = ref(false)\r\n\r\n\t// 接收父组件传入的宽度百分比\r\n\tconst props = defineProps({\r\n\t\twidNumber: {\r\n\t\t\ttype: Number,\r\n\t\t\tdefault: 85\r\n\t\t},\r\n\t\tcanclose: {\r\n\t\t\ttype:Boolean,\r\n\t\t\tdefault:true\r\n\t\t}\r\n\t})\r\n\r\n\t// 仅动态设置宽度,位置由 transform 控制\r\n\tconst drawerStyle = computed(() => ({\r\n\t\twidth: `${props.widNumber}%`\r\n\t}))\r\n\r\n\t// 对外暴露打开方法\r\n\tfunction openDrawer() {\r\n\t\tisVisible.value = true\r\n\t}\r\n\t// 点击空白关闭方法\r\n\tfunction whiteDrawer() {\r\n\t\tif(props.canclose){\r\n\t\t\tisVisible.value = false\r\n\t\t}\r\n\t}\r\n\t// 对外暴露关闭方法\r\n\tfunction closeDrawer() {\r\n\t\tisVisible.value = false\r\n\t}\r\n\r\n\tdefineExpose({\r\n\t\topenDrawer,\r\n\t\tcloseDrawer\r\n\t})\r\n</script>\r\n\r\n<style lang=\"less\" scoped>\r\n\t/* 遮罩层样式 */\r\n\t.overlay {\r\n\t\tposition: fixed;\r\n\t\ttop: 0;\r\n\t\tleft: 0;\r\n\t\twidth: 100%;\r\n\t\theight: 100vh;\r\n\t\tbackground: rgba(0, 0, 0, 0.5);\r\n\t\tz-index: 999;\r\n\t\twill-change: opacity;\r\n\t\ttransition: opacity 0.3s ease;\r\n\t\topacity: 0;\r\n\t\tdisplay: block;\r\n\t\t/* 由 v-show 控制 */\r\n\t}\r\n\r\n\t/* 当 isVisible 为 true 时,添加 overlay-show 类,触发遮罩渐显 */\r\n\t.overlay-show {\r\n\t\topacity: 1;\r\n\t}\r\n\r\n\t/* 抽屉整体样式 */\r\n\t.drawer {\r\n\t\tposition: fixed;\r\n\t\ttop: 0;\r\n\t\tright: 0;\r\n\t\theight: 100vh;\r\n\t\tbackground: #fff;\r\n\t\tz-index: 1000;\r\n\t\tborder-top-left-radius: 80rpx;\r\n\t\tborder-bottom-left-radius: 80rpx;\r\n\r\n\t\t/* 使用 transform 做动画,避免布局重排 */\r\n\t\ttransform: translateX(100%);\r\n\t\ttransition: transform 0.4s ease;\r\n\t\twill-change: transform;\r\n\t}\r\n\r\n\t/* 抽屉打开时 */\r\n\t.drawer-open {\r\n\t\ttransform: translateX(0);\r\n\t}\r\n\r\n\t.drawer-content {\r\n\t\tposition: relative;\r\n\t\twidth: 100%;\r\n\t\theight: 100%;\r\n\t}\r\n\r\n\t.drawer-content-circle {\r\n\t\tposition: absolute;\r\n\t\ttop: calc(50% - 55rpx);\r\n\t\tleft: -40rpx;\r\n\t\twidth: 100rpx;\r\n\t\theight: 110rpx;\r\n\t\tborder-radius: 50%;\r\n\t\tz-index: -1;\r\n\t\tbackground: linear-gradient(to bottom, #dfecfa, #c9dbee);\r\n\t\tdisplay: flex;\r\n\t\talign-items: center;\r\n\t\tclip-path: inset(0 60% 0 0);\r\n\t}\r\n\r\n\t.drawer-img {\r\n\t\twidth: 25rpx;\r\n\t\theight: 25rpx;\r\n\t\tmargin-left: 10rpx;\r\n\t\ttransform: rotate(180deg);\r\n\t}\r\n</style>","import Component from 'D:/hldy_app/component/public/Drawer.vue'\nwx.createComponent(Component)"],"names":["ref","computed"],"mappings":";;;;;;;;;;;;;;;;AA2BC,UAAM,YAAYA,cAAG,IAAC,KAAK;AAG3B,UAAM,QAAQ;AAYd,UAAM,cAAcC,cAAAA,SAAS,OAAO;AAAA,MACnC,OAAO,GAAG,MAAM,SAAS;AAAA,IAC3B,EAAG;AAGF,aAAS,aAAa;AACrB,gBAAU,QAAQ;AAAA,IAClB;AAED,aAAS,cAAc;AACtB,UAAG,MAAM,UAAS;AACjB,kBAAU,QAAQ;AAAA,MAClB;AAAA,IACD;AAED,aAAS,cAAc;AACtB,gBAAU,QAAQ;AAAA,IAClB;AAED,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,IACF,CAAE;;;;;;;;;;;;;;;;;;;;AC/DF,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"Drawer.js","sources":["component/public/Drawer.vue","../猫meme/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovaGxkeV9hcHBfbWluaS9jb21wb25lbnQvcHVibGljL0RyYXdlci52dWU"],"sourcesContent":["<template>\r\n\t<view>\r\n\t\t<!-- 遮罩层display 由 v-show 控制opacity 由 overlay-show 类控制 -->\r\n\t\t<view v-show=\"isVisible\" :class=\"['overlay', { 'overlay-show': isVisible }]\" @click=\"whiteDrawer\" />\r\n\r\n\t\t<!-- 抽屉 -->\r\n\t\t<view :class=\"['drawer', { 'drawer-open': isVisible }]\" :style=\"drawerStyle\">\r\n\t\t\t<view class=\"drawer-content\">\r\n\t\t\t\t<!-- 抽屉中间的半圆 -->\r\n\t\t\t\t<view v-show=\"isVisible && canclose\" class=\"drawer-content-circle\" @click=\"whiteDrawer\">\r\n\t\t\t\t\t<image class=\"drawer-img\" src=\"/static/index/zuoyuan.png\" />\r\n\t\t\t\t</view>\r\n\t\t\t\t<!-- 抽屉内容 -->\r\n\t\t\t\t<slot />\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t</view>\r\n</template>\r\n\r\n<script setup>\r\n\timport {\r\n\t\tref,\r\n\t\tdefineProps,\r\n\t\tcomputed\r\n\t} from 'vue'\r\n\r\n\t// 控制抽屉显示隐藏\r\n\tconst isVisible = ref(false)\r\n\r\n\t// 接收父组件传入的宽度百分比\r\n\tconst props = defineProps({\r\n\t\twidNumber: {\r\n\t\t\ttype: Number,\r\n\t\t\tdefault: 85\r\n\t\t},\r\n\t\tcanclose: {\r\n\t\t\ttype:Boolean,\r\n\t\t\tdefault:true\r\n\t\t}\r\n\t})\r\n\r\n\t// 仅动态设置宽度,位置由 transform 控制\r\n\tconst drawerStyle = computed(() => ({\r\n\t\twidth: `${props.widNumber}%`\r\n\t}))\r\n\r\n\t// 对外暴露打开方法\r\n\tfunction openDrawer() {\r\n\t\tisVisible.value = true\r\n\t}\r\n\t// 点击空白关闭方法\r\n\tfunction whiteDrawer() {\r\n\t\tif(props.canclose){\r\n\t\t\tisVisible.value = false\r\n\t\t}\r\n\t}\r\n\t// 对外暴露关闭方法\r\n\tfunction closeDrawer() {\r\n\t\tisVisible.value = false\r\n\t}\r\n\r\n\tdefineExpose({\r\n\t\topenDrawer,\r\n\t\tcloseDrawer\r\n\t})\r\n</script>\r\n\r\n<style lang=\"less\" scoped>\r\n\t/* 遮罩层样式 */\r\n\t.overlay {\r\n\t\tposition: fixed;\r\n\t\ttop: 0;\r\n\t\tleft: 0;\r\n\t\twidth: 100%;\r\n\t\theight: 100vh;\r\n\t\tbackground: rgba(0, 0, 0, 0.5);\r\n\t\tz-index: 999;\r\n\t\twill-change: opacity;\r\n\t\ttransition: opacity 0.3s ease;\r\n\t\topacity: 0;\r\n\t\tdisplay: block;\r\n\t\t/* 由 v-show 控制 */\r\n\t}\r\n\r\n\t/* 当 isVisible 为 true 时,添加 overlay-show 类,触发遮罩渐显 */\r\n\t.overlay-show {\r\n\t\topacity: 1;\r\n\t}\r\n\r\n\t/* 抽屉整体样式 */\r\n\t.drawer {\r\n\t\tposition: fixed;\r\n\t\ttop: 0;\r\n\t\tright: 0;\r\n\t\theight: 100vh;\r\n\t\tbackground: #fff;\r\n\t\tz-index: 1000;\r\n\t\tborder-top-left-radius: 80rpx;\r\n\t\tborder-bottom-left-radius: 80rpx;\r\n\r\n\t\t/* 使用 transform 做动画,避免布局重排 */\r\n\t\ttransform: translateX(100%);\r\n\t\ttransition: transform 0.4s ease;\r\n\t\twill-change: transform;\r\n\t}\r\n\r\n\t/* 抽屉打开时 */\r\n\t.drawer-open {\r\n\t\ttransform: translateX(0);\r\n\t}\r\n\r\n\t.drawer-content {\r\n\t\tposition: relative;\r\n\t\twidth: 100%;\r\n\t\theight: 100%;\r\n\t}\r\n\r\n\t.drawer-content-circle {\r\n\t\tposition: absolute;\r\n\t\ttop: calc(50% - 55rpx);\r\n\t\tleft: -40rpx;\r\n\t\twidth: 100rpx;\r\n\t\theight: 110rpx;\r\n\t\tborder-radius: 50%;\r\n\t\tz-index: -1;\r\n\t\tbackground: linear-gradient(to bottom, #dfecfa, #c9dbee);\r\n\t\tdisplay: flex;\r\n\t\talign-items: center;\r\n\t\tclip-path: inset(0 60% 0 0);\r\n\t}\r\n\r\n\t.drawer-img {\r\n\t\twidth: 25rpx;\r\n\t\theight: 25rpx;\r\n\t\tmargin-left: 10rpx;\r\n\t\ttransform: rotate(180deg);\r\n\t}\r\n</style>","import Component from 'D:/hldy_app_mini/component/public/Drawer.vue'\nwx.createComponent(Component)"],"names":["ref","computed"],"mappings":";;;;;;;;;;;;;;;;AA2BC,UAAM,YAAYA,cAAG,IAAC,KAAK;AAG3B,UAAM,QAAQ;AAYd,UAAM,cAAcC,cAAAA,SAAS,OAAO;AAAA,MACnC,OAAO,GAAG,MAAM,SAAS;AAAA,IAC3B,EAAG;AAGF,aAAS,aAAa;AACrB,gBAAU,QAAQ;AAAA,IAClB;AAED,aAAS,cAAc;AACtB,UAAG,MAAM,UAAS;AACjB,kBAAU,QAAQ;AAAA,MAClB;AAAA,IACD;AAED,aAAS,cAAc;AACtB,gBAAU,QAAQ;AAAA,IAClB;AAED,aAAa;AAAA,MACZ;AAAA,MACA;AAAA,IACF,CAAE;;;;;;;;;;;;;;;;;;;;AC/DF,GAAG,gBAAgB,SAAS;"}

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
{"version":3,"file":"donghua.js","sources":["component/public/donghua.vue","../Hbuilder/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovaGxkeV9hcHAvY29tcG9uZW50L3B1YmxpYy9kb25naHVhLnZ1ZQ"],"sourcesContent":["<template>\r\n\t<view>\r\n\t\t<image :src=\"isError ? defaultImage : links[currentIndex]\" :style=\"{ width: width, height: height }\"\r\n\t\t\t:mode=\"objectFit\" @error=\"isError = true\" @load=\"isError = false\" />\r\n\t\t<button v-if=\"showButton\" @click=\"$emit('update:playing', !playing)\">\r\n\t\t\t{{ playing ? '停止播放' : '开始播放' }}\r\n\t\t</button>\r\n\t</view>\r\n</template>\r\n\r\n<script setup>\r\n\timport {\r\n\t\tref,\r\n\t\twatch,\r\n\t\tonUnmounted\r\n\t} from 'vue'\r\n\r\n\t// 定义组件的 props\r\n\tconst props = defineProps({\r\n\t\tlinks: {\r\n\t\t\ttype: Array,\r\n\t\t\tdefault: () => []\r\n\t\t},\r\n\t\twidth: {\r\n\t\t\ttype: String,\r\n\t\t\tdefault: '65rpx'\r\n\t\t},\r\n\t\theight: {\r\n\t\t\ttype: String,\r\n\t\t\tdefault: '65rpx'\r\n\t\t},\r\n\t\tobjectFit: {\r\n\t\t\ttype: String,\r\n\t\t\tdefault: 'aspectFill'\r\n\t\t},\r\n\t\tdefaultImage: {\r\n\t\t\ttype: String,\r\n\t\t\tdefault: ''\r\n\t\t},\r\n\t\tinterval: {\r\n\t\t\ttype: Number,\r\n\t\t\tdefault: 80\r\n\t\t},\r\n\t\tplaying: {\r\n\t\t\ttype: Boolean,\r\n\t\t\tdefault: false\r\n\t\t},\r\n\t\tshowButton: {\r\n\t\t\ttype: Boolean,\r\n\t\t\tdefault: false\r\n\t\t},\r\n\t\tloop: {\r\n\t\t\ttype: Boolean,\r\n\t\t\tdefault: false\r\n\t\t}\r\n\t})\r\n\r\n\t// 定义组件发出的事件\r\n\tconst emit = defineEmits(['update:playing'])\r\n\r\n\t// 组件内部状态\r\n\tconst currentIndex = ref(0) // 当前播放的图片索引\r\n\tconst isPlaying = ref(false) // 是否正在播放\r\n\tconst isError = ref(false) // 当前图片是否加载失败\r\n\tlet timer = null // 定时器\r\n\r\n\t// 开始播放\r\n\tconst startPlay = () => {\r\n\t\tif (isPlaying.value) return\r\n\t\tisPlaying.value = true\r\n\t\ttimer = setInterval(() => {\r\n\t\t\tif (props.loop) {\r\n\t\t\t\t// 循环播放:使用模运算循环索引\r\n\t\t\t\tcurrentIndex.value = (currentIndex.value + 1) % props.links.length\r\n\t\t\t\tisError.value = false\r\n\t\t\t} else {\r\n\t\t\t\t// 非循环播放:到末尾时停止\r\n\t\t\t\tif (currentIndex.value < props.links.length - 1) {\r\n\t\t\t\t\tcurrentIndex.value++\r\n\t\t\t\t\tisError.value = false\r\n\t\t\t\t} else {\r\n\t\t\t\t\tstopPlay()\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}, props.interval)\r\n\t}\r\n\r\n\t// 停止播放\r\n\tconst stopPlay = () => {\r\n\t\tisPlaying.value = false\r\n\t\tclearInterval(timer)\r\n\t}\r\n\r\n\t// 监听 playing 属性变化\r\n\twatch(() => props.playing, (val) => {\r\n\t\tcurrentIndex.value = 0\r\n\t\tif (val) {\r\n\t\t\tstartPlay()\r\n\t\t} else {\r\n\t\t\tstopPlay()\r\n\t\t\tsetTimeout(() => currentIndex.value = 0, 50)\r\n\r\n\t\t}\r\n\t})\r\n\r\n\t// 监听 links 数组变化\r\n\twatch(() => props.links, () => {\r\n\t\tcurrentIndex.value = 0\r\n\t\tisError.value = false\r\n\t\tif (isPlaying.value) {\r\n\t\t\tstopPlay()\r\n\t\t}\r\n\t}, {\r\n\t\tdeep: true\r\n\t})\r\n\r\n\t// 组件销毁时清理定时器\r\n\tonUnmounted(() => {\r\n\t\tstopPlay()\r\n\t})\r\n</script>","import Component from 'D:/hldy_app/component/public/donghua.vue'\nwx.createComponent(Component)"],"names":["ref","watch","onUnmounted","Component"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBC,UAAM,QAAQ;AA2Cd,UAAM,eAAeA,cAAG,IAAC,CAAC;AAC1B,UAAM,YAAYA,cAAG,IAAC,KAAK;AAC3B,UAAM,UAAUA,cAAG,IAAC,KAAK;AACzB,QAAI,QAAQ;AAGZ,UAAM,YAAY,MAAM;AACvB,UAAI,UAAU;AAAO;AACrB,gBAAU,QAAQ;AAClB,cAAQ,YAAY,MAAM;AACzB,YAAI,MAAM,MAAM;AAEf,uBAAa,SAAS,aAAa,QAAQ,KAAK,MAAM,MAAM;AAC5D,kBAAQ,QAAQ;AAAA,QACpB,OAAU;AAEN,cAAI,aAAa,QAAQ,MAAM,MAAM,SAAS,GAAG;AAChD,yBAAa;AACb,oBAAQ,QAAQ;AAAA,UACrB,OAAW;AACN,qBAAU;AAAA,UACV;AAAA,QACD;AAAA,MACJ,GAAK,MAAM,QAAQ;AAAA,IACjB;AAGD,UAAM,WAAW,MAAM;AACtB,gBAAU,QAAQ;AAClB,oBAAc,KAAK;AAAA,IACnB;AAGDC,kBAAAA,MAAM,MAAM,MAAM,SAAS,CAAC,QAAQ;AACnC,mBAAa,QAAQ;AACrB,UAAI,KAAK;AACR,kBAAW;AAAA,MACd,OAAS;AACN,iBAAU;AACV,mBAAW,MAAM,aAAa,QAAQ,GAAG,EAAE;AAAA,MAE3C;AAAA,IACH,CAAE;AAGDA,wBAAM,MAAM,MAAM,OAAO,MAAM;AAC9B,mBAAa,QAAQ;AACrB,cAAQ,QAAQ;AAChB,UAAI,UAAU,OAAO;AACpB,iBAAU;AAAA,MACV;AAAA,IACH,GAAI;AAAA,MACF,MAAM;AAAA,IACR,CAAE;AAGDC,kBAAAA,YAAY,MAAM;AACjB,eAAU;AAAA,IACZ,CAAE;;;;;;;;;;;;;;;;;ACtHF,GAAG,gBAAgBC,SAAS;"}
{"version":3,"file":"donghua.js","sources":["component/public/donghua.vue","../猫meme/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovaGxkeV9hcHBfbWluaS9jb21wb25lbnQvcHVibGljL2RvbmdodWEudnVl"],"sourcesContent":["<template>\r\n\t<view>\r\n\t\t<image :src=\"isError ? defaultImage : links[currentIndex]\" :style=\"{ width: width, height: height }\"\r\n\t\t\t:mode=\"objectFit\" @error=\"isError = true\" @load=\"isError = false\" />\r\n\t\t<button v-if=\"showButton\" @click=\"$emit('update:playing', !playing)\">\r\n\t\t\t{{ playing ? '停止播放' : '开始播放' }}\r\n\t\t</button>\r\n\t</view>\r\n</template>\r\n\r\n<script setup>\r\n\timport {\r\n\t\tref,\r\n\t\twatch,\r\n\t\tonUnmounted\r\n\t} from 'vue'\r\n\r\n\t// 定义组件的 props\r\n\tconst props = defineProps({\r\n\t\tlinks: {\r\n\t\t\ttype: Array,\r\n\t\t\tdefault: () => []\r\n\t\t},\r\n\t\twidth: {\r\n\t\t\ttype: String,\r\n\t\t\tdefault: '65rpx'\r\n\t\t},\r\n\t\theight: {\r\n\t\t\ttype: String,\r\n\t\t\tdefault: '65rpx'\r\n\t\t},\r\n\t\tobjectFit: {\r\n\t\t\ttype: String,\r\n\t\t\tdefault: 'aspectFill'\r\n\t\t},\r\n\t\tdefaultImage: {\r\n\t\t\ttype: String,\r\n\t\t\tdefault: ''\r\n\t\t},\r\n\t\tinterval: {\r\n\t\t\ttype: Number,\r\n\t\t\tdefault: 80\r\n\t\t},\r\n\t\tplaying: {\r\n\t\t\ttype: Boolean,\r\n\t\t\tdefault: false\r\n\t\t},\r\n\t\tshowButton: {\r\n\t\t\ttype: Boolean,\r\n\t\t\tdefault: false\r\n\t\t},\r\n\t\tloop: {\r\n\t\t\ttype: Boolean,\r\n\t\t\tdefault: false\r\n\t\t}\r\n\t})\r\n\r\n\t// 定义组件发出的事件\r\n\tconst emit = defineEmits(['update:playing'])\r\n\r\n\t// 组件内部状态\r\n\tconst currentIndex = ref(0) // 当前播放的图片索引\r\n\tconst isPlaying = ref(false) // 是否正在播放\r\n\tconst isError = ref(false) // 当前图片是否加载失败\r\n\tlet timer = null // 定时器\r\n\r\n\t// 开始播放\r\n\tconst startPlay = () => {\r\n\t\tif (isPlaying.value) return\r\n\t\tisPlaying.value = true\r\n\t\ttimer = setInterval(() => {\r\n\t\t\tif (props.loop) {\r\n\t\t\t\t// 循环播放:使用模运算循环索引\r\n\t\t\t\tcurrentIndex.value = (currentIndex.value + 1) % props.links.length\r\n\t\t\t\tisError.value = false\r\n\t\t\t} else {\r\n\t\t\t\t// 非循环播放:到末尾时停止\r\n\t\t\t\tif (currentIndex.value < props.links.length - 1) {\r\n\t\t\t\t\tcurrentIndex.value++\r\n\t\t\t\t\tisError.value = false\r\n\t\t\t\t} else {\r\n\t\t\t\t\tstopPlay()\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}, props.interval)\r\n\t}\r\n\r\n\t// 停止播放\r\n\tconst stopPlay = () => {\r\n\t\tisPlaying.value = false\r\n\t\tclearInterval(timer)\r\n\t}\r\n\r\n\t// 监听 playing 属性变化\r\n\twatch(() => props.playing, (val) => {\r\n\t\tcurrentIndex.value = 0\r\n\t\tif (val) {\r\n\t\t\tstartPlay()\r\n\t\t} else {\r\n\t\t\tstopPlay()\r\n\t\t\tsetTimeout(() => currentIndex.value = 0, 50)\r\n\r\n\t\t}\r\n\t})\r\n\r\n\t// 监听 links 数组变化\r\n\twatch(() => props.links, () => {\r\n\t\tcurrentIndex.value = 0\r\n\t\tisError.value = false\r\n\t\tif (isPlaying.value) {\r\n\t\t\tstopPlay()\r\n\t\t}\r\n\t}, {\r\n\t\tdeep: true\r\n\t})\r\n\r\n\t// 组件销毁时清理定时器\r\n\tonUnmounted(() => {\r\n\t\tstopPlay()\r\n\t})\r\n</script>","import Component from 'D:/hldy_app_mini/component/public/donghua.vue'\nwx.createComponent(Component)"],"names":["ref","watch","onUnmounted","Component"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBC,UAAM,QAAQ;AA2Cd,UAAM,eAAeA,cAAG,IAAC,CAAC;AAC1B,UAAM,YAAYA,cAAG,IAAC,KAAK;AAC3B,UAAM,UAAUA,cAAG,IAAC,KAAK;AACzB,QAAI,QAAQ;AAGZ,UAAM,YAAY,MAAM;AACvB,UAAI,UAAU;AAAO;AACrB,gBAAU,QAAQ;AAClB,cAAQ,YAAY,MAAM;AACzB,YAAI,MAAM,MAAM;AAEf,uBAAa,SAAS,aAAa,QAAQ,KAAK,MAAM,MAAM;AAC5D,kBAAQ,QAAQ;AAAA,QACpB,OAAU;AAEN,cAAI,aAAa,QAAQ,MAAM,MAAM,SAAS,GAAG;AAChD,yBAAa;AACb,oBAAQ,QAAQ;AAAA,UACrB,OAAW;AACN,qBAAU;AAAA,UACV;AAAA,QACD;AAAA,MACJ,GAAK,MAAM,QAAQ;AAAA,IACjB;AAGD,UAAM,WAAW,MAAM;AACtB,gBAAU,QAAQ;AAClB,oBAAc,KAAK;AAAA,IACnB;AAGDC,kBAAAA,MAAM,MAAM,MAAM,SAAS,CAAC,QAAQ;AACnC,mBAAa,QAAQ;AACrB,UAAI,KAAK;AACR,kBAAW;AAAA,MACd,OAAS;AACN,iBAAU;AACV,mBAAW,MAAM,aAAa,QAAQ,GAAG,EAAE;AAAA,MAE3C;AAAA,IACH,CAAE;AAGDA,wBAAM,MAAM,MAAM,OAAO,MAAM;AAC9B,mBAAa,QAAQ;AACrB,cAAQ,QAAQ;AAChB,UAAI,UAAU,OAAO;AACpB,iBAAU;AAAA,MACV;AAAA,IACH,GAAI;AAAA,MACF,MAAM;AAAA,IACR,CAAE;AAGDC,kBAAAA,YAAY,MAAM;AACjB,eAAU;AAAA,IACZ,CAAE;;;;;;;;;;;;;;;;;ACtHF,GAAG,gBAAgBC,SAAS;"}

View File

@ -1 +1 @@
{"version":3,"file":"exit.js","sources":["component/public/exit.vue","../Hbuilder/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovaGxkeV9hcHAvY29tcG9uZW50L3B1YmxpYy9leGl0LnZ1ZQ"],"sourcesContent":["<template>\r\n\t<!-- 通过 v-show 控制显隐,并根据 show 添加 is-active 类触发 CSS 过渡 -->\r\n\t<view :class=\"['neuro-wrapper', donghua ? 'is-active' : '']\" v-show=\"show\">\r\n\t\t<!-- 遮罩层,点击触发关闭 -->\r\n\t\t<view class=\"neuro-mask\" @click=\"handleClose\"></view>\r\n\t\t<!-- 拟态框,阻止冒泡点击 -->\r\n\t\t<view class=\"neuro-box\" @click.stop>\r\n\r\n\t\t\t<view class=\"button-father\">\r\n\t\t\t\t<view class=\"button-white\" @click=\"handleClose\">取消</view>\r\n\t\t\t\t<view class=\"button\" @click=\"go\">确定</view>\r\n\t\t\t</view>\r\n\r\n\t\t\t<view class=\"title\">退出登录</view>\r\n\t\t\t<view class=\"card-font\">\r\n\t\t\t\t确定要注销账户吗\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t</view>\r\n</template>\r\n\r\n<script setup>\r\n\timport {\r\n\t\tref,\r\n\t\twatch\r\n\t} from 'vue'\r\n\r\n\t// 接收 show 属性并支持 update:show 事件\r\n\tconst props = defineProps({\r\n\t\tshow: {\r\n\t\t\ttype: Boolean,\r\n\t\t\tdefault: true\r\n\t\t},\r\n\r\n\t});\r\n\t// 区分首次渲染与动态添加\r\n\tconst donghua = ref(false);\r\n\twatch(\r\n\t\t() => props.show,\r\n\t\t(newVal, oldVal) => {\r\n\t\t\tif (!oldVal && newVal) {\r\n\t\t\t\tdonghua.value = false\r\n\t\t\t\tsetTimeout(()=>donghua.value = true,50)\r\n\r\n\t\t\t}\r\n\t\t}\r\n\t)\r\n\tconst emit = defineEmits([\"close\"]);\r\n\r\n\t// 关闭方法,通知父组件更新 show\r\n\tfunction handleClose() {\r\n\t\temit('close');\r\n\t}\r\n\tconst go = () => {\r\n\t\tuni.setStorageSync('token', 1);\r\n\t\t\r\n\t\tuni.redirectTo({\r\n\t\t\turl: '/pages/login/login'\r\n\t\t});\r\n\t}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n\t/* 容器默认隐藏,透明度为 0不接受点击 */\r\n\t.neuro-wrapper {\r\n\t\tposition: fixed;\r\n\t\tinset: 0;\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: center;\r\n\t\talign-items: center;\r\n\t\tz-index: 999;\r\n\t\topacity: 0;\r\n\t\tpointer-events: none;\r\n\t\ttransition: opacity 0.3s ease;\r\n\t}\r\n\r\n\t/* 显示时透明度过渡到 1可接受点击 */\r\n\t.neuro-wrapper.is-active {\r\n\t\topacity: 1;\r\n\t\tpointer-events: auto;\r\n\t}\r\n\r\n\t/* 遮罩层,半透明黑色 */\r\n\t.neuro-mask {\r\n\t\tposition: absolute;\r\n\t\tinset: 0;\r\n\t\tbackground-color: rgba(0, 0, 0, 0.3);\r\n\t}\r\n\r\n\t/* 拟态框 固定尺寸 + 阴影样式 + 相对定位于 wrapper */\r\n\t.neuro-box {\r\n\t\tposition: relative;\r\n\t\twidth: 600rpx;\r\n\t\theight: 450rpx;\r\n\t\tborder-radius: 30rpx;\r\n\t\tbackground-color: #fff;\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t\talign-items: center;\r\n\t\tz-index: 1;\r\n\t\tpadding: 0 10%;\r\n\t}\r\n\r\n\t.button {\r\n\t\twidth: 47%;\r\n\t\tbackground-color: #ddf0ff;\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: center;\r\n\t\talign-items: center;\r\n\t\tcolor: #007CFF;\r\n\t\tborder: 1rpx solid #007CFF;\r\n\t\tfont-size: 25rpx;\r\n\t\tborder-radius: 30rpx;\r\n\t}\r\n\r\n\t.title {\r\n\t\tmargin-top: 70rpx;\r\n\t}\r\n\r\n\t.card-font {\r\n\t\tmargin-top: 70rpx;\r\n\t\twidth: 600rpx;\r\n\t\tjustify-content: center;\r\n\t\tdisplay: flex;\r\n\t}\r\n\r\n\t.button-white {\r\n\t\twidth: 47%;\r\n\t\tborder: 2rpx solid #c3cacd;\r\n\t\tbackground: linear-gradient(to bottom, #f3f3f5, #dee4e9);\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: center;\r\n\t\talign-items: center;\r\n\t\tfont-size: 25rpx;\r\n\t\tborder-radius: 30rpx;\r\n\t}\r\n\r\n\t.button-father {\r\n\t\tposition: absolute;\r\n\t\tbottom: 60rpx;\r\n\t\tleft: 50%;\r\n\t\ttransform: translateX(-50%);\r\n\t\twidth: 100%;\r\n\t\theight: 70rpx;\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: space-between;\r\n\t\tpadding: 0 50rpx;\r\n\t}\r\n</style>","import Component from 'D:/hldy_app/component/public/exit.vue'\nwx.createComponent(Component)"],"names":["ref","watch","uni"],"mappings":";;;;;;;;;;;;AA4BC,UAAM,QAAQ;AAQd,UAAM,UAAUA,kBAAI,KAAK;AACzBC,kBAAK;AAAA,MACJ,MAAM,MAAM;AAAA,MACZ,CAAC,QAAQ,WAAW;AACnB,YAAI,CAAC,UAAU,QAAQ;AACtB,kBAAQ,QAAQ;AAChB,qBAAW,MAAI,QAAQ,QAAQ,MAAK,EAAE;AAAA,QAEtC;AAAA,MACD;AAAA,IACD;AACD,UAAM,OAAO;AAGb,aAAS,cAAc;AACtB,WAAK,OAAO;AAAA,IACZ;AACD,UAAM,KAAK,MAAM;AAChBC,oBAAAA,MAAI,eAAe,SAAS,CAAC;AAE7BA,oBAAAA,MAAI,WAAW;AAAA,QACd,KAAK;AAAA,MACR,CAAG;AAAA,IACD;;;;;;;;;;;;;;;AC1DF,GAAG,gBAAgB,SAAS;"}
{"version":3,"file":"exit.js","sources":["component/public/exit.vue","../猫meme/HBuilderX.4.76.2025082103/HBuilderX/plugins/uniapp-cli-vite/uniComponent:/RDovaGxkeV9hcHBfbWluaS9jb21wb25lbnQvcHVibGljL2V4aXQudnVl"],"sourcesContent":["<template>\r\n\t<!-- 通过 v-show 控制显隐,并根据 show 添加 is-active 类触发 CSS 过渡 -->\r\n\t<view :class=\"['neuro-wrapper', donghua ? 'is-active' : '']\" v-show=\"show\">\r\n\t\t<!-- 遮罩层,点击触发关闭 -->\r\n\t\t<view class=\"neuro-mask\" @click=\"handleClose\"></view>\r\n\t\t<!-- 拟态框,阻止冒泡点击 -->\r\n\t\t<view class=\"neuro-box\" @click.stop>\r\n\r\n\t\t\t<view class=\"button-father\">\r\n\t\t\t\t<view class=\"button-white\" @click=\"handleClose\">取消</view>\r\n\t\t\t\t<view class=\"button\" @click=\"go\">确定</view>\r\n\t\t\t</view>\r\n\r\n\t\t\t<view class=\"title\">退出登录</view>\r\n\t\t\t<view class=\"card-font\">\r\n\t\t\t\t确定要注销账户吗\r\n\t\t\t</view>\r\n\t\t</view>\r\n\t</view>\r\n</template>\r\n\r\n<script setup>\r\n\timport {\r\n\t\tref,\r\n\t\twatch\r\n\t} from 'vue'\r\n\r\n\t// 接收 show 属性并支持 update:show 事件\r\n\tconst props = defineProps({\r\n\t\tshow: {\r\n\t\t\ttype: Boolean,\r\n\t\t\tdefault: true\r\n\t\t},\r\n\r\n\t});\r\n\t// 区分首次渲染与动态添加\r\n\tconst donghua = ref(false);\r\n\twatch(\r\n\t\t() => props.show,\r\n\t\t(newVal, oldVal) => {\r\n\t\t\tif (!oldVal && newVal) {\r\n\t\t\t\tdonghua.value = false\r\n\t\t\t\tsetTimeout(()=>donghua.value = true,50)\r\n\r\n\t\t\t}\r\n\t\t}\r\n\t)\r\n\tconst emit = defineEmits([\"close\"]);\r\n\r\n\t// 关闭方法,通知父组件更新 show\r\n\tfunction handleClose() {\r\n\t\temit('close');\r\n\t}\r\n\tconst go = () => {\r\n\t\tuni.setStorageSync('token', 1);\r\n\t\t\r\n\t\tuni.redirectTo({\r\n\t\t\turl: '/pages/login/login'\r\n\t\t});\r\n\t}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n\t/* 容器默认隐藏,透明度为 0不接受点击 */\r\n\t.neuro-wrapper {\r\n\t\tposition: fixed;\r\n\t\tinset: 0;\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: center;\r\n\t\talign-items: center;\r\n\t\tz-index: 999;\r\n\t\topacity: 0;\r\n\t\tpointer-events: none;\r\n\t\ttransition: opacity 0.3s ease;\r\n\t}\r\n\r\n\t/* 显示时透明度过渡到 1可接受点击 */\r\n\t.neuro-wrapper.is-active {\r\n\t\topacity: 1;\r\n\t\tpointer-events: auto;\r\n\t}\r\n\r\n\t/* 遮罩层,半透明黑色 */\r\n\t.neuro-mask {\r\n\t\tposition: absolute;\r\n\t\tinset: 0;\r\n\t\tbackground-color: rgba(0, 0, 0, 0.3);\r\n\t}\r\n\r\n\t/* 拟态框 固定尺寸 + 阴影样式 + 相对定位于 wrapper */\r\n\t.neuro-box {\r\n\t\tposition: relative;\r\n\t\twidth: 600rpx;\r\n\t\theight: 450rpx;\r\n\t\tborder-radius: 30rpx;\r\n\t\tbackground-color: #fff;\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t\talign-items: center;\r\n\t\tz-index: 1;\r\n\t\tpadding: 0 10%;\r\n\t}\r\n\r\n\t.button {\r\n\t\twidth: 47%;\r\n\t\tbackground-color: #ddf0ff;\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: center;\r\n\t\talign-items: center;\r\n\t\tcolor: #007CFF;\r\n\t\tborder: 1rpx solid #007CFF;\r\n\t\tfont-size: 25rpx;\r\n\t\tborder-radius: 30rpx;\r\n\t}\r\n\r\n\t.title {\r\n\t\tmargin-top: 70rpx;\r\n\t}\r\n\r\n\t.card-font {\r\n\t\tmargin-top: 70rpx;\r\n\t\twidth: 600rpx;\r\n\t\tjustify-content: center;\r\n\t\tdisplay: flex;\r\n\t}\r\n\r\n\t.button-white {\r\n\t\twidth: 47%;\r\n\t\tborder: 2rpx solid #c3cacd;\r\n\t\tbackground: linear-gradient(to bottom, #f3f3f5, #dee4e9);\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: center;\r\n\t\talign-items: center;\r\n\t\tfont-size: 25rpx;\r\n\t\tborder-radius: 30rpx;\r\n\t}\r\n\r\n\t.button-father {\r\n\t\tposition: absolute;\r\n\t\tbottom: 60rpx;\r\n\t\tleft: 50%;\r\n\t\ttransform: translateX(-50%);\r\n\t\twidth: 100%;\r\n\t\theight: 70rpx;\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: space-between;\r\n\t\tpadding: 0 50rpx;\r\n\t}\r\n</style>","import Component from 'D:/hldy_app_mini/component/public/exit.vue'\nwx.createComponent(Component)"],"names":["ref","watch","uni"],"mappings":";;;;;;;;;;;;AA4BC,UAAM,QAAQ;AAQd,UAAM,UAAUA,kBAAI,KAAK;AACzBC,kBAAK;AAAA,MACJ,MAAM,MAAM;AAAA,MACZ,CAAC,QAAQ,WAAW;AACnB,YAAI,CAAC,UAAU,QAAQ;AACtB,kBAAQ,QAAQ;AAChB,qBAAW,MAAI,QAAQ,QAAQ,MAAK,EAAE;AAAA,QAEtC;AAAA,MACD;AAAA,IACD;AACD,UAAM,OAAO;AAGb,aAAS,cAAc;AACtB,WAAK,OAAO;AAAA,IACZ;AACD,UAAM,KAAK,MAAM;AAChBC,oBAAAA,MAAI,eAAe,SAAS,CAAC;AAE7BA,oBAAAA,MAAI,WAAW;AAAA,QACd,KAAK;AAAA,MACR,CAAG;AAAA,IACD;;;;;;;;;;;;;;;AC1DF,GAAG,gBAAgB,SAAS;"}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
{"version":3,"file":"api.js","sources":["pages/NursingNew/component/nurse/api.js"],"sourcesContent":["// 引入 request 文件\r\nimport request from '@/request/index.js'\r\n\r\n// 以下 api 为博主项目示例,实际与项目相匹配\r\n\r\n// 查询服务类型\r\nexport const getServiceTree = () => {\r\n\treturn request({\r\n\t\turl: `${uni.getStorageSync('serverUrl')}/nuIpadApi/nuConfigServiceCategory/getServiceTree`,\r\n\t\tmethod: 'get',\r\n\t})\r\n}\r\n// 查询表格\r\nexport const getNclist = (nuId,customerId) => {\r\n\treturn request({\r\n\t\turl: `${uni.getStorageSync('serverUrl')}/nuIpadApi/nuBizNuCustomerServer/getNclist?nuId=${nuId}&customerId=${customerId}`,\r\n\t\tmethod: 'get',\r\n\t})\r\n}\r\n// 保存表格\r\nexport const addBatch = (params) => {\r\n\treturn request({\r\n\t\turl: `${uni.getStorageSync('serverUrl')}/nuIpadApi/nuBizNuCustomerServer/addBatch`,\r\n\t\tmethod: 'post',\r\n\t\tdata: params,\r\n\t})\r\n}"],"names":["request","uni"],"mappings":";;;AAMY,MAAC,iBAAiB,MAAM;AACnC,SAAOA,sBAAQ;AAAA,IACd,KAAK,GAAGC,cAAG,MAAC,eAAe,WAAW,CAAC;AAAA,IACvC,QAAQ;AAAA,EACV,CAAE;AACF;AAEY,MAAC,YAAY,CAAC,MAAK,eAAe;AAC7C,SAAOD,sBAAQ;AAAA,IACd,KAAK,GAAGC,cAAG,MAAC,eAAe,WAAW,CAAC,mDAAmD,IAAI,eAAe,UAAU;AAAA,IACvH,QAAQ;AAAA,EACV,CAAE;AACF;AAEY,MAAC,WAAW,CAAC,WAAW;AACnC,SAAOD,sBAAQ;AAAA,IACd,KAAK,GAAGC,cAAG,MAAC,eAAe,WAAW,CAAC;AAAA,IACvC,QAAQ;AAAA,IACR,MAAM;AAAA,EACR,CAAE;AACF;;;;"}
{"version":3,"file":"api.js","sources":["pages/NursingNew/component/nurse/api.js"],"sourcesContent":["// 引入 request 文件\r\nimport request from '@/request/index.js'\r\n\r\n// 以下 api 为博主项目示例,实际与项目相匹配\r\n\r\n// 查询服务类型\r\nexport const getServiceTree = () => {\r\n\treturn request({\r\n\t\turl: `${uni.getStorageSync('serverUrl')}/nuIpadApi/nuConfigServiceCategory/getServiceTree`,\r\n\t\tmethod: 'get',\r\n\t})\r\n}\r\n// 查询表格\r\nexport const getNclist = (nuId,customerId) => {\r\n\treturn request({\r\n\t\turl: `${uni.getStorageSync('serverUrl')}/nuIpadApi/nuBizNuCustomerServer/getNclist?nuId=${nuId}&customerId=${customerId}`,\r\n\t\tmethod: 'get',\r\n\t})\r\n}\r\n// 保存表格\r\nexport const addBatch = (params) => {\r\n\treturn request({\r\n\t\turl: `${uni.getStorageSync('serverUrl')}/nuIpadApi/nuBizNuCustomerServer/addBatch`,\r\n\t\tmethod: 'post',\r\n\t\tdata: params,\r\n\t})\r\n}\r\n// 查询指令包\r\nexport const getNcPackagelist = (nuId,customerId) => {\r\n\treturn request({\r\n\t\turl: `${uni.getStorageSync('serverUrl')}/nuIpadApi/nuBizNuCustomerServer/getNcPackagelist`,\r\n\t\tmethod: 'get',\r\n\t})\r\n}\r\n\r\n\r\n\r\n\r\n// 新增服务指令\r\nexport const addDirective = (params) => {\r\n\treturn request({\r\n\t\turl: `${uni.getStorageSync('serverUrl')}/nuIpadApi/nuBizNuCustomerServer/addDirective`,\r\n\t\tmethod: 'post',\r\n\t\tdata: params,\r\n\t})\r\n}\r\n\r\n// 新增即时指令\r\nexport const addInstant = (params) => {\r\n\treturn request({\r\n\t\turl: `${uni.getStorageSync('serverUrl')}/nuIpadApi/nuBizNuCustomerServer/addInstant`,\r\n\t\tmethod: 'post',\r\n\t\tdata: params,\r\n\t})\r\n}\r\n\r\n// 新增情绪/体型标签\r\nexport const addElderTag = (params) => {\r\n\treturn request({\r\n\t\turl: `${uni.getStorageSync('serverUrl')}/nuIpadApi/nuBizNuCustomerServer/addElderTag`,\r\n\t\tmethod: 'post',\r\n\t\tdata: params,\r\n\t})\r\n}\r\n\r\n// 编排护理流程-删除服务指令\r\nexport const deleteDirective = (params) => {\r\n\treturn request({\r\n\t\turl: `${uni.getStorageSync('serverUrl')}/nuIpadApi/nuBizNuCustomerServer/deleteDirective`,\r\n\t\tmethod: 'post',\r\n\t\tdata: params,\r\n\t})\r\n}\r\n\r\n// 编排护理流程-删除即时服务指令\r\nexport const deleteInstant = (params) => {\r\n\treturn request({\r\n\t\turl: `${uni.getStorageSync('serverUrl')}//nuIpadApi/nuBizNuCustomerServer/deleteInstant`,\r\n\t\tmethod: 'post',\r\n\t\tdata: params,\r\n\t})\r\n}\r\n\r\n// 编排护理流程-删除情绪/体型标签\r\nexport const deleteElderTag = (params) => {\r\n\treturn request({\r\n\t\turl: `${uni.getStorageSync('serverUrl')}/nuIpadApi/nuBizNuCustomerServer/deleteElderTag`,\r\n\t\tmethod: 'post',\r\n\t\tdata: params,\r\n\t})\r\n}\r\n// 编排护理流程-修改服务指令\r\nexport const editDirective = (params) => {\r\n\treturn request({\r\n\t\turl: `${uni.getStorageSync('serverUrl')}/nuIpadApi/nuBizNuCustomerServer/editDirective`,\r\n\t\tmethod: 'post',\r\n\t\tdata: params,\r\n\t})\r\n}"],"names":["request","uni"],"mappings":";;;AAMY,MAAC,iBAAiB,MAAM;AACnC,SAAOA,sBAAQ;AAAA,IACd,KAAK,GAAGC,cAAG,MAAC,eAAe,WAAW,CAAC;AAAA,IACvC,QAAQ;AAAA,EACV,CAAE;AACF;AAEY,MAAC,YAAY,CAAC,MAAK,eAAe;AAC7C,SAAOD,sBAAQ;AAAA,IACd,KAAK,GAAGC,cAAG,MAAC,eAAe,WAAW,CAAC,mDAAmD,IAAI,eAAe,UAAU;AAAA,IACvH,QAAQ;AAAA,EACV,CAAE;AACF;AAEY,MAAC,WAAW,CAAC,WAAW;AACnC,SAAOD,sBAAQ;AAAA,IACd,KAAK,GAAGC,cAAG,MAAC,eAAe,WAAW,CAAC;AAAA,IACvC,QAAQ;AAAA,IACR,MAAM;AAAA,EACR,CAAE;AACF;AAEY,MAAC,mBAAmB,CAAC,MAAK,eAAe;AACpD,SAAOD,sBAAQ;AAAA,IACd,KAAK,GAAGC,cAAG,MAAC,eAAe,WAAW,CAAC;AAAA,IACvC,QAAQ;AAAA,EACV,CAAE;AACF;AAMY,MAAC,eAAe,CAAC,WAAW;AACvC,SAAOD,sBAAQ;AAAA,IACd,KAAK,GAAGC,cAAG,MAAC,eAAe,WAAW,CAAC;AAAA,IACvC,QAAQ;AAAA,IACR,MAAM;AAAA,EACR,CAAE;AACF;AAGY,MAAC,aAAa,CAAC,WAAW;AACrC,SAAOD,sBAAQ;AAAA,IACd,KAAK,GAAGC,cAAG,MAAC,eAAe,WAAW,CAAC;AAAA,IACvC,QAAQ;AAAA,IACR,MAAM;AAAA,EACR,CAAE;AACF;AAYY,MAAC,kBAAkB,CAAC,WAAW;AAC1C,SAAOD,sBAAQ;AAAA,IACd,KAAK,GAAGC,cAAG,MAAC,eAAe,WAAW,CAAC;AAAA,IACvC,QAAQ;AAAA,IACR,MAAM;AAAA,EACR,CAAE;AACF;AAGY,MAAC,gBAAgB,CAAC,WAAW;AACxC,SAAOD,sBAAQ;AAAA,IACd,KAAK,GAAGC,cAAG,MAAC,eAAe,WAAW,CAAC;AAAA,IACvC,QAAQ;AAAA,IACR,MAAM;AAAA,EACR,CAAE;AACF;AAWY,MAAC,gBAAgB,CAAC,WAAW;AACxC,SAAOD,sBAAQ;AAAA,IACd,KAAK,GAAGC,cAAG,MAAC,eAAe,WAAW,CAAC;AAAA,IACvC,QAAQ;AAAA,IACR,MAAM;AAAA,EACR,CAAE;AACF;;;;;;;;;;"}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Some files were not shown because too many files have changed in this diff Show More