Implement fetching payer data using getClientInfo.

master
sync 1 year ago
parent b801673da9
commit 78c60c64c2

@ -77,7 +77,7 @@ body {
height: 100vh; height: 100vh;
height: 100svh; height: 100svh;
display: grid; display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr; grid-template-columns: 1fr 1.3fr 0.5fr 1fr;
grid-template-rows: 1rem 1rem 1rem 1rem; grid-template-rows: 1rem 1rem 1rem 1rem;
grid-row-gap: 15px; grid-row-gap: 15px;
} }

@ -1,8 +1,43 @@
import { useState } from 'react'; import { useState, useEffect } from 'react';
import './App.css'; import './App.css';
function App() { function App() {
const [count, setCount] = useState(0); const [payerName, setPayerName] = useState('');
const [payerINN, setPayerINN] = useState('');
const [payerPhoneEmail, setPayerPhoneEmail] = useState('');
const [payerAddress, setPayerAddress] = useState('');
const [clientId, setClientId] = useState('');
const [payerBankAccount, setPayerBankAccount] = useState('');
useEffect(() => {
const fetchUsingAsyncAwaitWithFetchApi = async () => {
const response = await fetch('/pmtvalidation/validate/', {
method: 'POST',
headers: {
Accept: 'application/json',
'Content-Type': 'application/json',
},
body: JSON.stringify({
fields: [
{ name: 'payer_account' },
{ name: 'client_id', value: '00234052' },
{ name: 'form_type', value: 'EXT-RUB' },
],
action: 'getClientInfo',
}),
});
const data = await response.json();
setPayerName(data.fields[3].value);
setPayerINN(data.fields[4].value);
setPayerPhoneEmail(data.fields[6].value);
setPayerAddress(data.fields[7].value);
setClientId(data.fields[1].value);
setPayerBankAccount(data.fields[12].value);
};
fetchUsingAsyncAwaitWithFetchApi();
}, []);
return ( return (
<> <>
@ -20,17 +55,15 @@ function App() {
</div> </div>
<div className="payer"> <div className="payer">
<div className="child">Плательщик:</div> <div className="child">Плательщик:</div>
<div className="child">Шигорина Наталья Николаевна 00234052</div> <div className="child">{`${payerName} ${clientId}`}</div>
<div className="child">Номер счета:</div> <div className="child">Номер счета:</div>
<div className="child"> <div className="child">
<select> <select>
<option>12321</option> <option>{payerBankAccount}</option>
<option>12322</option>
<option>12323</option>
</select> </select>
</div> </div>
<div className="child">ИНН:</div> <div className="child">ИНН:</div>
<div className="child">123456789123</div> <div className="child">{payerINN}</div>
<div className="child">Сумма:</div> <div className="child">Сумма:</div>
<div className="child"> <div className="child">
<span> <span>
@ -39,13 +72,11 @@ function App() {
</span> </span>
</div> </div>
<div className="child">Телефон или электронный адрес:</div> <div className="child">Телефон или электронный адрес:</div>
<div className="child">+7-4942326120 schnn@mail.ru</div> <div className="child">{payerPhoneEmail}</div>
<div className="child"></div> <div className="child"></div>
<div className="child"></div> <div className="child"></div>
<div className="child">Адрес места жительства:</div> <div className="child">Адрес места жительства:</div>
<div className="child"> <div className="child">{payerAddress}</div>
г. Москва, ул. Дмитрия Ульянова 158/1, кв. 12
</div>
<div className="child">Комиссии и расходы:</div> <div className="child">Комиссии и расходы:</div>
<div className="child"> <div className="child">
<select> <select>

@ -1,7 +1,18 @@
import { defineConfig } from 'vite' import { defineConfig } from 'vite';
import react from '@vitejs/plugin-react' import react from '@vitejs/plugin-react';
// https://vitejs.dev/config/ // https://vitejs.dev/config/
export default defineConfig({ export default defineConfig({
plugins: [react()], plugins: [react()],
}) server: {
proxy: {
'/pmtvalidation': {
target: 'http://ucbqawebowl67:8009',
changeOrigin: true,
rewrite: (path) => path.replace(/^\/pmtvalidation/, 'pmtvalidation'),
},
},
host: true,
strictPort: true,
},
});

Loading…
Cancel
Save