forked from gzzfw/frontEnd/gzDyh

dminyi
2024-08-28 d3eefcaf3762ca97483e1517697b6941bd9a58d8
gz-customerSystem/src/views/register/visit/component/visitorRegister.jsx
@@ -23,6 +23,7 @@
import MapView from './map'
import { scan } from '@/assets/images/icon'
import MyDrawer from '@/components/MyDrawer';
import { EventLevelDrawer, MattersDetail } from './levelDetail'
const RadioGroup = Radio.Group;// 根据调解案号获取纠纷登记信息
const FormItem = Form.Item;
@@ -46,9 +47,10 @@
  const [fileTip, setFileTip] = useState('0');
  const [detailVisabled, setDetailVisabled] = useState(false);//查看信息弹窗控制
  const [mapView, setMapView] = useState(false);
  const [flagId, setFlagId] = useState(0);//赋予当事人唯一id,用于删除
  const [flagId, setFlagId] = useState(1);//赋予当事人唯一id,用于删除
  const [visible, setVisible] = useState(false);
  const [apply, setApply] = useState(false);
  const [editData, setEditData] = useState(null);
  const addressOptions = [
    { label: '地址1', value: 'address1' },
@@ -369,12 +371,24 @@
  //添加当事人
  const handleAddParty = (value) => {
    console.log(value);
    setFakeData([...fakeData, {
      ...value,
      id: flagId
    }])
    setFlagId(flagId + 1)
    if (value.id) {
      //编辑
      const newList = fakeData.map(item => {
        if (item.id === value.id) {
          return value
        } else {
          return item
        }
      })
      setFakeData(newList)
      setEditData(null)
    } else {
      setFakeData([...fakeData, {
        ...value,
        id: flagId
      }])
      setFlagId(flagId + 1)
    }
  }
  //删除当事人
@@ -382,6 +396,19 @@
    event.stopPropagation();
    const filterData = fakeData.filter(item => item.id !== value.id)
    setFakeData(filterData)
  }
  //编辑
  const handleEdit = (value) => {
    console.log(value);
    if (value.partyType === 0 || value.partyType === 1) {
      //当事人
      setAddVisabled(true)
    } else {
      //代理人
      setAgentVisible(true)
    }
    setEditData(value)
  }
@@ -401,6 +428,7 @@
          handleCheckParty={handleCheckParty}
          handleAdd={handleAdd}
          handleDeleteParty={handleDeleteParty}
          handleEdit={handleEdit}
        />
      </div>
      <Col span={24} style={{ display: 'flex', alignItems: 'center', marginBottom: '8px' }}>
@@ -421,7 +449,14 @@
      >
        <Row gutter={[32, 0]}>
          <Col span={8}>
            <FormItem label='事项等级' field='level' tooltip={<div className='question'>Username is required </div>} >
            <FormItem label={<div style={{ display: 'flex' }}>
              事项等级
              <Tooltip onClick={() => setApply(true)}>
                <img src={question1} alt="" style={{ width: '13px', height: '13px', margin: '4px 4px 0px 4px' }} />
              </Tooltip>
            </div>
            }
              field='level' >
              <Select placeholder='Select city' allowClear>
                {['一级', '二级', '三级', '四级'].map((option, index) => (
                  <Option key={option} value={option}>
@@ -519,9 +554,9 @@
              label={<div style={{ display: 'flex' }}>
                事项概况
                <Tooltip onClick={() => setVisible(true)}>
                  <img src={question1} alt="" style={{ width: '13px', height: '13px', marginTop: '4px', marginLeft: '4px' }} />
                  <img src={question1} alt="" style={{ width: '13px', height: '13px', margin: '4px 4px 0px 4px' }} />
                </Tooltip>
                <div className="must">必填</div>
                <div className="must" style={{ marginLeft: '4px' }}>必填</div>
                <img src={scan} alt="" style={{ marginRight: '-2px', marginLeft: '8px' }} />
                <div style={{ marginLeft: '8px', color: '#1A6FB8', fontSize: '14px', cursor: 'pointer' }} onClick={() => setScanFile(true)}>识别上传材料</div>
              </div>
@@ -542,9 +577,9 @@
            <FormItem
              label={<div style={{ display: 'flex' }}>
                申请请求
                <Tooltip onClick={() => setApply(true)}>
                  <img src={question1} alt="" style={{ width: '13px', height: '13px', marginTop: '4px', marginLeft: '4px' }} />
                </Tooltip>
                {/* <Tooltip onClick={() => setApply(true)}>
                  <img src={question1} alt="" style={{ width: '13px', height: '13px', margin:'4px 4px 0px 4px' }} />
                </Tooltip> */}
                <div className="must">必填</div>
                <img src={scan} alt="" style={{ marginRight: '-2px', marginLeft: '8px' }} />
                <div style={{ marginLeft: '8px', color: '#1A6FB8', fontSize: '14px', cursor: 'pointer' }} onClick={() => setScanFile(true)}>识别上传材料</div>
@@ -726,6 +761,7 @@
          dialogType={dialogType}
          onClose={() => setAddVisabled(false)}
          handleAddParty={handleAddParty}
          editData={editData}
        />
      </Modal>
      <Modal
@@ -744,6 +780,7 @@
          onClose={() => setAgentVisible(false)}
          fakeData={fakeData}
          dialogType={dialogType}
          editData={editData}
        />
      </Modal>
      <Modal
@@ -771,63 +808,14 @@
      >
        <MapView />
      </Modal>
      <MyDrawer
        title='事项概况指南'
      <MattersDetail
        visible={visible}
        width={1000}
        style={{ position: 'absolute' }}
        onClose={() => setVisible(false)}
        titleBefore={true}
      >
        <div style={{ marginTop: '-8px' }}>
          事项简述应该填写完整,完整的事项简述应具备5要素:发生时间+发生地点+人物情况+事项起因+事项经过。<br />
          例如:<br />
          2024年8月13日,张某与女性好友王某在某烧烤档就餐期间发生场盾争执,报警人称女方从今年一月份开始,以各种理由让其帮忙付了外卖费,送金链等首饰,但又不确认关系,女方后期还拉黑了报警人,因此报警人认为女方涉嫌诈骗。
        </div>
      </MyDrawer>
      <MyDrawer
        title='事件等级指南'
      />
      <EventLevelDrawer
        visible={apply}
        width={1000}
        style={{ position: 'absolute' }}
        onClose={() => setApply(false)}
        titleBefore={true}
      >
        <div style={{ marginTop: '-8px' }}>
          <div>
            <div style={{ color: '#1A6FB8', fontSize: '15px',lineHeight:'23px',marginBottom:'8px' }}>一类重点事件</div>
            1、5人(含5人)以上到非接待场所聚集、滞留、静坐、游行或准备上访;<br />
            2、拉横幅、穿着“状衣”、呼喊口号、呼喊标语、堵塞交通非法占据公其场所、扰乱公共秩序、向他人散发传单等上访材料;<br />
            3、拖欠工资、劳资纠纷涉及人数5人以上;<br />
            4、拖欠工资总全额5万元以上,经济合同外涉金额20万元以上;<br />
            5、扬言到市赴省进京越级上访;
            6、存在轻生、自残等危险行为,打砸公私财物等极端倾向;<br />
            7、群体性民事纠纷(5人及5人以上的邻里矛盾纠纷、经济债务纠纷、家庭纠纷等可能导致“民转刑”的民事纠纷);8、存在重大安全隐患、重大不稳定因索的矛盾;9、涉及政治类,非宗教类的非访宣传(在出租屋内从事涉邪教迷信印刷、存放资料的;在公共场所粘贴类似邪教的符号、图案、标志等)10、县(市、区)职能部门、各镇(街道)分管领导根据应急情况认为有必要启动红色预警机制的其他矛盾纠纷。
          </div>
          <div>
            <div style={{ color: '#1A6FB8', fontSize: '15px',lineHeight:'23px',marginBottom:'8px',marginTop:'20px' }}>二类重点事件</div>
            1、5人(含5人)以上到非接待场所聚集、滞留、静坐、游行或准备上访;<br />
            2、拉横幅、穿着“状衣”、呼喊口号、呼喊标语、堵塞交通非法占据公其场所、扰乱公共秩序、向他人散发传单等上访材料;<br />
            3、拖欠工资、劳资纠纷涉及人数5人以上;<br />
            4、拖欠工资总全额5万元以上,经济合同外涉金额20万元以上;<br />
            5、扬言到市赴省进京越级上访;
            6、存在轻生、自残等危险行为,打砸公私财物等极端倾向;<br />
            7、群体性民事纠纷(5人及5人以上的邻里矛盾纠纷、经济债务纠纷、家庭纠纷等可能导致“民转刑”的民事纠纷);8、存在重大安全隐患、重大不稳定因索的矛盾;9、涉及政治类,非宗教类的非访宣传(在出租屋内从事涉邪教迷信印刷、存放资料的;在公共场所粘贴类似邪教的符号、图案、标志等)10、县(市、区)职能部门、各镇(街道)分管领导根据应急情况认为有必要启动红色预警机制的其他矛盾纠纷。
          </div>
          <div>
            <div style={{ color: '#1A6FB8', fontSize: '15px',lineHeight:'23px',marginBottom:'8px',marginTop:'20px' }}>三类普通事件</div>
            1、5人(含5人)以上到非接待场所聚集、滞留、静坐、游行或准备上访;<br />
            2、拉横幅、穿着“状衣”、呼喊口号、呼喊标语、堵塞交通非法占据公其场所、扰乱公共秩序、向他人散发传单等上访材料;<br />
            3、拖欠工资、劳资纠纷涉及人数5人以上;<br />
            4、拖欠工资总全额5万元以上,经济合同外涉金额20万元以上;<br />
            5、扬言到市赴省进京越级上访;
            6、存在轻生、自残等危险行为,打砸公私财物等极端倾向;<br />
            7、群体性民事纠纷(5人及5人以上的邻里矛盾纠纷、经济债务纠纷、家庭纠纷等可能导致“民转刑”的民事纠纷);8、存在重大安全隐患、重大不稳定因索的矛盾;9、涉及政治类,非宗教类的非访宣传(在出租屋内从事涉邪教迷信印刷、存放资料的;在公共场所粘贴类似邪教的符号、图案、标志等)10、县(市、区)职能部门、各镇(街道)分管领导根据应急情况认为有必要启动红色预警机制的其他矛盾纠纷。
          </div>
        </div>
      </MyDrawer>
      />
    </div>
  )
}