forked from gzzfw/frontEnd/gzDyh

dminyi
2024-09-12 b444da33c9de750aec3724e8f1cb4efe8775b165
Merge branch 'master' of http://120.79.193.119:9090/r/gzzfw/frontEnd/gzDyh into master
6 files modified
184 ■■■■ changed files
gz-customerSystem/src/views/register/eventFlow/component/BackModel.jsx 1 ●●●● patch | view | raw | blame | history
gz-customerSystem/src/views/register/eventFlow/component/EscalationModel.jsx 25 ●●●● patch | view | raw | blame | history
gz-customerSystem/src/views/register/eventFlow/component/EventFlow.jsx 4 ●●●● patch | view | raw | blame | history
gz-customerSystem/src/views/register/index.jsx 122 ●●●● patch | view | raw | blame | history
gz-customerSystem/src/views/register/index.less 28 ●●●●● patch | view | raw | blame | history
gz-customerSystem/src/views/register/matterDetail/FileTable.jsx 4 ●●●● patch | view | raw | blame | history
gz-customerSystem/src/views/register/eventFlow/component/BackModel.jsx
@@ -67,6 +67,7 @@
          handleReturn({
            id,
            caseId: props.caseId,
            caseTaskId: props.caseTaskId,
            returnContent: values.returnContent
          })
        }
gz-customerSystem/src/views/register/eventFlow/component/EscalationModel.jsx
@@ -22,13 +22,30 @@
  return $$.ax.request({ url: `caseTask/appearApply`, type: 'post', service: 'mediate', data });
}
function getAppearToUnit() {
  return $$.ax.request({ url: `ctUnit/getAppearToUnit`, type: 'get', service: 'cust' });
}
export default function BackModel(props) {
  const formRef = useRef();
  const [id, setId] = useState()
  const [id, setId] = useState();
  const [unitData, setUnitData] = useState({});
  useEffect(() => {
    getAppId()
    getAppearToUnitData()
  }, [])
  //获取上报部门
  const getAppearToUnitData = async () => {
    const res = await getAppearToUnit()
    if (res.type) {
      setUnitData({
        auditUnitId: res.data.auditUnitId,
        auditUnitName: res.data.auditUnitName
      })
    }
  }
  //获取id
  const getAppId = async () => {
@@ -46,7 +63,9 @@
            handleEscala({
              id,
              caseId: props.caseId,
              returnContent: values.returnContent
              caseTaskId: props.caseTaskId,
              returnContent: values.returnContent,
              ...unitData
            })
          }
        })
@@ -55,7 +74,7 @@
  }
  const handleTemplate = (type) => {
    if(type === 1) {
    if (type === 1) {
      formRef.current.setFieldValue('returnContent', '经初步核查,该事项较为复杂,且涉及多个相关部门的协调配合,为确保能够高效、妥善地解决当事人的问题,特此请求上级给予指导和支持。')
    } else {
      formRef.current.setFieldValue('returnContent', '')
gz-customerSystem/src/views/register/eventFlow/component/EventFlow.jsx
@@ -191,7 +191,7 @@
          unmountOnExit={true}
          maskClosable={false}
        >
          <BackModel caseId={props.caseId} onCancel={() => { setBackVisible(false) }} />
          <BackModel caseId={props.caseId} caseTaskId={props.caseTaskId} onCancel={() => { setBackVisible(false) }} />
        </Modal>
        <Modal
          title='上报'
@@ -202,7 +202,7 @@
          unmountOnExit={true}
          maskClosable={false}
        >
          <EscalationModel caseId={props.caseId} onCancel={() => { setEscalationVisible(false) }} />
          <EscalationModel caseId={props.caseId} caseTaskId={props.caseTaskId} onCancel={() => { setEscalationVisible(false) }} />
        </Modal>
        <Modal
          title='交办'
gz-customerSystem/src/views/register/index.jsx
@@ -8,15 +8,18 @@
 */
import React, { useEffect, useState, useRef } from 'react';
import { useNavigate } from 'react-router-dom';
import { tab1, tab2, tab3, tab4, tab5, tab6, visitInto, checkInto } from '@/assets/images'
import { tab1, tab2, tab3, tab4, tab5, tab6 } from '@/assets/images'
import TableView from '../../components/TableView';
import { Space } from 'antd';
import { Tabs, Typography, Radio } from '@arco-design/web-react';
import { Tabs, Typography, Radio, Form, Input, DatePicker, Button, Grid } from '@arco-design/web-react';
import * as $$ from '@/utils/utility';
import './index.less';
const FormItem = Form.Item;
const TabPane = Tabs.TabPane;
const { RangePicker } = DatePicker;
const Row = Grid.Row;
const Col = Grid.Col;
//工作总览数据
function getCountListApi(data) {
@@ -65,6 +68,7 @@
const VisitWorkBench = () => {
  const navigate = useNavigate();
  const formRef = useRef();
  // 静态数据
  //分派表头
@@ -73,7 +77,7 @@
      title: '流转时间',
      dataIndex: 'turnaroundTime',
      key: 'turnaroundTime',
      width: 100,
      width: 150,
    },
    {
      title: '分派时限',
@@ -121,7 +125,7 @@
      title: '流转时间',
      dataIndex: 'turnaroundTime',
      key: 'turnaroundTime',
      width: 100,
      width: 150,
    },
    {
      title: '签收时限',
@@ -136,7 +140,7 @@
      title: '事项等级',
      dataIndex: 'caseGrade',
      key: 'caseGrade',
      width: 80,
      width: 100,
    },
    {
      title: '事项来源',
@@ -169,7 +173,7 @@
      title: '流转时间',
      dataIndex: 'turnaroundTime',
      key: 'turnaroundTime',
      width: 100,
      width: 150,
    },
    {
      title: '受理时限',
@@ -184,7 +188,7 @@
      title: '事项等级',
      dataIndex: 'caseGrade',
      key: 'caseGrade',
      width: 80,
      width: 100,
    },
    {
      title: '事项来源',
@@ -331,7 +335,7 @@
      title: '化解结果',
      dataIndex: 'mediResult',
      key: 'mediResult',
      width: 80,
      width: 100,
    },
    {
      title: '无法化解理由',
@@ -574,7 +578,7 @@
              title: '流转时间',
              dataIndex: 'turnaroundTime',
              key: 'turnaroundTime',
              width: 100,
              width: 150,
            },
            {
              title: '已办天数',
@@ -653,7 +657,7 @@
              title: '结案申请时间',
              dataIndex: 'turnaroundTime',
              key: 'turnaroundTime',
              width: 180,
              width: 150,
            },
            {
              title: '事项等级',
@@ -689,7 +693,7 @@
              title: '化解结果',
              dataIndex: 'mediResult',
              key: 'mediResult',
              width: 180,
              width: 100,
            },
            {
              title: '申请方',
@@ -935,7 +939,7 @@
              title: '督办时间',
              dataIndex: 'turnaroundTime',
              key: 'turnaroundTime',
              width: 100,
              width: 150,
            },
            {
              title: '回复时限',
@@ -1094,6 +1098,7 @@
  })
  const [total, setTotal] = useState(0);//表格数据总数量
  const [loading, setLoading] = useState(false);//表格loading
  const [selectedRowKeys, setSelectedRowKeys] = useState([]);
  useEffect(() => {
    getCountData();
@@ -1102,6 +1107,11 @@
  useEffect(() => {
    getTableData(tabActivekey)
  }, [searchData, pageData])
  //批量选择
  const onSelectChange = (newSelectedRowKeys, selectedRows) => {
    setSelectedRowKeys(newSelectedRowKeys);
  }
  //签收
  const handleSign = async (caseId, ownerId) => {
@@ -1245,8 +1255,30 @@
    }
  }
  //查询
  const handleSubmit = () => {
    const data = formRef.current.getFieldsValue();
    const { time, ...rest } = data
    setSearchData({
      ...searchData,
      timeStart: time ? time[0] : '',
      timeEnd: time ? time[1] : '',
      ...rest
    })
  }
  //批量签收
  const handleBatchQs = () => {
    console.log(selectedRowKeys);
  }
  const rowSelection = {
    selectedRowKeys: selectedRowKeys,
    onChange: onSelectChange,
  }
  return (
    <div className='VisitWorkBench'>
    <div className='VisitWorkBench' >
      <div className='VisitWorkBench-top'>
        <span style={{ fontWeight: 600 }}>工作总览</span>
        <div className='VisitWorkBench-top-list'>
@@ -1272,7 +1304,14 @@
          }
        </div>
      </div>
      <div className='VisitWorkBench-middle'>
      <div
        className='VisitWorkBench-middle'
        onKeyUp={(e) => {
          if (e.key === 'Enter') {
            handleSubmit()
          }
        }}
      >
        <Tabs
          activeTab={searchData.status}
          onChange={handleColumnType}
@@ -1288,7 +1327,7 @@
              }
            >
              <Typography.Paragraph key={item.value}>
                {tabActivekey == 5 &&
                {tabActivekey == '5' &&
                  <Radio.Group
                    type='button'
                    value={searchData.type}
@@ -1315,7 +1354,8 @@
                  />
                }
                <TableView
                  columns={tabActivekey == 5 ? item.columnsMap[searchData.type] : item.columns}
                  rowSelection={tabActivekey == '2' && item.value === '1' ? rowSelection : null}
                  columns={tabActivekey == '5' ? item.columnsMap[searchData.type] : item.columns}
                  dataSource={tableData}
                  size="small"
                  rowKey="caseId"
@@ -1324,7 +1364,7 @@
                  scroll={{
                    x: 1300
                  }}
                  offsetHeight={153}
                  offsetHeight={161}
                  loading={loading}
                  pagination={{
                    current: pageData.page,
@@ -1340,15 +1380,57 @@
                  }}
                />
              </Typography.Paragraph>
              {
                (tabActivekey == '2' && item.value === '1') && <div className='VisitWorkBench-middle-select'>
                  <span>已选{selectedRowKeys.length}项</span>
                  <span className='linkBtnColor' onClick={() => { setSelectedRowKeys([]) }}>取消</span>
                  <span className='linkBtnColor' onClick={handleBatchQs}>批量签收</span>
                </div>
              }
            </TabPane>
          })}
        </Tabs>
        <div className='VisitWorkBench-middle-search'>
          <Form
            ref={formRef}
            layout="vertical"
          >
            <div style={{ display: 'flex' }}>
              <FormItem
                label=' '
                field='time'
              >
                <RangePicker
                  style={{ width: '100%' }}
                  format='YYYY-MM-DD HH:mm'
                  showTime={true}
                />
              </FormItem>
              <FormItem
                label=' '
                field='partyName'
              >
                <Input
                  allowClear
                  placeholder='查询申请方/被申请方关键词'
                />
              </FormItem>
              <Button
                type="primary"
                className="dialogPrimary"
                onClick={handleSubmit}
              >
                查询
              </Button>
            </div>
          </Form>
        </div>
      </div>
      <div className='VisitWorkBench-bottom'>
        群众来访接待
        <div style={{ display: 'flex', justifyContent: 'space-evenly',gap:'24px',marginTop:'16px' }}>
        <div style={{ display: 'flex', justifyContent: 'space-evenly', gap: '24px', marginTop: '16px' }}>
          <div className='bottomTab1' onClick={() => navigate(`/mediate/visit`)}>
            <div className='VisitWorkBench-bottom-title'  style={{ color: '#206BCD' }}>大厅来访</div>
            <div className='VisitWorkBench-bottom-title' style={{ color: '#206BCD' }}>大厅来访</div>
            {/* <img src={visitInto} alt='' className='VisitWorkBench-bottom-img' /> */}
          </div>
          <div className='bottomTab2'>
gz-customerSystem/src/views/register/index.less
@@ -856,7 +856,33 @@
        background: #ffffff;
        padding: 12px 16px 16px 16px;
        margin-top: 12px;
        // height: 54vh;
        position: relative;
        &-search {
            position: absolute;
            right: 16px;
            top: 12px;
            .arco-form-item {
                margin-right: 16px;
            }
            .arco-form-layout-vertical>.arco-form-label-item {
                margin-bottom: 0;
            }
        }
        &-select {
            position: absolute;
            left: 0;
            bottom: 12px;
            .linkBtnColor {
                color: #1A6FB8;
                cursor: pointer;
                margin-left: 16px;
            }
        }
    }
    &-bottom {
gz-customerSystem/src/views/register/matterDetail/FileTable.jsx
@@ -100,7 +100,7 @@
      title: '操作',
      dataIndex: 'perClassName',
      key: 'perClassName',
      width: props.isReview ? 60 : 125,
      width: props.isReview ? 80 : 140,
      fixed: 'right',
      render: (text, record) => (
        <Space size="middle">
@@ -351,7 +351,7 @@
        rowKey="ownerType"
        bordered={true}
        scroll={{ x: 1300 }}
        tableHeight={126}
        tableHeight={137}
      />
      <Modal
        style={{ width: '512px' }}