Commit b5a4c6f7 authored by 姬鋆屾's avatar 姬鋆屾

feat:新增网上办理渠道

parent ea5fffe1
#开发环境
NODE_ENV = "development"
VUE_APP_API_BASE_URL=http://192.168.0.98:11078
VUE_APP_API_IMG_URL=http://192.168.0.98:11078/
VUE_APP_API_BASE_URL=http://192.168.0.250:11071
VUE_APP_API_IMG_URL=http://192.168.0.250:11071/
# VUE_APP_API_BASE_URL=http://192.168.0.98:11078
# VUE_APP_API_IMG_URL=http://192.168.0.98:11078/
#VUE_APP_API_BASE_URL=http://10.12.185.213:11071
\ No newline at end of file
......@@ -62,6 +62,12 @@
常见问题
</span>
</a-tab-pane>
<a-tab-pane key="InternetChannel">
<span slot="tab">
<a-icon type="wifi" />
网上办理渠道
</span>
</a-tab-pane>
</a-tabs>
<div class="flex1 pdr15 pdb15 pdl15 auto-scroll-y">
<components :is="active"></components>
......@@ -79,6 +85,7 @@ import Rates from "./components/rates.vue";
import Pursuant from "./components/pursuant.vue";
import Agency from "./components/agency.vue";
import Question from "./components/question.vue";
import InternetChannel from "./components/InternetChannel.vue";
export default {
data() {
return {
......@@ -95,6 +102,7 @@ export default {
Pursuant,
Agency,
Question,
InternetChannel,
},
computed: {},
......
......@@ -138,6 +138,18 @@
</a-form-model-item>
</a-col>
</a-row>
<a-row>
<a-col :span="8">
<a-form-model-item label="办理流程图" props="tid">
<YUpload
accept=".png,.jpg,.jpeg,.svg"
:limit="1"
v-model="baseform.tid"
listType="picture-card"
></YUpload>
</a-form-model-item>
</a-col>
</a-row>
<!-- 窗口办理 -->
<div class="flex jcb aic">
<div class="color_title">窗口办理</div>
......@@ -319,7 +331,12 @@ import {
// addMatterToSite,
getMatterInfo,
} from "@/services/matter";
import YUpload from "@/components/YUpload.vue";
export default {
components: {
YUpload,
},
data() {
return {
siteId: local.getLocal("siteId"), // 站点id
......@@ -359,6 +376,7 @@ export default {
operateSite: "", // 办理地点
cousultingShow: "", // 咨询方式
superviseShow: "", // 监督投诉方式
tid: "", //办理流程图
},
deptData: [], // 部门列表
rules: {
......
<template>
<div class="basicset-tab4">
<div class="left">
<div class="header">
<div class="titel">网上办理渠道</div>
</div>
<div class="table-content">
<div class="add_box" v-for="(val, index) in arrType" :key="index">
<a-icon
type="close-circle"
class="close_icon"
@click="handleDel(val, index)"
/>
<div :class="['add_text', 'green']" v-if="val.appType == 1">
移动端
</div>
<div :class="['add_text']" v-else>PC端</div>
<a-form-item
:label="val.appType == 1 ? '应用名称:' : '网站名称:'"
prop="name"
:label-col="{ span: 6 }"
:wrapper-col="{ span: 12 }"
>
<a-input v-model="val.name"></a-input>
</a-form-item>
<a-form-item
label="图标:"
prop="icon"
:label-col="{ span: 6 }"
:wrapper-col="{ span: 12 }"
>
<YUpload
accept=".png,.jpg,.jpeg,.svg"
:limit="1"
v-model="val.icon"
listType="picture-card"
></YUpload>
</a-form-item>
<a-form-item
label="二维码:"
prop="qrCode"
v-if="val.appType == 1"
:label-col="{ span: 6 }"
:wrapper-col="{ span: 12 }"
>
<YUpload
accept=".png,.jpg,.jpeg,.svg"
:limit="1"
v-model="val.qrCode"
listType="picture-card"
></YUpload>
</a-form-item>
<a-form-item
label="链接地址:"
prop="url"
v-else
:label-col="{ span: 6 }"
:wrapper-col="{ span: 12 }"
>
<a-input v-model="val.url"></a-input>
</a-form-item>
</div>
<div class="add_btn">
<a-button style="margin-right: 20px" @click="handleAdd(1)">
+ 添加PC端
</a-button>
<a-button
type="primary"
style="margin-right: 20px; background-color: #67c23a"
@click="handleSave"
>
保存
</a-button>
<a-button @click="handleAdd(2)"> + 添加移动端 </a-button>
</div>
</div>
</div>
</div>
</template>
<script>
import {
addMatterInternet,
getMatterInternetList,
delMatterInternet,
} from "@/services/matter";
import YUpload from "@/components/YUpload.vue";
import local from "@/utils/local";
export default {
components: { YUpload },
data() {
return {
arrType: [],
form: {
name: "",
qrcode: "",
appType: "",
url: "",
icon: "",
},
};
},
created() {
this.getList();
},
methods: {
handleAdd(i) {
this.arrType.push({
name: "",
qrcode: "",
appType: i == 1 ? 0 : 1,
url: "",
icon: "",
});
},
async handleDel(val, i) {
this.arrType = this.arrType.filter((v, index) => index != i);
if (val.id) {
let res = await delMatterInternet({ id: val.id });
let { code, msg } = res.data;
if (code == 1) {
this.$message.success(msg);
} else {
this.$$message.error(msg);
}
}
},
async handleSave() {
console.log(this.arrType);
let arr = this.arrType.filter((v) => v);
arr.forEach((v) => {
local.getLocal("matter").matterName
? (v.matterName = local.getLocal("matter").matterName)
: (v.matterName = "");
local.getLocal("matter").id
? (v.matterId = local.getLocal("matter").id)
: (v.matterId = "");
});
let res = await addMatterInternet(arr);
console.log(res);
let { code, msg } = res.data;
if (code == 1) {
this.$message.success(msg);
} else {
this.$message.error(msg);
}
},
async getList() {
let res = await getMatterInternetList({
matterId: local.getLocal("matter").id,
});
let { code, data } = res.data;
if (code == 1) {
this.arrType = data.data;
} else {
this.arrType = [];
}
console.log(res);
},
},
};
</script>
<style lang="less" scoped>
.basicset-tab4 {
width: 100%;
height: 100%;
padding: 0px 20px;
.header {
margin-bottom: 15px;
.titel {
font-size: 14px;
font-weight: bold;
color: rgba(0, 0, 0, 0.65);
margin-bottom: 15px;
}
}
.table-content {
width: 100%;
height: 680px;
overflow-y: auto;
display: flex;
flex-direction: column;
align-items: center;
.add_box {
width: 50%;
background: #fafafa;
position: relative;
padding: 20px;
margin-bottom: 20px;
.close_icon {
position: absolute;
left: 0px;
top: 0px;
font-size: 18px;
color: #f56c6c;
font-weight: 700;
}
.add_text {
border-width: 0px;
position: absolute;
right: 0px;
top: 0px;
width: 40px;
height: 20px;
background: inherit;
background-color: rgba(55, 100, 255, 0.0980392156862745);
border: none;
border-radius: 18px;
border-top-left-radius: 0px;
border-top-right-radius: 0px;
border-bottom-right-radius: 0px;
-moz-box-shadow: none;
-webkit-box-shadow: none;
box-shadow: none;
font-weight: 400;
font-style: normal;
font-size: 12px;
color: #3764ff;
text-align: center;
}
.green {
background-color: rgba(0, 191, 88, 0.0980392156862745);
color: #00bf58;
}
}
.add_btn {
width: 100%;
padding: 20px;
text-align: center;
}
}
}
</style>
\ No newline at end of file
......@@ -272,6 +272,18 @@
</a-form-model-item>
</a-col>
</a-row>
<a-row>
<a-col :span="8">
<a-form-model-item label="办理流程图" props="tid">
<YUpload
accept=".png,.jpg,.jpeg,.svg"
:limit="1"
v-model="baseform.tid"
listType="picture-card"
></YUpload>
</a-form-model-item>
</a-col>
</a-row>
<!-- 窗口办理 -->
<div class="color_title mt">窗口办理</div>
<a-row>
......@@ -805,6 +817,8 @@
</template>
<script>
import YUpload from "@/components/YUpload.vue";
import {
saveAddMatter,
// addMatterToSite
......@@ -813,6 +827,9 @@ import { getDeptList } from "@/services/dept";
import local from "@/utils/local";
import { mapGetters } from "vuex";
export default {
components: {
YUpload,
},
data() {
return {
loading: false,
......@@ -881,7 +898,8 @@ export default {
operateTime: "", // 办理时间
operateSite: "", // 办理地点
cousultingShow: "", // 咨询方式
superviseShow: "", // 监督投诉方式
superviseShow: "", // 监督投诉方式,
tid: "", //办理流程图
},
// 基础信息校验
baseformRules: {
......
......@@ -118,6 +118,12 @@ module.exports = {
delete: `${BASE_URL}/base/matter/flowlimit/delete`,
exportExcel: `${BASE_URL}/base/matter/flowlimit/exportExcel`,
},
// 网上办理渠道流程
matterInternet: {
list: `${BASE_URL}/base/matter/channel/list`,
save: `${BASE_URL}/base/matter/channel/batchSave`,
delete: `${BASE_URL}/base/matter/channel/delete`,
},
// 事项中介服务
matterintermediary: {
list: `${BASE_URL}/base/matter/intermediary/list`,
......
......@@ -9,6 +9,7 @@ import {
matterintermediary,
matterflowlimit,
mattercharges,
matterInternet,
} from "@/services/basicsetApi";
import { request, METHOD } from "@/utils/request";
......@@ -165,6 +166,21 @@ export async function getMatterflowlimitList(data) {
export async function delMatterflowlimit(data) {
return request(matterflowlimit.delete, METHOD.GET, data);
}
/**
* 网上办理流程
*/
// 新增办理流程
export async function addMatterInternet(data) {
return request(matterInternet.save, METHOD.POST, data);
}
// 获取办理流程列表
export async function getMatterInternetList(data) {
return request(matterInternet.list, METHOD.POST, data);
}
// 删除流程
export async function delMatterInternet(data) {
return request(matterInternet.delete, METHOD.GET, data);
}
/**
* 收费标准
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment