Merge branch 'master' of http://120.79.193.119:9090/r/gzzfw/frontEnd/gzDyh into master
4 files added
28 files modified
| | |
| | | * @Company: hugeInfo |
| | | * @Author: ldh |
| | | * @Date: 2022-02-16 11:25:57 |
| | | * @LastEditTime: 2024-09-12 20:34:31 |
| | | * @LastEditors: dminyi 1301963064@qq.com |
| | | * @LastEditTime: 2024-09-13 09:34:31 |
| | | * @LastEditors: lwh |
| | | * @Version: 1.0.0 |
| | | * @Description: api地址 |
| | | */ |
| | | export const debug = { |
| | | // web服务 |
| | | // baseUrl: 'http://gz.hugeinfo.com.cn', |
| | | baseUrl: "http://192.168.3.108:9002", |
| | | baseUrl: 'https://zfw-dyh.by.gov.cn', |
| | | // baseUrl: "http://6dycet.natappfree.cc", |
| | | // baseUrl: 'http://mdqgnh.natappfree.cc', |
| | | |
| | | // 附件服务 |
| | | fileUrl: "http://192.168.3.108:9002", |
| | | // fileUrl: 'http://gz.hugeinfo.com.cn', |
| | | fileUrl: "http://6dycet.natappfree.cc", |
| | | // fileUrl: 'https://zfw-dyh.by.gov.cn', |
| | | |
| | | // 文件查看url 后面接附件编号 |
| | | fileShowUrl: "/dyh-sys/api/v1/fileInfo/show/", |
| | |
| | | import { tab1, tab2, tab3, tab4, tab5, tab6 } from '@/assets/images' |
| | | import TableView from '../../components/TableView'; |
| | | import { Space } from 'antd'; |
| | | import { Tabs, Typography, Radio, Form, Input, DatePicker, Button, Grid } from '@arco-design/web-react'; |
| | | import { Tabs, Typography, Radio, Form, Input, DatePicker, Button, Grid, Modal } from '@arco-design/web-react'; |
| | | import * as $$ from '@/utils/utility'; |
| | | import './index.less'; |
| | | |
| | |
| | | return $$.ax.request({ url: `caseTask/pageMyTaskDb`, type: 'get', service: 'mediate', data }); |
| | | } |
| | | |
| | | //签收 |
| | | //签收接口 |
| | | function signApi(data) { |
| | | return $$.ax.request({ url: `caseTask/sign`, type: 'post', service: 'mediate', data }); |
| | | } |
| | |
| | | }) |
| | | const [total, setTotal] = useState(0);//表格数据总数量 |
| | | const [loading, setLoading] = useState(false);//表格loading |
| | | const [selectedRowKeys, setSelectedRowKeys] = useState([]); |
| | | const [selectedRowKeys, setSelectedRowKeys] = useState([]);//批量签收的id |
| | | const [selectedRows, setSelectedRows] = useState([]);//批量签收的数据 |
| | | |
| | | useEffect(() => { |
| | | getCountData(); |
| | |
| | | //批量选择 |
| | | const onSelectChange = (newSelectedRowKeys, selectedRows) => { |
| | | setSelectedRowKeys(newSelectedRowKeys); |
| | | setSelectedRows(selectedRows) |
| | | } |
| | | |
| | | //签收 |
| | | const handleSign = async (caseId, ownerId) => { |
| | | const res = await signApi({ caseId: caseId, caseTaskId: ownerId }) |
| | | const res = await signApi([{ caseId: caseId, caseTaskId: ownerId }]) |
| | | if (res.type) { |
| | | $$.infoSuccess({ content: '签收成功' }); |
| | | getCountData(); |
| | |
| | | |
| | | //批量签收 |
| | | const handleBatchQs = () => { |
| | | console.log(selectedRowKeys); |
| | | console.log(selectedRows); |
| | | const paramsList = selectedRows.map(item => { |
| | | return { |
| | | caseId: item.caseId, |
| | | caseTaskId: item.ownerId |
| | | } |
| | | }) |
| | | Modal.confirm({ |
| | | title: '签收确认', |
| | | content: '确认批量签收?', |
| | | onOk: async () => { |
| | | const res = await signApi(paramsList) |
| | | if (res.type) { |
| | | $$.infoSuccess({ content: '批量签收成功成功!' }); |
| | | getCountData(); |
| | | getTableData(tabActivekey) |
| | | } |
| | | }, |
| | | }); |
| | | } |
| | | |
| | | const rowSelection = { |
| | |
| | | { |
| | | (tabActivekey == '2' && item.value === '1') && <div className='VisitWorkBench-middle-select'> |
| | | <span>已选{selectedRowKeys.length}项</span> |
| | | <span className='linkBtnColor' onClick={() => { setSelectedRowKeys([]) }}>取消</span> |
| | | <span className='linkBtnColor' onClick={() => { |
| | | setSelectedRowKeys([]) |
| | | setSelectedRows([]) |
| | | }}>取消</span> |
| | | <span className='linkBtnColor' onClick={handleBatchQs}>批量签收</span> |
| | | </div> |
| | | } |
| | |
| | | key: 'perClassName', |
| | | width: props.isReview ? 80 : 140, |
| | | fixed: 'right', |
| | | render: (text, record) => ( |
| | | render: (text, record, index) => ( |
| | | <Space size="middle"> |
| | | <Link onClick={() => { |
| | | setSourceType(record.ownerType) |
| | |
| | | 查看 |
| | | </Link> |
| | | {!props.isReview && <Link onClick={() => { |
| | | if (record.fileList && record.fileList.length != 0) { |
| | | let ids = record.fileList?.map(item => item.id).join(',') |
| | | handleDelete(ids) |
| | | if (record.fileInfoList && record.fileInfoList.length != 0) { |
| | | let ids = record.fileInfoList?.map(item => item.id).join(',') |
| | | handleDelete(ids, record, index) |
| | | } else { |
| | | $$.info({ type: 'warning', content: '还没上传关于该材料的文件!' }); |
| | | } |
| | |
| | | } |
| | | |
| | | //删除 |
| | | const handleDelete = (ids) => { |
| | | const handleDelete = (ids, record, index) => { |
| | | Modal.confirm({ |
| | | title: '删除确认', |
| | | content: '确认全部删除该材料?', |
| | | onOk: async () => { |
| | | let newData = tableData; |
| | | newData[index] = { ...record, fileInfoList: record.fileInfoList.filter(i => (i.id !== ids)) } |
| | | console.log('newData', newData); |
| | | |
| | | // setTableData(newData) |
| | | const res = await deleteFileByIdApi({ ids }) |
| | | if (res.type) { |
| | | $$.infoSuccess({ content: '删除成功!' }); |
| | |
| | | |
| | | // === 测试环境 === |
| | | // debug: 'https://gz.hugeinfo.com.cn/', |
| | | debug: 'http://b5qpdu.natappfree.cc/', |
| | | debug: 'http://gxdn5f.natappfree.cc/', |
| | | img: 'http://120.79.193.119:9103/wx414ae04ac3f10b4e/images/', |
| | | assets: 'http://120.79.193.119:9103/wx414ae04ac3f10b4e/js/', |
| | | txt: 'http://120.79.193.119:9103/wx414ae04ac3f10b4e/txt/', |
| | |
| | | // 文件下载url 后面接附件编号 |
| | | |
| | | // 不同服务接口type |
| | | // fileShowUrl: 'dyh-sys', |
| | | // fileDownUrl: 'dyh-sys', |
| | | // mediate: 'dyh-mediate', // dyh-mediate |
| | | // cust: 'dyh-cust', // dyh-cust |
| | | // oper: 'dyh-oper', // dyh-oper |
| | | // sys: 'dyh-sys', // dyh-sys |
| | | // disp: 'dyh-disp', //dyh-disp |
| | | // utils: 'dyh-utils', //dyh-utils |
| | | fileShowUrl: 'dyh-sys', |
| | | fileDownUrl: 'dyh-sys', |
| | | mediate: 'dyh-mediate', // dyh-mediate |
| | | cust: 'dyh-cust', // dyh-cust |
| | | oper: 'dyh-oper', // dyh-oper |
| | | sys: 'dyh-sys', // dyh-sys |
| | | disp: 'dyh-disp', //dyh-disp |
| | | utils: 'dyh-utils', //dyh-utils |
| | | |
| | | // 正式环境 |
| | | fileShowUrl: 'gzdyh-sys', |
| | | fileDownUrl: 'gzdyh-sys', |
| | | mediate: 'gzdyh-mediate', // gzdyh-mediate |
| | | cust: 'gzdyh-cust', // gzdyh-cust |
| | | oper: 'gzdyh-oper', // gzdyh-oper |
| | | sys: 'gzdyh-sys', // gzdyh-sys |
| | | disp: 'gzdyh-disp', //gzdyh-disp |
| | | utils: 'gzdyh-utils', //gzdyh-utils |
| | | // fileShowUrl: 'gzdyh-sys', |
| | | // fileDownUrl: 'gzdyh-sys', |
| | | // mediate: 'gzdyh-mediate', // gzdyh-mediate |
| | | // cust: 'gzdyh-cust', // gzdyh-cust |
| | | // oper: 'gzdyh-oper', // gzdyh-oper |
| | | // sys: 'gzdyh-sys', // gzdyh-sys |
| | | // disp: 'gzdyh-disp', //gzdyh-disp |
| | | // utils: 'gzdyh-utils', //gzdyh-utils |
| | | }; |
| | | |
| | | module.exports = { |
| | |
| | | "pages/DetailPerson/index", |
| | | "pages/AIAide/index", |
| | | "pages/AIAideDetail/index", |
| | | "pages/evaluate/index", |
| | | "pages/myRegisterList/index", |
| | | "pages/myRegisterFlow/index", |
| | | "pages/myRegisterDetail/index", |
| | |
| | | |
| | | // 获取手机号码 |
| | | function getPhoneNumber(submitData) { |
| | | return $$.request({ url: 'paAccount/getUserPhone', type: 'post', service: 'cust', submitData }); |
| | | return $$.request({ |
| | | url: 'paAccount/getUserPhone', |
| | | type: 'post', |
| | | service: 'cust', |
| | | submitData |
| | | }); |
| | | } |
| | | |
| | | Component({ |
| | | /** |
| | | * 组件的属性列表 |
| | | * popup: 下拉框的数据;visible:boolean 是否显示;title: string 标题;selectData: array;列数据;可拓展对象属性 |
| | | * safeBottom: iphoneX安全距离 |
| | | */ |
| | | properties: { |
| | | popup: { |
| | | type: Object, |
| | | value: { visible: false }, // default: { visible: false, title: '', selectData: [] } |
| | | }, |
| | | safeBottom: { |
| | | type: Boolean, |
| | | value: true, |
| | | }, |
| | | }, |
| | | /** |
| | | * 组件的属性列表 |
| | | * popup: 下拉框的数据;visible:boolean 是否显示;title: string 标题;selectData: array;列数据;可拓展对象属性 |
| | | * safeBottom: iphoneX安全距离 |
| | | */ |
| | | properties: { |
| | | popup: { |
| | | type: Object, |
| | | value: { |
| | | visible: false |
| | | }, // default: { visible: false, title: '', selectData: [] } |
| | | }, |
| | | safeBottom: { |
| | | type: Boolean, |
| | | value: true, |
| | | }, |
| | | }, |
| | | |
| | | /** |
| | | * 组件的初始数据 |
| | | */ |
| | | columnsDefaultIndex: 0, |
| | | data: { |
| | | loginVisible: false, |
| | | popupIndex: null, |
| | | }, |
| | | /** |
| | | * 组件的初始数据 |
| | | */ |
| | | columnsDefaultIndex: 0, |
| | | data: { |
| | | loginVisible: false, |
| | | popupIndex: null, |
| | | }, |
| | | |
| | | pageLifetimes: { |
| | | show: function () { |
| | | if (!app.globalData.token) { |
| | | console.log('测试') |
| | | if (!app.globalData.access_token) { |
| | | $$.showModal({ |
| | | content: '抱歉您未登录,是否前往登录?', |
| | | success: (res) => { |
| | | if (res.confirm) { |
| | | wx.redirectTo({ |
| | | url: '../../pages/login/index', |
| | | }); |
| | | } else { |
| | | wx.navigateBack({ |
| | | delta: 1, |
| | | }); |
| | | } |
| | | }, |
| | | }); |
| | | |
| | | pageLifetimes: { |
| | | show: function () { |
| | | if (!app.globalData.token) { |
| | | console.log('测试') |
| | | if (!app.globalData.access_token) { |
| | | $$.showModal({ |
| | | content: '抱歉您未登录,是否前往登录?', |
| | | success: (res) => { |
| | | if (res.confirm) { |
| | | // wx.redirectTo({ |
| | | // url: '../../pages/login/index', |
| | | // }); |
| | | this.handleGetUserInfo() |
| | | } else { |
| | | wx.navigateBack({ |
| | | delta: 1, |
| | | }); |
| | | } |
| | | }, |
| | | }); |
| | | |
| | | } |
| | | } |
| | | if (app.globalData.token && !this.data.loginVisible) { |
| | | this.setData({ |
| | | loginVisible: true |
| | | }); |
| | | } |
| | | }, |
| | | }, |
| | | |
| | | // 登录,获取用户信息 |
| | | async handleGetUserInfo() { |
| | | $$.showLoading(); |
| | | wx.getUserProfile({ |
| | | desc: '完善用户信息', |
| | | complete(res) { |
| | | if (res.errMsg === 'getUserProfile:ok') { |
| | | wx.login({ |
| | | async success(res2) { |
| | | if (res2.code) { |
| | | const accountInfo = wx.getAccountInfoSync(); |
| | | const submitData = { |
| | | appid: accountInfo.miniProgram.appId, |
| | | code: res2.code, |
| | | avatar: res?.userInfo.avatarUrl, |
| | | encryptedData: res.encryptedData, |
| | | ivStr: res.iv, |
| | | }; |
| | | const res3 = await loginApi(submitData); |
| | | $$.hideLoading(); |
| | | if (res3.type) { |
| | | wx.setStorage({ |
| | | key: 'userInfo', |
| | | data: res3.data |
| | | }); |
| | | app.globalData.token = res3.data.token; |
| | | $$.showToast({ |
| | | title: '登录成功', |
| | | icon: 'success' |
| | | }); |
| | | await $$.sleep(); |
| | | wx.reLaunch({ |
| | | url: '../../pages/homePage/index', |
| | | }); |
| | | } |
| | | } |
| | | if (app.globalData.token && !this.data.loginVisible) { |
| | | this.setData({ loginVisible: true }); |
| | | } |
| | | }, |
| | | }, |
| | | } else { |
| | | $$.hideLoading(); |
| | | $$.showToast('登录失败,请稍后重试'); |
| | | } |
| | | }, |
| | | }); |
| | | } else { |
| | | $$.hideLoading(); |
| | | $$.showToast({ |
| | | title: '抱歉!授权失败' |
| | | }); |
| | | } |
| | | }, |
| | | }); |
| | | }, |
| | | |
| | | observers: { |
| | | 'popup.visible,popup.noPicker': function (data1, data2) { |
| | | if ((data1, data2)) { |
| | | this.setData({ popupIndex: this.data.popup.activeIndex }); |
| | | } |
| | | }, |
| | | }, |
| | | observers: { |
| | | 'popup.visible,popup.noPicker': function (data1, data2) { |
| | | if ((data1, data2)) { |
| | | this.setData({ |
| | | popupIndex: this.data.popup.activeIndex |
| | | }); |
| | | } |
| | | }, |
| | | }, |
| | | |
| | | /** |
| | | * 组件的方法列表 |
| | | */ |
| | | methods: { |
| | | // 退出登录 |
| | | loginOut() { |
| | | this.setData({ loginVisible: false }); |
| | | }, |
| | | // 获取手机号码 |
| | | async handleGetPhoneNumber(code) { |
| | | $$.showLoading(); |
| | | const accountInfo = wx.getAccountInfoSync(); |
| | | const res = await getPhoneNumber({ appid: accountInfo.miniProgram.appId, code }); |
| | | $$.hideLoading(); |
| | | if (res.type) { |
| | | $$.showToast({ title: '获取成功' }); |
| | | return res.data; |
| | | } |
| | | }, |
| | | // 下拉框底层弹出层方法 |
| | | _handleClosePopup() { |
| | | this.triggerEvent('onClosePopup'); |
| | | }, |
| | | _handleChangePicker(e) { |
| | | this.triggerEvent('onChangePicker', { dataset: e.currentTarget.dataset, detail: e.detail }); |
| | | }, |
| | | _handleConfirmPicker(e) { |
| | | if (this.data.popup.noPicker) { |
| | | // 当组件不是Picker时 |
| | | let index = e.currentTarget.dataset.index; |
| | | let value = e.currentTarget.dataset.value; |
| | | this.triggerEvent('onConfirmPicker', { dataset: e.currentTarget.dataset, detail: { index, value } }); |
| | | return; |
| | | } |
| | | this.triggerEvent('onConfirmPicker', { dataset: e.currentTarget.dataset, detail: e.detail }); |
| | | }, |
| | | }, |
| | | }); |
| | | /** |
| | | * 组件的方法列表 |
| | | */ |
| | | methods: { |
| | | // 退出登录 |
| | | loginOut() { |
| | | this.setData({ |
| | | loginVisible: false |
| | | }); |
| | | }, |
| | | // 获取手机号码 |
| | | async handleGetPhoneNumber(code) { |
| | | $$.showLoading(); |
| | | const accountInfo = wx.getAccountInfoSync(); |
| | | const res = await getPhoneNumber({ |
| | | appid: accountInfo.miniProgram.appId, |
| | | code |
| | | }); |
| | | $$.hideLoading(); |
| | | if (res.type) { |
| | | $$.showToast({ |
| | | title: '获取成功' |
| | | }); |
| | | return res.data; |
| | | } |
| | | }, |
| | | // 下拉框底层弹出层方法 |
| | | _handleClosePopup() { |
| | | this.triggerEvent('onClosePopup'); |
| | | }, |
| | | _handleChangePicker(e) { |
| | | this.triggerEvent('onChangePicker', { |
| | | dataset: e.currentTarget.dataset, |
| | | detail: e.detail |
| | | }); |
| | | }, |
| | | _handleConfirmPicker(e) { |
| | | if (this.data.popup.noPicker) { |
| | | // 当组件不是Picker时 |
| | | let index = e.currentTarget.dataset.index; |
| | | let value = e.currentTarget.dataset.value; |
| | | this.triggerEvent('onConfirmPicker', { |
| | | dataset: e.currentTarget.dataset, |
| | | detail: { |
| | | index, |
| | | value |
| | | } |
| | | }); |
| | | return; |
| | | } |
| | | this.triggerEvent('onConfirmPicker', { |
| | | dataset: e.currentTarget.dataset, |
| | | detail: e.detail |
| | | }); |
| | | }, |
| | | }, |
| | | }); |
| | |
| | | if (res.type) { |
| | | if (res.data.trueName !== null) |
| | | this.triggerEvent('getUserInfo', res.data); |
| | | wx.setStorage({ |
| | | key: 'userInfo', |
| | | data: res.data |
| | | }); |
| | | } |
| | | }, |
| | | // 请求下拉框资源 |
| | |
| | | <van-icon color="#1A6FB8" size="14" name="arrow" /> |
| | | </view> |
| | | </view> |
| | | <view class="caseList_title">相似度:{{'-'}}% | 发生地:广东省 广州市</view> |
| | | <!-- <view class="caseList_title">相似度:{{'-'}}% | 发生地:广东省 广州市</view> --> |
| | | </view> |
| | | </block> |
| | | <block wx:if="{{AIData.length>0}}"> |
| | |
| | | </view> |
| | | <view class="subtitle">【群众诉求】</view> |
| | | <view class="text"> |
| | | {{data.caseclaim||'-'}} |
| | | {{data.caseClaim||'-'}} |
| | | </view> |
| | | <view class="subtitle">【和解协议】</view> |
| | | <view class="text"> |
| | | {{data.agreecontent||'-'}} |
| | | {{data.agreeContent||'-'}} |
| | | </view> |
| | | </view> |
| | | |
| | |
| | | */ |
| | | data: { |
| | | imgUrl: $$.url.img, |
| | | typeList: [ |
| | | [{ |
| | | title: '邻里纠纷', |
| | | value: '24_000011-1', |
| | | imgUrl: 'caseType-1-1.png' |
| | | }, { |
| | | title: '拖欠、克扣工资', |
| | | value: '24_000011-3', |
| | | imgUrl: 'caseType-1-5.png' |
| | | }, { |
| | | title: '门诊及住院待遇', |
| | | value: '24_000011-4', |
| | | imgUrl: 'caseType-1-10.png' |
| | | }, { |
| | | title: '公共设施', |
| | | imgUrl: 'caseType-1-4.png' |
| | | }, { |
| | | title: '施工问题', |
| | | imgUrl: 'caseType-1-2.png' |
| | | }, { |
| | | title: '违章建筑', |
| | | imgUrl: 'caseType-1-6.png' |
| | | }, { |
| | | title: '港澳青年来穗服务', |
| | | imgUrl: 'caseType-1-7.png' |
| | | }, { |
| | | title: '乱摆卖、垃圾清理...', |
| | | imgUrl: 'caseType-1-8.png' |
| | | }, { |
| | | title: '噪声、气味、污水...', |
| | | imgUrl: 'caseType-1-9.png' |
| | | }, { |
| | | title: '车辆乱停放', |
| | | imgUrl: 'caseType-1-14.png' |
| | | }, { |
| | | title: '出租车、公交车站...', |
| | | imgUrl: 'caseType-1-11.png' |
| | | }, { |
| | | title: '电动车违规问题', |
| | | imgUrl: 'caseType-1-12.png' |
| | | }, { |
| | | title: '教培机构投诉', |
| | | imgUrl: 'caseType-1-13.png' |
| | | }, { |
| | | title: '物业/业委会管理', |
| | | imgUrl: 'caseType-1-3.png' |
| | | }] |
| | | typeList: [{ |
| | | "label": "劳动社保", |
| | | "value": "24_01-2", |
| | | "icon": null, |
| | | "parentId": "root", |
| | | "children": [{ |
| | | "label": "拖欠、克扣工资", |
| | | "value": "24_02-9", |
| | | "icon": 'caseType-1-5.png', |
| | | "parentId": "24_01-2", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "社保费用补缴", |
| | | "value": "24_02-16", |
| | | "icon": 'caseType-1-1.png', |
| | | "parentId": "24_01-2", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "异地就医办理", |
| | | "value": "24_02-13", |
| | | "icon": 'caseType-1-3.png', |
| | | "parentId": "24_01-2", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "生育待遇", |
| | | "value": "24_02-12", |
| | | "icon": 'caseType-1-6.png', |
| | | "parentId": "24_01-2", |
| | | "children": null |
| | | }, |
| | | |
| | | { |
| | | "label": "养老待遇", |
| | | "value": "24_02-14", |
| | | "icon": 'caseType-1-4.png', |
| | | "parentId": "24_01-2", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "参保流程", |
| | | "value": "24_02-17", |
| | | "icon": 'caseType-1-13.png', |
| | | "parentId": "24_01-2", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "失业保险待遇", |
| | | "value": "24_02-15", |
| | | "icon": 'caseType-1-9.png', |
| | | "parentId": "24_01-2", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "港澳青年来穗服务", |
| | | "value": "24_02-19", |
| | | "icon": 'caseType-1-14.png', |
| | | "parentId": "24_01-2", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "医保个人账户", |
| | | "value": "24_02-11", |
| | | "icon": 'caseType-1-12.png', |
| | | "parentId": "24_01-2", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "门诊及住院待遇", |
| | | "value": "24_02-10", |
| | | "icon": 'caseType-1-11.png', |
| | | "parentId": "24_01-2", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "其他(职业技能、社保补贴等)", |
| | | "value": "24_02-18", |
| | | "icon": 'caseType-1-7.png', |
| | | "parentId": "24_01-2", |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "label": "城市管理", |
| | | "value": "24_01-3", |
| | | "icon": null, |
| | | "parentId": "root", |
| | | "children": [{ |
| | | "label": "施工问题", |
| | | "value": "24_02-20", |
| | | "icon": 'caseType-1-9.png', |
| | | "parentId": "24_01-3", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "违章建筑", |
| | | "value": "24_02-21", |
| | | "icon": 'caseType-1-8.png', |
| | | "parentId": "24_01-3", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "路桥坑洼、破损", |
| | | "value": "24_02-22", |
| | | "icon": 'caseType-1-7.png', |
| | | "parentId": "24_01-3", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "消防隐患举报", |
| | | "value": "24_02-23", |
| | | "icon": 'caseType-1-6.png', |
| | | "parentId": "24_01-3", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "噪声、气味、污水等环境问题", |
| | | "value": "24_02-25", |
| | | "icon": 'caseType-1-5.png', |
| | | "parentId": "24_01-3", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "乱摆卖、垃圾清理等街面问题", |
| | | "value": "24_02-24", |
| | | "icon": 'caseType-1-4.png', |
| | | "parentId": "24_01-3", |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "label": "家庭邻里", |
| | | "value": "24_01-8", |
| | | "icon": null, |
| | | "parentId": "root", |
| | | "children": [{ |
| | | "label": "邻里纠纷", |
| | | "value": "24_02-48", |
| | | "icon": 'caseType-1-3.png', |
| | | "parentId": "24_01-8", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "婚姻家庭纠纷", |
| | | "value": "24_02-47", |
| | | "icon": 'caseType-1-2.png', |
| | | "parentId": "24_01-8", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "男女情感问题", |
| | | "value": "24_02-49", |
| | | "icon": 'caseType-1-1.png', |
| | | "parentId": "24_01-8", |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "label": "交通运输", |
| | | "value": "24_01-4", |
| | | "icon": null, |
| | | "parentId": "root", |
| | | "children": [{ |
| | | "label": "交通拥堵", |
| | | "value": "24_02-27", |
| | | "icon": 'caseType-1-8.png', |
| | | "parentId": "24_01-4", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "道路违章举报", |
| | | "value": "24_02-29", |
| | | "icon": 'caseType-1-9.png', |
| | | "parentId": "24_01-4", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "物流快递管理", |
| | | "value": "24_02-30", |
| | | "icon": 'caseType-1-10.png', |
| | | "parentId": "24_01-4", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "驾校纠纷", |
| | | "value": "24_02-31", |
| | | "icon": 'caseType-1-11.png', |
| | | "parentId": "24_01-4", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "车辆乱停放", |
| | | "value": "24_02-26", |
| | | "icon": 'caseType-1-12.png', |
| | | "parentId": "24_01-4", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "电动车违规问题", |
| | | "value": "24_02-33", |
| | | "icon": 'caseType-1-13.png', |
| | | "parentId": "24_01-4", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "出租车、公交车、站点等营运问题", |
| | | "value": "24_02-32", |
| | | "icon": 'caseType-1-14.png', |
| | | "parentId": "24_01-4", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "交通灯、电子警察等公安设施", |
| | | "value": "24_02-28", |
| | | "icon": 'caseType-1-2.png', |
| | | "parentId": "24_01-4", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "其他(社会治安、限行、养犬等)", |
| | | "value": "24_02-34", |
| | | "icon": 'caseType-1-1.png', |
| | | "parentId": "24_01-4", |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "label": "教育医疗", |
| | | "value": "24_01-5", |
| | | "icon": null, |
| | | "parentId": "root", |
| | | "children": [{ |
| | | "label": "教育事务、培训机构投诉", |
| | | "value": "24_02-35", |
| | | "icon": 'caseType-1-8.png', |
| | | "parentId": "24_01-5", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "医疗服务", |
| | | "value": "24_02-36", |
| | | "icon": 'caseType-1-9.png', |
| | | "parentId": "24_01-5", |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "label": "房屋规划", |
| | | "value": "24_01-7", |
| | | "icon": null, |
| | | "parentId": "root", |
| | | "children": [{ |
| | | "label": "物业/业委会管理", |
| | | "value": "24_02-41", |
| | | "icon": 'caseType-1-1.png', |
| | | "parentId": "24_01-7", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "不动产登记", |
| | | "value": "24_02-42", |
| | | "icon": 'caseType-1-2.png', |
| | | "parentId": "24_01-7", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "开发商/中介纠纷", |
| | | "value": "24_02-43", |
| | | "icon": 'caseType-1-3.png', |
| | | "parentId": "24_01-7", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "电梯加装", |
| | | "value": "24_02-44", |
| | | "icon": 'caseType-1-4.png', |
| | | "parentId": "24_01-7", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "建设项目规划", |
| | | "value": "24_02-45", |
| | | "icon": 'caseType-1-5.png', |
| | | "parentId": "24_01-7", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "租赁纠纷", |
| | | "value": "24_02-46", |
| | | "icon": 'caseType-1-6.png', |
| | | "parentId": "24_01-7", |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "label": "公共服务", |
| | | "value": "24_01-6", |
| | | "icon": null, |
| | | "parentId": "root", |
| | | "children": [{ |
| | | "label": "停水/电/气", |
| | | "value": "24_02-37", |
| | | "icon": 'caseType-1-8.png', |
| | | "parentId": "24_01-6", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "自然灾害", |
| | | "value": "24_02-38", |
| | | "icon": 'caseType-1-9.png', |
| | | "parentId": "24_01-6", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "个人危险行为", |
| | | "value": "24_02-40", |
| | | "icon": 'caseType-1-7.png', |
| | | "parentId": "24_01-6", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "公共卫生安全", |
| | | "value": "24_02-39", |
| | | "icon": 'caseType-1-10.png', |
| | | "parentId": "24_01-6", |
| | | "children": null |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | "label": "市场监管", |
| | | "value": "24_01-1", |
| | | "icon": null, |
| | | "parentId": "root", |
| | | "children": [{ |
| | | "label": "金融纠纷", |
| | | "value": "24_02-6", |
| | | "icon": 'caseType-1-11.png', |
| | | "parentId": "24_01-1", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "网购及其他消费纠纷", |
| | | "value": "24_02-5", |
| | | "icon": 'caseType-1-12.png', |
| | | "parentId": "24_01-1", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "其他经济违法举报", |
| | | "value": "24_02-7", |
| | | "icon": 'caseType-1-13.png', |
| | | "parentId": "24_01-1", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "食品消费纠纷", |
| | | "value": "24_02-3", |
| | | "icon": 'caseType-1-1.png', |
| | | "parentId": "24_01-1", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "旅游消费纠纷", |
| | | "value": "24_02-2", |
| | | "icon": 'caseType-1-2.png', |
| | | "parentId": "24_01-1", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "通讯、宽带消费纠纷", |
| | | "value": "24_02-1", |
| | | "icon": 'caseType-1-3.png', |
| | | "parentId": "24_01-1", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "电费问题", |
| | | "value": "24_02-8", |
| | | "icon": 'caseType-1-4.png', |
| | | "parentId": "24_01-1", |
| | | "children": null |
| | | }, |
| | | { |
| | | "label": "无证/无照/冒用信息等违法经营行为举报", |
| | | "value": "24_02-4", |
| | | "icon": 'caseType-1-14.png', |
| | | "parentId": "24_01-1", |
| | | "children": null |
| | | }, |
| | | ] |
| | | } |
| | | ], |
| | | // [ |
| | | // [{ |
| | | // title: '邻里纠纷', |
| | | // value: '24_000011-1', |
| | | // imgUrl: 'caseType-1-1.png' |
| | | // }, { |
| | | // title: '拖欠、克扣工资', |
| | | // value: '24_000011-3', |
| | | // imgUrl: 'caseType-1-5.png' |
| | | // }, { |
| | | // title: '门诊及住院待遇', |
| | | // value: '24_000011-4', |
| | | // imgUrl: 'caseType-1-10.png' |
| | | // }, { |
| | | // title: '公共设施', |
| | | // imgUrl: 'caseType-1-4.png' |
| | | // }, { |
| | | // title: '施工问题', |
| | | // imgUrl: 'caseType-1-2.png' |
| | | // }, { |
| | | // title: '违章建筑', |
| | | // imgUrl: 'caseType-1-6.png' |
| | | // }, { |
| | | // title: '港澳青年来穗服务', |
| | | // imgUrl: 'caseType-1-7.png' |
| | | // }, { |
| | | // title: '乱摆卖、垃圾清理...', |
| | | // imgUrl: 'caseType-1-8.png' |
| | | // }, { |
| | | // title: '噪声、气味、污水...', |
| | | // imgUrl: 'caseType-1-9.png' |
| | | // }, { |
| | | // title: '车辆乱停放', |
| | | // imgUrl: 'caseType-1-14.png' |
| | | // }, { |
| | | // title: '出租车、公交车站...', |
| | | // imgUrl: 'caseType-1-11.png' |
| | | // }, { |
| | | // title: '电动车违规问题', |
| | | // imgUrl: 'caseType-1-12.png' |
| | | // }, { |
| | | // title: '教培机构投诉', |
| | | // imgUrl: 'caseType-1-13.png' |
| | | // }, { |
| | | // title: '物业/业委会管理', |
| | | // imgUrl: 'caseType-1-3.png' |
| | | // }] |
| | | // ], |
| | | activeKey: '0' |
| | | }, |
| | | |
| | | |
| | | onChange(e) { |
| | | this.setData({ |
| | | activeKey: e.detail |
| | | }) |
| | | }, |
| | | |
| | | |
| | | onClick(e) { |
| | | let item = e.currentTarget.dataset.item; |
| | | console.log(item); |
| | |
| | | <!-- 主体 --> |
| | | <view class='caseType-main'> |
| | | <view class="sidebar"> |
| | | <van-sidebar active-key="{{ activeKey }}"> |
| | | <van-sidebar-item title="热点事项" /> |
| | | <van-sidebar-item title="市场监管" /> |
| | | <van-sidebar active-key="{{ activeKey }}" bind:change="onChange"> |
| | | <van-sidebar-item wx:for="{{typeList}}" title="{{item.label}}" /> |
| | | <!-- <van-sidebar-item title="市场监管" /> |
| | | <van-sidebar-item title="劳动社保" /> |
| | | <van-sidebar-item title="城市管理" /> |
| | | <van-sidebar-item title="交通运输" /> |
| | | <van-sidebar-item title="教育医疗" /> |
| | | <van-sidebar-item title="公共服务" /> |
| | | <van-sidebar-item title="房屋规划" /> |
| | | <van-sidebar-item title="房屋规划" /> --> |
| | | </van-sidebar> |
| | | </view> |
| | | <view class="grid"> |
| | | <van-grid border="{{ false }}" column-num="3"> |
| | | <van-grid-item bind:click='onClick' data-item="{{item}}" use-slot wx:for="{{typeList[activeKey] }}" wx:for-item="item"> |
| | | <van-grid-item bind:click='onClick' class="van-grid-item" data-item="{{item}}" use-slot wx:for="{{typeList[activeKey].children }}" wx:for-item="item"> |
| | | <view class="grid-flex"> |
| | | <view class="grid-img"> |
| | | <image src="{{imgUrl}}{{item.imgUrl}}" mode="" /> |
| | | <image src="{{imgUrl}}{{item.icon}}" mode="" /> |
| | | </view> |
| | | <view class="grid-title"> |
| | | {{item.title}} |
| | | {{item.label}} |
| | | </view> |
| | | </view> |
| | | </van-grid-item> |
New file |
| | |
| | | // pages/evaluate/index.js |
| | | const $$ = require('../../utils/util'); |
| | | const app = getApp(); |
| | | import Toast from '../../components/vant/toast/toast'; |
| | | |
| | | function saveCaseApi(submitData) { |
| | | return $$.request({ |
| | | url: 'caseEvaluate/saveCaseEvaluate', |
| | | type: 'post', |
| | | submitData, |
| | | service: 'mediate', |
| | | }); |
| | | } |
| | | Page({ |
| | | |
| | | /** |
| | | * 页面的初始数据 |
| | | */ |
| | | data: { |
| | | data: [false, false, false, false, false, false], |
| | | dataName: ['', '', '', '', '', ''] |
| | | }, |
| | | |
| | | onChange(e) { |
| | | let key = e.currentTarget.dataset.key; |
| | | let name = e.currentTarget.dataset.name; |
| | | if (name) { |
| | | this.data.data[key] = e.detail |
| | | this.data.dataName[key] = e.detail ? name : '' |
| | | this.setData({ |
| | | data: this.data.data, |
| | | dataName: this.data.dataName |
| | | }) |
| | | } else { |
| | | this.setData({ |
| | | [key]: e.detail |
| | | }) |
| | | } |
| | | }, |
| | | |
| | | |
| | | // 提交评价 |
| | | async handleNext() { |
| | | let newData = { |
| | | caseId: this.data.id, |
| | | evaluateGrade: this.data.evaluateGrade, |
| | | evaluateRemark: this.data.dataName?.length > 0 ? this.data.dataName.join(',') : '', |
| | | evaluateContent: this.data.evaluateContent, //评价建议 |
| | | } |
| | | $$.showLoading(); |
| | | const res = await saveCaseApi(newData); |
| | | $$.hideLoading(); |
| | | if (res.type) { |
| | | Toast('提交成功'); |
| | | wx.navigateBack({ |
| | | delta: 1, |
| | | success: function (res) { |
| | | // 返回页面刷新接口 |
| | | wx.emitEvent('getUserInfo', {}); |
| | | } |
| | | }); |
| | | } |
| | | }, |
| | | |
| | | /** |
| | | * 生命周期函数--监听页面加载 |
| | | */ |
| | | onLoad(options) { |
| | | let { |
| | | id |
| | | } = options; |
| | | this.setData({ |
| | | id |
| | | }) |
| | | }, |
| | | |
| | | |
| | | }) |
New file |
| | |
| | | { |
| | | "navigationBarTitleText": "去评价", |
| | | "usingComponents": {} |
| | | } |
New file |
| | |
| | | <!--pages/evaluate/index.wxml--> |
| | | <view class="card"> |
| | | <view class="flex"> |
| | | <view class="cell3"> |
| | | <view class="cell-title-placeholder">评价等级</view> |
| | | <view class=""> |
| | | <van-rate value="{{ evaluateGrade }}" size="{{ 18 }}" color="#ffd21e" void-icon="star" void-color="#eee" data-key="evaluateGrade" bind:change="onChange" /> |
| | | </view> |
| | | </view> |
| | | <view class="cell3"> |
| | | <view class="cell-title-placeholder">评语</view> |
| | | <view> |
| | | <view class="view-flex"> |
| | | <view class="view-flex-1">工作人员态度好<van-checkbox value="{{ data[0] }}" data-key="0" data-name="工作人员态度好" bind:change="onChange" icon-size="18px"></van-checkbox> |
| | | </view> |
| | | <view class="view-flex-1">办理效率高<van-checkbox value="{{ data[1] }}" data-key="1" data-name="办理效率高" bind:change="onChange" icon-size="18px"></van-checkbox> |
| | | </view> |
| | | <view class="view-flex-1">工作人员认真负责<van-checkbox value="{{ data[2] }}" data-key="2" data-name="工作人员认真负责" bind:change="onChange" icon-size="18px"></van-checkbox> |
| | | </view> |
| | | <view class="view-flex-1">结案严谨<van-checkbox value="{{ data[3] }}" data-key="3" data-name="结案严谨" bind:change="onChange" icon-size="18px"></van-checkbox> |
| | | </view> |
| | | <view class="view-flex-1">结案结果符合预期<van-checkbox value="{{ data[4] }}" data-key="4" data-name="结案结果符合预期" bind:change="onChange" icon-size="18px"></van-checkbox> |
| | | </view> |
| | | <view class="view-flex-1">处理方式符合预期<van-checkbox value="{{ data[5] }}" data-key="5" data-name="处理方式符合预期" bind:change="onChange" icon-size="18px"></van-checkbox> |
| | | </view> |
| | | </view> |
| | | <view class="cell-item"> |
| | | <van-field custom-style="padding:0 20rpx;line-height:90rpx" autosize="{{ { maxHeight: 110, minHeight: 110 } }}" bind:change="onChange" border="{{ false }}" maxlength='500' data-key="evaluateContent" placeholder="如果有其他意见或建议,请反馈给我们" type="textarea" value="{{ evaluateContent }}" /> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <view class="submitButton" catch:tap=""> |
| | | <view style="flex: 1;"> |
| | | <van-button bind:click="handleNext" block data-type="next" type="primary">提交评价</van-button> |
| | | <view class="safeHeight" /> |
| | | </view> |
| | | </view> |
| | | </view> |
New file |
| | |
| | | /* pages/evaluate/index.wxss */ |
| | | |
| | | .card { |
| | | display: flex; |
| | | flex-direction: column; |
| | | } |
| | | |
| | | .flex { |
| | | flex: 1; |
| | | padding: 24rpx; |
| | | background-color: #fff; |
| | | } |
| | | |
| | | .cell-title-placeholder { |
| | | margin-bottom: 8rpx; |
| | | } |
| | | |
| | | .cell3 { |
| | | margin-bottom: 24rpx; |
| | | } |
| | | |
| | | .view-flex { |
| | | display: flex; |
| | | gap: 32rpx; |
| | | flex-wrap: wrap; |
| | | justify-content: space-between; |
| | | } |
| | | |
| | | .view-flex-1 { |
| | | width: 47%; |
| | | height: 76rpx; |
| | | border: 1px solid #1a6fb8; |
| | | border-radius: 4px; |
| | | text-align: center; |
| | | /* padding: 16rpx 16rpx; */ |
| | | font-size: 28rpx; |
| | | line-height: 44rpx; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: center; |
| | | gap: 24rpx; |
| | | } |
| | | |
| | | .cell-item { |
| | | margin-top: 32rpx; |
| | | padding: 16rpx 0; |
| | | background: #f2f3f5; |
| | | border-radius: 8px; |
| | | } |
| | | |
| | | .cell-item .van-cell { |
| | | background-color: #f2f3f5; |
| | | } |
| | | |
| | | .flex-view { |
| | | margin-bottom: 24rpx; |
| | | } |
| | | |
| | | |
| | | .submitButton { |
| | | position: fixed; |
| | | bottom: 0; |
| | | left: 0; |
| | | right: 0; |
| | | display: flex; |
| | | padding: 32rpx var(--padding-my); |
| | | background-color: #fff; |
| | | z-index: 99; |
| | | } |
| | |
| | | imgUrl: $$.url.img, |
| | | agreementMsg: '', // 服务协议 |
| | | popupVisible: false, |
| | | banner: [`${$$.url.img}Banner1.png`, `${$$.url.img}Banner2.png`], // 轮播图 |
| | | banner: [{ |
| | | image: `${$$.url.img}Banner1.png`, |
| | | image1: `${$$.url.img}banner4.png` |
| | | }, { |
| | | image: `${$$.url.img}Banner2.png`, |
| | | image1: `${$$.url.img}banner3.png` |
| | | }], // 轮播图 |
| | | // banner: [`${$$.url.img}Banner1.png`, `${$$.url.img}Banner2.png`, `${$$.url.img}banner3.png`, `${$$.url.img}banner4.png`], // 轮播图 |
| | | countUnitData: {}, //化解资源 |
| | | userInfo: {}, //用户信息 |
| | |
| | | // 跳转资讯链接 |
| | | goSeeMessage(e) { |
| | | let url = e.currentTarget.dataset.url; |
| | | console.log('url', url); |
| | | wx.navigateTo({ |
| | | url: '../webview/index?showUrl=' + url |
| | | }); |
| | |
| | | } |
| | | }, |
| | | |
| | | async dd() { |
| | | $$.showLoading(); |
| | | wx.login({ |
| | | async success(res) { |
| | | if (res.code) { |
| | | const accountInfo = wx.getAccountInfoSync(); |
| | | const submitData = { |
| | | appid: accountInfo.miniProgram.appId, |
| | | code: res.code, |
| | | } |
| | | const res1 = await loginApi(submitData); |
| | | if (res1.type) { |
| | | console.log(res1.data, 'res1111') |
| | | if (res1.data.state === '1') { |
| | | $$.hideLoading(); |
| | | console.log(res1, 'res1'); |
| | | wx.setStorage({ |
| | | key: 'userInfo', |
| | | data: res1.data |
| | | }); |
| | | app.globalData.token = res1.data.token; |
| | | $$.showToast({ |
| | | title: '登录成功', |
| | | icon: 'success' |
| | | }); |
| | | await $$.sleep(); |
| | | wx.reLaunch({ |
| | | url: '../../pages/homePage/index', |
| | | }); |
| | | |
| | | } else { |
| | | $$.hideLoading(); |
| | | app.globalData.access_token = wx.getStorageSync('access_token'); |
| | | $$.showModal({ |
| | | title: '提示', |
| | | content: '您尚未注册,是否前往注册?', |
| | | cancelText: '取消', |
| | | confirmText: '前往', |
| | | success: (res) => { |
| | | if (res.confirm) { |
| | | $$.showLoading(); |
| | | wx.getUserProfile({ |
| | | desc: '完善用户信息', |
| | | complete(res) { |
| | | if (res.errMsg === 'getUserProfile:ok') { |
| | | wx.login({ |
| | | async success(res2) { |
| | | if (res2.code) { |
| | | const accountInfo = wx.getAccountInfoSync(); |
| | | const submitData = { |
| | | appid: accountInfo.miniProgram.appId, |
| | | code: res2.code, |
| | | avatar: res?.userInfo.avatarUrl, |
| | | encryptedData: res.encryptedData, |
| | | ivStr: res.iv, |
| | | }; |
| | | const res3 = await registerApi(submitData); |
| | | $$.hideLoading(); |
| | | if (res3.type) { |
| | | wx.setStorage({ |
| | | key: 'userInfo', |
| | | data: res3.data |
| | | }); |
| | | app.globalData.token = res3.data.token; |
| | | $$.showToast({ |
| | | title: '登录成功', |
| | | icon: 'success' |
| | | }); |
| | | await $$.sleep(); |
| | | wx.reLaunch({ |
| | | url: '../../pages/homePage/index', |
| | | }); |
| | | } |
| | | } else { |
| | | $$.hideLoading(); |
| | | $$.showToast('登录失败,请稍后重试'); |
| | | } |
| | | }, |
| | | }); |
| | | } else { |
| | | $$.hideLoading(); |
| | | $$.showToast({ |
| | | title: '抱歉!授权失败' |
| | | }); |
| | | } |
| | | }, |
| | | }); |
| | | |
| | | // wx.navigateTo({ |
| | | // url: '../../pages/login/index', |
| | | // }); |
| | | } else { |
| | | wx.navigateBack({ |
| | | delta: 1, |
| | | }); |
| | | } |
| | | }, |
| | | }); |
| | | } |
| | | } |
| | | } else { |
| | | $$.hideLoading(); |
| | | $$.showToast('登录失败,请稍后重试'); |
| | | } |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | // 前往查看 |
| | | AiModalClick(e) { |
| | | let item = e.currentTarget.dataset.item; |
| | |
| | | }) |
| | | }, |
| | | |
| | | // 登录,获取用户信息 |
| | | async handleGetUserInfo() { |
| | | $$.showLoading(); |
| | | wx.getUserProfile({ |
| | | desc: '完善用户信息', |
| | | complete(res) { |
| | | if (res.errMsg === 'getUserProfile:ok') { |
| | | wx.login({ |
| | | async success(res2) { |
| | | if (res2.code) { |
| | | const accountInfo = wx.getAccountInfoSync(); |
| | | const submitData = { |
| | | appid: accountInfo.miniProgram.appId, |
| | | code: res2.code, |
| | | avatar: res?.userInfo.avatarUrl, |
| | | encryptedData: res.encryptedData, |
| | | ivStr: res.iv, |
| | | }; |
| | | const res3 = await registerApi(submitData); |
| | | $$.hideLoading(); |
| | | if (res3.type) { |
| | | wx.setStorage({ |
| | | key: 'userInfo', |
| | | data: res3.data |
| | | }); |
| | | app.globalData.token = res3.data.token; |
| | | $$.showToast({ |
| | | title: '登录成功', |
| | | icon: 'success' |
| | | }); |
| | | await $$.sleep(); |
| | | wx.reLaunch({ |
| | | url: '../../pages/homePage/index', |
| | | }); |
| | | } |
| | | } else { |
| | | $$.hideLoading(); |
| | | $$.showToast('登录失败,请稍后重试'); |
| | | } |
| | | }, |
| | | }); |
| | | } else { |
| | | $$.hideLoading(); |
| | | $$.showToast({ |
| | | title: '抱歉!授权失败' |
| | | }); |
| | | } |
| | | }, |
| | | }); |
| | | }, |
| | | |
| | | /** |
| | | * 生命周期函数--监听页面加载 |
| | | */ |
| | | onLoad: function (options) {}, |
| | | |
| | | onShow(options) { |
| | | if (!$$.userTest('login')) { |
| | | return |
| | | if (!app.globalData.token) { |
| | | $$.showModal({ |
| | | content: '抱歉您未登录,是否前往登录?', |
| | | success: (res) => { |
| | | if (res.confirm) { |
| | | this.handleGetUserInfo(); |
| | | } |
| | | }, |
| | | }); |
| | | return; |
| | | } |
| | | // this.getUserInfo() |
| | | let userInfo = wx.getStorageSync('userInfo') || {}; |
| | | let AICase = wx.getStorageSync('AICase') || ''; |
| | | if (AICase) { |
| | |
| | | <view class="homePage-main"> |
| | | <view class="swiper-bg"> |
| | | <swiper autoplay="{{ true }}" class="swiper" indicator-dots="{{ true }}"> |
| | | <swiper-item class="swiper-main" wx:for="{{ banner }}" wx:key="index"> |
| | | <image class="swiper-item" src="{{ item }}" /> |
| | | <swiper-item class="swiper-main"> |
| | | <view class="swiper-main-image"> |
| | | <image class="swiper-item" src="{{ imgUrl }}Banner1.png" /> |
| | | <image class="swiper-item1" src="{{ imgUrl }}banner4.png" /> |
| | | </view> |
| | | </swiper-item> |
| | | <swiper-item class="swiper-main"> |
| | | <view class="swiper-main-image"> |
| | | <image class="swiper-item" src="{{ imgUrl }}Banner2.png" /> |
| | | <image class="swiper-item2" src="{{ imgUrl }}banner3.png" /> |
| | | </view> |
| | | </swiper-item> |
| | | </swiper> |
| | | <view class="swiper-head"> |
| | |
| | | </view> |
| | | <view class="main"> |
| | | <view style="height: 32rpx;"> |
| | | |
| | | |
| | | </view> |
| | | <!-- 服务申请 --> |
| | | <view> |
| | |
| | | <van-icon name="arrow" size="16" /> |
| | | </view> |
| | | </view> |
| | | <view class="dt_card" bindtap="goSeeMessage" wx:for="{{ newMessage }}" style="margin-top:{{index===0?0:'8px'}}" wx:key="index"> |
| | | <view class="dt_card" bindtap="goSeeMessage" data-url="{{item.showUrl}}" wx:for="{{ newMessage }}" style="margin-top:{{index===0?0:'8px'}}" wx:key="index"> |
| | | <view class="dt_card_l"> |
| | | <view class="dt_card_title">{{item.title}}</view> |
| | | <view class="dt_card_time"> |
| | |
| | | height: 300rpx; |
| | | } |
| | | |
| | | .swiper-main-image { |
| | | position: relative; |
| | | height: 100%; |
| | | width: 100%; |
| | | } |
| | | |
| | | .swiper-item { |
| | | height: 100%; |
| | | width: 100%; |
| | | } |
| | | |
| | | .swiper-item1 { |
| | | position: absolute; |
| | | top: 60px; |
| | | left: 10px; |
| | | height: 42px; |
| | | } |
| | | |
| | | .swiper-item2 { |
| | | position: absolute; |
| | | top: 72rpx; |
| | | left: 20px; |
| | | width: 200px; |
| | | height: 61px; |
| | | } |
| | | |
| | | .homePage-main { |
| | | height: 100vh; |
| | | background-color: #EFF8FF; |
| | |
| | | <!--pages/myRegisterDetail/index.wxml--> |
| | | <view class="three-tag"> |
| | | <van-tabs bind:click="threeTagChange" active="{{threeAvtice}}"> |
| | | <van-tabs animated bind:click="threeTagChange" active="{{threeAvtice}}"> |
| | | <!-- 人员信息 --> |
| | | <van-tab title="人员信息" name="1"> |
| | | <view style="padding:24rpx"> |
| | |
| | | height: 96rpx !important; |
| | | } |
| | | |
| | | .van-tabs__wrap .van-tab--active { |
| | | color: var(--main-color) !important; |
| | | } |
| | | |
| | | .three-tag .van-tabs__nav { |
| | | height: 100%; |
| | | } |
| | |
| | | |
| | | // 关闭筛选框 |
| | | addClosePopup() { |
| | | console.log('111', 11); |
| | | this.setData({ |
| | | showModal: false |
| | | }) |
| | |
| | | }) |
| | | }, |
| | | |
| | | // 关闭AI弹窗 |
| | | addClosePopup() { |
| | | this.setData({ |
| | | AiModal: false |
| | | }) |
| | | // 评价 |
| | | evaluate(e) { |
| | | let id = e.currentTarget.dataset.id; |
| | | wx.navigateTo({ |
| | | url: '../../pages/evaluate/index?id=' + id |
| | | }); |
| | | }, |
| | | |
| | | // 关闭AI弹窗 |
| | | // addClosePopup() { |
| | | // this.setData({ |
| | | // AiModal: false |
| | | // }) |
| | | // }, |
| | | |
| | | /** |
| | | * 生命周期函数--监听页面加载 |
| | | */ |
| | | onLoad(options) { |
| | | this.pageQuery(this.data.search) |
| | | }, |
| | | |
| | | onShow() { |
| | | let AICase = wx.getStorageSync('AICase') || ''; |
| | | if (AICase) { |
| | | this.setData({ |
| | | AiModal: AICase |
| | | }) |
| | | wx.removeStorage({ |
| | | key: 'AICase' |
| | | }) |
| | | } |
| | | this.pageQuery(this.data.search) |
| | | // let AICase = wx.getStorageSync('AICase') || ''; |
| | | // if (AICase) { |
| | | // this.setData({ |
| | | // AiModal: AICase |
| | | // }) |
| | | // wx.removeStorage({ |
| | | // key: 'AICase' |
| | | // }) |
| | | // } |
| | | } |
| | | }) |
| | |
| | | <!--pages/myRegisterList/index.wxml--> |
| | | <view class="three-tag"> |
| | | <van-tabs bind:click="threeTagChange" active="{{search.personType}}"> |
| | | <van-tabs animated bind:click="threeTagChange" active="{{search.personType}}"> |
| | | <van-tab title="我是申请方" name="1"></van-tab> |
| | | <van-tab title="我是被申请方" name="2"></van-tab> |
| | | </van-tabs> |
| | |
| | | </view> |
| | | <view class="list-detail-r">查看</view> |
| | | </view> |
| | | <view wx:if="{{item.processStatus>2&&item.isEvaluate==='0'}}" class="list-border"></view> |
| | | <view wx:if="{{item.processStatus>2&&item.isEvaluate==='0'}}" style="margin: 24rpx 0;"> |
| | | <van-button bind:click="evaluate" block data-id="{{item.id}}" type="primary">去评价</van-button> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | |
| | |
| | | height: 96rpx !important; |
| | | } |
| | | |
| | | .van-tabs__wrap .van-tab--active { |
| | | color: var(--main-color) !important; |
| | | } |
| | | |
| | | .three-tag .van-tabs__nav { |
| | | height: 100%; |
| | | } |
| | |
| | | await $$.sleep(); |
| | | wx.navigateBack({ |
| | | delta: 1, |
| | | success: function (res) { |
| | | // 返回页面刷新接口 |
| | | wx.emitEvent('getUserInfo', {}); |
| | | } |
| | | }); |
| | | } |
| | | }, |
| | |
| | | const res = await realNameAuthenticationApi(this.data.submitData); |
| | | $$.hideLoading(); |
| | | if (res.type) { |
| | | wx.getStorage({ |
| | | key: 'userInfo', |
| | | success(res2) { |
| | | console.log('res2', res2); |
| | | let nowData = { |
| | | ...res2.data, |
| | | realStatus: 1, |
| | | } |
| | | wx.setStorage({ |
| | | key: 'userInfo', |
| | | data: nowData |
| | | }); |
| | | }, |
| | | }); |
| | | this.getUserInfo() |
| | | $$.showToast({ |
| | | icon: 'success', |
| | | title: '实名认证成功' |
| | |
| | | }) |
| | | } |
| | | |
| | | if (this.data.twoData?.title) { |
| | | if (this.data.twoData?.label) { |
| | | this.setData({ |
| | | submitData: { |
| | | ...this.data.submitData, |
| | | caseType: this.data.twoData.value, |
| | | caseTypeName: this.data.twoData.title, |
| | | caseTypeName: this.data.twoData.label, |
| | | }, |
| | | twoData: {} |
| | | }) |
| | |
| | | this.setData({ |
| | | submitData: { |
| | | ...this.data.submitData, |
| | | [this.data.twoKey]: this.data.twoValue |
| | | [this.data.twoKey]: this.data.twoValue, |
| | | }, |
| | | [this.data.twoKey + 'Num']: this.data.twoValue.length, |
| | | twoValue: '', |
| | | twoKey: '' |
| | | }) |
| | |
| | | { |
| | | "navigationBarTitleText": "反应诉求", |
| | | "navigationBarTitleText": "反映诉求", |
| | | "usingComponents": { |
| | | "steps": "../../components/steps/index", |
| | | "mediate-detail": "../../components/mediate-detail/index", |
| | |
| | | </block> |
| | | <view style="height: 16rpx;"></view> |
| | | <block> |
| | | <view style="padding-left: 32rpx;" bindtap="handleUploadFile" data-id="{{ownerId}}" data-type="22_00014-1" class="cell-item"> |
| | | <view style="padding-left: 32rpx;" bindtap="handleUploadFile" data-id="{{ownerId}}" data-type="22_00018-101" class="cell-item"> |
| | | <view class="upload-title"> |
| | | 事件材料 |
| | | <image src="{{imgUrl}}upload-add.png" mode="" /> |
| | | </view> |
| | | <view class="upload-text"> |
| | | 说明:建议上传人员身份证及纠纷涉及的证件材料,代理人请上传身份证及授权委托书 |
| | | 说明:请上传与您的申请事项相关的证据材料,如合同、转账记录、聊天记录、鉴定结果等 |
| | | </view> |
| | | </view> |
| | | <view class="fileList" wx:for="{{fileList}}" wx:key="index" data-item="{{item}}" data-index="{{index}}"> |
| | |
| | | <view style="margin-bottom: 10rpx;">{{item.name}}</view> |
| | | <view style="display: flex;gap:16rpx"><text class="fileList_title">{{item.size}}{{item.unit}}</text><text data-item="{{item}}" data-index="{{index}}" bindtap="handlePreviewImage" class="public-color">预览</text></view> |
| | | </view> |
| | | <image data-id="{{item.id}}" data-type="22_00014-1" data-item="{{item}}" data-index="{{index}}" bindtap="handleDelImage" class="fileList_img_del" src="{{imgUrl}}image_del.png" mode="" /> |
| | | <image data-id="{{item.id}}" data-type="22_00018-101" data-item="{{item}}" data-index="{{index}}" bindtap="handleDelImage" class="fileList_img_del" src="{{imgUrl}}image_del.png" mode="" /> |
| | | </view> |
| | | </block> |
| | | </view> |
| | |
| | | <view style="flex: 1;"> |
| | | <view class="two-button"> |
| | | <view class="two-button-flex1"> |
| | | <van-button bind:click="handleNext" block data-type="back">上一步</van-button> |
| | | <van-button color="#1A6FB8" plain bind:click="handleNext" block data-type="back">上一步</van-button> |
| | | </view> |
| | | <view class="two-button-flex2"> |
| | | <van-button bind:click="handleNext" block data-type="next" type="primary">下一步</van-button> |
| | |
| | | <view class="page-flex" wx:elif="{{stepsActive === 2}}"> |
| | | <view class="popupMsg-form"> |
| | | <view class="three-tag"> |
| | | <van-tabs bind:click="threeTagChange" active="{{threeAvtice}}"> |
| | | <van-tabs animated bind:click="threeTagChange" active="{{threeAvtice}}"> |
| | | <!-- 人员信息 --> |
| | | <van-tab title="人员信息" name="1"> |
| | | <view style="padding:24rpx"> |
| | |
| | | <view style="flex: 1;"> |
| | | <view class="two-button"> |
| | | <view class="two-button-flex1"> |
| | | <van-button bind:click="handleNext" block data-type="back">上一步</van-button> |
| | | <van-button color="#1A6FB8" plain bind:click="handleNext" block data-type="back">上一步</van-button> |
| | | </view> |
| | | <view class="two-button-flex2"> |
| | | <van-button bind:click="handleNext" block data-type="next" type="primary">提交申请</van-button> |
| | |
| | | height: 96rpx !important; |
| | | } |
| | | |
| | | .van-tabs__wrap .van-tab--active { |
| | | color: var(--main-color) !important; |
| | | } |
| | | |
| | | .three-tag .van-tabs__nav { |
| | | height: 100%; |
| | | } |
| | |
| | | if (code === '0' || code === 0) { |
| | | that.setData({ |
| | | value: that.data.value + data || '', |
| | | number: (that.data.value + data || '').length, |
| | | }); |
| | | } else { |
| | | $$.showToast({ |
| | |
| | | this.setData({ |
| | | key: type |
| | | }) |
| | | wx.getSetting({ |
| | | success(res) { |
| | | if (res.authSetting['scope.record'] === false) { |
| | | $$.hideLoading(); |
| | | $$.showModal({ |
| | | content: '抱歉!此功能需授权麦克风录音功能', |
| | | confirmText: '跳转授权', |
| | | success: (res) => { |
| | | if (res.confirm) { |
| | | wx.openSetting({ |
| | | success(res) { |
| | | if (res.authSetting['scope.record']) { |
| | | $$.showToast({ |
| | | title: '授权成功' |
| | | }); |
| | | } else { |
| | | $$.showToast({ |
| | | title: '授权失败' |
| | | }); |
| | | } |
| | | }, |
| | | }); |
| | | } |
| | | }, |
| | | }); |
| | | } |
| | | } |
| | | }) |
| | | }, |
| | | }) |
| | |
| | | <block wx:if="{{key==='caseDes'}}"> |
| | | <view class="cell-item"> |
| | | <view class="cell-title"><text><text class="cell-required">*</text>事项概况</text></view> |
| | | <van-field custom-style="padding:0 20rpx;line-height:90rpx; margin-bottom:32rpx" autosize="{{ { maxHeight: 470, minHeight: 470 } }}" bind:change="handleChange" border="{{ false }}" maxlength='2000' data-key="caseDesNum" placeholder="请完整描述事项概况,应具备5要素:发生时间+发生地点+人物情况+事项起因+事项经过" type="textarea" value="{{ value }}" /> |
| | | <van-field custom-style="padding:0 20rpx;line-height:90rpx; margin-bottom:32rpx" autosize="{{ { maxHeight: 470, minHeight: 470 } }}" bind:change="handleChange" border="{{ false }}" maxlength='2000' data-key="number" placeholder="请完整描述事项概况,应具备5要素:发生时间+发生地点+人物情况+事项起因+事项经过" type="textarea" value="{{ value }}" /> |
| | | </view> |
| | | <view class="textarea-foot"> |
| | | <view class="textarea-limit">{{caseDesNum||0}}/2000字</view> |
| | | <view class="textarea-limit">{{number||0}}/2000字</view> |
| | | <view class="textarea-ability"> |
| | | <!-- <view bindtouchstart="touchStart" bindtouchend="touchEnd" class="textarea-img"> --> |
| | | <view bindtouchstart="touchStart" bindtouchend="touchEnd" class="textarea-img"> |
| | |
| | | <block wx:else> |
| | | <view class="cell-item"> |
| | | <view class="cell-title"><text><text class="cell-required">*</text>事项申请</text></view> |
| | | <van-field custom-style="padding:0 20rpx;line-height:90rpx" autosize="{{ { maxHeight: 470, minHeight: 470 } }}" bind:change="handleChange" border="{{ false }}" maxlength='500' data-key="caseClaimNum" placeholder="希望相关部门如何处理,建议分条描述,如请求1,请求2..." type="textarea" value="{{ value }}" /> |
| | | <van-field custom-style="padding:0 20rpx;line-height:90rpx" autosize="{{ { maxHeight: 470, minHeight: 470 } }}" bind:change="handleChange" border="{{ false }}" maxlength='500' data-key="number" placeholder="希望相关部门如何处理,建议分条描述,如请求1,请求2..." type="textarea" value="{{ value }}" /> |
| | | </view> |
| | | <view class="textarea-foot"> |
| | | <view class="textarea-limit">{{caseClaimNum||0}}/500字</view> |
| | | <view class="textarea-limit">{{number||0}}/500字</view> |
| | | <view class="textarea-ability"> |
| | | <view bindtouchstart="touchStart" bindtouchend="touchEnd" class="textarea-img"> |
| | | <image src="{{imgUrl}}voiceOcr.png" mode="" />按住说话 |
| | |
| | | const url = api.url; |
| | | |
| | | // 是否是开发环境 |
| | | const isDebug = false; |
| | | const isDebug = true; |
| | | |
| | | const baseUrl = isDebug ? api.url.debug : api.url.web; |
| | | |
| | |
| | | content: '抱歉您未登录,是否前往登录?', |
| | | success: (res) => { |
| | | if (res.confirm) { |
| | | wx.navigateTo({ |
| | | url: '../../pages/login/index', |
| | | }); |
| | | // wx.navigateTo({ |
| | | // url: '../../pages/login/index', |
| | | // }); |
| | | } |
| | | }, |
| | | }); |