web资产企业端新增

lijinlongNew
许宏杰 1 month ago
parent 81c15afe63
commit 3a97ce5b9d

@ -3,7 +3,7 @@
<el-backtop target=".L-assets-info" /> <el-backtop target=".L-assets-info" />
<div class="assets-info-top"> <div class="assets-info-top">
<el-row style="margin: 10px 0"> <el-row style="margin: 10px 0">
<span class="top-title-box">基本信息</span> <span class="top-title-box">基本信息0</span>
</el-row> </el-row>
<div class="assets-info-box" v-loading="loading"> <div class="assets-info-box" v-loading="loading">
<el-form <el-form
@ -28,13 +28,12 @@
}" }"
prop="xtmc" prop="xtmc"
> >
<el-input v-model="ruleForm.xtmc" disabled></el-input> <el-input v-model="ruleForm.xtmc"></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item
label="单位名称" label="单位名称"
required
:rules="{ :rules="{
required: true, required: true,
message: '请输入', message: '请输入',
@ -4993,7 +4992,7 @@
</div> </div>
<el-row <el-row
style="margin: 10px 0; padding-bottom: 50px; text-align: center" style="margin: 10px 0; padding-bottom: 50px; text-align: center"
v-if="pageType == 'change' && !audit" v-if="(pageType == 'change' || pageType == 'add') && !audit"
> >
<el-button type="danger" @click="sendBack"></el-button> <el-button type="danger" @click="sendBack"></el-button>
<el-button type="primary" @click="newAssets" :loading="loading" <el-button type="primary" @click="newAssets" :loading="loading"
@ -5068,6 +5067,7 @@ import {
assetAudit, assetAudit,
lookInfo, lookInfo,
} from "@/api/auditPagesApi/index"; } from "@/api/auditPagesApi/index";
import { mapGetters } from "vuex";
import myDialog from "@/views/components/myDialog/index.vue"; import myDialog from "@/views/components/myDialog/index.vue";
export default { export default {
name: "AssetsAuth", name: "AssetsAuth",
@ -5112,7 +5112,24 @@ export default {
myUpload, myUpload,
myDialog, myDialog,
}, },
computed: {
...mapGetters(["nickName"]),
},
data() { data() {
const arrayLenght = (rule, value, callback) => {
if (value.length == 0) {
callback(new Error("请填写"));
} else {
value.forEach((item) => {
for (let key in item) {
if (!item[key]) {
callback(new Error("填写项存在控制"));
}
}
});
callback();
}
};
// //
var validateName = (rule, value, callback) => { var validateName = (rule, value, callback) => {
if (!this.ruleForm.ywxttpwj && !this.ruleForm.ywxttpt) { if (!this.ruleForm.ywxttpwj && !this.ruleForm.ywxttpt) {
@ -5392,6 +5409,9 @@ export default {
this.disabled = true; this.disabled = true;
} }
} }
if (this.pageType == "add") {
this.ruleForm.dwmc = this.nickName;
}
}, },
methods: { methods: {
// //
@ -6027,11 +6047,12 @@ export default {
this.loading = false; this.loading = false;
}); });
} else { } else {
this.ruleForm.xzType = 1;
assetUnitData("post", this.ruleForm).then((res) => { assetUnitData("post", this.ruleForm).then((res) => {
// console.log(res,"res"); // console.log(res,"res");
this.loading = false; this.loading = false;
this.$modal.msgSuccess("新增成功"); this.$modal.msgSuccess("新增成功");
this.$router.go(-1); this.$router.push({ name: this.name, params: this.queryData });
}); });
} }
} else { } else {

@ -3,11 +3,20 @@
<div class="L-main" id="L-size-main"> <div class="L-main" id="L-size-main">
<div class="content-search" id="L-header"> <div class="content-search" id="L-header">
<div class="search-title">查询条件</div> <div class="search-title">查询条件</div>
<el-form :inline="true" ref="queryForm" :model="formInline" size="small" class="demo-form-inline"> <el-form
:inline="true"
ref="queryForm"
:model="formInline"
size="small"
class="demo-form-inline"
>
<el-row> <el-row>
<el-col :span="7"> <el-col :span="7">
<el-form-item label="系统名称:" prop="xtmc"> <el-form-item label="系统名称:" prop="xtmc">
<el-input v-model="formInline.xtmc" placeholder="请输入"></el-input> <el-input
v-model="formInline.xtmc"
placeholder="请输入"
></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="7"> <el-col :span="7">
@ -17,7 +26,8 @@
v-for="dict in dict.type.zc_xtlx" v-for="dict in dict.type.zc_xtlx"
:key="dict.value" :key="dict.value"
:label="dict.label" :label="dict.label"
:value="dict.value"> :value="dict.value"
>
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -29,15 +39,23 @@
v-for="dict in dict.type.zc_xtzt" v-for="dict in dict.type.zc_xtzt"
:key="dict.value" :key="dict.value"
:label="dict.label" :label="dict.label"
:value="dict.value"> :value="dict.value"
>
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="3" style="text-align: right;"> <el-col :span="3" style="text-align: right">
<el-form-item class="unit-form"> <el-form-item class="unit-form">
<el-button size="mini" @click="resetQuery('queryFrom')"></el-button> <el-button size="mini" @click="resetQuery('queryFrom')"
<el-button size="mini" type="primary" @click="handleQuery('queryFrom')"></el-button> >重置</el-button
>
<el-button
size="mini"
type="primary"
@click="handleQuery('queryFrom')"
>查询</el-button
>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -54,169 +72,275 @@
icon="el-icon-download" icon="el-icon-download"
size="mini" size="mini"
@click="handleExport" @click="handleExport"
>导出</el-button> >导出</el-button
>
</el-col>
<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
>新增资产</el-button
>
</el-col> </el-col>
</el-row> </el-row>
</div> </div>
<section> <section>
<el-table v-loading="loading" :data="tableData" :height="tabHeader" :max-height="tabHeader" :row-class-name="tableRowClassName"> <el-table
<el-table-column type="index" width="50" label="序号" align="center"/> v-loading="loading"
<el-table-column label="系统名称" key="xtmc" width="200px" prop="xtmc" align="center" /> :data="tableData"
<el-table-column label="系统类型" key="xtlx" prop="xtlx" align="center"> :height="tabHeader"
:max-height="tabHeader"
:row-class-name="tableRowClassName"
>
<el-table-column
type="index"
width="50"
label="序号"
align="center"
/>
<el-table-column
label="系统名称"
key="xtmc"
width="200px"
prop="xtmc"
align="center"
/>
<el-table-column
label="系统类型"
key="xtlx"
prop="xtlx"
align="center"
>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag :options="dict.type.zc_xtlx" :value="scope.row.xtlx"/> <dict-tag :options="dict.type.zc_xtlx" :value="scope.row.xtlx" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="单位名称" key="dwmc" prop="dwmc" align="center"> <el-table-column
label="单位名称"
key="dwmc"
prop="dwmc"
align="center"
>
<!-- <template slot-scope="scope"> <!-- <template slot-scope="scope">
<dict-tag :options="dict.type.project_middle_type" :value="scope.row.projectMiddleType"/> <dict-tag :options="dict.type.project_middle_type" :value="scope.row.projectMiddleType"/>
</template> --> </template> -->
</el-table-column> </el-table-column>
<el-table-column label="新增时间" key="createTime" prop="createTime" align="center" /> <el-table-column
<el-table-column label="系统状态" key="status" prop="status" class-name="table-status" align="center"> label="新增时间"
key="createTime"
prop="createTime"
align="center"
/>
<el-table-column
label="系统状态"
key="status"
prop="status"
class-name="table-status"
align="center"
>
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="scope.row.xtzt == 1" style="color: #16B771;"> <span v-if="scope.row.xtzt == 1" style="color: #16b771">
已安装 已安装
</span> </span>
<span v-if="scope.row.xtzt == 2" style="color: #F58A0C;"> <span v-if="scope.row.xtzt == 2" style="color: #f58a0c">
测试中 测试中
</span> </span>
<span v-if="scope.row.xtzt == 3" style="color: #1485EF;"> <span v-if="scope.row.xtzt == 3" style="color: #1485ef">
使用中 使用中
</span> </span>
<span v-if="scope.row.xtzt == 4" style="color: #29A07A;"> <span v-if="scope.row.xtzt == 4" style="color: #29a07a">
维护中 维护中
</span> </span>
<span v-if="scope.row.xtzt == 5" style="color: #F50C0C;"> <span v-if="scope.row.xtzt == 5" style="color: #f50c0c">
关停 关停
</span> </span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" prop="userId" class-name="table-operation" align="center"> <el-table-column
label="操作"
prop="userId"
class-name="table-operation"
align="center"
>
<template slot-scope="scope"> <template slot-scope="scope">
<div style="display: flex;align-items: center;justify-content: center;"> <div
<div style="display: flex;align-items: center;cursor: pointer;" @click="goInfo(scope.row,1)"> style="
<img src="@/assets/images/icon-ck@2x.png" alt="" style="width: 20px;margin-right: 5px;"> display: flex;
<span class="look-info" style="color: #1485EF;">查看</span> align-items: center;
justify-content: center;
"
>
<div
style="display: flex; align-items: center; cursor: pointer"
@click="goInfo(scope.row, 1)"
>
<img
src="@/assets/images/icon-ck@2x.png"
alt=""
style="width: 20px; margin-right: 5px"
/>
<span class="look-info" style="color: #1485ef">查看</span>
</div> </div>
<div v-if="!scope.row.auditState || scope.row.auditState == 2 || scope.row.xtzt == '5'" style="display: flex;align-items: center;cursor: pointer;margin-left: 10px;" @click="goInfo(scope.row,2)"> <div
<img src="@/assets/images/edit.png" alt="" style="width: 15px;margin-right: 5px;"> v-if="
<span class="look-info" style="color: #1485EF;margin-right: 15px;">编辑</span> !scope.row.auditState ||
scope.row.auditState == 2 ||
scope.row.xtzt == '5'
"
style="
display: flex;
align-items: center;
cursor: pointer;
margin-left: 10px;
"
@click="goInfo(scope.row, 2)"
>
<img
src="@/assets/images/edit.png"
alt=""
style="width: 15px; margin-right: 5px"
/>
<span
class="look-info"
style="color: #1485ef; margin-right: 15px"
>编辑</span
>
</div> </div>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
</section> </section>
<my-pagination <my-pagination
id="L-pagination" id="L-pagination"
:total="total" :total="total"
:page="formInline.current" :page="formInline.current"
:limit="formInline.size" :limit="formInline.size"
@pagination="getPagination" @pagination="getPagination"
:current-page.sync="formInline.current" :current-page.sync="formInline.current"
></my-pagination> ></my-pagination>
</main> </main>
</div> </div>
</template> </template>
<script> <script>
import myPagination from "@/views/components/Pagination/index.vue" import myPagination from "@/views/components/Pagination/index.vue";
// import myDialog from "@/views/components/myDialog/index.vue" // import myDialog from "@/views/components/myDialog/index.vue"
import { assetUnit, deleteAssetInfo } from "@/api/auditPagesApi/index"; import { assetUnit, deleteAssetInfo } from "@/api/auditPagesApi/index";
export default { export default {
dicts: ['zc_xtzt','zc_xtlx'], dicts: ["zc_xtzt", "zc_xtlx"],
components:{myPagination}, components: { myPagination },
data() { data() {
return { return {
formInline:{ formInline: {
xtmc:"", xtmc: "",
xtlx:"", xtlx: "",
xtzt:"", xtzt: "",
current:1, current: 1,
size:10, size: 10,
}, },
total:0, total: 0,
tableData:[], tableData: [],
loading:false, loading: false,
tabHeader: undefined, tabHeader: undefined,
} };
}, },
mounted(){ mounted() {
if( Object.keys(this.$route.params).length != 0) { if (Object.keys(this.$route.params).length != 0) {
this.formInline = this.$route.params; this.formInline = this.$route.params;
}else{ } else {
this.formInline.current = 1 this.formInline.current = 1;
this.formInline.size = 20 this.formInline.size = 20;
} }
this.getList(); this.getList();
this.cancalDebounce(); this.cancalDebounce();
window.addEventListener('resize', this.cancalDebounce); window.addEventListener("resize", this.cancalDebounce);
}, },
destroyed() { destroyed() {
window.removeEventListener('resize', this.cancalDebounce); window.removeEventListener("resize", this.cancalDebounce);
}, },
methods:{ methods: {
// //
getList(){ getList() {
this.loading = true; this.loading = true;
assetUnit('get',this.formInline).then(res=>{ assetUnit("get", this.formInline).then((res) => {
this.loading = false; this.loading = false;
this.total = res.data.total; this.total = res.data.total;
this.tableData = res.data.records; this.tableData = res.data.records;
}) });
}, },
// //
resetQuery(){ resetQuery() {
this.resetForm("queryForm"); this.resetForm("queryForm");
this.handleQuery(); this.handleQuery();
}, },
// //
handleQuery(){ handleQuery() {
this.formInline.current = 1; this.formInline.current = 1;
this.getList(); this.getList();
}, },
// //
getPagination(pages){ getPagination(pages) {
this.formInline.current = pages.page; this.formInline.current = pages.page;
this.formInline.size = pages.limit; this.formInline.size = pages.limit;
this.getList(); this.getList();
}, },
// //
handleImport(){}, handleImport() {},
// //
handleExport(){ handleExport() {
this.download('/tc/assetCurrent/export', { this.download(
...this.formInline "/tc/assetCurrent/export",
}, `asset_${new Date().getTime()}.xlsx`) {
...this.formInline,
},
`asset_${new Date().getTime()}.xlsx`
);
},
//
handleAdd() {
this.$router.push({
name: "myAssetsAuth",
query: {
pageType: "add",
type: 0,
queryData: this.formInline,
name: "MyWebAssets",
},
});
}, },
// //
goInfo(row,id){ goInfo(row, id) {
this.$router.push({name: 'myAssetsAuth',query: { this.$router.push({
pageType: id == 1 ? "look" : "change", name: "myAssetsAuth",
type:0, query: {
id: row.id, pageType: id == 1 ? "look" : "change",
queryData:this.formInline, type: 0,
name:"MyWebAssets" id: row.id,
}}) queryData: this.formInline,
name: "MyWebAssets",
},
});
}, },
// table // table
tableRowClassName({row, rowIndex}){ tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 !== 0) { if (rowIndex % 2 !== 0) {
return 'evenNumber-row'; return "evenNumber-row";
} }
return ''; return "";
}, },
// //
cancalDebounce(){ cancalDebounce() {
const element = document.getElementById('L-size-main'); // ID const element = document.getElementById("L-size-main"); // ID
const header = document.getElementById('L-header'); // ID const header = document.getElementById("L-header"); // ID
const pagination = document.getElementById('L-pagination'); // ID const pagination = document.getElementById("L-pagination"); // ID
const elementHeight = element.offsetHeight; const elementHeight = element.offsetHeight;
const headerHeight = header.offsetHeight; const headerHeight = header.offsetHeight;
const paginationtHeight = pagination.offsetHeight; const paginationtHeight = pagination.offsetHeight;
this.tabHeader = elementHeight - headerHeight - paginationtHeight - 120; this.tabHeader = elementHeight - headerHeight - paginationtHeight - 120;
} },
}, },
} };
</script> </script>

Loading…
Cancel
Save