This commit is contained in:
yangzhq68909 2024-09-27 11:03:07 +08:00
parent 8809cc1975
commit 33666985b6
17 changed files with 85 additions and 302 deletions

View File

@ -1 +1,20 @@
数智产销APP正式版 数智产销APP正式版
发布需要在pages/login/login.vue中
```javascript
localLoginApi({
username: username.value,
password: password.value,
captcha: 'app'
```
改成
```javascript
loginApi({
username: un,
password: pw,
ip: getDeviceIp()
```

View File

@ -2,8 +2,8 @@
"name" : "数智产销", "name" : "数智产销",
"appid" : "__UNI__F0AFD30", "appid" : "__UNI__F0AFD30",
"description" : "", "description" : "",
"versionName" : "1.0.0", "versionName" : "1.0.5",
"versionCode" : 100, "versionCode" : 20240927,
"transformPx" : false, "transformPx" : false,
/* 5+App */ /* 5+App */
"app-plus" : { "app-plus" : {

View File

@ -16,7 +16,6 @@
<image v-if="showpwd" src="@/static/login/eye.png" @click="showpwd = !showpwd"></image> <image v-if="showpwd" src="@/static/login/eye.png" @click="showpwd = !showpwd"></image>
<image v-else src="@/static/login/eye-off.png" @click="showpwd = !showpwd"></image> <image v-else src="@/static/login/eye-off.png" @click="showpwd = !showpwd"></image>
</view> </view>
</view> </view>
<view class="pwd f-row aic"> <view class="pwd f-row aic">
<view style="display: inline-block;" @click="check = !check"> <view style="display: inline-block;" @click="check = !check">
@ -42,6 +41,7 @@
watch watch
} from 'vue'; } from 'vue';
import { import {
loginApi,
localLoginApi, localLoginApi,
queryRoleApi queryRoleApi
} from '@/api/login.js'; } from '@/api/login.js';
@ -56,7 +56,7 @@
const { const {
proxy proxy
} = getCurrentInstance() } = getCurrentInstance()
/**是否明文显示密码*/ /**是否明文显示密码*/
const showpwd = ref(false) const showpwd = ref(false)
/**用于用户缓存账号和密码*/ /**用于用户缓存账号和密码*/
@ -79,16 +79,27 @@
/**密码*/ /**密码*/
const password = ref('') const password = ref('')
const login = () => { const login = () => {
if (!username.value.trim()) return proxy.$toast('请输入账号') if (!username.value.trim()) return proxy.$toast('请输入账号')
if (!password.value.trim()) return proxy.$toast('请输入密码') if (!password.value.trim()) return proxy.$toast('请输入密码')
let un = Base64.encode(encodeURIComponent(username.value))
let pw = Base64.encode(encodeURIComponent(password.value))
uni.showLoading({ uni.showLoading({
title: '登录中...' title: '登录中...'
}); });
localLoginApi({
username: username.value, /*生产环境 begin */
password: password.value, loginApi({
captcha: 'app' username: un,
password: pw,
ip: getDeviceIp()
/*生产环境 end */
/*开发环境 begin */
// localLoginApi({
// username: username.value,
// password: password.value,
// captcha: 'app'
/*开发环境 end */
}).then((loginres) => { }).then((loginres) => {
if (loginres.success) { if (loginres.success) {
uni.setStorageSync('token', loginres.result.token) uni.setStorageSync('token', loginres.result.token)
@ -130,7 +141,40 @@
username.value = obj.un ? obj.un : '' username.value = obj.un ? obj.un : ''
password.value = obj.pw ? obj.pw : '' password.value = obj.pw ? obj.pw : ''
} }
// localAccountArr = uni.getStorageSync('accountArr') ? JSON.parse(uni.getStorageSync('accountArr')) : []
// accountArr.value = localAccountArr
}) })
function getDeviceIp() {
// #ifdef APP-PLUS
let deviceIp
if (plus.os.name == "Android") {
let Context = plus.android.importClass('android.content.Context')
let main = plus.android.runtimeMainActivity()
let cm = main.getSystemService(Context.CONNECTIVITY_SERVICE)
plus.android.importClass(cm)
let linkProperties = cm.getLinkProperties(cm.getActiveNetwork())
let linkAddrs = plus.android.invoke(linkProperties, 'getLinkAddresses')
plus.android.importClass(linkAddrs)
for (var i = 0; i < linkAddrs.size(); i++) {
let inetAddr = plus.android.invoke(linkAddrs.get(i), 'getAddress')
deviceIp = plus.android.invoke(inetAddr, 'getHostAddress')
}
//wifi
if (deviceIp == '') {
var wifiManager = plus.android.runtimeMainActivity().getSystemService(Context.WIFI_SERVICE);
var wifiInfo = plus.android.invoke(wifiManager, "getConnectionInfo");
var ipAddress = plus.android.invoke(wifiInfo, "getIpAddress");
if (ipAddress != 0) {
deviceIp = ((ipAddress & 0xff) + "." + (ipAddress >> 8 & 0xff) + "." + (ipAddress >> 16 &
0xff) + "." + (ipAddress >> 24 & 0xff));
}
}
}
return deviceIp;
// #endif
}
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>

View File

@ -1,280 +0,0 @@
<template>
<view :class="{'gray':store.isgray==1}">
<view class="logo f-col aic">
<image src="@/static/login/logo.png"></image>
</view>
<view class="form f-col aic">
<view class="box f-row aic">
<image src="@/static/login/phone.png"></image>
<input v-model="username" type="text" placeholder="请输入统一身份认证"
placeholder-style="font-size: 28rpx;color: #999999;" />
</view>
<view class="box f-row aic">
<image src="@/static/login/pwd.png"></image>
<input v-model="password" :type="!showpwd?'password':'text'" placeholder="请输入密码"
placeholder-style="font-size: 28rpx;color: #999999;" />
<image v-if="showpwd" src="@/static/login/eye.png" @click="showpwd = !showpwd"></image>
<image v-else src="@/static/login/eye-off.png" @click="showpwd = !showpwd"></image>
</view>
</view>
<view class="pwd f-row aic">
<view style="display: inline-block;" @click="check = !check">
<view class="f-row aic">
<image v-if="!check" src="@/static/login/nocheck.png"></image>
<image v-else src="@/static/login/checked.png"></image>
<text>记住密码</text>
</view>
</view>
</view>
<view class="login f-col aic">
<view @click="login">
登录
</view>
</view>
</view>
</template>
<script setup>
import {
ref,
getCurrentInstance,
watch
} from 'vue';
import {
loginApi,
queryRoleApi
} from '@/api/login.js';
import Base64 from 'base-64';
import {
onLoad
} from '@dcloudio/uni-app'
import {
useStore
} from '@/store'
const store = useStore()
const {
proxy
} = getCurrentInstance()
/**是否明文显示密码*/
const showpwd = ref(false)
/**用于用户缓存账号和密码*/
let localObj = {}
/**记住账号和密码*/
const savePwd = () => {
let localObj = {
un: username.value
}
if (check.value) {
localObj.pw = password.value
}
uni.setStorageSync('accountObj', JSON.stringify(localObj))
}
/**是否选中记住密码*/
const check = ref(true);
/**账号*/
const username = ref('')
/**密码*/
const password = ref('')
const login = () => {
if (!username.value.trim()) return proxy.$toast('请输入账号')
if (!password.value.trim()) return proxy.$toast('请输入密码')
let un = Base64.encode(encodeURIComponent(username.value))
let pw = Base64.encode(encodeURIComponent(password.value))
uni.showLoading({
title: '登录中...'
});
loginApi({
username: un,
password: pw,
ip: getDeviceIp()
}).then((loginres) => {
if (loginres.success) {
uni.setStorageSync('token', loginres.result.token)
store.setToken(loginres.result.token)
savePwd()
queryRoleApi({
roles: loginres.result.userInfo.roles
}).then((roleres) => {
//
uni.setStorageSync('logintime', Date.now())
//
uni.setStorageSync('role', roleres)
store.setRole(roleres)
//
uni.setStorageSync('user', JSON.stringify(loginres.result
.userInfo))
store.setUserInfo(loginres.result.userInfo)
//
uni.switchTab({
url: '/pages/tab/index'
})
})
}
}).catch((err) => {
console.log(err);
})
}
let localAccountArr = []
const accountArr = ref([])
onLoad(() => {
if (uni.getStorageSync('accountObj')) {
let obj = JSON.parse(uni.getStorageSync('accountObj'))
username.value = obj.un ? obj.un : ''
password.value = obj.pw ? obj.pw : ''
}
// localAccountArr = uni.getStorageSync('accountArr') ? JSON.parse(uni.getStorageSync('accountArr')) : []
// accountArr.value = localAccountArr
})
function getDeviceIp() {
// #ifdef APP-PLUS
let deviceIp
if (plus.os.name == "Android") {
let Context = plus.android.importClass('android.content.Context')
let main = plus.android.runtimeMainActivity()
let cm = main.getSystemService(Context.CONNECTIVITY_SERVICE)
plus.android.importClass(cm)
let linkProperties = cm.getLinkProperties(cm.getActiveNetwork())
let linkAddrs = plus.android.invoke(linkProperties, 'getLinkAddresses')
plus.android.importClass(linkAddrs)
for (var i = 0; i < linkAddrs.size(); i++) {
let inetAddr = plus.android.invoke(linkAddrs.get(i), 'getAddress')
deviceIp = plus.android.invoke(inetAddr, 'getHostAddress')
}
//wifi
if (deviceIp == '') {
var wifiManager = plus.android.runtimeMainActivity().getSystemService(Context.WIFI_SERVICE);
var wifiInfo = plus.android.invoke(wifiManager, "getConnectionInfo");
var ipAddress = plus.android.invoke(wifiInfo, "getIpAddress");
if (ipAddress != 0) {
deviceIp = ((ipAddress & 0xff) + "." + (ipAddress >> 8 & 0xff) + "." + (ipAddress >> 16 &
0xff) + "." + (ipAddress >> 24 & 0xff));
}
}
}
return deviceIp;
// #endif
}
</script>
<style lang="scss" scoped>
:deep(.uni-select) {
border: none;
padding-left: 0;
height: 88rpx;
}
:deep(.uni-select__input-placeholder) {
font-size: 28rpx;
color: #999999;
}
:deep(.uni-icons) {
display: none;
}
.logo {
padding-top: 184rpx;
image {
width: 475rpx;
height: 199rpx;
}
}
.form {
margin-top: 60rpx;
.box {
width: 570rpx;
height: 88rpx;
background: #F8F8F8;
border-radius: 44rpx;
padding: 0 30rpx;
margin-top: 40rpx;
position: relative;
.account_box {
position: absolute;
top: 100rpx;
left: 90rpx;
width: 500rpx;
background-color: #fff;
box-shadow: 0px 0px 3px 1px #dfdfdf;
z-index: 99;
border-radius: 10rpx;
// &::after {
// position: absolute;
// content: ' ';
// border: 15rpx solid;
// border-color: transparent transparent #fff transparent;
// top: -30rpx;
// left: 30rpx;
// z-index: 999;
// }
.account {
max-height: 200rpx;
overflow-y: auto;
view {
padding: 10rpx;
}
}
}
image {
width: 40rpx;
height: 40rpx;
margin-right: 20rpx;
}
input {
height: 100%;
flex: 1;
}
}
}
.pwd {
image {
width: 34rpx;
height: 34rpx;
margin-right: 4rpx;
}
justify-content: flex-end;
margin-top: 20rpx;
margin-right: 60rpx;
font-size: 24rpx;
color: #01508B;
}
.login {
margin-top: 63rpx;
view {
width: 630rpx;
height: 88rpx;
background: #4e74fb;
border-radius: 44rpx;
font-size: 32rpx;
color: #FFFFFF;
text-align: center;
line-height: 88rpx;
}
}
</style>

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
{"@platforms":["android","iPhone","iPad"],"id":"__UNI__F0AFD30","name":"数智产销","version":{"name":"1.0.0","code":100},"description":"","developer":{"name":"","email":"","url":""},"permissions":{"Geolocation":{},"UniNView":{"description":"UniNView原生渲染"}},"plus":{"useragent":{"value":"uni-app","concatenate":true},"splashscreen":{"autoclose":true,"delay":0,"target":"id:1","waiting":true},"popGesture":"close","launchwebview":{"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":{"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\"/>"],"packagename":"uni.UNIF0AFD30","aliasname":"__uni__f0afd30","password":"4Z2SSz2hk5AO56cxUDfY3A==","keystore":"google-keystore.keystore","custompermissions":true},"apple":{"dSYMs":false,"devices":"universal"},"plugins":{"ad":{},"audio":{"mp3":{"description":"Android平台录音支持MP3格式文件"}},"geolocation":{"system":{"__platform__":["android"]}}},"orientation":"portrait-primary"},"statusbar":{"immersed":"supportedDevice","style":"dark","background":"#000000"},"uniStatistics":{"enable":false},"allowsInlineMediaPlayback":true,"safearea":{"background":"#FFFFFF","bottom":{"offset":"auto"}},"uni-app":{"control":"uni-v3","vueVersion":"3","compilerVersion":"4.15","nvueCompiler":"uni-app","renderer":"auto","nvue":{"flex-direction":"column"},"nvueLaunchMode":"normal","webView":{"minUserAgentVersion":"49.0"}},"tabBar":{"position":"bottom","color":"#333333","selectedColor":"#01508B","borderStyle":"rgba(0,0,0,0.4)","blurEffect":"none","fontSize":"10px","iconWidth":"24px","spacing":"3px","height":"50px","backgroundColor":"#FFFFFF","list":[{"text":"首页","pagePath":"pages/tab/index","iconPath":"/static/tab/index1.png","selectedIconPath":"/static/tab/index2.png"},{"text":"办公","pagePath":"pages/tab/office","iconPath":"/static/tab/office1.png","selectedIconPath":"/static/tab/office2.png"},{"text":"生产","pagePath":"pages/tab/product","iconPath":"/static/tab/product1.png","selectedIconPath":"/static/tab/product2.png"},{"text":"我的","pagePath":"pages/tab/my","iconPath":"/static/tab/user1.png","selectedIconPath":"/static/tab/user2.png"}],"midButton":{"width":"65px","height":"75px","text":"","iconPath":"static/tab/todo.png","iconWidth":"50px"},"selectedIndex":0,"shown":true},"adid":"120390270110"},"launch_path":"__uniappview.html"} {"@platforms":["android","iPhone","iPad"],"id":"__UNI__F0AFD30","name":"数智产销","version":{"name":"1.0.5","code":20240927},"description":"","developer":{"name":"","email":"","url":""},"permissions":{"Geolocation":{},"UniNView":{"description":"UniNView原生渲染"}},"plus":{"useragent":{"value":"uni-app","concatenate":true},"splashscreen":{"autoclose":true,"delay":0,"target":"id:1","waiting":true},"popGesture":"close","launchwebview":{"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":{"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\"/>"],"packagename":"uni.UNIF0AFD30","aliasname":"__uni__f0afd30","password":"4Z2SSz2hk5AO56cxUDfY3A==","keystore":"google-keystore.keystore","custompermissions":true},"apple":{"dSYMs":false,"devices":"universal"},"plugins":{"ad":{},"audio":{"mp3":{"description":"Android平台录音支持MP3格式文件"}},"geolocation":{"system":{"__platform__":["android"]}}},"orientation":"portrait-primary"},"statusbar":{"immersed":"supportedDevice","style":"dark","background":"#000000"},"uniStatistics":{"enable":false},"allowsInlineMediaPlayback":true,"safearea":{"background":"#FFFFFF","bottom":{"offset":"auto"}},"uni-app":{"control":"uni-v3","vueVersion":"3","compilerVersion":"4.15","nvueCompiler":"uni-app","renderer":"auto","nvue":{"flex-direction":"column"},"nvueLaunchMode":"normal","webView":{"minUserAgentVersion":"49.0"}},"tabBar":{"position":"bottom","color":"#333333","selectedColor":"#01508B","borderStyle":"rgba(0,0,0,0.4)","blurEffect":"none","fontSize":"10px","iconWidth":"24px","spacing":"3px","height":"50px","backgroundColor":"#FFFFFF","list":[{"text":"首页","pagePath":"pages/tab/index","iconPath":"/static/tab/index1.png","selectedIconPath":"/static/tab/index2.png"},{"text":"办公","pagePath":"pages/tab/office","iconPath":"/static/tab/office1.png","selectedIconPath":"/static/tab/office2.png"},{"text":"生产","pagePath":"pages/tab/product","iconPath":"/static/tab/product1.png","selectedIconPath":"/static/tab/product2.png"},{"text":"我的","pagePath":"pages/tab/my","iconPath":"/static/tab/user1.png","selectedIconPath":"/static/tab/user2.png"}],"midButton":{"width":"65px","height":"75px","text":"","iconPath":"static/tab/todo.png","iconWidth":"50px"},"selectedIndex":0,"shown":true},"adid":"120390270110"},"launch_path":"__uniappview.html"}

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
[data-v-a8489625] .uni-select{border:none;padding-left:0;height:2.75rem}[data-v-a8489625] .uni-select__input-placeholder{font-size:.875rem;color:#999}[data-v-a8489625] .uni-icons{display:none}.logo[data-v-a8489625]{padding-top:5.75rem}.logo uni-image[data-v-a8489625]{width:14.84375rem;height:6.21875rem}.form[data-v-a8489625]{margin-top:1.875rem}.form .box[data-v-a8489625]{width:17.8125rem;height:2.75rem;background:#f8f8f8;border-radius:1.375rem;padding:0 .9375rem;margin-top:1.25rem;position:relative}.form .box .account_box[data-v-a8489625]{position:absolute;top:3.125rem;left:2.8125rem;width:15.625rem;background-color:#fff;box-shadow:0 0 3px 1px #dfdfdf;z-index:99;border-radius:.3125rem}.form .box .account_box .account[data-v-a8489625]{max-height:6.25rem;overflow-y:auto}.form .box .account_box .account uni-view[data-v-a8489625]{padding:.3125rem}.form .box uni-image[data-v-a8489625]{width:1.25rem;height:1.25rem;margin-right:.625rem}.form .box uni-input[data-v-a8489625]{height:100%;flex:1}.pwd[data-v-a8489625]{justify-content:flex-end;margin-top:.625rem;margin-right:1.875rem;font-size:.75rem;color:#01508b}.pwd uni-image[data-v-a8489625]{width:1.0625rem;height:1.0625rem;margin-right:.125rem}.login[data-v-a8489625]{margin-top:1.96875rem}.login uni-view[data-v-a8489625]{width:19.6875rem;height:2.75rem;background:#4e74fb;border-radius:1.375rem;font-size:1rem;color:#fff;text-align:center;line-height:2.75rem} [data-v-a774db70] .uni-select{border:none;padding-left:0;height:2.75rem}[data-v-a774db70] .uni-select__input-placeholder{font-size:.875rem;color:#999}[data-v-a774db70] .uni-icons{display:none}.logo[data-v-a774db70]{padding-top:5.75rem}.logo uni-image[data-v-a774db70]{width:14.84375rem;height:6.21875rem}.form[data-v-a774db70]{margin-top:1.875rem}.form .box[data-v-a774db70]{width:17.8125rem;height:2.75rem;background:#f8f8f8;border-radius:1.375rem;padding:0 .9375rem;margin-top:1.25rem;position:relative}.form .box .account_box[data-v-a774db70]{position:absolute;top:3.125rem;left:2.8125rem;width:15.625rem;background-color:#fff;box-shadow:0 0 3px 1px #dfdfdf;z-index:99;border-radius:.3125rem}.form .box .account_box .account[data-v-a774db70]{max-height:6.25rem;overflow-y:auto}.form .box .account_box .account uni-view[data-v-a774db70]{padding:.3125rem}.form .box uni-image[data-v-a774db70]{width:1.25rem;height:1.25rem;margin-right:.625rem}.form .box uni-input[data-v-a774db70]{height:100%;flex:1}.pwd[data-v-a774db70]{justify-content:flex-end;margin-top:.625rem;margin-right:1.875rem;font-size:.75rem;color:#01508b}.pwd uni-image[data-v-a774db70]{width:1.0625rem;height:1.0625rem;margin-right:.125rem}.login[data-v-a774db70]{margin-top:1.96875rem}.login uni-view[data-v-a774db70]{width:19.6875rem;height:2.75rem;background:#4e74fb;border-radius:1.375rem;font-size:1rem;color:#fff;text-align:center;line-height:2.75rem}

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__F0AFD30", "id": "__UNI__F0AFD30",
"name": "数智产销", "name": "数智产销",
"version": { "version": {
"name": "1.0.0", "name": "1.0.5",
"code": 100 "code": 20240927
}, },
"description": "", "description": "",
"developer": { "developer": {

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
[data-v-a8489625] .uni-select{border:none;padding-left:0;height:2.75rem}[data-v-a8489625] .uni-select__input-placeholder{font-size:.875rem;color:#999}[data-v-a8489625] .uni-icons{display:none}.logo[data-v-a8489625]{padding-top:5.75rem}.logo uni-image[data-v-a8489625]{width:14.84375rem;height:6.21875rem}.form[data-v-a8489625]{margin-top:1.875rem}.form .box[data-v-a8489625]{width:17.8125rem;height:2.75rem;background:#f8f8f8;border-radius:1.375rem;padding:0 .9375rem;margin-top:1.25rem;position:relative}.form .box .account_box[data-v-a8489625]{position:absolute;top:3.125rem;left:2.8125rem;width:15.625rem;background-color:#fff;box-shadow:0 0 3px 1px #dfdfdf;z-index:99;border-radius:.3125rem}.form .box .account_box .account[data-v-a8489625]{max-height:6.25rem;overflow-y:auto}.form .box .account_box .account uni-view[data-v-a8489625]{padding:.3125rem}.form .box uni-image[data-v-a8489625]{width:1.25rem;height:1.25rem;margin-right:.625rem}.form .box uni-input[data-v-a8489625]{height:100%;flex:1}.pwd[data-v-a8489625]{justify-content:flex-end;margin-top:.625rem;margin-right:1.875rem;font-size:.75rem;color:#01508b}.pwd uni-image[data-v-a8489625]{width:1.0625rem;height:1.0625rem;margin-right:.125rem}.login[data-v-a8489625]{margin-top:1.96875rem}.login uni-view[data-v-a8489625]{width:19.6875rem;height:2.75rem;background:#4e74fb;border-radius:1.375rem;font-size:1rem;color:#fff;text-align:center;line-height:2.75rem} [data-v-a774db70] .uni-select{border:none;padding-left:0;height:2.75rem}[data-v-a774db70] .uni-select__input-placeholder{font-size:.875rem;color:#999}[data-v-a774db70] .uni-icons{display:none}.logo[data-v-a774db70]{padding-top:5.75rem}.logo uni-image[data-v-a774db70]{width:14.84375rem;height:6.21875rem}.form[data-v-a774db70]{margin-top:1.875rem}.form .box[data-v-a774db70]{width:17.8125rem;height:2.75rem;background:#f8f8f8;border-radius:1.375rem;padding:0 .9375rem;margin-top:1.25rem;position:relative}.form .box .account_box[data-v-a774db70]{position:absolute;top:3.125rem;left:2.8125rem;width:15.625rem;background-color:#fff;box-shadow:0 0 3px 1px #dfdfdf;z-index:99;border-radius:.3125rem}.form .box .account_box .account[data-v-a774db70]{max-height:6.25rem;overflow-y:auto}.form .box .account_box .account uni-view[data-v-a774db70]{padding:.3125rem}.form .box uni-image[data-v-a774db70]{width:1.25rem;height:1.25rem;margin-right:.625rem}.form .box uni-input[data-v-a774db70]{height:100%;flex:1}.pwd[data-v-a774db70]{justify-content:flex-end;margin-top:.625rem;margin-right:1.875rem;font-size:.75rem;color:#01508b}.pwd uni-image[data-v-a774db70]{width:1.0625rem;height:1.0625rem;margin-right:.125rem}.login[data-v-a774db70]{margin-top:1.96875rem}.login uni-view[data-v-a774db70]{width:19.6875rem;height:2.75rem;background:#4e74fb;border-radius:1.375rem;font-size:1rem;color:#fff;text-align:center;line-height:2.75rem}

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.