| @@ -0,0 +1,45 @@ | |||||
| import request from '@/utils/request' | |||||
| // 查询其他公开列表 | |||||
| export function listOther(query) { | |||||
| return request({ | |||||
| url: '/subcontract/other/list', | |||||
| method: 'get', | |||||
| params: query | |||||
| }) | |||||
| } | |||||
| // 查询其他公开详细 | |||||
| export function getOther(id) { | |||||
| return request({ | |||||
| url: '/subcontract/other/get/' + id, | |||||
| method: 'get' | |||||
| }) | |||||
| } | |||||
| // 新增其他公开 | |||||
| export function addOther(data) { | |||||
| return request({ | |||||
| url: '/subcontract/other/add', | |||||
| method: 'post', | |||||
| data: data | |||||
| }) | |||||
| } | |||||
| // 修改其他公开 | |||||
| export function updateOther(data) { | |||||
| return request({ | |||||
| url: '/subcontract/other/edit', | |||||
| method: 'post', | |||||
| data: data | |||||
| }) | |||||
| } | |||||
| // 删除其他公开 | |||||
| export function delOther(id) { | |||||
| return request({ | |||||
| url: '/subcontract/other/remove/' + id, | |||||
| method: 'get' | |||||
| }) | |||||
| } | |||||
| @@ -3795,6 +3795,33 @@ export const constantRoutes = [ | |||||
| }, | }, | ||||
| component: (resolve) => require(['@/views/sunVillage_info/registration/registrationEdit'], resolve) | component: (resolve) => require(['@/views/sunVillage_info/registration/registrationEdit'], resolve) | ||||
| }, | }, | ||||
| { ////阳光村务(新)-- 综合公开 | |||||
| path: '/sunVillage_info/otherOpenIndex', | |||||
| name: 'otherOpenIndex', | |||||
| meta: { | |||||
| title: '综合公开', | |||||
| hidden: true, | |||||
| }, | |||||
| component: (resolve) => require(['@/views/sunVillage_info/otherOpen/otherOpenList'], resolve) | |||||
| }, | |||||
| { ////阳光村务(新)-- 综合公开详情 | |||||
| path: '/sunVillage_info/otherOpenDetail', | |||||
| name: 'otherOpenDetail', | |||||
| meta: { | |||||
| title: '综合公开详情', | |||||
| hidden: true, | |||||
| }, | |||||
| component: (resolve) => require(['@/views/sunVillage_info/otherOpen/otherOpenDetail'], resolve) | |||||
| }, | |||||
| { ////阳光村务(新)-- 新增/编辑综合公开 | |||||
| path: '/sunVillage_info/otherOpenEdit', | |||||
| name: 'otherOpenEdit', | |||||
| meta: { | |||||
| title: '编辑综合公开', | |||||
| hidden: true, | |||||
| }, | |||||
| component: (resolve) => require(['@/views/sunVillage_info/otherOpen/otherOpenEdit'], resolve) | |||||
| }, | |||||
| { ////阳光村务(新)-- 发包方审核 | { ////阳光村务(新)-- 发包方审核 | ||||
| path: '/sunVillage_info/list_employer_process', | path: '/sunVillage_info/list_employer_process', | ||||
| @@ -5,7 +5,10 @@ | |||||
| <div class="address"><i class="icon"></i>{{deptName}}</div> | <div class="address"><i class="icon"></i>{{deptName}}</div> | ||||
| <div class="address">{{bookName}}</div> | |||||
| <div class="address" @click="bookVisbile = true">{{bookName}}</div> | |||||
| <van-popup v-model="bookVisbile" round position="bottom"> | |||||
| <van-picker title="请选择账套" show-toolbar :columns="bookList" @confirm="onConfirmBook" @cancel="onCancelBook" value-key="bookName"/> | |||||
| </van-popup> | |||||
| </div> | </div> | ||||
| <div class="exit_btn" @click="$router.push({name:'sunVillageInfoLogin'})"> | <div class="exit_btn" @click="$router.push({name:'sunVillageInfoLogin'})"> | ||||
| @@ -65,7 +68,7 @@ | |||||
| </div> | </div> | ||||
| </template> | </template> | ||||
| <script> | <script> | ||||
| import {bookInfo, nologinMenus} from "@/api/sunVillage_info/fixedAssets"; | |||||
| import {bookInfo, listByDeptId, nologinMenus} from "@/api/sunVillage_info/fixedAssets"; | |||||
| import { sysConfig } from "@/api/homesteadSurvey/index"; | import { sysConfig } from "@/api/homesteadSurvey/index"; | ||||
| import Cookies from "js-cookie"; | import Cookies from "js-cookie"; | ||||
| export default { | export default { | ||||
| @@ -102,7 +105,7 @@ | |||||
| }; | }; | ||||
| }, | }, | ||||
| created() { | created() { | ||||
| console.log(this.$store) | |||||
| //console.log(this.$store) | |||||
| if(this.$route.query.bookId){ | if(this.$route.query.bookId){ | ||||
| bookInfo(this.$route.query.bookId).then((res) => { | bookInfo(this.$route.query.bookId).then((res) => { | ||||
| @@ -143,6 +146,7 @@ | |||||
| this.configValue = res.rows[0].configValue; | this.configValue = res.rows[0].configValue; | ||||
| } | } | ||||
| }); | }); | ||||
| this.getBookList(this.$route.query.deptId); | |||||
| }, | }, | ||||
| methods: { | methods: { | ||||
| goCode(){ | goCode(){ | ||||
| @@ -151,7 +155,27 @@ | |||||
| }else{ | }else{ | ||||
| this.$router.push({path:'/sunVillage_info/login_code'}) | this.$router.push({path:'/sunVillage_info/login_code'}) | ||||
| } | } | ||||
| } | |||||
| }, | |||||
| onConfirmBook(e){ | |||||
| this.bookVisbile = false; | |||||
| const url = `/sunVillage_info/index_code?bookId=${e.id}&deptId=${this.$route.query.deptId}`; | |||||
| this.$router.replace(url, () => { | |||||
| window.location.href = url; | |||||
| }); | |||||
| }, | |||||
| onCancelBook(e){ | |||||
| this.bookVisbile = false | |||||
| }, | |||||
| getBookList(e){ | |||||
| let params = { | |||||
| loginDeptID:e | |||||
| } | |||||
| listByDeptId(params).then((response) => { | |||||
| if (response.code == 200) { | |||||
| this.bookList = response.rows; | |||||
| } | |||||
| }) | |||||
| }, | |||||
| }, | }, | ||||
| } | } | ||||
| </script> | </script> | ||||
| @@ -36,7 +36,7 @@ | |||||
| :border="false" | :border="false" | ||||
| > | > | ||||
| </van-field> | </van-field> | ||||
| <CommonUpload name="openPic" v-model="form.openPic" multiple/> | |||||
| <CommonUpload name="openPic" v-model="form.openPic" accept="image/*" multiple/> | |||||
| <van-field | <van-field | ||||
| name="openPic2" | name="openPic2" | ||||
| @@ -45,7 +45,7 @@ | |||||
| :border="false" | :border="false" | ||||
| > | > | ||||
| </van-field> | </van-field> | ||||
| <CommonUpload name="openPic2" v-model="form.openPic2" multiple/> | |||||
| <CommonUpload name="openPic2" v-model="form.openPic2" accept="image/*" multiple/> | |||||
| <van-field | <van-field | ||||
| name="openPic3" | name="openPic3" | ||||
| @@ -54,7 +54,7 @@ | |||||
| :border="false" | :border="false" | ||||
| > | > | ||||
| </van-field> | </van-field> | ||||
| <CommonUpload name="openPic3" v-model="form.openPic3" multiple/> | |||||
| <CommonUpload name="openPic3" v-model="form.openPic3" accept="image/*" multiple/> | |||||
| <van-field v-model="form.remark" label="备注" placeholder="备注" input-align="right" :border="false" /> | <van-field v-model="form.remark" label="备注" placeholder="备注" input-align="right" :border="false" /> | ||||
| @@ -36,7 +36,7 @@ | |||||
| :border="false" | :border="false" | ||||
| > | > | ||||
| </van-field> | </van-field> | ||||
| <CommonUpload name="openPic" v-model="form.openPic" multiple/> | |||||
| <CommonUpload name="openPic" v-model="form.openPic" accept="image/*" multiple/> | |||||
| <van-field | <van-field | ||||
| name="openPic2" | name="openPic2" | ||||
| @@ -45,7 +45,7 @@ | |||||
| :border="false" | :border="false" | ||||
| > | > | ||||
| </van-field> | </van-field> | ||||
| <CommonUpload name="openPic2" v-model="form.openPic2" multiple/> | |||||
| <CommonUpload name="openPic2" v-model="form.openPic2" accept="image/*" multiple/> | |||||
| <van-field | <van-field | ||||
| name="openPic3" | name="openPic3" | ||||
| @@ -54,7 +54,7 @@ | |||||
| :border="false" | :border="false" | ||||
| > | > | ||||
| </van-field> | </van-field> | ||||
| <CommonUpload name="openPic3" v-model="form.openPic3" multiple/> | |||||
| <CommonUpload name="openPic3" v-model="form.openPic3" accept="image/*" multiple/> | |||||
| <van-field v-model="form.remark" label="备注" placeholder="备注" input-align="right" :border="false" /> | <van-field v-model="form.remark" label="备注" placeholder="备注" input-align="right" :border="false" /> | ||||
| @@ -0,0 +1,179 @@ | |||||
| <template> | |||||
| <div class="home_wrapper"> | |||||
| <div class="header_main"> | |||||
| {{title}} | |||||
| <div class="return_btn" @click="back"></div> | |||||
| </div> | |||||
| <van-form ref="formData" :readonly="true"> | |||||
| <div class="list_main"> | |||||
| <van-field name="otherName" :value="form.otherName" label="公开名称" input-align="right" :border="false" /> | |||||
| <van-field name="openAt" :value="form.openAt" label="公开时间" input-align="right" :border="false" /> | |||||
| <van-field name="openContent" label="公开内容" input-align="right" :border="false" /> | |||||
| <div class="open-content" v-html="form.openContent"></div> | |||||
| <van-field | |||||
| name="openPic" | |||||
| label="公开图片" | |||||
| input-align="right" | |||||
| :border="false" | |||||
| > | |||||
| </van-field> | |||||
| <CommonUpload name="openPic" :value="form.openPic" multiple :deletable="false" :show-upload="false"/> | |||||
| <van-field | |||||
| name="openFile" | |||||
| label="公开文件" | |||||
| input-align="right" | |||||
| :border="false" | |||||
| > | |||||
| </van-field> | |||||
| <CommonUpload name="openFile" :value="form.openFile" multiple :deletable="false" :show-upload="false"/> | |||||
| <van-field name="remake" :value="form.remark" label="备注" input-align="left" :border="false"/> | |||||
| </div> | |||||
| </van-form> | |||||
| </div> | |||||
| </template> | |||||
| <script> | |||||
| import CommonUpload from "@/components/form/CommonUpload.vue"; | |||||
| import {getRegistration} from "@/api/sunVillage_info/registration"; | |||||
| import {getOther} from "@/api/sunVillage_info/otherOpen"; | |||||
| export default { | |||||
| name: "otherOpenDetail", | |||||
| components: {CommonUpload}, | |||||
| data() { | |||||
| return { | |||||
| form: { | |||||
| id: null, | |||||
| bookId: null, | |||||
| deptId: null, | |||||
| deptName: null, | |||||
| otherName: null, | |||||
| otherType: '1', | |||||
| openYear: null, | |||||
| openAt: null, | |||||
| openContent: null, | |||||
| openFile: null, | |||||
| openPic: null, | |||||
| remark: null, | |||||
| createBy: null, | |||||
| createTime: null, | |||||
| updateBy: null, | |||||
| updateTime: null, | |||||
| }, | |||||
| id:'', | |||||
| title: '综合公开', | |||||
| }; | |||||
| }, | |||||
| created() { | |||||
| this.id = this.$route.query.id; | |||||
| this.getDetail(); | |||||
| }, | |||||
| methods: { | |||||
| getDetail() { | |||||
| if(!this.id) | |||||
| { | |||||
| this.back(); | |||||
| return; | |||||
| } | |||||
| getOther(this.id).then((resp) => { | |||||
| this.form = resp.data; | |||||
| this.getDicts('other_gk_type').then((resp) => { | |||||
| const dict = resp.data.find((x) => x.dictValue == this.form.otherType); | |||||
| if(dict) | |||||
| this.title = dict.dictLabel; | |||||
| }); | |||||
| }); | |||||
| }, | |||||
| back() { | |||||
| this.$router.back(); | |||||
| }, | |||||
| }, | |||||
| } | |||||
| </script> | |||||
| <style scoped lang="scss"> | |||||
| /deep/ .van-button--primary{ | |||||
| background: url("../../../assets/images/sunVillage_info/btn_bg.png") no-repeat; | |||||
| background-size: 100% 100%; | |||||
| border: none; | |||||
| } | |||||
| .home_wrapper{ | |||||
| background: #e9e9e9; | |||||
| min-height: 100vh; | |||||
| width: 100vw; | |||||
| .header_main { | |||||
| height: 116px; | |||||
| background: url('../../../assets/images/sunVillage_info/list_head.png') no-repeat; | |||||
| background-size: 100% 100%; | |||||
| position: fixed; | |||||
| top: 0; | |||||
| left: 0; | |||||
| width: 100%; | |||||
| font-size: 36px; | |||||
| line-height: 116px; | |||||
| text-align: center; | |||||
| color: #fff; | |||||
| position: relative; | |||||
| .return_btn { | |||||
| width: 24px; | |||||
| height: 43.2px; | |||||
| background: url('../../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||||
| background-size: 20px 36px; | |||||
| position: absolute; | |||||
| left: 38px; | |||||
| top: 36px; | |||||
| } | |||||
| .add_btn { | |||||
| width: 56.4px; | |||||
| height: 40.8px; | |||||
| background: url('../../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat; | |||||
| background-size: 47px 34px; | |||||
| position: absolute; | |||||
| right: 38px; | |||||
| top: 36px; | |||||
| } | |||||
| } | |||||
| .list_main{ | |||||
| padding:25px; | |||||
| background: #ffffff; | |||||
| width: 94%; | |||||
| margin: 25px auto 0; | |||||
| border-radius: 15PX; | |||||
| box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1); | |||||
| } | |||||
| .titBox{ | |||||
| display: flex; | |||||
| align-items: center; | |||||
| } | |||||
| .tit{ | |||||
| font-size: 36px; | |||||
| font-weight: bold; | |||||
| } | |||||
| /deep/ .van-cell{ | |||||
| padding-left: 0!important; | |||||
| padding-right: 0!important; | |||||
| padding-bottom: 0!important; | |||||
| } | |||||
| /deep/ .van-field__label{ | |||||
| padding-left: 10PX; | |||||
| width: 8.2em; | |||||
| } | |||||
| /deep/ .van-cell--required::before{ | |||||
| left: 0; | |||||
| } | |||||
| } | |||||
| .open-content { | |||||
| padding: .2rem .3rem; | |||||
| max-height: 8rem; | |||||
| } | |||||
| </style> | |||||
| @@ -0,0 +1,259 @@ | |||||
| <template> | |||||
| <div class="home_wrapper"> | |||||
| <div class="header_main"> | |||||
| {{title}} | |||||
| <div class="return_btn" @click="back()"></div> | |||||
| </div> | |||||
| <van-form ref="formData" :show-error-message="false" @submit="submit"> | |||||
| <div class="list_main"> | |||||
| <van-field name="otherName" v-model="form.otherName" label="公开名称" input-align="right" required :rules="rules.otherName" placeholder="请输入公开名称" size="large" :maxlength="150"/> | |||||
| <field-date-picker | |||||
| name="openAt" | |||||
| class="field_no-label" | |||||
| v-model="form.openAt" | |||||
| placeholder="请选择公开时间" | |||||
| formatter="yyyy-MM-dd" | |||||
| input-align="right" | |||||
| type="date" | |||||
| label="公开时间" | |||||
| :required="true" | |||||
| :rules="rules.openAt" | |||||
| size="large" | |||||
| /> | |||||
| <van-field name="openContent" label="公开内容" size="large" :border="false"/> | |||||
| <vue-html5-editor :content="content" :height="300" @change="updateData" style="margin-top: 0.2rem;"></vue-html5-editor> | |||||
| <van-field | |||||
| name="openPic" | |||||
| label="公开图片" | |||||
| input-align="right" | |||||
| :border="false" | |||||
| > | |||||
| </van-field> | |||||
| <CommonUpload name="openPic" v-model="form.openPic" accept="image/*" multiple/> | |||||
| <van-field | |||||
| name="openFile" | |||||
| label="公开文件" | |||||
| input-align="right" | |||||
| :border="false" | |||||
| > | |||||
| </van-field> | |||||
| <CommonUpload name="openFile" v-model="form.openFile" accept="*" multiple/> | |||||
| <van-field name="remark" v-model="form.remark" label="备注" input-align="left" size="large" :maxlength="255" placeholder="请输入备注"/> | |||||
| </div> | |||||
| <div style="margin: 16px auto;width: 50%;"> | |||||
| <van-button round block type="primary" native-type="submit"> | |||||
| 保存 | |||||
| </van-button> | |||||
| </div> | |||||
| </van-form> | |||||
| </div> | |||||
| </template> | |||||
| <script> | |||||
| import CommonUpload from "@/components/form/CommonUpload.vue"; | |||||
| import FieldDatePicker from "@/components/form/FieldDatePicker.vue"; | |||||
| import {Toast} from "vant"; | |||||
| import {addOther, getOther, updateOther} from "@/api/sunVillage_info/otherOpen"; | |||||
| export default { | |||||
| name: "otherOpenEdit", | |||||
| components: {FieldDatePicker, CommonUpload}, | |||||
| data() { | |||||
| return { | |||||
| form: { | |||||
| id: null, | |||||
| bookId: null, | |||||
| deptId: null, | |||||
| deptName: null, | |||||
| otherName: null, | |||||
| otherType: null, | |||||
| openYear: null, | |||||
| openAt: null, | |||||
| openContent: null, | |||||
| openFile: null, | |||||
| openPic: null, | |||||
| remark: null, | |||||
| createBy: null, | |||||
| createTime: null, | |||||
| updateBy: null, | |||||
| updateTime: null, | |||||
| }, | |||||
| rules: { | |||||
| openAt: [{message: '请选择公开时间', required: true}], | |||||
| otherName: [{message: '请输入公开名称', required: true}], | |||||
| }, | |||||
| id: null, | |||||
| intent: null, | |||||
| content: '', | |||||
| title: '综合公开', | |||||
| }; | |||||
| }, | |||||
| created() { | |||||
| this.id = this.$route.query.id; | |||||
| this.intent = this.$route.query.intent; | |||||
| if(this.isEdit) | |||||
| this.getDetail(); | |||||
| else | |||||
| { | |||||
| this.form.otherType = this.$route.query.type; | |||||
| this.getDicts('other_gk_type').then((resp) => { | |||||
| const dict = resp.data.find((x) => x.dictValue == this.form.otherType); | |||||
| if(dict) | |||||
| this.title = dict.dictLabel; | |||||
| }); | |||||
| } | |||||
| }, | |||||
| methods: { | |||||
| getDetail() { | |||||
| if(!this.id) | |||||
| { | |||||
| this.back(); | |||||
| return; | |||||
| } | |||||
| getOther(this.id).then((resp) => { | |||||
| this.form = resp.data; | |||||
| this.content = this.form.openContent || ''; | |||||
| this.getDicts('other_gk_type').then((resp) => { | |||||
| const dict = resp.data.find((x) => x.dictValue == this.form.otherType); | |||||
| if(dict) | |||||
| this.title = dict.dictLabel; | |||||
| }); | |||||
| }); | |||||
| }, | |||||
| back(ti) { | |||||
| if(ti > 0) | |||||
| setTimeout(() => this.$router.back(), ti); | |||||
| else | |||||
| this.$router.back(); | |||||
| }, | |||||
| updateData(t) { | |||||
| this.form.openContent = t; | |||||
| }, | |||||
| submit() { | |||||
| const loading = Toast.loading({ | |||||
| message: '保存中...', | |||||
| duration: 0, | |||||
| }); | |||||
| if(this.form.id) | |||||
| { | |||||
| updateOther(this.form).then((resp) => { | |||||
| this.$notify({ type: 'success', message: '保存成功' }); | |||||
| this.back(1500); | |||||
| }).finally(() => { | |||||
| loading.clear(); | |||||
| }); | |||||
| } | |||||
| else | |||||
| { | |||||
| addOther(this.form).then((resp) => { | |||||
| this.$notify({ type: 'success', message: '新增成功' }); | |||||
| this.back(1500); | |||||
| }).finally(() => { | |||||
| loading.clear(); | |||||
| }); | |||||
| } | |||||
| }, | |||||
| }, | |||||
| computed: { | |||||
| isAdd() { | |||||
| return this.intent === 'add'; | |||||
| }, | |||||
| isEdit() { | |||||
| return this.intent === 'edit'; | |||||
| }, | |||||
| title() { | |||||
| return this.intent === 'edit' ? '编辑' : '新增'; | |||||
| }, | |||||
| }, | |||||
| } | |||||
| </script> | |||||
| <style scoped lang="scss"> | |||||
| /deep/ .van-button--primary{ | |||||
| background: url("../../../assets/images/sunVillage_info/btn_bg.png") no-repeat; | |||||
| background-size: 100% 100%; | |||||
| border: none; | |||||
| } | |||||
| .home_wrapper{ | |||||
| background: #e9e9e9; | |||||
| min-height: 100vh; | |||||
| width: 100vw; | |||||
| .header_main { | |||||
| height: 116px; | |||||
| background: url('../../../assets/images/sunVillage_info/list_head.png') no-repeat; | |||||
| background-size: 100% 100%; | |||||
| position: fixed; | |||||
| top: 0; | |||||
| left: 0; | |||||
| width: 100%; | |||||
| font-size: 36px; | |||||
| line-height: 116px; | |||||
| text-align: center; | |||||
| color: #fff; | |||||
| position: relative; | |||||
| .return_btn { | |||||
| width: 24px; | |||||
| height: 43.2px; | |||||
| background: url('../../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||||
| background-size: 20px 36px; | |||||
| position: absolute; | |||||
| left: 38px; | |||||
| top: 36px; | |||||
| } | |||||
| .add_btn { | |||||
| width: 56.4px; | |||||
| height: 40.8px; | |||||
| background: url('../../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat; | |||||
| background-size: 47px 34px; | |||||
| position: absolute; | |||||
| right: 38px; | |||||
| top: 36px; | |||||
| } | |||||
| } | |||||
| .list_main{ | |||||
| padding:25px; | |||||
| background: #ffffff; | |||||
| width: 94%; | |||||
| margin: 25px auto 0; | |||||
| border-radius: 15PX; | |||||
| box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1); | |||||
| } | |||||
| .titBox{ | |||||
| display: flex; | |||||
| align-items: center; | |||||
| } | |||||
| .tit{ | |||||
| font-size: 36px; | |||||
| font-weight: bold; | |||||
| } | |||||
| /deep/ .van-cell{ | |||||
| padding-left: 0!important; | |||||
| padding-right: 0!important; | |||||
| padding-bottom: 0!important; | |||||
| } | |||||
| /deep/ .van-field__label{ | |||||
| padding-left: 10PX; | |||||
| width: 8.2em; | |||||
| } | |||||
| /deep/ .van-cell--required::before{ | |||||
| left: 0; | |||||
| } | |||||
| } | |||||
| </style> | |||||
| @@ -0,0 +1,379 @@ | |||||
| <template> | |||||
| <div class="home_wrapper"> | |||||
| <div class="header_main" | |||||
| :style="`background-image:url(${require('@/assets/images/sunVillage_info/list_head.png')})`" | |||||
| > | |||||
| {{title}} | |||||
| <div class="return_btn" @click="back"></div> | |||||
| <div class="add_btn" @click="add"></div> | |||||
| </div> | |||||
| <div class="list_main"> | |||||
| <paged-list | |||||
| ref="pagedList" | |||||
| :page-num.sync="queryParams.pageNum" | |||||
| :page-size.sync="queryParams.pageSize" | |||||
| :total.sync="total" | |||||
| :getListFunc="getListReq" | |||||
| @reload="dataList = []" | |||||
| get-when-created> | |||||
| <div class="item" v-for="(item,index) in dataList" :key="index" @click="viewItem(item.id)" > | |||||
| <div class="info"> | |||||
| <div class="title"> | |||||
| <p class="news_title">{{item.otherName}}</p> | |||||
| </div> | |||||
| <div class="time"> | |||||
| <div class="icon_time"></div> | |||||
| {{item.openAt}} | |||||
| </div> | |||||
| </div> | |||||
| <div class="operation"> | |||||
| <div class="opera_btn view" @click.stop="viewItem(item.id)"> | |||||
| <i class="icon "></i> | |||||
| </div> | |||||
| <div class="opera_btn edit" @click.stop="edit(item.id)"> | |||||
| <i class="icon "></i> | |||||
| </div> | |||||
| <div class="opera_btn delete" @click.stop="remove(item.id)"> | |||||
| <i class="icon"></i> | |||||
| </div> | |||||
| </div> | |||||
| </div> | |||||
| </paged-list> | |||||
| </div> | |||||
| </div> | |||||
| </template> | |||||
| <script> | |||||
| import PagedList from "@/components/common/PagedList.vue"; | |||||
| import {Dialog, Toast} from "vant"; | |||||
| import {delOther, listOther} from "@/api/sunVillage_info/otherOpen"; | |||||
| export default { | |||||
| name: "otherOpenList", | |||||
| components: {PagedList}, | |||||
| data() { | |||||
| return { | |||||
| dataList:[], | |||||
| total: 0, | |||||
| queryParams:{ | |||||
| pageNum:1, | |||||
| pageSize:10, | |||||
| orderByColumn:'openAt', | |||||
| isAsc:'desc', | |||||
| openYear:'', | |||||
| otherType: null, | |||||
| }, | |||||
| yearMonth:[], | |||||
| title: '综合公开', | |||||
| }; | |||||
| }, | |||||
| created() { | |||||
| this.queryParams.otherType = this.$route.query.type; | |||||
| if(this.$route.query.type) | |||||
| { | |||||
| this.getDicts('other_gk_type').then((resp) => { | |||||
| const dict = resp.data.find((x) => x.dictValue == this.$route.query.type); | |||||
| if(dict) | |||||
| this.title = dict.dictLabel; | |||||
| }); | |||||
| } | |||||
| }, | |||||
| methods: { | |||||
| getListReq(pageInfo) { | |||||
| return new Promise((resolve, reject) => { | |||||
| listOther(this.queryParams).then((response) => { | |||||
| response.rows.forEach((x) => this.dataList.push(x)); | |||||
| resolve(response); | |||||
| }); | |||||
| }); | |||||
| }, | |||||
| viewItem(id){ | |||||
| this.$router.push({ | |||||
| name: 'otherOpenDetail', | |||||
| query: { | |||||
| id: id, | |||||
| intent: 'view', | |||||
| type: this.$route.query.type, | |||||
| }, | |||||
| }).catch(() => {}); | |||||
| }, | |||||
| add() { | |||||
| this.$router.push({ | |||||
| name: 'otherOpenEdit', | |||||
| query: { | |||||
| intent: 'add', | |||||
| type: this.$route.query.type, | |||||
| }, | |||||
| }).catch(() => {}); | |||||
| }, | |||||
| edit(id) { | |||||
| this.$router.push({ | |||||
| name: 'otherOpenEdit', | |||||
| query: { | |||||
| id: id, | |||||
| intent: 'edit', | |||||
| type: this.$route.query.type, | |||||
| }, | |||||
| }).catch(() => {}); | |||||
| }, | |||||
| remove(id) { | |||||
| Dialog.confirm({ | |||||
| title: '警告', | |||||
| message: '确认删除该项?', | |||||
| }) | |||||
| .then(() => { | |||||
| const loading = Toast.loading({ | |||||
| message: '删除中...', | |||||
| duration: 0, | |||||
| }); | |||||
| delOther(id).then((resp) => { | |||||
| this.$notify({ type: 'success', message: '删除成功' }); | |||||
| this.$refs.pagedList.getList(); | |||||
| }).finally(() => { | |||||
| loading.clear(); | |||||
| }); | |||||
| }) | |||||
| .catch(() => {}); | |||||
| }, | |||||
| back() { | |||||
| this.$router.back(); | |||||
| }, | |||||
| }, | |||||
| } | |||||
| </script> | |||||
| <style scoped lang="scss"> | |||||
| .home_wrapper{ | |||||
| background: #e9e9e9; | |||||
| min-height: 100vh; | |||||
| width: 100vw; | |||||
| .header_main{ | |||||
| height: 116px; | |||||
| background: url('../../../assets/images/sunVillage_info/list_head.png') no-repeat; | |||||
| background-size: 100% 100%; | |||||
| position: fixed; | |||||
| top: 0; | |||||
| left: 0; | |||||
| width: 100%; | |||||
| font-size: 36px; | |||||
| line-height: 116px; | |||||
| text-align: center; | |||||
| color: #fff; | |||||
| position: relative; | |||||
| .return_btn{ | |||||
| width: 24px; | |||||
| height: 43.2px; | |||||
| background: url('../../../assets/images/sunVillage_info/list_icon_5.png') center center no-repeat; | |||||
| background-size: 20px 36px; | |||||
| position: absolute; | |||||
| left: 38px; | |||||
| top: 36px; | |||||
| } | |||||
| .add_btn{ | |||||
| width: 56.4px; | |||||
| height: 40.8px; | |||||
| background: url('../../../assets/images/sunVillage_info/list_icon_9.png') center center no-repeat; | |||||
| background-size: 47px 34px; | |||||
| position: absolute; | |||||
| right: 38px; | |||||
| top: 36px; | |||||
| } | |||||
| } | |||||
| .record_main{ | |||||
| padding:30px 22px; | |||||
| .record_det{ | |||||
| height: 38px; | |||||
| line-height: 38px; | |||||
| display: flex; | |||||
| justify-content:space-between; | |||||
| .year_l{ | |||||
| font-size: 30px; | |||||
| display: flex; | |||||
| align-items: center; | |||||
| color: #858585; | |||||
| .unit{ | |||||
| padding-left: 5px; | |||||
| } | |||||
| .icon{ | |||||
| width: 23px; | |||||
| height: 12px; | |||||
| display: block; | |||||
| background: url('../../../assets/images/sunVillage_info/list_icon_1.png') no-repeat; | |||||
| background-size: 100% 100%; | |||||
| margin-bottom: 4px; | |||||
| margin-right: 8px; | |||||
| &.zk { | |||||
| transform: rotate(0deg) | |||||
| } | |||||
| &.ss{ | |||||
| transform: rotate(180deg) | |||||
| } | |||||
| } | |||||
| } | |||||
| .total_r{ | |||||
| font-size: 26px; | |||||
| letter-spacing: 2px; | |||||
| } | |||||
| } | |||||
| .record_list{ | |||||
| display: flex; | |||||
| flex-flow: wrap; | |||||
| margin-top: 12PX; | |||||
| .flex_block{ | |||||
| font-size: 30px; | |||||
| color: #878787; | |||||
| padding-right: 30px; | |||||
| &.current{ | |||||
| color: #4199fe; | |||||
| font-weight: bold; | |||||
| } | |||||
| } | |||||
| } | |||||
| } | |||||
| .list_main{ | |||||
| padding:15px 22px; | |||||
| .item{ | |||||
| height: 140px; | |||||
| border-radius: 30px; | |||||
| background: #fff; | |||||
| box-shadow: 4px 6px 5px rgba(63, 68, 75, 0.1); | |||||
| padding:25px 32px; | |||||
| display: flex; | |||||
| margin-bottom: 20px; | |||||
| justify-content: space-between; | |||||
| .info{ | |||||
| .title{ | |||||
| display: flex; | |||||
| font-size: 32px; | |||||
| align-items: center; | |||||
| height: 58px; | |||||
| .icon_box{ | |||||
| width: 34px; | |||||
| display: block; | |||||
| height: 30px; | |||||
| background: url('../../../assets/images/sunVillage_info/list_icon_2.png') no-repeat; | |||||
| background-size: 100% 100%; | |||||
| margin-right: 10px; | |||||
| flex-shrink: 0; | |||||
| } | |||||
| .news_title{ | |||||
| display: -webkit-box; | |||||
| -webkit-box-orient: vertical; | |||||
| -webkit-line-clamp: 1; | |||||
| word-break: break-all; | |||||
| overflow: hidden; | |||||
| } | |||||
| .tips_mark{ | |||||
| width: 34px; | |||||
| height: 34px; | |||||
| background: #fa0c0c; | |||||
| border-radius: 8px; | |||||
| font-size: 24px; | |||||
| color: #fff; | |||||
| text-align: center; | |||||
| line-height: 34px; | |||||
| margin-left: 10px; | |||||
| flex-shrink: 0; | |||||
| } | |||||
| } | |||||
| .time{ | |||||
| font-size: 24px; | |||||
| color: #858585; | |||||
| display: flex; | |||||
| align-items: center; | |||||
| height: 30px; | |||||
| margin-top: 6px; | |||||
| .icon_time{ | |||||
| width: 25px; | |||||
| height: 25px; | |||||
| background: url('../../../assets/images/sunVillage_info/list_icon_4.png') no-repeat; | |||||
| background-size: 100% 100%; | |||||
| margin-right: 10px; | |||||
| } | |||||
| } | |||||
| } | |||||
| .operation{ | |||||
| display: flex; | |||||
| align-items: center; | |||||
| justify-content: right; | |||||
| text-align: right; | |||||
| .opera_btn{ | |||||
| width: 52px; | |||||
| height: 52px; | |||||
| border-radius: 50%; | |||||
| display: flex; | |||||
| align-items: center; | |||||
| justify-content:center; | |||||
| &.delete{ | |||||
| background:#df0707; | |||||
| margin-left: 10PX; | |||||
| .icon{ | |||||
| width: 22px; | |||||
| height: 29px; | |||||
| background: url('../../../assets/images/sunVillage_info/list_icon_7.png') no-repeat; | |||||
| background-size: 100% 100%; | |||||
| display: block; | |||||
| } | |||||
| } | |||||
| &.edit{ | |||||
| background: #79cf13; | |||||
| margin-left: 10PX; | |||||
| .icon { | |||||
| width: 26px; | |||||
| height: 25px; | |||||
| background: url('../../../assets/images/sunVillage_info/list_icon_6.png') no-repeat; | |||||
| background-size: 100% 100%; | |||||
| display: block; | |||||
| } | |||||
| } | |||||
| &.view{ | |||||
| background: #3494ff; | |||||
| margin-left: 10PX; | |||||
| .icon { | |||||
| width: 29px; | |||||
| height: 21px; | |||||
| background: url('../../../assets/images/sunVillage_info/list_icon_3.png') no-repeat; | |||||
| background-size: 100% 100%; | |||||
| display: block; | |||||
| } | |||||
| } | |||||
| &.list{ | |||||
| background: #79cf13; | |||||
| margin-left: 10PX; | |||||
| .icon { | |||||
| width: 29px; | |||||
| height: 21px; | |||||
| background: url('../../../assets/images/sunVillage_info/list_icon_10.png') no-repeat; | |||||
| background-size: 100% 100%; | |||||
| display: block; | |||||
| } | |||||
| } | |||||
| } | |||||
| } | |||||
| } | |||||
| } | |||||
| .bottom_tips{ | |||||
| font-size: 24px; | |||||
| color: #a7a6a6; | |||||
| text-align: center; | |||||
| margin-top: 32px; | |||||
| background: url('../../../assets/images/sunVillage_info/list_icon_8.png') center center no-repeat; | |||||
| background-size: 260px 2px; | |||||
| .xs{ | |||||
| padding:0 8px; | |||||
| background: #e9e9e9; | |||||
| } | |||||
| } | |||||
| } | |||||
| .top_head_title{ | |||||
| font-size: 16PX; | |||||
| text-align: center; | |||||
| padding: 15PX 0; | |||||
| } | |||||
| </style> | |||||
| @@ -30,7 +30,7 @@ | |||||
| :border="false" | :border="false" | ||||
| > | > | ||||
| </van-field> | </van-field> | ||||
| <CommonUpload name="openPic1" v-model="form.openPic1" multiple/> | |||||
| <CommonUpload name="openPic1" v-model="form.openPic1" accept="image/*" multiple/> | |||||
| <van-field | <van-field | ||||
| name="openPic2" | name="openPic2" | ||||
| @@ -39,7 +39,7 @@ | |||||
| :border="false" | :border="false" | ||||
| > | > | ||||
| </van-field> | </van-field> | ||||
| <CommonUpload name="openPic2" v-model="form.openPic2" multiple/> | |||||
| <CommonUpload name="openPic2" v-model="form.openPic2" accept="image/*" multiple/> | |||||
| <van-field | <van-field | ||||
| name="openPic3" | name="openPic3" | ||||
| @@ -48,7 +48,7 @@ | |||||
| :border="false" | :border="false" | ||||
| > | > | ||||
| </van-field> | </van-field> | ||||
| <CommonUpload name="openPic3" v-model="form.openPic3" multiple/> | |||||
| <CommonUpload name="openPic3" v-model="form.openPic3" accept="image/*" multiple/> | |||||
| <van-field name="remark" v-model="form.remark" label="备注" input-align="left" size="large" :maxlength="255" placeholder="请输入备注"/> | <van-field name="remark" v-model="form.remark" label="备注" input-align="left" size="large" :maxlength="255" placeholder="请输入备注"/> | ||||
| @@ -69,7 +69,7 @@ | |||||
| import FieldDatePicker from "@/components/form/FieldDatePicker.vue"; | import FieldDatePicker from "@/components/form/FieldDatePicker.vue"; | ||||
| import {Toast} from "vant"; | import {Toast} from "vant"; | ||||
| export default { | export default { | ||||
| name: "registrationDetail", | |||||
| name: "registrationEdit", | |||||
| components: {FieldDatePicker, CommonUpload}, | components: {FieldDatePicker, CommonUpload}, | ||||
| data() { | data() { | ||||
| return { | return { | ||||