Commit 1a4a6395 by liudx

联调企业详情、企业筛选接口

parent 9623b853
No preview for this file type
...@@ -17,6 +17,13 @@ ...@@ -17,6 +17,13 @@
box-sizing: border-box !important; box-sizing: border-box !important;
background-color: #F2F3F5; background-color: #F2F3F5;
} }
@font-face {
font-family: "jiangcheng";
src: url("../src/assets/fontFamily/江城斜黑体900W.ttf") format("truetype");
font-weight: normal;
font-style: normal;
}
html,body,#app{ html,body,#app{
// height: 100%; // height: 100%;
// min-height:980px; // min-height:980px;
......
@font-face { @font-face {
font-family: 'jiangcheng'; font-family: "jiangcheng";
src: url('./jiangcheng.ttf'); src: url("./江城斜黑体900W.ttf") format("truetype");
font-weight: normal; font-weight: normal;
font-style: normal; font-style: normal;
} }
\ No newline at end of file
...@@ -91,7 +91,7 @@ export default { ...@@ -91,7 +91,7 @@ export default {
this.username = localStorage.getItem('login_name'); this.username = localStorage.getItem('login_name');
}, },
computed: { computed: {
...mapState(["username"]),
}, },
data() { data() {
return { return {
...@@ -206,7 +206,9 @@ export default { ...@@ -206,7 +206,9 @@ export default {
border-radius: 50%; border-radius: 50%;
width: 60px; width: 60px;
height: 60px; height: 60px;
background-color: pink; // background-color: pink;
background: url('../static/common/img-tx-big.svg') no-repeat;
background-size: 100% 100%;
.portrait_btn { .portrait_btn {
cursor: pointer !important; cursor: pointer !important;
......
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="120" height="120" viewBox="0 0 120 120"><defs><style>.a{fill:#6aa1ff;}.b{clip-path:url(#a);}.c{fill:#f04d4e;}.d{fill:#d84850;}.e{fill:#c7928e;}.f{fill:#333;}.g{fill:#fecccb;}.h{fill:#2b2b2b;}.i{fill:#b6d5d0;}</style><clipPath id="a"><circle class="a" cx="60" cy="60" r="60"/></clipPath></defs><g transform="translate(-1842 -13)"><circle class="a" cx="60" cy="60" r="60" transform="translate(1842 13)"/><g class="b" transform="translate(1842 13)"><g transform="translate(9.886 16.628)"><path class="c" d="M103.741,52.06V44.385c0-15.74-24.854-20.032-24.854-20.032H28.717s-25.2,4.293-25.2,20.032V52.06s-.058,5.788,8.053,5.984,42.292,0,42.292,0,34.007.2,42.118,0S103.741,52.06,103.741,52.06Z" transform="translate(-3.515 46.384)"/><path class="d" d="M62.608,24.021H53.976l-25.259.521s-25.2,4.345-25.2,18.365v6.836s-.058,5.156,8.053,5.33,8.169-.116,8.169-.116l24.68-18.771H62.608Z" transform="translate(-3.515 45.731)"/><path class="e" d="M15.428,19.139H45.554V37.678H15.428Z" transform="translate(19.912 36.13)"/><path class="f" d="M68.432,11.731s3.824,11.7-6.6,18.713V9.472Zm-57.818,0s-2.086,11.7,6.6,18.713V9.472l-6.6,2.259Z" transform="translate(10.011 17.12)"/><path class="g" d="M12.7,26.947V48.324s5.1,18.423,23.29,18.423S59.045,47.977,59.045,47.977V28.453S60.2.644,35.987.644,12.7,26.947,12.7,26.947Z" transform="translate(14.532 -0.239)"/><path class="g" d="M35.874,66.786c-17.96,0-23.174-18.423-23.174-18.423V26.985S11.541.625,35.874.625Z" transform="translate(14.529 -0.277)"/><path class="h" d="M30.493,15.976s3.882,15.468,39.8,15.468c0,0-.579-30.937-29.778-30.937S10.39,31.445,10.39,31.445a38.35,38.35,0,0,0,20.1-15.468Z" transform="translate(10.003 -0.508)"/><path class="i" d="M21.589,20.955,12.03,30.92,27.672,42.507l9.907-7.821Z" transform="translate(13.229 39.702)"/><path class="i" d="M36.281,20.955,45.84,30.92,30.256,42.507l-9.965-7.821Z" transform="translate(29.474 39.702)"/></g></g></g></svg>
\ No newline at end of file
import { get, post,put } from './request' import { get, post,put } from './request'
//专利搜索接口
export const patents = p => get('/api/patent/patents?keyword='+p.keyword+'&page='+p.page+'&size='+p.size); export const patents = p => get('/api/patent/patents?keyword='+p.keyword+'&page='+p.page+'&size='+p.size);
//专利筛选接口
export const patentselect = p => post('/api/patent/patents',p); export const patentselect = p => post('/api/patent/patents',p);
//专利详情页面
export const patentDetail = p => get('/api/patent/patentDetail/'+p.id); export const patentDetail = p => get('/api/patent/patentDetail/'+p.id);
//导出word给后端传递base64
export const exportword = p => post('/api/patent/patentDetail/125',p); export const exportword = p => post('/api/patent/patentDetail/125',p);
// 企业搜索接口
export const enterpriseList = p => get('/api/enterprise/list?keyword='+p.keyword+'&page='+p.page+'&size='+p.size); export const enterpriseList = p => get('/api/enterprise/list?keyword='+p.keyword+'&page='+p.page+'&size='+p.size);
//企业国民经济行业接口
export const industryType = p => get('/api/common/industryType'); export const industryType = p => get('/api/common/industryType');
//企业筛选器接口
export const enterpriseSelect = p => post('/api/enterprise/list',p);
//企业详情
export const enterpriseDetail = p => get('/api/enterprise/detail/'+p.id);
...@@ -11,42 +11,42 @@ ...@@ -11,42 +11,42 @@
:labelStyle="{ background: '#F2F9FC' }" :labelStyle="{ background: '#F2F9FC' }"
> >
<a-descriptions-item label="法定代表人" <a-descriptions-item label="法定代表人"
>Cloud Database</a-descriptions-item >{{ baseinfo.legal }}</a-descriptions-item
> >
<a-descriptions-item label="经营状态">Prepaid</a-descriptions-item> <a-descriptions-item label="经营状态">{{ baseinfo.status }}</a-descriptions-item>
<a-descriptions-item label="成立日期">YES</a-descriptions-item> <a-descriptions-item label="成立日期">{{ baseinfo.build_date }}</a-descriptions-item>
<a-descriptions-item label="工商注册号" <a-descriptions-item label="工商注册号"
>2018-04-24 18:00:00</a-descriptions-item >{{ baseinfo.register_code }}</a-descriptions-item
> >
<a-descriptions-item label="注册资本">$80.00</a-descriptions-item> <a-descriptions-item label="注册资本">{{ baseinfo.capital }}</a-descriptions-item>
<a-descriptions-item label="实缴资本">授权日</a-descriptions-item> <a-descriptions-item label="实缴资本">{{ baseinfo.actual_capital }}</a-descriptions-item>
<a-descriptions-item label="统一社会信用代码" <a-descriptions-item label="统一社会信用代码"
>授权日</a-descriptions-item >{{ baseinfo.social_code }}</a-descriptions-item
> >
<a-descriptions-item label="纳税人识别号" <a-descriptions-item label="纳税人识别号"
>授权日</a-descriptions-item >{{ baseinfo.tax_code }}</a-descriptions-item
> >
<a-descriptions-item label="组织机构代码" <a-descriptions-item label="组织机构代码"
>授权日</a-descriptions-item >{{ baseinfo.company_code }}</a-descriptions-item
> >
<a-descriptions-item label="营业期限">授权日</a-descriptions-item> <a-descriptions-item label="营业期限">{{ baseinfo.from_time }}-{{ baseinfo.to_time }}</a-descriptions-item>
<a-descriptions-item label="纳税人资质">授权日</a-descriptions-item> <a-descriptions-item label="纳税人资质">{{ baseinfo.tax_qualification }}</a-descriptions-item>
<a-descriptions-item label="核准日期">授权日</a-descriptions-item> <a-descriptions-item label="核准日期">{{ baseinfo.approval_date }}</a-descriptions-item>
<a-descriptions-item label="企业类型">授权日</a-descriptions-item> <a-descriptions-item label="企业类型">{{ baseinfo.entype }}</a-descriptions-item>
<a-descriptions-item label="行业">授权日</a-descriptions-item> <a-descriptions-item label="行业">{{ baseinfo.company_industry }}</a-descriptions-item>
<a-descriptions-item label="人员规模">人员规模</a-descriptions-item> <a-descriptions-item label="人员规模">{{ baseinfo.staff_range }}</a-descriptions-item>
<a-descriptions-item label="参保人数">参保人数</a-descriptions-item> <a-descriptions-item label="参保人数">{{ baseinfo.bao_num }}</a-descriptions-item>
<a-descriptions-item label="登记机关">登记机关</a-descriptions-item> <a-descriptions-item label="登记机关">{{ baseinfo.register_org }}</a-descriptions-item>
<a-descriptions-item label="曾用名">曾用名</a-descriptions-item> <a-descriptions-item label="曾用名">{{ baseinfo.history_name?baseinfo.history_name:'无' }}</a-descriptions-item>
<a-descriptions-item label="英文名">英文名</a-descriptions-item> <a-descriptions-item label="英文名">{{ baseinfo.en_name }}</a-descriptions-item>
<a-descriptions-item label=""></a-descriptions-item> <a-descriptions-item label=""></a-descriptions-item>
<a-descriptions-item label=""></a-descriptions-item> <a-descriptions-item label=""></a-descriptions-item>
<a-descriptions-item label="注册地址" :span="3" <a-descriptions-item label="注册地址" :span="3"
>注册地址 >{{ baseinfo.address }}
</a-descriptions-item> </a-descriptions-item>
<a-descriptions-item label="经营范围" :span="3" <a-descriptions-item label="经营范围" :span="3"
>经营范围</a-descriptions-item >{{ baseinfo.business_scope }}</a-descriptions-item
> >
</a-descriptions> </a-descriptions>
</div> </div>
...@@ -130,6 +130,9 @@ ...@@ -130,6 +130,9 @@
<script> <script>
export default { export default {
name: "companyProfile", name: "companyProfile",
props:{
baseinfo:Object,
},
data() { data() {
return { return {
activeKey_shareholder: "工商登记", activeKey_shareholder: "工商登记",
......
...@@ -125,13 +125,11 @@ export default { ...@@ -125,13 +125,11 @@ export default {
break; break;
case "历史记录": case "历史记录":
this.$router.push({ this.$router.push({
path: "/history", path: "/history",
}); });
break; break;
case "我的关注": case "我的关注":
this.$router.push({ this.$router.push({
path: "/follow", path: "/follow",
}); });
...@@ -144,26 +142,38 @@ export default { ...@@ -144,26 +142,38 @@ export default {
let path = this.$route.path; let path = this.$route.path;
switch (path) { switch (path) {
case "/company" || "/companyDetails": case "/company" || "/companyDetails":
this.current = "企业";
localStorage.setItem('current','企业')
this.current =localStorage.getItem("current");
break; break;
case "/home": case "/home":
this.current = "首页"; // this.current = "首页";
localStorage.setItem('current','首页')
this.current =localStorage.getItem("current");
break; break;
case "/patent" || "/patentDetails": case "/patent" || "/patentDetails":
this.current = "专利"; // this.current = "专利";
localStorage.setItem('current','专利')
this.current =localStorage.getItem("current");
break; break;
case "/history": case "/history":
this.current = "历史记录"; this.current = "历史记录";
localStorage.setItem('current','历史记录')
this.current =localStorage.getItem("current");
break; break;
case "/follow": case "/follow":
this.current = "我的关注"; localStorage.setItem('current','我的关注')
this.current =localStorage.getItem("current");
break; break;
} }
}, },
}, },
mounted() {}, mounted() {
this.current =localStorage.getItem("current");
},
created() { created() {
this.username = this.$store.state.username; this.username = this.$store.state.username;
}, },
}; };
</script> </script>
......
...@@ -31,8 +31,8 @@ ...@@ -31,8 +31,8 @@
:model="formState" :model="formState"
name="normal_login" name="normal_login"
class="login-form" class="login-form"
@finish="onFinish" ref="form"
@finishFailed="onFinishFailed" :rules="formRules"
> >
<a-form-item <a-form-item
name="phone" name="phone"
...@@ -161,9 +161,39 @@ export default { ...@@ -161,9 +161,39 @@ export default {
password: "", password: "",
repassword: "", repassword: "",
}, },
formRules: {
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}$/,
message: "手机号格式不正确!",
validateTrigger: "onBlur",
},
],
repassword: [
{ required: true, message: "请输入密码!" },
{
validator: this.validateConfirmPassword,
message: "两次密码不匹配",
},
],
code: [{ required: true, message: "请输入验证码!" }],
password: [{ required: true, message: "请输入密码!" }],
},
}; };
}, },
methods: { methods: {
//验证两次密码
validateConfirmPassword(rule, value) {
return new Promise((resolve, reject) => {
if (value && value !== this.formState.newpwd) {
reject(new Error());
} else {
resolve();
}
});
},
//发送验证码 //发送验证码
sendCode() { sendCode() {
if (this.formState.phone) { if (this.formState.phone) {
...@@ -178,7 +208,10 @@ export default { ...@@ -178,7 +208,10 @@ export default {
this.RemainingTime = TIME_COUNT; this.RemainingTime = TIME_COUNT;
this.isSend = true; this.isSend = true;
this.timer = setInterval(() => { this.timer = setInterval(() => {
if (this.RemainingTime > 0 && this.RemainingTime <= TIME_COUNT) { if (
this.RemainingTime > 0 &&
this.RemainingTime <= TIME_COUNT
) {
this.RemainingTime--; this.RemainingTime--;
} else { } else {
this.isSend = false; this.isSend = false;
...@@ -197,6 +230,9 @@ export default { ...@@ -197,6 +230,9 @@ export default {
}, },
//reset //reset
reset() { reset() {
this.$refs.form
.validate()
.then((values) => {
let param = AES_Encrypt( let param = AES_Encrypt(
JSON.stringify({ JSON.stringify({
phone: this.formState.phone, phone: this.formState.phone,
...@@ -213,6 +249,12 @@ export default { ...@@ -213,6 +249,12 @@ export default {
message.error(res.msg); message.error(res.msg);
} }
}); });
})
.catch((err) => {
// console.log(err);
return false;
// 处理验证失败的情况
});
}, },
tologin() { tologin() {
this.$router.push({ this.$router.push({
......
...@@ -8,12 +8,15 @@ ...@@ -8,12 +8,15 @@
<a-select-option value="专利">查专利</a-select-option> <a-select-option value="专利">查专利</a-select-option>
</a-select> </a-select>
</template> </template>
<template #addonAfter> <template #addonAfter >
<div @click="onsearch">
<img <img
style="padding-right: 5px" style="padding-right: 5px"
src="@/static/home/index/icon-search.png" src="@/static/home/index/icon-search.png"
alt="" alt=""
/>搜索 />搜索
</div>
</template> </template>
</a-input> </a-input>
</div> </div>
...@@ -131,6 +134,7 @@ export default { ...@@ -131,6 +134,7 @@ export default {
data() { data() {
return { return {
zh_CN, zh_CN,
type:'',
value1: [], value1: [],
value2: [], value2: [],
keyword: "", keyword: "",
...@@ -188,9 +192,9 @@ export default { ...@@ -188,9 +192,9 @@ export default {
components: {}, components: {},
methods: { methods: {
//获取页面的表格 //获取页面的表格
getList() { getList(keyword) {
let params = { let params = {
keyword: this.$route.params.keyword || "", keyword: keyword|| this.$route.query.keyword,
page: 1, page: 1,
size: 10, size: 10,
}; };
...@@ -205,6 +209,9 @@ export default { ...@@ -205,6 +209,9 @@ export default {
} }
}); });
}, },
onsearch(){
this.getList(this.keyword)
},
//改变页码 //改变页码
onChange(page) { onChange(page) {
this.patentdata = []; this.patentdata = [];
...@@ -246,7 +253,9 @@ export default { ...@@ -246,7 +253,9 @@ export default {
}, },
//点击筛选 //点击筛选
Filter() { Filter() {
//搜索结果标签
this.filter = []; this.filter = [];
//专利列表
this.patentdata = []; this.patentdata = [];
let parma = { let parma = {
page: 1, page: 1,
...@@ -312,10 +321,19 @@ export default { ...@@ -312,10 +321,19 @@ export default {
}; };
}, },
}, },
watch: {
type: function (newV, oldV) {
// console.log(newV)
if (newV == "企业") {
this.$router.push({
path: "/company",
});
}
},
},
created() { created() {
this.getList();
this.keyword = this.$route.query.keyword; this.keyword = this.$route.query.keyword;
this.getList(this.keyword);
this.type = "专利"; this.type = "专利";
}, },
computed: {}, computed: {},
......
...@@ -7,28 +7,47 @@ ...@@ -7,28 +7,47 @@
</a-breadcrumb> </a-breadcrumb>
<!-- 安全设置--> <!-- 安全设置-->
<div class="personal_set"> <div class="personal_set">
<h2 class="title">安全设置</h2>
<a-form <a-form
:model="formState" :model="formState"
name="basic" name="basic"
:label-col="{ span: 2 }" :label-col="{ span: 2 }"
:wrapper-col="{ span: 5 }" :wrapper-col="{ span: 5 }"
autocomplete="off" autocomplete="off"
ref="form"
:rules="formRules"
> >
<a-form-item label="手机号" name="img" class="header_label"> <a-form-item label="手机号" name="phone">
<a-input v-model:value="formState.phone" /> <a-input v-model:value="formState.phone" placeholder="请输入手机号" />
</a-form-item> </a-form-item>
<a-form-item label="验证码" name="code"> <a-form-item label="验证码" name="code">
<a-input v-model:value="formState.code" /> <a-input v-model:value="formState.code" placeholder="请输入验证码">
<template #suffix>
<span v-show="!isSend" class="code" @click="sendCode"
>获取验证码</span
>
<span v-show="isSend" class="code">
{{ RemainingTime }}
秒后重新获取
</span>
</template>
</a-input>
</a-form-item> </a-form-item>
<a-form-item label="新密码" name="newpwd"> <a-form-item label="新密码" name="newpwd">
<a-input v-model:value="formState.newpwd" /> <a-input-password
v-model:value="formState.newpwd"
placeholder="请输入新密码"
/>
</a-form-item> </a-form-item>
<a-form-item label="确认密码" name="renewpwd"> <a-form-item label="确认密码" name="renewpwd">
<a-input v-model:value="formState.renewpwd" /> <a-input-password
v-model:value="formState.renewpwd"
placeholder="请再次输入新密码"
/>
</a-form-item> </a-form-item>
<div class="save_btn"> <div class="save_btn">
<a-button type="primary" html-type="submit" @click="save"> <a-button type="primary" html-type="submit" @click="reset">
保存 保存
</a-button> </a-button>
</div> </div>
...@@ -38,18 +57,118 @@ ...@@ -38,18 +57,118 @@
</template> </template>
<script> <script>
import { AES_Encrypt, AES_Decrypt } from "@/utils/aes_util.js";
import { message } from "ant-design-vue";
import { changePassword, sendSms } from "@/utils/loginAPI";
export default { export default {
name: "securitySetting", name: "securitySetting",
data(){ data() {
return{ return {
formState:{ isSend: "",
phone:'', RemainingTime: 0,
code:'', formState: {
newpwd:'', phone: "",
renewpwd:'' code: "",
newpwd: "",
renewpwd: "",
},
formRules: {
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}$/,
message: "手机号格式不正确!",
validateTrigger: "onBlur",
},
],
renewpwd: [
{ required: true, message: "请输入密码!" },
{
validator: this.validateConfirmPassword,
message: "两次密码不匹配",
},
],
code: [{ required: true, message: "请输入验证码!" }],
newpwd: [{ required: true, message: "请输入密码!" }],
},
};
},
methods: {
//验证两次密码
validateConfirmPassword(rule, value) {
return new Promise((resolve, reject) => {
if (value && value !== this.formState.newpwd) {
reject(new Error());
} else {
resolve();
}
});
},
//发送验证码
sendCode() {
if (this.phone) {
sendSms({ phone: this.phone }).then((res) => {
// console.log(res)
if (res.code == 0) {
this.isSend = true;
const TIME_COUNT = 60;
message.success(res.msg);
//获取验证码倒计时
if (!this.timer) {
this.RemainingTime = TIME_COUNT;
this.isSend = true;
this.timer = setInterval(() => {
if (
this.RemainingTime > 0 &&
this.RemainingTime <= TIME_COUNT
) {
this.RemainingTime--;
} else {
this.isSend = false;
clearInterval(this.timer);
this.timer = null;
}
}, 1000);
}
} else {
message.error(res.msg);
} }
});
} else {
message.error("请先输入手机号");
} }
},
//reset
reset() {
this.$refs.form
.validate()
.then((values) => {
let param = AES_Encrypt(
JSON.stringify({
phone: this.formState.phone,
code: this.formState.code,
password: this.formState.newpwd,
re_password: this.formState.renewpwd,
})
);
changePassword({ param }).then((res) => {
// console.log(res)
if (res.code == 0) {
this.resetShow = true;
} else {
message.error(res.msg);
} }
});
})
.catch((err) => {
// console.log(err);
return false;
// 处理验证失败的情况
});
},
},
}; };
</script> </script>
...@@ -70,11 +189,23 @@ export default { ...@@ -70,11 +189,23 @@ export default {
height: calc(100% - 80px); height: calc(100% - 80px);
background-color: #fff; background-color: #fff;
padding: 40px 40px; padding: 40px 40px;
.title {
color: #1c1c28;
font-size: 18px;
font-family: Microsoft YaHei UI-Bold, Microsoft YaHei UI;
font-weight: bold;
margin-left: 4%;
line-height: 28px;
margin-bottom: 2%;
}
.code {
color: #3e7bfa;
cursor: pointer;
}
} }
.save_btn { .save_btn {
padding-left: 150px; padding-left: 150px;
padding-top: 20px; padding-top: 20px;
} }
} }
</style> </style>
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