Files
2026-09-08 19:49:21 +08:00

882 lines
38 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!--#
layout("/layouts/platform.html"){
#-->
<!--
固定资产变更
Created by lyw on 2020-02-28
-->
<style>
.el-table td div {
-webkit-box-sizing: border-box;
box-sizing: border-box;
margin-left: 10px;
}
</style>
<div id="app" v-cloak>
<guava>
<el-card shadow="never">
<div class="btn-group tool-button">
<el-input placeholder="请输入内容" clearable v-model="pageForm.searchKeyword"
@keyup.enter.native="doSearch">
<el-select v-model="pageForm.searchName" slot="prepend" placeholder="查询类型"
style="width: 120px;">
<el-option label="编号" value="zc.zcbh"></el-option>
<el-option label="名称" value="zc.zcmc"></el-option>
<el-option label="存放地" value="zc.zccfdmc"></el-option>
<el-option label="领用单位" value="zc.zclydwh"></el-option>
</el-select>
</el-input>
</div>
<div class="btn-group tool-button">
<el-select v-model="pageForm.zcghlx" clearable placeholder="请选择资产类型">
<el-option value="2" label="工会固定资产"></el-option>
<el-option value="1" label="院级工会固定资产"></el-option>
</el-select>
</div>
<div class="btn-group tool-button">
<el-date-picker type="date"
placeholder="请选择购置时间"
value-format="yyyy-MM-dd"
v-model="pageForm.zcgzrq"></el-date-picker>
</div>
<div class="btn-group tool-button">
<el-date-picker type="date"
placeholder="请选择入库时间"
value-format="yyyy-MM-dd"
v-model="pageForm.zcrksj"></el-date-picker>
</div>
<div class="btn-group tool-button">
<el-button icon="el-icon-search" @click="doSearch"
type="primary"></el-button>
</div>
</el-card>
<el-card class="mt20" shadow="never">
<el-table
:data="tableData"
header-align="center"
style="width: 100%"
>
<el-table-column
label="序号"
type="index"
header-align="center"
align="center"
>
<template scope="scope">
<span>{{scope.$index+(pageForm.pageNumber - 1) * pageForm.pageSize + 1}} </span>
</template>
</el-table-column>
<el-table-column
prop="zcbh"
label="编号"
header-align="center"
align="center">
<template scope="scope">
{{isNull(scope.row.zcbh)}}
</template>
</el-table-column>
<el-table-column
width="100"
prop="zcmc"
label="名称"
header-align="center"
align="center">
<template scope="scope">
{{isNull(scope.row.zcmc)}}
</template>
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="zcxh"
label="型号"
header-align="center"
align="center">
<template scope="scope">
{{isNull(scope.row.zcxh)}}
</template>
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="zcgg"
label="规格"
header-align="center"
align="center">
<template scope="scope">
{{isNull(scope.row.zcgg)}}
</template>
</el-table-column>
<!-- <el-table-column-->
<!-- show-overflow-tooltip-->
<!-- prop="zcdj"-->
<!-- label="单价"-->
<!-- header-align="center"-->
<!-- align="center">-->
<!-- <template scope="scope">-->
<!-- {{isNull(scope.row.zcdj)}}-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- show-overflow-tooltip-->
<!-- prop="zccj"-->
<!-- label="厂家"-->
<!-- header-align="center"-->
<!-- align="center">-->
<!-- <template scope="scope">-->
<!-- {{isNull(scope.row.zccj)}}-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- show-overflow-tooltip-->
<!-- prop="zccch"-->
<!-- label="出厂号"-->
<!-- header-align="center"-->
<!-- align="center">-->
<!-- <template scope="scope">-->
<!-- {{isNull(scope.row.zccch)}}-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column
show-overflow-tooltip
prop="zcgzrq"
label="购置日期"
header-align="center"
sortable
align="center">
<template slot-scope="scope">
{{scope.row.zcgzrq|date}}
</template>
</el-table-column>
<!-- <el-table-column-->
<!-- show-overflow-tooltip-->
<!-- prop="zcrksj"-->
<!-- label="入库时间"-->
<!-- header-align="center"-->
<!-- align="center">-->
<!-- <template scope="scope">-->
<!-- {{isNull(scope.row.zcrksj)}}-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column-->
<!-- show-overflow-tooltip-->
<!-- prop="jsr"-->
<!-- label="经手人"-->
<!-- header-align="center"-->
<!-- align="center">-->
<!-- <template scope="scope">-->
<!-- {{isNull(scope.row.jsr)}}-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column
show-overflow-tooltip
prop="zclyrname"
label="领用人"
header-align="center"
align="center">
<template scope="scope">
{{isNull(scope.row.zclyrname)}}
</template>
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="zclydwh"
label="领用单位"
header-align="center"
sortable
align="center">
<template scope="scope">
{{isNull(scope.row.zclydwh)}}
</template>
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="zccfdmc"
label="存放地名称"
header-align="center"
align="center">
<template scope="scope">
{{isNull(scope.row.zccfdmc)}}
</template>
</el-table-column>
<el-table-column
label="状态"
header-align="center"
prop="zczt"
sortable
align="center">
</el-table-column>
<el-table-column
label="操作"
header-align="center"
align="center">
<template slot-scope="scope">
<el-dropdown @command="({func, data})=>{func(data)}">
<el-button plain size="mini">
<i class="ti-settings"></i>
<span class="ti-angle-down"></span>
</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item :command="{func:viewInfo,data:scope}">
查看
</el-dropdown-item>
<el-dropdown-item :command="{func:openChange,data:scope.row.zcid}">
变更
</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<!--<el-dropdown @command="handleCommand" trigger="click" >
<el-button @click="zcid=scope.row.zcid" type="warning" size="small">
状态变更<i class="el-icon-arrow-down el-icon&#45;&#45;right"></i>
</el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="1">在用</el-dropdown-item>
<el-dropdown-item command="2">停用</el-dropdown-item>
<el-dropdown-item command="3">报废</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>-->
</template>
</el-table-column>
</template>
</el-table>
<el-row class="el-pagination-container">
<el-pagination
@size-change="pageSizeChange"
@current-change="pageNumberChange"
:current-page="pageForm.pageNumber"
:page-sizes="[10, 20, 30, 50]"
:page-size="pageForm.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="pageForm.totalCount">
</el-pagination>
</el-row>
</el-card>
</guava>
<el-dialog
title="详情"
:visible.sync="viewDialogVisible"
width="60%"
custom-class="ViewDialogClass"
:close-on-click-modal="false"
>
<el-tabs v-model="activeNames">
<el-tab-pane label="基本信息" name="1">
<el-form label-suffix="" label-width="100px">
<el-row gutter="20">
<el-col span="12">
<el-form-item label="编号">{{viewData.zcbh}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="名称">{{viewData.zcmc}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="型号">{{viewData.zcxh}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="规格">{{viewData.zcgg}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="购置日期">{{viewData.zcgzrq}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="状态">{{viewData.zczt}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="国标分类号">{{viewData.zcgbflh}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="分类号">{{viewData.zcflh}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="领用人">{{viewData.zclyrname}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="领用单位">{{viewData.zclydwh}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="经手人">{{viewData.zcjsrname}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="存放地名称">{{viewData.zccfdmc}}</el-form-item>
</el-col>
</el-row>
</el-form>
</el-tab-pane>
<el-tab-pane label="购置信息" name="2">
<el-form label-suffix="" label-width="100px">
<el-row gutter="20">
<el-col span="12">
<el-form-item label="单价">{{viewData.zcdj}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="厂家">{{viewData.zccj}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="供货商">{{viewData.zcghs}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="发票号">{{viewData.zcfph}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="单据号">{{viewData.zcdjh}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="合同号">{{viewData.zchth}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="国别">{{viewData.zcgb}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="出厂号">{{viewData.zccch}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="经费卡号">{{viewData.zcjfkh}}</el-form-item>
</el-col>
<el-col span="12">
<el-form-item label="经费卡金额">{{viewData.zcjfkje}}</el-form-item>
</el-col>
</el-row>
</el-form>
</el-tab-pane>
<el-tab-pane label="变更信息" name="3">
<el-table class="tabInfo"
:data="viewData.bdData"
size="small"
header-align="center"
style="width: 100%"
>
<el-table-column
show-overflow-tooltip
prop="oldlyrusername"
label="原领用人">
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="zcoldlydwh"
label="原领用单位">
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="oldcfd"
label="原存放地">
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="nowlyrusername"
label="现领用人">
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="zcnowlydwh"
label="现领用单位">
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="nowcfd"
label="现存放地">
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="shrname"
label="审核人">
</el-table-column>
<el-table-column
show-overflow-tooltip
prop="zcbdsj"
label="变更时间">
</el-table-column>
</el-table>
</el-tab-pane>
</el-tabs>
<span slot="footer" class="dialog-footer">
<el-button @click="viewDialogVisible = false">关 闭</el-button>
</span>
</el-dialog>
<el-dialog
class="ViewDialogClass"
title="资产变更"
:visible.sync="editDialogVisible"
width="55%">
<el-form :model="formData" ref="editForm" :label-position="'left'" :rules="formRules" size="small"
label-width="80px">
<el-row>
<el-col :span="10">
<el-form-item prop="zcjsrname" label="原领用人">
<el-input style="width: 100%" v-model="formData.zclyrname" disabled
placeholder=""></el-input>
</el-form-item>
</el-col>
<el-col :span="4" style="text-align: center">
<i style="color: #409EFF;font-weight: bolder;font-size: 24px;line-height: 32px"
class="el-icon-right"></i>
</el-col>
<el-col :span="10">
<el-form-item prop="zcnowlyrid" label="现领用人">
<el-select
clearable
style="width: 100%"
v-model="formData.zcnowlyrid"
filterable
remote
reserve-keyword
placeholder="请输入关键词"
:remote-method="userRemoteMethod"
:loading="userSearchLoading"
@change="zcnowlyrChange">
<el-option
v-for="item in userList"
:key="item.id"
:label="item.loginname+' '+item.username"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="10">
<el-form-item prop="zclydwh" label="原单位">
<el-input style="width: 100%" v-model="formData.zclydwh" disabled
placeholder=""></el-input>
</el-form-item>
</el-col>
<el-col :span="4" style="text-align: center">
<i style="color: #409EFF;font-weight: bolder;font-size: 24px;line-height: 32px"
class="el-icon-right"></i>
</el-col>
<el-col :span="10">
<el-form-item prop="zcnowlydwh" label="现单位">
<el-input style="width: 100%" v-model="formData.zcnowlydwh" disabled
placeholder=""></el-input>
<!-- <el-select
clearable
style="width: 100%"
v-model="formData.zcnowlydwh"
filterable
remote
reserve-keyword
placeholder="请输入关键词"
:remote-method="dwRemoteMethod"
:loading="dwSearchLoading">
<el-option
v-for="item in dwList"
:key="item.unioninfomgr_id"
:label="item.unionname"
:value="item.unioninfomgr_id">
</el-option>
</el-select>-->
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="10">
<el-form-item prop="zccfdmc" label="原存放地">
<el-input style="width: 100%" v-model="formData.zccfdmc" disabled
placeholder=""></el-input>
</el-form-item>
</el-col>
<el-col :span="4" style="text-align: center">
<i style="color: #409EFF;font-weight: bolder;font-size: 24px;line-height: 32px"
class="el-icon-right"></i>
</el-col>
<el-col :span="10">
<el-form-item prop="zcnowcfdmc" label="现存放地">
<el-input style="width: 100%" clearable v-model="formData.zcnowcfdmc"
placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="10">
<el-form-item prop="zccfdmc" label="原状态">
<el-select v-model="formData.zczt" disabled style="width: 100%">
<el-option label="在用" value="1"></el-option>
<el-option label="停用" value="2"></el-option>
<el-option label="报废" value="3"></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="4" style="text-align: center">
<i style="color: #409EFF;font-weight: bolder;font-size: 24px;line-height: 32px"
class="el-icon-right"></i>
</el-col>
<el-col :span="10">
<el-form-item prop="zcnowcfdmc" label="现状态">
<el-select v-model="formData.zcnowzczt" style="width: 100%">
<el-option label="在用" value="在用"></el-option>
<el-option label="闲置" value="闲置"></el-option>
<el-option label="未使用" value="未使用"></el-option>
<el-option label="待报废" value="待报废"></el-option>
<el-option label="报废" value="报废"></el-option>
<el-option label="校外转入" value="校外转入"></el-option>
<el-option label="校内转入" value="校内转入"></el-option>
<el-option label="其它" value="其它"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="editDialogVisible = false">取 消</el-button>
<el-button type="primary" @click="doChange">确 定</el-button>
</span>
</el-dialog>
</div>
<script>
var vue = new Vue({
el: '#app',
data: function () {
var self = this
return {
userList: [],
dwList: [],
userSearchLoading: false,
dwSearchLoading: false,
tableData: [],
activeNames: ["1", "2"],
pageForm: {
searchName: "",
searchKeyword: "",
pageNumber: 1,
pageSize: 10,
totalCount: 0,
pageOrderName: "",
pageOrderBy: "",
zcghlx: '',
ghid: ''
},
formData: {},
viewData: {bdData: []},
addDialogVisible: false,
editDialogVisible: false,
viewDialogVisible: false,
formRules: {
lx_name: [{required: true, message: '请填写名称', trigger: ['blur', 'change']}],
lx_bz: [{required: false, message: '', trigger: ['blur', 'change']}],
},
isNull: function (val) {
if (val == '' || val == undefined || val == null) {
return '暂无'
}
return val
},
zcid: ""
}
},
methods: {
zcnowlyrChange(val) {
const {unionname} = this.userList.find(v => v.id == val)
this.dwRemoteMethod(unionname)
this.$set(this.formData, "zcnowlydwh", unionname)
},
async doChange() {
const {zcnowzczt, zcnowlyrid} = this.formData
if (!zcnowzczt) {
this.$message.warning('请选择现状态')
return
}
if (!['报废', '待报废'].includes(zcnowzczt) && !zcnowlyrid) {
this.$message.warning('请搜索并选择现领用人')
return
}
var data = {}
data.zcid = this.formData.zcid
data.zcoldlyrid = this.formData.zclyrid
data.zcoldlydwh = this.formData.zclydwh
data.zcoldcfdmc = this.formData.zccfdmc
data.zcnowlyrid = this.formData.zcnowlyrid
data.zcnowlydwh = this.formData.zcnowlydwh
data.zcnowcfdmc = this.formData.zcnowcfdmc
data.zczt = this.formData.zcnowzczt
const data1 = await $.post("/platform/zcgl/gdzcbg/doChange", data)
if (data1.code == 0) {
vue.$message({
message: data1.msg,
type: 'success'
});
vue.pageData();
vue.editDialogVisible = false
} else {
vue.$message({
message: data1.msg,
type: 'error'
});
}
/* $.post(base + "/platform/zcgl/gdzcbg/doChange", data, function (data) {
if (data.code == 0) {
vue.$message({
message: data.msg,
type: 'success'
});
vue.pageData();
vue.editDialogVisible = false
} else {
vue.$message({
message: data.msg,
type: 'error'
});
}
}, "json");*/
},
async dwRemoteMethod(query) {
if (query !== '') {
this.dwSearchLoading = true;
const {data} = await $.get("/platform/zcgl/gdzcbg/queryDw", {query: query})
this.dwList = data
this.dwSearchLoading = false;
/* $.post(base + "/platform/zcgl/gdzcbg/queryDw", {
query: query,
}, function (data) {
this.dwSearchLoading = false;
if (data.code == 0) {
this.dwList = data.data
console.log(data.data.find(v => v.unionname === query))
// this.formData.zcnowlydwh = data.data.find(v => v.unionname == query).id;
} else {
this.$message({
message: data.msg,
type: 'error'
});
}
}, "json");*/
} else {
this.dwList = [];
}
},
async userRemoteMethod(query) {
if (query !== '') {
this.userSearchLoading = true;
const data = await searchUser(query)
this.userSearchLoading = false
this.userList = data
/* $.post(base + "/platform/zcgl/gdzcbg/queryUser", {
username: query,
excUserId: vue.formData.zclyrid
}, function (data) {
vue.userSearchLoading = false
if (data.code == 0) {
vue.userList = data.data
} else {
vue.$message({
message: data.msg,
type: 'error'
});
}
}, "json");*/
} else {
this.userList = [];
}
},
openChange: function (zcid) {
$.post(base + "/platform/zcgl/gdzcbg/openEditData", {zcid: zcid}, function (data) {
if (data.code == 0) {
vue.dwList = []
vue.userList = []
vue.formData = data.data
vue.editDialogVisible = true
} else {
vue.$message({
message: data.msg,
type: 'error'
});
}
}, "json");
},
viewInfo: function (scope) {
var self = this;
self.viewData = JSON.parse(JSON.stringify(scope.row));
self.activeNames = '1'
$.post(base + "/platform/zcgl/gdzcbg/queryChangeData", {zcid: scope.row.zcid}, function (data) {
if (data.code == 0) {
self.viewData.bdData = data.data
} else {
self.viewData.bdData = []
}
self.viewDialogVisible = true;
}, "json");
},
doDelete: function (id) {
var self = this;
this.$confirm('确定要删除吗', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
callback: function (a, b) {
if ("confirm" == a) {//确认后再执行
$.post(base + "/platform/zgfw/wjdclx/delete", {lx_id: id}, function (data) {
if (data.code == 0) {
self.$message({
message: data.msg,
type: 'success'
});
self.pageData();
} else {
self.$message({
message: data.msg,
type: 'error'
});
}
}, "json");
}
}
});
},
openEdit: function (id) {
var self = this;
this.formData = {};
if (this.$refs["editForm"])
this.$refs["editForm"].resetFields();
$.get("/platform/zgfw/wjdclx/queryDetail", {lx_id: id}, function (data) {
if (data.code == 0) {
self.formData = data.data
self.formData.lx_wtsl = self.formData.lx_wtsl.toString()
self.editDialogVisible = true
} else {
self.$message({
message: data.msg,
type: 'error'
});
}
}, 'json')
},
doEdit: function () {
var self = this;
self.$refs["editForm"].validate(function (valid) {
if (valid) {
$.post(base + "/platform/zgfw/wjdclx/doEdit", self.formData, function (data) {
if (data.code == 0) {
self.$message({
message: data.msg,
type: 'success'
});
self.pageData();//查询是带条件的,加载新建用户选择的单位用户数据
self.editDialogVisible = false;
} else {
self.$message({
message: data.msg,
type: 'error'
});
}
}, "json");
}
});
},
doAdd: function () {
var self = this;
self.$refs["addForm"].validate(function (valid) {
if (valid) {
$.post(base + "/platform/zgfw/wjdclx/doAdd", self.formData, function (data) {
if (data.code == 0) {
self.pageData();
self.addDialogVisible = false
self.$message({
message: '添加成功',
type: "success"
});
} else {
self.$message({
message: data.msg,
type: 'error'
});
}
}, "json");
}
})
},
openAdd: function () {
var self = this;
this.addDialogVisible = true;
this.formData = {};//打开新增窗口,表单先清空
if (this.$refs["addForm"])
this.$refs["addForm"].resetFields();
},
doSearch: function () {
this.pageForm.pageNumber = 1;
this.pageData();
},
pageOrder: function (column) {//按字段排序
switch (column.order) {
case 'descending':
column.order = 'desc'
break
case "ascending":
column.order = 'asc'
break
}
this.pageForm.pageOrderName = column.prop;
this.pageForm.pageOrderBy = column.order;
this.pageData();
},
pageNumberChange: function (val) {//页码更新操作
this.pageForm.pageNumber = val;
this.pageData();
},
pageSizeChange: function (val) {//分页大小更新操作
this.pageForm.pageSize = val;
this.pageData();
},
pageData: function () {//加载分页数据
var self = this;
sublime.showLoadingbar();//显示loading
$.post(base + "/platform/zcgl/gdzcbg/data", self.pageForm, function (data) {
sublime.closeLoadingbar();//关闭loading
if (data.code == 0) {
self.tableData = data.data.list;
self.pageForm.totalCount = data.data.totalCount;
} else {
self.$message({
message: data.msg,
type: 'error'
});
}
}, "json");
},
handleCommand: function (command) {
var self = this;
$.post(base + "/platform/zcgl/tzgl/bgzt", {zcid: self.zcid, zczt: command}, function (data) {
if (data.code === 0) {
self.pageData();
self.$message.success(data.msg);
} else {
self.$message.error(data.msg);
}
})
},
},
created: function () {
this.pageData();
}
})
</script>
<!--#
}
#-->