From 62096ceaed8a2a54bfb4298e4b0efb5eb64a7dcb Mon Sep 17 00:00:00 2001 From: zhangyongtian <1181606322@qq.com> Date: Wed, 14 Aug 2024 11:11:03 +0800 Subject: [PATCH] ✨ feat(来访登记页面): 完善功能 --- gz-customerSystem/src/components/personCard/index.jsx | 55 +++++++++++++++++++++++++++++++++---------------------- 1 files changed, 33 insertions(+), 22 deletions(-) diff --git a/gz-customerSystem/src/components/personCard/index.jsx b/gz-customerSystem/src/components/personCard/index.jsx index b0fa5e3..a0be0ab 100644 --- a/gz-customerSystem/src/components/personCard/index.jsx +++ b/gz-customerSystem/src/components/personCard/index.jsx @@ -8,28 +8,26 @@ */ import React from 'react'; import PropTypes from 'prop-types'; -import { Typography, Row, Col, Space } from 'antd'; -import { del } from '../../assets/images'; +import { Typography, Row, Col, Space, Tooltip } from 'antd'; +import { del, add } from '../../assets/images'; const { Link, Text } = Typography; /** * isCheck, // 是否无操作 - * partyType, // applicant:申请人, respondent:被申请人 * data, // 当事人数据 * handleCheckParty, // 点击查看详情 * handleDeleteParty, // 删除当事人 */ -const PersonCard = ({ isCheck, partyType, data, handleCheckParty, handleDeleteParty }) => { - const remark = [{ label: '精神障碍', color: '#C64FBE' }, { label: '吸毒', color: '#D8A247' }, { label: '社区矫正', color: '#B82F6E' }, { label: '刑满释放', color: '#199C8F' }, { label: '流浪', color: '#3ECB7A' }, { label: '重点青少年', color: '#117AC1' }, { label: '涉稳涉访', color: '#6865D7' }, { label: '潜在风险', color: '#2661CE' }] +const PersonCard = ({ isCheck, data, handleCheckParty, handleDeleteParty }) => { return ( <Row gutter={[24, 16]}> {data.map((x, t) => ( - <Col span={8} key={t}> + <Col span={7} key={t}> <div className="public-personCard" style={{ cursor: 'pointer' }}> <div - className={`public-personCard-card public-personCard-card-${partyType === 'applicant' ? 'blue' : 'orange'}`} - onClick={() => handleCheckParty({ type: partyType, editType: 'check', values: x })} + className={`public-personCard-card public-personCard-card-${x.partyType === 'applicant' ? 'blue' : 'orange'}`} + onClick={() => handleCheckParty({ type: x.partyType, editType: 'check', values: x })} > {x.trueName.substr(0, 1)} <div className="public-personCard-card-check">查看</div> @@ -40,43 +38,56 @@ <Text style={{ maxWidth: '80%', paddingRight: '8px' }} ellipsis={{ tooltip: x.trueName }}> {x.trueName} </Text> - <div className={`public-personCard-tag public-personCard-tag-${partyType === 'applicant' ? 'blue' : 'orange'}`}> + <Text ellipsis={{ tooltip: x.perClassName }} className={`public-personCard-tag public-personCard-tag-${x.partyType === 'applicant' ? 'blue' : 'orange'}`}> {x.perClassName} - </div> + </Text> </div> { x.person && <> <div>证件号码:{x.mobile}</div> - <div>联系方式:{x.agentStatus === '2' ? '有' : '无'}</div> + <div>联系方式:{x.personNumber}</div> </> } {x.company && <> <div>统一社会信用代码:{x.mobile}</div> - <div>法定代表人:{x.agentStatus === '2' ? '有' : '无'}</div> + <div>法定代表人:{x.companyName}</div> </> } - {x.Respondent && - <Space style={{ display: 'flex', flexWrap: 'wrap' }}> - {remark.map((item, index) => ( - <div key={index} style={{ lineHeight: '22px', padding: '0px 8px', backgroundColor: `${item.color}`, width: 'fit-content', borderRadius: '4px', marginTop: '4px' }}>{item.label}</div> - ))} - </Space> - } - - + <Space style={{ display: 'flex', flexWrap: 'wrap' }}> + {x.remark?.map((item, index) => ( + <div key={index} style={{ lineHeight: '22px', padding: '0px 8px', backgroundColor: `${item.color}`, width: 'fit-content', borderRadius: '4px', marginTop: '4px' }}>{item.label}</div> + ))} + </Space> </div> </div> </Col> ))} + <Col span={3}> + <div className="dataSync-addBtn"> + <Tooltip + title={(<Space direction='vertical '> + <div className="dataSync-btnApply" style={{ backgroundColor: '#1A6FB8' }}>申请方</div> + <div className="dataSync-btnApply" style={{ backgroundColor: '#FA8C16' }}>被申请方</div> + <div className="dataSync-btnApply" style={{ backgroundColor: '#3491FA' }}>代理人</div> + </Space>)} + placement={data.length % 3 === 0 ? 'left' : "right"} + color='#ffff' + overlayStyle={{}} + > + <div style={{ backgroundColor: '#f2f3f5', borderRadius: '50%', width: '64px', height: '64px' }}> + <img src={add} alt="添加" style={{ width: '32px', margin: '16px' }} /> + </div> + </Tooltip> + </div> + </Col> </Row> ); }; PersonCard.propTypes = { isCheck: PropTypes.bool, - partyType: PropTypes.string, data: PropTypes.array, handleCheckParty: PropTypes.func, handleDeleteParty: PropTypes.func, -- Gitblit v1.8.0