forked from gzzfw/frontEnd/gzDyh

liuwh
2024-09-14 221546808c11df777199def992e4abbf1fc31b5a
Merge branch 'master' of http://120.79.193.119:9090/r/gzzfw/frontEnd/gzDyh into master
16 files modified
437 ■■■■■ changed files
gz-customerSystem/src/api/apiHandler.js 5 ●●●●● patch | view | raw | blame | history
gz-customerSystem/src/api/appUrl.js 4 ●●●● patch | view | raw | blame | history
gz-customerSystem/src/components/Layout/index.jsx 78 ●●●● patch | view | raw | blame | history
gz-customerSystem/src/components/personCard/DetailDialog.jsx 17 ●●●●● patch | view | raw | blame | history
gz-customerSystem/src/components/personCard/index.jsx 6 ●●●● patch | view | raw | blame | history
gz-customerSystem/src/router/router.js 8 ●●●● patch | view | raw | blame | history
gz-customerSystem/src/views/register/closingReview/index.jsx 5 ●●●●● patch | view | raw | blame | history
gz-customerSystem/src/views/register/handleFeedback/index.jsx 7 ●●●● patch | view | raw | blame | history
gz-customerSystem/src/views/register/index.jsx 15 ●●●● patch | view | raw | blame | history
gz-customerSystem/src/views/register/index.less 4 ●●●● patch | view | raw | blame | history
gz-customerSystem/src/views/register/matterDetail/FileTable.jsx 1 ●●●● patch | view | raw | blame | history
gz-customerSystem/src/views/register/matterDetail/NewFileCheck.jsx 4 ●●●● patch | view | raw | blame | history
gz-customerSystem/src/views/register/visit/component/levelDetail.jsx 37 ●●●● patch | view | raw | blame | history
gz-customerSystem/src/views/register/visit/component/previewTable.jsx 153 ●●●●● patch | view | raw | blame | history
gz-customerSystem/src/views/register/visit/component/visitorRegister.jsx 27 ●●●●● patch | view | raw | blame | history
gz-customerSystem/src/views/register/visit/index.jsx 66 ●●●● patch | view | raw | blame | history
gz-customerSystem/src/api/apiHandler.js
@@ -52,10 +52,11 @@
export const ax = axios;
export function request(value = {}) {
  console.log(value);
  let token = getSessionStorage("customerSystemToken");
  // 无token时
  if (!token && value.url !== "ctAccount/login") {
  // 无token、非登录、非网格单点跳转时
  if (!value.isGrid && !token && value.url !== "ctAccount/login") {
    catchApiError({
      content: "抱歉!登录状态已失效请重新登录",
      loginStatus: "lose",
gz-customerSystem/src/api/appUrl.js
@@ -2,8 +2,8 @@
 * @Company: hugeInfo
 * @Author: ldh
 * @Date: 2022-02-16 11:25:57
 * @LastEditTime: 2024-09-13 11:32:06
 * @LastEditors: dminyi 1301963064@qq.com
 * @LastEditTime: 2024-09-14 10:03:46
 * @LastEditors: lwh
 * @Version: 1.0.0
 * @Description: api地址
 */
gz-customerSystem/src/components/Layout/index.jsx
@@ -20,6 +20,17 @@
    return $$.ax.request({ url: `ctRole/getById?id=${roleId}`, type: 'get', service: 'cust' });
}
//对接单点登录,获取token
function gridLogin(data) {
    return $$.ax.request({ url: `ctAccount/gridLogin`, type: 'post', service: 'cust', isGrid: true, data });
}
// 角色选择
function switchRoleApi(data) {
    return $$.ax.request({ url: 'ctAccount/switchRole', type: 'get', data, service: 'cust' });
}
const Layout = ({ isNotNav, headerUserChange }) => {
    const location = useLocation() || {};
@@ -40,6 +51,9 @@
    // 当前选中的角色 及其 权限
    const [roleActive, setRoleActive] = useState({ id: null, powerMap: {} });
    //网格跳转请求状态
    const [gridStatus, setGridStatus] = useState(false)
    // 切换头部menu
    function handleClickHeaderMenu(values) {
@@ -97,17 +111,48 @@
        }
    }
    //请求网格token
    const getGridToken = async (token) => {
        const res = await gridLogin({
            token
        })
        if (res.type) {
            setGridStatus(true)
            $$.setSessionStorage('gridToken', '')
            $$.setSessionStorage('customerSystemToken', res.data?.token);
            $$.setLocal('customerSystemUser', res.data || {});
            let ctUseroleList = res.data?.ctUseroleList || [];
            const roleId = ctUseroleList[0]?.roleId
            const roleName = ctUseroleList[0]?.roleName
            const roleCode = ctUseroleList[0]?.roleCode
            $$.setSessionStorage('role', { roleId: roleId, roleName: roleName });
            setRoleActive({ id: roleId, roleName: roleName, powerMap: {} });
            const res = await switchRoleApi({ roleCode: roleCode });
            if (res.type) {
                $$.setSessionStorage('customerSystemToken', res.data);
                navigate('/mediate/visit/visitWorkBench');
            }
        }
    }
    // 初始化 格式化数据适应菜单栏
    useEffect(() => {
        let role = $$.getSessionStorage('role');
        if (role) {
            setRoleActive({ id: role.roleId, roleName: role.roleName, powerMap: {} });
            return;
        }
        let customerSystemUser = $$.getLocal('customerSystemUser');
        let ctUseroleList = customerSystemUser?.ctUseroleList || [];
        if (ctUseroleList[0]?.roleId) {
            setRoleActive({ id: ctUseroleList[0]?.roleId, roleName: ctUseroleList[0]?.roleName, powerMap: {} });
        //单点登录,网格传一个token在session,如果有就请求接口
        const gridToken = $$.getSessionStorage('gridToken');
        if (gridToken) {
            getGridToken(gridToken)
        } else {
            setGridStatus(true)
            let role = $$.getSessionStorage('role');
            if (role) {
                setRoleActive({ id: role.roleId, roleName: role.roleName, powerMap: {} });
                return;
            }
            let customerSystemUser = $$.getLocal('customerSystemUser');
            let ctUseroleList = customerSystemUser?.ctUseroleList || [];
            if (ctUseroleList[0]?.roleId) {
                setRoleActive({ id: ctUseroleList[0]?.roleId, roleName: ctUseroleList[0]?.roleName, powerMap: {} });
            }
        }
    }, []);
@@ -117,7 +162,7 @@
        async function getRolePower(roleId, roleName) {
            global.setSpinning(true);
            const res = await getRolePowerApi(roleId);
            console.log(res,'res1111')
            console.log(res, 'res1111')
            global.setSpinning(false);
            if (res.type) {
                let resData = res.data?.roleTreeBOS || [];
@@ -132,14 +177,14 @@
                    }
                });
                let powerMap = setPowerDataMap(power_data);
                function loop(data, arr) {
                    data.forEach((x) => {
                        if (x.powerUrl && powerMap[x.powerUrl]?.show) {
                            arr.push(x.powerUrl);
                        }
                        if ( x.powerUrl && powerMap[x.powerUrl]?.update) {
                        if (x.powerUrl && powerMap[x.powerUrl]?.update) {
                            arr.push(x.powerUrl);
                            console.log(powerMap[x.powerUrl]?.update, 'res111111111');
                        }
@@ -173,11 +218,11 @@
                headerUserChange={headerUserChange}
                handleChangeRole={handleChangeRole}
            />
            {isNotNav ? (
            {gridStatus && isNotNav ? (
                <main className="layout-main" id="layoutMain">
                    <Outlet />
                </main>
            ) : (
            ) : gridStatus ? (
                <main className="layout-main" id="layoutMain" ref={layoutRef}>
                    <Navigation powerMap={roleActive.powerMap} roleActive={roleActive} sideMenu={sideMenu} />
                    <main id="layoutChild" className="layout-child">
@@ -185,7 +230,8 @@
                    </main>
                    <SOP />
                </main>
            )}
            ) : <></>
            }
        </>
    );
};
gz-customerSystem/src/components/personCard/DetailDialog.jsx
@@ -326,14 +326,19 @@
          return {
            ...res,
            value: <>
              {data[res.field]?.map(item => {
                console.log(item);
                if(item.response) {
              {data[res.field]?.map((item, index) => {
                if (item.response) {
                  //新上传的,前端数据
                  const data = item.response.data[0]
                  return <PreviewImage name={data.name} src={data.showUrl} />
                  const newData = item.response.data[0]
                  return <div style={{ display: 'inline-block' }}>
                    <PreviewImage name={newData.name} src={newData.showUrl} />
                    {index !== data[res.field].length - 1 && <>,</>}
                  </div>
                } else {
                  return <PreviewImage name={item.name} src={item.showUrl} />
                  return <div style={{ display: 'inline-block' }}>
                    <PreviewImage name={item.name} src={item.showUrl} />
                    {index !== data[res.field].length - 1 && <>,</>}
                  </div>
                }
              })}
            </>
gz-customerSystem/src/components/personCard/index.jsx
@@ -35,10 +35,10 @@
  const typeList = data?.map(item => {
    return item.perType
  })//获取有多少申请人和被申请人
  if (typeList.indexOf('15_020008-1') != -1) {
  if (typeList?.indexOf('15_020008-1') != -1) {
    isAgent = true
  }
  if (typeList.indexOf('15_020008-2') != -1) {
  if (typeList?.indexOf('15_020008-2') != -1) {
    isAgentFor = true
  }
@@ -51,7 +51,7 @@
  return (
    <Fragment>
      <Row gutter={[24, 16]}>
        {data.map((x, t) => (
        {data?.map((x, t) => (
          <Col span={7} key={t}>
            <div className="public-personCard" style={{ cursor: 'pointer' }}>
              <div
gz-customerSystem/src/router/router.js
@@ -217,10 +217,10 @@
                        <Route path="judicialOverview" element={<JudicialOverview />} />
                        {/* 来访登记*/}
                        <Route path="visit/:id?" element={<Visit />} />
                        <Route path="visit/eventFlow/:caseTaskId?/:caseId?" element={<EventFlow />} />
                        <Route path="visit/handleFeedback/:caseTaskId?/:caseId?" element={<HandleFeedback />} />
                        <Route path="visit/fileMessage/:caseTaskId?/:caseId?" element={<FileMessage />} />
                        <Route path="visit/closingReview/:caseTaskId?/:caseId?" element={<ClosingReview />} />
                        <Route path="visit/eventFlow" element={<EventFlow />} />
                        <Route path="visit/handleFeedback" element={<HandleFeedback />} />
                        <Route path="visit/fileMessage" element={<FileMessage />} />
                        <Route path="visit/closingReview" element={<ClosingReview />} />
                        <Route path="visit/visitWorkBench" element={<VisitWorkBench />} />
                        {/* 工作流模块 */}
gz-customerSystem/src/views/register/closingReview/index.jsx
@@ -18,6 +18,11 @@
const myTab = [
    {
        img: Matter,
        label: '详情',
        key: 'dslxq',
    },
    {
        img: Matter,
        label: '事项详情',
        key: 'sxxq',
    },
gz-customerSystem/src/views/register/handleFeedback/index.jsx
@@ -60,6 +60,11 @@
    const myTab = [
        {
            img: Matter,
            label: '详情',
            key: "dslxq"
        },
        {
            img: Matter,
            label: '事项详情',
            key: "sxxq"
        },
@@ -147,7 +152,7 @@
    //根据id定义组件
    const getTypeDom = (key) => {
        if (key === 'sxxq') {
        if (key === 'sxxq' || key === 'dslxq') {
            return <MatterDetail hasApplet={true} hasEditBtn={true} authorData={authorData} caseId={caseId} />
        }
        if (key === 'sxbl') {
gz-customerSystem/src/views/register/index.jsx
@@ -954,7 +954,7 @@
              title: '督办部门',
              dataIndex: 'caseGrade',
              key: 'caseGrade',
              width: 80,
              width: 110,
            },
            {
              title: '督办意见',
@@ -1020,7 +1020,7 @@
              title: '督办部门',
              dataIndex: 'caseGrade',
              key: 'caseGrade',
              width: 80,
              width: 110,
            },
            {
              title: '督办意见',
@@ -1204,11 +1204,17 @@
        status: '0',
        type: 1
      })
    } else if (key == '4' || key == '6') {
    } else if (key == '4') {
      setSearchData({
        sortType: 1,
        sortColmn: 1,
        status: '2',
      })
    } else if (key == '6') {
      setSearchData({
        sortType: 1,
        sortColmn: 1,
        status: '0',
      })
    } else {
      setSearchData({
@@ -1219,6 +1225,7 @@
    }
    setTabActivekey(key);
    setTableTab(data.tabList)
    getCountData();
  }
  //获取工作总览数据
@@ -1347,7 +1354,7 @@
                </span>
              }
            >
              <Typography.Paragraph key={item.value}>
              <Typography.Paragraph key={tabActivekey + item.value}>
                {tabActivekey == '5' &&
                  <Radio.Group
                    type='button'
gz-customerSystem/src/views/register/index.less
@@ -952,7 +952,7 @@
            height: 6px;
            background: #F53F3F;
            border-radius: 2px;
            margin: 0 5px 2px 0;
            margin: 0 5px 3px 0;
        }
        &-tips {
@@ -981,7 +981,7 @@
            height: 6px;
            background: #00b42a;
            border-radius: 2px;
            margin: 0 5px 2px 0;
            margin: 0 5px 3px 0;
        }
    }
}
gz-customerSystem/src/views/register/matterDetail/FileTable.jsx
@@ -152,7 +152,6 @@
  ]
  useEffect(() => {
    console.log(props.fileInfoList);
    if (props.fileInfoList && props.fileInfoList.length != 0) {
      //证明材料
      const applyFile = props.fileInfoList.find(item => item.ownerType == "22_00018-101")
gz-customerSystem/src/views/register/matterDetail/NewFileCheck.jsx
@@ -123,7 +123,7 @@
                                title={item.ownerTypeName + `(${item.fileList && item.fileList.length || 0})`}
                            >
                                {item.fileList?.map(res => {
                                    return <MenuItem key={res.id} onClick={() => { clickItem(res) }}>{res.trueName}</MenuItem>
                                    return <MenuItem key={res.id} onClick={() => { clickItem(res) }}>{res.name}</MenuItem>
                                })}
                            </SubMenu>
                        })}
@@ -133,7 +133,7 @@
                    {
                        itemData ? <Fragment>
                            <div style={{ background: '#e8f3ff', color: '#1A6FB8', padding: '5px 10px', marginBottom: '16px' }}>
                                <span>材料名称:{itemData.trueName}</span>&nbsp;&nbsp;|&nbsp;&nbsp;
                                <span>材料名称:{itemData.name}</span>&nbsp;&nbsp;|&nbsp;&nbsp;
                                <span>上传时间:{itemData.updateTime}</span>&nbsp;&nbsp;|&nbsp;&nbsp;
                                <span>上传人:{itemData.uploaderName} {itemData.uploaderType && <span>({peopleTypeMap[itemData.uploaderType]})</span>}</span>
                            </div>
gz-customerSystem/src/views/register/visit/component/levelDetail.jsx
@@ -111,40 +111,11 @@
}
const AiQuestion = ({ visible, onClose, aiData, aiLawData, caseDetailAi }) => {
    const [list, setList] = useState([
        // {
        //     id: '1',
        //     type: '典型案例',
        //     name: '唐某某诉重庆某工业有限公司劳动合同纠纷案'
        // },
        // {
        //     id: '2',
        //     type: '相似案例',
        //     name: '曾某某诉某网络科技公司劳动争议案'
        // },
        // {
        //     id: '3',
        //     type: '相似案例',
        //     name: '曾某某诉某网络科技公司劳动争议案'
        // },
    ])
    const [list, setList] = useState([])
    const [caseDetailView, setCaseDetailView] = useState({})
    const [modalType, setModalType] = useState('case')
    const [lawDetail, setLawDetail] = useState({})
    const [layerList, setLayerList] = useState([
        {
            id: '1',
            name: '法条一'
        },
        {
            id: '2',
            name: '法条二'
        },
        {
            id: '3',
            name: '法条三'
        },
    ])
    const [layerList, setLayerList] = useState([])
    const [caseDetail, setCaseDetail] = useState(false)
    const toggleView = (type, id, caseType, name) => {
@@ -208,7 +179,7 @@
                            <div className='marginLeft-title'>相关案例:</div>
                            <div className='aiBox-list'>
                                {list?.map((item, index) => (
                                    <div className='aiBox-list-item'>
                                    <div className='aiBox-list-item' key={item.caseId}>
                                        <div className='aiBox-list-item-type'>{item.caseType === 1 ? '典型案例' : '相似案例'}</div>
                                        <div className='aiBox-list-item-name'>{item.caseName}</div>
                                        <div className='aiBox-list-item-btn' onClick={() => toggleView('case', item.caseId, item.caseType, item.caseName)} >查看</div>
@@ -220,7 +191,7 @@
                            <div className='marginLeft-title'>相关法条:</div>
                            <div className='aiBox-list'>
                                {layerList?.map((item, index) => (
                                    <div className='aiBox-list-item'>
                                    <div className='aiBox-list-item' key={item.lawInfoId}>
                                        <div className='aiBox-list-item-type'>相关法条</div>
                                        <div className='aiBox-list-item-name'>{item.lawTitle}{item.lawIndex}</div>
                                        <div className='aiBox-list-item-btn' onClick={() => toggleView('law', item.lawInfoId)} >查看</div>
gz-customerSystem/src/views/register/visit/component/previewTable.jsx
@@ -6,6 +6,7 @@
const ApplyDialog = ({ applyDialog }) => {
  console.log(applyDialog, 'applyDialog');
  return (
    <>
      {
@@ -49,14 +50,19 @@
              <th bgcolor="#F7F8FA" className="table-title">身份证明材料</th>
              <td>
                {
                  item.fileInfoList?.map(res => {
                    if (res.ownerType == "22_00018-202") {
                      return res.fileList.map((result, resIndex) => {
                        return <div style={{display: 'inline-block'}}>
                          <PreviewImage name={result.name} src={result.showUrl} />
                          {resIndex !== res.fileList.length - 1 && <>,</>}
                        </div>
                      })
                  item.file?.map((result, resIndex) => {
                    if (result.response) {
                      //新上传的,前端数据
                      const newData = result.response.data[0]
                      return <div style={{ display: 'inline-block' }}>
                        <PreviewImage name={newData.name} src={newData.showUrl} />
                        {resIndex !== item.file?.length - 1 && <>,</>}
                      </div>
                    } else {
                      return <div style={{ display: 'inline-block' }}>
                        <PreviewImage name={result.name} src={result.showUrl} />
                        {resIndex !== item.file?.length - 1 && <>,</>}
                      </div>
                    }
                  })
                }
@@ -74,6 +80,7 @@
}
const AgentDialog = ({ agentDialog }) => {
  console.log(agentDialog, 'agentDialog');
  return (
    <>
      {agentDialog?.map((item, index) => (
@@ -119,14 +126,19 @@
            <th bgcolor="#F7F8FA" className="table-title">身份证明材料</th>
            <td>
              {
                item.fileInfoList?.map(res => {
                  if (res.ownerType == "22_00018-202") {
                    return res.fileList?.map((result, resIndex) => {
                      return <a href="your-link-here.html" target="_blank">
                        <img src={link} alt="" className="title-file" />{result.trueName}
                        {resIndex !== res.fileList.length - 1 && <>,</>}
                      </a>
                    })
                item.file?.map((result, resIndex) => {
                  if (result.response) {
                    //新上传的,前端数据
                    const newData = result.response.data[0]
                    return <div style={{ display: 'inline-block' }}>
                      <PreviewImage name={newData.name} src={newData.showUrl} />
                      {resIndex !== item.file?.length - 1 && <>,</>}
                    </div>
                  } else {
                    return <div style={{ display: 'inline-block' }}>
                      <PreviewImage name={result.name} src={result.showUrl} />
                      {resIndex !== item.file?.length - 1 && <>,</>}
                    </div>
                  }
                })
              }
@@ -134,28 +146,32 @@
            <th bgcolor="#F7F8FA" className="table-title">代理人授权委托书</th>
            <td>
              {
                item.fileInfoList?.map(res => {
                  if (res.ownerType == '22_00018-207') {
                    return res.fileList.map((result, resIndex) => {
                      return <a href="your-link-here.html" target="_blank">
                        <img src={link} alt="" className="title-file" />{result.trueName}
                        {resIndex !== res.fileList.length - 1 && <>,</>}
                      </a>
                    })
                item.file1?.map((result, resIndex) => {
                  if (result.response) {
                    //新上传的,前端数据
                    const newData = result.response.data[0]
                    return <div style={{ display: 'inline-block' }}>
                      <PreviewImage name={newData.name} src={newData.showUrl} />
                      {resIndex !== item.file?.length - 1 && <>,</>}
                    </div>
                  } else {
                    return <div style={{ display: 'inline-block' }}>
                      <PreviewImage name={result.name} src={result.showUrl} />
                      {resIndex !== item.file?.length - 1 && <>,</>}
                    </div>
                  }
                })
              }
            </td>
          </tr>
        </table>
      ))}
    </>
  )
}
const Respondent = ({ respondent }) => {
  console.log(respondent, 'respondent');
  return (
    <>
      {respondent?.map((item, index) => (
@@ -182,14 +198,19 @@
            <th bgcolor="#F7F8FA" className="table-title">企业登记材料</th>
            <td>
              {
                item.fileInfoList?.map(res => {
                  if (res.ownerType == '22_00018-203') {
                    return res.fileList.map((result, resIndex) => {
                      return <a href="your-link-here.html" target="_blank">
                        <img src={link} alt="" className="title-file" />{result.trueName}
                        {resIndex !== res.fileList.length - 1 && <>,</>}
                      </a>
                    })
                item.file?.map((result, resIndex) => {
                  if (result.response) {
                    //新上传的,前端数据
                    const newData = result.response.data[0]
                    return <div style={{ display: 'inline-block' }}>
                      <PreviewImage name={newData.name} src={newData.showUrl} />
                      {resIndex !== item.file?.length - 1 && <>,</>}
                    </div>
                  } else {
                    return <div style={{ display: 'inline-block' }}>
                      <PreviewImage name={result.name} src={result.showUrl} />
                      {resIndex !== item.file?.length - 1 && <>,</>}
                    </div>
                  }
                })
              }
@@ -197,14 +218,19 @@
            <th bgcolor="#F7F8FA" className="table-title" >法定代表人身份证明材料</th>
            <td>
              {
                item.fileInfoList?.map(res => {
                  if (res.ownerType == '22_00018-204') {
                    return res.fileList.map((result, resIndex) => {
                      return <a href="your-link-here.html" target="_blank">
                        <img src={link} alt="" className="title-file" />{result.trueName}
                        {resIndex !== res.fileList.length - 1 && <>,</>}
                      </a>
                    })
                item.file1?.map((result, resIndex) => {
                  if (result.response) {
                    //新上传的,前端数据
                    const newData = result.response.data[0]
                    return <div style={{ display: 'inline-block' }}>
                      <PreviewImage name={newData.name} src={newData.showUrl} />
                      {resIndex !== item.file?.length - 1 && <>,</>}
                    </div>
                  } else {
                    return <div style={{ display: 'inline-block' }}>
                      <PreviewImage name={result.name} src={result.showUrl} />
                      {resIndex !== item.file?.length - 1 && <>,</>}
                    </div>
                  }
                })
              }
@@ -220,6 +246,7 @@
}
const Company = ({ company }) => {
  console.log(company, 'company');
  return (
    <>
      {company?.map((item, index) => (
@@ -246,14 +273,19 @@
            <th bgcolor="#F7F8FA" className="table-title">机构登记材料</th>
            <td>
              {
                item.fileInfoList?.map(res => {
                  if (res.ownerType == '22_00018-203') {
                    return res.fileList.map((result, resIndex) => {
                      return <a href="your-link-here.html" target="_blank">
                        <img src={link} alt="" className="title-file" />{result.trueName}
                        {resIndex !== res.fileList.length - 1 && <>,</>}
                      </a>
                    })
                item.file?.map((result, resIndex) => {
                  if (result.response) {
                    //新上传的,前端数据
                    const newData = result.response.data[0]
                    return <div style={{ display: 'inline-block' }}>
                      <PreviewImage name={newData.name} src={newData.showUrl} />
                      {resIndex !== item.file?.length - 1 && <>,</>}
                    </div>
                  } else {
                    return <div style={{ display: 'inline-block' }}>
                      <PreviewImage name={result.name} src={result.showUrl} />
                      {resIndex !== item.file?.length - 1 && <>,</>}
                    </div>
                  }
                })
              }
@@ -261,14 +293,19 @@
            <th bgcolor="#F7F8FA" className="table-title" >机构代表人身份证明材料</th>
            <td>
              {
                item.fileInfoList?.map(res => {
                  if (res.ownerType == '22_00018-204') {
                    return res.fileList.map((result, resIndex) => {
                      return <a href="your-link-here.html" target="_blank">
                        <img src={link} alt="" className="title-file" />{result.trueName}
                        {resIndex !== res.fileList.length - 1 && <>,</>}
                      </a>
                    })
                item.file1?.map((result, resIndex) => {
                  if (result.response) {
                    //新上传的,前端数据
                    const newData = result.response.data[0]
                    return <div style={{ display: 'inline-block' }}>
                      <PreviewImage name={newData.name} src={newData.showUrl} />
                      {resIndex !== item.file?.length - 1 && <>,</>}
                    </div>
                  } else {
                    return <div style={{ display: 'inline-block' }}>
                      <PreviewImage name={result.name} src={result.showUrl} />
                      {resIndex !== item.file?.length - 1 && <>,</>}
                    </div>
                  }
                })
              }
gz-customerSystem/src/views/register/visit/component/visitorRegister.jsx
@@ -50,32 +50,7 @@
  }, [fakeData])
  useEffect(() => {
    setFakeData(props.partyList?.map(item => {
      const fileInfoList = item.fileInfoList
      let file = [];//身份证明材料、企业登记材料
      let file1 = [];//法人、机构身份证明材料、代理人授权委托书
      if (fileInfoList && fileInfoList.length != 0) {
        fileInfoList.forEach(item => {
          if (item.ownerType == '22_00018-202' || item.ownerType == '22_00018-203') {
            file.push({
              ...item.fileList[0],
              uid: item.fileList[0].id,
            })
          }
          if (item.ownerType == '22_00018-204' || item.ownerType == '22_00018-207') {
            file1.push({
              ...item.fileList[0],
              uid: item.fileList[0].id,
            })
          }
        })
      }
      return {
        ...item,
        file,
        file1
      }
    }) || [])
    setFakeData(props.partyList || [])
  }, [props.partyList])
  //获取当前时间
gz-customerSystem/src/views/register/visit/index.jsx
@@ -21,19 +21,19 @@
const Step = Steps.Step;
function saveDispute(data) {
  return $$.ax.request({ url: `casedraftInfo/caseDraftRegister`, type: 'post', service: 'mediate', data });
    return $$.ax.request({ url: `casedraftInfo/caseDraftRegister`, type: 'post', service: 'mediate', data });
}
function getId() {
  return $$.ax.request({ url: `caseUtils/getNewTimeCaseId`, type: 'get', service: 'utils' });
    return $$.ax.request({ url: `caseUtils/getNewTimeCaseId`, type: 'get', service: 'utils' });
}
function submitDispute(data) {
  return $$.ax.request({ url: `caseInfo/caseRegister`, type: 'post', service: 'mediate', data });
    return $$.ax.request({ url: `caseInfo/caseRegister`, type: 'post', service: 'mediate', data });
}
function getDetailData(id) {
  return $$.ax.request({ url: `casedraftInfo/getCasedraftInfo?id=${id}`, type: 'get', service: 'mediate' });
    return $$.ax.request({ url: `casedraftInfo/getCasedraftInfo?id=${id}`, type: 'get', service: 'mediate' });
}
@@ -62,9 +62,39 @@
        if (res.type) {
            const { agentList, personList, ...rest } = res.data
            const parList = agentList.concat(personList)
            const newParList = parList?.map(item => {
                const fileInfoList = item.fileInfoList
                let file = [];//身份证明材料、企业登记材料
                let file1 = [];//法人、机构身份证明材料、代理人授权委托书
                if (fileInfoList && fileInfoList.length != 0) {
                    fileInfoList.forEach(item => {
                        if (item.ownerType == '22_00018-202' || item.ownerType == '22_00018-203') {
                            item.fileList.forEach(res => {
                                file.push({
                                    ...res,
                                    uid: res.id,
                                })
                            })
                        }
                        if (item.ownerType == '22_00018-204' || item.ownerType == '22_00018-207') {
                            item.fileList.forEach(res => {
                                file1.push({
                                    ...res,
                                    uid: res.id,
                                })
                            })
                        }
                    })
                }
                return {
                    ...item,
                    file,
                    file1
                }
            }) || []
            const obj = {
                ...rest,
                fakeData: parList,
                fakeData: newParList,
                myCaseType: [rest.caseTypeFirst, rest.caseType],
                myQuesAddress: rest.queRoad ? [rest.queProv, rest.queCity, rest.queArea, rest.queRoad] : undefined
            }
@@ -89,18 +119,18 @@
                    const { myCaseType, myQuesAddress, ...rest } = formRef.current.getFields()
                    const params = handleData(rest)
                    $$.modalInfo({
            title: '提醒',
            content: '确定提交吗?',
            cancelText: '我再想想',
            onOk: () => {
              reauestSubmit({
                ...params,
                isSelfAccept: 0,
                isDraft: 0,
                operateType: 0,
              })
            },
          });
                        title: '提醒',
                        content: '确定提交吗?',
                        cancelText: '我再想想',
                        onOk: () => {
                            reauestSubmit({
                                ...params,
                                isSelfAccept: 0,
                                isDraft: 0,
                                operateType: 0,
                            })
                        },
                    });
                }
            });
        }
@@ -198,7 +228,7 @@
                            <Step title='结案归档' disabled />
                        </Steps>
                    </div>
                    <div style={{ backgroundColor: '#ffff', margin: '8px 8px 0px 16px', padding: '12px 18px 82px 16px', height: 'calc(100vh - 228px)', overflowY: 'scroll', display: isReview ? '' : 'none' }}>
                    <div style={{ backgroundColor: '#ffff', margin: '8px 8px 0px 16px', padding: '12px 18px 82px 16px', height: 'calc(100vh - 231px)', overflowY: 'scroll', display: isReview ? '' : 'none' }}>
                        <Preview style={{ display: isReview ? '' : 'none' }} data={formRef?.current?.getFields()} mainId={id} />
                    </div>
                    <VisitorRegister