Merge remote-tracking branch 'origin/main' into main

main
董哲奇 9 hours ago
commit 8045c7079c

@ -1,13 +1,25 @@
<template> <template>
<view class="easy-scancode" v-if="show"> <view class="easy-scancode" v-if="show">
<view id="reader"></view> <view id="reader"></view>
<!-- 装饰区域 -->
<view class="scan-mask">
<view class="scan-box">
<view class="line"></view>
<view class="corner top-left"></view>
<view class="corner top-right"></view>
<view class="corner bottom-left"></view>
<view class="corner bottom-right"></view>
</view>
</view>
<!-- 扫码提示区域 -->
<view class="scan-tip-overlay">
<view class="scan-tip"> 请将二维码放入框内 </view>
</view>
<view class="scan-back"> <view class="scan-back">
<button class="action-btn" @tap="stop"></button> <button class="action-btn" @tap="stop"></button>
</view> </view>
<!-- 扫码提示区域 -->
<view class="scan-tip-overlay">
<view class="scan-tip"> 请将二维码放入框内 </view>
</view>
</view> </view>
</template> </template>
@ -22,7 +34,7 @@ export default {
fail: () => {}, fail: () => {},
}, },
show: false, show: false,
html5QrCode: null, html5QrCode: null
}; };
}, },
methods: { methods: {
@ -95,15 +107,12 @@ export default {
that.html5QrCode = new Html5Qrcode("reader"); that.html5QrCode = new Html5Qrcode("reader");
let windowInfo = uni.getWindowInfo(); let windowInfo = uni.getWindowInfo();
// console.log(windowInfo);
const width = windowInfo&&windowInfo.windowWidth?windowInfo.windowWidth:375; const width = windowInfo&&windowInfo.windowWidth?windowInfo.windowWidth:375;
const height = windowInfo&&windowInfo.windowHeight?windowInfo.windowHeight:720; const height = windowInfo&&windowInfo.windowHeight?windowInfo.windowHeight:720;
// //
const aspectRatio = width / height; const aspectRatio = width / height;
// //
const reverseAspectRatio = height / width; const reverseAspectRatio = height / width;
const mobileAspectRatio = const mobileAspectRatio =
reverseAspectRatio > 1.5 reverseAspectRatio > 1.5
? reverseAspectRatio + (reverseAspectRatio * 12) / 100 ? reverseAspectRatio + (reverseAspectRatio * 12) / 100
@ -116,10 +125,15 @@ export default {
} else { } else {
cameraId = devices[0].id; cameraId = devices[0].id;
} }
// - 使/
// // - 使/
//
const qrboxSize = Math.min(width, height) * 0.7; const qrboxSize = Math.min(width, height) * 0.7;
console.log(qrboxSize); console.log(qrboxSize);
console.log(aspectRatio);
console.log(width,mobileAspectRatio);
that.$forceUpdate();
// 使 // 使
that.html5QrCode that.html5QrCode
.start( .start(
@ -127,18 +141,32 @@ export default {
facingMode: "environment", facingMode: "environment",
}, },
{ {
fps: 10, // fps: 10, //
aspectRatio: aspectRatio, aspectRatio: aspectRatio,
qrbox: { width: qrboxSize, height: qrboxSize }, // UI qrbox: { width: qrboxSize, height: qrboxSize }, // UI
videoConstraints: { videoConstraints: {
facingMode: "environment", facingMode: "environment",
aspectRatio: width < 600 ? mobileAspectRatio : aspectRatio, aspectRatio: width < 600 ? mobileAspectRatio : aspectRatio,
}, },
autofocus:true, // 使 // fps: 15, //
colorDark: '#0000ff', // // aspectRatio: 1.0, // 1:1
colorLight: '#ffffff',// // qrbox: {
visualFeedback:true, // // width: 280,
halfSample:true,// // height: 280
// }, //
// videoConstraints: {
// focusMode: "continuous", //
// width: { ideal: 1280 }, //
// height: { ideal: 720 },
// frameRate: { ideal: 30 }
// },
// disableFlip: false, //
// rememberLastUsedCamera: true, // 使
// showTorchButtonIfSupported: true,
// showZoomSliderIfSupported: true,
// defaultZoomValueIfSupported: 2,
// //
}, },
(decodedText, decodedResult) => { (decodedText, decodedResult) => {
// //
@ -180,15 +208,14 @@ export default {
z-index: 1000; z-index: 1000;
top: 0; top: 0;
left: 0; left: 0;
background-color: rgba(0, 0, 0, 0.5); background-color: rgba(0, 0, 0, 0.4);
} }
#reader { #reader {
top: 50%; top: 50%;
left: 0; left: 0;
transform: translateY(-50%); transform: translateY(-50%);
width: 100vw; position: relative;
height: 100vh;
} }
.scan-tip-overlay { .scan-tip-overlay {
@ -227,4 +254,80 @@ export default {
padding: 10px; padding: 10px;
border-radius: 5px; border-radius: 5px;
} }
/* 装饰层 */
.scan-mask {
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.3);
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.scan-box {
position: relative;
width: 480rpx;
height: 480rpx;
box-shadow: 0 0 0 1000px rgba(0, 0, 0, 0.4);
/* 形成中间镂空感 */
background: transparent;
}
.corner {
position: absolute;
width: 30rpx;
height: 30rpx;
border: 6rpx solid #ffffff;
}
.top-left {
top: 0;
left: 0;
border-right: none;
border-bottom: none;
}
.top-right {
top: 0;
right: 0;
border-left: none;
border-bottom: none;
}
.bottom-left {
bottom: 0;
left: 0;
border-right: none;
border-top: none;
}
.bottom-right {
bottom: 0;
right: 0;
border-left: none;
border-top: none;
}
.line {
position: absolute;
width: 100%;
height: 2px;
background: linear-gradient(to right, transparent, #ffffff, transparent);
animation: scanMove 2s infinite linear;
}
@keyframes scanMove {
0% {
top: 0;
}
100% {
top: 100%;
}
}
</style> </style>

@ -0,0 +1,28 @@
-----BEGIN PRIVATE KEY-----
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDuapx5FMYvAIoG
7suhSGoUFiACFmAiCGCrmL1cg9CCtPODAMF+JumfGyzusDj03qZitUa5/VFkeB3P
RWjeoX51i1KmMeXcg/qyRWS1x84U/XpuhdcQDUm0R7wmNhlEOVsZqmxwfCuODAPA
sEaJOgkerSSEXtXWG/M/eyxWWk3z4WMyVweLGziGzuQ6kT/zWg2hU6befpUC2GO0
5Fo0rFWzIdy0V95oGk6WkAZY8O/G1dVjheAl91MUbcdOYEvX5+h63N2WrtP+gtBa
CN383/HJvVk+9Duao342x85X6rKvmAfdqLIQRJ61ntropVYH7/CW6RcZqOMjlE6B
ZvmYCszvAgMBAAECggEAJmgzQ8gmcvztv1cpo5Y0TH8R8fQj0WezFwGYg7ZSWTQI
RHLTONzQ5sosb1khG8VgXWdheOXHfl1hQ/ok/jRa2Fm020QPiPoT4TMPmb8Rwkzh
M7vI3POfC3VA6JDveg+ZTuWm6Wn/ZDcoRZrACiw4uuHej5ptbTv8cB4KEvEiPKaj
Qk3MevmSMaOloAhLyXH9fV1kB5gcQiwOQy1eNw/XKQuFI3CW4kCcyE8dAlkDcY+L
dDP9uLypzGcHBK9o1v4BpCwGQmVVcbNs3BdmXSTR7z6ZlsHLVkcI+wbD4G2iUpWD
cW18FCk8T1HNFdHf3OOq12b+deYynkhf9TdX6Ye4BQKBgQD9Xvqx2oW3G14Erb+x
Nff6kF1uWqDOwJR4igkzNZ8lP6u/dyQ626VFWuA2o1GYEu/Zwr1yMGJxGfrI1bBU
Zx5PD0EVW/m53BOFt9QMwMVCWNsm+aIBUzqOCnd9CUfIy3Jo2RLQ8JzdfqMFHd1J
7g1HSEt1SzfhF5ho/WYBUGII2wKBgQDw4+idl1DwlI66e37EP+d9TQ05AzbaiRxf
F5yq3AkrubQ1lc+kygX6h06kKSPgQSTrLon+CU9sScsdIMoeG03n+uYnJpRGIch/
ws068Y+Yj62LpypWTt6MMkjy0ctgs7DjzJw+j3fUNj3REqqFTJZrZlvTa7YQ+/Go
ccYkA7mOfQKBgAin+Qqge5cA4VppkTX9sQYnbnm5sOq/W5MurBfKyjAcl8KH0H4O
SPwwmZ5kQAJhCz62T4CaNJLGn3HDEy4fA8MRs1iGduappSUZXa49279jh8EyIB3J
eSOnKePksEYk5Ti9yc3HmqRakjk3hvriniOETcepFTSkeLmFhrmexGqnAoGADsas
Gh6SBG/YYW/50qfo1zLGwNyFnNoUN3EHVyOwHFKDz1WlKwKJY1ixZjhvzu2wCg0M
wdxoVsggAWVlgHtESBqHy5b+OV8RIWUdmaP/nugRSSOz4R9tX0QmXV6pDwF2tEJ0
wxGh1A6PtCdk9lBAWc4pi8prnJcXt7Fi6gqgczECgYEAgCE/87+aUsb374IU3Ta3
fKVkMSRO2JgONdskBwm72fdQBcnJMjcJQlbE3rClxznDoWVSLkL0w9Xc5gdYEPX+
EmJrWUXq66arEA35J00Gu1lQPlNmPWb2Gq+WneHkRsSTJElpi6gSqQWRYEQTbIYt
SQuJZof0xt8gUYLPF8jJRTY=
-----END PRIVATE KEY-----

@ -203,24 +203,11 @@
"landscape-primary", "landscape-primary",
"landscape-secondary" "landscape-secondary"
], ],
"h5" : {}, "h5" : {
// "title" : "工装托盘管理", // "devServer" : {
// "template" : "template.h5.html", // "https" : true
// // h5 // }
// "devServer" : { },
// "port" : 8080,
// "disableHostCheck" : true, // Host
// "proxy" : {
// "/api" : {
// "target" :"http://pallet.dsic.cn", // "http://tpapp.runpengsoft.com",
// "changeOrigin" : true,
// "secure" : false,
// "pathRewrite" : {
// "^/api" : ""
// }
// }
// }
// }
// "h5" : { // "h5" : {
// "title" : "工装托盘管理", // "title" : "工装托盘管理",
// "template" : "template.h5.html", // "template" : "template.h5.html",

@ -1051,7 +1051,7 @@ export default {
// requireAddress // requireAddress
this.itemList.requireAddress=firstpallet?firstpallet.requireAddress:''; this.itemList.requireAddress=firstpallet?firstpallet.requireAddress:'';
// requireName+ +requirePhone // requireName+ +requirePhone
this.itemList.requireName=firstpallet?firstpallet.requireName:''+' '+firstpallet?firstpallet.requirePhone:''; this.itemList.requireName=firstpallet&&firstpallet.requireName?firstpallet.requireName:''+' '+firstpallet&&firstpallet.requirePhone?firstpallet.requirePhone:'';
// deliveryDate // deliveryDate
this.itemList.deliveryDate=firstpallet?firstpallet.deliveryDate:''; this.itemList.deliveryDate=firstpallet?firstpallet.deliveryDate:'';
// deliveryCar // deliveryCar

Loading…
Cancel
Save