| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374 | 
							- import React, { Component } from "react";
 
- import { Form, Button, Radio, Modal, Input, message, Switch } from "antd";
 
- import { knowledgeList, auditList, addDeductionList, } from "@/dataDic.js";
 
- /**
 
-  * 高新纯咨询合同说明添加和详情
 
-  */
 
- const RadioButton = Radio.Button;
 
- const RadioGroup = Radio.Group;
 
- const radioStyle = {
 
-   display: 'block',
 
-   height: '30px',
 
-   lineHeight: '30px',
 
- };
 
- let num = 1;
 
- const FormItem = Form.Item;
 
- class Gxczx extends Component {
 
-   constructor(props) {
 
-     super(props);
 
-     this.state = {
 
-       gxczx: "", //高新纯咨询合同说明弹窗
 
-       knowledgeOther: "",
 
-       auditOther: "",
 
-       addDeductionOther: "",
 
-     }
 
-   }
 
-   componentDidMount() {
 
-   }
 
-   componentWillUnmount() {
 
-     num = 1
 
-   }
 
-   componentWillReceiveProps(nextProps) {
 
-     const { knowledgeServices, auditServices, addDeductionServices,
 
-       knowledgeOther, auditOther, addDeductionOther, isCreat = false } = this.props
 
-     if (knowledgeServices != null && auditServices != null && addDeductionServices != null) {
 
-       if (isCreat) {
 
-         // 防止刷新进入,只能第一次渲染的时候触发   选择未签会让值变成-1(除了1,其他都归-1) 导致找不到label
 
-         if (num == 1 && this.state.gxczx == "") {
 
-           if (knowledgeServices != -1 && auditServices != -1 && addDeductionServices != -1) {
 
-             this.setState({
 
-               knowledgeText: knowledgeServices == 0
 
-                 ? knowledgeOther
 
-                 : knowledgeList.find(v => { return v.value == knowledgeServices }).label,
 
-               auditText: auditServices == 0
 
-                 ? auditOther
 
-                 : auditList.find(v => { return v.value == auditServices }).label,
 
-               addDeductionText: addDeductionServices == 0
 
-                 ? addDeductionOther
 
-                 : addDeductionList.find(v => { return v.value == addDeductionServices }).label,
 
-               zscq: knowledgeServices == null
 
-                 ? null
 
-                 : (knowledgeServices != 1 ? -1 : 1),
 
-               sjfw: auditServices == null
 
-                 ? null
 
-                 : (auditServices != 1 ? -1 : 1),
 
-               jjkc: addDeductionServices == null
 
-                 ? null
 
-                 : (addDeductionServices != 1 ? -1 : 1),
 
-             }, () => {
 
-               num++
 
-             })
 
-           }
 
-         }
 
-       } else {
 
-         this.setState({
 
-           knowledgeText: knowledgeServices == 0
 
-             ? knowledgeOther
 
-             : knowledgeList.find(v => { return v.value == knowledgeServices }).label,
 
-           auditText: auditServices == 0
 
-             ? auditOther
 
-             : auditList.find(v => { return v.value == auditServices }).label,
 
-           addDeductionText: addDeductionServices == 0
 
-             ? addDeductionOther
 
-             : addDeductionList.find(v => { return v.value == addDeductionServices }).label,
 
-         })
 
-       }
 
-     }
 
-   }
 
-   render() {
 
-     const { knowledgeServices, auditServices, addDeductionServices, isCreat = false, isShow } = this.props
 
-     return (
 
-       <div>
 
-         {
 
-           // 是否可编辑
 
-           isCreat ?
 
-             <div>
 
-               <h3
 
-                 style={{
 
-                   marginLeft: 10,
 
-                   fontWeight: 800,
 
-                   marginBottom: 10,
 
-                 }}
 
-               >
 
-                 高新纯咨询合同说明              
 
-                 <Switch checkedChildren="开" unCheckedChildren="关" checked={isShow}
 
-                   onChange={e => { this.props.onSwitch(e) }} />
 
-               </h3>
 
-               {
 
-                 isShow &&
 
-                 <div>
 
-                   <FormItem
 
-                     labelCol={{ span: 5 }}
 
-                     wrapperCol={{ span: 19 }}
 
-                     label={<span><strong style={{ color: "#f00" }}>*</strong>知识产权</span>}
 
-                   >
 
-                     <RadioGroup
 
-                       value={this.state.zscq}
 
-                       onChange={e => {
 
-                         num = 2
 
-                         this.setState({
 
-                           knowledgeServices: e.target.value == 1 ? 1 : undefined,
 
-                           zscq: e.target.value,
 
-                           gxczx: e.target.value == -1 ? "zscq" : "",
 
-                         })
 
-                         this.props.selknowledge({ knowledgeServices: e.target.value })
 
-                       }}>
 
-                       <RadioButton value={1}>已签</RadioButton>
 
-                       <RadioButton value={-1}>未签</RadioButton>
 
-                     </RadioGroup>
 
-                     <span style={{ marginLeft: 19 }}>
 
-                       {this.props.knowledgeServices == 1 ? "" : this.state.knowledgeText}
 
-                     </span>
 
-                   </FormItem>
 
-                   <FormItem
 
-                     labelCol={{ span: 5 }}
 
-                     wrapperCol={{ span: 19 }}
 
-                     label={<span><strong style={{ color: "#f00" }}>*</strong>审计服务</span>}
 
-                   >
 
-                     <RadioGroup
 
-                       value={this.state.sjfw}
 
-                       onChange={e => {
 
-                         num = 2
 
-                         this.setState({
 
-                           auditServices: e.target.value == 1 ? 1 : undefined,
 
-                           sjfw: e.target.value,
 
-                           gxczx: e.target.value == -1 ? "sjfw" : "",
 
-                         })
 
-                         this.props.selaudit({ auditServices: e.target.value })
 
-                       }}>
 
-                       <RadioButton value={1}>已签</RadioButton>
 
-                       <RadioButton value={-1}>未签</RadioButton>
 
-                     </RadioGroup>
 
-                     <span style={{ marginLeft: 19 }}>
 
-                       {this.props.auditServices == 1 ? "" : this.state.auditText}
 
-                     </span>
 
-                   </FormItem>
 
-                   <FormItem
 
-                     labelCol={{ span: 5 }}
 
-                     wrapperCol={{ span: 19 }}
 
-                     label={<span><strong style={{ color: "#f00" }}>*</strong>加计扣除服务</span>}
 
-                   >
 
-                     <RadioGroup
 
-                       value={this.state.jjkc}
 
-                       onChange={e => {
 
-                         num = 2
 
-                         this.setState({
 
-                           addDeductionServices: e.target.value == 1 ? 1 : undefined,
 
-                           jjkc: e.target.value,
 
-                           gxczx: e.target.value == -1 ? "jjkc" : ""
 
-                         })
 
-                         this.props.seladdDeduction({ addDeductionServices: e.target.value })
 
-                       }}>
 
-                       <RadioButton value={1}>已签</RadioButton>
 
-                       <RadioButton value={-1}>未签</RadioButton>
 
-                     </RadioGroup>
 
-                     <span style={{ marginLeft: 19 }}>
 
-                       {this.props.addDeductionServices == 1 ? "" : this.state.addDeductionText}
 
-                     </span>
 
-                   </FormItem>
 
-                 </div>
 
-               }
 
-             </div> :
 
-             <div>
 
-               {
 
-                 (knowledgeServices == null || auditServices == null || addDeductionServices == null)
 
-                   ? null :
 
-                   <div>
 
-                     <h3
 
-                       style={{
 
-                         marginLeft: 10,
 
-                         fontWeight: 800,
 
-                         marginBottom: 10,
 
-                       }}
 
-                     >
 
-                       高新纯咨询合同说明
 
-                     </h3>
 
-                     <div>
 
-                       <FormItem
 
-                         labelCol={{ span: 5 }}
 
-                         wrapperCol={{ span: 19 }}
 
-                         label="知识产权"
 
-                       >
 
-                         {<Button type="primary" size="default">{knowledgeServices == 1 ? "已签" : "未签"}</Button>}
 
-                         <span style={{ marginLeft: 19 }}>
 
-                           {knowledgeServices == 1 ? "" : this.state.knowledgeText}
 
-                         </span>
 
-                       </FormItem>
 
-                       <FormItem
 
-                         labelCol={{ span: 5 }}
 
-                         wrapperCol={{ span: 19 }}
 
-                         label="审计服务"
 
-                       >
 
-                         {<Button type="primary" size="default">{auditServices == 1 ? "已签" : "未签"}</Button>}
 
-                         <span style={{ marginLeft: 19 }}>
 
-                           {auditServices == 1 ? "" : this.state.auditText}
 
-                         </span>
 
-                       </FormItem>
 
-                       <FormItem
 
-                         labelCol={{ span: 5 }}
 
-                         wrapperCol={{ span: 19 }}
 
-                         label="加计扣除服务"
 
-                       >
 
-                         {<Button type="primary" size="default">{addDeductionServices == 1 ? "已签" : "未签"}</Button>}
 
-                         <span style={{ marginLeft: 19 }}>
 
-                           {addDeductionServices == 1 ? "" : this.state.addDeductionText}
 
-                         </span>
 
-                       </FormItem>
 
-                     </div>
 
-                   </div>
 
-               }
 
-             </div>
 
-         }
 
-         {
 
-           this.state.gxczx != "" &&
 
-           <Modal
 
-             title="请选择"
 
-             visible={this.state.gxczx != ""}
 
-             closable={false}
 
-             footer={[
 
-               <Button type="primary" key="submit"
 
-                 onClick={() => {
 
-                   let reason = ""
 
-                   if (this.state.gxczx == "zscq") {
 
-                     if (this.state.knowledgeServices == undefined) {
 
-                       message.warn("请选择原因!")
 
-                       return
 
-                     }
 
-                     reason = this.state.knowledgeServices == 0
 
-                       ? this.state.knowledgeOther
 
-                       : knowledgeList.find(v => { return v.value == this.state.knowledgeServices }).label
 
-                     this.setState({
 
-                       knowledgeText: reason
 
-                     })
 
-                     this.props.selknowledge({ knowledgeServices: this.state.knowledgeServices, knowledgeOther: this.state.knowledgeOther })
 
-                   } else if (this.state.gxczx == "sjfw") {
 
-                     if (this.state.auditServices == undefined) {
 
-                       message.warn("请选择原因!")
 
-                       return
 
-                     }
 
-                     reason = this.state.auditServices == 0
 
-                       ? this.state.auditOther
 
-                       : auditList.find(v => { return v.value == this.state.auditServices }).label
 
-                     this.setState({
 
-                       auditText: reason
 
-                     })
 
-                     this.props.selaudit({ auditServices: this.state.auditServices, auditOther: this.state.auditOther })
 
-                   } else if (this.state.gxczx == "jjkc") {
 
-                     if (this.state.addDeductionServices == undefined) {
 
-                       message.warn("请选择原因!")
 
-                       return
 
-                     }
 
-                     reason = this.state.addDeductionServices == 0
 
-                       ? this.state.addDeductionOther
 
-                       : addDeductionList.find(v => { return v.value == this.state.addDeductionServices }).label
 
-                     this.setState({
 
-                       addDeductionText: reason
 
-                     })
 
-                     this.props.seladdDeduction({ addDeductionServices: this.state.addDeductionServices, addDeductionOther: this.state.addDeductionOther })
 
-                   }
 
-                   if (!reason) {
 
-                     message.warn("请填写原因!")
 
-                     return
 
-                   }
 
-                   if (!reason.replace(/\s+/g, '')) {
 
-                     message.warn("请填写原因!")
 
-                     return
 
-                   }
 
-                   this.setState({
 
-                     gxczx: "",
 
-                   })
 
-                 }}
 
-               >确定</Button>
 
-             ]
 
-             }
 
-           >
 
-             {
 
-               this.state.gxczx == "zscq" ?
 
-                 <RadioGroup onChange={e => { this.setState({ knowledgeServices: e.target.value }) }} value={this.state.knowledgeServices}>
 
-                   {
 
-                     knowledgeList.map(item =>
 
-                       item.value != 1 &&
 
-                       <Radio style={radioStyle} value={item.value}>{item.label}
 
-                         {(this.state.knowledgeServices === 0 && item.value == 0) ?
 
-                           <Input
 
-                             placeholder="请填写原因"
 
-                             style={{ width: 400, marginLeft: 10 }}
 
-                             value={this.state.knowledgeOther}
 
-                             onChange={e => {
 
-                               this.setState({
 
-                                 knowledgeOther: e.target.value
 
-                               })
 
-                             }}
 
-                           /> : null}
 
-                       </Radio>
 
-                     )
 
-                   }
 
-                 </RadioGroup> :
 
-                 this.state.gxczx == "sjfw" ?
 
-                   <RadioGroup onChange={e => { this.setState({ auditServices: e.target.value }) }} value={this.state.auditServices}>
 
-                     {
 
-                       auditList.map(item =>
 
-                         item.value != 1 &&
 
-                         <Radio style={radioStyle} value={item.value}>{item.label}
 
-                           {(this.state.auditServices === 0 && item.value == 0) ?
 
-                             <Input
 
-                               placeholder="请填写原因"
 
-                               style={{ width: 400, marginLeft: 10 }}
 
-                               value={this.state.auditOther}
 
-                               onChange={e => {
 
-                                 this.setState({
 
-                                   auditOther: e.target.value
 
-                                 })
 
-                               }}
 
-                             /> : null}
 
-                         </Radio>
 
-                       )
 
-                     }
 
-                   </RadioGroup> :
 
-                   this.state.gxczx == "jjkc" &&
 
-                   <RadioGroup onChange={e => { this.setState({ addDeductionServices: e.target.value }) }} value={this.state.addDeductionServices}>
 
-                     {
 
-                       addDeductionList.map(item =>
 
-                         item.value != 1 &&
 
-                         <Radio style={radioStyle} value={item.value}>{item.label}
 
-                           {(this.state.addDeductionServices === 0 && item.value == 0) ?
 
-                             <Input
 
-                               placeholder="请填写原因"
 
-                               style={{ width: 400, marginLeft: 10 }}
 
-                               value={this.state.addDeductionOther}
 
-                               onChange={e => {
 
-                                 this.setState({
 
-                                   addDeductionOther: e.target.value
 
-                                 })
 
-                               }}
 
-                             /> : null}
 
-                         </Radio>
 
-                       )
 
-                     }
 
-                   </RadioGroup>
 
-             }
 
-           </Modal >
 
-         }
 
-       </div >
 
-     );
 
-   }
 
- }
 
- export default Gxczx;
 
 
  |