changeDetailJsy.js 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821
  1. import React, { Component } from "react";
  2. import { Form, Upload, Modal, Button, message, Select, Input } from "antd";
  3. import AgreeButton from "./agreeButton.js";
  4. import Rizhi from "./rizhi.js";
  5. import { getProcessStatusNew, changeColor } from "@/tools.js";
  6. import { shenghePeo } from "@/tools.js"
  7. import { typeList } from '@/dataDic.js'
  8. import $ from "jquery/src/ajax";
  9. import tongguo from "../../../../../../image/tongguo.png";
  10. import quxiao from "../../../../../../image/quxiao.png";
  11. import ProAndCuiList from "./proAndCuiList.jsx";
  12. import "./xButton.less";
  13. // import ReactToPrint from "react-to-print";
  14. const FormItem = Form.Item;
  15. import Refund from "./refund.js"
  16. import ImgList from "../../../../common/imgList";
  17. import EnterpriseNameChange from "../../../../common/enterpriseNameChange";
  18. const { TextArea } = Input;
  19. const formItemLayout = {
  20. labelCol: { span: 8 },
  21. wrapperCol: { span: 14 }
  22. };
  23. const getChangeType = function (e) {
  24. if (e || e == 0) {
  25. let str = e.toString();
  26. let theType = "";
  27. typeList.map(function (item) {
  28. if (item.value == str) {
  29. theType = item.key;
  30. }
  31. });
  32. return theType;
  33. }
  34. };
  35. class Itemlist extends Component {
  36. constructor(props) {
  37. super(props);
  38. }
  39. render() {
  40. let pageData = this.props.pageData;
  41. return (
  42. <div className="clearfix">
  43. <Form.Item
  44. label={pageData.labelA}
  45. {...pageData.formItemLayoutA}
  46. className="half-item"
  47. >
  48. <p style={{ width: 350, wordWrap: "break-word" }}>
  49. {pageData.dataA}
  50. {pageData.labelA === '客户名称' ? <EnterpriseNameChange
  51. type='journal'
  52. style={{ marginLeft: 10 }}
  53. enterpriseId={this.props.orderUid} /> : null}
  54. </p>
  55. </Form.Item>
  56. <Form.Item
  57. label={pageData.labelB}
  58. {...pageData.formItemLayoutB}
  59. className="half-item"
  60. >
  61. <span>{pageData.dataB}</span>
  62. </Form.Item>
  63. </div>
  64. );
  65. }
  66. }
  67. class ChangeDetail extends Component {
  68. constructor(props) {
  69. super(props);
  70. this.state = {
  71. rotateDeg: 0,
  72. previewVisible: false,
  73. buttonStatus: true,
  74. changeType: 1,
  75. dataSource: [],
  76. reason: "",
  77. // 累计回收退票
  78. refundInvoice: 0,
  79. // 退票数组
  80. contactList: [],
  81. rejectState: 0,
  82. // 收款信息
  83. proceedsData: [],
  84. proceedsTotal: this.props.proceedsTotal,
  85. // 开票信息
  86. invoiceData: [],
  87. invoiceTotal: this.props.invoiceTotal,
  88. cost: 10,
  89. refund: 8,
  90. // 测试添加退票
  91. contactList: this.props.contactList,
  92. ContactsLists: [
  93. {
  94. title: "金额(万元)",
  95. dataIndex: "amount",
  96. key: "amount",
  97. render: (text, record) => {
  98. return (
  99. <div>
  100. 实际回收退票(万元)
  101. <Input
  102. value={record.amount}
  103. placeholder="请输入金额(必填项)"
  104. disabled={record.load}
  105. key={record.id}
  106. required="required"
  107. onChange={(e) => {
  108. record.amount = e.target.value;
  109. this.setState({ contactList: this.state.contactList });
  110. }}
  111. style={{ width: "120px" }}
  112. />
  113. </div>
  114. );
  115. },
  116. },
  117. {
  118. title: "时间",
  119. dataIndex: "createTimes",
  120. key: "createTimes",
  121. render: (text, record) => {
  122. return <div>{record.createTimes}</div>;
  123. },
  124. },
  125. ],
  126. };
  127. this.getOrgCodeUrl = this.getOrgCodeUrl.bind(this);
  128. this.changeButtonStatus = this.changeButtonStatus.bind(this);
  129. this.moneyOld = this.moneyOld.bind(this);
  130. this.rotate = this.rotate.bind(this);
  131. this.downImg = this.downImg.bind(this);
  132. this.upImg = this.upImg.bind(this);
  133. }
  134. getOrgCodeUrl(e) {
  135. this.setState({
  136. orgCodeUrl: e,
  137. });
  138. }
  139. changeButtonStatus() {
  140. this.setState({
  141. buttonStatus: !this.state.buttonStatus,
  142. });
  143. }
  144. downImg() {
  145. let num = 0;
  146. for (let i = 0; i < this.props.pictureUrl.length; i++) {
  147. if (this.props.pictureUrl[i].url == this.state.previewImage) {
  148. num = i;
  149. }
  150. }
  151. if (num == this.props.pictureUrl.length - 1) {
  152. return message.warning("已经是最后一张了哦");
  153. }
  154. this.state.previewImage = this.props.pictureUrl[num + 1].url;
  155. this.setState({
  156. previewImage: this.state.previewImage,
  157. rotateDeg: 0,
  158. });
  159. }
  160. upImg() {
  161. let num = 0;
  162. for (let i = 0; i < this.props.pictureUrl.length; i++) {
  163. if (this.props.pictureUrl[i].url == this.state.previewImage) {
  164. num = i;
  165. }
  166. }
  167. if (num == 0) {
  168. return message.warning("已经是第一张了哦");
  169. }
  170. this.state.previewImage = this.props.pictureUrl[num - 1].url;
  171. this.setState({
  172. previewImage: this.state.previewImage,
  173. rotateDeg: 0,
  174. });
  175. }
  176. rotate() {
  177. let rotateDeg = this.state.rotateDeg + 90;
  178. this.setState({
  179. rotateDeg,
  180. });
  181. }
  182. moneyOld(str, money) {
  183. if (money) {
  184. return (
  185. <span style={{ color: "red", fontWeight: 900, fontSize: 16 }}>
  186. {str}(原合同金额{money}万元)
  187. </span>
  188. );
  189. } else {
  190. return (
  191. <span style={{ color: "red", fontWeight: 900, fontSize: 16 }}>
  192. {str}
  193. </span>
  194. );
  195. }
  196. }
  197. render() {
  198. const pageData = [
  199. {
  200. labelA: "客户名称",
  201. formItemLayoutA: formItemLayout,
  202. dataA: this.props.data.userName,
  203. labelB: "合同编号",
  204. formItemLayoutB: formItemLayout,
  205. dataB: this.props.data.contractNo,
  206. },
  207. {
  208. labelA: "时间",
  209. formItemLayoutA: formItemLayout,
  210. dataA: this.props.data.createTimes,
  211. labelB: "发起人",
  212. formItemLayoutB: formItemLayout,
  213. dataB: this.props.data.applicant,
  214. },
  215. {
  216. labelA: "当前进度",
  217. formItemLayoutA: formItemLayout,
  218. // 当前是咨询师以及咨询师经理时使用shenhePeo函数,其他流程正常显示
  219. dataA:
  220. this.props.data.processState == 2 || this.props.data.processState == 3
  221. ? shenghePeo(this.props.data.examineName, this.props.data.processState)
  222. : getProcessStatusNew(
  223. this.props.data.examineName,
  224. this.props.data.processState,
  225. this.props.data.status
  226. ),
  227. labelB: "变更类型",
  228. formItemLayoutB: formItemLayout,
  229. dataB: getChangeType(this.props.data.type),
  230. },
  231. {
  232. labelA: "合同额(万元)",
  233. formItemLayoutA: formItemLayout,
  234. dataA: "***",
  235. labelB: "已收款(万元)",
  236. formItemLayoutB: formItemLayout,
  237. dataB: "***",
  238. },
  239. {
  240. labelA: "欠款(万元)",
  241. formItemLayoutA: formItemLayout,
  242. dataA: "***",
  243. labelB: "申请退款(万元)",
  244. formItemLayoutB: formItemLayout,
  245. dataB: "***",
  246. },
  247. {
  248. labelA: "首付款(万元)",
  249. formItemLayoutA: formItemLayout,
  250. dataA:"***",
  251. },
  252. {
  253. labelA: "变更原因",
  254. formItemLayoutA: formItemLayout,
  255. dataA: this.props.data.remarks,
  256. },
  257. ];
  258. const planData = [
  259. {
  260. labelA: "项目进度",
  261. formItemLayoutA: formItemLayout,
  262. dataA: this.props.data.projectState,
  263. labelB: "发生成本费用(万元)",
  264. formItemLayoutB: formItemLayout,
  265. dataB: "***",
  266. },
  267. {
  268. labelA: "备注",
  269. formItemLayoutA: formItemLayout,
  270. dataA: this.props.data.zxsRemarks,
  271. },
  272. ];
  273. const financeData = [
  274. {
  275. labelA: "收款时间",
  276. formItemLayoutA: formItemLayout,
  277. dataA: this.props.data.paymentTimes,
  278. labelB: "收款金额(万元)",
  279. formItemLayoutB: formItemLayout,
  280. dataB: "***",
  281. },
  282. {
  283. labelA: "开票时间",
  284. formItemLayoutA: formItemLayout,
  285. dataA: this.props.data.invoiceTimes,
  286. labelB: "已开票金额(万元)",
  287. formItemLayoutB: formItemLayout,
  288. dataB: "***",
  289. },
  290. {
  291. labelA: "发生成本(万元)",
  292. formItemLayoutA: formItemLayout,
  293. dataA: "***",
  294. labelB: "应退金额(万元)",
  295. formItemLayoutB: formItemLayout,
  296. dataB: "***",
  297. },
  298. {
  299. labelA: "补充资料/备注",
  300. formItemLayoutA: formItemLayout,
  301. dataA: this.props.data.cwRemarks,
  302. },
  303. ];
  304. const buttonData = [
  305. {
  306. name: "同意",
  307. title: "理由",
  308. placeholder: "请输入理由",
  309. type: "primary",
  310. status: 2,
  311. onChange: (value) => {
  312. this.setState({
  313. remarks: value,
  314. });
  315. },
  316. },
  317. {
  318. name: "拒绝",
  319. title: "理由",
  320. placeholder: "请输入理由",
  321. type: "danger",
  322. status: 3,
  323. onChange: (value) => {
  324. this.setState({
  325. remarks: value,
  326. });
  327. },
  328. },
  329. ];
  330. const orgCodeUrl = this.props.pictureUrl;
  331. const attachment = this.props.attachment
  332. return (
  333. <div className="clearfix changeDetail">
  334. <div
  335. className="clearfix"
  336. ref={(e) => {
  337. this.refs = e;
  338. }}
  339. >
  340. <div
  341. style={{
  342. borderRadius: "50%",
  343. width: 300,
  344. height: 300,
  345. position: "absolute",
  346. top: 230,
  347. left: 525,
  348. transform: "rotate(-5deg)",
  349. zIndex: 1,
  350. display:
  351. (this.props.data.processState == 7 ||
  352. this.props.data.processState == 8) &&
  353. this.props.data.status == 4
  354. ? "block"
  355. : "none",
  356. }}
  357. >
  358. {/* <span
  359. style={{
  360. fontSize: 29,
  361. position: "absolute",
  362. left: "50%",
  363. top: "50%",
  364. transform: "translate(-50%,-50%)",
  365. color: "red"
  366. }}
  367. >
  368. 通过
  369. </span> */}
  370. <img src={tongguo} style={{ width: "100%" }} />
  371. </div>
  372. <div
  373. style={{
  374. borderRadius: "50%",
  375. width: 300,
  376. height: 300,
  377. position: "absolute",
  378. top: 284,
  379. left: 586,
  380. transform: "rotate(-5deg)",
  381. zIndex: 1,
  382. display: this.props.data.status == 5 ? "block" : "none",
  383. }}
  384. >
  385. <img src={quxiao} style={{ width: "63%" }} />
  386. </div>
  387. <h2 style={{ textAlign: "center", marginBottom: 10 }}>
  388. 合同变更记录
  389. </h2>
  390. {pageData.map((item, index) => {
  391. return <Itemlist key={index} pageData={item} orderUid={this.props.orderUid} />;
  392. })}
  393. <Form.Item
  394. label="变更凭证"
  395. labelCol={{ span: 4 }}
  396. wrapperCol={{ span: 18 }}
  397. >
  398. <div style={{ paddingTop: '10px', paddingBottom: '10px' }}>
  399. <ImgList domId={this.props.domId ? this.props.domId : 'changeDetailJsy1'} fileList={orgCodeUrl} ItemWidth={'96px'} />
  400. </div>
  401. <Modal
  402. maskClosable={false}
  403. footer={null}
  404. width={"50%"}
  405. visible={this.state.previewVisible}
  406. onCancel={() => {
  407. this.state.rotateDeg = 0;
  408. this.setState({
  409. previewVisible: false,
  410. rotateDeg: this.state.rotateDeg,
  411. });
  412. }}
  413. >
  414. <img
  415. alt=""
  416. style={{
  417. width: "100%",
  418. transform: `rotate(${this.state.rotateDeg}deg)`,
  419. }}
  420. src={this.state.previewImage || ""}
  421. />
  422. <Button
  423. onClick={this.rotate}
  424. style={{
  425. position: "relative",
  426. left: "50%",
  427. transform: "translateX(-50%)",
  428. }}
  429. >
  430. 旋转
  431. </Button>
  432. <Button
  433. onClick={this.upImg}
  434. style={{
  435. position: "absolute",
  436. left: -81,
  437. top: "50%",
  438. transform: "translateY(-50%)",
  439. }}
  440. >
  441. 上一张
  442. </Button>
  443. <Button
  444. onClick={this.downImg}
  445. style={{
  446. position: "absolute",
  447. right: -81,
  448. top: "50%",
  449. transform: "translateY(-50%)",
  450. }}
  451. >
  452. 下一张
  453. </Button>
  454. </Modal>
  455. <Rizhi changeId={this.props.id} />
  456. </Form.Item>
  457. {
  458. this.props.contractPictureUrl && this.props.contractPictureUrl.length != 0 &&
  459. <div className="clearfix">
  460. <Form.Item
  461. labelCol={{ span: 4 }}
  462. wrapperCol={{ span: 18 }}
  463. label="最新合同"
  464. >
  465. <div style={{ paddingTop: 10 }}>
  466. <ImgList
  467. fileList={
  468. this.props.contractPictureUrl
  469. }
  470. ItemWidth={"96px"}
  471. />
  472. </div>
  473. </Form.Item>
  474. </div>
  475. }
  476. {/* <ul>
  477. {this.props.data.consultantExamine.map((item, index) => {
  478. return (
  479. <li>
  480. )
  481. })}
  482. </ul> */}
  483. {/* <h2 style={{ textAlign: "center", marginBottom: 0 }}>变更日志</h2> */}
  484. <ul
  485. style={{
  486. width: "868px",
  487. overflow: "hidden",
  488. paddingLeft: "90px",
  489. position: "relative",
  490. bottom: "0px",
  491. }}
  492. >
  493. {/* <span>操作人:</span> */}
  494. {this.props.dataSource.map((item, index) => {
  495. if (item.status == 0) {
  496. item.status = "发起";
  497. } else if (item.status == 1) {
  498. item.status = "审核中";
  499. } else if (item.status == 2) {
  500. item.status = "通过";
  501. } else if (item.status == 3) {
  502. item.status = "驳回";
  503. } else if (item.status == 4) {
  504. item.status = "完成";
  505. }
  506. return (
  507. <li
  508. key={index}
  509. style={{
  510. width: "100%",
  511. height: "auto",
  512. wordBreak: "break-all",
  513. marginBottom: "10px",
  514. }}
  515. >
  516. {item.aname + ":" + "(" + item.status + ")" + item.remarks}
  517. </li>
  518. );
  519. })}
  520. </ul>
  521. <ProAndCuiList id={this.props.id} isZxs={true} />
  522. {/* {this.props.data.processState >= 3 ? (
  523. <div>
  524. <h3 style={{ marginLeft: 10, fontWeight: 800, marginBottom: 10 }}>
  525. 当前项目进度(咨询师填写)
  526. </h3>
  527. {planData.map((item, index) => {
  528. return <Itemlist key={index} pageData={item} />;
  529. })}
  530. </div>
  531. ) : (
  532. ""
  533. )} */}
  534. {/* {this.props.data.processState >= 5 ? (
  535. <div>
  536. <h3 style={{ marginLeft: 10, fontWeight: 800, marginBottom: 10 }}>
  537. 当前财务状态(财务填写)
  538. </h3>
  539. {financeData.map((item, index) => {
  540. return <Itemlist key={index} pageData={item} />;
  541. })}
  542. </div>
  543. ) : (
  544. ""
  545. )} */}
  546. {/* 完成审核,上传附件 */}
  547. <div style={{
  548. position: "relative",
  549. display:
  550. (this.props.data.processState == 7 ||
  551. this.props.data.processState == 8) &&
  552. this.props.data.status == 2 || this.props.data.status == 4 || this.props.data.status == 3 || this.props.data.status == 6
  553. ? "block"
  554. : "none",
  555. marginTop: 10,
  556. }}
  557. >
  558. <hr
  559. style={{
  560. marginTop: 12,
  561. marginBottom: 10,
  562. backgroundColor: "black",
  563. height: 1,
  564. border: "none",
  565. }}
  566. />
  567. <h3
  568. style={{
  569. marginLeft: 20,
  570. fontWeight: 800,
  571. marginBottom: 10,
  572. display: "inline-block",
  573. }}
  574. >
  575. 完成审核,上传附件{" "}
  576. <span
  577. style={{ fontSize: 12, fontWeight: "normal", color: "red" }}
  578. >
  579. (注:由营销员上传变更后附件,全变更流程完成。)
  580. </span>
  581. </h3>
  582. <div>
  583. <Form.Item
  584. label="变更附件"
  585. labelCol={{ span: 4 }}
  586. wrapperCol={{ span: 18 }}
  587. >
  588. <div style={{ paddingTop: '10px', paddingBottom: '10px' }}>
  589. {attachment.length > 0 ? <ImgList domId={this.props.domId + 2 ? this.props.domId + 2 : 'changeDetailJsy2'} fileList={attachment} ItemWidth={'96px'} /> : '无附件'}
  590. </div>
  591. <Modal
  592. maskClosable={false}
  593. footer={null}
  594. width={"50%"}
  595. visible={this.state.previewVisible}
  596. onCancel={() => {
  597. this.setState({ previewVisible: false, rotateDeg: 0 }, () => {
  598. // this.reset();
  599. });
  600. }}
  601. >
  602. <img
  603. alt=""
  604. style={{
  605. width: "100%",
  606. transform: `rotate(${this.state.rotateDeg}deg)`,
  607. }}
  608. src={this.state.previewImage || ""}
  609. />
  610. <Button
  611. onClick={this.rotate}
  612. style={{
  613. position: "relative",
  614. left: "50%",
  615. transform: "translateX(-50%)",
  616. }}
  617. >
  618. 旋转
  619. </Button>
  620. <Button
  621. onClick={this.upImg}
  622. style={{
  623. position: "absolute",
  624. left: -81,
  625. top: "50%",
  626. transform: "translateY(-50%)",
  627. }}
  628. >
  629. 上一张
  630. </Button>
  631. <Button
  632. onClick={this.downImg}
  633. style={{
  634. position: "absolute",
  635. right: -81,
  636. top: "50%",
  637. transform: "translateY(-50%)",
  638. }}
  639. >
  640. 下一张
  641. </Button>
  642. </Modal>
  643. {/* <Rizhi changeId={this.props.id} /> */}
  644. </Form.Item>
  645. </div>
  646. </div>
  647. <div
  648. style={{
  649. display:
  650. (this.props.data.processState == 7 ||
  651. this.props.data.processState == 8) &&
  652. this.props.data.status == 4 &&
  653. this.props.data.refundStatus
  654. ? "block"
  655. : "none",
  656. }}
  657. >
  658. <Refund data={this.props.data} id={this.props.id} />
  659. </div>
  660. </div>
  661. {this.props.processState === this.props.data.processState ? (
  662. <div
  663. style={{
  664. display: this.props.data.isExamine == 0 ? "block" : "none",
  665. }}
  666. >
  667. <div className="clearfix" style={{ marginBottom: "10px" }}>
  668. <FormItem
  669. style={{ height: "auto" }}
  670. labelCol={{ span: 4 }}
  671. wrapperCol={{ span: 18 }}
  672. label="备注"
  673. >
  674. <TextArea
  675. rows={4}
  676. placeholder="请输入备注信息"
  677. style={{ width: "95%" }}
  678. value={this.state.reason}
  679. onChange={(e) => {
  680. let reason = e.target.value;
  681. this.setState({ reason });
  682. }}
  683. />
  684. </FormItem>
  685. </div>
  686. <div
  687. className="clearfix"
  688. style={{ display: "flex", justifyContent: "space-around" }}
  689. >
  690. {buttonData.map((item, index) => {
  691. return (
  692. <AgreeButton
  693. data={item}
  694. key={index}
  695. backData={this.props.data}
  696. processState={this.props.processState}
  697. visible={this.changeButtonStatus}
  698. ajaxData={this.state}
  699. loadData={this.props.loadData}
  700. rejectState={this.state.rejectState}
  701. reason={this.state.reason}
  702. onCancel={this.props.onCancel}
  703. />
  704. );
  705. })}
  706. </div>
  707. <Select
  708. defaultValue="0"
  709. style={{
  710. width: 120,
  711. float: "left",
  712. position: "relative",
  713. bottom: "28px",
  714. right: "-600px",
  715. }}
  716. onChange={(val) => {
  717. this.setState({ rejectState: val });
  718. }}
  719. >
  720. <Option
  721. value="0"
  722. style={{
  723. display: this.props.processState >= 1 ? "block" : "none",
  724. }}
  725. >
  726. 营销员
  727. </Option>
  728. <Option
  729. value="1"
  730. style={{
  731. display: this.props.processState >= 2 ? "block" : "none",
  732. }}
  733. >
  734. 营销管理员
  735. </Option>
  736. <Option
  737. value="2"
  738. style={{
  739. display: this.props.processState >= 3 ? "block" : "none",
  740. }}
  741. >
  742. 咨询师
  743. </Option>
  744. <Option
  745. value="3"
  746. style={{
  747. display: this.props.processState >= 4 ? "block" : "none",
  748. }}
  749. >
  750. 咨询师经理
  751. </Option>
  752. <Option
  753. value="4"
  754. style={{
  755. display: this.props.processState >= 5 ? "block" : "none",
  756. }}
  757. >
  758. 咨询师总监
  759. </Option>
  760. <Option
  761. value="5"
  762. style={{
  763. display: this.props.processState >= 6 ? "block" : "none",
  764. }}
  765. >
  766. 财务专员(退单)
  767. </Option>
  768. <Option
  769. value="6"
  770. style={{
  771. display: this.props.processState >= 7 ? "block" : "none",
  772. }}
  773. >
  774. 财务总监
  775. </Option>
  776. <Option
  777. value="7"
  778. style={{
  779. display: this.props.processState >= 8 ? "block" : "none",
  780. }}
  781. >
  782. 总裁
  783. </Option>
  784. </Select>
  785. </div>
  786. ) : (
  787. ""
  788. )}
  789. {/* <ReactToPrint
  790. trigger={() => (
  791. <div className="clearfix">
  792. <Button type="primary" style={{ float: "right", marginTop: 10 }}>
  793. 打印
  794. </Button>
  795. </div>
  796. )}
  797. content={() => this.refs}
  798. /> */}
  799. </div>
  800. );
  801. }
  802. }
  803. export { ChangeDetail };