changeDetailJsy.js 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823
  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. } else if (item.status == 5) {
  506. item.status = "撤销";
  507. }
  508. return (
  509. <li
  510. key={index}
  511. style={{
  512. width: "100%",
  513. height: "auto",
  514. wordBreak: "break-all",
  515. marginBottom: "10px",
  516. }}
  517. >
  518. {item.aname + ":" + "【" + item.status + "】" + item.remarks + "(" + item.createTimes + ")"}
  519. </li>
  520. );
  521. })}
  522. </ul>
  523. <ProAndCuiList id={this.props.id} isZxs={true} />
  524. {/* {this.props.data.processState >= 3 ? (
  525. <div>
  526. <h3 style={{ marginLeft: 10, fontWeight: 800, marginBottom: 10 }}>
  527. 当前项目进度(咨询师填写)
  528. </h3>
  529. {planData.map((item, index) => {
  530. return <Itemlist key={index} pageData={item} />;
  531. })}
  532. </div>
  533. ) : (
  534. ""
  535. )} */}
  536. {/* {this.props.data.processState >= 5 ? (
  537. <div>
  538. <h3 style={{ marginLeft: 10, fontWeight: 800, marginBottom: 10 }}>
  539. 当前财务状态(财务填写)
  540. </h3>
  541. {financeData.map((item, index) => {
  542. return <Itemlist key={index} pageData={item} />;
  543. })}
  544. </div>
  545. ) : (
  546. ""
  547. )} */}
  548. {/* 完成审核,上传附件 */}
  549. <div style={{
  550. position: "relative",
  551. display:
  552. (this.props.data.processState == 7 ||
  553. this.props.data.processState == 8) &&
  554. this.props.data.status == 2 || this.props.data.status == 4 || this.props.data.status == 3 || this.props.data.status == 6
  555. ? "block"
  556. : "none",
  557. marginTop: 10,
  558. }}
  559. >
  560. <hr
  561. style={{
  562. marginTop: 12,
  563. marginBottom: 10,
  564. backgroundColor: "black",
  565. height: 1,
  566. border: "none",
  567. }}
  568. />
  569. <h3
  570. style={{
  571. marginLeft: 20,
  572. fontWeight: 800,
  573. marginBottom: 10,
  574. display: "inline-block",
  575. }}
  576. >
  577. 完成审核,上传附件{" "}
  578. <span
  579. style={{ fontSize: 12, fontWeight: "normal", color: "red" }}
  580. >
  581. (注:由营销员上传变更后附件,全变更流程完成。)
  582. </span>
  583. </h3>
  584. <div>
  585. <Form.Item
  586. label="变更附件"
  587. labelCol={{ span: 4 }}
  588. wrapperCol={{ span: 18 }}
  589. >
  590. <div style={{ paddingTop: '10px', paddingBottom: '10px' }}>
  591. {attachment.length > 0 ? <ImgList domId={this.props.domId + 2 ? this.props.domId + 2 : 'changeDetailJsy2'} fileList={attachment} ItemWidth={'96px'} /> : '无附件'}
  592. </div>
  593. <Modal
  594. maskClosable={false}
  595. footer={null}
  596. width={"50%"}
  597. visible={this.state.previewVisible}
  598. onCancel={() => {
  599. this.setState({ previewVisible: false, rotateDeg: 0 }, () => {
  600. // this.reset();
  601. });
  602. }}
  603. >
  604. <img
  605. alt=""
  606. style={{
  607. width: "100%",
  608. transform: `rotate(${this.state.rotateDeg}deg)`,
  609. }}
  610. src={this.state.previewImage || ""}
  611. />
  612. <Button
  613. onClick={this.rotate}
  614. style={{
  615. position: "relative",
  616. left: "50%",
  617. transform: "translateX(-50%)",
  618. }}
  619. >
  620. 旋转
  621. </Button>
  622. <Button
  623. onClick={this.upImg}
  624. style={{
  625. position: "absolute",
  626. left: -81,
  627. top: "50%",
  628. transform: "translateY(-50%)",
  629. }}
  630. >
  631. 上一张
  632. </Button>
  633. <Button
  634. onClick={this.downImg}
  635. style={{
  636. position: "absolute",
  637. right: -81,
  638. top: "50%",
  639. transform: "translateY(-50%)",
  640. }}
  641. >
  642. 下一张
  643. </Button>
  644. </Modal>
  645. {/* <Rizhi changeId={this.props.id} /> */}
  646. </Form.Item>
  647. </div>
  648. </div>
  649. <div
  650. style={{
  651. display:
  652. (this.props.data.processState == 7 ||
  653. this.props.data.processState == 8) &&
  654. this.props.data.status == 4 &&
  655. this.props.data.refundStatus
  656. ? "block"
  657. : "none",
  658. }}
  659. >
  660. <Refund data={this.props.data} id={this.props.id} />
  661. </div>
  662. </div>
  663. {this.props.processState === this.props.data.processState ? (
  664. <div
  665. style={{
  666. display: this.props.data.isExamine == 0 ? "block" : "none",
  667. }}
  668. >
  669. <div className="clearfix" style={{ marginBottom: "10px" }}>
  670. <FormItem
  671. style={{ height: "auto" }}
  672. labelCol={{ span: 4 }}
  673. wrapperCol={{ span: 18 }}
  674. label="备注"
  675. >
  676. <TextArea
  677. rows={4}
  678. placeholder="请输入备注信息"
  679. style={{ width: "95%" }}
  680. value={this.state.reason}
  681. onChange={(e) => {
  682. let reason = e.target.value;
  683. this.setState({ reason });
  684. }}
  685. />
  686. </FormItem>
  687. </div>
  688. <div
  689. className="clearfix"
  690. style={{ display: "flex", justifyContent: "space-around" }}
  691. >
  692. {buttonData.map((item, index) => {
  693. return (
  694. <AgreeButton
  695. data={item}
  696. key={index}
  697. backData={this.props.data}
  698. processState={this.props.processState}
  699. visible={this.changeButtonStatus}
  700. ajaxData={this.state}
  701. loadData={this.props.loadData}
  702. rejectState={this.state.rejectState}
  703. reason={this.state.reason}
  704. onCancel={this.props.onCancel}
  705. />
  706. );
  707. })}
  708. </div>
  709. <Select
  710. defaultValue="0"
  711. style={{
  712. width: 120,
  713. float: "left",
  714. position: "relative",
  715. bottom: "28px",
  716. right: "-600px",
  717. }}
  718. onChange={(val) => {
  719. this.setState({ rejectState: val });
  720. }}
  721. >
  722. <Option
  723. value="0"
  724. style={{
  725. display: this.props.processState >= 1 ? "block" : "none",
  726. }}
  727. >
  728. 营销员
  729. </Option>
  730. <Option
  731. value="1"
  732. style={{
  733. display: this.props.processState >= 2 ? "block" : "none",
  734. }}
  735. >
  736. 营销管理员
  737. </Option>
  738. <Option
  739. value="2"
  740. style={{
  741. display: this.props.processState >= 3 ? "block" : "none",
  742. }}
  743. >
  744. 咨询师
  745. </Option>
  746. <Option
  747. value="3"
  748. style={{
  749. display: this.props.processState >= 4 ? "block" : "none",
  750. }}
  751. >
  752. 咨询师经理
  753. </Option>
  754. <Option
  755. value="4"
  756. style={{
  757. display: this.props.processState >= 5 ? "block" : "none",
  758. }}
  759. >
  760. 咨询师总监
  761. </Option>
  762. <Option
  763. value="5"
  764. style={{
  765. display: this.props.processState >= 6 ? "block" : "none",
  766. }}
  767. >
  768. 财务专员(退单)
  769. </Option>
  770. <Option
  771. value="6"
  772. style={{
  773. display: this.props.processState >= 7 ? "block" : "none",
  774. }}
  775. >
  776. 财务总监
  777. </Option>
  778. <Option
  779. value="7"
  780. style={{
  781. display: this.props.processState >= 8 ? "block" : "none",
  782. }}
  783. >
  784. 总裁
  785. </Option>
  786. </Select>
  787. </div>
  788. ) : (
  789. ""
  790. )}
  791. {/* <ReactToPrint
  792. trigger={() => (
  793. <div className="clearfix">
  794. <Button type="primary" style={{ float: "right", marginTop: 10 }}>
  795. 打印
  796. </Button>
  797. </div>
  798. )}
  799. content={() => this.refs}
  800. /> */}
  801. </div>
  802. );
  803. }
  804. }
  805. export { ChangeDetail };