From b39c972062c4d95554db7207aa4c9eb93d3adae8 Mon Sep 17 00:00:00 2001 From: liuwh <964324856@qq.com> Date: Sat, 14 Sep 2024 15:58:37 +0800 Subject: [PATCH] 提交 --- gz-customerSystem/src/components/NewTableSearch/index.jsx | 17 ++- gz-wxparty/pages/myRegisterList/index.wxss | 19 ++++ gz-customerSystem/src/views/comprehensive/index.jsx | 20 +++- gz-wxparty/api/api.js | 2 gz-wxparty/utils/util.js | 1 gz-customerSystem/src/api/appUrl.js | 6 gz-wxparty/pages/myRegisterFlow/index.json | 4 gz-customerSystem/src/views/comprehensive/index.less | 14 ++- gz-wxparty/pages/myRegisterFlow/index.wxml | 48 ++++++------ gz-customerSystem/src/router/router.js | 8 + gz-wxparty/pages/myRegisterFlow/index.wxss | 14 ++ gz-wxparty/pages/myRegisterFlow/index.js | 27 ++++++ gz-wxparty/pages/myRegisterList/index.wxml | 27 +++++- gz-wxparty/pages/myRegisterList/index.js | 27 ++++++ 14 files changed, 175 insertions(+), 59 deletions(-) diff --git a/gz-customerSystem/src/api/appUrl.js b/gz-customerSystem/src/api/appUrl.js index e2501e7..20217be 100644 --- a/gz-customerSystem/src/api/appUrl.js +++ b/gz-customerSystem/src/api/appUrl.js @@ -2,7 +2,7 @@ * @Company: hugeInfo * @Author: ldh * @Date: 2022-02-16 11:25:57 - * @LastEditTime: 2024-09-14 10:03:46 + * @LastEditTime: 2024-09-14 15:43:38 * @LastEditors: lwh * @Version: 1.0.0 * @Description: api地址 @@ -10,11 +10,11 @@ export const debug = { // web服务 // baseUrl: 'http://gz.hugeinfo.com.cn', - baseUrl: "http://qbkwa3.natappfree.cc", + baseUrl: "http://4gg4nv.natappfree.cc", // baseUrl: 'http://mdqgnh.natappfree.cc', // 附件服务 - fileUrl: "http://qbkwa3.natappfree.cc", + fileUrl: "http://4gg4nv.natappfree.cc", // fileUrl: 'http://gz.hugeinfo.com.cn', // 文件查看url 后面接附件编号 diff --git a/gz-customerSystem/src/components/NewTableSearch/index.jsx b/gz-customerSystem/src/components/NewTableSearch/index.jsx index c2d55df..5e8a818 100644 --- a/gz-customerSystem/src/components/NewTableSearch/index.jsx +++ b/gz-customerSystem/src/components/NewTableSearch/index.jsx @@ -1,7 +1,7 @@ import React, { useState } from 'react'; import PropTypes from 'prop-types'; import { Form, Row, Col, Input, DatePicker, Select, Button, TreeSelect } from 'antd'; -import { DownOutlined } from '@ant-design/icons'; +import { DownOutlined, SearchOutlined } from '@ant-design/icons'; import * as $$ from '../../utils/utility'; import './index.less'; @@ -16,8 +16,9 @@ * rowNum, // 一行放多少个搜索item * handleRest, // 重置 * handleSearch, // 搜索 + * exportButton //导出按钮 */ -const NewTableSearch = ({ form, itemData, labelLength = 5, rowNum = 3, handleReset, handleSearch }) => { +const NewTableSearch = ({ form, itemData, labelLength = 5, rowNum = 3, handleReset, handleSearch, exportButton }) => { const [searchMore, setSearchMore] = useState(false); const span = 24 / rowNum; @@ -127,11 +128,14 @@ })} <Row style={{ marginTop: '16px' }}> <Col span={24} style={{ textAlign: 'left' }}> - <Button className="public-buttonMargin" onClick={handleReset}> - 重置 - </Button> - <Button type="primary" htmlType="submit" onClick={handleSearch}> + <Button className="public-buttonMargin" type="primary" htmlType="submit" icon={<SearchOutlined />} onClick={handleSearch}> 查询 + </Button> + <Button className="public-buttonMargin" type="primary" ghost htmlType="submit" onClick={exportButton}> + 导出查询结果 + </Button> + <Button onClick={handleReset}> + 重置条件 </Button> {display && ( <span className="tableSearch-searchMore" onClick={() => setSearchMore(!searchMore)}> @@ -151,6 +155,7 @@ rowNum: PropTypes.number, handleReset: PropTypes.func, handleSearch: PropTypes.func, + exportButton: PropTypes.func, }; export default NewTableSearch; diff --git a/gz-customerSystem/src/router/router.js b/gz-customerSystem/src/router/router.js index b1b9b40..f3b60a2 100644 --- a/gz-customerSystem/src/router/router.js +++ b/gz-customerSystem/src/router/router.js @@ -2,8 +2,8 @@ * @Company: hugeInfo * @Author: ldh * @Date: 2022-03-28 11:22:41 - * @LastEditTime: 2024-09-10 14:15:11 - * @LastEditors: dminyi 1301963064@qq.com + * @LastEditTime: 2024-09-14 15:57:00 + * @LastEditors: lwh * @Version: 1.0.0 * @Description: 路由 */ @@ -128,6 +128,8 @@ // 综合查询 import Comprehensive from '../views/comprehensive'; +// 纠纷台账 +import DisputeLedger from '../views/disputeLedger'; // 数据分析 import DataSearch from '../views/statistic/dataSearch'; @@ -231,6 +233,8 @@ <Route path="workflowManage/workflowManageDetail" element={<WorkflowManageDetail />} /> {/* 综合查询 */} <Route path="comprehensive" element={<Comprehensive />} /> + {/* 纠纷台账 */} + <Route path="disputeLedger" element={<DisputeLedger />} /> {/* 数据分析 */} <Route path="dataSearch" element={<DataSearch />} /> {/* 调解视窗成功页 */} diff --git a/gz-customerSystem/src/views/comprehensive/index.jsx b/gz-customerSystem/src/views/comprehensive/index.jsx index a02d444..1812110 100644 --- a/gz-customerSystem/src/views/comprehensive/index.jsx +++ b/gz-customerSystem/src/views/comprehensive/index.jsx @@ -48,10 +48,11 @@ { title: '纠纷类型', width: 150, dataIndex: 'caseTypeName' }, { title: '承办部门', width: 150, dataIndex: 'mediateDeptName' }, { title: '配合部门', width: 150, dataIndex: 'assistUnitName' }, - { title: '化解结果', width: 80, dataIndex: 'mediResult' }, - { title: '办结时间', width: 80, dataIndex: 'closeTime' }, - // { title: '申请方', dataIndex: 'plaintiffList' }, - // { title: '被申请方', dataIndex: 'defendantList' }, + // 22_00025-1 成功 22_00025-2 化解不成功 + { title: '化解结果', width: 100, dataIndex: 'mediResult', render: (text) => <div className={text === '22_00025-1' ? 'comprehensive-green' : text === '22_00025-2' ? 'comprehensive-red' : '-'} >{text === '22_00025-1' ? '化解成功' : text === '22_00025-2' ? '化解不成功' : '-'}</div> }, + { title: '办结时间', width: 100, dataIndex: 'closeTime', render: (text) => <span>{$$.dateFormat(text)}</span> }, + { title: '申请方', dataIndex: 'action', render: (text, record) => <div>{record.plaintiffList?.length > 0 ? record.plaintiffList?.map(i => i.trueName)?.join(',') : '-'}</div> }, + { title: '被申请方', dataIndex: 'action', render: (text, record) => <div>{record.defendantList?.length > 0 ? record.defendantList?.map(i => i.trueName)?.join(',') : '-'}</div> }, { title: '登记机构', dataIndex: 'inputUnitName' }, { title: '操作', @@ -125,6 +126,12 @@ getCaseInfoData(paramsObj); } + + // 导出数据 + function downloadXls() { + window.open(`${$$.appUrl.baseUrl}/dyh-mediate/api/web/caseInfo/exportQueryAll`); + }; + // 搜索 or 重置 function handleSearch(type, session) { let paramsObj = {}; @@ -185,10 +192,11 @@ return ( <Page pageHead={{ title: '综合查询', subtitle: '管理员名下综合查询列表' }}> - <div className="myMediation"> - <div className="myMediation-search"> + <div className="mediateList"> + <div className="pageSearch"> <div className='comprehensive-title'>查询条件</div> <NewTableSearch + exportButton={downloadXls} labelLength={6} form={form} itemData={[ diff --git a/gz-customerSystem/src/views/comprehensive/index.less b/gz-customerSystem/src/views/comprehensive/index.less index b39c8f7..c389ffc 100644 --- a/gz-customerSystem/src/views/comprehensive/index.less +++ b/gz-customerSystem/src/views/comprehensive/index.less @@ -1,9 +1,15 @@ .comprehensive { &-title { // margin: 0 16px; - font-size: 16px; - font-weight: 400; - color: rgba(0,0,0,0.85); - margin-bottom: 16px; + font-size: 16px; + font-weight: 400; + color: rgba(0, 0, 0, 0.85); + margin-bottom: 16px; + } + &-green { + color: #00b42a; + } + &-red { + color: #f53f3f; } } diff --git a/gz-wxparty/api/api.js b/gz-wxparty/api/api.js index 68cc6b8..a1abe7b 100644 --- a/gz-wxparty/api/api.js +++ b/gz-wxparty/api/api.js @@ -8,7 +8,7 @@ // === 测试环境 === // debug: 'https://gz.hugeinfo.com.cn/', - debug: 'http://qbkwa3.natappfree.cc/', + debug: 'http://h468pm.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/', diff --git a/gz-wxparty/pages/myRegisterFlow/index.js b/gz-wxparty/pages/myRegisterFlow/index.js index d1d39b8..61cb9b7 100644 --- a/gz-wxparty/pages/myRegisterFlow/index.js +++ b/gz-wxparty/pages/myRegisterFlow/index.js @@ -2,6 +2,16 @@ const $$ = require('../../utils/util'); const app = getApp(); +// 详情接口 +function getByIdApi(param) { + return $$.request({ + url: 'caseTask/listCaseFlow', + type: 'get', + submitData: param || {}, + service: 'mediate' + }) +} + Page({ /** @@ -38,10 +48,25 @@ ] }, + // 获取纠纷案件详情 + async getById(data) { + $$.showLoading(); + const res = await getByIdApi({ + caseId: data.caseId + }); + $$.hideLoading(); + if (res.type) { + let data = res.data || []; + this.setData({ + flows: data + }); + } + }, + /** * 生命周期函数--监听页面加载 */ onLoad(options) { - + this.getById(options); }, }) \ No newline at end of file diff --git a/gz-wxparty/pages/myRegisterFlow/index.json b/gz-wxparty/pages/myRegisterFlow/index.json index 2bdf431..11492b8 100644 --- a/gz-wxparty/pages/myRegisterFlow/index.json +++ b/gz-wxparty/pages/myRegisterFlow/index.json @@ -1,4 +1,6 @@ { "navigationBarTitleText": "办理流程", - "usingComponents": {} + "usingComponents": { + "time-format": "../../components/time-format/index" + } } \ No newline at end of file diff --git a/gz-wxparty/pages/myRegisterFlow/index.wxml b/gz-wxparty/pages/myRegisterFlow/index.wxml index 6ff349e..4e95288 100644 --- a/gz-wxparty/pages/myRegisterFlow/index.wxml +++ b/gz-wxparty/pages/myRegisterFlow/index.wxml @@ -3,59 +3,59 @@ <view class="flex" wx:for="{{flows}}" data-item="{{ item }}" data-index="{{ index }}" wx:key="index"> <view class="left"> <view class="icon"> - <van-icon size='16' name="{{imgUrl}}myRegisterList_5.png" /> + <image class="icon-image" src="{{imgUrl}}myRegisterList_5.png" mode="" /> </view> <view wx:if="{{index < 3}}" class="line"></view> </view> <view class="right" style="margin-bottom:{{index<flows.length-1 ?'32rpx':'0'}}"> <view class="list-content-flex margin-top"> - <view class="list-content-value">{{item.title}}</view> + <view class="list-content-value">{{item.processName}}</view> </view> - <view wx:if="{{item.status==='1'}}" class="list-content-flex margin-top"> + <view wx:if="{{item.processStep===1}}" class="list-content-flex margin-top"> <view class="list-content-title">反映形式:</view> - <view class="list-content-value">{{item.name1}}</view> + <view class="list-content-value">{{item.visitWayName}}</view> </view> - <view wx:if="{{item.status==='1'}}" class="list-content-flex margin-top"> + <view wx:if="{{item.processStep===1}}" class="list-content-flex margin-top"> <view class="list-content-title">申请时间:</view> - <view class="list-content-value">{{item.name2}}</view> + <time-format format="YYYY-MM-DD HH:mm" value="{{item.showTime}}" /> </view> - <view wx:if="{{item.status==='1'}}" class="list-content-flex margin-top"> + <view wx:if="{{item.processStep===1}}" class="list-content-flex margin-top"> <view class="list-content-title">纠纷类型:</view> - <view class="list-content-value">{{item.name3}}</view> + <view class="list-content-value">{{item.caseTypeName}}</view> </view> - <view wx:if="{{item.status==='2'}}" class="list-content-flex margin-top"> + <view wx:if="{{item.processStep===2}}" class="list-content-flex margin-top"> <view class="list-content-title">受理时间:</view> - <view class="list-content-value">{{item.name4}}</view> + <time-format format="YYYY-MM-DD HH:mm" value="{{item.showTime}}" /> </view> - <view wx:if="{{item.status==='2'}}" class="list-content-flex margin-top"> + <view wx:if="{{item.processStep===2}}" class="list-content-flex margin-top"> <view class="list-content-title">承办部门:</view> - <view class="list-content-value">{{item.name5}}</view> + <view class="list-content-value">{{item.mediateUnitName}}</view> </view> - <view wx:if="{{item.status==='3'}}" class="list-content-flex margin-top"> + <view wx:if="{{item.processStep===3}}" class="list-content-flex margin-top"> <view class="list-content-title">办结时间:</view> - <view class="list-content-value">{{item.name6}}</view> + <time-format format="YYYY-MM-DD HH:mm" value="{{item.showTime}}" /> </view> - <view wx:if="{{item.status==='3'}}" class="list-content-flex margin-top"> + <view wx:if="{{item.processStep===3}}" class="list-content-flex margin-top"> <view class="list-content-title">化解结果:</view> - <view class="list-content-value {{item.name7==='1'? 'green':item.name7==='2'? 'red':''}}">{{item.name7_1}}</view> + <view class="list-content-value {{item.mediResult==='22_00025-1'? 'green':item.mediResult==='22_00025-2'? 'red':''}}">{{item.mediResultName||'-'}}</view> </view> - <view wx:if="{{item.status==='4'}}" class="list-content-flex margin-top"> + <view wx:if="{{item.processStep===4}}" class="list-content-flex margin-top"> <view class="list-content-title">评价时间:</view> - <view class="list-content-value">{{item.name8}}</view> + <time-format format="YYYY-MM-DD HH:mm" value="{{item.showTime}}" /> </view> - <view wx:if="{{item.status==='4'}}" class="list-content-flex margin-top"> + <view wx:if="{{item.processStep===4}}" class="list-content-flex margin-top"> <view class="list-content-title">评价人:</view> - <view class="list-content-value">{{item.name9}}</view> + <view class="list-content-value">{{item.evaluateUserName}}</view> </view> - <view wx:if="{{item.status==='4'}}" class="list-content-flex margin-top"> + <view wx:if="{{item.processStep===4}}" class="list-content-flex margin-top"> <view class="list-content-title">评价等级:</view> <view class="list-content-value"> - <van-rate value="{{item.name10}}" size="{{ 18 }}" count="5" color="#ffd21e" void-icon="star" void-color="#C9CDD4" bind:change="onChange" /> + <van-rate value="{{item.evaluateGrade}}" size="{{ 18 }}" count="5" color="#ffd21e" void-icon="star" void-color="#C9CDD4" bind:change="onChange" /> </view> </view> - <view wx:if="{{item.status==='4'}}" class="list-content-flex margin-top"> + <view wx:if="{{item.processStep===4}}" class="list-content-flex margin-top"> <view class="list-content-title">评语:</view> - <view class="list-content-value">{{item.name11}}</view> + <view class="list-content-value">{{item.evaluateRemark}}</view> </view> </view> </view> diff --git a/gz-wxparty/pages/myRegisterFlow/index.wxss b/gz-wxparty/pages/myRegisterFlow/index.wxss index adb8bad..8562eaf 100644 --- a/gz-wxparty/pages/myRegisterFlow/index.wxss +++ b/gz-wxparty/pages/myRegisterFlow/index.wxss @@ -9,11 +9,19 @@ } .icon { - width: 15px; - height: 15px; + width: 36rpx; + height: 36rpx; background: #e8f3ff; border-radius: 50%; - padding: 6rpx; + display: flex; + align-items: center; + justify-content: center; + padding: 12rpx; +} + +.icon-image { + width: 24rpx; + height: 24rpx; } .line { diff --git a/gz-wxparty/pages/myRegisterList/index.js b/gz-wxparty/pages/myRegisterList/index.js index cc3be1c..9df6b6f 100644 --- a/gz-wxparty/pages/myRegisterList/index.js +++ b/gz-wxparty/pages/myRegisterList/index.js @@ -134,7 +134,9 @@ ...i, plaintiffNames: i.plaintiffList.length > 0 ? i.plaintiffList.map(i => i.trueName).join('、') : '-', defendantNames: i.defendantList.length > 0 ? i.defendantList.map(i => i.trueName).join('、') : '-', - show: index === 0 ? true : false + show: index === 0 ? true : false, + newAgreeContent: i.agreeContent ? i.agreeContent?.length > 75 ? i.agreeContent.slice(0, 75) + '...' : i.agreeContent : '', + agreeContentShow: i.agreeContent?.length > 75 ? true : false, })), total: res.data.totalElements || 0 }); @@ -159,6 +161,26 @@ }) }, + // 展示协议要点 + agreeContentClick(e) { + let item = e.currentTarget.dataset.item; + this.setData({ + showData: { + visible: true, + title: item.agreeContent + } + }) + }, + + agreeContentClosePopup(e) { + this.setData({ + showData: { + visible: false, + title: '' + } + }) + }, + // 评价 evaluate(e) { let id = e.currentTarget.dataset.id; @@ -177,8 +199,7 @@ /** * 生命周期函数--监听页面加载 */ - onLoad(options) { - }, + onLoad(options) {}, onShow() { this.pageQuery(this.data.search) diff --git a/gz-wxparty/pages/myRegisterList/index.wxml b/gz-wxparty/pages/myRegisterList/index.wxml index 73e7df1..b9be00b 100644 --- a/gz-wxparty/pages/myRegisterList/index.wxml +++ b/gz-wxparty/pages/myRegisterList/index.wxml @@ -40,14 +40,18 @@ <view class="list-content-title">被申请方</view> <view class="list-content-value">{{item.defendantNames}}</view> </view> - <view wx:if="{{item.processStatus>1}}" class="list-content-flex margin-top"> + <view wx:if="{{item.processStatus===2||item.processStatus===3}}" class="list-content-flex margin-top"> <view class="list-content-title">承办部门</view> <view class="list-content-value">{{item.mediateDeptName||'-'}}</view> </view> - <view wx:if="{{item.processStatus>2}}" class="list-content-flex margin-top"> + <view wx:if="{{item.processStatus===3}}" class="list-content-flex margin-top"> <view class="list-content-title">化解结果</view> - <view wx:if="{{item.mediResult===1}}" class="list-content-value green-title">{{item.mediResultName||'-'}}</view> - <view wx:if="{{item.mediResult===2}}" class="list-content-value red-title">{{item.mediResultName||'-'}}</view> + <view wx:if="{{item.mediResult==='22_00025-1'}}" class="list-content-value green-title">{{item.mediResultName||'-'}}</view> + <view wx:if="{{item.mediResult==='22_00025-2'}}" class="list-content-value red-title">{{item.mediResultName||'-'}}</view> + </view> + <view wx:if="{{item.agreeType==='24_00003-2'}}" class="list-content-flex margin-top"> + <view class="list-content-title">协议要点</view> + <view wx:if="{{item.agreeContentShow}}" class="list-content-value">{{item.newAgreeContent||'-'}}<text bindtap="agreeContentClick" data-item="{{item}}" class="public-color">更多</text></view> </view> <view class="list-border"></view> <view class="list-detail" bindtap="GoPage" data-url="{{'../../pages/myRegisterDetail/index?id='+item.id}}"> @@ -64,7 +68,7 @@ </view> <view class="list-detail-r">查看</view> </view> - <view wx:if="{{item.processStatus>1}}" bindtap="GoPage" data-url="../../pages/myRegisterFlow/index" class="list-detail"> + <view wx:if="{{item.processStatus>1}}" bindtap="GoPage" data-url="{{'../../pages/myRegisterFlow/index?caseId='+item.id}}" class="list-detail"> <view class="list-detail-l"> <van-icon size='16' name="{{imgUrl}}myRegisterList_3.png" /> <view class="list-detail-title">办理流程</view> @@ -94,4 +98,17 @@ <van-icon wx:if="{{item.hover}}" size='15' name="{{imgUrl}}myRegisterList_5.png" /> </view> </view> +</view> + +<van-overlay show="{{ showData.visible }}" bind:click="agreeContentClosePopup"> + +</van-overlay> + +<view wx:if="{{ showData.visible }}" class="showData-title"> + <view class="showData-title-view"> + <view class="showData-title-label">协议要点</view> + <view >{{showData.title}}</view> + </view> + <view class=""> + </view> </view> \ No newline at end of file diff --git a/gz-wxparty/pages/myRegisterList/index.wxss b/gz-wxparty/pages/myRegisterList/index.wxss index dc66820..e38347d 100644 --- a/gz-wxparty/pages/myRegisterList/index.wxss +++ b/gz-wxparty/pages/myRegisterList/index.wxss @@ -157,4 +157,23 @@ .one-add-person-tip .van-popup--center { top: 198rpx !important; +} + +.showData-title { + background-color: #fff; + position: absolute; + min-height: 538rpx; + bottom: 0rpx; + width: 100%; + z-index: 991; +} + +.showData-title-view { + padding: 40rpx 32rpx; +} + +.showData-title-label { + font-size: 34rpx; + line-height: 50rpx; + margin-bottom: 24rpx; } \ No newline at end of file diff --git a/gz-wxparty/utils/util.js b/gz-wxparty/utils/util.js index afe96e0..06779ee 100644 --- a/gz-wxparty/utils/util.js +++ b/gz-wxparty/utils/util.js @@ -194,6 +194,7 @@ }); }; +// 超出文字使用省略号 const ellipsis = ({ value, len -- Gitblit v1.8.0