Commit 275af101 by heshihao

feat: 修改展示问题

parent e005397f
<template>
<div class="details">
<a-breadcrumb class="nav_bread">
<a-breadcrumb-item
><router-link :to="'/home'">首页</router-link></a-breadcrumb-item
>
<a-breadcrumb-item
><router-link :to="'/company'">企业</router-link></a-breadcrumb-item
>
<a-breadcrumb-item><router-link :to="'/home'">首页</router-link></a-breadcrumb-item>
<a-breadcrumb-item><router-link :to="'/company'">企业</router-link></a-breadcrumb-item>
<a-breadcrumb-item>公司详情</a-breadcrumb-item>
</a-breadcrumb>
<div class="back_btn" @click="backbtn">返回</div>
<div class="details_title">
<div class="company_num">
<span>{{ baseinfo.company_name }}</span>
<a-tag color="#6096E6" v-if="baseinfo.quoted_company == '1'">{{
"上市企业"
}}</a-tag>
<a-tag color="#6096E6" v-if="baseinfo.high_new == '1'">{{
"高新技术企业"
}}</a-tag>
<a-tag color="#6096E6" v-if="baseinfo.zjtg_sjxjr == '1'">{{
"专精特新小巨人"
}}</a-tag>
<a-tag color="#6096E6" v-if="baseinfo.zjtg == '1'">{{
"专精特新中小企业"
}}</a-tag>
<a-tag color="#6096E6" v-if="baseinfo.quoted_company == '1'">{{ "上市企业" }}</a-tag>
<a-tag color="#6096E6" v-if="baseinfo.high_new == '1'">{{ "高新技术企业" }}</a-tag>
<a-tag color="#6096E6" v-if="baseinfo.zjtg_sjxjr == '1'">{{ "专精特新小巨人" }}</a-tag>
<a-tag color="#6096E6" v-if="baseinfo.zjtg == '1'">{{ "专精特新中小企业" }}</a-tag>
</div>
<div class="company_basic">
<div>注册地址:{{ baseinfo.address }}</div>
......@@ -34,9 +22,7 @@
</div>
</div>
<div class="btn_group">
<span style="cursor: pointer" @click="openModal"
><img src="@/static/patent/icon-dc.png" alt="" />导出</span
>
<span style="cursor: pointer" @click="openModal"><img src="@/static/patent/icon-dc.png" alt="" />导出</span>
<span style="cursor: pointer" @click="followFun" v-if="!baseinfo.follow"
><img src="@/static/patent/icon-gz.png" alt="" />关注</span
>
......@@ -56,16 +42,10 @@
></overview>
</a-tab-pane>
<a-tab-pane key="技术合作" tab="技术合作">
<cooperation
:jointData="jointData"
:patentPurchaseData="patentPurchaseData"
></cooperation>
<cooperation :jointData="jointData" :patentPurchaseData="patentPurchaseData"></cooperation>
</a-tab-pane>
<a-tab-pane key="科创能力评价" tab="科创能力评价">
<technology
:technologyData="technologyData"
:company_name="baseinfo.company_name"
></technology>
<technology :technologyData="technologyData" :company_name="baseinfo.company_name"></technology>
</a-tab-pane>
</a-tabs>
<a-modal
......@@ -86,66 +66,27 @@
{ type: 'email', message: '邮箱不合法' },
]"
>
<a-input
v-model:value="formState.email"
placeholder="请输入邮箱地址"
/>
<a-input v-model:value="formState.email" placeholder="请输入邮箱地址" />
</a-form-item>
</a-form>
</a-modal>
<div style="width: 70%; visibility: hidden; overflow: hidden; height: 20px">
<!-- <div style="width: 70%"> -->
<EchartsCon
:id="'applyTrend1'"
:option="option1"
:style="'height:300px'"
></EchartsCon>
<EchartsCon
:id="'patentAuthorize1'"
:option="option2"
:style="'height:300px;width:100%;'"
></EchartsCon>
<EchartsCon
:id="'echartsone1'"
:option="option3"
:style="'height:300px;width:100%;'"
></EchartsCon>
<EchartsCon
:id="'echartstwo1'"
:option="option4"
:style="'height:300px;width:100%;'"
></EchartsCon>
<EchartsCon
:id="'echartsthree1'"
:option="option5"
:style="'height:300px;width:100%;'"
></EchartsCon>
<!-- <div style="width: 70%"> -->
<EchartsCon :id="'applyTrend1'" :option="option1" :style="'height:300px'"></EchartsCon>
<EchartsCon :id="'patentAuthorize1'" :option="option2" :style="'height:300px;width:100%;'"></EchartsCon>
<EchartsCon :id="'echartsone1'" :option="option3" :style="'height:300px;width:100%;'"></EchartsCon>
<EchartsCon :id="'echartstwo1'" :option="option4" :style="'height:300px;width:100%;'"></EchartsCon>
<EchartsCon :id="'echartsthree1'" :option="option5" :style="'height:300px;width:100%;'"></EchartsCon>
<EchartsCloud
:id="'TechnicalField1'"
:dataArr="techArr1"
:style="'height:300px;width:100%;'"
v-if="techArr1.length > 0"
></EchartsCloud>
<EchartsCon
:option="option7"
:id="'apply'"
:style="'height:300px;width:100%;'"
></EchartsCon>
<EchartsCon
:option="option8"
:id="'purchase'"
:style="'height:300px;width:100%;'"
></EchartsCon>
<EchartsCon
:option="option9"
:id="'radar'"
:style="'height:300px;width:100%;'"
></EchartsCon>
<EchartsCon
:option="option10"
:id="'yibiao'"
:style="'height:300px;width:100%;'"
></EchartsCon>
<EchartsCon :option="option7" :id="'apply'" :style="'height:300px;width:100%;'"></EchartsCon>
<EchartsCon :option="option8" :id="'purchase'" :style="'height:300px;width:100%;'"></EchartsCon>
<EchartsCon :option="option9" :id="'radar'" :style="'height:300px;width:100%;'"></EchartsCon>
<EchartsCon :option="option10" :id="'yibiao'" :style="'height:300px;width:100%;'"></EchartsCon>
</div>
</div>
<Loading v-if="loading"></Loading>
......@@ -323,8 +264,7 @@ export default {
if (res.code == 0) {
this.deveSustain = res.data;
this.deveSustain.most_patent_authorization_rate =
(this.deveSustain.most_patent_authorization_rate * 100).toFixed(2) +
"%";
(this.deveSustain.most_patent_authorization_rate * 100).toFixed(2) + "%";
this.getTrend();
this.getAuthorize();
} else {
......@@ -336,11 +276,9 @@ export default {
if (res.code == 0) {
this.structureData = res.data;
//专利结构占比的发明专利占比
this.structureData.invent_patent_percent =
(this.structureData.invent_patent_percent * 100).toFixed(2) + "%";
this.structureData.invent_patent_percent = (this.structureData.invent_patent_percent * 100).toFixed(2) + "%";
//专利结构占比的有效专利占比
this.structureData.valid_patent_percent =
(this.structureData.valid_patent_percent * 100).toFixed(2) + "%";
this.structureData.valid_patent_percent = (this.structureData.valid_patent_percent * 100).toFixed(2) + "%";
this.getPatentStructure();
} else {
message.error(res.msg);
......@@ -351,10 +289,7 @@ export default {
if (res.code == 0) {
this.jointData = res.data;
this.max_list_apply = this.jointData.max_list;
this.max_value_apply =
this.jointData.max_list.length > 0
? this.jointData.max_list[0].max_value
: 0;
this.max_value_apply = this.jointData.max_list.length > 0 ? this.jointData.max_list[0].max_value : 0;
this.getOptions1();
} else {
message.error(res.msg);
......@@ -365,9 +300,7 @@ export default {
if (res.code == 0) {
this.patentPurchaseData = res.data;
this.max_value_purchase =
this.patentPurchaseData.max_list.length > 0
? this.patentPurchaseData.max_list[0].max_value
: 0;
this.patentPurchaseData.max_list.length > 0 ? this.patentPurchaseData.max_list[0].max_value : 0;
this.getOptions2();
} else {
message.error(res.msg);
......@@ -642,9 +575,7 @@ export default {
this.deveSustain.old_patent_application.forEach((item) => {
ydata2.push(item[1]);
});
ydata3 = ydata1.map((elem, index) =>
((elem / ydata2[index]) * 100).toFixed(2)
);
ydata3 = ydata1.map((elem, index) => ((elem / ydata2[index]) * 100).toFixed(2));
this.option2 = {
//下面就是上图的配置项,关键部分有注释
tooltip: {
......@@ -656,21 +587,10 @@ export default {
var html = params[0].name + "<br>";
// params[i].marker:对应数据的圆点样式
for (var i = 0; i < params.length - 1; i++) {
html +=
params[i].marker +
params[i].seriesName +
":" +
params[i].value +
"<br>";
html += params[i].marker + params[i].seriesName + ":" + params[i].value + "<br>";
}
//最后一个学生占比数据 添加%
html +=
params[i].marker +
params[i].seriesName +
":" +
params[i].value +
"%" +
"<br>";
html += params[i].marker + params[i].seriesName + ":" + params[i].value + "%" + "<br>";
return html;
},
},
......@@ -904,10 +824,7 @@ export default {
symbolSize: 40,
category: 1,
value: item.value,
x:
index % 2 == 1
? 300 * Math.ceil(index / 2)
: -300 * Math.ceil(index / 2),
x: index % 2 == 1 ? 300 * Math.ceil(index / 2) : -300 * Math.ceil(index / 2),
y: 80 * (10 - index),
});
links.push({
......@@ -1136,144 +1053,135 @@ export default {
setTimeout(() => {
// 加setTimeout是为了让echarts渲染完成后生成图片
JSZipUtils.getBinaryContent(
"company.docx",
function (error, content) {
// 抛出异常
if (error) {
throw error;
JSZipUtils.getBinaryContent("company.docx", function (error, content) {
// 抛出异常
if (error) {
throw error;
}
const opts = {
centered: false,
fileType: "docx",
};
opts.getImage = function (tagValue) {
if (tagValue.size && tagValue.data) {
return base64DataURLToArrayBuffer(tagValue.data);
}
return base64DataURLToArrayBuffer(tagValue);
};
opts.getSize = function (_, tagValue) {
if (tagValue.size && tagValue.data) {
return tagValue.size;
}
const opts = {
centered: false,
fileType: "docx",
};
opts.getImage = function (tagValue) {
if (tagValue.size && tagValue.data) {
return base64DataURLToArrayBuffer(tagValue.data);
}
return base64DataURLToArrayBuffer(tagValue);
};
opts.getSize = function (_, tagValue) {
if (tagValue.size && tagValue.data) {
return tagValue.size;
}
return [600, 200];
};
// 创建一个JSZip实例,内容为模板的内容
const zip = new PizZip(content);
// 创建并加载docxtemplater实例对象
const doc = new docxtemplater().loadZip(zip);
return [600, 150];
};
// 创建一个JSZip实例,内容为模板的内容
const zip = new PizZip(content);
// 创建并加载docxtemplater实例对象
const doc = new docxtemplater().loadZip(zip);
doc.setOptions({
nullGetter: function () {
//设置空值 undefined 为''
return "";
},
});
// 设置图片模块
doc.attachModule(new ImageModule(opts));
doc.setOptions({
nullGetter: function () {
//设置空值 undefined 为''
return "";
},
});
// 设置图片模块
doc.attachModule(new ImageModule(opts));
// 设置模板变量的值
doc.setData({
...that.baseinfo,
max_value_purchase,
max_list_apply,
max_value_apply,
share_holders,
company_marjor,
company_invest,
company_finance,
...that.developmentOverview,
...that.deveSustain,
...that.structureData,
...that.jointData,
...that.patentPurchaseData,
today,
image1: myChart1.getDataURL({
pixelRatio: 2, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image2: myChart2.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image3: myChart3.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image4: myChart4.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image5: myChart5.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image6: myChart6.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image7: myChart7.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image8: myChart8.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image9: myChart9.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image10: myChart10.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
});
try {
// 用模板变量的值替换所有模板变量
doc.render();
} catch (error) {
console.error("导出报表失败");
throw error;
}
// 生成一个代表docxtemplater对象的zip文件(不是一个真实的文件,而是在内存中的表示)
let out = doc.getZip().generate({
type: "blob",
mimeType:
"application/vnd.openxmlformats-officedocument.wordprocessingml.document",
});
//formData文件流
that.blobToBase64(
out,
that.formState.email,
that.baseinfo.company_name,
that.id
);
// 将目标文件对象保存为目标类型的文件,并命名
// saveAs(out, `企业科创能力报告.docx`);
// 设置模板变量的值
doc.setData({
...that.baseinfo,
max_value_purchase,
max_list_apply,
max_value_apply,
share_holders,
company_marjor,
company_invest,
company_finance,
...that.developmentOverview,
...that.deveSustain,
...that.structureData,
...that.jointData,
...that.patentPurchaseData,
today,
image1: myChart1.getDataURL({
pixelRatio: 2, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image2: myChart2.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image3: myChart3.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image4: myChart4.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image5: myChart5.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image6: myChart6.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image7: myChart7.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image8: myChart8.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image9: myChart9.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
image10: myChart10.getDataURL({
pixelRatio: 5, //导出的图片分辨率比率,默认是1
backgroundColor: "#fff", //图表背景色
excludeComponents: ["toolbox"], //忽略组件的列表
type: "png", //图片类型支持png和jpeg
}),
});
try {
// 用模板变量的值替换所有模板变量
doc.render();
} catch (error) {
console.error("导出报表失败");
throw error;
}
);
// 生成一个代表docxtemplater对象的zip文件(不是一个真实的文件,而是在内存中的表示)
let out = doc.getZip().generate({
type: "blob",
mimeType: "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
});
//formData文件流
that.blobToBase64(out, that.formState.email, that.baseinfo.company_name, that.id);
// 将目标文件对象保存为目标类型的文件,并命名
// saveAs(out, `企业科创能力报告.docx`);
});
}, 1000);
})
.catch((err) => {
......
......@@ -29,10 +29,7 @@
@finish="onFinish"
@finishFailed="onFinishFailed"
>
<a-form-item
name="username"
:rules="[{ required: true, message: '请输入用户名!' }]"
>
<a-form-item name="username" :rules="[{ required: true, message: '请输入用户名!' }]">
<a-input v-model:value="formState.username">
<template #prefix>
<img src="../../static/login/icon-user.png" alt="" />
......@@ -40,10 +37,7 @@
</a-input>
</a-form-item>
<a-form-item
name="password"
:rules="[{ required: true, message: '请输入密码!' }]"
>
<a-form-item name="password" :rules="[{ required: true, message: '请输入密码!' }]">
<a-input-password v-model:value="formState.password">
<template #prefix>
<img src="../../static/login/icon-password.png" alt="" />
......@@ -53,9 +47,7 @@
<a-form-item>
<a-form-item name="remember">
<a-checkbox v-model:checked="formState.remember"
>记住密码</a-checkbox
>
<a-checkbox v-model:checked="formState.remember">记住密码</a-checkbox>
</a-form-item>
<!-- <a-form-item name="remember" style="float: right;">
<a-checkbox v-model:checked="formState.autologin"
......@@ -64,14 +56,7 @@
</a-form-item> -->
</a-form-item>
<a-form-item>
<a-button
type="primary"
html-type="submit"
class="login-form-button"
@click="login"
>
登录
</a-button>
<a-button type="primary" html-type="submit" class="login-form-button" @click="login"> 登录 </a-button>
</a-form-item>
<a-form-item>
<div class="admin_login">
......@@ -86,20 +71,17 @@
</div>
</div>
<footer>
<a
style="color: #818a9f"
href="http://zhongyanrenzhi.com/#/product2"
target="_blank"
<!-- <a style="color: #818a9f" href="http://zhongyanrenzhi.com/#/product2" target="_blank"
>产品介绍&nbsp;&nbsp;&nbsp;&nbsp;</a
>|
<a
style="color: #818a9f"
target="_blank"
href="http://zhongyanrenzhi.com/#/into/1"
<a style="color: #818a9f" target="_blank" href="http://zhongyanrenzhi.com/#/into/1"
>&nbsp;&nbsp;&nbsp;&nbsp;关于中研认知</a
><br />
<span>版权所有:北京中研硕福科技有限公司&nbsp;&nbsp;&nbsp;&nbsp;</span
><span>&nbsp;&nbsp;&nbsp;&nbsp;京ICP备19055798号-3 </span>
> -->
<span>主办:太原理工技术转移有限公司 </span>
<br />
<span>技术支持:北京中研硕福科技有限公司&nbsp;&nbsp;&nbsp;&nbsp;</span><span
>&nbsp;&nbsp;&nbsp;&nbsp;京ICP备19055798号-3
</span>
</footer>
</div>
</template>
......@@ -134,7 +116,7 @@ export default {
if (res.code == 0) {
if (res.data.is_admin) {
message.success("登录成功");
localStorage.setItem("login_name", this.formState.username);
localStorage.setItem("token", res.data.token);
this.$router.push({
......
......@@ -49,9 +49,7 @@
<img src="../../static/login/icon-yzm.png" alt="" />
</template>
<template #suffix>
<span v-show="!isSend" class="code" @click="sendCode"
>获取验证码</span
>
<span v-show="!isSend" class="code" @click="sendCode">获取验证码</span>
<span v-show="isSend" class="code">
{{ RemainingTime }}
秒后重新获取
......@@ -59,39 +57,23 @@
</template>
</a-input>
</a-form-item>
<a-form-item
name="password"
>
<!-- :rules="[{ required: true, message: '请输入密码!' }]" -->
<a-input-password
v-model:value="formState.password"
placeholder="请输入新密码"
>
<a-form-item name="password">
<!-- :rules="[{ required: true, message: '请输入密码!' }]" -->
<a-input-password v-model:value="formState.password" placeholder="请输入新密码">
<template #prefix>
<img src="../../static/login/icon-password.png" alt="" />
</template>
</a-input-password>
</a-form-item>
<a-form-item name="repassword">
<a-input-password
v-model:value="formState.repassword"
placeholder="请再次输入新密码"
>
<a-input-password v-model:value="formState.repassword" placeholder="请再次输入新密码">
<template #prefix>
<img src="../../static/login/icon-password.png" alt="" />
</template>
</a-input-password>
</a-form-item>
<a-form-item>
<a-button
type="primary"
html-type="submit"
class="login-form-button"
@click="reset"
>
重置密码
</a-button>
<a-button type="primary" html-type="submit" class="login-form-button" @click="reset"> 重置密码 </a-button>
</a-form-item>
</a-form>
<div v-else class="success_reset">
......@@ -99,32 +81,23 @@
<br /><br />
<p>您已经成功设置密码,请使用新密码登录</p>
<br /><br />
<a-button
type="primary"
html-type="submit"
class="login-form-button"
@click="tologin"
>
马上登录
</a-button>
<a-button type="primary" html-type="submit" class="login-form-button" @click="tologin"> 马上登录 </a-button>
</div>
</div>
</div>
<footer>
<a
style="color: #818a9f"
href="http://zhongyanrenzhi.com/#/product2"
target="_blank"
<!-- <a style="color: #818a9f" href="http://zhongyanrenzhi.com/#/product2" target="_blank"
>产品介绍&nbsp;&nbsp;&nbsp;&nbsp;</a
>|
<a
style="color: #818a9f"
target="_blank"
href="http://zhongyanrenzhi.com/#/into/1"
<a style="color: #818a9f" target="_blank" href="http://zhongyanrenzhi.com/#/into/1"
>&nbsp;&nbsp;&nbsp;&nbsp;关于中研认知</a
><br />
<span>版权所有:北京中研硕福科技有限公司&nbsp;&nbsp;&nbsp;&nbsp;</span
><span>&nbsp;&nbsp;&nbsp;&nbsp;京ICP备19055798号-3 </span>
> -->
<span>主办:太原理工技术转移有限公司</span>
<br />
<span>技术支持:北京中研硕福科技有限公司&nbsp;&nbsp;&nbsp;&nbsp;</span><span
>&nbsp;&nbsp;&nbsp;&nbsp;京ICP备19055798号-3
</span>
</footer>
</div>
</template>
......@@ -150,8 +123,7 @@ export default {
phone: [
{ required: true, message: "请输入手机号!" },
{
pattern:
/^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/,
pattern: /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/,
message: "手机号格式不正确!",
validateTrigger: "onBlur",
},
......@@ -193,10 +165,7 @@ export default {
this.RemainingTime = TIME_COUNT;
this.isSend = true;
this.timer = setInterval(() => {
if (
this.RemainingTime > 0 &&
this.RemainingTime <= TIME_COUNT
) {
if (this.RemainingTime > 0 && this.RemainingTime <= TIME_COUNT) {
this.RemainingTime--;
} else {
this.isSend = false;
......
......@@ -23,10 +23,7 @@
<span>账户登录</span>
</div>
<a-form :model="formState" name="normal_login" class="login-form">
<a-form-item
name="username"
:rules="[{ required: true, message: '请输入用户名!' }]"
>
<a-form-item name="username" :rules="[{ required: true, message: '请输入用户名!' }]">
<a-input v-model:value="formState.username">
<template #prefix>
<img src="../../static/login/icon-user.png" alt="" />
......@@ -34,10 +31,7 @@
</a-input>
</a-form-item>
<a-form-item
name="password"
:rules="[{ required: true, message: '请输入密码!' }]"
>
<a-form-item name="password" :rules="[{ required: true, message: '请输入密码!' }]">
<a-input-password v-model:value="formState.password">
<template #prefix>
<img src="../../static/login/icon-password.png" alt="" />
......@@ -47,20 +41,11 @@
<a-form-item>
<a-form-item name="remember">
<a-checkbox v-model:checked="formState.remember"
>记住密码</a-checkbox
>
<a-checkbox v-model:checked="formState.remember">记住密码</a-checkbox>
</a-form-item>
</a-form-item>
<a-form-item>
<a-button
type="primary"
html-type="submit"
class="login-form-button"
@click="login"
>
登录
</a-button>
<a-button type="primary" html-type="submit" class="login-form-button" @click="login"> 登录 </a-button>
</a-form-item>
<a-form-item>
<div class="admin_login" style="float: left">
......@@ -76,20 +61,17 @@
</div>
</div>
<footer>
<a
style="color: #818a9f"
href="http://zhongyanrenzhi.com/#/product2"
target="_blank"
<!-- <a style="color: #818a9f" href="http://zhongyanrenzhi.com/#/product2" target="_blank"
>产品介绍&nbsp;&nbsp;&nbsp;&nbsp;</a
>|
<a
style="color: #818a9f"
target="_blank"
href="http://zhongyanrenzhi.com/#/into/1"
<a style="color: #818a9f" target="_blank" href="http://zhongyanrenzhi.com/#/into/1"
>&nbsp;&nbsp;&nbsp;&nbsp;关于中研认知</a
><br />
<span>版权所有:北京中研硕福科技有限公司&nbsp;&nbsp;&nbsp;&nbsp;</span
><span>&nbsp;&nbsp;&nbsp;&nbsp;京ICP备19055798号-3 </span>
> -->
<span>主办:太原理工技术转移有限公司</span>
<br />
<span>技术支持:北京中研硕福科技有限公司&nbsp;&nbsp;&nbsp;&nbsp;</span><span
>&nbsp;&nbsp;&nbsp;&nbsp;京ICP备19055798号-3
</span>
</footer>
</div>
</template>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment