feat: 供应商管理系统的功能新增以及BUG修改
This commit is contained in:
parent
64ceaad4db
commit
e0f90f7558
22
src/assets/js/api/supplier.js
Normal file
22
src/assets/js/api/supplier.js
Normal file
@ -0,0 +1,22 @@
|
||||
/**
|
||||
* api接口统一管理
|
||||
*/
|
||||
import {get,post} from '../http'
|
||||
|
||||
// 供应商基本信息
|
||||
export const getSupplierInfoApi = data => post('xmgl/xzSupplier/getXzSupplierByUserId', data);
|
||||
|
||||
// 企业类型列表
|
||||
export const getCompanyTypeApi = data => get('xmgl/xzSupplierType/list', data);
|
||||
|
||||
// 信息填报保存
|
||||
export const infoReportSaveApi = data => post('xmgl/xzSupplier/saveSupplier', data);
|
||||
|
||||
// 资质文件
|
||||
export const getQualificationFileApi = data => post('xmgl/xzSupplierQualification/list', data);
|
||||
export const addQualificationFileApi = data => post('xmgl/xzSupplierQualification/add', data);
|
||||
export const editQualificationFileApi = data => post('xmgl/xzSupplierQualification/edit', data);
|
||||
export const deleteQualificationFileApi = data => post('xmgl/xzSupplierQualification/delete', data);
|
||||
|
||||
// 资质申请
|
||||
export const getQualificationApplyListApi = data => post('xmgl/xzSupplierQualificationApply/page', data);
|
||||
@ -83,12 +83,12 @@ if (process.env.NODE_ENV == 'development') {
|
||||
// axios.defaults.baseURL ='http://101.43.164.214:45001/' //上海张江
|
||||
// axios.defaults.baseURL ='http://101.43.164.214:45011/' //上海优益(上海建工)
|
||||
// axios.defaults.baseURL = 'http://192.168.34.221:28889/' //郭圣雄本地
|
||||
// axios.defaults.baseURL ='http://192.168.34.221:9111/' //郭圣雄本地
|
||||
axios.defaults.baseURL ='http://192.168.34.221:9111/' //郭圣雄本地
|
||||
// axios.defaults.baseURL = 'http://192.168.34.155:19111/' //彭洁本地
|
||||
// axios.defaults.baseURL = 'http://182.90.224.237:51234' //郭圣雄远程
|
||||
// axios.defaults.baseURL ='http://101.43.164.214:45020/' //沈阳和盈
|
||||
// axios.defaults.baseURL ='http://183.249.224.118:9000/' //嘉兴王江泾公用码头
|
||||
axios.defaults.baseURL ='http://101.43.164.214:11111/' // 百色三标段项目
|
||||
// axios.defaults.baseURL ='http://101.43.164.214:11111/' // 百色三标段项目
|
||||
// axios.defaults.baseURL = 'http://125.88.207.86:8088/'//中建四局线上(最新)地址
|
||||
// axios.defaults.baseURL = 'http://125.88.207.86:8099/'//中建四局(沙湖)线上(最新)地址
|
||||
// axios.defaults.baseURL = 'http://jxj.zhgdyun.com:15551/'//测试地址
|
||||
|
||||
@ -2814,6 +2814,14 @@ const routes2 = [
|
||||
"@/views/projectFront/engineerArchives/workingDraw.vue",
|
||||
], resolve),
|
||||
},
|
||||
|
||||
// 供应商管理系统——承包资质申请
|
||||
{
|
||||
path: "/supplier/qualification/apply",
|
||||
name: "承包资质申请",
|
||||
component: () =>
|
||||
import("@/views/supplierAdmin/qualificationApply/index.vue"),
|
||||
},
|
||||
],
|
||||
},
|
||||
//扫二维码路由
|
||||
@ -3132,13 +3140,6 @@ const routes2 = [
|
||||
name: "supplierIndex",
|
||||
component: () => import("../views/supplierAdmin/supplierIndex.vue"),
|
||||
},
|
||||
//承包资质申请
|
||||
{
|
||||
path: "/supplier/qualification/apply",
|
||||
name: "承包资质申请",
|
||||
component: () =>
|
||||
import("@/views/supplierAdmin/qualificationApply/index.vue"),
|
||||
},
|
||||
// 工作台
|
||||
{
|
||||
path: "/workSpace",
|
||||
|
||||
@ -46,19 +46,19 @@ export default new Vuex.Store({
|
||||
PAGESIZRS: [10, 20, 30, 50],
|
||||
// UPLOADURL:' http://101.43.164.214:11111/upload/image/',// 百色
|
||||
// FILEURL:' http://101.43.164.214:11111/image/',// 百色
|
||||
// UPLOADURL:'http://192.168.34.221:9111/upload/image/',// 郭圣雄
|
||||
// FILEURL:'http://192.168.34.221:9111/image/',//郭圣雄
|
||||
UPLOADURL:'http://192.168.34.221:9111/upload/image/',// 郭圣雄
|
||||
FILEURL:'http://192.168.34.221:9111/image/',//郭圣雄
|
||||
// UPLOADURL:'http://10.0.1.43:6023/upload/image',//测试
|
||||
// FILEURL:'http://10.0.1.43:6023/image/',//测试
|
||||
BASEURL: baseUrl
|
||||
? baseUrl
|
||||
: window.location.protocol + "//" + window.location.host + "/", //正式环境
|
||||
UPLOADURL:
|
||||
window.location.protocol +
|
||||
"//" +
|
||||
window.location.host +
|
||||
"/upload/image", //正式环境
|
||||
FILEURL: window.location.protocol + "//" + window.location.host + "/image/", //正式环境
|
||||
// BASEURL: baseUrl
|
||||
// ? baseUrl
|
||||
// : window.location.protocol + "//" + window.location.host + "/", //正式环境
|
||||
// UPLOADURL:
|
||||
// window.location.protocol +
|
||||
// "//" +
|
||||
// window.location.host +
|
||||
// "/upload/image", //正式环境
|
||||
// FILEURL: window.location.protocol + "//" + window.location.host + "/image/", //正式环境
|
||||
//---------------------------------------------------------------------------------------------
|
||||
// BASEURL: baseUrl
|
||||
// ? baseUrl
|
||||
|
||||
@ -7,23 +7,23 @@
|
||||
:model="searchForm"
|
||||
ref="searchForm"
|
||||
>
|
||||
<el-form-item label="账号" prop="fileName">
|
||||
<el-form-item label="账号" prop="account">
|
||||
<el-input
|
||||
v-model="searchForm.fileName"
|
||||
v-model="searchForm.account"
|
||||
:placeholder="$t('message.docManage.placeholder')"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="企业名称" prop="fileName">
|
||||
<el-form-item label="企业名称" prop="companyName">
|
||||
<el-input
|
||||
v-model="searchForm.fileName"
|
||||
v-model="searchForm.companyName"
|
||||
:placeholder="$t('message.docManage.placeholder')"
|
||||
clearable
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="注册时间" prop="fileName">
|
||||
<el-form-item label="注册时间" prop="timeRange">
|
||||
<el-date-picker
|
||||
v-model="searchForm.fileName"
|
||||
v-model="searchForm.timeRange"
|
||||
type="daterange"
|
||||
value-format="yyyy-MM-dd"
|
||||
range-separator="至"
|
||||
@ -45,28 +45,27 @@
|
||||
<div class="table_wrap whiteBlock">
|
||||
<el-table class="tables" :data="tableData">
|
||||
<el-table-column
|
||||
type="index"
|
||||
width="50"
|
||||
prop="account"
|
||||
align="center"
|
||||
label="账号"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
prop="companyName"
|
||||
prop="pw"
|
||||
label="密码"
|
||||
align="center"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
prop="companyName"
|
||||
label="企业名称"
|
||||
align="center"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
prop="downloadNum"
|
||||
prop="email"
|
||||
label="电子邮箱"
|
||||
align="center"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
prop="downloadNum"
|
||||
prop="createTime"
|
||||
label="注册时间"
|
||||
align="center"
|
||||
></el-table-column>
|
||||
@ -190,7 +189,9 @@ export default {
|
||||
return {
|
||||
downloadUrl: "",
|
||||
searchForm: {
|
||||
fileName: "",
|
||||
account: "",
|
||||
companyName: "",
|
||||
timeRange: []
|
||||
},
|
||||
total: 0,
|
||||
pageNo: 1,
|
||||
@ -299,10 +300,16 @@ export default {
|
||||
headquartersSn: this.$store.state.userInfo.headquartersSn,
|
||||
pageNo:this.pageNo,
|
||||
pageSize: this.pageSize,
|
||||
accountType: 2
|
||||
accountType: 2,
|
||||
account: this.searchForm.account,
|
||||
companyName: this.searchForm.companyName
|
||||
}
|
||||
if (this.searchForm.timeRange.length > 0) {
|
||||
requestData.createTime_begin = this.searchForm.timeRange[0];
|
||||
requestData.createTime_end = this.searchForm.timeRange[1];
|
||||
}
|
||||
getUserAuditListApi(requestData).then((res) => {
|
||||
this.userAuditList = res.result.records;
|
||||
this.tableData = res.result.records;
|
||||
this.total = res.result.total;
|
||||
});
|
||||
},
|
||||
|
||||
@ -934,6 +934,7 @@ export default {
|
||||
break;
|
||||
case 5:
|
||||
case 6:
|
||||
case 11:
|
||||
// 中建四局
|
||||
this.$store.commit("setMenuList", projectModule);
|
||||
this.$store.commit("setProjectManageMenuList", projectModule);
|
||||
|
||||
@ -740,7 +740,7 @@ export default {
|
||||
]
|
||||
},
|
||||
btnList: [],
|
||||
moudleTypeArr: ['企业前台', '项目后台', '企业后台', '项目看板', '项目前台'],
|
||||
moudleTypeArr: ['企业前台', '项目后台', '企业后台', '项目看板', '项目前台','供应商管理'],
|
||||
searchModuleType: 2,
|
||||
styleTypeArr: [
|
||||
'普通项目级版本',
|
||||
|
||||
@ -57,19 +57,19 @@
|
||||
width="200"
|
||||
prop="jobName"
|
||||
align="center"
|
||||
label="序号"
|
||||
label="资质申请时间"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
prop="personName"
|
||||
label="资质文件名称"
|
||||
label="审批组织"
|
||||
align="center"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
prop="phone"
|
||||
label="资质文件编号"
|
||||
label="审批回复时间"
|
||||
align="center"
|
||||
></el-table-column>
|
||||
<el-table-column label="资质文件" width="80" align="center">
|
||||
<el-table-column label="审批状态" width="80" align="center">
|
||||
<!-- <div slot slot-scope="scope">
|
||||
<img
|
||||
:preview="
|
||||
@ -81,11 +81,6 @@
|
||||
/>
|
||||
</div> -->
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="phone"
|
||||
label="备注"
|
||||
align="center"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
:label="$t('message.deviceManage.operation')"
|
||||
align="center"
|
||||
@ -253,7 +248,7 @@
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { getComapnyStatisticsListApi } from "@/assets/js/api/company/project";
|
||||
import { getQualificationApplyListApi } from "@/assets/js/api/supplier.js";
|
||||
export default {
|
||||
name: "temporary",
|
||||
data() {
|
||||
@ -285,35 +280,33 @@ export default {
|
||||
},
|
||||
created() {
|
||||
this.projectSn = this.$store.state.projectSn;
|
||||
this.loadData();
|
||||
this.getTableList();
|
||||
},
|
||||
watch: {
|
||||
filterText(val) {
|
||||
this.$refs.tree.filter(val);
|
||||
},
|
||||
},
|
||||
props: ["activeName"],
|
||||
methods: {
|
||||
getTableList(){
|
||||
let requestData = {
|
||||
userId: this.$store.state.userInfo.userId,
|
||||
pageNo: this.page,
|
||||
pageSize: this.pageSize
|
||||
};
|
||||
getQualificationApplyListApi(requestData).then((res) => {
|
||||
console.log(res, "资质申请表格");
|
||||
if (res.result && res.result.records) {
|
||||
this.tableList = res.result.records;
|
||||
this.total = res.result.total;
|
||||
}
|
||||
});
|
||||
},
|
||||
// 查看审批回复
|
||||
showAuditReply() {
|
||||
this.auditReplyDialog = true;
|
||||
},
|
||||
loadData() {
|
||||
let sn = this.$store.state.userInfo.sn;
|
||||
let projectType = 1; // 展示项目列表
|
||||
if (this.$store.state.userInfo.addProjectType == 1) {
|
||||
projectType = 0; // 不展示项目列表
|
||||
}
|
||||
getComapnyStatisticsListApi({
|
||||
sn: sn,
|
||||
projectType: projectType,
|
||||
}).then((res) => {
|
||||
console.log(res,'111222333')
|
||||
this.level1CompanyData = res.result.companyList
|
||||
? res.result.companyList
|
||||
: res.result.projectList;
|
||||
});
|
||||
console.log(this.level1CompanyData,'111222333');
|
||||
},
|
||||
filterNode(value, data) {
|
||||
if (!value) return true;
|
||||
return data.name.indexOf(value) !== -1;
|
||||
@ -364,7 +357,7 @@ export default {
|
||||
},
|
||||
//切换数量
|
||||
handleSizeChange(value) {
|
||||
// this.pageSize = value;
|
||||
this.pageSize = value;
|
||||
},
|
||||
handleCurrentChange(value) {
|
||||
this.page = value;
|
||||
|
||||
@ -2,67 +2,83 @@
|
||||
<!-- 项目信息页面 -->
|
||||
<div class="main-content whiteBlock">
|
||||
<div class="btn_wrap">
|
||||
<el-button
|
||||
type="primary"
|
||||
size="medium"
|
||||
@click="addProjectDialog = true"
|
||||
>{{ $t("message.companyDiagram.Table.newAdd") }}</el-button
|
||||
<el-button type="primary" size="medium" @click="openInfoDialog"
|
||||
>基本信息填报</el-button
|
||||
>
|
||||
</div>
|
||||
<div class="custom_tab">
|
||||
<div class="flex4">
|
||||
<div class="type_content" style="z-index: 2">
|
||||
<div class="flex3">
|
||||
<span class="width_35">{{
|
||||
<!-- <span class="width_35">{{
|
||||
$t("message.qualificationApply.companyName")
|
||||
}}</span>
|
||||
<span class="width_65">坤之企业</span>
|
||||
}}</span> -->
|
||||
<span class="width_35">企业名称</span>
|
||||
<span class="width_65">{{ supplierDetail.enterpriseName }}</span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35 bg_color">企业类型</span>
|
||||
<span class="width_65 bg_color">企业分包</span>
|
||||
<span class="width_65 bg_color">{{
|
||||
supplierDetail.companyTypeName
|
||||
}}</span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35">开户行</span>
|
||||
<span class="width_65">123</span>
|
||||
<span class="width_65">{{ supplierDetail.bankname }}</span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35 bg_color">注册人申请电话</span>
|
||||
<span class="width_65 bg_color">123456</span>
|
||||
<span class="width_65 bg_color">{{
|
||||
supplierDetail.registerPersonPhoneTel
|
||||
}}</span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35">法人电话</span>
|
||||
<span class="width_65">123456</span>
|
||||
<span class="width_65">{{ supplierDetail.legalPersonTel }}</span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35 bg_color">营业执照截止日期</span>
|
||||
<span class="width_65 bg_color">2024-03-05</span>
|
||||
<span class="width_65 bg_color">{{
|
||||
supplierDetail.businessLicenseEndDate
|
||||
}}</span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35">企业邮箱</span>
|
||||
<span class="width_65">123@qq.com</span>
|
||||
<span class="width_65">{{ supplierDetail.enterpriseEmail }}</span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35 bg_color">劳资证书号</span>
|
||||
<span class="width_65 bg_color">123456</span>
|
||||
<span class="width_65 bg_color">{{
|
||||
supplierDetail.qualificationNumber
|
||||
}}</span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35">单位性质</span>
|
||||
<span class="width_65" style="white-space: nowrap">国有企业</span>
|
||||
<span class="width_65" style="white-space: nowrap">{{
|
||||
supplierDetail.enterpriseProperty == 1
|
||||
? "国有企业"
|
||||
: supplierDetail.enterpriseProperty == 2
|
||||
? "三资企业"
|
||||
: supplierDetail.enterpriseProperty == 3
|
||||
? "集体企业"
|
||||
: supplierDetail.enterpriseProperty == 4
|
||||
? "私营企业"
|
||||
: ""
|
||||
}}</span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35 bg_color">项目负责人</span>
|
||||
<span class="width_65 bg_color">叶起中</span>
|
||||
<span class="width_65 bg_color">{{
|
||||
supplierDetail.projectDirectorName
|
||||
}}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="type_content">
|
||||
<div class="flex3">
|
||||
<span class="width_35 border_l">{{
|
||||
$t("message.qualificationApply.qualificationImg")
|
||||
}}</span>
|
||||
<span class="width_35 border_l">资质图片</span>
|
||||
<span class="width_65"
|
||||
><img
|
||||
:src="projectDetail.layoutImage"
|
||||
:src="supplierDetail.enterpriseQualificationUrl"
|
||||
style="
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
@ -71,45 +87,68 @@
|
||||
"
|
||||
@click="
|
||||
bigImageDialog = true;
|
||||
bigImageUrl = projectDetail.layoutImage;
|
||||
bigImageUrl = supplierDetail.enterpriseQualificationUrl;
|
||||
"
|
||||
/></span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35 bg_color border_l">法定代表人</span>
|
||||
<span class="width_65 bg_color">小坤坤</span>
|
||||
<span class="width_65 bg_color">{{
|
||||
supplierDetail.enterpriseLegalPerson
|
||||
}}</span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35 border_l">统一社会信用代码</span>
|
||||
<span class="width_65">111222333</span>
|
||||
<span class="width_65">{{ supplierDetail.socialCode }}</span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35 bg_color border_l">注册资金(万元)</span>
|
||||
<span class="width_65 bg_color">123</span>
|
||||
<span class="width_65 bg_color">{{
|
||||
supplierDetail.registeredCapital
|
||||
}}</span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35 border_l">银行账号</span>
|
||||
<span class="width_65">123</span>
|
||||
<span class="width_65">{{ supplierDetail.bankcardnumber }}</span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35 bg_color border_l">营业执照注册号</span>
|
||||
<span class="width_65 bg_color">123</span>
|
||||
<span class="width_65 bg_color">{{
|
||||
supplierDetail.businessNumber
|
||||
}}</span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35 border_l">企业地址</span>
|
||||
<span class="width_65">123 </span>
|
||||
<span class="width_65">{{ supplierDetail.enterpriseAddress }}</span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35 bg_color border_l">安全生产许可证</span>
|
||||
<span class="width_65 bg_color">123</span>
|
||||
<span class="width_65 bg_color">{{
|
||||
supplierDetail.enterpriseSafeAllow
|
||||
}}</span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35 border_l">logo</span>
|
||||
<span class="width_65">123</span>
|
||||
<span class="width_65"
|
||||
><img
|
||||
:src="supplierDetail.logo"
|
||||
style="
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
margin-top: 2px;
|
||||
cursor: pointer;
|
||||
"
|
||||
@click="
|
||||
bigImageDialog = true;
|
||||
bigImageUrl = supplierDetail.logo;
|
||||
"
|
||||
/></span>
|
||||
</div>
|
||||
<div class="flex3">
|
||||
<span class="width_35 bg_color border_l">项目负责人电话</span>
|
||||
<span class="width_65 bg_color">123456</span>
|
||||
<span class="width_65 bg_color">{{
|
||||
supplierDetail.projectDirectorPhone
|
||||
}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -118,8 +157,8 @@
|
||||
<!-- 基本信息弹框 -->
|
||||
<el-dialog
|
||||
class="projectDialog"
|
||||
:title="projectDialogTitle"
|
||||
:visible.sync="addProjectDialog"
|
||||
:title="infoDialogTitle"
|
||||
:visible.sync="addInfoDialog"
|
||||
width="1100px"
|
||||
:modal-append-to-body="false"
|
||||
:close-on-click-modal="false"
|
||||
@ -127,140 +166,143 @@
|
||||
<div class="dialog_content">
|
||||
<el-form
|
||||
size="medium"
|
||||
:model="addProjectForm"
|
||||
ref="addProjectForm"
|
||||
:rules="addProjectFormRules"
|
||||
label-width="130px"
|
||||
:model="addInfoForm"
|
||||
ref="addInfoForm"
|
||||
:rules="addInfoFormRules"
|
||||
label-width="150px"
|
||||
class="dialogFormBox big"
|
||||
:inline="true"
|
||||
>
|
||||
<el-form-item label="企业名称" prop="projectName">
|
||||
<el-form-item label="项目负责人" prop="projectDirectorName">
|
||||
<el-input
|
||||
v-model="addProjectForm.projectName"
|
||||
v-model="addInfoForm.projectDirectorName"
|
||||
:placeholder="$t('message.companyDiagram.PleaseEnter')"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="法定代表人" prop="projectName">
|
||||
<el-form-item label="项目负责人电话" prop="projectDirectorPhone">
|
||||
<el-input
|
||||
v-model="addProjectForm.projectName"
|
||||
v-model="addInfoForm.projectDirectorPhone"
|
||||
:placeholder="$t('message.companyDiagram.PleaseEnter')"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="企业类型" prop="projectType">
|
||||
<el-form-item label="企业名称" prop="enterpriseName">
|
||||
<el-input
|
||||
v-model="addInfoForm.enterpriseName"
|
||||
:placeholder="$t('message.companyDiagram.PleaseEnter')"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="法定代表人" prop="enterpriseLegalPerson">
|
||||
<el-input
|
||||
v-model="addInfoForm.enterpriseLegalPerson"
|
||||
:placeholder="$t('message.companyDiagram.PleaseEnter')"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="企业类型" prop="xzSupplierTypeId">
|
||||
<el-select
|
||||
v-model="addProjectForm.projectType"
|
||||
v-model="addInfoForm.xzSupplierTypeId"
|
||||
:placeholder="$t('message.companyDiagram.PleaseSelect')"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in $t('message.companyDiagram.PROJECTTYPE')"
|
||||
v-for="item in companyTypeList"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:label="item.companyTypeName"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="统一社会信用代码" prop="saleAcreage">
|
||||
<el-form-item label="统一社会信用代码" prop="socialCode">
|
||||
<el-input
|
||||
v-model="addProjectForm.saleAcreage"
|
||||
v-model="addInfoForm.socialCode"
|
||||
:placeholder="$t('message.companyDiagram.PleaseEnter')"
|
||||
type="number"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="开户行" prop="households">
|
||||
<el-form-item label="开户行" prop="bankname">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.households"
|
||||
v-model.number="addInfoForm.bankname"
|
||||
:placeholder="$t('message.companyDiagram.PleaseEnter')"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="注册资金(万元)" prop="registeredCapital">
|
||||
<el-input
|
||||
v-model.number="addInfoForm.registeredCapital"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="注册资金(万元)" prop="buildingNum">
|
||||
<el-form-item label="注册人申请电话" prop="registerPersonPhoneTel">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
v-model.number="addInfoForm.registerPersonPhoneTel"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="注册人申请电话" prop="buildingNum">
|
||||
<el-form-item label="银行账号" prop="bankcardnumber">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
v-model.number="addInfoForm.bankcardnumber"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="银行账号" prop="buildingNum">
|
||||
<el-form-item label="法人电话" prop="legalPersonTel">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
v-model.number="addInfoForm.legalPersonTel"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="法人电话" prop="buildingNum">
|
||||
<el-form-item label="营业执照注册号" prop="businessNumber">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
v-model.number="addInfoForm.businessNumber"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="营业执照注销号" prop="buildingNum">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="营业执照截止日期" prop="buildingNum">
|
||||
<el-form-item label="营业执照截止日期" prop="businessLicenseEndDate">
|
||||
<el-date-picker
|
||||
v-model="addInfoForm.businessLicenseEndDate"
|
||||
type="date"
|
||||
placeholder="请选择日期"
|
||||
value-format="yyyy-MM-dd"
|
||||
>
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="企业地址" prop="buildingNum">
|
||||
<el-form-item label="企业地址" prop="enterpriseAddress">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
v-model.number="addInfoForm.enterpriseAddress"
|
||||
:placeholder="$t('message.companyDiagram.PleaseEnter')"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="企业邮箱" prop="buildingNum">
|
||||
<el-form-item label="企业邮箱" prop="enterpriseEmail">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
v-model.number="addInfoForm.enterpriseEmail"
|
||||
:placeholder="$t('message.companyDiagram.PleaseEnter')"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="安全生产许可证" prop="buildingNum">
|
||||
<el-form-item label="安全生产许可证" prop="enterpriseSafeAllow">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
v-model.number="addInfoForm.enterpriseSafeAllow"
|
||||
:placeholder="$t('message.companyDiagram.PleaseEnter')"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="劳资证书号" prop="buildingNum">
|
||||
<el-form-item label="劳资证书号" prop="qualificationNumber">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
v-model.number="addInfoForm.qualificationNumber"
|
||||
:placeholder="$t('message.companyDiagram.PleaseEnter')"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="单位性质" prop="projectType">
|
||||
<el-form-item label="单位性质" prop="enterpriseProperty">
|
||||
<el-select
|
||||
v-model="addProjectForm.projectType"
|
||||
v-model="addInfoForm.enterpriseProperty"
|
||||
:placeholder="$t('message.companyDiagram.PleaseSelect')"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in $t('message.companyDiagram.PROJECTTYPE')"
|
||||
v-for="item in unitType"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
@ -269,10 +311,8 @@
|
||||
</el-form-item>
|
||||
<br />
|
||||
<el-form-item
|
||||
:label="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.layoutImage')
|
||||
"
|
||||
prop="layoutImage"
|
||||
label="资质照片"
|
||||
prop="enterpriseQualificationUrl"
|
||||
>
|
||||
<div style="width: 280px">
|
||||
<el-upload
|
||||
@ -283,11 +323,11 @@
|
||||
:on-success="(file) => handleUploadSuccess(file, 1)"
|
||||
name="files"
|
||||
>
|
||||
<div v-if="addProjectForm.layoutImage" class="imgBox">
|
||||
<img :src="addProjectForm.layoutImage" class="avatar" />
|
||||
<div v-if="addInfoForm.enterpriseQualificationUrl" class="imgBox">
|
||||
<img :src="addInfoForm.enterpriseQualificationUrl" class="avatar" />
|
||||
<i
|
||||
class="el-icon-error redText"
|
||||
@click.stop="addProjectForm.layoutImage = ''"
|
||||
@click.stop="addInfoForm.enterpriseQualificationUrl = ''"
|
||||
></i>
|
||||
</div>
|
||||
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
||||
@ -295,10 +335,8 @@
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
:label="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.shopDrawing')
|
||||
"
|
||||
prop="constructionMapUrl"
|
||||
label="logo"
|
||||
prop="logo"
|
||||
>
|
||||
<el-upload
|
||||
class="avatar-uploader"
|
||||
@ -308,11 +346,11 @@
|
||||
:on-success="(file) => handleUploadSuccess(file, 2)"
|
||||
name="files"
|
||||
>
|
||||
<div v-if="addProjectForm.constructionMapUrl" class="imgBox">
|
||||
<img :src="addProjectForm.constructionMapUrl" class="avatar" />
|
||||
<div v-if="addInfoForm.logo" class="imgBox">
|
||||
<img :src="addInfoForm.logo" class="avatar" />
|
||||
<i
|
||||
class="el-icon-error redText"
|
||||
@click.stop="addProjectForm.constructionMapUrl = ''"
|
||||
@click.stop="addInfoForm.logo = ''"
|
||||
></i>
|
||||
</div>
|
||||
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
||||
@ -321,7 +359,7 @@
|
||||
<div class="dialog-footer">
|
||||
<el-button
|
||||
class="cancleBtn"
|
||||
@click="addProjectDialog = false"
|
||||
@click="addInfoDialog = false"
|
||||
icon="el-icon-circle-close"
|
||||
size="medium"
|
||||
>{{ $t("message.companyDiagram.cancel") }}</el-button
|
||||
@ -329,7 +367,7 @@
|
||||
<el-button
|
||||
type="primary"
|
||||
icon="el-icon-circle-check"
|
||||
@click="saveProjectFn"
|
||||
@click="saveInfoFn"
|
||||
size="medium"
|
||||
>{{ $t("message.companyDiagram.determine") }}</el-button
|
||||
>
|
||||
@ -348,211 +386,150 @@
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { checkPhone } from "@/assets/js/util.js";
|
||||
import {
|
||||
sendSafetyHatProjectDataApi,
|
||||
getDictionaryItemApi,
|
||||
} from "@/assets/js/api/companyDiagram.js";
|
||||
import {
|
||||
getProjectDetail,
|
||||
editProjectInfo,
|
||||
sendProjectInfo,
|
||||
getProjectConfigListApi,
|
||||
} from "@/assets/js/api/baseInfo.js";
|
||||
import { selectProvincesCityListApi } from "@/assets/js/api/project.js";
|
||||
import { getSupplierInfoApi, getCompanyTypeApi, infoReportSaveApi } from "@/assets/js/api/supplier.js";
|
||||
export default {
|
||||
name: "baseInfo",
|
||||
data() {
|
||||
var checkAge = (rule, value, callback) => {
|
||||
if (value == "" && value != 0) {
|
||||
callback(new Error(this.$t("message.companyDiagram.required")));
|
||||
return;
|
||||
}
|
||||
if (!Number.isInteger(value)) {
|
||||
callback(new Error(this.$t("message.companyDiagram.required_msg")));
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
};
|
||||
return {
|
||||
tableList: [],
|
||||
activeTabName: "first",
|
||||
projectDialogTitle: "新增",
|
||||
addProjectDialog: false,
|
||||
addProjectForm: {
|
||||
areaCode: "",
|
||||
buildingNum: "",
|
||||
bulidStatus: "",
|
||||
cityCode: "",
|
||||
companySn: "",
|
||||
constructionStage: "",
|
||||
engineeringPurpose: "",
|
||||
households: "",
|
||||
latitude: "",
|
||||
layoutImage: "",
|
||||
constructionMapUrl: "",
|
||||
longitude: "",
|
||||
projectAcreage: "",
|
||||
projectAddress: "",
|
||||
projectName: "",
|
||||
projectNumber: "",
|
||||
projectType: "",
|
||||
provincesCode: "",
|
||||
saleAcreage: "",
|
||||
startWorkDate: "",
|
||||
structureType: "",
|
||||
projectManage: "",
|
||||
projectTel: "",
|
||||
majorProjectType: 0,
|
||||
infoDialogTitle: "基本信息填报",
|
||||
addInfoDialog: false,
|
||||
addInfoForm: {
|
||||
enterpriseName: "",
|
||||
enterpriseQualificationUrl: "",
|
||||
companyTypeName: "",
|
||||
xzSupplierTypeId: "",
|
||||
enterpriseLegalPerson: "",
|
||||
bankname: "",
|
||||
socialCode: "",
|
||||
registerPersonPhoneTel: "",
|
||||
registeredCapital: "",
|
||||
legalPersonTel: "",
|
||||
bankcardnumber: "",
|
||||
businessLicenseEndDate: "",
|
||||
businessNumber: "",
|
||||
enterpriseEmail: "",
|
||||
enterpriseAddress: "",
|
||||
qualificationNumber: "",
|
||||
enterpriseSafeAllow: "",
|
||||
enterpriseProperty: "",
|
||||
logo: "",
|
||||
projectDirectorName: "",
|
||||
projectDirectorPhone: "",
|
||||
},
|
||||
projectDetail: {
|
||||
areaCode: "",
|
||||
buildingNum: "",
|
||||
bulidStatus: "",
|
||||
cityCode: "",
|
||||
companySn: "",
|
||||
constructionStage: "",
|
||||
engineeringPurpose: "",
|
||||
households: "",
|
||||
latitude: "",
|
||||
layoutImage: "",
|
||||
constructionMapUrl: "",
|
||||
longitude: "",
|
||||
projectAcreage: "",
|
||||
projectAddress: "",
|
||||
projectName: "",
|
||||
projectNumber: "",
|
||||
projectType: "",
|
||||
provincesCode: "",
|
||||
saleAcreage: "",
|
||||
startWorkDate: "",
|
||||
structureType: "",
|
||||
projectManage: "",
|
||||
projectTel: "",
|
||||
supplierDetail: {
|
||||
enterpriseName: "",
|
||||
enterpriseQualificationUrl: "",
|
||||
companyTypeName: "",
|
||||
xzSupplierTypeId: "",
|
||||
enterpriseLegalPerson: "",
|
||||
bankname: "",
|
||||
socialCode: "",
|
||||
registerPersonPhoneTel: "",
|
||||
registeredCapital: "",
|
||||
legalPersonTel: "",
|
||||
bankcardnumber: "",
|
||||
businessLicenseEndDate: "",
|
||||
businessNumber: "",
|
||||
enterpriseEmail: "",
|
||||
enterpriseAddress: "",
|
||||
qualificationNumber: "",
|
||||
enterpriseSafeAllow: "",
|
||||
enterpriseProperty: "",
|
||||
logo: "",
|
||||
projectDirectorName: "",
|
||||
projectDirectorPhone: "",
|
||||
},
|
||||
addProjectFormRules: {
|
||||
projectName: [
|
||||
addInfoFormRules: {
|
||||
projectDirectorName: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.required"),
|
||||
message: '请输入',
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
provincesCode: [
|
||||
projectDirectorPhone: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.Mandatory"),
|
||||
message: '请输入',
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
enterpriseName: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入',
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
enterpriseLegalPerson: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入',
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
xzSupplierTypeId: [
|
||||
{
|
||||
required: true,
|
||||
message: '请选择',
|
||||
trigger: "change",
|
||||
},
|
||||
],
|
||||
projectAddress: [
|
||||
socialCode: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.required"),
|
||||
message: '请输入',
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
projectManage: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.required"),
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
projectTel: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.required"),
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
longitude: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.required"),
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
latitude: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.required"),
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
projectNumber: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.required"),
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
projectType: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.Mandatory"),
|
||||
trigger: "change",
|
||||
},
|
||||
],
|
||||
engineeringPurpose: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.Mandatory"),
|
||||
trigger: "change",
|
||||
},
|
||||
],
|
||||
// structureType: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: this.$t("message.companyDiagram.Mandatory"),
|
||||
// trigger: "change",
|
||||
// },
|
||||
// ],
|
||||
// projectAcreage: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: this.$t("message.companyDiagram.required"),
|
||||
// trigger: "blur",
|
||||
// },
|
||||
// ],
|
||||
bulidStatus: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.Mandatory"),
|
||||
trigger: "change",
|
||||
},
|
||||
],
|
||||
startWorkDate: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.Mandatory"),
|
||||
trigger: "change",
|
||||
},
|
||||
],
|
||||
// households: [{ required: true, validator: checkAge, trigger: "blur" }],
|
||||
// buildingNum: [{ required: true, validator: checkAge, trigger: "blur" }],
|
||||
]
|
||||
},
|
||||
bigImageDialog: false,
|
||||
bigImageUrl: "",
|
||||
projectSn: "",
|
||||
provincesCityArr: [],
|
||||
provincesCityList: [],
|
||||
cascaderProps: {
|
||||
label: "name",
|
||||
children: "childrenlist",
|
||||
value: "code",
|
||||
},
|
||||
showMap: false,
|
||||
projectAuditStatus: "", //审核状态
|
||||
company: "",
|
||||
constructionStageList: [],
|
||||
structureTypeList: [],
|
||||
unitType: [
|
||||
{id: 1, name: '国有企业'},
|
||||
{id: 2, name: '三资企业'},
|
||||
{id: 3, name: '集体企业'},
|
||||
{id: 4, name: '私营企业'},
|
||||
],
|
||||
companyTypeList: [],
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.getBasicInfo();
|
||||
this.getCompanyTypeList();
|
||||
},
|
||||
|
||||
props: ["activeTabName"],
|
||||
methods: {
|
||||
// 打开信息填报弹窗
|
||||
openInfoDialog(){
|
||||
this.addInfoForm = {...this.supplierDetail}
|
||||
this.addInfoDialog = true
|
||||
// this.$nextTick(() => {
|
||||
// // this.$refs.addInfoForm.resetFields();
|
||||
// })
|
||||
},
|
||||
// 获取企业类型列表
|
||||
getCompanyTypeList(){
|
||||
getCompanyTypeApi({}).then((res) => {
|
||||
console.log(res, "企业类型列表");
|
||||
if(res.result){
|
||||
this.companyTypeList = res.result;
|
||||
}
|
||||
});
|
||||
},
|
||||
// 获取基本信息
|
||||
getBasicInfo() {
|
||||
getSupplierInfoApi({
|
||||
userId: this.$store.state.userInfo.userId,
|
||||
}).then((res) => {
|
||||
console.log(res, "基本信息");
|
||||
if (res.result) {
|
||||
for(let i in this.supplierDetail){
|
||||
this.supplierDetail[i] = res.result[i]
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
// 文件上传前
|
||||
beforeAvatarUpload(file) {
|
||||
if (
|
||||
@ -571,30 +548,25 @@ export default {
|
||||
handleUploadSuccess(res, type) {
|
||||
console.log(res);
|
||||
if (type == 1) {
|
||||
this.addProjectForm.layoutImage =
|
||||
this.addInfoForm.enterpriseQualificationUrl =
|
||||
this.$store.state.FILEURL + res.data[0].imageUrl;
|
||||
} else {
|
||||
this.addProjectForm.constructionMapUrl =
|
||||
this.addInfoForm.logo =
|
||||
this.$store.state.FILEURL + res.data[0].imageUrl;
|
||||
}
|
||||
},
|
||||
//编辑保存项目
|
||||
saveProjectFn() {
|
||||
if (this.addProjectForm.projectTel) {
|
||||
if (!checkPhone(this.addProjectForm.projectTel)) {
|
||||
console.log(
|
||||
"this.addProjectForm.projectTel",
|
||||
this.addProjectForm.projectTel
|
||||
);
|
||||
this.$message.error("请输入正确的联系电话");
|
||||
return;
|
||||
}
|
||||
}
|
||||
this.$refs["addProjectForm"].validate((valid) => {
|
||||
saveInfoFn() {
|
||||
this.$refs["addInfoForm"].validate((valid) => {
|
||||
if (valid) {
|
||||
editProjectInfo(this.addProjectForm).then((res) => {
|
||||
this.addProjectDialog = false;
|
||||
this.getDataDateils();
|
||||
let requestData = {
|
||||
...this.addInfoForm,
|
||||
userId: this.$store.state.userInfo.userId,
|
||||
}
|
||||
infoReportSaveApi(requestData).then((res) => {
|
||||
console.log(res,'信息保存成功')
|
||||
this.addInfoDialog = false;
|
||||
this.getBasicInfo();
|
||||
this.$message.success(
|
||||
this.$t("message.companyDiagram.editSuccess")
|
||||
); //编辑成功!
|
||||
@ -604,8 +576,16 @@ export default {
|
||||
return false;
|
||||
}
|
||||
});
|
||||
}
|
||||
},
|
||||
},
|
||||
watch: {
|
||||
activeTabName(newValue) {
|
||||
if(newValue == 'first'){
|
||||
this.getBasicInfo();
|
||||
this.getCompanyTypeList();
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
@ -738,6 +718,9 @@ export default {
|
||||
}
|
||||
}
|
||||
}
|
||||
.dialogFormBox.big{
|
||||
width: 900px;
|
||||
}
|
||||
::v-deep .el-input__inner {
|
||||
line-height: 1px !important;
|
||||
}
|
||||
|
||||
@ -2,47 +2,43 @@
|
||||
<!-- 项目信息页面 -->
|
||||
<div class="main-content whiteBlock">
|
||||
<div class="btn_wrap">
|
||||
<el-button
|
||||
type="primary"
|
||||
size="medium"
|
||||
@click="addProjectDialog = true"
|
||||
>{{ $t("message.companyDiagram.Table.newAdd") }}</el-button
|
||||
>
|
||||
<el-button type="primary" size="medium" @click="addFileFn">{{
|
||||
$t("message.companyDiagram.Table.newAdd")
|
||||
}}</el-button>
|
||||
</div>
|
||||
<div class="table_wrap whiteBlock">
|
||||
<el-table class="tables" :data="tableList" height="800">
|
||||
<el-table-column
|
||||
width="200"
|
||||
prop="jobName"
|
||||
width="50"
|
||||
type="index"
|
||||
align="center"
|
||||
label="序号"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
prop="personName"
|
||||
prop="fileName"
|
||||
label="资质文件名称"
|
||||
align="center"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
prop="phone"
|
||||
prop="fileNumber"
|
||||
label="资质文件编号"
|
||||
align="center"
|
||||
></el-table-column>
|
||||
<el-table-column
|
||||
label="资质文件"
|
||||
width="80"
|
||||
align="center"
|
||||
>
|
||||
<el-table-column label="资质文件" align="center">
|
||||
<div slot slot-scope="scope">
|
||||
<img
|
||||
:preview="scope.row.imageUrl[0] ? scope.row.imageUrl[0].url : []"
|
||||
:src="scope.row.imageUrl[0] ? scope.row.imageUrl[0].url : []"
|
||||
:src="scope.row.fileUrl ? scope.row.fileUrl : []"
|
||||
alt=""
|
||||
width="50px"
|
||||
@click="
|
||||
bigImageDialog = true;
|
||||
bigImageUrl = scope.row.fileUrl;
|
||||
"
|
||||
/>
|
||||
</div>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="phone"
|
||||
prop="remarks"
|
||||
label="备注"
|
||||
align="center"
|
||||
></el-table-column>
|
||||
@ -51,8 +47,8 @@
|
||||
align="center"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<div class="tableBtns">
|
||||
<div @click="edit(scope.row)" class="operationText">
|
||||
<div class="operation-style">
|
||||
<div @click="editFile(scope.row)" class="operationText">
|
||||
<img
|
||||
src="@/assets/images/icon-edit.png"
|
||||
width="15px"
|
||||
@ -60,7 +56,7 @@
|
||||
/>
|
||||
<span>{{ $t("message.deviceManage.edit") }}</span>
|
||||
</div>
|
||||
<div @click="deleteDev(scope.row)" class="operationText">
|
||||
<div @click="deleteFile(scope.row)" class="operationText">
|
||||
<img
|
||||
src="@/assets/images/icon-delete.png"
|
||||
width="15px"
|
||||
@ -77,38 +73,32 @@
|
||||
<!-- 新增弹框 -->
|
||||
<el-dialog
|
||||
:modal-append-to-body="false"
|
||||
title="新增"
|
||||
:visible.sync="addProjectDialog"
|
||||
:title="dialogTitle"
|
||||
:visible.sync="addFileDialog"
|
||||
width="667px"
|
||||
>
|
||||
<div class="dialog_content">
|
||||
<el-form
|
||||
size="medium"
|
||||
:model="addBuildForm"
|
||||
ref="addBuildForm"
|
||||
:rules="beaconFormRules"
|
||||
:model="addFileForm"
|
||||
ref="addFileForm"
|
||||
:rules="addFileFormRules"
|
||||
label-width="120px"
|
||||
class="dialogFormBox"
|
||||
>
|
||||
<el-form-item
|
||||
:label="$t('message.BIMmanage.modelName')"
|
||||
prop="modelName"
|
||||
>
|
||||
<el-form-item label="资质文件名称" prop="fileName">
|
||||
<el-input
|
||||
v-model="addBuildForm.modelName"
|
||||
v-model="addFileForm.fileName"
|
||||
:placeholder="$t('message.personnelPosition.please_enter')"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item :label="'模型版本号'" prop="version">
|
||||
<el-form-item label="资质文件编号" prop="fileNumber">
|
||||
<el-input
|
||||
v-model="addBuildForm.version"
|
||||
v-model="addFileForm.fileNumber"
|
||||
:placeholder="$t('message.personnelPosition.please_enter')"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
:label="$t('message.BIMmanage.modelFile')"
|
||||
prop="modelUrl"
|
||||
>
|
||||
<el-form-item label="上传资质文件" prop="fileUrl">
|
||||
<!-- :auto-upload="false" $http.defaults.baseURL+'xmgl/projectBim/saveBim' -->
|
||||
<el-upload
|
||||
class="uploadBtn"
|
||||
@ -116,8 +106,9 @@
|
||||
name="files"
|
||||
:action="uploadUrl"
|
||||
:show-file-list="true"
|
||||
:file-list="fileList"
|
||||
:data="uploadParams"
|
||||
:on-change="changeUpload"
|
||||
:on-remove="removeUpload"
|
||||
:on-success="uploadMapSuccess"
|
||||
:limit="1"
|
||||
:on-exceed="exceedFn"
|
||||
@ -126,21 +117,21 @@
|
||||
<el-button slot="trigger" type="primary" size="medium"
|
||||
>点击上传</el-button
|
||||
>
|
||||
<div slot="tip" class="el-upload__tip">
|
||||
{{ addBuildForm.modelUrl.name }}
|
||||
</div>
|
||||
<!-- <div slot="tip" class="el-upload__tip">
|
||||
{{ addFileForm.modelUrl.name }}
|
||||
</div> -->
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
<el-form-item label="备注" prop="version">
|
||||
<el-form-item label="备注" prop="remarks">
|
||||
<el-input
|
||||
v-model="addBuildForm.version"
|
||||
v-model="addFileForm.remarks"
|
||||
:placeholder="$t('message.personnelPosition.please_enter')"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<div class="dialog-footer">
|
||||
<el-button
|
||||
class="cancleBtn"
|
||||
@click="addBuildDialog = false"
|
||||
@click="addFileDialog = false"
|
||||
icon="el-icon-circle-close"
|
||||
size="medium"
|
||||
>{{ $t("message.personnelPosition.cancel") }}</el-button
|
||||
@ -149,16 +140,31 @@
|
||||
type="primary"
|
||||
icon="el-icon-circle-check"
|
||||
size="medium"
|
||||
@click="operateFileFn"
|
||||
>{{ $t("message.personnelPosition.determine") }}</el-button
|
||||
>
|
||||
</div>
|
||||
</el-form>
|
||||
</div>
|
||||
</el-dialog>
|
||||
<!-- 查看大图 -->
|
||||
<el-dialog
|
||||
:modal-append-to-body="false"
|
||||
title="查看大图"
|
||||
:visible.sync="bigImageDialog"
|
||||
>
|
||||
<img width="100%" :src="bigImageUrl" alt />
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { checkPhone } from "@/assets/js/util.js";
|
||||
import {
|
||||
getQualificationFileApi,
|
||||
addQualificationFileApi,
|
||||
editQualificationFileApi,
|
||||
deleteQualificationFileApi,
|
||||
} from "@/assets/js/api/supplier.js";
|
||||
import {
|
||||
sendSafetyHatProjectDataApi,
|
||||
getDictionaryItemApi,
|
||||
@ -174,29 +180,40 @@ export default {
|
||||
name: "baseInfo",
|
||||
data() {
|
||||
return {
|
||||
bigImageDialog: false,
|
||||
bigImageUrl: "",
|
||||
fileList: [],
|
||||
dialogTitle: "新增",
|
||||
tableList: [],
|
||||
addProjectDialog: false,
|
||||
addBuildForm: {
|
||||
version: "", // 模型版本号
|
||||
modelName: "", // 模型名称
|
||||
modelUrl: "", // 文件
|
||||
projectSn: "",
|
||||
addFileDialog: false,
|
||||
addFileForm: {
|
||||
fileName: "",
|
||||
fileNumber: "",
|
||||
fileUrl: "",
|
||||
remarks: "",
|
||||
},
|
||||
beaconFormRules: {
|
||||
modelName: [
|
||||
addFileFormRules: {
|
||||
fileName: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.personnelPosition.required"),
|
||||
message: "请输入",
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
version: [
|
||||
fileNumber: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.personnelPosition.required"),
|
||||
message: "请输入",
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
fileUrl: [
|
||||
{
|
||||
required: true,
|
||||
message: "请选择",
|
||||
trigger: "change",
|
||||
},
|
||||
],
|
||||
},
|
||||
uploadUrl: "", //文件上传地址
|
||||
uploadParams: {
|
||||
@ -208,7 +225,76 @@ export default {
|
||||
created() {
|
||||
this.uploadUrl = this.$store.state.UPLOADURL;
|
||||
},
|
||||
props: ["activeTabName"],
|
||||
methods: {
|
||||
// 删除文件
|
||||
deleteFile(obj) {
|
||||
this.$confirm(
|
||||
this.$t("message.personnelPosition.beaconManage.table.confirmText") +
|
||||
"文件【" +
|
||||
obj.fileName +
|
||||
"】?",
|
||||
this.$t("message.personnelPosition.beaconManage.table.Tips"),
|
||||
{
|
||||
confirmButtonText: this.$t(
|
||||
"message.personnelPosition.confirmButtonText"
|
||||
),
|
||||
cancelButtonText: this.$t(
|
||||
"message.personnelPosition.cancelButtonText"
|
||||
),
|
||||
type: "warning",
|
||||
}
|
||||
)
|
||||
.then(() => {
|
||||
deleteQualificationFileApi({ id: obj.id }).then((result) => {
|
||||
if (result.success) {
|
||||
this.$message.success(result.message);
|
||||
this.getTableList();
|
||||
}
|
||||
});
|
||||
})
|
||||
.catch(() => {});
|
||||
},
|
||||
// 编辑按钮
|
||||
editFile(item) {
|
||||
this.fileList = [{ name: item.originFileName, url: item.fileUrl }];
|
||||
this.dialogTitle = "编辑";
|
||||
this.addFileDialog = true;
|
||||
this.addFileForm = { ...item };
|
||||
this.$nextTick(() => {
|
||||
this.$refs.addFileForm.clearValidate();
|
||||
});
|
||||
},
|
||||
// 新增按钮
|
||||
addFileFn() {
|
||||
this.fileList = [];
|
||||
setTimeout(() => {
|
||||
this.dialogTitle = "新增";
|
||||
this.addFileDialog = true;
|
||||
this.addFileForm = {
|
||||
fileName: "",
|
||||
fileNumber: "",
|
||||
fileUrl: "",
|
||||
remarks: "",
|
||||
}
|
||||
}, 100);
|
||||
},
|
||||
getTableList() {
|
||||
let requestData = {
|
||||
userId: this.$store.state.userInfo.userId,
|
||||
};
|
||||
getQualificationFileApi(requestData).then((res) => {
|
||||
console.log(res, "资质文件表格");
|
||||
if (res.result) {
|
||||
this.tableList = res.result;
|
||||
this.tableList.map((item) => {
|
||||
if (!item.fileUrl.includes(this.$store.state.FILEURL)) {
|
||||
item.fileUrl = this.$store.state.FILEURL + item.fileUrl;
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
},
|
||||
// 文件超出限制
|
||||
exceedFn(files, fileList) {
|
||||
this.$message.warning(
|
||||
@ -219,39 +305,43 @@ export default {
|
||||
this.$t("message.BIMmanage.tipText3")
|
||||
);
|
||||
},
|
||||
changeUpload(file, fileList) {
|
||||
console.log("file", file, fileList);
|
||||
// this.addBuildForm.modelUrl = file;
|
||||
removeUpload(file, fileList) {
|
||||
this.addFileForm.fileUrl = "";
|
||||
this.fileList = [];
|
||||
},
|
||||
uploadMapSuccess(response) {
|
||||
console.log("上传成功的", response);
|
||||
this.addBuildForm.modelUrl = response.data[0].imageUrl;
|
||||
this.addFileForm.fileUrl = response.data[0].imageUrl;
|
||||
this.$refs.addFileForm.validateField("fileUrl");
|
||||
console.log(this.fileList);
|
||||
this.fileList = [{name: response.data[0].fileInfo.originalFilename, url: response.data[0].imageUrl}]
|
||||
// this.fullscreenLoading = false;
|
||||
// this.fullscreenLoading.close();
|
||||
// this.addBuildDialog = false;
|
||||
// this.loadData();
|
||||
},
|
||||
//编辑保存项目
|
||||
saveProjectFn() {
|
||||
if (this.addProjectForm.projectTel) {
|
||||
if (!checkPhone(this.addProjectForm.projectTel)) {
|
||||
console.log(
|
||||
"this.addProjectForm.projectTel",
|
||||
this.addProjectForm.projectTel
|
||||
);
|
||||
this.$message.error("请输入正确的联系电话");
|
||||
return;
|
||||
}
|
||||
}
|
||||
this.$refs["addProjectForm"].validate((valid) => {
|
||||
//添加/编辑
|
||||
operateFileFn() {
|
||||
this.$refs["addFileForm"].validate((valid) => {
|
||||
if (valid) {
|
||||
editProjectInfo(this.addProjectForm).then((res) => {
|
||||
this.addProjectDialog = false;
|
||||
this.getDataDateils();
|
||||
this.$message.success(
|
||||
this.$t("message.companyDiagram.editSuccess")
|
||||
); //编辑成功!
|
||||
});
|
||||
let requestData = {
|
||||
...this.addFileForm,
|
||||
userId: this.$store.state.userInfo.userId,
|
||||
originFileName: this.fileList[0].name,
|
||||
};
|
||||
if (this.dialogTitle == "新增") {
|
||||
addQualificationFileApi(requestData).then((res) => {
|
||||
this.addFileDialog = false;
|
||||
this.getTableList();
|
||||
this.$message.success("新增成功!"); //新增成功!
|
||||
});
|
||||
} else {
|
||||
editQualificationFileApi(requestData).then((res) => {
|
||||
this.addFileDialog = false;
|
||||
this.getTableList();
|
||||
this.$message.success("编辑成功!"); //编辑成功!
|
||||
});
|
||||
}
|
||||
} else {
|
||||
console.log("error submit!!");
|
||||
return false;
|
||||
@ -259,6 +349,13 @@ export default {
|
||||
});
|
||||
},
|
||||
},
|
||||
watch: {
|
||||
activeTabName(newValue) {
|
||||
if (newValue == "second") {
|
||||
this.getTableList();
|
||||
}
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
@ -295,6 +392,13 @@ export default {
|
||||
/deep/ .el-dialog {
|
||||
margin-top: 10vh !important;
|
||||
}
|
||||
.operation-style {
|
||||
.flex();
|
||||
justify-content: center;
|
||||
.operationText:not(:last-child) {
|
||||
margin-right: 10px;
|
||||
}
|
||||
}
|
||||
}
|
||||
::v-deep .el-input__inner {
|
||||
line-height: 1px !important;
|
||||
|
||||
@ -4,764 +4,49 @@
|
||||
<el-tabs v-model="activeTabName">
|
||||
<el-tab-pane label="基本信息" name="first">
|
||||
<vue-scroll style="width: 100%">
|
||||
<BasicInfo></BasicInfo>
|
||||
<BasicInfo :activeTabName="activeTabName"></BasicInfo>
|
||||
</vue-scroll>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="资质文件" name="second">
|
||||
<vue-scroll style="width: 100%">
|
||||
<QualificationInfo></QualificationInfo>
|
||||
<QualificationInfo :activeTabName="activeTabName"></QualificationInfo>
|
||||
</vue-scroll>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="资质申请" name="third">
|
||||
<ApplyInfo></ApplyInfo>
|
||||
<ApplyInfo :activeTabName="activeTabName"></ApplyInfo>
|
||||
</el-tab-pane>
|
||||
</el-tabs>
|
||||
|
||||
<!-- 基本信息弹框 -->
|
||||
<el-dialog
|
||||
class="projectDialog"
|
||||
:title="projectDialogTitle"
|
||||
:visible.sync="addProjectDialog"
|
||||
width="1100px"
|
||||
:modal-append-to-body="false"
|
||||
:close-on-click-modal="false"
|
||||
>
|
||||
<div class="dialog_content">
|
||||
<el-form
|
||||
size="medium"
|
||||
:model="addProjectForm"
|
||||
ref="addProjectForm"
|
||||
:rules="addProjectFormRules"
|
||||
label-width="130px"
|
||||
class="dialogFormBox big"
|
||||
:inline="true"
|
||||
>
|
||||
<el-form-item label="企业名称" prop="projectName">
|
||||
<el-input
|
||||
v-model="addProjectForm.projectName"
|
||||
:placeholder="$t('message.companyDiagram.PleaseEnter')"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="法定代表人" prop="projectName">
|
||||
<el-input
|
||||
v-model="addProjectForm.projectName"
|
||||
:placeholder="$t('message.companyDiagram.PleaseEnter')"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="企业类型" prop="projectType">
|
||||
<el-select
|
||||
v-model="addProjectForm.projectType"
|
||||
:placeholder="$t('message.companyDiagram.PleaseSelect')"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in $t('message.companyDiagram.PROJECTTYPE')"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="统一社会信用代码" prop="saleAcreage">
|
||||
<el-input
|
||||
v-model="addProjectForm.saleAcreage"
|
||||
:placeholder="$t('message.companyDiagram.PleaseEnter')"
|
||||
type="number"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="开户行" prop="households">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.households"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="注册资金(万元)" prop="buildingNum">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="注册人申请电话" prop="buildingNum">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="银行账号" prop="buildingNum">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="法人电话" prop="buildingNum">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="营业执照注销号" prop="buildingNum">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="营业执照截止日期" prop="buildingNum">
|
||||
<el-date-picker
|
||||
type="date"
|
||||
placeholder="请选择日期"
|
||||
value-format="yyyy-MM-dd"
|
||||
>
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="企业地址" prop="buildingNum">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="企业邮箱" prop="buildingNum">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="安全生产许可证" prop="buildingNum">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="劳资证书号" prop="buildingNum">
|
||||
<el-input
|
||||
v-model.number="addProjectForm.buildingNum"
|
||||
:placeholder="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.placeholder')
|
||||
"
|
||||
></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="单位性质" prop="projectType">
|
||||
<el-select
|
||||
v-model="addProjectForm.projectType"
|
||||
:placeholder="$t('message.companyDiagram.PleaseSelect')"
|
||||
>
|
||||
<el-option
|
||||
v-for="item in $t('message.companyDiagram.PROJECTTYPE')"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<br />
|
||||
<el-form-item
|
||||
:label="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.layoutImage')
|
||||
"
|
||||
prop="layoutImage"
|
||||
>
|
||||
<div style="width: 280px">
|
||||
<el-upload
|
||||
class="avatar-uploader"
|
||||
:action="$store.state.UPLOADURL"
|
||||
:show-file-list="false"
|
||||
:before-upload="beforeAvatarUpload"
|
||||
:on-success="(file) => handleUploadSuccess(file, 1)"
|
||||
name="files"
|
||||
>
|
||||
<div v-if="addProjectForm.layoutImage" class="imgBox">
|
||||
<img :src="addProjectForm.layoutImage" class="avatar" />
|
||||
<i
|
||||
class="el-icon-error redText"
|
||||
@click.stop="addProjectForm.layoutImage = ''"
|
||||
></i>
|
||||
</div>
|
||||
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
||||
</el-upload>
|
||||
</div>
|
||||
</el-form-item>
|
||||
<el-form-item
|
||||
:label="
|
||||
$t('message.companyDiagram.dialog_ProjectPop_up.shopDrawing')
|
||||
"
|
||||
prop="constructionMapUrl"
|
||||
>
|
||||
<el-upload
|
||||
class="avatar-uploader"
|
||||
:action="$store.state.UPLOADURL"
|
||||
:show-file-list="false"
|
||||
:before-upload="beforeAvatarUpload"
|
||||
:on-success="(file) => handleUploadSuccess(file, 2)"
|
||||
name="files"
|
||||
>
|
||||
<div v-if="addProjectForm.constructionMapUrl" class="imgBox">
|
||||
<img :src="addProjectForm.constructionMapUrl" class="avatar" />
|
||||
<i
|
||||
class="el-icon-error redText"
|
||||
@click.stop="addProjectForm.constructionMapUrl = ''"
|
||||
></i>
|
||||
</div>
|
||||
<i v-else class="el-icon-plus avatar-uploader-icon"></i>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
<div class="dialog-footer">
|
||||
<el-button
|
||||
class="cancleBtn"
|
||||
@click="addProjectDialog = false"
|
||||
icon="el-icon-circle-close"
|
||||
size="medium"
|
||||
>{{ $t("message.companyDiagram.cancel") }}</el-button
|
||||
>
|
||||
<el-button
|
||||
type="primary"
|
||||
icon="el-icon-circle-check"
|
||||
@click="saveProjectFn"
|
||||
size="medium"
|
||||
>{{ $t("message.companyDiagram.determine") }}</el-button
|
||||
>
|
||||
</div>
|
||||
</el-form>
|
||||
</div>
|
||||
</el-dialog>
|
||||
<!-- 查看大图 -->
|
||||
<el-dialog
|
||||
:modal-append-to-body="false"
|
||||
title="查看大图"
|
||||
:visible.sync="bigImageDialog"
|
||||
>
|
||||
<img width="100%" :src="bigImageUrl" alt />
|
||||
</el-dialog>
|
||||
<!--高德地图-->
|
||||
<gd-map
|
||||
v-if="showMap"
|
||||
:addProjectForm="addProjectForm"
|
||||
@closeMap="closeMap"
|
||||
@save="getLngLat"
|
||||
></gd-map>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { checkPhone } from "@/assets/js/util.js";
|
||||
import {
|
||||
sendSafetyHatProjectDataApi,
|
||||
getDictionaryItemApi,
|
||||
} from "@/assets/js/api/companyDiagram.js";
|
||||
import {
|
||||
getProjectDetail,
|
||||
editProjectInfo,
|
||||
sendProjectInfo,
|
||||
getProjectConfigListApi,
|
||||
} from "@/assets/js/api/baseInfo.js";
|
||||
import { selectProvincesCityListApi } from "@/assets/js/api/project.js";
|
||||
import scroll from "vue-seamless-scroll";
|
||||
import gdMap from "../../../components/map/gd-map";
|
||||
import BasicInfo from "./components/basic-info.vue";
|
||||
import QualificationInfo from "./components/qualification-info.vue";
|
||||
import ApplyInfo from "./components/apply-info.vue";
|
||||
export default {
|
||||
name: "baseInfo",
|
||||
components: {
|
||||
scroll,
|
||||
gdMap,
|
||||
BasicInfo,
|
||||
QualificationInfo,
|
||||
ApplyInfo
|
||||
},
|
||||
data() {
|
||||
var checkAge = (rule, value, callback) => {
|
||||
if (value == "" && value != 0) {
|
||||
callback(new Error(this.$t("message.companyDiagram.required")));
|
||||
return;
|
||||
}
|
||||
if (!Number.isInteger(value)) {
|
||||
callback(new Error(this.$t("message.companyDiagram.required_msg")));
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
};
|
||||
return {
|
||||
tableList: [],
|
||||
activeTabName: "first",
|
||||
projectDialogTitle: "新增",
|
||||
addProjectDialog: false,
|
||||
addProjectForm: {
|
||||
areaCode: "",
|
||||
buildingNum: "",
|
||||
bulidStatus: "",
|
||||
cityCode: "",
|
||||
companySn: "",
|
||||
constructionStage: "",
|
||||
engineeringPurpose: "",
|
||||
households: "",
|
||||
latitude: "",
|
||||
layoutImage: "",
|
||||
constructionMapUrl: "",
|
||||
longitude: "",
|
||||
projectAcreage: "",
|
||||
projectAddress: "",
|
||||
projectName: "",
|
||||
projectNumber: "",
|
||||
projectType: "",
|
||||
provincesCode: "",
|
||||
saleAcreage: "",
|
||||
startWorkDate: "",
|
||||
structureType: "",
|
||||
projectManage: "",
|
||||
projectTel: "",
|
||||
majorProjectType: 0,
|
||||
},
|
||||
projectDetail: {
|
||||
areaCode: "",
|
||||
buildingNum: "",
|
||||
bulidStatus: "",
|
||||
cityCode: "",
|
||||
companySn: "",
|
||||
constructionStage: "",
|
||||
engineeringPurpose: "",
|
||||
households: "",
|
||||
latitude: "",
|
||||
layoutImage: "",
|
||||
constructionMapUrl: "",
|
||||
longitude: "",
|
||||
projectAcreage: "",
|
||||
projectAddress: "",
|
||||
projectName: "",
|
||||
projectNumber: "",
|
||||
projectType: "",
|
||||
provincesCode: "",
|
||||
saleAcreage: "",
|
||||
startWorkDate: "",
|
||||
structureType: "",
|
||||
projectManage: "",
|
||||
projectTel: "",
|
||||
},
|
||||
addProjectFormRules: {
|
||||
projectName: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.required"),
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
provincesCode: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.Mandatory"),
|
||||
trigger: "change",
|
||||
},
|
||||
],
|
||||
projectAddress: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.required"),
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
projectManage: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.required"),
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
projectTel: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.required"),
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
longitude: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.required"),
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
latitude: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.required"),
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
projectNumber: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.required"),
|
||||
trigger: "blur",
|
||||
},
|
||||
],
|
||||
projectType: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.Mandatory"),
|
||||
trigger: "change",
|
||||
},
|
||||
],
|
||||
engineeringPurpose: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.Mandatory"),
|
||||
trigger: "change",
|
||||
},
|
||||
],
|
||||
// structureType: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: this.$t("message.companyDiagram.Mandatory"),
|
||||
// trigger: "change",
|
||||
// },
|
||||
// ],
|
||||
// projectAcreage: [
|
||||
// {
|
||||
// required: true,
|
||||
// message: this.$t("message.companyDiagram.required"),
|
||||
// trigger: "blur",
|
||||
// },
|
||||
// ],
|
||||
bulidStatus: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.Mandatory"),
|
||||
trigger: "change",
|
||||
},
|
||||
],
|
||||
startWorkDate: [
|
||||
{
|
||||
required: true,
|
||||
message: this.$t("message.companyDiagram.Mandatory"),
|
||||
trigger: "change",
|
||||
},
|
||||
],
|
||||
// households: [{ required: true, validator: checkAge, trigger: "blur" }],
|
||||
// buildingNum: [{ required: true, validator: checkAge, trigger: "blur" }],
|
||||
},
|
||||
bigImageDialog: false,
|
||||
bigImageUrl: "",
|
||||
projectSn: "",
|
||||
provincesCityArr: [],
|
||||
provincesCityList: [],
|
||||
cascaderProps: {
|
||||
label: "name",
|
||||
children: "childrenlist",
|
||||
value: "code",
|
||||
},
|
||||
showMap: false,
|
||||
projectAuditStatus: "", //审核状态
|
||||
company: "",
|
||||
constructionStageList: [],
|
||||
structureTypeList: [],
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.projectSn = this.$store.state.projectSn;
|
||||
this.company = COMPANY;
|
||||
this.getDataDateils();
|
||||
this.loadProvincesCityList();
|
||||
this.getProjectConfigList();
|
||||
this.getDictionaryList();
|
||||
this.getDictionaryByStructure();
|
||||
},
|
||||
|
||||
methods: {
|
||||
//获取字典施工阶段
|
||||
getDictionaryList() {
|
||||
getDictionaryItemApi({
|
||||
dictionaryEncoding: "project_construction_stage",
|
||||
projectSn: this.projectSn,
|
||||
}).then((res) => {
|
||||
if (res.result.length > 0) {
|
||||
this.constructionStageList = res.result;
|
||||
}
|
||||
});
|
||||
},
|
||||
//获取字典 结构类型
|
||||
getDictionaryByStructure() {
|
||||
getDictionaryItemApi({
|
||||
dictionaryEncoding: "project_structure_type",
|
||||
projectSn: this.projectSn,
|
||||
}).then((res) => {
|
||||
if (res.result.length > 0) {
|
||||
this.structureTypeList = res.result;
|
||||
}
|
||||
});
|
||||
},
|
||||
sendSafetyHatProject() {
|
||||
sendSafetyHatProjectDataApi({ projectSn: this.projectSn }).then((res) => {
|
||||
if (res.code == 200) {
|
||||
this.$message.success("上传成功!");
|
||||
}
|
||||
});
|
||||
},
|
||||
getProjectConfigList() {
|
||||
getProjectConfigListApi({ projectSn: this.projectSn }).then((res) => {
|
||||
if (res.code == 200) {
|
||||
this.projectAuditStatus = res.result[0].projectAuditStatus;
|
||||
console.log(res.result[0].projectAuditStatus);
|
||||
}
|
||||
});
|
||||
},
|
||||
uploadThirdParty() {
|
||||
sendProjectInfo({ projectSn: this.projectSn }).then((res) => {
|
||||
if (res.code == 200) {
|
||||
this.$message.success(
|
||||
this.$t("message.projectInfo.updateSuccess") + "!"
|
||||
);
|
||||
this.getProjectConfigList();
|
||||
}
|
||||
});
|
||||
},
|
||||
closeMap(val) {
|
||||
this.showMap = val;
|
||||
},
|
||||
getLngLat(v) {
|
||||
this.showMap = false;
|
||||
this.addProjectForm.longitude = v.lng;
|
||||
this.addProjectForm.latitude = v.lat;
|
||||
},
|
||||
//获取详情
|
||||
getDataDateils() {
|
||||
let data = {
|
||||
projectSn: this.projectSn,
|
||||
};
|
||||
getProjectDetail(data).then((res) => {
|
||||
if (res.code == 200) {
|
||||
this.projectDetail =
|
||||
res.result != null ? res.result : this.projectDetail;
|
||||
this.provincesCityArr = [
|
||||
res.result.provincesCode,
|
||||
res.result.cityCode,
|
||||
res.result.areaCode,
|
||||
];
|
||||
this.addProjectForm = JSON.parse(JSON.stringify(res.result));
|
||||
this.$store.commit("setProDetail", res.result);
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
// 文件上传前
|
||||
beforeAvatarUpload(file) {
|
||||
if (
|
||||
file.type != "image/jpeg" &&
|
||||
file.type != "image/png" &&
|
||||
file.type != "image/jpg" &&
|
||||
file.type != "image/bmp"
|
||||
) {
|
||||
this.$message.error(this.$t("message.companyDiagram.uploadMsg")); //只能上传图片
|
||||
return false;
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
},
|
||||
//文件上传成功
|
||||
handleUploadSuccess(res, type) {
|
||||
console.log(res);
|
||||
if (type == 1) {
|
||||
this.addProjectForm.layoutImage =
|
||||
this.$store.state.FILEURL + res.data[0].imageUrl;
|
||||
} else {
|
||||
this.addProjectForm.constructionMapUrl =
|
||||
this.$store.state.FILEURL + res.data[0].imageUrl;
|
||||
}
|
||||
},
|
||||
|
||||
//获取经纬度
|
||||
toGetLocalFn() {
|
||||
this.showMap = true;
|
||||
// window.open("https://lbs.amap.com/console/show/picker");
|
||||
},
|
||||
|
||||
//编辑保存项目
|
||||
saveProjectFn() {
|
||||
if (this.addProjectForm.projectTel) {
|
||||
if (!checkPhone(this.addProjectForm.projectTel)) {
|
||||
console.log(
|
||||
"this.addProjectForm.projectTel",
|
||||
this.addProjectForm.projectTel
|
||||
);
|
||||
this.$message.error("请输入正确的联系电话");
|
||||
return;
|
||||
}
|
||||
}
|
||||
this.$refs["addProjectForm"].validate((valid) => {
|
||||
if (valid) {
|
||||
editProjectInfo(this.addProjectForm).then((res) => {
|
||||
this.addProjectDialog = false;
|
||||
this.getDataDateils();
|
||||
this.$message.success(
|
||||
this.$t("message.companyDiagram.editSuccess")
|
||||
); //编辑成功!
|
||||
});
|
||||
} else {
|
||||
console.log("error submit!!");
|
||||
return false;
|
||||
}
|
||||
});
|
||||
},
|
||||
//获取项目所在省市下拉
|
||||
loadProvincesCityList() {
|
||||
selectProvincesCityListApi().then((res) => {
|
||||
this.provincesCityList = res.result;
|
||||
});
|
||||
},
|
||||
//切换省市
|
||||
changeProvincesCity(val) {
|
||||
this.addProjectForm.provincesCode = val[0];
|
||||
this.addProjectForm.cityCode = val[1];
|
||||
this.addProjectForm.areaCode = val[2];
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
.flex {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.flex2 {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: space-around;
|
||||
}
|
||||
.flex3 {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
.flex4 {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
.flex5 {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
}
|
||||
.baseInfo {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
// background: #ffffff;
|
||||
padding: 15px;
|
||||
box-sizing: border-box;
|
||||
.btn_wrap {
|
||||
}
|
||||
.custom_tab {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
box-sizing: border-box;
|
||||
border: 1px solid rgba(148, 148, 148, 0.5);
|
||||
border-bottom: none;
|
||||
margin-top: 20px;
|
||||
// color: #333;
|
||||
.title {
|
||||
width: 100%;
|
||||
font-size: 14px;
|
||||
padding: 12px 20px;
|
||||
border-bottom: 1px solid rgba(148, 148, 148, 0.5);
|
||||
box-sizing: border-box;
|
||||
height: 44px;
|
||||
background: #eeeeee;
|
||||
}
|
||||
|
||||
.type_content {
|
||||
width: 50%;
|
||||
div {
|
||||
font-size: 14px;
|
||||
padding: 12px 0;
|
||||
height: 44px;
|
||||
line-height: 44px;
|
||||
box-sizing: border-box;
|
||||
border-bottom: 1px solid rgba(148, 148, 148, 0.5);
|
||||
}
|
||||
}
|
||||
|
||||
.width_65 {
|
||||
width: 80%;
|
||||
display: inline-block;
|
||||
box-sizing: border-box;
|
||||
height: 44px;
|
||||
padding: 0 15px;
|
||||
}
|
||||
.width_35 {
|
||||
width: 20%;
|
||||
display: inline-block;
|
||||
box-sizing: border-box;
|
||||
border-right: 1px solid rgba(148, 148, 148, 0.5);
|
||||
padding: 0 15px;
|
||||
text-align: left;
|
||||
}
|
||||
}
|
||||
.bg_color {
|
||||
background: rgba(235, 234, 234, 0.5);
|
||||
display: inline-block;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.border_l {
|
||||
border-left: 1px solid rgba(148, 148, 148, 0.5);
|
||||
}
|
||||
/deep/ .el-dialog {
|
||||
margin-top: 10vh !important;
|
||||
}
|
||||
|
||||
.avatar-uploader {
|
||||
border: 1px dashed #d9d9d9;
|
||||
border-radius: 6px;
|
||||
cursor: pointer;
|
||||
position: relative;
|
||||
// overflow: hidden;
|
||||
height: 178px;
|
||||
width: 178px;
|
||||
}
|
||||
|
||||
.avatar-uploader:hover {
|
||||
border-color: #409eff;
|
||||
}
|
||||
|
||||
.avatar-uploader-icon {
|
||||
font-size: 28px;
|
||||
color: #8c939d;
|
||||
width: 178px;
|
||||
height: 178px;
|
||||
line-height: 178px;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.avatar {
|
||||
width: 178px;
|
||||
height: 178px;
|
||||
display: block;
|
||||
}
|
||||
|
||||
.imgBox {
|
||||
position: relative;
|
||||
|
||||
.el-icon-error {
|
||||
font-size: 20px;
|
||||
position: absolute;
|
||||
right: -10px;
|
||||
top: -10px;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
}
|
||||
::v-deep .el-input__inner {
|
||||
line-height: 1px !important;
|
||||
}
|
||||
</style>
|
||||
|
||||
@ -3,17 +3,25 @@
|
||||
<div class="fullHeight">
|
||||
<vhead :titleName="projectName" :showR="true"></vhead>
|
||||
<div class="supplier-module">
|
||||
<div class="supplier-module-item" v-for="(item,index) in moduleList" :key="index">
|
||||
<div
|
||||
class="supplier-module-item"
|
||||
v-for="(item, index) in moduleList"
|
||||
:key="index"
|
||||
>
|
||||
<div class="module-item-left">
|
||||
<div class="item-left-title">
|
||||
<div class="line"></div>
|
||||
<div>{{ item.title }}</div>
|
||||
<div>{{ item.moduleName }}</div>
|
||||
</div>
|
||||
<div class="item-left-desc">{{ item.describe }}</div>
|
||||
<div class="item-left-btn" @click="jumpRoute">进入</div>
|
||||
<div class="item-left-desc">{{ item.moduleDesc }}</div>
|
||||
<div class="item-left-btn" @click="jumpRoute(item, index)">进入</div>
|
||||
</div>
|
||||
<div class="module-item-right">
|
||||
<img :src="item.icon">
|
||||
<img
|
||||
:src="
|
||||
require('../../assets/images/menu/' + item.moduleIcon + '.png')
|
||||
"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -21,6 +29,7 @@
|
||||
</template>
|
||||
<script>
|
||||
import vhead from "@/components/header";
|
||||
import { getAllModuleApi } from "@/assets/js/api/jxjadmin.js";
|
||||
export default {
|
||||
name: "projectIndex",
|
||||
components: { vhead },
|
||||
@ -28,102 +37,207 @@ export default {
|
||||
return {
|
||||
projectName: "",
|
||||
moduleList: [
|
||||
{title: "我的资质",describe: "供应商在此处对基本信息、资质文件等内容进行完善,提交给项目组织审批",icon: require("@/assets/images/carIcon1.png") },
|
||||
{title: "合同管理",describe: "供应商在此处对基本信息、资质文件等内容进行完善,提交给项目组织审批",icon: require("@/assets/images/carIcon1.png") },
|
||||
{title: "劳务队",describe: "供应商在此处对基本信息、资质文件等内容进行完善,提交给项目组织审批",icon: require("@/assets/images/carIcon1.png") },
|
||||
{title: "维修记录",describe: "供应商在此处对基本信息、资质文件等内容进行完善,提交给项目组织审批",icon: require("@/assets/images/carIcon1.png") },
|
||||
{title: "发货记录",describe: "供应商在此处对基本信息、资质文件等内容进行完善,提交给项目组织审批",icon: require("@/assets/images/carIcon1.png") },
|
||||
{title: "付款记录",describe: "供应商在此处对基本信息、资质文件等内容进行完善,提交给项目组织审批",icon: require("@/assets/images/carIcon1.png") },
|
||||
{title: "售后工单",describe: "供应商在此处对基本信息、资质文件等内容进行完善,提交给项目组织审批",icon: require("@/assets/images/carIcon1.png") }
|
||||
]
|
||||
{
|
||||
title: "我的资质",
|
||||
describe:
|
||||
"供应商在此处对基本信息、资质文件等内容进行完善,提交给项目组织审批",
|
||||
icon: require("@/assets/images/carIcon1.png"),
|
||||
},
|
||||
{
|
||||
title: "合同管理",
|
||||
describe:
|
||||
"供应商在此处对基本信息、资质文件等内容进行完善,提交给项目组织审批",
|
||||
icon: require("@/assets/images/carIcon1.png"),
|
||||
},
|
||||
{
|
||||
title: "劳务队",
|
||||
describe:
|
||||
"供应商在此处对基本信息、资质文件等内容进行完善,提交给项目组织审批",
|
||||
icon: require("@/assets/images/carIcon1.png"),
|
||||
},
|
||||
{
|
||||
title: "维修记录",
|
||||
describe:
|
||||
"供应商在此处对基本信息、资质文件等内容进行完善,提交给项目组织审批",
|
||||
icon: require("@/assets/images/carIcon1.png"),
|
||||
},
|
||||
{
|
||||
title: "发货记录",
|
||||
describe:
|
||||
"供应商在此处对基本信息、资质文件等内容进行完善,提交给项目组织审批",
|
||||
icon: require("@/assets/images/carIcon1.png"),
|
||||
},
|
||||
{
|
||||
title: "付款记录",
|
||||
describe:
|
||||
"供应商在此处对基本信息、资质文件等内容进行完善,提交给项目组织审批",
|
||||
icon: require("@/assets/images/carIcon1.png"),
|
||||
},
|
||||
{
|
||||
title: "售后工单",
|
||||
describe:
|
||||
"供应商在此处对基本信息、资质文件等内容进行完善,提交给项目组织审批",
|
||||
icon: require("@/assets/images/carIcon1.png"),
|
||||
},
|
||||
],
|
||||
};
|
||||
},
|
||||
created() {
|
||||
var arr = this.$store.state.userInfo.menuAuthority.moduleList;
|
||||
// this.moduleList = this.$store.state.userInfo.menuAuthority.moduleList;
|
||||
this.getAllModule(arr);
|
||||
},
|
||||
methods: {
|
||||
jumpRoute(){
|
||||
//为了展示未解锁产品,所以需要查询所有模块
|
||||
getAllModule(half) {
|
||||
console.log(half, "101010");
|
||||
getAllModuleApi({
|
||||
moduleType: 6,
|
||||
styleType: this.$store.state.userInfo.styleType,
|
||||
}).then((res) => {
|
||||
if (res.success) {
|
||||
var all = res.result;
|
||||
let needArr = [];
|
||||
console.log("all", all);
|
||||
all.forEach((element, index) => {
|
||||
all[index].operation = false;
|
||||
half.forEach((element2) => {
|
||||
if (element2.moduleId == element.moduleId) {
|
||||
all[index].operation = true;
|
||||
all[index].menuList = element2.menuList;
|
||||
needArr.push(all[index]);
|
||||
}
|
||||
});
|
||||
});
|
||||
this.moduleList = needArr;
|
||||
}
|
||||
});
|
||||
},
|
||||
jumpRoute(item, index) {
|
||||
this.$router.push("/supplier/qualification/apply");
|
||||
}
|
||||
if (!item.operation) {
|
||||
this.$message.error(this.$t("message.projectIndex.tips1"));
|
||||
return;
|
||||
}
|
||||
if (item.menuList && item.menuList.length > 0) {
|
||||
var arr = item.menuList,
|
||||
arr2 = [];
|
||||
arr.forEach((element) => {
|
||||
if (element.menuEquipment == 0) {
|
||||
arr2.push(element);
|
||||
}
|
||||
});
|
||||
this.$store.commit("setMenuList", arr2);
|
||||
this.$store.commit("setIsShowBackIndex", true);
|
||||
this.$store.commit("setMoudle", item);
|
||||
if (arr2[0].target == "_blank") {
|
||||
let routeUrl = "";
|
||||
if (arr2[0].path.indexOf("http") != -1) {
|
||||
routeUrl = arr2[0].path;
|
||||
} else {
|
||||
let url = this.$router.resolve({
|
||||
path: arr2[0].path,
|
||||
});
|
||||
routeUrl = url.href;
|
||||
}
|
||||
window.open(routeUrl, "_blank");
|
||||
} else {
|
||||
if (arr2[0].path == "" || arr2[0].path.indexOf("/") == -1) {
|
||||
this.$router.push(arr2[0].menuList[0].path);
|
||||
} else {
|
||||
this.$router.push(arr2[0].path);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
this.$message.error(this.$t("message.projectIndex.tips2"));
|
||||
}
|
||||
window._paq.push([
|
||||
"trackEvent",
|
||||
"点击",
|
||||
item.moduleName,
|
||||
"进入" + item.moduleName,
|
||||
]);
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
.flex(){
|
||||
.flex() {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
.flexColumn(){
|
||||
.flexColumn() {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
.supplier-module{
|
||||
.supplier-module {
|
||||
width: max-content;
|
||||
margin: 0 auto;
|
||||
display: grid;
|
||||
grid-template-columns: repeat(4, 1fr);
|
||||
grid-gap: 50px;
|
||||
grid-template-columns: repeat(4, 1fr);
|
||||
grid-gap: 50px;
|
||||
margin-top: 90px;
|
||||
&-item{
|
||||
&-item {
|
||||
box-sizing: border-box;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
width: 362px;
|
||||
height: 144px;
|
||||
background: #FFFFFF;
|
||||
box-shadow: 2px 1px 4px 1px rgba(48,92,200,0.09);
|
||||
background: #ffffff;
|
||||
box-shadow: 2px 1px 4px 1px rgba(48, 92, 200, 0.09);
|
||||
border-radius: 4px 4px 4px 4px;
|
||||
padding: 0px 10px;
|
||||
.module-item-left{
|
||||
.module-item-left {
|
||||
width: 181px;
|
||||
margin-right: auto;
|
||||
.flexColumn();
|
||||
justify-content: space-between;
|
||||
.item-left-title{
|
||||
.item-left-title {
|
||||
.flex();
|
||||
.line{
|
||||
.line {
|
||||
width: 2px;
|
||||
height: 18px;
|
||||
background-color: #5C81EE;
|
||||
background-color: #5c81ee;
|
||||
margin-left: 3px;
|
||||
margin-right: 5px;
|
||||
margin-top: 2px;
|
||||
}
|
||||
>div:nth-child(2){
|
||||
> div:nth-child(2) {
|
||||
font-family: Source Han Sans CN, Source Han Sans CN;
|
||||
font-weight: 500;
|
||||
font-size: 22px;
|
||||
color: #272D45;
|
||||
color: #272d45;
|
||||
text-align: center;
|
||||
font-style: normal;
|
||||
text-transform: none;
|
||||
}
|
||||
}
|
||||
.item-left-desc{
|
||||
.item-left-desc {
|
||||
font-family: Source Han Sans CN, Source Han Sans CN;
|
||||
font-weight: 400;
|
||||
font-size: 10px;
|
||||
color: #272D45;
|
||||
color: #272d45;
|
||||
font-style: normal;
|
||||
text-transform: none;
|
||||
margin-top: 3px;
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
.item-left-btn{
|
||||
.item-left-btn {
|
||||
width: 37px;
|
||||
height: 19px;
|
||||
line-height: 19px;
|
||||
text-align: center;
|
||||
background: #5181F6;
|
||||
background: #5181f6;
|
||||
border-radius: 14px 14px 14px 14px;
|
||||
font-family: Source Han Sans CN, Source Han Sans CN;
|
||||
font-weight: 400;
|
||||
font-size: 9px;
|
||||
color: #FFFFFF;
|
||||
color: #ffffff;
|
||||
cursor: pointer;
|
||||
}
|
||||
}
|
||||
.module-item-right{
|
||||
img{
|
||||
.module-item-right {
|
||||
img {
|
||||
width: 106px;
|
||||
height: 106px;
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user