Browse Source

0708

master
DESKTOP-00SUCB6\Administrator 4 years ago
parent
commit
390d66bafe
  1. 5
      .env.development
  2. 3
      .env.production
  3. BIN
      public/h5/bg-invitation.png
  4. BIN
      public/h5/bg-scanCode.png
  5. BIN
      public/h5/close.png
  6. BIN
      public/h5/code.png
  7. BIN
      public/h5/favicon.ico
  8. 377
      public/h5/invitation.html
  9. 2
      public/h5/jquery.min.js
  10. BIN
      public/h5/pic1-scanCode.png
  11. BIN
      public/h5/pic2-scanCode.png
  12. 202
      public/h5/scanCode.html
  13. 8
      src/api/home/index.js
  14. BIN
      src/assets/images/logo.png
  15. 136
      src/router/index.js
  16. 4
      src/views/company/authentication.vue
  17. 33
      src/views/company/campanyVerify.vue
  18. 567
      src/views/company/companyEdit.vue
  19. 194
      src/views/company/companyInfo copy.vue
  20. 396
      src/views/company/companyInfo.vue
  21. 19
      src/views/company/manager.vue
  22. 120
      src/views/company/search.vue
  23. 5
      src/views/home/index.vue
  24. 38
      src/views/home/index2.vue
  25. 2
      src/views/login/login.vue
  26. 4
      src/views/system/role/index.vue

5
.env.development

@ -2,8 +2,9 @@
ENV = 'development' ENV = 'development'
# 若依管理系统/开发环境 # 若依管理系统/开发环境
VUE_APP_BASE_API = 'http://121.36.65.171:9527' #VUE_APP_BASE_API = 'http://121.36.65.171:9527'
#VUE_APP_BASE_API = 'http://172.119.51.195:8080' VUE_APP_H5_QR = 'http://localhost/h5/invitation.html'
VUE_APP_BASE_API = 'http://172.119.50.32:9527'
# 路由懒加载 # 路由懒加载

3
.env.production

@ -2,4 +2,5 @@
ENV = 'production' ENV = 'production'
# 若依管理系统/生产环境 # 若依管理系统/生产环境
VUE_APP_BASE_API = '/prod-api' VUE_APP_BASE_API = 'http://121.36.65.171:9527'
VUE_APP_H5_QR = 'http://121.36.65.171:8778/h5/invitation.html'

BIN
public/h5/bg-invitation.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 436 KiB

BIN
public/h5/bg-scanCode.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 277 KiB

BIN
public/h5/close.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

BIN
public/h5/code.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.7 KiB

BIN
public/h5/favicon.ico

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

377
public/h5/invitation.html

@ -0,0 +1,377 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="icon" href="favicon.ico">
<title>欢迎使用食品原料供应商资质检查系统</title>
<script src="jquery.min.js"></script>
</head>
<style>
html,body,h1,h2,h3,h4,h5,h6,div,dl,dt,dd,ul,ol,li,p,blockquote,pre,hr,figure,table,caption,th,td,form,fieldset,legend,input,button,textarea,menu {
margin: 0;
padding: 0;
}
body {
height: 100%;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
font-family: Helvetica Neue, Helvetica, Arial, Microsoft Yahei, Hiragino Sans GB, Heiti SC, WenQuanYi Micro Hei, sans-serif;
}
label {
font-weight: 700;
}
html {
height: 100%;
box-sizing: border-box;
}
*,
*:before,
*:after {
box-sizing: inherit;
}
.flex-box {
display: -webkit-box;
display: -webkit-flex;
/* Safari */
display: flex;
justify-content: center;
align-items: center;
}
.flex-box-column {
display: -webkit-box;
display: -webkit-flex;
/* Safari */
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
}
.search-container {
position: relative;
width: 100vw;
min-height: 100%;
background-image: url('bg-invitation.png');
background-repeat: no-repeat;
background-size: 100% 100%;
}
.content-block {
position: relative;
margin-top: 42vh;
width: 320px;
width: 93.5%;
color: #fff;
}
.content-box {
position: relative;
top:0;
width: 100%;
min-height: 200px;
padding: 15px;
margin-bottom: 15px;
word-wrap:break-word;
background: #FFFFFF;
border-radius: 10px;
box-shadow: 0px 4px 20px 0px rgba(65, 194, 252, 0.14), 0px 7px 13px 0px rgba(50, 147, 255, 0.52);
}
.content-box .content-title{
margin-bottom: 8px;
font-size: 20px;
font-weight: 400;
color: #1F5C99;
line-height: 54px;
border-bottom: 1px dashed #D2E1EA;
}
.content-box .content-text {
font-size: 16px;
line-height: 44px;
color: #666666;
border-bottom: 1px dashed #D2E1EA;
overflow: hidden;
}
.content-box .content-text label{
line-height: 34px;
font-weight: normal;
vertical-align: top;
}
.content-box .content-text span{
display: block;
float: right;
width: 60%;
line-height: 34px;
color: #222222;
text-align: right;
}
.content-box .content-btn{
margin-top: 70px;
}
.content-box .content-btn a{
display: block;
width: 100%;
padding: 15px 0;
margin-bottom: 25px;
font-size: 18px;
color: #FFFFFF;
text-align: center;
text-decoration: none;
background: #30E3D8;
border-radius: 80px;
}
.content-box .content-btn a.btn-register{
background: #3293FF;
}
.text-indent-1 {
text-indent:1em;
}
.content-mask{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.7);
}
.content-mask .content-box{
position: absolute;
left: 8%;
top: 25%;
width: 84%;
box-shadow: none;
}
.content-box .content-text:last-child{
border-bottom: 0 none;
}
.content-box .content-text span input{
height: 30px;
text-align: right;
border: 0 none;
}
.content-box .content-text .num-code{
float: right;
display: inline-block;
width: 30%;
height: 44px;
margin-left: 8px;
}
.content-box .content-text .num-code img{
width: 100%;
margin-top: 4px;
}
.content-box .content-text .input-code{
width: 35%;
}
.content-box .content-text .input-code input{
width: 100%;
}
.content-box{
position: relative;
}
.content-box .content-close{
position: absolute;
left: 50%;
margin-left: -18px;
bottom: -20%;
width: 36px;
}
.content-box .content-close a img{
width: 100%;
}
</style>
<body>
<div class="search-container flex-box-column">
<div class="content-block">
<div class="content-box">
<h3 class="content-title">企业信息</h3>
<div class="content-info" id="enterprise-info">
</div>
<div class="content-btn">
<a href="javascript:;" class="btn-invitate">登录并接受邀请</a>
<a href="javascript:;" class="btn-register">去注册</a>
</div>
</div>
</div>
</div>
<div class="content-mask" id="content-mask" style="display: none;">
<div class="content-box">
<h3 class="content-title">受邀企业</h3>
<div class="content-info">
<form class="content-form" action="#" method="GET" name="content-form">
<p class="content-text"><label>用户名:</label><span><input type="text" name="name" id="name" placeholder="请输入用户名"></span></p>
<p class="content-text"><label>密码:<label><span><input type="password" name="password" id="password" placeholder="请输入密码"></span></p>
<p class="content-text">
<label>验证码:</label>
<span class="input-code"><input type="text" name="vcode" id="vcode" placeholder="请输入验证码"></span>
<strong class="num-code"></strong>
</p>
</form>
</div>
<div class="content-btn">
<a href="javascript:;" class="btn-accept">接受邀请</a>
</div>
<div class="content-close">
<a href="javascript:;" class="btn-close"><img src="close.png" alt=""></a>
</div>
</div>
</div>
</body>
<script>
var baseUrlIp = "http://121.36.65.171:9527";
var registerIP = "http://121.36.65.171:9527/swagger-ui.html#/"
// 点击去注册按钮,复制链接并去浏览器打开
$(".btn-register").click(function(){
var input = $("<input value = "+ registerIP +">");
$("body").prepend(input);
$("body").find("input").eq(0).select();
document.execCommand("copy");
$("body").find("input").eq(0).remove();
alert("请到浏览器粘贴并打开链接 "+ registerIP);
});
// 点击登录并接受邀请按钮,打开受邀企业弹窗
$(".btn-invitate").click(function(){
if($("#content-mask").css("display")=="none"){
$("#content-mask").show();
}
});
// 点击关闭按钮,关闭弹窗
$(".btn-close").click(function(){
if($("#content-mask").css("display")=="block"){
$("#content-mask").hide();
}
});
// 验证码
var uuid = "";
$(document).ready(function(res){
$.ajax({
url: baseUrlIp + "/captchaImage",
type: "get", // 请求方式get / post
dataType: "json", // 数据类型
// 请求成功后的回调函数
success: function(res) {
uuid=res.uuid;
if(res.code == 200){
// data后台返回来的数据
var html = '';
html +='<img id="imgUrl" src="data:gif;base64,'+ res.img +'" alt="">'
} else {
html +='<span style="color:#000;">error</span>';
}
// append 结尾插入内容
$(".num-code").append(html);
},
error: function(err) {
console.log(err);
}
});
})
// 刷新验证码
$(".num-code").click(function(){
$.ajax({
url: baseUrlIp + "/captchaImage",
type: "get", // 请求方式get / post
dataType: "json", // 数据类型
// 请求成功后的回调函数
success: function(res) {
$("#imgUrl").attr("src","data:gif;base64,"+ res.img)
uuid=res.uuid;
},
error: function(err) {
console.log(err);
}
});
});
// 点击接受邀请按钮,提交验证
$(".btn-accept").click(function(){
var name = $('input[name=name]').val();
var password = $('input[name=password]').val();
var vcode = $('input[name=vcode]').val();
if($.trim(name)==''){
alert("请输入用户名")
$('input[name=name]').focus()
return false
}
if($.trim(password)==''){
alert("请输入密码")
$('input[name=password]').focus()
return false
}
if($.trim(vcode)==''){
alert("请输入验证码")
$('input[name=vcode]').focus()
return false
}
const data = {
'username':name,
'password':password,
    'code':vcode,
    'uuid':uuid
  }
$.ajax({
url: baseUrlIp + "/login",
type: "post", // 请求方式get / post
dataType: "json", // 数据类型
contentType : "application/json;charset=utf-8",//添加这句话
data : JSON.stringify(data),
// 请求成功后的回调函数
success: function(res) {
console.log(res)
if(res.code == 200){
alert("受邀企业成功注册")
$("#content-mask").hide()
}
},
error: function(err) {
console.log(err);
}
});
});
//企业名称接口
function enterpriseInfo(){
var code = '';
var str = window.location.href.split('?')[1];
if (!str) {return};
var enterpriseid=str.split('&')[0];
if(enterpriseid.indexOf('=') == -1) {
return
}
enterpriseid = enterpriseid.split('=')[1]
var infoOpen=str.split('&')[1];
if(infoOpen.indexOf('=') == -1) {
return
}
infoOpen = infoOpen.split('=')[1]
$.ajax({
url: baseUrlIp + "/system/enterpriseManager/selectEnterpriseByIdForH5?enterpriseid=" + enterpriseid,
type: "get", // 请求方式get / post
dataType: "json", // 数据类型
// 请求成功后的回调函数
success: function(res) {
if(res.code == 200){
// data后台返回来的数据
var html = '';
html +='<p class="content-text"><label>企业名称:</label><span id="enterprise_name">'+ res.data.name +'</span></p>'
+'<p class="content-text"><label>法定代表人名称:</label><span id="enterprise_person">'+ res.data.nameLegalRepresentative +'</span></p>'
} else {
html +='<span style="color:#000;">error</span>';
}
// append 结尾插入内容
$('#enterprise-info').append(html);
},
error: function(err) {
console.log(err);
}
});
}
enterpriseInfo()
</script>
</html>

2
public/h5/jquery.min.js

File diff suppressed because one or more lines are too long

BIN
public/h5/pic1-scanCode.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

BIN
public/h5/pic2-scanCode.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

202
public/h5/scanCode.html

@ -0,0 +1,202 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="icon" href="favicon.ico">
<title>欢迎使用预包装食品标签合规性核验系统</title>
<script src="jquery.min.js"></script>
</head>
<style>
html,body,h1,h2,h3,h4,h5,h6,div,dl,dt,dd,ul,ol,li,p,blockquote,pre,hr,figure,table,caption,th,td,form,fieldset,legend,input,button,textarea,menu {
margin: 0;
padding: 0;
}
body {
height: 100%;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
font-family: Helvetica Neue, Helvetica, Arial, Microsoft Yahei, Hiragino Sans GB, Heiti SC, WenQuanYi Micro Hei, sans-serif;
}
label {
font-weight: 700;
}
html {
height: 100%;
box-sizing: border-box;
}
*,
*:before,
*:after {
box-sizing: inherit;
}
.flex-box {
display: -webkit-box;
display: -webkit-flex;
/* Safari */
display: flex;
justify-content: center;
align-items: center;
}
.flex-box-column {
display: -webkit-box;
display: -webkit-flex;
/* Safari */
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
}
.search-container {
position: relative;
width: 100vw;
min-height: 100%;
background-image: url('bg-scanCode.png');
background-repeat: no-repeat;
background-size: 100% 100%;
}
.content-block {
position: relative;
margin-top: 42vh;
width: 320px;
width: 93.5%;
color: #fff;
}
.content-box {
position: relative;
top:0;
width: 100%;
min-height: 200px;
padding: 15px;
margin-bottom: 15px;
word-wrap:break-word;
background: #FFFFFF;
border-radius: 10px;
box-shadow: 0px 4px 20px 0px rgba(65, 194, 252, 0.14), 0px 7px 13px 0px rgba(50, 147, 255, 0.52);
}
.content-box .content-title{
margin-bottom: 8px;
font-size: 20px;
font-weight: 400;
color: #1F5C99;
line-height: 54px;
border-bottom: 1px dashed #D2E1EA;
}
.content-box .content-text {
font-size: 16px;
line-height: 44px;
color: #666666;
border-bottom: 1px dashed #D2E1EA;
overflow: hidden;
}
.content-box .content-text label{
line-height: 30px;
font-weight: normal;
vertical-align: top;
}
.content-box .content-text span{
display: block;
float: right;
width: 70%;
line-height: 30px;
color: #222222;
text-align: right;
}
.content-box .content-text span img{
width: 70px;
height: 60px;
margin: 8px 0 0 8px;
border-radius: 10px;
}
.content-box .content-pdf{
margin-top: 15px;
}
.content-box .content-pdf a{
display: block;
margin: 12px 0;
font-size: 12px;
color:#3293FF;
}
.content-box .content-btn{
margin-top: 70px;
}
.content-box .content-btn a{
display: block;
width: 100%;
padding: 15px 0;
margin-bottom: 25px;
font-size: 18px;
color: #FFFFFF;
text-align: center;
text-decoration: none;
background: #30E3D8;
border-radius: 80px;
}
.content-box .content-btn a.btn-register{
background: #3293FF;
}
.text-indent-1 {
text-indent:1em;
}
</style>
<body>
<div class="search-container flex-box-column">
<div id="data"></div>
<div class="content-block">
<div class="content-box">
<h3 class="content-title">产品信息</h3>
<div class="content-info" id="content-info">
</div>
</div>
</div>
</div>
</body>
<script>
var code = '';
var str = window.location.href.split('?')[1];
var baseUrlIp = "http://172.119.51.195:8080";
function productInfo(){
$.ajax({
url: baseUrlIp + "/company/standard/fetch/" + str,
type: "get", // 请求方式get / post
dataType: "json", // 数据类型
// 请求成功后的回调函数
success: function(res) {
if(res.code == 200){
// data后台返回来的数据
var html = '';
var picHtml = '';
var fileHtml = '';
// 包装图片
var pics = res.data.standard.productImgUrl.split(',')
for (var i = 0; i < pics.length; i++) {
picHtml +='<img src='+ pics[i] +'/>'
}
// 文件
for (var i = 0; i < res.data.fileList.length; i++) {
fileHtml +='<a href='+ res.data.fileList[i].fileUrl+'>'+ res.data.fileList[i].fileName +'</a>'
}
html +='<p class="content-text"><label>产品名称:</label><span id="product_name">'+ res.data.standard.productName +'</span></p>'
+'<p class="content-text"><label>包装图片:</label><span id="product_pics">'+ picHtml +'</span></p>'
+'<p class="content-text"><label>包装标准:</label><span id="product_standard">'+ res.data.standard.ybzStandard +'</span></p>'
+'<p class="content-text"><label>营养成分:</label><span id="product_nutrients">'+ res.data.standard.nutrients +'</span></p>'
+'<div class="content-pdf" id="product_pdfs">'+ fileHtml +'</div>';
} else {
html +='<span style="color:#000;">该产品码无效</span>';
}
// append 结尾插入内容
$('#content-info').append(html);
},
error: function(err) {
console.log(err);
}
});
}
productInfo()
</script>
</html>

8
src/api/home/index.js

@ -17,6 +17,12 @@ export function getSystemIndexInfo() {
}) })
} }
// 操作日志
export function selectOperLogListByLogin() {
return request({
url: '/monitor/operlog/selectOperLogListByLogin',
method: 'get'
})
}

BIN
src/assets/images/logo.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 14 KiB

136
src/router/index.js

@ -71,71 +71,81 @@ export const constantRoutes = [
component: (resolve) => require(['@/views/error/401'], resolve), component: (resolve) => require(['@/views/error/401'], resolve),
hidden: true hidden: true
}, },
{ // {
path: '', // path: '',
component: Layout, // component: Layout,
meta: { title: '首页', icon: 'dashboard', noCache: true, affix: true }, // hidden: true,
children: [ // meta: { title: '首页', icon: 'dashboard', noCache: true, affix: true },
// 系统级-主页概况 // children: [
{ // // 系统级-主页概况
path: 'index', // {
component: (resolve) => require(['@/views/home/index'], resolve), // path: 'index',
name: '首页', // component: (resolve) => require(['@/views/home/index'], resolve),
meta: { title: '首页', icon: 'dashboard', noCache: true } // name: '首页',
}, // meta: { title: '首页', icon: 'dashboard', noCache: true }
// 企业级-主页概况 // },
{ // // 企业级-主页概况
path: 'index2', // {
component: (resolve) => require(['@/views/home/index2'], resolve), // path: 'index2',
name: '首页2', // component: (resolve) => require(['@/views/home/index2'], resolve),
meta: { title: '首页2', icon: 'dashboard', noCache: true } // name: '首页2',
} // meta: { title: '首页2', icon: 'dashboard', noCache: true }
] // }
}, // ]
{ // },
path: '/company', // {
component: Layout, // path: '/company',
meta: { title: '企业服务', icon: 'dashboard', noCache: true, affix: true }, // component: Layout,
children: [ // hidden: true,
// 企业级-企业查询 // meta: { title: '企业服务', icon: 'dashboard', noCache: true, affix: true },
{ // children: [
path: 'search', // // 企业级-企业查询
component: (resolve) => require(['@/views/company/search'], resolve), // {
name: 'search', // path: 'search',
meta: { title: '企业查询', icon: 'search', noCache: true } // component: (resolve) => require(['@/views/company/search'], resolve),
}, // name: 'search',
//系统级-企业信息 // meta: { title: '企业查询', icon: 'search', noCache: true }
{ // },
path: 'companyManager', // //系统级-企业信息
component: (resolve) => require(['@/views/company/manager'], resolve), // {
name: 'manager', // path: 'companyManager',
meta: { title: '企业信息', icon: 'list', noCache: true } // component: (resolve) => require(['@/views/company/manager'], resolve),
}, // name: 'manager',
//系统级-企业审核 // meta: { title: '企业信息', icon: 'list', noCache: true }
{ // },
path: 'campanyVerify', // //系统级-企业审核
component: (resolve) => require(['@/views/company/campanyVerify'], resolve), // {
name: 'campanyVerify', // path: 'campanyVerify',
meta: { title: '企业审核', icon: 'list', noCache: true } // component: (resolve) => require(['@/views/company/campanyVerify'], resolve),
}, // name: 'campanyVerify',
// meta: { title: '企业审核', icon: 'list', noCache: true }
// },
//企业级-企业信息 // //企业级-企业信息
{ // {
path: 'companyInfo', // path: 'companyEdit',
component: (resolve) => require(['@/views/company/companyInfo'], resolve), // component: (resolve) => require(['@/views/company/companyEdit'], resolve),
name: 'companyInfo', // name: 'companyEdit',
meta: { title: '企业信息', icon: 'list', noCache: true } // meta: { title: '企业信息', icon: 'list', noCache: true }
}, // },
//企业级-企业认证 // //企业级-企业详情
{ // {
path: 'authentication', // path: 'companyInfo',
component: (resolve) => require(['@/views/company/authentication'], resolve), // component: (resolve) => require(['@/views/company/companyInfo'], resolve),
name: 'authentication', // name: 'companyInfo',
meta: { title: '企业认证', icon: 'list', noCache: true } // hidden: true,
}, // meta: { title: '企业详情', icon: 'list', noCache: true }
// },
// //企业级-企业认证
// {
// path: 'authentication',
// component: (resolve) => require(['@/views/company/authentication'], resolve),
// name: 'authentication',
// meta: { title: '企业认证', icon: 'list', noCache: true }
// },
] // ]
}, // },
// { // {
// path: '/product', // path: '/product',
// component: Layout, // component: Layout,

4
src/views/company/authentication.vue

@ -23,7 +23,7 @@
</el-table-column> </el-table-column>
<el-table-column label="认证结果" align="center" class-name="small-padding fixed-width" prop="faildReason" > <el-table-column label="认证结果" align="center" class-name="small-padding fixed-width" prop="faildReason" >
</el-table-column> </el-table-column>
<el-table-column label="认证操作" align="center" class-name="small-padding fixed-width"> <!-- <el-table-column label="认证操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
size="mini" size="mini"
@ -31,7 +31,7 @@
@click="applyAuthen(scope.row)" @click="applyAuthen(scope.row)"
>认证</el-button> >认证</el-button>
</template> </template>
</el-table-column> </el-table-column> -->
</el-table> </el-table>
</div> </div>
</template> </template>

33
src/views/company/campanyVerify.vue

@ -54,7 +54,7 @@
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
@click="handleUpdate(scope.row)" @click="handleShowInfo(scope.row.enterpriseId)"
>详情</el-button> >详情</el-button>
</template> </template>
</el-table-column> </el-table-column>
@ -74,10 +74,12 @@
<el-form-item label="工商认证:"> <el-form-item label="工商认证:">
<span v-if="form.businessCertificationTime" class="text-navy"><i class="el-icon-circle-check"></i>通过</span> <span v-if="form.businessCertificationTime" class="text-navy"><i class="el-icon-circle-check"></i>通过</span>
<span v-else class="text-danger"><i class="el-icon-circle-close"></i>未通过</span> <span v-else class="text-danger"><i class="el-icon-circle-close"></i>未通过</span>
<el-button type="text m20" v-if="!form.businessCertificationTime" @click="applyAuthen(1)">点击认证</el-button>
</el-form-item> </el-form-item>
<el-form-item label="工业互联网认证:"> <el-form-item label="工业互联网认证:">
<span v-if="form.industrialInternetCertificationTime" class="text-navy"><i class="el-icon-circle-check"></i>通过</span> <span v-if="form.industrialInternetCertificationTime" class="text-navy"><i class="el-icon-circle-check"></i>通过</span>
<span v-else class="text-danger"><i class="el-icon-circle-close"></i>未通过</span> <span v-else class="text-danger"><i class="el-icon-circle-close"></i>未通过</span>
<el-button type="text m20" v-if="!form.industrialInternetCertificationTime" @click="applyAuthen(2)">点击认证</el-button>
</el-form-item> </el-form-item>
<el-form-item label="审核:" prop="status"> <el-form-item label="审核:" prop="status">
<el-radio-group v-model="form.status"> <el-radio-group v-model="form.status">
@ -99,6 +101,7 @@
<script> <script>
import { getAuditEnterpriseList,passAuditEnterprise,turnDownEnterprise} from "@/api/company/campanyVerify"; import { getAuditEnterpriseList,passAuditEnterprise,turnDownEnterprise} from "@/api/company/campanyVerify";
import { certificationEnterprise,industrialInternetCertification} from "@/api/system/certification";
import ImageUpload from '@/components/ImageUpload'; import ImageUpload from '@/components/ImageUpload';
export default { export default {
@ -151,6 +154,24 @@ methods: {
this.loading = false; this.loading = false;
}); });
}, },
//
applyAuthen(type) {
if(type == 1){
certificationEnterprise().then(res => {
this.msgInfo(res.msg);
if(res.msg.indexOf('工商认证成功') != -1) {
this.form.businessCertificationTime = new Date().toLocaleDateString()
}
})
} else if (type == 2) {
industrialInternetCertification().then(res => {
this.msgSuccess(res.msg);
if(res.msg.indexOf('认证成功') != -1) {
this.form.industrialInternetCertificationTime = new Date().toLocaleDateString()
}
})
}
},
/** 提交按钮 */ /** 提交按钮 */
submitForm() { submitForm() {
this.$refs["form"].validate(valid => { this.$refs["form"].validate(valid => {
@ -199,13 +220,11 @@ methods: {
handleUpdate(row) { handleUpdate(row) {
this.form = row; this.form = row;
this.open = true; this.open = true;
// this.reset();
// const enterpriseid = row.enterpriseid
// getEnterpriseManager(enterpriseid).then(response => {
// this.form = response.data;
// this.open = true;
// });
}, },
/** 详情按钮操作 */
handleShowInfo(id) {
this.$router.push({path:'companyInfo',query:{enterpriseId:id}})
}
} }
}; };
</script> </script>

567
src/views/company/companyEdit.vue

@ -0,0 +1,567 @@
<template>
<div class="app-container">
<div class="apply-wait" v-if="isAdd">
<p><i class="el-icon-loading" style="font-weight: bold"></i>尊敬的企业用户,您正在添加您的企业信息</p>
</div>
<div class="apply-reject" v-if="!isAdd && isEdit">
<p><i class="el-icon-warning-outline" style="font-weight: bold;color:#f9a80d;margin-right: 4px;"></i>尊敬的企业用户,您正在修改您的企业信息</p>
</div>
<el-form ref="form" :model="form" :rules="rules" label-width="170px">
<el-row>
<el-col :span="12">
<el-form-item label="企业名称:" prop="name">
<el-input v-if="isEdit" v-model="form.name" placeholder="请输入企业名称" />
<span v-else>{{form.name}}</span>
</el-form-item>
<el-form-item label="法人责任主体名称:" prop="nameLegalPersonLiabilitySubject">
<el-input v-if="isEdit" v-model="form.nameLegalPersonLiabilitySubject" placeholder="请输入法人责任主体名称" />
<span v-else>{{form.nameLegalPersonLiabilitySubject}}</span>
</el-form-item>
<el-form-item label="法定代表人名称:" prop="nameLegalRepresentative">
<el-input v-if="isEdit" v-model="form.nameLegalRepresentative" placeholder="请输入法定代表人名称" />
<span v-else>{{form.nameLegalRepresentative}}</span>
</el-form-item>
<el-form-item label="法定代表人证件类型:" prop="typeLegalRepresentative">
<el-select v-if="isEdit" v-model="form.typeLegalRepresentative" placeholder="请选择法定代表人类型">
<el-option
v-for="dict in typeLegalRepresentativeOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
></el-option>
</el-select>
<span v-else>{{form.typeLegalRepresentative | filterTypeLegalRepresentative(that)}}</span>
</el-form-item>
<el-form-item label="法定代表人证件号码:" prop="certificateNumberLegalRepresentative">
<el-input v-if="isEdit" v-model="form.certificateNumberLegalRepresentative" placeholder="请输入法定代表人证件号码" />
<span v-else>{{form.certificateNumberLegalRepresentative}}</span>
</el-form-item>
<el-form-item label="统一社会信用代码类型:" prop="corporateUnifiedSocialCreditType">
<el-select v-if="isEdit" v-model="form.corporateUnifiedSocialCreditType" placeholder="请选择统一社会信用代码类型">
<el-option
v-for="dict in corporateUnifiedSocialCreditTypeOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
></el-option>
</el-select>
<span v-else>{{form.corporateUnifiedSocialCreditType | filterCorporateUnifiedSocialCreditTypeOptions(that)}}</span>
</el-form-item>
<el-form-item label="统一社会信用代码:" prop="corporateUnifiedSocialCreditCode">
<el-input v-if="isEdit" v-model="form.corporateUnifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
<span v-else>{{form.corporateUnifiedSocialCreditCode}}</span>
</el-form-item>
<el-form-item label="企业行业大类型:" prop="enterpriseIndustryBigType">
<el-select v-if="isEdit" v-model="form.enterpriseIndustryBigType" placeholder="请选择企业行业大类型">
<el-option
v-for="dict in enterpriseIndustryBigTypeOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
></el-option>
</el-select>
<span v-else>{{form.enterpriseIndustryBigType | filterEnterpriseIndustryBigTypeOptions(that)}}</span>
</el-form-item>
<el-form-item label="企业行业小类型:" prop="enterpriseIndustrySmallType">
<el-select v-if="isEdit" v-model="form.enterpriseIndustrySmallType" placeholder="请选择企业行业小类型">
<el-option
v-for="dict in enterpriseIndustrySmallTypeOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
></el-option>
</el-select>
<span v-else>{{form.enterpriseIndustrySmallType | filterEnterpriseIndustrySmallTypeOptions(that)}}</span>
</el-form-item>
<el-form-item label="企业类型:" prop="enterpriseType">
<el-select v-if="isEdit" v-model="form.enterpriseType" placeholder="请选择企业类型">
<el-option
v-for="dict in enterpriseTypeOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
></el-option>
</el-select>
<span v-else>{{form.enterpriseType | filterEnterpriseTypeOptions(that)}}</span>
</el-form-item>
<el-form-item label="邮箱:" prop="email">
<el-input v-if="isEdit" v-model="form.email" placeholder="请输入邮箱" />
<span v-else>{{form.email}}</span>
</el-form-item>
<el-form-item label="企业简介:" prop="enterpriseDescribe">
<el-input v-if="isEdit" v-model="form.enterpriseDescribe" type="textarea" placeholder="请输入内容" />
<span v-else>{{form.enterpriseDescribe}}</span>
</el-form-item>
<el-form-item label="官网地址:" prop="websiteAddress">
<el-input v-if="isEdit" v-model="form.websiteAddress" placeholder="请输入官网地址" />
<span v-else>{{form.websiteAddress}}</span>
</el-form-item>
<el-form-item label="电话:" prop="mobile">
<el-input v-if="isEdit" v-model="form.mobile" placeholder="请输入电话" />
<span v-else>{{form.mobile}}</span>
</el-form-item>
<el-form-item label="详细地址:" prop="address">
<el-input v-if="isEdit" v-model="form.address" placeholder="请输入详细地址" />
<span v-else>{{form.address}}</span>
</el-form-item>
<el-form-item label="企业注册地详细地址:" prop="placeRegistrationAddress">
<el-input v-if="isEdit" v-model="form.placeRegistrationAddress" placeholder="请输入企业注册地详细地址" />
<span v-else>{{form.placeRegistrationAddress}}</span>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="认证资料类型:" prop="certificatedInformationType">
<el-select v-if="isEdit" v-model="form.certificatedInformationType" placeholder="请选择认证资料类型">
<el-option
v-for="dict in certificatedInformationTypeOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
></el-option>
</el-select>
<span v-else>{{form.certificatedInformationType | filterCertificatedInformationTypeOptions(that)}}</span>
</el-form-item>
<el-form-item label="联系人姓名:" prop="duty">
<el-input v-if="isEdit" v-model="form.duty" placeholder="请输入联系人姓名" />
<span v-else>{{form.duty}}</span>
</el-form-item>
<el-form-item label="联系方式:" prop="contactInformation">
<el-input v-if="isEdit" v-model="form.contactInformation" placeholder="请输入联系方式" />
<span v-else>{{form.contactInformation}}</span>
</el-form-item>
<el-form-item label="省代码:" prop="provinceCode">
<el-select v-if="isEdit" v-model="form.provinceCode" placeholder="请选择省代码" @change="changeProvince">
<el-option
v-for="dict in provinceCodeOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
></el-option>
</el-select>
<span v-else>{{form.provinceCode | filterProvinceCodeOptions(that)}}</span>
</el-form-item>
<el-form-item label="市代码:" prop="cityCode">
<el-select v-if="isEdit" v-model="form.cityCode" placeholder="请选择市代码" @change="changeCity">
<el-option
v-for="(item,index) in cityCodeOptions"
:key="index"
:label="item.name"
:value="item.areaCode+''"
></el-option>
</el-select>
<span v-else>{{form.cityCode | filterCityCodeOptions(that)}}</span>
</el-form-item>
<el-form-item label="区代码:" prop="areaCode">
<el-select v-if="isEdit" v-model="form.areaCode" placeholder="请选择县代码" @change="changeArea">
<el-option
v-for="(item,index) in areaCodeOptions"
:key="index"
:label="item.name"
:value="item.areaCode+''"
></el-option>
</el-select>
<span v-else>{{form.areaCode | filterAreaCodeOptions(that)}}</span>
</el-form-item>
<el-form-item label="备注:" prop="remarks">
<el-input v-if="isEdit" v-model="form.remarks" placeholder="请输入备注" />
<span v-else>{{form.remarks}}</span>
</el-form-item>
<el-form-item label="企业logo:" prop="logo">
<imageUpload v-if="isEdit" v-model="form.logo"/>
<img v-else :src="form.logo" class="pic-item">
</el-form-item>
<el-form-item label="营业执照照片:" prop="companyImg">
<imageUpload v-if="isEdit" v-model="form.companyImg"/>
<img v-else :src="form.companyImg" class="pic-item">
</el-form-item>
<el-row>
<el-col :span="12">
<el-form-item label="法人证件正面照片:" prop="faceIdImg">
<imageUpload v-if="isEdit" v-model="form.faceIdImg"/>
<img v-else :src="form.faceIdImg" class="pic-item">
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="法人证件反面照片:" prop="rearIdImg">
<imageUpload v-if="isEdit" v-model="form.rearIdImg"/>
<img v-else :src="form.rearIdImg" class="pic-item">
</el-form-item>
</el-col>
</el-row>
</el-col>
</el-row>
</el-form>
<div v-if="isEdit" class="dialog-footer text-center">
<el-button type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
</div>
<div v-else class="text-center">
<el-button type="primary" @click="onClickEdit"> </el-button>
</div>
</div>
</template>
<script>
import ImageUpload from '@/components/ImageUpload';
import { getEnterPriseInfoByLogin,addEnterpriseManager, updateEnterpriseManager,getAreaByParentId} from "@/api/system/enterpriseManager";
import {validatAlphabetAndNum,validAlphabets,validatePhone,validEmail,validatePasswordStrong,validateIDCard} from "@/utils/validate"
export default {
name: "EnterpriseManager",
components: {
ImageUpload,
},
data() {
const checkPhoneNum = (rule, value, callback) => {
if (!validatePhone(value)) {
return callback(new Error('请输入正确的手机号码'));
} else {
callback()
}
};
const checkEmailAddr = (rule, value, callback) => {
if (!validEmail(value)) {
return callback(new Error('请输入正确的邮箱地址'));
} else {
callback()
}
};
return {
that:this,
isEdit:false,
isAdd:true,
//
queryParams: {
pageNum: 1,
pageSize: 10,
name: null,
nameLegalRepresentative: null
},
//
certificatedInformationTypeOptions: [],
//
corporateUnifiedSocialCreditTypeOptions: [],
//
enterpriseIndustryBigTypeOptions: [],
//
enterpriseIndustrySmallTypeOptions: [],
//
enterpriseTypeOptions: [],
//
provinceCodeOptions: [],
//
cityCodeOptions: [],
//
areaCodeOptions: [],
//
typeLegalRepresentativeOptions: [],
//
form: {},
params:{},
//
rules: {
address: [
{ required: true, message: "详细地址不能为空", trigger: "blur" }
],
certificateNumberLegalRepresentative: [
{ required: true, message: "法定代表人证件号码不能为空", trigger: "blur" }
],
certificatedInformationType: [
{ required: true, message: "认证资料类型不能为空", trigger: "change" }
],
contactInformation: [
{ required: true, message: "联系方式不能为空", trigger: "blur" }
],
corporateUnifiedSocialCreditCode: [
{ required: true, message: "统一社会信用代码不能为空", trigger: "blur" }
],
corporateUnifiedSocialCreditType: [
{ required: true, message: "统一社会信用代码类型不能为空", trigger: "change" }
],
duty: [
{ required: true, message: "联系人姓名不能为空", trigger: "blur" }
],
email: [
{ required: true, message: "邮箱不能为空", trigger: "blur" },
{ validator: checkEmailAddr, trigger: 'blur' }
],
enterpriseDescribe: [
{ required: true, message: "企业简介不能为空", trigger: "blur" }
],
enterpriseIndustryBigType: [
{ required: true, message: "企业行业大类型不能为空", trigger: "change" }
],
enterpriseIndustrySmallType: [
{ required: true, message: "企业行业小类型不能为空", trigger: "change" }
],
enterpriseType: [
{ required: true, message: "企业类型不能为空", trigger: "change" }
],
mobile: [
{ required: true, message: "电话不能为空", trigger: "blur" },
{validator:checkPhoneNum,trigger:"blur"}
],
name: [
{ required: true, message: "企业名称不能为空", trigger: "blur" }
],
nameLegalPersonLiabilitySubject: [
{ required: true, message: "法人责任主体名称不能为空", trigger: "blur" }
],
nameLegalRepresentative: [
{ required: true, message: "法定代表人名称不能为空", trigger: "blur" }
],
provinceCode: [
{ required: true, message: "省代码不能为空", trigger: "change" }
],
cityCode: [
{ required: true, message: "市代码不能为空", trigger: "change" }
],
areaCode: [
{ required: true, message: "区代码不能为空", trigger: "change" }
],
typeLegalRepresentative: [
{ required: true, message: "法定代表人类型不能为空", trigger: "change" }
],
companyImg: [
{ required: true, message: "营业执照照片不能为空", trigger: "blur" }
],
faceIdImg: [
{ required: true, message: "法人证件正面照片不能为空", trigger: "blur" }
],
rearIdImg: [
{ required: true, message: "法人证件反面照片不能为空", trigger: "blur" }
],
}
};
},
filters: {
//
filterTypeLegalRepresentative(value,that){
if (!value) return ''
let aFilters = that.typeLegalRepresentativeOptions.filter(item => {
return item.dictValue == value
})
return aFilters.length > 0 ? aFilters[0].dictLabel : ''
},
//
filterCorporateUnifiedSocialCreditTypeOptions(value,that){
if (!value) return ''
let aFilters = that.corporateUnifiedSocialCreditTypeOptions.filter(item => {
return item.dictValue == value
})
return aFilters.length > 0 ? aFilters[0].dictLabel : ''
},
//
filterEnterpriseIndustryBigTypeOptions(value,that){
if (!value) return ''
let aFilters = that.enterpriseIndustryBigTypeOptions.filter(item => {
return item.dictValue == value
})
return aFilters.length > 0 ? aFilters[0].dictLabel : ''
},
//
filterEnterpriseIndustrySmallTypeOptions(value,that){
if (!value) return ''
let aFilters = that.enterpriseIndustrySmallTypeOptions.filter(item => {
return item.dictValue == value
})
return aFilters.length > 0 ? aFilters[0].dictLabel : ''
},
//
filterEnterpriseTypeOptions(value,that){
if (!value) return ''
let aFilters = that.enterpriseTypeOptions.filter(item => {
return item.dictValue == value
})
return aFilters.length > 0 ? aFilters[0].dictLabel : ''
},
//
filterCertificatedInformationTypeOptions(value,that){
if (!value) return ''
let aFilters = that.certificatedInformationTypeOptions.filter(item => {
return item.dictValue == value
})
return aFilters.length > 0 ? aFilters[0].dictLabel : ''
},
//
filterProvinceCodeOptions(value,that){
if (!value) return ''
let aFilters = that.provinceCodeOptions.filter(item => {
return item.dictValue == value
})
return aFilters.length > 0 ? aFilters[0].dictLabel : ''
},
//
filterCityCodeOptions(value,that){
if (!value) return ''
let aFilters = that.cityCodeOptions.filter(item => {
return item.areaCode == value
})
return aFilters.length > 0 ? aFilters[0].name : ''
},
//
filterAreaCodeOptions(value,that){
if (!value) return ''
// value = value.toString()
let aFilters = that.areaCodeOptions.filter(item => {
return item.areaCode == value
})
return aFilters.length > 0 ? aFilters[0].name : ''
},
},
created() {
getEnterPriseInfoByLogin().then(res => {
if(res.data)
{
this.form = res.data
this.isAdd = false
if(res.data.provinceCode)
{
this.getCityOrAreaList(res.data.provinceCode,1)
}
if(res.data.cityCode)
{
this.getCityOrAreaList(res.data.cityCode,2)
}
} else {
this.isAdd = true
this.isEdit = true
}
})
this.getDicts("business_license_category").then(response => {
this.certificatedInformationTypeOptions = response.data;
});
this.getDicts("credit_code").then(response => {
this.corporateUnifiedSocialCreditTypeOptions = response.data;
});
this.getDicts("industry_main_category").then(response => {
this.enterpriseIndustryBigTypeOptions = response.data;
});
this.getDicts("industry_sub_category").then(response => {
this.enterpriseIndustrySmallTypeOptions = response.data;
});
this.getDicts("enterprise_category").then(response => {
this.enterpriseTypeOptions = response.data;
});
this.getDicts("province_code").then(response => {
this.provinceCodeOptions = response.data;
});
// this.getDicts("province_code").then(response => {
// this.cityCodeOptions = response.data;
// });
// this.getDicts("province_code").then(response => {
// this.areaCodeOptions = response.data;
// });
this.getDicts("credential_type_code").then(response => {
this.typeLegalRepresentativeOptions = response.data;
});
},
methods: {
//ID,type:12
getCityOrAreaList(parentId,type){
getAreaByParentId({parentId:parseInt(parentId)}).then(res => {
if(type == 1) {
this.cityCodeOptions = res.data;
} else if (type == 2) {
this.areaCodeOptions = res.data;
}
// this.$forceUpdate()
})
},
//
onClickEdit(){
//
this.params = JSON.parse(JSON.stringify(this.form))
this.isEdit = true
},
changeProvince(newVal){
this.form.cityCode = null
this.form.areaCode = null
this.getCityOrAreaList(newVal,1)
},
changeCity(newVal){
this.form.areaCode = null
this.getCityOrAreaList(newVal,2)
},
changeArea(newVal){
this.$forceUpdate()
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.isEdit == true) {
if(this.isAdd) {
addEnterpriseManager(this.form).then(res => {
console.log(res);
this.msgSuccess("添加成功");
this.isAdd = false
})
} else {
updateEnterpriseManager(this.form).then(res => {
console.log(res);
this.msgSuccess("修改成功");
})
}
this.isEdit = false
}
}
});
},
//
cancel() {
this.isEdit = false;
this.form = {}
this.form = this.params
this.resetForm("form");
// this.reset();
},
//
reset() {
this.form = {
enterpriseid: null,
address: null,
certificateNumberLegalRepresentative: null,
contactInformation: null,
corporateUnifiedSocialCreditCode: null,
email: null,
enterpriseDescribe: null,
logo: null,
websiteAddress:null,
name: null,
nameLegalRepresentative: null,
placeRegistrationAddress: null,
companyImg: null,
faceIdImg: null,
};
this.resetForm("form");
},
}
};
</script>
<style lang="scss" scoped>
.el-form {
position: relative;
width: 1200px;
margin: 0 auto;
}
.pic-item {
position: relative;
width: 146px;
height: 146px;
}
.apply-wait,.apply-reject,.apply-adopt{
p{
text-align: center;
font-size: 18px;
color: #666;
margin-bottom: 15px;
}
}
</style>

194
src/views/company/companyInfo copy.vue

@ -1,194 +0,0 @@
<template>
<div class="app-container">
<el-form ref="form" :model="form" :rules="rules" label-width="150px">
<h3 class="mb30 text-danger text-center">企业信息审核通过/企业信息变更申请中</h3>
<el-row>
<el-col :span="8">
<el-form-item label="企业logo">
<imageUpload v-if="isEdit" v-model="form.logo"/>
<img v-else :src="form.logo">
</el-form-item>
</el-col>
<el-col :span="8" v-if="isEdit">
<p class="text-muted" >支持JPGJPEGPNG格式图片大小不超过5MB请保证图片质量分辨率至少为150*150</p>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="企业名称" prop="name">
<el-input v-if="isEdit" v-model="form.name" placeholder="请输入企业名称" />
<span v-else>{{form.name}}</span>
</el-form-item>
<el-form-item label="统一社会信用代码" prop="corporateUnifiedSocialCreditCode">
<el-input v-if="isEdit" v-model="form.corporateUnifiedSocialCreditCode" placeholder="请输入统一社会信用代码" />
<span v-else>{{form.corporateUnifiedSocialCreditCode}}</span>
</el-form-item>
<el-form-item label="法定代表人名称" prop="nameLegalRepresentative">
<el-input v-if="isEdit" v-model="form.nameLegalRepresentative" placeholder="请输入法定代表人名称" />
<span v-else>{{form.nameLegalRepresentative}}</span>
</el-form-item>
<el-form-item label="法定代表人证件号码" prop="certificateNumberLegalRepresentative">
<el-input v-if="isEdit" v-model="form.nameLegalRepresentative" placeholder="请输入法定代表人名称" />
<span v-else>{{form.certificateNumberLegalRepresentative}}</span>
</el-form-item>
<el-form-item label="营业执照照片" prop="companyImg">
<imageUpload v-if="isEdit" v-model="form.companyImg"/>
<img v-else :src="form.companyImg">
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="联系方式" prop="contactInformation">
<el-input v-if="isEdit" v-model="form.contactInformation" placeholder="请输入联系方式" />
<span v-else>{{form.contactInformation}}</span>
</el-form-item>
<el-form-item label="官网地址" prop="web">
<el-input v-if="isEdit" v-model="form.web" placeholder="请输入官网地址" />
<span v-else>{{form.web}}</span>
</el-form-item>
<el-form-item label="企业注册地详细地址" prop="placeRegistrationAddress">
<el-input v-if="isEdit" v-model="form.placeRegistrationAddress" placeholder="请输入企业注册地详细地址" />
<span v-else>{{form.placeRegistrationAddress}}</span>
</el-form-item>
<el-form-item label="邮箱" prop="email">
<el-input v-if="isEdit" v-model="form.email" placeholder="请输入邮箱" />
<span v-else>{{form.email}}</span>
</el-form-item>
<el-form-item label="法人证件正面照片" prop="faceIdImg">
<imageUpload v-if="isEdit" v-model="form.faceIdImg"/>
<img v-else :src="form.faceIdImg">
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="企业简介" prop="enterpriseDescribe">
<el-input v-if="isEdit" v-model="form.enterpriseDescribe" type="textarea" placeholder="请输入内容" />
<span v-else>{{form.enterpriseDescribe}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="搜索词" prop="enterpriseDescribe">
<el-input v-if="isEdit" v-model="form.enterpriseDescribe" placeholder="请输入邮箱" />
<span v-else>{{form.enterpriseDescribe}}</span>
</el-form-item>
</el-col>
<el-col :span="12" v-if="isEdit">
<p class="text-muted" style="margin:0 40px">北京福通互联科技集团有限公司的搜索词为福通互联用户可根据搜索词搜索到您的企业搜索词必须是来自于企业名称中的字</p>
</el-col>
</el-row>
<div class="text-center mt20" v-if="isEdit">
<el-button type="primary" @click="submitForm">提交</el-button>
<el-button @click="isEdit = false">取消</el-button>
</div>
<div class="text-center mt20" v-else>
<el-button @click="isEdit = true">编辑</el-button>
</div>
</el-form>
</div>
</template>
<script>
import ImageUpload from '@/components/ImageUpload';
export default {
name: "EnterpriseManager",
components: {
ImageUpload,
},
data() {
return {
isEdit:false,
//
queryParams: {
pageNum: 1,
pageSize: 10,
name: null,
nameLegalRepresentative: null
},
//
form: {},
rules: {
address: [
{ required: true, message: "详细地址不能为空", trigger: "blur" }
],
certificateNumberLegalRepresentative: [
{ required: true, message: "法定代表人证件号码不能为空", trigger: "blur" }
],
contactInformation: [
{ required: true, message: "联系方式不能为空", trigger: "blur" }
],
corporateUnifiedSocialCreditCode: [
{ required: true, message: "统一社会信用代码不能为空", trigger: "blur" }
],
email: [
{ required: true, message: "邮箱不能为空", trigger: "blur" }
],
enterpriseDescribe: [
{ required: true, message: "企业简介不能为空", trigger: "blur" }
],
name: [
{ required: true, message: "企业名称不能为空", trigger: "blur" }
],
nameLegalRepresentative: [
{ required: true, message: "法定代表人名称不能为空", trigger: "blur" }
],
companyImg: [
{ required: true, message: "营业执照照片不能为空", trigger: "blur" }
],
faceIdImg: [
{ required: true, message: "法人证件正面照片不能为空", trigger: "blur" }
],
}
};
},
created() {
},
methods: {
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.isEdit == true) {
}
}
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
enterpriseid: null,
address: null,
certificateNumberLegalRepresentative: null,
contactInformation: null,
corporateUnifiedSocialCreditCode: null,
email: null,
enterpriseDescribe: null,
logo: null,
name: null,
nameLegalRepresentative: null,
placeRegistrationAddress: null,
companyImg: null,
faceIdImg: null,
};
this.resetForm("form");
},
}
};
</script>
<style lang="scss" scoped>
.el-form {
position: relative;
width: 1000px;
margin: 0 auto;
}
</style>

396
src/views/company/companyInfo.vue

@ -1,192 +1,96 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<div class="apply-wait" v-if="isAdd"> <el-form ref="form" :model="form" label-width="170px">
<p><i class="el-icon-loading" style="font-weight: bold"></i>尊敬的企业用户,您正在添加您的企业信息</p>
</div>
<div class="apply-reject" v-if="!isAdd && isEdit">
<p><i class="el-icon-warning-outline" style="font-weight: bold;color:#f9a80d;margin-right: 4px;"></i>尊敬的企业用户,您正在修改您的企业信息</p>
</div>
<el-form ref="form" :model="form" :rules="rules" label-width="170px">
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="企业名称" prop="name"> <el-form-item label="企业名称:" prop="name">
<el-input v-if="isEdit" v-model="form.name" placeholder="请输入企业名称" /> <span>{{form.name}}</span>
<span v-else>{{form.name}}</span>
</el-form-item> </el-form-item>
<el-form-item label="法人责任主体名称" prop="nameLegalPersonLiabilitySubject"> <el-form-item label="法人责任主体名称:" prop="nameLegalPersonLiabilitySubject">
<el-input v-if="isEdit" v-model="form.nameLegalPersonLiabilitySubject" placeholder="请输入法人责任主体名称" /> <span>{{form.nameLegalPersonLiabilitySubject}}</span>
<span v-else>{{form.nameLegalPersonLiabilitySubject}}</span>
</el-form-item> </el-form-item>
<el-form-item label="法定代表人名称" prop="nameLegalRepresentative"> <el-form-item label="法定代表人名称:" prop="nameLegalRepresentative">
<el-input v-if="isEdit" v-model="form.nameLegalRepresentative" placeholder="请输入法定代表人名称" /> <span>{{form.nameLegalRepresentative}}</span>
<span v-else>{{form.nameLegalRepresentative}}</span>
</el-form-item> </el-form-item>
<el-form-item label="法定代表人证件类型" prop="typeLegalRepresentative"> <el-form-item label="法定代表人证件类型:" prop="typeLegalRepresentative">
<el-select v-if="isEdit" v-model="form.typeLegalRepresentative" placeholder="请选择法定代表人类型"> <span>{{form.typeLegalRepresentative | filterTypeLegalRepresentative(that)}}</span>
<el-option
v-for="dict in typeLegalRepresentativeOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
></el-option>
</el-select>
<span v-else>{{form.typeLegalRepresentative | filterTypeLegalRepresentative(that)}}</span>
</el-form-item> </el-form-item>
<el-form-item label="法定代表人证件号码" prop="certificateNumberLegalRepresentative"> <el-form-item label="法定代表人证件号码:" prop="certificateNumberLegalRepresentative">
<el-input v-if="isEdit" v-model="form.certificateNumberLegalRepresentative" placeholder="请输入法定代表人证件号码" /> <span>{{form.certificateNumberLegalRepresentative}}</span>
<span v-else>{{form.certificateNumberLegalRepresentative}}</span>
</el-form-item> </el-form-item>
<el-form-item label="统一社会信用代码类型" prop="corporateUnifiedSocialCreditType"> <el-form-item label="统一社会信用代码类型:" prop="corporateUnifiedSocialCreditType">
<el-select v-if="isEdit" v-model="form.corporateUnifiedSocialCreditType" placeholder="请选择统一社会信用代码类型"> <span>{{form.corporateUnifiedSocialCreditType | filterCorporateUnifiedSocialCreditTypeOptions(that)}}</span>
<el-option
v-for="dict in corporateUnifiedSocialCreditTypeOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
></el-option>
</el-select>
<span v-else>{{form.corporateUnifiedSocialCreditType | filterCorporateUnifiedSocialCreditTypeOptions(that)}}</span>
</el-form-item> </el-form-item>
<el-form-item label="统一社会信用代码" prop="corporateUnifiedSocialCreditCode"> <el-form-item label="统一社会信用代码:" prop="corporateUnifiedSocialCreditCode">
<el-input v-if="isEdit" v-model="form.corporateUnifiedSocialCreditCode" placeholder="请输入统一社会信用代码" /> <span>{{form.corporateUnifiedSocialCreditCode}}</span>
<span v-else>{{form.corporateUnifiedSocialCreditCode}}</span>
</el-form-item> </el-form-item>
<el-form-item label="企业行业大类型" prop="enterpriseIndustryBigType"> <el-form-item label="企业行业大类型:" prop="enterpriseIndustryBigType">
<el-select v-if="isEdit" v-model="form.enterpriseIndustryBigType" placeholder="请选择企业行业大类型"> <span>{{form.enterpriseIndustryBigType | filterEnterpriseIndustryBigTypeOptions(that)}}</span>
<el-option
v-for="dict in enterpriseIndustryBigTypeOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
></el-option>
</el-select>
<span v-else>{{form.enterpriseIndustryBigType | filterEnterpriseIndustryBigTypeOptions(that)}}</span>
</el-form-item> </el-form-item>
<el-form-item label="企业行业小类型" prop="enterpriseIndustrySmallType"> <el-form-item label="企业行业小类型:" prop="enterpriseIndustrySmallType">
<el-select v-if="isEdit" v-model="form.enterpriseIndustrySmallType" placeholder="请选择企业行业小类型"> <span>{{form.enterpriseIndustrySmallType | filterEnterpriseIndustrySmallTypeOptions(that)}}</span>
<el-option
v-for="dict in enterpriseIndustrySmallTypeOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
></el-option>
</el-select>
<span v-else>{{form.enterpriseIndustrySmallType | filterEnterpriseIndustrySmallTypeOptions(that)}}</span>
</el-form-item> </el-form-item>
<el-form-item label="企业类型" prop="enterpriseType"> <el-form-item label="企业类型:" prop="enterpriseType">
<el-select v-if="isEdit" v-model="form.enterpriseType" placeholder="请选择企业类型"> <span>{{form.enterpriseType | filterEnterpriseTypeOptions(that)}}</span>
<el-option
v-for="dict in enterpriseTypeOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
></el-option>
</el-select>
<span v-else>{{form.enterpriseType | filterEnterpriseTypeOptions(that)}}</span>
</el-form-item> </el-form-item>
<el-form-item label="邮箱" prop="email"> <el-form-item label="邮箱:" prop="email">
<el-input v-if="isEdit" v-model="form.email" placeholder="请输入邮箱" /> <span>{{form.email}}</span>
<span v-else>{{form.email}}</span>
</el-form-item> </el-form-item>
<el-form-item label="企业简介" prop="enterpriseDescribe"> <el-form-item label="企业简介:" prop="enterpriseDescribe">
<el-input v-if="isEdit" v-model="form.enterpriseDescribe" type="textarea" placeholder="请输入内容" /> <span>{{form.enterpriseDescribe}}</span>
<span v-else>{{form.enterpriseDescribe}}</span>
</el-form-item> </el-form-item>
<el-form-item label="官网地址" prop="websiteAddress"> <el-form-item label="官网地址:" prop="websiteAddress">
<el-input v-if="isEdit" v-model="form.websiteAddress" placeholder="请输入官网地址" /> <span>{{form.websiteAddress}}</span>
<span v-else>{{form.websiteAddress}}</span>
</el-form-item> </el-form-item>
<el-form-item label="电话" prop="mobile"> <el-form-item label="电话:" prop="mobile">
<el-input v-if="isEdit" v-model="form.mobile" placeholder="请输入电话" /> <span>{{form.mobile}}</span>
<span v-else>{{form.mobile}}</span>
</el-form-item> </el-form-item>
<el-form-item label="详细地址" prop="address"> <el-form-item label="详细地址:" prop="address">
<el-input v-if="isEdit" v-model="form.address" placeholder="请输入详细地址" /> <span>{{form.address}}</span>
<span v-else>{{form.address}}</span>
</el-form-item> </el-form-item>
<el-form-item label="企业注册地详细地址" prop="placeRegistrationAddress"> <el-form-item label="企业注册地详细地址:" prop="placeRegistrationAddress">
<el-input v-if="isEdit" v-model="form.placeRegistrationAddress" placeholder="请输入企业注册地详细地址" /> <span>{{form.placeRegistrationAddress}}</span>
<span v-else>{{form.placeRegistrationAddress}}</span>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="认证资料类型" prop="certificatedInformationType"> <el-form-item label="认证资料类型:" prop="certificatedInformationType">
<el-select v-if="isEdit" v-model="form.certificatedInformationType" placeholder="请选择认证资料类型"> <span>{{form.certificatedInformationType | filterCertificatedInformationTypeOptions(that)}}</span>
<el-option
v-for="dict in certificatedInformationTypeOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
></el-option>
</el-select>
<span v-else>{{form.certificatedInformationType | filterCertificatedInformationTypeOptions(that)}}</span>
</el-form-item> </el-form-item>
<el-form-item label="联系人姓名" prop="duty"> <el-form-item label="联系人姓名:" prop="duty">
<el-input v-if="isEdit" v-model="form.duty" placeholder="请输入联系人姓名" /> <span>{{form.duty}}</span>
<span v-else>{{form.duty}}</span>
</el-form-item> </el-form-item>
<el-form-item label="联系方式" prop="contactInformation"> <el-form-item label="联系方式:" prop="contactInformation">
<el-input v-if="isEdit" v-model="form.contactInformation" placeholder="请输入联系方式" /> <span>{{form.contactInformation}}</span>
<span v-else>{{form.contactInformation}}</span>
</el-form-item> </el-form-item>
<el-form-item label="省代码" prop="provinceCode"> <el-form-item label="省代码:" prop="provinceCode">
<el-select v-if="isEdit" v-model="form.provinceCode" placeholder="请选择省代码" @change="changeProvince"> <span>{{form.provinceCode | filterProvinceCodeOptions(that)}}</span>
<el-option
v-for="dict in provinceCodeOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
></el-option>
</el-select>
<span v-else>{{form.provinceCode | filterProvinceCodeOptions(that)}}</span>
</el-form-item> </el-form-item>
<el-form-item label="市代码" prop="cityCode"> <el-form-item label="市代码:" prop="cityCode">
<el-select v-if="isEdit" v-model="form.cityCode" placeholder="请选择市代码" @change="changeCity"> <span>{{form.cityCode | filterCityCodeOptions(that)}}</span>
<el-option
v-for="(item,index) in cityCodeOptions"
:key="index"
:label="item.name"
:value="item.areaCode+''"
></el-option>
</el-select>
<span v-else>{{form.cityCode | filterCityCodeOptions(that)}}</span>
</el-form-item> </el-form-item>
<el-form-item label="区代码" prop="areaCode"> <el-form-item label="区代码:" prop="areaCode">
<el-select v-if="isEdit" v-model="form.areaCode" placeholder="请选择县代码" @change="changeArea"> <span>{{form.areaCode | filterAreaCodeOptions(that)}}</span>
<el-option
v-for="(item,index) in areaCodeOptions"
:key="index"
:label="item.name"
:value="item.areaCode+''"
></el-option>
</el-select>
<span v-else>{{form.areaCode | filterAreaCodeOptions(that)}}</span>
</el-form-item> </el-form-item>
<el-form-item label="备注" prop="remarks"> <el-form-item label="备注:" prop="remarks">
<el-input v-if="isEdit" v-model="form.remarks" placeholder="请输入备注" /> <span>{{form.remarks}}</span>
<span v-else>{{form.remarks}}</span>
</el-form-item> </el-form-item>
<el-form-item label="企业logo" prop="logo"> <el-form-item label="企业logo:" prop="logo">
<imageUpload v-if="isEdit" v-model="form.logo"/> <img :src="form.logo" class="pic-item">
<img v-else :src="form.logo" class="pic-item">
</el-form-item> </el-form-item>
<el-form-item label="营业执照照片" prop="companyImg"> <el-form-item label="营业执照照片:" prop="companyImg">
<imageUpload v-if="isEdit" v-model="form.companyImg"/> <img :src="form.companyImg" class="pic-item">
<img v-else :src="form.companyImg" class="pic-item">
</el-form-item> </el-form-item>
<el-row> <el-row>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="法人证件正面照片" prop="faceIdImg"> <el-form-item label="法人证件正面照片:" prop="faceIdImg">
<imageUpload v-if="isEdit" v-model="form.faceIdImg"/> <img :src="form.faceIdImg" class="pic-item">
<img v-else :src="form.faceIdImg" class="pic-item">
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item label="法人证件反面照片" prop="rearIdImg"> <el-form-item label="法人证件反面照片:" prop="rearIdImg">
<imageUpload v-if="isEdit" v-model="form.rearIdImg"/> <img :src="form.rearIdImg" class="pic-item">
<img v-else :src="form.rearIdImg" class="pic-item">
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -194,51 +98,20 @@
</el-row> </el-row>
</el-form> </el-form>
<div v-if="isEdit" class="dialog-footer text-center"> <div class="dialog-footer text-center">
<el-button type="primary" @click="submitForm"> </el-button> <el-button @click="cancel">返回</el-button>
<el-button @click="cancel"> </el-button>
</div>
<div v-else class="text-center">
<el-button type="primary" @click="onClickEdit"> </el-button>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import ImageUpload from '@/components/ImageUpload'; import { getEnterPriseInfoByLogin,getAreaByParentId,getEnterpriseManager} from "@/api/system/enterpriseManager";
import { getEnterPriseInfoByLogin,addEnterpriseManager, updateEnterpriseManager,getAreaByParentId} from "@/api/system/enterpriseManager";
import {validatAlphabetAndNum,validAlphabets,validatePhone,validEmail,validatePasswordStrong,validateIDCard} from "@/utils/validate"
export default { export default {
name: "EnterpriseManager", name: "companyInfo",
components: {
ImageUpload,
},
data() { data() {
const checkPhoneNum = (rule, value, callback) => {
if (!validatePhone(value)) {
return callback(new Error('请输入正确的手机号码'));
} else {
callback()
}
};
const checkEmailAddr = (rule, value, callback) => {
if (!validEmail(value)) {
return callback(new Error('请输入正确的邮箱地址'));
} else {
callback()
}
};
return { return {
enterpriseId:this.$route.query.enterpriseId,
that:this, that:this,
isEdit:false,
isAdd:true,
//
queryParams: {
pageNum: 1,
pageSize: 10,
name: null,
nameLegalRepresentative: null
},
// //
certificatedInformationTypeOptions: [], certificatedInformationTypeOptions: [],
// //
@ -260,80 +133,6 @@ export default {
// //
form: {}, form: {},
params:{}, params:{},
//
rules: {
address: [
{ required: true, message: "详细地址不能为空", trigger: "blur" }
],
certificateNumberLegalRepresentative: [
{ required: true, message: "法定代表人证件号码不能为空", trigger: "blur" }
],
certificatedInformationType: [
{ required: true, message: "认证资料类型不能为空", trigger: "change" }
],
contactInformation: [
{ required: true, message: "联系方式不能为空", trigger: "blur" }
],
corporateUnifiedSocialCreditCode: [
{ required: true, message: "统一社会信用代码不能为空", trigger: "blur" }
],
corporateUnifiedSocialCreditType: [
{ required: true, message: "统一社会信用代码类型不能为空", trigger: "change" }
],
duty: [
{ required: true, message: "联系人姓名不能为空", trigger: "blur" }
],
email: [
{ required: true, message: "邮箱不能为空", trigger: "blur" },
{ validator: checkEmailAddr, trigger: 'blur' }
],
enterpriseDescribe: [
{ required: true, message: "企业简介不能为空", trigger: "blur" }
],
enterpriseIndustryBigType: [
{ required: true, message: "企业行业大类型不能为空", trigger: "change" }
],
enterpriseIndustrySmallType: [
{ required: true, message: "企业行业小类型不能为空", trigger: "change" }
],
enterpriseType: [
{ required: true, message: "企业类型不能为空", trigger: "change" }
],
mobile: [
{ required: true, message: "电话不能为空", trigger: "blur" },
{validator:checkPhoneNum,trigger:"blur"}
],
name: [
{ required: true, message: "企业名称不能为空", trigger: "blur" }
],
nameLegalPersonLiabilitySubject: [
{ required: true, message: "法人责任主体名称不能为空", trigger: "blur" }
],
nameLegalRepresentative: [
{ required: true, message: "法定代表人名称不能为空", trigger: "blur" }
],
provinceCode: [
{ required: true, message: "省代码不能为空", trigger: "change" }
],
cityCode: [
{ required: true, message: "市代码不能为空", trigger: "change" }
],
areaCode: [
{ required: true, message: "区代码不能为空", trigger: "change" }
],
typeLegalRepresentative: [
{ required: true, message: "法定代表人类型不能为空", trigger: "change" }
],
companyImg: [
{ required: true, message: "营业执照照片不能为空", trigger: "blur" }
],
faceIdImg: [
{ required: true, message: "法人证件正面照片不能为空", trigger: "blur" }
],
rearIdImg: [
{ required: true, message: "法人证件反面照片不能为空", trigger: "blur" }
],
}
}; };
}, },
filters: { filters: {
@ -414,11 +213,10 @@ export default {
}, },
}, },
created() { created() {
getEnterPriseInfoByLogin().then(res => { getEnterpriseManager(this.enterpriseId).then(res => {
if(res.data) if(res.data)
{ {
this.form = res.data this.form = res.data
this.isAdd = false
if(res.data.provinceCode) if(res.data.provinceCode)
{ {
this.getCityOrAreaList(res.data.provinceCode,1) this.getCityOrAreaList(res.data.provinceCode,1)
@ -427,11 +225,7 @@ export default {
{ {
this.getCityOrAreaList(res.data.cityCode,2) this.getCityOrAreaList(res.data.cityCode,2)
} }
} else {
this.isAdd = true
this.isEdit = true
} }
}) })
this.getDicts("business_license_category").then(response => { this.getDicts("business_license_category").then(response => {
this.certificatedInformationTypeOptions = response.data; this.certificatedInformationTypeOptions = response.data;
@ -473,76 +267,12 @@ export default {
// this.$forceUpdate() // this.$forceUpdate()
}) })
}, },
//
onClickEdit(){
//
this.params = JSON.parse(JSON.stringify(this.form))
this.isEdit = true
},
changeProvince(newVal){
this.form.cityCode = null
this.form.areaCode = null
this.getCityOrAreaList(newVal,1)
},
changeCity(newVal){
this.form.areaCode = null
this.getCityOrAreaList(newVal,2)
},
changeArea(newVal){
this.$forceUpdate()
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.isEdit == true) {
if(this.isAdd) {
addEnterpriseManager(this.form).then(res => {
console.log(res);
this.msgSuccess("添加成功");
this.isAdd = false
})
} else {
updateEnterpriseManager(this.form).then(res => {
console.log(res);
this.msgSuccess("修改成功");
})
}
this.isEdit = false
}
}
});
},
// //
cancel() { cancel() {
this.isEdit = false;
this.form = {} this.form = {}
this.form = this.params window.history.go(-1)
this.resetForm("form");
// this.reset();
}, },
// }
reset() {
this.form = {
enterpriseid: null,
address: null,
certificateNumberLegalRepresentative: null,
contactInformation: null,
corporateUnifiedSocialCreditCode: null,
email: null,
enterpriseDescribe: null,
logo: null,
websiteAddress:null,
name: null,
nameLegalRepresentative: null,
placeRegistrationAddress: null,
companyImg: null,
faceIdImg: null,
};
this.resetForm("form");
},
}
}; };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>

19
src/views/company/manager.vue

@ -36,7 +36,7 @@
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
@click="handleUpdate(scope.row)" @click="handleShowInfo(scope.row.enterpriseId)"
>详情</el-button> >详情</el-button>
</template> </template>
</el-table-column> </el-table-column>
@ -189,14 +189,15 @@ export default {
this.resetForm("queryForm"); this.resetForm("queryForm");
this.handleQuery(); this.handleQuery();
}, },
/** 修改按钮操作 */ /** 详情按钮操作 */
handleUpdate(row) { handleShowInfo(id) {
this.reset(); // this.reset();
const enterpriseid = row.enterpriseId // const enterpriseid = row.enterpriseId
getEnterpriseManager(enterpriseid).then(response => { // getEnterpriseManager(enterpriseid).then(response => {
this.form = response.data; // this.form = response.data;
this.open = true; // this.open = true;
}); // });
this.$router.push({path:'companyInfo',query:{enterpriseId:id}})
}, },
} }
}; };

120
src/views/company/search.vue

@ -1,6 +1,6 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<div class="search-form"> <div class="search-form" :style="showSearchData ? 'margin:0;':'margin:0 auto;'">
<div class="search-top"> <div class="search-top">
<img src="@/assets/images/search.png" class="search"> <img src="@/assets/images/search.png" class="search">
<label for="searchForm">食品原料供应商资质检索</label> <label for="searchForm">食品原料供应商资质检索</label>
@ -24,60 +24,28 @@
</div> </div>
<div class="search-item"> <div class="search-item">
<span class="search-lable">企业类型</span> <span class="search-lable">企业类型</span>
<el-radio-group v-model="formData.radio1" size="small" class="search-option"> <el-radio-group v-model="formData.enterpriseType" size="small" class="search-option">
<el-radio-button label="不限"></el-radio-button> <el-radio-button label="不限"></el-radio-button>
<el-radio-button label="有限责任公司"></el-radio-button> <el-radio-button v-for="dict in enterpriseTypeOptions" :key="dict.dictValue" :label="dict.dictValue">{{dict.dictLabel}}</el-radio-button>
<el-radio-button label="股份有限公司"></el-radio-button>
<el-radio-button label="国企"></el-radio-button>
<el-radio-button label="独资公司"></el-radio-button>
<el-radio-button label="外商投资公司"></el-radio-button>
<el-radio-button label="个体工商户"></el-radio-button>
</el-radio-group> </el-radio-group>
</div> </div>
<div class="search-item"> <div class="search-item">
<span class="search-lable">注册资本</span> <span class="search-lable">注册资本</span>
<el-radio-group v-model="formData.radio2" size="small" class="search-option"> <el-radio-group v-model="formData.registeredCapital" size="small" class="search-option">
<el-radio-button label="不限"></el-radio-button> <el-radio-button label="不限"></el-radio-button>
<el-radio-button label="100万以内"></el-radio-button> <el-radio-button label="1">100万以内</el-radio-button>
<el-radio-button label="100-500万"></el-radio-button> <el-radio-button label="2">100-500</el-radio-button>
<el-radio-button label="500-1000万"></el-radio-button> <el-radio-button label="3">500-1000</el-radio-button>
<el-radio-button label="1000-3000万"></el-radio-button> <el-radio-button label="4">1000-3000</el-radio-button>
<el-radio-button label="3000-5000万"></el-radio-button> <el-radio-button label="5">3000-5000</el-radio-button>
<el-radio-button label="5000万以上"></el-radio-button> <el-radio-button label="6">5000万以上</el-radio-button>
</el-radio-group> </el-radio-group>
</div> </div>
<div class="search-item"> <div class="search-item">
<span class="search-lable">注册区域</span> <span class="search-lable">注册区域</span>
<el-radio-group v-model="formData.radio3" size="small" class="search-option"> <el-radio-group v-model="formData.provinceCode" size="small" class="search-option">
<el-radio-button label="不限"></el-radio-button> <el-radio-button label="不限"></el-radio-button>
<el-radio-button label="北京市"></el-radio-button> <el-radio-button v-for="dict in provinceCodeOptions" :key="dict.dictValue" :label="dict.dictValue">{{dict.dictLabel}}</el-radio-button>
<el-radio-button label="天津市"></el-radio-button>
<el-radio-button label="重庆市"></el-radio-button>
<el-radio-button label="广东省"></el-radio-button>
<el-radio-button label="江苏省"></el-radio-button>
<el-radio-button label="河南省"></el-radio-button>
<el-radio-button label="四川省"></el-radio-button>
<el-radio-button label="湖北省"></el-radio-button>
<el-radio-button label="河北省"></el-radio-button>
<el-radio-button label="湖南省"></el-radio-button>
<el-radio-button label="福建省"></el-radio-button>
<el-radio-button label="安徽省"></el-radio-button>
<el-radio-button label="辽宁省"></el-radio-button>
<el-radio-button label="陕西省"></el-radio-button>
<el-radio-button label="江西省"></el-radio-button>
<el-radio-button label="广西自治区"></el-radio-button>
<el-radio-button label="云南省"></el-radio-button>
<el-radio-button label="黑龙江"></el-radio-button>
<el-radio-button label="内蒙古"></el-radio-button>
<el-radio-button label="吉林省"></el-radio-button>
<el-radio-button label="山西省"></el-radio-button>
<el-radio-button label="贵州省"></el-radio-button>
<el-radio-button label="甘肃省"></el-radio-button>
<el-radio-button label="新疆自治区"></el-radio-button>
<el-radio-button label="海南省"></el-radio-button>
<el-radio-button label="青海省"></el-radio-button>
<el-radio-button label="宁夏自治区"></el-radio-button>
<el-radio-button label="西藏自治区"></el-radio-button>
</el-radio-group> </el-radio-group>
</div> </div>
</div> </div>
@ -87,7 +55,7 @@
<div class="company"> <div class="company">
<img :src="item.logo" class="company-logo"> <img :src="item.logo" class="company-logo">
<span class="company-name text-muted">{{item.name}}</span> <span class="company-name text-muted">{{item.name}}</span>
<el-button type="text" class="fr" @click="showDetail(item.enterpriseid)">查看详情>></el-button> <el-button type="text" class="fr" @click="showDetail(item.enterpriseId)">查看详情>></el-button>
</div> </div>
<div class="company-info text-muted"> <div class="company-info text-muted">
<el-row> <el-row>
@ -97,7 +65,7 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<span>官网</span> <span>官网</span>
<span>{{item.logo}}</span> <span>{{item.websiteAddress}}</span>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
@ -125,7 +93,7 @@
</el-row> </el-row>
<el-row> <el-row>
<span class="title-lable">官网</span> <span class="title-lable">官网</span>
<span>{{detailData.logo}}</span> <span>{{detailData.websiteAddress}}</span>
</el-row> </el-row>
<el-row> <el-row>
<span class="title-lable">电话</span> <span class="title-lable">电话</span>
@ -250,20 +218,10 @@ export default {
name:'search', name:'search',
data() { data() {
return { return {
tableData: [{
date: '2016-05-02',
name: '2016-05-02',
address: '110221512351512'
},{
date: '2016-05-04',
name: '2016-05-02',
address: '110221512351512'
}],
formData:{ formData:{
name:'', enterpriseType:'不限',
radio1:'不限', registeredCapital:'不限',
radio2:'不限', provinceCode:'不限',
radio3:'不限',
}, },
searchParam:'', searchParam:'',
searchDataList:[], searchDataList:[],
@ -276,9 +234,19 @@ export default {
showSearchData:false, showSearchData:false,
qualificationVisible:false, qualificationVisible:false,
detailData:{}, detailData:{},
qualificationFrom:{} qualificationFrom:{},
enterpriseTypeOptions:[],
provinceCodeOptions:[]
} }
}, },
mounted(){
this.getDicts("enterprise_category").then(response => {
this.enterpriseTypeOptions = response.data;
});
this.getDicts("province_code").then(response => {
this.provinceCodeOptions = response.data;
});
},
methods: { methods: {
search(){ search(){
if(this.searchParam.trim().length == 0) return if(this.searchParam.trim().length == 0) return
@ -292,26 +260,36 @@ export default {
{ {
params.nameLegalRepresentative = this.searchParam.trim() params.nameLegalRepresentative = this.searchParam.trim()
}
if(this.formData.enterpriseType != '不限')
{
params.enterpriseType = parseInt(this.formData.enterpriseType)
}
if(this.formData.provinceCode != '不限')
{
params.provinceCode = parseInt(this.formData.provinceCode)
}
if(this.formData.registeredCapital != '不限')
{
params.registeredCapital = parseInt(this.formData.registeredCapital)
} }
searchList(params).then(res =>{ searchList(params).then(res =>{
console.log(res);
this.searchDataList = res.rows this.searchDataList = res.rows
if(this.searchDataList.length > 0) this.showSearchData = true
{
this.showSearchData = true
}
}) })
}, },
resetAdvanced(){ resetAdvanced(){
this.formData.radio1 = '不限' this.formData.enterpriseType = '不限'
this.formData.radio2 = '不限' this.formData.registeredCapital = '不限'
this.formData.radio3 = '不限' this.formData.provinceCode = '不限'
}, },
showDetail(id){ showDetail(id){
electEnterpriseById({enterpriseid:id}).then(res => { electEnterpriseById({enterpriseid:id}).then(res => {
this.drawer = true this.drawer = true
console.log(res);
this.detailData = res.data this.detailData = res.data
}) })
}, },
@ -333,7 +311,6 @@ export default {
</script> </script>
<style lang="scss" > <style lang="scss" >
.search-form { .search-form {
.el-input-group__append { .el-input-group__append {
background-color: #00a9fe; background-color: #00a9fe;
color: #fff; color: #fff;
@ -343,7 +320,6 @@ export default {
background-color: #00a9feab; background-color: #00a9feab;
} }
} }
.el-input { .el-input {
border: 2px solid #00a9fe; border: 2px solid #00a9fe;
input { input {

5
src/views/home/index.vue

@ -41,8 +41,7 @@ import {getDay} from "@/utils/index"
import echarts from "echarts"; import echarts from "echarts";
// import echarts from "echarts5_0_1/echarts5_0_1.min.js"; // import echarts from "echarts5_0_1/echarts5_0_1.min.js";
import "echarts-liquidfill"; import "echarts-liquidfill";
import { list} from "@/api/monitor/operlog"; import {getSystemIndexInfo,selectOperLogListByLogin} from "@/api/home/index"
import {getSystemIndexInfo} from "@/api/home/index"
export default { export default {
name:'home', name:'home',
data() { data() {
@ -77,7 +76,7 @@ export default {
}, },
methods: { methods: {
getList() { getList() {
list(this.queryParams).then( response => { selectOperLogListByLogin(this.queryParams).then( response => {
this.tableData = response.rows; this.tableData = response.rows;
}); });
getSystemIndexInfo().then(res => { getSystemIndexInfo().then(res => {

38
src/views/home/index2.vue

@ -16,7 +16,8 @@
<el-col :span="4"> <el-col :span="4">
<img :src="enterpriseUrl" style="width:200px;height:200px"> <img :src="enterpriseUrl" style="width:200px;height:200px">
<br> <br>
<button class="auth-btn pointer">已认证</button> <el-button :type="companyInfo.businessCertificationStatus == 1 ? 'success':'info'" class="auth-btn" style="width:80px;margin-right:10px">工商{{companyInfo.businessCertificationStatus == 1 ? '已':'未'}}认证</el-button>
<el-button :type="companyInfo.industrialInternetCertificationStatus == 1 ? 'success':'info'" class="auth-btn">工业互联网{{companyInfo.industrialInternetCertificationStatus == 1 ? '已':'未'}}认证</el-button>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<div><label class="company-info-lable text-muted">企业名称</label><span class="company-info-span">{{companyInfo.enterpriseName}}</span></div> <div><label class="company-info-lable text-muted">企业名称</label><span class="company-info-span">{{companyInfo.enterpriseName}}</span></div>
@ -72,8 +73,8 @@
<script> <script>
import {getDay} from "@/utils/index" import {getDay} from "@/utils/index"
// import echarts from "echarts"; // import echarts from "echarts";
import { list} from "@/api/monitor/operlog";
import {getIndexInfo} from "@/api/home/index" import {getIndexInfo,selectOperLogListByLogin} from "@/api/home/index"
import vueQr from 'vue-qr' import vueQr from 'vue-qr'
export default { export default {
name:'home', name:'home',
@ -82,6 +83,7 @@ export default {
}, },
data() { data() {
return { return {
VUE_H5_QR:process.env.VUE_APP_H5_QR,
day:getDay(), day:getDay(),
times:'', times:'',
tableData: [ tableData: [
@ -114,7 +116,7 @@ export default {
}, },
methods: { methods: {
initData() { initData() {
list(this.queryParams).then( response => { selectOperLogListByLogin(this.queryParams).then( response => {
this.tableData = response.rows; this.tableData = response.rows;
}); });
getIndexInfo().then(res =>{ getIndexInfo().then(res =>{
@ -125,9 +127,9 @@ export default {
} }
this.enterpriseUrl = this.companyInfo.enterpriseUrl || require("@/assets/images/profile.jpg") this.enterpriseUrl = this.companyInfo.enterpriseUrl || require("@/assets/images/profile.jpg")
this.companyID = this.companyInfo.enterpriseId this.companyID = this.companyInfo.enterpriseId
if(this.companyInfo.enterpriseUrl) { // if(this.companyInfo.enterpriseUrl) {
this.imageUrl = require(this.companyInfo.enterpriseUrl) // this.imageUrl = require("../../assets/logo/logo.png")
} // }
this.changeIsPublic() this.changeIsPublic()
}) })
}, },
@ -140,7 +142,8 @@ export default {
a.dispatchEvent(event) a.dispatchEvent(event)
}, },
changeIsPublic(val){ changeIsPublic(val){
this.qrTest = this.companyID+'&' + this.form.isItPublic this.qrTest = this.VUE_H5_QR + '?enterpriseId='+this.companyID+'&isItPublic=' + this.form.isItPublic
console.log(this.qrTest);
}, },
jumpRouter(name){ jumpRouter(name){
this.$router.push({name:name}) this.$router.push({name:name})
@ -223,15 +226,20 @@ export default {
width: 100%; width: 100%;
.auth-btn { .auth-btn {
position: relative; position: relative;
margin: 0 auto; margin: 5px auto;
width: 70px; width: 120px;
height: 25px; height: 25px;
background-color: gray; line-height: 25px;
color: #fff; padding: 0;
// background-color: gray;
// color: #fff;
border: 0; border: 0;
&:active,:hover { // &:active,:hover {
background-color: rgb(185, 184, 184); // background-color: rgb(185, 184, 184);
} // }
}
.success-btn {
background-color: greenyellow;
} }
.company-info-lable { .company-info-lable {
width: 100px; width: 100px;

2
src/views/login/login.vue

@ -138,7 +138,7 @@ export default {
Cookies.remove('rememberMe'); Cookies.remove('rememberMe');
} }
this.$store.dispatch("Login", this.loginForm).then(() => { this.$store.dispatch("Login", this.loginForm).then(() => {
this.$router.push({ path: this.redirect || "/" }).catch(()=>{}); this.$router.push({ path: "/" }).catch(()=>{});
}).catch(() => { }).catch(() => {
this.loading = false; this.loading = false;
this.getCode(); this.getCode();

4
src/views/system/role/index.vue

@ -167,9 +167,9 @@
<el-form-item label="权限字符" prop="roleKey"> <el-form-item label="权限字符" prop="roleKey">
<el-input v-model="form.roleKey" placeholder="请输入权限字符" /> <el-input v-model="form.roleKey" placeholder="请输入权限字符" />
</el-form-item> </el-form-item>
<el-form-item label="角色顺序" prop="roleSort"> <!-- <el-form-item label="角色顺序" prop="roleSort">
<el-input-number v-model="form.roleSort" controls-position="right" :min="0" /> <el-input-number v-model="form.roleSort" controls-position="right" :min="0" />
</el-form-item> </el-form-item> -->
<el-form-item label="状态"> <el-form-item label="状态">
<el-radio-group v-model="form.status"> <el-radio-group v-model="form.status">
<el-radio <el-radio

Loading…
Cancel
Save