223 lines
6.8 KiB
JavaScript
223 lines
6.8 KiB
JavaScript
import React from "react";
|
||
import Head from "next/head";
|
||
import Image from "next/image";
|
||
import { connect } from "react-redux";
|
||
import { withRouter } from "next/router";
|
||
import moment from "moment";
|
||
import { SpinnerCircular } from "spinners-react";
|
||
|
||
import { reduxWrapper } from "../../store";
|
||
|
||
import Header from "../components/Header";
|
||
import Footer from "../components/Footer";
|
||
import Company from "../components/Company";
|
||
import InnerMenu from "./components/InnerMenu";
|
||
|
||
import {
|
||
getContractInfo,
|
||
getContractAgreement,
|
||
getContractRules,
|
||
getFile,
|
||
} from "../../actions";
|
||
|
||
class ContractPage extends React.Component
|
||
{
|
||
constructor(props) {
|
||
super(props);
|
||
this.state = {
|
||
date: null,
|
||
car: null,
|
||
contract_date: null,
|
||
agreement: null,
|
||
rules: null,
|
||
loading: false,
|
||
};
|
||
}
|
||
|
||
static getDerivedStateFromProps(nextProps, prevState)
|
||
{
|
||
return {
|
||
date: nextProps.date,
|
||
car: nextProps.car,
|
||
contract_date: nextProps.contract_date,
|
||
agreement: nextProps.agreement,
|
||
rules: nextProps.rules,
|
||
};
|
||
}
|
||
|
||
componentDidMount() {}
|
||
|
||
render()
|
||
{
|
||
const { loading, date, car, contract_date, agreement, rules } = this.state;
|
||
const { number } = this.props;
|
||
|
||
console.log("rules", rules);
|
||
|
||
const types = {
|
||
contracts: "Договор",
|
||
redemptions: "Выкупные документы",
|
||
agreements: "Дополнительное соглашение",
|
||
assignments: "Договор цессии",
|
||
};
|
||
|
||
return (
|
||
<React.Fragment>
|
||
<Head>
|
||
<title>ЛК Эволюция автолизинга</title>
|
||
<meta name="description" content="ЛК Эволюция автолизинга" />
|
||
</Head>
|
||
<Header { ...this.props } />
|
||
<main>
|
||
<section>
|
||
<div className="clear"></div>
|
||
<div className="container">
|
||
<div className="title_wrapper">
|
||
<div className="left" style={{ alignItems: "center", flexWrap: "wrap" }}>
|
||
<button className="back">Назад</button>
|
||
<h1 className="section_title">Новое обращение</h1>
|
||
</div>
|
||
<Company />
|
||
</div>
|
||
<div className="aside_container about">
|
||
<article className="full">
|
||
<div className="new_appeal">
|
||
<div className="column">
|
||
<div className="dropdown_blocks_list appeal_list visible">
|
||
<div className="appeal_item dropdown_block">
|
||
<div className="block_header">
|
||
<p>
|
||
Процедура досрочного прекращения срока действия
|
||
договора лизинга
|
||
</p>
|
||
<button className="rotate"></button>
|
||
</div>
|
||
</div>
|
||
<div className="appeal_item dropdown_block">
|
||
<div className="block_header">
|
||
<p>
|
||
Как изменить график платежей по договору лизинга?
|
||
</p>
|
||
<button className="rotate"></button>
|
||
</div>
|
||
</div>
|
||
<div className="appeal_item dropdown_block">
|
||
<div className="block_header">
|
||
<p>Как получить консультацию по Цессии?</p>
|
||
<button className="rotate"></button>
|
||
</div>
|
||
</div>
|
||
<div className="appeal_item dropdown_block open">
|
||
<div className="block_header">
|
||
<p>
|
||
Оформление переуступки прав и обязательств по
|
||
договору лизинга
|
||
</p>
|
||
<button className="rotate"></button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div className="column">
|
||
<div className="column_text_block">
|
||
<p>
|
||
<b>Процедура</b>
|
||
</p>
|
||
<p>
|
||
К каждой теме свободное html поле для миниинструкции
|
||
(со ссылками на <a>формы документов</a> и{" "}
|
||
<a>документы</a>). Привязка к теме обращения в CRM
|
||
</p>
|
||
</div>
|
||
<div className="column_text_block">
|
||
<p>
|
||
<b>Документы</b>
|
||
</p>
|
||
<div className="dosc_list medium-icon">
|
||
<div className="row">
|
||
<p className="doc_name i-pdf extension">
|
||
№2021_1655 от 20.04.2021
|
||
<span>2021_1655 от 20.04.2021</span>
|
||
</p>
|
||
</div>
|
||
<div className="row">
|
||
<p className="doc_name i-pdf extension">
|
||
№2021_1655 от 20.04.2021
|
||
<span>2021_1655 от 20.04.2021</span>
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<form>
|
||
<div className="form_field">
|
||
<select>
|
||
<option default selected disabled>
|
||
Выберите договоры
|
||
</option>
|
||
<option>Договор 1</option>
|
||
</select>
|
||
</div>
|
||
<div className="form_field">
|
||
<input
|
||
type="text"
|
||
name="name"
|
||
placeholder="Ваше ФИО"
|
||
/>
|
||
</div>
|
||
<div className="form_field">
|
||
<input type="tel" name="name" placeholder="Телефон" />
|
||
</div>
|
||
<div className="form_field">
|
||
<input type="email" name="name" placeholder="Email" />
|
||
</div>
|
||
<div className="form_field">
|
||
<textarea placeholder="Введите текст запроса"></textarea>
|
||
</div>
|
||
<div className="file_upload dropzone">
|
||
<div className="files"></div>
|
||
<div>
|
||
<p data-sm-text="Выберите файлы">
|
||
<span>Перенесите файлы на экран для быстрой загрузки или выберите файл с компьютера </span>
|
||
</p>
|
||
<label htmlFor="" className="button button-blue">Загрузить файл</label>
|
||
</div>
|
||
<input type="file" accept="" />
|
||
</div>
|
||
</form>
|
||
</div>
|
||
</div>
|
||
</article>
|
||
</div>
|
||
</div>
|
||
</section>
|
||
</main>
|
||
<Footer />
|
||
</React.Fragment>
|
||
);
|
||
}
|
||
}
|
||
|
||
function mapStateToProps(state, ownProps)
|
||
{
|
||
return {
|
||
contract_date: state.contract.date,
|
||
date: state.contract.date,
|
||
car: state.contract.car,
|
||
agreement: state.contract.agreement,
|
||
rules: state.contract.rules,
|
||
};
|
||
}
|
||
|
||
export const getServerSideProps = reduxWrapper.getServerSideProps(
|
||
(store) =>
|
||
async ({ req, res, query }) => {
|
||
return {
|
||
props: {
|
||
//number: query.number,
|
||
number: null,
|
||
},
|
||
};
|
||
}
|
||
);
|
||
|
||
export default withRouter(connect(mapStateToProps)(ContractPage)); |