| | |
| | | |
| | | <div class="warn-tag" v-if="showFreeVersion"> |
| | | <span v-if="!snExpire" class="text" |
| | | >试用版尚未激活,仅支持部分功能使用,如需使用全部功能,请尽快激活系统。</span |
| | | >试用版尚未激活,仅支持使用部分功能,如需使用全部功能,请尽快激活。</span |
| | | > |
| | | <span v-else class="text">SmartAIOS 试用期已到期,请您尽快激活系统</span> |
| | | <div> |
| | | <span class="go-to" @click="gotoActive">前往激活</span> |
| | | <span class="icon iconfont" @click="showFreeVersion = false" |
| | | <span |
| | | class="icon iconfont" |
| | | v-if="!snExpire" |
| | | @click="showFreeVersion = false" |
| | | ></span |
| | | > |
| | | </div> |
| | |
| | | <el-dialog |
| | | title="激活SmartAI" |
| | | :visible.sync="activeDialog" |
| | | width="750px" |
| | | width="640px" |
| | | custom-class="my-activate" |
| | | :show-close="false" |
| | | :close-on-click-modal="false" |
| | | :close-on-press-escape="false" |
| | |
| | | <el-dialog |
| | | width="30%" |
| | | title="账户激活" |
| | | custom-class="my-account" |
| | | :visible.sync="innerVisible" |
| | | append-to-body |
| | | class="inner-login-dialog" |
| | | > |
| | | <div class="info"> |
| | | 请输入你在SmartAI商城账户的手机号并完成验证码校验,实现系统激活! |
| | | <span style="font-size: 14px; line-height: 21px; color: #5f5f5f"> |
| | | 请输入你在SmartAI商城账户的手机号并完成验证码校验,实现系统激活! |
| | | </span> |
| | | </div> |
| | | <div class="login-content"> |
| | | <el-form |
| | |
| | | class="demo-ruleForm" |
| | | > |
| | | <el-form-item prop="phoneNum" style="margin-top: 20px"> |
| | | <el-input |
| | | v-model="phone.phoneNum" |
| | | style="width: 380px" |
| | | placeholder="请输入手机号" |
| | | > |
| | | <el-input v-model="phone.phoneNum" placeholder="请输入手机号"> |
| | | <i slot="prefix" class="el-icon-mobile-phone"></i> |
| | | </el-input> |
| | | </el-form-item> |
| | |
| | | @keyup.enter.native="phoneLogin" |
| | | v-model="phone.verifyCode" |
| | | autocomplete="off" |
| | | style="width: 254px" |
| | | placeholder="请输入验证码" |
| | | > |
| | | <i slot="prefix" class="el-icon-message"></i> |
| | | <el-button |
| | | class="code-btn" |
| | | slot="suffix" |
| | | style="margin-left: 15px" |
| | | :disabled="codeDisabled" |
| | | @click="getCode" |
| | | >{{ codeMsg }}</el-button |
| | | > |
| | | </el-input> |
| | | <el-button |
| | | class="code-btn" |
| | | style="margin-left: 15px" |
| | | :disabled="codeDisabled" |
| | | @click="getCode" |
| | | >{{ codeMsg }}</el-button |
| | | > |
| | | </el-form-item> |
| | | </el-form> |
| | | </div> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="cancelLogin">取消</el-button> |
| | | <el-button type="primary" @click="loginShop">确定</el-button> |
| | | <div class="btns"> |
| | | <el-button class="cancel" @click="cancelLogin">取消</el-button> |
| | | <el-button class="ok" type="primary" @click="loginShop" |
| | | >确定</el-button |
| | | > |
| | | </div> |
| | | </span> |
| | | </el-dialog> |
| | | <div class="ver"> |
| | |
| | | </div> |
| | | <el-divider></el-divider> |
| | | <div class="info" v-if="versionName == 'SmartAI正式版'"> |
| | | 如果您已连接到Internet并且已购买产品密钥,可以尝试验证SmartAI商城账户激活系统。 |
| | | <div class="margin-top:10px;"> |
| | | <span style="font-weight: bold; font-size: 18px">· </span> |
| | | <span style="font-size: 14px; line-height: 21px; color: #5f5f5f"> |
| | | 如果您已连接到Internet并且已购买产品密钥,可以尝试验证SmartAI商城账户激活系统。 |
| | | </span> |
| | | <div style="padding: 15px 0"> |
| | | <el-button type="primary" @click="innerVisible = true"> |
| | | 账户激活 |
| | | </el-button> |
| | | </div> |
| | | </div> |
| | | <div class="info" v-if="versionName == 'SmartAI正式版'"> |
| | | 如果您未连接Internet或激活失败,可尝试离线激活,使用手机扫码购买产品或验证SmartAI商城账户激活系统。 |
| | | <span style="font-weight: bold; font-size: 18px">· </span> |
| | | <span style="font-size: 14px; line-height: 21px; color: #5f5f5f"> |
| | | 如果您未连接Internet或激活失败,可尝试离线激活,请用手机扫码购买产品或验证SmartAI商城账户激活系统。 |
| | | </span> |
| | | </div> |
| | | <div class="info" v-if="versionName !== 'SmartAI正式版'"> |
| | | 如果还没有产品密钥,你可以使用手机扫码或前往此链接 |
| | | <a href="http://apps.smartai.com" target="_blank" |
| | | >http://apps.smartai.com</a |
| | | > |
| | | 购买。 |
| | | <span style="font-weight: bold; font-size: 18px">· </span> |
| | | <span style="font-size: 14px; line-height: 21px; color: #5f5f5f"> |
| | | 如果还没有产品密钥,你可以使用手机扫码或前往此链接 |
| | | <a href="http://apps.smartai.com" target="_blank" |
| | | >http://apps.smartai.com</a |
| | | > |
| | | 购买。 |
| | | </span> |
| | | </div> |
| | | <img class="qr-code-img" src="/version/offline/qrcode" /> |
| | | <el-divider></el-divider> |
| | | <div class="ask"> |
| | | 如果你具有SmartAI提供的产品密钥,请在此处输入激活SmartAI。 |
| | | <span style="font-weight: bold; font-size: 18px">· </span> |
| | | <span style="font-size: 14px; line-height: 21px; color: #5f5f5f"> |
| | | 如果您有SmartAI提供的产品密钥,请在此处输入,激活SmartAI。 |
| | | </span> |
| | | </div> |
| | | <div class="validate"> |
| | | <form id="myForm"> |
| | | <el-input |
| | | type="textarea" |
| | | autosize |
| | | style="width: 480px" |
| | | placeholder="将产品密钥粘贴在此处" |
| | | style="width: 450px" |
| | | placeholder="请输入或导入密钥" |
| | | v-model="secrectKey" |
| | | > |
| | | </el-input> |
| | |
| | | :limit="1" |
| | | :show-file-list="false" |
| | | > |
| | | <el-button size="small" type="primary">导入产品密钥文件</el-button> |
| | | <el-button size="small" type="primary">导入密钥</el-button> |
| | | </el-upload> |
| | | </div> |
| | | <!-- <el-divider></el-divider> --> |
| | | |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button |
| | | v-if="!snExpire && versionName != 'SmartAI正式版'" |
| | | @click="activeDialog = false" |
| | | >继续试用</el-button |
| | | > |
| | | <el-button |
| | | v-if="snExpire && versionName != 'SmartAI正式版'" |
| | | @click="$emit('quit')" |
| | | >退出登录</el-button |
| | | > |
| | | <el-button type="primary" @click="activateVersion">激活</el-button> |
| | | <!-- v-if="!snExpire && versionName != 'SmartAI正式版'" --> |
| | | <div class="btns"> |
| | | <el-button class="cancel" @click="activeDialog = false" |
| | | >继续试用</el-button |
| | | > |
| | | <el-button |
| | | class="cancel" |
| | | v-if="snExpire && versionName != 'SmartAI正式版'" |
| | | @click="$emit('quit')" |
| | | >退出登录 |
| | | </el-button> |
| | | <el-button class="ok" type="primary" @click="activateVersion" |
| | | >激活</el-button |
| | | > |
| | | </div> |
| | | </span> |
| | | </el-dialog> |
| | | |
| | |
| | | title="我的订单" |
| | | :visible.sync="innerDialog" |
| | | width="750px" |
| | | :show-close="false" |
| | | :show-close="true" |
| | | :close-on-click-modal="false" |
| | | :close-on-press-escape="false" |
| | | custom-class="my-order" |
| | |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <!-- <div class="order-card" v-for="(item, index) in orderList" :key="index"> |
| | | <div class="head"> |
| | | <el-checkbox v-model="checked"> |
| | | <span>订单ID:{{ item.id }}</span> |
| | | </el-checkbox> |
| | | |
| | | <span>¥{{ item.orderMoney }} 元</span> |
| | | </div> |
| | | <div class="desc"> |
| | | <div>系统版本:{{ item.products[0]&&item.products[0].productVersion }}</div> |
| | | <div>通道数量:{{ item.products[0]&&item.products[0].ChCount }}</div> |
| | | <div>摄像机数量:{{ item.products[0]&&item.products[0].cameraCount }}</div> |
| | | <div>服务时长:{{ item.products[0]&&item.products[0].serveYear }} 年</div> |
| | | |
| | | </div> |
| | | </div> --> |
| | | </div> |
| | | <div class="no-order-list" v-else>抱歉,没有查询到订单。</div> |
| | | <span slot="footer" class="dialog-footer"> |
| | |
| | | } |
| | | }, |
| | | loginShop() { |
| | | // this.innerDialog = true |
| | | // this.activeDialog=false |
| | | // getShopOrderList({ |
| | | // token: "", |
| | | // }).then((res) => { |
| | | // this.orderList=res.data.list |
| | | // }); |
| | | this.$refs["phoneLogin"].validate((valid) => { |
| | | if (valid) { |
| | | let param = { |
| | |
| | | width: 100%; |
| | | height: 100%; |
| | | .el-dialog__header { |
| | | padding: 15px 20px 10px; |
| | | text-align: left; |
| | | font-weight: 600; |
| | | padding: 14px 20px 13px; |
| | | text-align: center; |
| | | box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.08); |
| | | .el-dialog__title { |
| | | font-weight: 600; |
| | | font-size: 18px; |
| | | color: #5f5f5f; |
| | | line-height: 25px; |
| | | } |
| | | } |
| | | .el-dialog__body { |
| | | text-align: left; |
| | | padding: 30px 50px; |
| | | padding: 30px; |
| | | padding-top: 20px; |
| | | } |
| | | .el-divider--horizontal { |
| | |
| | | display: flex; |
| | | align-items: baseline; |
| | | margin-top: 15px; |
| | | .upload-demo { |
| | | .el-button--small { |
| | | font-size: 14px; |
| | | border-radius: 3px; |
| | | border-radius: 16px; |
| | | background-color: var(--colorCard) !important; |
| | | border-color: var(--colorCard) !important; |
| | | min-width: 120px; |
| | | } |
| | | } |
| | | } |
| | | #myForm { |
| | | display: flex; |
| | | align-items: center; |
| | | margin-right: 10px; |
| | | .el-textarea__inner { |
| | | min-height: 32px; |
| | | height: 32px; |
| | | border: 1px solid #d4d6d9; |
| | | box-sizing: border-box; |
| | | border-radius: 16px; |
| | | } |
| | | |
| | | .single-input { |
| | | margin: 0 8px; |
| | | width: 60px; |
| | |
| | | .ver { |
| | | margin-bottom: 10px; |
| | | font-size: 16px; |
| | | color: #5f5f5f; |
| | | font-weight: bold; |
| | | .ver-text { |
| | | font-weight: 600; |
| | | color: #666666; |
| | | font-weight: 400; |
| | | } |
| | | } |
| | | .info { |
| | | font-size: 15px; |
| | | margin-bottom: 10px; |
| | | } |
| | | .qr-code-img { |
| | | // width: 120px; |
| | | // height: 120px; |
| | | .el-button--primary { |
| | | font-size: 14px; |
| | | color: #fff; |
| | | background-color: var(--colorCard); |
| | | border-color: #4e94ff !important; |
| | | background: #4e94ff !important; |
| | | border-radius: 16px; |
| | | width: 200px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | height: 32px; |
| | | line-height: 32px; |
| | | } |
| | | } |
| | | .ask { |
| | | margin-top: 20px; |
| | | font-size: 15px; |
| | | } |
| | | } |
| | | .inner-login-dialog { |
| | | .info { |
| | | padding: 0 30px; |
| | | |
| | | .el-dialog.my-account { |
| | | border-radius: 24px; |
| | | .btns { |
| | | display: flex; |
| | | justify-content: right; |
| | | .cancel { |
| | | width: 76px; |
| | | height: 40px; |
| | | cursor: pointer; |
| | | border-radius: 20px; |
| | | line-height: 40px; |
| | | font-size: 14px; |
| | | color: var(--colorCard); |
| | | border-color: var(--colorCard) !important; |
| | | margin-right: 12px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | } |
| | | .ok { |
| | | width: 76px; |
| | | height: 40px; |
| | | cursor: pointer; |
| | | border-radius: 20px; |
| | | background-color: var(--colorCard) !important; |
| | | border-color: var(--colorCard) !important; |
| | | color: #fff; |
| | | line-height: 40px; |
| | | font-size: 14px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | } |
| | | } |
| | | .login-content { |
| | | box-sizing: border-box; |
| | | .el-input__prefix { |
| | | left: 20px; |
| | | transition: all 0.3s; |
| | | font-size: 20px; |
| | | } |
| | | .el-input__suffix-inner { |
| | | .code-btn { |
| | | padding: 6px 20px; |
| | | border: none; |
| | | border-left: 1px solid #d4d6d9; |
| | | color: var(--colorCard); |
| | | } |
| | | .code-btn:hover { |
| | | background: none; |
| | | } |
| | | } |
| | | .el-input__inner { |
| | | background-color: #ffffff; |
| | | border: 1px solid #d4d6d9; |
| | | box-sizing: border-box; |
| | | color: #606266; |
| | | display: inline-block; |
| | | font-size: 14px; |
| | | height: 40px; |
| | | line-height: 40px; |
| | | outline: none; |
| | | padding: 0 50px; |
| | | transition: border-color 0.2s cubic-bezier(0.645, 0.045, 0.355, 1); |
| | | width: 100%; |
| | | border-radius: 20px; |
| | | } |
| | | } |
| | | .el-dialog__footer { |
| | | padding: 30px ; |
| | | text-align: left; |
| | | box-sizing: border-box; |
| | | box-shadow: 0px -1px 0px rgb(0 0 0 / 8%);} |
| | | .el-dialog__header { |
| | | padding: 14px 20px 13px; |
| | | text-align: center; |
| | | box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.08); |
| | | .el-dialog__title { |
| | | font-weight: 600; |
| | | font-size: 18px; |
| | | color: #5f5f5f; |
| | | line-height: 25px; |
| | | } |
| | | } |
| | | .el-dialog__body { |
| | | padding: 30px 30px 10px 30px; |
| | | } |
| | | .info { |
| | | text-align: left; |
| | | } |
| | | } |
| | | .login-content { |
| | | box-sizing: border-box; |
| | | padding: 0 30px; |
| | | .el-input__inner { |
| | | -webkit-appearance: none; |
| | | background-color: #ffffff; |
| | | background-image: none; |
| | | border-radius: 4px; |
| | | border: 1px solid #dcdfe6; |
| | | .el-dialog.my-activate { |
| | | border-radius: 24px; |
| | | .el-dialog__footer { |
| | | padding: 30px; |
| | | text-align: left; |
| | | box-sizing: border-box; |
| | | color: #606266; |
| | | display: inline-block; |
| | | font-size: 16px; |
| | | border-radius: 5px; |
| | | height: 40px; |
| | | line-height: 40px; |
| | | outline: none; |
| | | padding: 0 15px; |
| | | transition: border-color 0.2s cubic-bezier(0.645, 0.045, 0.355, 1); |
| | | width: 100%; |
| | | box-shadow: 0px -1px 0px rgb(0 0 0 / 8%); |
| | | .btns { |
| | | display: flex; |
| | | .cancel { |
| | | width: 140px; |
| | | height: 40px; |
| | | cursor: pointer; |
| | | border-radius: 20px; |
| | | line-height: 40px; |
| | | font-size: 14px; |
| | | color: var(--colorCard); |
| | | border-color: var(--colorCard) !important; |
| | | margin-right: 12px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | } |
| | | .ok { |
| | | width: 140px; |
| | | height: 40px; |
| | | cursor: pointer; |
| | | border-radius: 20px; |
| | | background-color: var(--colorCard) !important; |
| | | border-color: var(--colorCard) !important; |
| | | color: #fff; |
| | | line-height: 40px; |
| | | font-size: 14px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | .el-dialog.my-order { |
| | |
| | | i { |
| | | margin-right: 5px; |
| | | font-size: 16px; |
| | | color: rgb(24, 144, 255); |
| | | color: var(--colorCard); |
| | | } |
| | | span { |
| | | font-size: 14px; |
| | |
| | | line-height: 45px; |
| | | border-radius: 5px; |
| | | .go-to { |
| | | color: rgba(71, 153, 247, 1); |
| | | color: var(--colorCard); |
| | | cursor: pointer; |
| | | text-decoration: underline; |
| | | font-weight: 600; |