Merge branch 'dev' of http://git.sinoecare.com/sinoecare/digital_village_v2/dvcp_v2_webapp into dev
This commit is contained in:
@@ -151,7 +151,6 @@ html, body {
|
||||
height: 100%;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: 5px;
|
||||
|
||||
.fixedBtn {
|
||||
position: fixed;
|
||||
@@ -191,11 +190,12 @@ html, body {
|
||||
& > .header {
|
||||
text-align: start;
|
||||
box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
|
||||
height: 60px;
|
||||
height: 43px;
|
||||
flex-shrink: 0;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
padding: 0 16px;
|
||||
margin-bottom: 5px;
|
||||
|
||||
& > b {
|
||||
flex: 1;
|
||||
|
||||
@@ -7,7 +7,9 @@
|
||||
<template #content>
|
||||
<ai-search-bar>
|
||||
<template slot="left">
|
||||
<el-button type="primary" icon="iconfont iconAdd" @click="handleAdd">添加</el-button>
|
||||
<el-button type="primary" icon="iconfont iconAdd" @click="handleAdd"
|
||||
>添加</el-button
|
||||
>
|
||||
</template>
|
||||
<template slot="right">
|
||||
<el-input
|
||||
@@ -16,9 +18,14 @@
|
||||
size="small"
|
||||
placeholder="请输入课程主题"
|
||||
clearable
|
||||
v-throttle="() => {search.current = 1, getList()}"
|
||||
@clear="search.current=1, search.title = '', getList()"
|
||||
suffix-icon="iconfont iconSearch">
|
||||
v-throttle="
|
||||
() => {
|
||||
(search.current = 1), getList();
|
||||
}
|
||||
"
|
||||
@clear="(search.current = 1), (search.title = ''), getList()"
|
||||
suffix-icon="iconfont iconSearch"
|
||||
>
|
||||
</el-input>
|
||||
</template>
|
||||
</ai-search-bar>
|
||||
@@ -29,37 +36,66 @@
|
||||
:total="total"
|
||||
:current.sync="page.current"
|
||||
:size.sync="page.size"
|
||||
style="margin-top: 10px;"
|
||||
@getList="getList">
|
||||
<el-table-column slot="options" label="操作" align="center" width="230px" fixed="right">
|
||||
<div slot-scope="{row}" class="table-options">
|
||||
<el-button type="text" :title="row.status == 0 ? '发布' : '取消发布'" @click="handleChange(row)">{{ row.status == 0 ? '发布' : '取消发布' }}</el-button>
|
||||
<el-button type="text" title="添加" @click="handleAddSeries(row)">添加剧集</el-button>
|
||||
<el-button type="text" title="详情" @click="handleDetail(row)">详情</el-button>
|
||||
<el-button type="text" title="编辑" @click="handleEdit(row)">编辑</el-button>
|
||||
<el-button type="text" title="删除" @click="handleDelete(row)">删除</el-button>
|
||||
style="margin-top: 10px"
|
||||
@getList="getList"
|
||||
>
|
||||
<el-table-column
|
||||
slot="options"
|
||||
label="操作"
|
||||
align="center"
|
||||
width="230px"
|
||||
fixed="right"
|
||||
>
|
||||
<div slot-scope="{ row }" class="table-options">
|
||||
<el-button
|
||||
type="text"
|
||||
:title="row.status == 0 ? '发布' : '取消发布'"
|
||||
@click="handleChange(row)"
|
||||
>{{ row.status == 0 ? "发布" : "取消发布" }}</el-button
|
||||
>
|
||||
<el-button type="text" title="添加" @click="handleAddSeries(row)"
|
||||
>添加剧集</el-button
|
||||
>
|
||||
<el-button type="text" title="详情" @click="handleDetail(row)"
|
||||
>详情</el-button
|
||||
>
|
||||
<el-button type="text" title="编辑" @click="handleEdit(row)"
|
||||
>编辑</el-button
|
||||
>
|
||||
<el-button type="text" title="删除" @click="handleDelete(row)"
|
||||
>删除</el-button
|
||||
>
|
||||
</div>
|
||||
</el-table-column>
|
||||
</ai-table>
|
||||
</template>
|
||||
</ai-list>
|
||||
<component :is="comp" v-else :row="row" :instance="instance" :dict="dict" :permissions="permissions" @back="back" :isEdit="isEdit"></component>
|
||||
<component
|
||||
:is="comp"
|
||||
v-else
|
||||
:row="row"
|
||||
:instance="instance"
|
||||
:dict="dict"
|
||||
:permissions="permissions"
|
||||
@back="back"
|
||||
:isEdit="isEdit"
|
||||
></component>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import partyClassAdd from "./components/partyClassAdd";
|
||||
import seriesManage from "./components/seriesManage";
|
||||
import {mapState} from "vuex";
|
||||
import partyClassAdd from "./components/partyClassAdd";
|
||||
import seriesManage from "./components/seriesManage";
|
||||
import { mapState } from "vuex";
|
||||
|
||||
export default {
|
||||
export default {
|
||||
name: "AppPartyHistoryClass",
|
||||
label: "党员学习",
|
||||
components: {partyClassAdd, seriesManage},
|
||||
components: { partyClassAdd, seriesManage },
|
||||
props: {
|
||||
instance: Function,
|
||||
dict: Object,
|
||||
permissions: Function
|
||||
permissions: Function,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
@@ -77,62 +113,80 @@
|
||||
isEdit: false,
|
||||
page: {
|
||||
current: 1,
|
||||
size: 10
|
||||
}
|
||||
}
|
||||
size: 10,
|
||||
},
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
...mapState(["user"]),
|
||||
colConfigs() {
|
||||
return [
|
||||
{label: "课程主题", prop: "title"},
|
||||
{ label: "课程主题", prop: "title" },
|
||||
{
|
||||
label: "更新状态",
|
||||
render: (h, {row}) => [ < span > {this.dict.getLabel('classroomUpdateStatus', row.updateStatus)} < /span>]
|
||||
render: (h, { row }) => [
|
||||
<span>
|
||||
{" "}
|
||||
{this.dict.getLabel(
|
||||
"classroomUpdateStatus",
|
||||
row.updateStatus
|
||||
)}{" "}
|
||||
</span>,
|
||||
],
|
||||
},
|
||||
{label: "更新时间", prop: "updateDate"},
|
||||
{label: "发布时间", prop: "createDate"},
|
||||
{ label: "更新时间", prop: "updateDate" },
|
||||
{ label: "发布时间", prop: "createDate" },
|
||||
{
|
||||
label: "发布状态",
|
||||
render: (h, {row}) => [ < span > {this.dict.getLabel('newsCenterStatus', row.status)} < /span>]
|
||||
render: (h, { row }) => [
|
||||
<span> {this.dict.getLabel("newsCenterStatus", row.status)} </span>,
|
||||
],
|
||||
},
|
||||
{label: "发布组织", prop: "organizationName"},
|
||||
{slot: "options"}
|
||||
{ label: "发布组织", prop: "organizationName" },
|
||||
{ slot: "options" },
|
||||
];
|
||||
}
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
handleChange(row) {
|
||||
this.$confirm(`是否确定要${row.status==0?'发布':'取消发布'}?`).then(_ => {
|
||||
this.instance.post("/app/apppartyclassroom/addOrUpdate", {
|
||||
this.$confirm(`是否确定要${row.status == 0 ? "发布" : "取消发布"}?`).then(
|
||||
(_) => {
|
||||
this.instance
|
||||
.post("/app/apppartyclassroom/addOrUpdate", {
|
||||
id: row.id,
|
||||
status: row.status == 0 ? 1 : 0
|
||||
}).then(res=>{
|
||||
if(res.code==0){
|
||||
this.$message.success(`${row.status == 0?'发布成功':'取消发布成功'}`);
|
||||
status: row.status == 0 ? 1 : 0,
|
||||
})
|
||||
.then((res) => {
|
||||
if (res.code == 0) {
|
||||
this.$message.success(
|
||||
`${row.status == 0 ? "发布成功" : "取消发布成功"}`
|
||||
);
|
||||
this.getList();
|
||||
}
|
||||
})
|
||||
})
|
||||
});
|
||||
}
|
||||
);
|
||||
},
|
||||
handleAddSeries(row) {
|
||||
this.showList = false;
|
||||
this.comp = "seriesManage";
|
||||
this.row = row;
|
||||
},
|
||||
handleDelete({id}){
|
||||
this.$confirm("确定要删除吗?").then(_=>{
|
||||
this.instance.post("/app/apppartyclassroom/delete", null, {
|
||||
handleDelete({ id }) {
|
||||
this.$confirm("确定要删除吗?").then((_) => {
|
||||
this.instance
|
||||
.post("/app/apppartyclassroom/delete", null, {
|
||||
params: {
|
||||
ids:id
|
||||
}
|
||||
}).then(res => {
|
||||
if (res.code==0) {
|
||||
ids: id,
|
||||
},
|
||||
})
|
||||
.then((res) => {
|
||||
if (res.code == 0) {
|
||||
this.$message.success("删除成功");
|
||||
this.getList();
|
||||
}
|
||||
})
|
||||
})
|
||||
});
|
||||
});
|
||||
},
|
||||
handleEdit(row) {
|
||||
this.showList = false;
|
||||
@@ -147,7 +201,7 @@
|
||||
this.row = row;
|
||||
},
|
||||
changeParty(e) {
|
||||
if (!e.length) return
|
||||
if (!e.length) return;
|
||||
this.organizationName = e[0]?.name;
|
||||
this.resetSearch();
|
||||
},
|
||||
@@ -164,7 +218,7 @@
|
||||
this.showList = true;
|
||||
this.isEdit = false;
|
||||
|
||||
this.getList()
|
||||
this.getList();
|
||||
},
|
||||
handleAdd() {
|
||||
this.comp = "partyClassAdd";
|
||||
@@ -173,31 +227,33 @@
|
||||
this.row = {};
|
||||
},
|
||||
getList() {
|
||||
this.instance.post("/app/apppartyclassroom/list", null, {
|
||||
this.instance
|
||||
.post("/app/apppartyclassroom/list", null, {
|
||||
params: {
|
||||
...this.page,
|
||||
...this.search,
|
||||
}
|
||||
}).then(res => {
|
||||
},
|
||||
})
|
||||
.then((res) => {
|
||||
if (res?.data) {
|
||||
this.tableData = res.data.records;
|
||||
this.total = res.data.total;
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.topOrgId = this.user.info?.organizationId;
|
||||
this.organizationId = this.user.info?.organizationId;
|
||||
this.organizationName = this.user.info?.organizationName;
|
||||
this.dict.load("classroomUpdateStatus",'newsCenterStatus');
|
||||
this.dict.load("classroomUpdateStatus", "newsCenterStatus");
|
||||
this.getList();
|
||||
}
|
||||
}
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.AppFoundingHundred {
|
||||
.AppFoundingHundred {
|
||||
height: 100%;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
36
packages/3.0.0/AppPropertyAdministration/AppPropertyAdministration.vue
vendored
Normal file
36
packages/3.0.0/AppPropertyAdministration/AppPropertyAdministration.vue
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
<template>
|
||||
<div class="AppPropertyAdministration">
|
||||
<AppPropertyAdministration
|
||||
slot="content"
|
||||
:instance="instance"
|
||||
:dict="dict"
|
||||
:permissions="permissions">
|
||||
</AppPropertyAdministration>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import AppPropertyAdministration from './components/AppPropertyAdministration.vue'
|
||||
export default {
|
||||
name: "AppPropertyAdministration",
|
||||
label: "产权管理",
|
||||
components: {
|
||||
AppPropertyAdministration,
|
||||
},
|
||||
props: {
|
||||
instance: Function,
|
||||
dict: Object,
|
||||
permissions: Function
|
||||
},
|
||||
data() {
|
||||
return {}
|
||||
},
|
||||
methods: {},
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.AppPropertyAdministration {
|
||||
height: 100%;
|
||||
}
|
||||
</style>
|
||||
29
packages/3.0.0/AppPropertyAdministration/components/AppPropertyAdministration.vue
vendored
Normal file
29
packages/3.0.0/AppPropertyAdministration/components/AppPropertyAdministration.vue
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
<template>
|
||||
<ai-list class="loansAudit">
|
||||
<template slot="title">
|
||||
<ai-title title="产权管理" isShowBottomBorder :isShowBottomBorder="true" :isShowArea="true" v-model="areaId"></ai-title>
|
||||
</template>
|
||||
<template slot="content">
|
||||
</template>
|
||||
|
||||
</ai-list>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
name: "loansAudit",
|
||||
props: {
|
||||
instance: Function,
|
||||
dict: Object
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
}
|
||||
},
|
||||
methods: {}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.loansAudit {}
|
||||
</style>
|
||||
145
packages/jianping/AppHelpedResident/detail/hrLog.vue
Normal file
145
packages/jianping/AppHelpedResident/detail/hrLog.vue
Normal file
@@ -0,0 +1,145 @@
|
||||
<template>
|
||||
<section class="hrLog">
|
||||
<ai-card title="走访日志">
|
||||
<template #right>
|
||||
<el-button type="text" icon="el-icon-plus" @click="dialog=true">添加</el-button>
|
||||
</template>
|
||||
<template #content>
|
||||
<div class="logItem" v-for="row in tableData" :key="row.id">
|
||||
<el-row type="flex" align="middle" justify="space-between">
|
||||
<b v-text="row.createUserName"/>
|
||||
<span v-text="row.createTime"/>
|
||||
</el-row>
|
||||
<div class="content" v-text="row.detail"/>
|
||||
<ai-uploader v-model="row.files" disabled/>
|
||||
<div class="btns">
|
||||
<el-button type="text" @click="handleEdit(row)">编辑</el-button>
|
||||
<el-button type="text" @click="handleDelete(row.id)">删除</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<ai-empty v-if="tableData.length==0"/>
|
||||
</template>
|
||||
</ai-card>
|
||||
<ai-dialog :visible.sync="dialog" :title="addTitle" @closed="form={}" @onConfirm="submit" width="600px">
|
||||
<el-form :model="form" :rules="rules" ref="DialogForm" size="small" label-width="80px">
|
||||
<el-form-item label="走访日志" prop="detail">
|
||||
<el-input type="textarea" v-model="form.detail" placeholder="请输入" maxlength="500" show-word-limit rows="5"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="图片" prop="files">
|
||||
<ai-uploader v-model="form.files" :instance="instance" acceptType=".jpg,.jpeg,.png">
|
||||
<template #tips>
|
||||
最多9张,仅支持10M以内的jpg、jpeg、png格式照片
|
||||
</template>
|
||||
</ai-uploader>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</ai-dialog>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {mapState} from "vuex";
|
||||
|
||||
export default {
|
||||
name: "hrLog",
|
||||
props: {
|
||||
instance: Function,
|
||||
dict: Object,
|
||||
permissions: Function
|
||||
},
|
||||
computed: {
|
||||
...mapState(['user']),
|
||||
addTitle() {
|
||||
return this.form.id ? "编辑走访日志" : "新建走访日志"
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
dialog: false,
|
||||
form: {},
|
||||
rules: {
|
||||
detail: {required: true, message: "请输入走访日志"}
|
||||
},
|
||||
tableData: []
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
getTableData() {
|
||||
let {id: pid} = this.$route.query
|
||||
this.instance.post("/app/apppreventionreturntopovertylog/list", null, {
|
||||
params: {size: 9999, pid, type: 0}
|
||||
}).then(res => {
|
||||
if (res?.data) {
|
||||
this.tableData = res.data?.records || []
|
||||
}
|
||||
})
|
||||
},
|
||||
submit() {
|
||||
this.$refs.DialogForm.validate(v => {
|
||||
if (v) {
|
||||
let {id: pid} = this.$route.query
|
||||
this.instance.post(`/app/apppreventionreturntopovertylog/addOrUpdate`, {
|
||||
...this.form,
|
||||
pid,
|
||||
type: 0
|
||||
}).then(res => {
|
||||
if (res.code == 0) {
|
||||
this.$message.success('提交成功!');
|
||||
this.dialog = false
|
||||
this.getTableData()
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
handleEdit(row) {
|
||||
this.dialog = true
|
||||
this.form = JSON.parse(JSON.stringify(row))
|
||||
},
|
||||
handleDelete(ids) {
|
||||
this.$confirm("是否要删除走访日志").then(() => {
|
||||
this.instance.post("/app/apppreventionreturntopovertylog/delete", null, {
|
||||
params: {ids: ids?.toString()}
|
||||
}).then(res => {
|
||||
if (res?.code == 0) {
|
||||
this.$message.success("删除成功!")
|
||||
this.getTableData()
|
||||
}
|
||||
})
|
||||
}).catch(() => 0)
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.getTableData()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.hrLog {
|
||||
.logItem {
|
||||
position: relative;
|
||||
padding: 8px 16px;
|
||||
border-radius: 4px;
|
||||
|
||||
&:hover {
|
||||
background: #eee;
|
||||
|
||||
.btns {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.content {
|
||||
margin: 8px 0;
|
||||
}
|
||||
|
||||
.btns {
|
||||
display: none;
|
||||
position: absolute;
|
||||
right: 8px;
|
||||
bottom: 8px;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
145
packages/jianping/AppHelpedResident/detail/hrMeasure.vue
Normal file
145
packages/jianping/AppHelpedResident/detail/hrMeasure.vue
Normal file
@@ -0,0 +1,145 @@
|
||||
<template>
|
||||
<section class="hrMeasure">
|
||||
<ai-card title="帮扶措施">
|
||||
<template #right>
|
||||
<el-button type="text" icon="el-icon-plus" @click="dialog=true">添加</el-button>
|
||||
</template>
|
||||
<template #content>
|
||||
<div class="logItem" v-for="row in tableData" :key="row.id">
|
||||
<el-row type="flex" align="middle" justify="space-between">
|
||||
<b v-text="row.createUserName"/>
|
||||
<span v-text="row.createTime"/>
|
||||
</el-row>
|
||||
<div class="content" v-text="row.detail"/>
|
||||
<ai-uploader v-model="row.files" disabled/>
|
||||
<div class="btns">
|
||||
<el-button type="text" @click="handleEdit(row)">编辑</el-button>
|
||||
<el-button type="text" @click="handleDelete(row.id)">删除</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<ai-empty v-if="tableData.length==0"/>
|
||||
</template>
|
||||
</ai-card>
|
||||
<ai-dialog :visible.sync="dialog" :title="addTitle" @closed="form={}" @onConfirm="submit" width="600px">
|
||||
<el-form :model="form" :rules="rules" ref="DialogForm" size="small" label-width="80px">
|
||||
<el-form-item label="帮扶措施" prop="detail">
|
||||
<el-input type="textarea" v-model="form.detail" placeholder="请输入" maxlength="500" show-word-limit rows="5"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="图片" prop="files">
|
||||
<ai-uploader v-model="form.files" :instance="instance" acceptType=".jpg,.jpeg,.png">
|
||||
<template #tips>
|
||||
最多9张,仅支持10M以内的jpg、jpeg、png格式照片
|
||||
</template>
|
||||
</ai-uploader>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</ai-dialog>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {mapState} from "vuex";
|
||||
|
||||
export default {
|
||||
name: "hrMeasure",
|
||||
props: {
|
||||
instance: Function,
|
||||
dict: Object,
|
||||
permissions: Function
|
||||
},
|
||||
computed: {
|
||||
...mapState(['user']),
|
||||
addTitle() {
|
||||
return this.form.id ? "编辑措施" : "新建措施"
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
dialog: false,
|
||||
form: {},
|
||||
rules: {
|
||||
detail: {required: true, message: "请输入帮扶措施"}
|
||||
},
|
||||
tableData: []
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
getTableData() {
|
||||
let {id: pid} = this.$route.query
|
||||
this.instance.post("/app/apppreventionreturntopovertylog/list", null, {
|
||||
params: {size: 9999, pid, type: 1}
|
||||
}).then(res => {
|
||||
if (res?.data) {
|
||||
this.tableData = res.data?.records || []
|
||||
}
|
||||
})
|
||||
},
|
||||
submit() {
|
||||
this.$refs.DialogForm.validate(v => {
|
||||
if (v) {
|
||||
let {id: pid} = this.$route.query
|
||||
this.instance.post(`/app/apppreventionreturntopovertylog/addOrUpdate`, {
|
||||
...this.form,
|
||||
pid,
|
||||
type: 1
|
||||
}).then(res => {
|
||||
if (res.code == 0) {
|
||||
this.$message.success('提交成功!');
|
||||
this.dialog = false
|
||||
this.getTableData()
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
handleEdit(row) {
|
||||
this.dialog = true
|
||||
this.form = JSON.parse(JSON.stringify(row))
|
||||
},
|
||||
handleDelete(ids) {
|
||||
this.$confirm("是否要删除帮扶措施").then(() => {
|
||||
this.instance.post("/app/apppreventionreturntopovertylog/delete", null, {
|
||||
params: {ids: ids?.toString()}
|
||||
}).then(res => {
|
||||
if (res?.code == 0) {
|
||||
this.$message.success("删除成功!")
|
||||
this.getTableData()
|
||||
}
|
||||
})
|
||||
}).catch(() => 0)
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.getTableData()
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.hrMeasure {
|
||||
.logItem {
|
||||
position: relative;
|
||||
padding: 8px 16px;
|
||||
border-radius: 4px;
|
||||
|
||||
&:hover {
|
||||
background: #eee;
|
||||
|
||||
.btns {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.content {
|
||||
margin: 8px 0;
|
||||
}
|
||||
|
||||
.btns {
|
||||
display: none;
|
||||
position: absolute;
|
||||
right: 8px;
|
||||
bottom: 8px;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@@ -21,6 +21,11 @@
|
||||
<el-button type="primary" @click="handleAccept(1)">纳入监测</el-button>
|
||||
<el-button v-if="isGridAdmin" icon="iconfont iconDelete" @click="handleDelete(detail.id)">删除</el-button>
|
||||
</template>
|
||||
<template v-if="/5/.test(detail.status)">
|
||||
<el-button v-if="isGridAdmin" type="primary" @click="handleAccept(1)">纳入监测</el-button>
|
||||
<el-button v-else type="primary" @click="handleAccept()">申请纳入监测</el-button>
|
||||
<el-button v-if="isGridAdmin" icon="iconfont iconDelete" @click="handleDelete(detail.id)">删除</el-button>
|
||||
</template>
|
||||
<el-button v-if="/4/g.test(detail.status)" icon="iconfont iconDelete" @click="handleDelete(detail.id)">
|
||||
删除
|
||||
</el-button>
|
||||
@@ -175,54 +180,27 @@
|
||||
</ai-card>
|
||||
</template>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="帮扶日志" lazy name="log">
|
||||
<ai-card title="帮扶日志">
|
||||
<template #right>
|
||||
<el-button type="text" icon="el-icon-plus" @click="dialog=true">添加</el-button>
|
||||
</template>
|
||||
<template #content>
|
||||
<div class="logItem" v-for="row in tableData" :key="row.id">
|
||||
<el-row type="flex" align="middle" justify="space-between">
|
||||
<b v-text="row.createUserName"/>
|
||||
<span v-text="row.createTime"/>
|
||||
</el-row>
|
||||
<div class="content" v-text="row.detail"/>
|
||||
<ai-uploader v-model="row.files" disabled/>
|
||||
<div class="btns">
|
||||
<el-button type="text" @click="handleEditLog(row)">编辑</el-button>
|
||||
<el-button type="text" @click="handleDeleteLog(row.id)">删除</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<ai-empty v-if="tableData.length==0"/>
|
||||
</template>
|
||||
</ai-card>
|
||||
<el-tab-pane label="走访日志" lazy name="HrLog">
|
||||
<hr-log v-if="currentTab=='HrLog'" :instance="instance" :dict="dict" :permissions="permissions"/>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="帮扶措施" lazy name="HrMeasure">
|
||||
<hr-measure v-if="currentTab=='HrMeasure'" :instance="instance" :dict="dict" :permissions="permissions"/>
|
||||
</el-tab-pane>
|
||||
</el-tabs>
|
||||
</el-form>
|
||||
</template>
|
||||
</ai-detail>
|
||||
<ai-dialog :visible.sync="dialog" title="新建日志" @closed="form={}" @onConfirm="submitHelpLog" width="600px">
|
||||
<el-form :model="form" :rules="rules" ref="DialogForm" size="small" label-width="80px">
|
||||
<el-form-item label="帮扶日志" prop="detail">
|
||||
<el-input type="textarea" v-model="form.detail" placeholder="请输入" maxlength="500" show-word-limit rows="5"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="图片" prop="files">
|
||||
<ai-uploader v-model="form.files" :instance="instance" acceptType=".jpg,.jpeg,.png">
|
||||
<template #tips>
|
||||
最多9张,仅支持10M以内的jpg、jpeg、png格式照片
|
||||
</template>
|
||||
</ai-uploader>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
</ai-dialog>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {mapState} from "vuex";
|
||||
import HrMeasure from "./detail/hrMeasure";
|
||||
import HrLog from "./detail/hrLog";
|
||||
|
||||
export default {
|
||||
name: "hrDetail",
|
||||
components: {HrLog, HrMeasure},
|
||||
props: {
|
||||
instance: Function,
|
||||
dict: Object,
|
||||
@@ -248,23 +226,10 @@ export default {
|
||||
return [countyName, townName, villageName, currentAddress].join("")
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
currentTab(v) {
|
||||
if (v == "log") {
|
||||
this.getHelpLogs()
|
||||
}
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
detail: {},
|
||||
dialog: false,
|
||||
form: {},
|
||||
rules: {
|
||||
detail: {required: true, message: "请输入帮扶内容"}
|
||||
},
|
||||
currentTab: "",
|
||||
tableData: []
|
||||
currentTab: ""
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
@@ -278,7 +243,7 @@ export default {
|
||||
}).then(res => {
|
||||
if (res?.data) {
|
||||
this.detail = res.data
|
||||
this.detail.family.map(e => {
|
||||
this.detail.family?.map(e => {
|
||||
e.householdRelation = e.householdRelation || "户主"
|
||||
})
|
||||
}
|
||||
@@ -301,7 +266,7 @@ export default {
|
||||
}).catch(() => 0)
|
||||
},
|
||||
handleAccept(pass) {
|
||||
let msg = pass == 1 ? "是否将该人员纳入监测对象?" : "是否驳回纳入监测对象申请?", {id} = this.detail
|
||||
let msg = pass == 0 ? "是否驳回纳入监测对象申请?" : `是否${isNaN(pass) ? '(申请)' : ''}纳入监测对象?`, {id} = this.detail
|
||||
this.$confirm(msg).then(() => {
|
||||
this.instance.post("/app/apppreventionreturntopoverty/examine", null, {
|
||||
params: {pass, id}
|
||||
@@ -326,46 +291,6 @@ export default {
|
||||
})
|
||||
}).catch(() => 0)
|
||||
},
|
||||
getHelpLogs() {
|
||||
let {id: pid} = this.detail
|
||||
this.instance.post("/app/apppreventionreturntopovertylog/list", null, {
|
||||
params: {size: 9999, pid}
|
||||
}).then(res => {
|
||||
if (res?.data) {
|
||||
this.tableData = res.data?.records || []
|
||||
}
|
||||
})
|
||||
},
|
||||
submitHelpLog() {
|
||||
this.$refs.DialogForm.validate(v => {
|
||||
if (v) {
|
||||
let {id: pid} = this.detail
|
||||
this.instance.post(`/app/apppreventionreturntopovertylog/addOrUpdate`, {...this.form, pid}).then(res => {
|
||||
if (res.code == 0) {
|
||||
this.$message.success('提交成功!');
|
||||
this.dialog = false
|
||||
this.getHelpLogs()
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
handleEditLog(row) {
|
||||
this.dialog = true
|
||||
this.form = JSON.parse(JSON.stringify(row))
|
||||
},
|
||||
handleDeleteLog(ids) {
|
||||
this.$confirm("是否要删除帮扶日志").then(() => {
|
||||
this.instance.post("/app/apppreventionreturntopovertylog/delete", null, {
|
||||
params: {ids: ids?.toString()}
|
||||
}).then(res => {
|
||||
if (res?.code == 0) {
|
||||
this.$message.success("删除成功!")
|
||||
this.getHelpLogs()
|
||||
}
|
||||
})
|
||||
}).catch(() => 0)
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.getDetail()
|
||||
@@ -397,33 +322,9 @@ export default {
|
||||
}
|
||||
}
|
||||
|
||||
.el-date-editor {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.logItem {
|
||||
position: relative;
|
||||
padding: 8px 16px;
|
||||
border-radius: 4px;
|
||||
|
||||
&:hover {
|
||||
background: #eee;
|
||||
|
||||
.btns {
|
||||
display: block;
|
||||
}
|
||||
}
|
||||
|
||||
.content {
|
||||
margin: 8px 0;
|
||||
}
|
||||
|
||||
.btns {
|
||||
display: none;
|
||||
position: absolute;
|
||||
right: 8px;
|
||||
bottom: 8px;
|
||||
}
|
||||
::v-deep.el-tabs__content {
|
||||
max-height: calc(100vh - 136px);
|
||||
overflow-y: auto;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -7,6 +7,10 @@
|
||||
<template #left>
|
||||
<el-button type="primary" icon="iconfont iconAdd" @click="dialog=true">增加</el-button>
|
||||
</template>
|
||||
<template #right>
|
||||
<el-input size="small" placeholder="搜索项目/系统" v-model="search.name" clearable
|
||||
@change="page.current=1,getTableData()"/>
|
||||
</template>
|
||||
</ai-search-bar>
|
||||
<ai-table :tableData="tableData" :total="page.total" :current.sync="page.current" :size.sync="page.size"
|
||||
@getList="getTableData" :col-configs="colConfigs" :dict="dict">
|
||||
@@ -87,7 +91,19 @@ export default {
|
||||
})
|
||||
},
|
||||
handleDownload(row) {
|
||||
let loading = this.$loading({
|
||||
lock: true, text: "正在打包文件...",
|
||||
spinner: 'el-icon-loading',
|
||||
background: 'rgba(0, 0, 0, 0.7)'
|
||||
}), {id} = row
|
||||
this.instance.post("/node/autodeploy/getZip", null, {
|
||||
params: {id}
|
||||
}).then(res => {
|
||||
loading.close()
|
||||
if (res?.code == 0) {
|
||||
|
||||
}
|
||||
})
|
||||
},
|
||||
handleEdit(row) {
|
||||
this.form = JSON.parse(JSON.stringify(row))
|
||||
|
||||
@@ -3,6 +3,8 @@
|
||||
<ai-detail>
|
||||
<ai-title slot="title" title="经营主体详情" isShowBottomBorder isShowBack @onBackClick="$router.push({query:{}})"/>
|
||||
<template #content>
|
||||
<ai-sidebar :tabTitle="menuList" v-model="index" @change="change"></ai-sidebar>
|
||||
<template v-if="index==0">
|
||||
<el-form size="small" label-width="160px">
|
||||
<ai-card title="营业执照">
|
||||
<template #content>
|
||||
@@ -39,6 +41,16 @@
|
||||
</template>
|
||||
</ai-card>
|
||||
</el-form>
|
||||
</template>
|
||||
<template v-if="index==1">
|
||||
<ai-card title="股权结构">
|
||||
<!-- <el-button type="text">+添加股东</el-button> -->
|
||||
<ai-table :tableData="tableData" :total="page.total" :current.sync="page.current" :size.sync="page.size"
|
||||
@getList="getTableData" :col-configs="colConfigs">
|
||||
|
||||
</ai-table>
|
||||
</ai-card>
|
||||
</template>
|
||||
|
||||
</template>
|
||||
</ai-detail>
|
||||
@@ -56,11 +68,25 @@ export default {
|
||||
computed: {
|
||||
isAuthing() {
|
||||
return this.detail.status == "0"
|
||||
},
|
||||
colConfigs() {
|
||||
return [
|
||||
{prop: "", label: "股东名称", width: 150},
|
||||
{prop: "", label: "股东类型", width: 150},
|
||||
{prop: "", label: "身份证/信用代码", width: 240},
|
||||
{prop: "", label: "持股数量", width: 150},
|
||||
{prop: "", label: "持股占比", width: 150},
|
||||
{prop: "", label: "股权证", width: 200},
|
||||
]
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
detail: {},
|
||||
menuList: ['基本信息','股权结构'],
|
||||
index: 0,
|
||||
tableData: [],
|
||||
page: {current: 1, size: 10, total: 0},
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
@@ -74,6 +100,20 @@ export default {
|
||||
}
|
||||
})
|
||||
},
|
||||
change(index) {
|
||||
this.currentMenu = index
|
||||
this.getDetail()
|
||||
},
|
||||
getTableData() {
|
||||
// this.instance.post("/app/appdvcpconfig/list", null, {
|
||||
// params: {...this.page, ...this.search}
|
||||
// }).then(res => {
|
||||
// if (res?.data) {
|
||||
// this.tableData = res.data?.records
|
||||
// this.page.total = res.data.total
|
||||
// }
|
||||
// })
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.getDetail()
|
||||
|
||||
@@ -5,6 +5,10 @@
|
||||
@change="page.current=1,getTableData()"/>
|
||||
<template #content>
|
||||
<ai-search-bar>
|
||||
<template #left>
|
||||
<ai-select v-model="select.enterpriseType" @change="typeChange" placeholder="企业类型" :selectList="$dict.getDict('enterpriseType')"></ai-select>
|
||||
<ai-select v-model="select.enterpriseStatus" @change="statusChange" placeholder="认证状态" :selectList="$dict.getDict('userEnterpriseStatus')"></ai-select>
|
||||
</template>
|
||||
<template #right>
|
||||
<el-input size="small" placeholder="搜索企业名称、法人姓名、登录账号" v-model="search.enterpriseName" clearable
|
||||
@change="page.current=1,getTableData()"/>
|
||||
@@ -40,23 +44,24 @@ export default {
|
||||
return {
|
||||
search: {name: ""},
|
||||
page: {current: 1, size: 10, total: 0},
|
||||
select: {enterpriseType: '', enterpriseStatus: ''},
|
||||
tableData: [],
|
||||
colConfigs: [
|
||||
{label: "企业名称", prop: "enterpriseName"},
|
||||
{label: "企业类型", prop: "enterpriseType", dict: "enterpriseType"},
|
||||
{label: "所属地区", prop: "areaName"},
|
||||
{label: "所属区划", prop: "areaName"},
|
||||
{label: "法人姓名", prop: "legalPersonName"},
|
||||
{label: "联系方式", prop: "phone"},
|
||||
{label: "创建时间", prop: "createTime"},
|
||||
{label: "登录账号", prop: "loginAccount"},
|
||||
{slot: "options"}
|
||||
{slot: "options"},
|
||||
]
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
getTableData() {
|
||||
this.instance.post("/appportaluserenterprise/list", null, {
|
||||
params: {...this.page, ...this.search, status: 1}
|
||||
params: {...this.page, ...this.search, status: 1,...this.select}
|
||||
}).then(res => {
|
||||
if (res?.data) {
|
||||
this.tableData = res.data?.records
|
||||
@@ -66,9 +71,18 @@ export default {
|
||||
},
|
||||
showDetail(id) {
|
||||
this.$router.push({query: {id}})
|
||||
},
|
||||
typeChange(v) {
|
||||
this.select.enterpriseType = v
|
||||
this.getTableData()
|
||||
},
|
||||
statusChange(v) {
|
||||
this.select.enterpriseStatus = v
|
||||
this.getTableData()
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.dict.load('userEnterpriseStatus')
|
||||
this.getTableData()
|
||||
this.search.areaId = this.user.info.areaId
|
||||
}
|
||||
|
||||
@@ -76,7 +76,7 @@ export default {
|
||||
colConfigs: [
|
||||
{label: "所属金融机构", prop: "organizationName"},
|
||||
{label: "成员姓名", prop: "name"},
|
||||
{label: "成员职务", prop: "userRole", dict: "financialOrganizationUserRole"},
|
||||
{label: "成员角色", prop: "userRole", dict: "financialOrganizationUserRole"},
|
||||
{label: "创建人", prop: "createUserName", align: 'center', width: "120px"},
|
||||
{label: "创建时间", prop: "createTime"},
|
||||
{slot: "options"}
|
||||
|
||||
Reference in New Issue
Block a user