From 27fef9fe91aea715f0b0d0eaeda9b495d6659a58 Mon Sep 17 00:00:00 2001
From: zhangyongtian <1181606322@qq.com>
Date: Fri, 30 Aug 2024 09:10:29 +0800
Subject: [PATCH] feat: 当事人接口对接
---
gz-customerSystem/src/components/personCard/index.jsx | 189 +++++++++++++++++++++++-----------------------
1 files changed, 95 insertions(+), 94 deletions(-)
diff --git a/gz-customerSystem/src/components/personCard/index.jsx b/gz-customerSystem/src/components/personCard/index.jsx
index d9e33c6..dc1acb3 100644
--- a/gz-customerSystem/src/components/personCard/index.jsx
+++ b/gz-customerSystem/src/components/personCard/index.jsx
@@ -10,6 +10,7 @@
import PropTypes from 'prop-types';
import { Typography, Row, Col, Space, Tooltip } from 'antd';
import { del, add } from '../../assets/images';
+import * as $$ from '@/utils/utility';
const { Link, Text } = Typography;
/**
@@ -18,103 +19,103 @@
* handleCheckParty, // 点击查看详情
* handleDeleteParty, // 删除当事人
*/
-const PersonCard = ({ isCheck, data, handleCheckParty, handleDeleteParty, handleAdd }) => {
- let isAgent = false
- let isAgentFor = false
- const typeList = data.map(item => {
- return item.partyType
- })//获取有多少申请人和被申请人
- if (typeList.indexOf(0) != -1) {
- isAgent = true
- }
- if (typeList.indexOf(1) != -1) {
- isAgentFor = true
- }
- return (
- <Row gutter={[24, 16]}>
- {data.map((x, t) => (
- <Col span={7} key={t}>
- <div className="public-personCard" style={{ cursor: 'pointer' }}>
- <div
- className={`public-personCard-card public-personCard-card-${(x.partyType === 0 || x.partyType === 2) ? 'blue' : 'orange'}`}
- onClick={() => handleCheckParty(x)}
- >
- {x.trueName.substr(0, 1)}
- <div className="public-personCard-card-check">查看</div>
- <img
- src={del}
- alt=''
- style={{ width: '16px', height: '16px', position: 'absolute', top: '-8px', left: '56px' }}
- onClick={(event) => { handleDeleteParty(event, x) }}
- />
- </div>
- <div className="public-personCard-content">
- <div className="public-personCard-title">
- <Text style={{ maxWidth: '80%', paddingRight: '8px' }} ellipsis={{ tooltip: x.trueName }}>
- {x.trueName}
- </Text>
- <Text ellipsis={{ tooltip: x.perClassName }} className={`public-personCard-tag public-personCard-tag-${(x.partyType === 0 || x.partyType === 2) ? 'blue' : 'orange'}`}>
- {x.perClassName}
- </Text>
- </div>
- {
- (x.perClass === '09_01001-1' || !x.perClass) &&
- <>
- <div>证件号码:{x.mobile}</div>
- <div>联系方式:{x.personNumber}</div>
- </>
- }
- {
- x.perClass === '09_01001-2' &&
- <>
- <div>统一社会信用代码:{x.mobile}</div>
- <div>法定代表人:{x.companyName}</div>
- </>
- }
- {
- x.perClass === '09_01001-3' &&
- <>
- <div>组织机构代码:{x.mobile}</div>
- <div>机构代表人:{x.companyName}</div>
- </>
- }
- <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', color: '#fff' }}>{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' }} onClick={() => { handleAdd(0) }}>申请方当事人</div>
- {isAgent && <div className="dataSync-btnApply" style={{ backgroundColor: '#3491FA' }} onClick={() => { handleAdd(2) }}>申请方代理人</div>}
- <div className="dataSync-btnApply" style={{ backgroundColor: '#EF6C24' }} onClick={() => { handleAdd(1) }}>被申请方当事人</div>
- {isAgentFor && <div className="dataSync-btnApply" style={{ backgroundColor: '#FA8C16' }} onClick={() => { handleAdd(3) }}>被申请方代理人</div>}
- </Space>)}
- placement={data.length !== 0 && 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>
- );
+const PersonCard = ({ isCheck, data, handleCheckParty, handleDeleteParty, handleAdd, handleEdit }) => {
+ let isAgent = false
+ let isAgentFor = false
+ const typeList = data.map(item => {
+ return item.perType
+ })//获取有多少申请人和被申请人
+ if (typeList.indexOf('15_020008-1') != -1) {
+ isAgent = true
+ }
+ if (typeList.indexOf('15_020008-2') != -1) {
+ isAgentFor = true
+ }
+ return (
+ <Row gutter={[24, 16]}>
+ {data.map((x, t) => (
+ <Col span={7} key={t}>
+ <div className="public-personCard" style={{ cursor: 'pointer' }}>
+ <div
+ className={`public-personCard-card public-personCard-card-${(x.perType === '15_020008-1' || x.perType === '24_00006-1') ? 'blue' : 'orange'}`}
+ onClick={() => handleCheckParty(x)}
+ >
+ {x.trueName.substr(0, 1)}
+ <div className="public-personCard-card-check">查看</div>
+ <img
+ src={del}
+ alt=''
+ style={{ width: '16px', height: '16px', position: 'absolute', top: '-8px', left: '56px' }}
+ onClick={(event) => { handleDeleteParty(event, x) }}
+ />
+ </div>
+ <div className="public-personCard-content">
+ <div className="public-personCard-title">
+ <Text style={{ maxWidth: '80%', paddingRight: '8px' }} ellipsis={{ tooltip: x.trueName }}>
+ {x.trueName}
+ </Text>
+ <Text onClick={() => { handleEdit(x) }} ellipsis={{ tooltip: x.perTypeName }} className={`public-personCard-tag public-personCard-tag-${(x.perType === '15_020008-1' || x.perType === '24_00006-1') ? 'blue' : 'orange'}`}>
+ {x.perTypeName}
+ </Text>
+ </div>
+ {
+ (x.perClass === '09_01001-1' || !x.perClass) &&
+ <>
+ <div>证件号码:{x.certiNo}</div>
+ <div>联系方式:{x.mobile}</div>
+ </>
+ }
+ {
+ x.perClass === '09_01001-2' &&
+ <>
+ <div>统一社会信用代码:{x.orgaCode}</div>
+ <div>法定代表人:{x.deputy}</div>
+ </>
+ }
+ {
+ x.perClass === '09_01001-3' &&
+ <>
+ <div>组织机构代码:{x.orgaCode}</div>
+ <div>机构代表人:{x.deputy}</div>
+ </>
+ }
+ <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', color: '#fff' }}>{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' }} onClick={() => { handleAdd('15_020008-1') }}>申请方当事人</div>
+ {isAgent && <div className="dataSync-btnApply" style={{ backgroundColor: '#3491FA' }} onClick={() => { handleAdd('24_00006-1') }}>申请方代理人</div>}
+ <div className="dataSync-btnApply" style={{ backgroundColor: '#EF6C24' }} onClick={() => { handleAdd('15_020008-2') }}>被申请方当事人</div>
+ {isAgentFor && <div className="dataSync-btnApply" style={{ backgroundColor: '#FA8C16' }} onClick={() => { handleAdd('24_00006-2') }}>被申请方代理人</div>}
+ </Space>)}
+ placement={data.length !== 0 && 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,
- data: PropTypes.array,
- handleCheckParty: PropTypes.func,
- handleDeleteParty: PropTypes.func,
+ isCheck: PropTypes.bool,
+ data: PropTypes.array,
+ handleCheckParty: PropTypes.func,
+ handleDeleteParty: PropTypes.func,
};
export default PersonCard;
\ No newline at end of file
--
Gitblit v1.8.0