Explorar o código

兼容旧数据
添加项目拆分识别

mentoswzq %!s(int64=4) %!d(string=hai) anos
pai
achega
1ab3c440e9

+ 230 - 224
js/component/manageCenter/components/checkProject/index.jsx

@@ -18,6 +18,7 @@ import PayRecord from './payRecord';
 import ImgList from '../../../common/imgList/index';
 import './index.less'
 import $ from "jquery";
+import OldInforProject from "../oldInforProject";
 
 class CheckProject extends Component {
   constructor(props) {
@@ -973,36 +974,39 @@ class CheckProject extends Component {
 
   render() {
     return (
-      <div className="App">
-        <div className="projectType">
-          <div className="typeTitle">
-            <div>类型:</div>
-          </div>
-          {
-            parseInt(this.props.startType) === 0 ?
-                <div>
-                  <div>外包(外包派单,不走总部)</div>
-                  <div className="tipsText">提示高于总部价格,费用个人承担</div>
-                </div> :
-                <div>供应商信息(普通单)</div>
-          }
-          <div style={{marginLeft:'auto'}}>
-            <span style={{color:'#58a3ff'}}>项目状态:</span>{getProjectStatus(this.props.projectStatus)}
-          </div>
-        </div>
-        {
-          this.props.projectType === 1?
-              <div style={{
-                display:'flex',
-                flexFlow:'row nowrap',
-                alignItems:'center',
-                padding:'0px 0px 10px 20px'
-              }}>
-                <div>
-                  专利类型:<span style={{marginLeft:'15px'}}>{this.props.patentType === 0 ? '专利申请/变更/转让' : '专利买卖'}</span>
+        <div>
+          { this.props.oldInfor && Object.keys(this.props.oldInfor).length > 0 ?
+            <OldInforProject oldInfor={this.props.oldInfor}/> :
+              <div className="App">
+                <div className="projectType">
+                  <div className="typeTitle">
+                    <div>类型:</div>
+                  </div>
+                  {
+                    parseInt(this.props.startType) === 0 ?
+                        <div>
+                          <div>外包(外包派单,不走总部)</div>
+                          <div className="tipsText">提示高于总部价格,费用个人承担</div>
+                        </div> :
+                        <div>供应商信息(普通单)</div>
+                  }
+                  <div style={{marginLeft:'auto'}}>
+                    <span style={{color:'#58a3ff'}}>项目状态:</span>{getProjectStatus(this.props.projectStatus)}
+                  </div>
                 </div>
-                <div style={{paddingLeft:'100px'}}>
-                  专利名称:<span style={{marginLeft:'15px'}}>
+                {
+                  this.props.projectType === 1?
+                      <div style={{
+                        display:'flex',
+                        flexFlow:'row nowrap',
+                        alignItems:'center',
+                        padding:'0px 0px 10px 20px'
+                      }}>
+                        <div>
+                          专利类型:<span style={{marginLeft:'15px'}}>{this.props.patentType === 0 ? '专利申请/变更/转让' : '专利买卖'}</span>
+                        </div>
+                        <div style={{paddingLeft:'100px'}}>
+                          专利名称:<span style={{marginLeft:'15px'}}>
                   {
                     this.props.patentNameType === 0 ? '实用新型专利' :
                         this.props.patentNameType === 1 ? '发明专利' :
@@ -1010,215 +1014,217 @@ class CheckProject extends Component {
                                 this.props.patentNameType === 3 ? this.props.patentName : ''
                   }
                 </span>
-                </div>
-              </div> : <div/>
-        }
-        <div className="thirdParty">
-          <div>
+                        </div>
+                      </div> : <div/>
+                }
+                <div className="thirdParty">
+                  <div>
             <span className="title">
               第三方信息
             </span>
-          </div>
-          <div
-            className="clearfix"
-          >
-            <Spin spinning={this.state.loading}>
-              <Form layout="horizontal">
-                <Table
-                  pagination={false}
-                  columns={this.state.ContactsListsNew}
-                  dataSource={this.props.thirdInfoList}
-                  onRowClick={this.tableRowClickOne}
-                  scroll={{ x: 'max-content', y: 0 }}
-                  bordered
-                  size="small"
-                />
-                <Col span={24} offset={9} style={{ marginTop: '15px' }}/>
-              </Form>
-            </Spin>
-          </div>
-        </div>
-        {/*如果是软著类或者专利类的专利申请,隐藏付款节点*/}
-        {!((this.props.projectType === 1 && this.props.patentType === 0) || this.props.projectType === 2) ? <div className="thirdParty">
-          <div>
+                  </div>
+                  <div
+                      className="clearfix"
+                  >
+                    <Spin spinning={this.state.loading}>
+                      <Form layout="horizontal">
+                        <Table
+                            pagination={false}
+                            columns={this.state.ContactsListsNew}
+                            dataSource={this.props.thirdInfoList}
+                            onRowClick={this.tableRowClickOne}
+                            scroll={{ x: 'max-content', y: 0 }}
+                            bordered
+                            size="small"
+                        />
+                        <Col span={24} offset={9} style={{ marginTop: '15px' }}/>
+                      </Form>
+                    </Spin>
+                  </div>
+                </div>
+                {/*如果是软著类或者专利类的专利申请,隐藏付款节点*/}
+                {!((this.props.projectType === 1 && this.props.patentType === 0) || this.props.projectType === 2) ? <div className="thirdParty">
+                  <div>
             <span className="title">
               付款节点
             </span>
-          </div>
-          <div
-            className="clearfix"
-          >
-            <Spin spinning={this.state.loading}>
-              <Form layout="horizontal">
-                <Table
-                  pagination={false}
-                  columns={this.state.PayNodeTableColunms}
-                  dataSource={this.props.dataSource}
-                  onRowClick={this.payNodeTableRowClickOne}
-                  scroll={{ x: 'max-content', y: 0 }}
-                  bordered
-                  size="small"
-                />
-                <Col span={24} offset={9} style={{ marginTop: '15px' }}/>
-              </Form>
-            </Spin>
-          </div>
-        </div> : <div/>}
-        <div
-          style={{
-            borderTop: '1px #000000 dashed',
-            padding: '10px 20px 0px 20px',
-          }}
-        >
-          <div>
-            <div className="title">备注</div>
-            <div style={{fontSize:'15px'}}>
-              {this.props.outsourceRemarks}
-            </div>
-          </div>
-          {this.props.fileList && this.props.fileList.length > 0 ? <div style={{paddingTop:'10px'}}>
-            <div className="title">合同/协议扫描件</div>
-            <div>
-                <ImgList fileList={this.props.fileList} ItemWidth={'96px'}/>
-            </div>
-            {/*<Upload*/}
-            {/*    className="demandDetailShow-upload"*/}
-            {/*    listType="picture-card"*/}
-            {/*    fileList={this.props.fileList}*/}
-            {/*    onPreview={(file) => {*/}
-            {/*      this.setState({*/}
-            {/*        previewImage: file.url || file.thumbUrl,*/}
-            {/*        previewVisible: true,*/}
-            {/*      })*/}
-            {/*    }}*/}
-            {/*/>*/}
-            <Modal
-                maskClosable={false}
-                footer={null}
-                visible={this.state.previewVisible}
-                onCancel={() => {
-                  this.setState({ previewVisible: false })
-                }}
-            >
-              <img
-                  alt=""
-                  style={{ width: '100%' }}
-                  src={this.state.previewImage || ''}
-              />
-            </Modal>
-          </div> : <div/>}
-        </div>
-        {parseInt(this.props.startType) !== 1 && this.state.outsourceLogs.length !== 0 ? <div className="outsourceLogConent">
-          <div className="title" style={{
-            paddingBottom: 0,
-          }}>外包状态</div>
-          <div className="outsourceLogList">
-            {
-              this.state.outsourceLogs && this.state.outsourceLogs.map((value,index)=>(
-                  <div key={index} className="outsourceLogItem outsource">
-                    <div style={{
-                      display:'flex',
-                      flexFlow:'row nowrap',
-                      paddingBottom: '3px',
-                      paddingTop: '3px',
-                    }}>
-                      <div>
-                        {value.aname}
-                      </div>
-                      <div style={{paddingLeft:'5px'}}>
-                        {
-                          value.status === 0 ?
-                              <Tag color="#2db7f5">发起外包审核</Tag> :
-                              value.status === 1 ? <Tag color="#87d068">通过</Tag> :
-                                  <Tag color="#f50">驳回</Tag>
-                        }
-                      </div>
-                      <div style={{
-                        wordBreak: 'break-all',
-                        maxWidth:'67%',
-                      }}>
-                        {value.remarks}
-                      </div>
-                      <div style={{paddingLeft: '10px'}}>
-                        {value.createTimes}
-                      </div>
+                  </div>
+                  <div
+                      className="clearfix"
+                  >
+                    <Spin spinning={this.state.loading}>
+                      <Form layout="horizontal">
+                        <Table
+                            pagination={false}
+                            columns={this.state.PayNodeTableColunms}
+                            dataSource={this.props.dataSource}
+                            onRowClick={this.payNodeTableRowClickOne}
+                            scroll={{ x: 'max-content', y: 0 }}
+                            bordered
+                            size="small"
+                        />
+                        <Col span={24} offset={9} style={{ marginTop: '15px' }}/>
+                      </Form>
+                    </Spin>
+                  </div>
+                </div> : <div/>}
+                <div
+                    style={{
+                      borderTop: '1px #000000 dashed',
+                      padding: '10px 20px 0px 20px',
+                    }}
+                >
+                  <div>
+                    <div className="title">备注</div>
+                    <div style={{fontSize:'15px'}}>
+                      {this.props.outsourceRemarks}
                     </div>
                   </div>
-              ))
-            }
-          </div>
-        </div> : <div/>}
-        {this.state.selectOrderPayments.length !== 0 ? <div className="outsourceLogConent">
-          <div className="title">支付记录</div>
-          <Spin spinning={this.state.loading}>
-            <Form layout="horizontal">
-              <Table
-                  pagination={false}
-                  columns={this.state.orderPaymentseColunms}
-                  dataSource={this.state.selectOrderPayments}
-                  onRowClick={(record)=>{
-                    this.setState({
-                      payRecordVisible: true,
-                      orderPaymentsId: record.id,
-                    })
-                  }}
-                  scroll={{ x: 'max-content', y: 0 }}
-                  bordered
-                  size="small"
-              />
-              <Col span={24} offset={9} style={{ marginTop: '15px' }}/>
-            </Form>
-          </Spin>
-        </div> : <div/>}
-        {/*
+                  {this.props.fileList && this.props.fileList.length > 0 ? <div style={{paddingTop:'10px'}}>
+                    <div className="title">合同/协议扫描件</div>
+                    <div>
+                      <ImgList fileList={this.props.fileList} ItemWidth={'96px'}/>
+                    </div>
+                    {/*<Upload*/}
+                    {/*    className="demandDetailShow-upload"*/}
+                    {/*    listType="picture-card"*/}
+                    {/*    fileList={this.props.fileList}*/}
+                    {/*    onPreview={(file) => {*/}
+                    {/*      this.setState({*/}
+                    {/*        previewImage: file.url || file.thumbUrl,*/}
+                    {/*        previewVisible: true,*/}
+                    {/*      })*/}
+                    {/*    }}*/}
+                    {/*/>*/}
+                    <Modal
+                        maskClosable={false}
+                        footer={null}
+                        visible={this.state.previewVisible}
+                        onCancel={() => {
+                          this.setState({ previewVisible: false })
+                        }}
+                    >
+                      <img
+                          alt=""
+                          style={{ width: '100%' }}
+                          src={this.state.previewImage || ''}
+                      />
+                    </Modal>
+                  </div> : <div/>}
+                </div>
+                {parseInt(this.props.startType) !== 1 && this.state.outsourceLogs.length !== 0 ? <div className="outsourceLogConent">
+                  <div className="title" style={{
+                    paddingBottom: 0,
+                  }}>外包状态</div>
+                  <div className="outsourceLogList">
+                    {
+                      this.state.outsourceLogs && this.state.outsourceLogs.map((value,index)=>(
+                          <div key={index} className="outsourceLogItem outsource">
+                            <div style={{
+                              display:'flex',
+                              flexFlow:'row nowrap',
+                              paddingBottom: '3px',
+                              paddingTop: '3px',
+                            }}>
+                              <div>
+                                {value.aname}
+                              </div>
+                              <div style={{paddingLeft:'5px'}}>
+                                {
+                                  value.status === 0 ?
+                                      <Tag color="#2db7f5">发起外包审核</Tag> :
+                                      value.status === 1 ? <Tag color="#87d068">通过</Tag> :
+                                          <Tag color="#f50">驳回</Tag>
+                                }
+                              </div>
+                              <div style={{
+                                wordBreak: 'break-all',
+                                maxWidth:'67%',
+                              }}>
+                                {value.remarks}
+                              </div>
+                              <div style={{paddingLeft: '10px'}}>
+                                {value.createTimes}
+                              </div>
+                            </div>
+                          </div>
+                      ))
+                    }
+                  </div>
+                </div> : <div/>}
+                {this.state.selectOrderPayments.length !== 0 ? <div className="outsourceLogConent">
+                  <div className="title">支付记录</div>
+                  <Spin spinning={this.state.loading}>
+                    <Form layout="horizontal">
+                      <Table
+                          pagination={false}
+                          columns={this.state.orderPaymentseColunms}
+                          dataSource={this.state.selectOrderPayments}
+                          onRowClick={(record)=>{
+                            this.setState({
+                              payRecordVisible: true,
+                              orderPaymentsId: record.id,
+                            })
+                          }}
+                          scroll={{ x: 'max-content', y: 0 }}
+                          bordered
+                          size="small"
+                      />
+                      <Col span={24} offset={9} style={{ marginTop: '15px' }}/>
+                    </Form>
+                  </Spin>
+                </div> : <div/>}
+                {/*
             申请付款
             tid:项目id
             nodeId: 付款节点id
             previewPayInfor: 项目或者节点信息
          */}
-        {this.state.previewPayVisible ? <ApplyPaymentModal
-            {...this.props}
-            tid={this.props.tid}
-            type={this.state.type}
-            nodeId={this.state.nodeId}
-            projectType={this.props.projectType}
-            patentType={this.props.patentType}
-            previewPayInfor={this.state.previewPayInfor}
-            visible={this.state.previewPayVisible}
-            onRefresh={()=>{
-              this.props.onRefresh();
-              this.getSelectOrderPayment();
-            }}
-            changeVisible={()=>{
-              this.setState({
-                previewPayVisible: false,
-                nodeId: 0,                  //付款节点id
-                previewPayInfor: {},
-                type: 1
-              })
-            }}/> : <div/>}
-          {/*  支付记录操作弹出  */}
-          {this.state.payRecordVisible ? <PayRecord
-                {...this.props}
-                tid={this.props.tid}
-                projectType={this.props.projectType}
-                patentType={this.props.patentType}
-                payId={this.state.orderPaymentsId}
-                visible={this.state.payRecordVisible}
-                isAuditPayment={this.props.isAuditPayment}
-                onRefresh={()=>{
-                    this.props.onRefresh();
-                    this.getSelectOrderPayment();
-                }}
-                changeVisible={()=>{
-                    this.getSelectOrderPayment();
-                    this.props.onRefresh && this.props.onRefresh();
-                    this.setState({
+                {this.state.previewPayVisible ? <ApplyPaymentModal
+                    {...this.props}
+                    tid={this.props.tid}
+                    type={this.state.type}
+                    nodeId={this.state.nodeId}
+                    projectType={this.props.projectType}
+                    patentType={this.props.patentType}
+                    previewPayInfor={this.state.previewPayInfor}
+                    visible={this.state.previewPayVisible}
+                    onRefresh={()=>{
+                      this.props.onRefresh();
+                      this.getSelectOrderPayment();
+                    }}
+                    changeVisible={()=>{
+                      this.setState({
+                        previewPayVisible: false,
+                        nodeId: 0,                  //付款节点id
+                        previewPayInfor: {},
+                        type: 1
+                      })
+                    }}/> : <div/>}
+                {/*  支付记录操作弹出  */}
+                {this.state.payRecordVisible ? <PayRecord
+                    {...this.props}
+                    tid={this.props.tid}
+                    projectType={this.props.projectType}
+                    patentType={this.props.patentType}
+                    payId={this.state.orderPaymentsId}
+                    visible={this.state.payRecordVisible}
+                    isAuditPayment={this.props.isAuditPayment}
+                    onRefresh={()=>{
+                      this.props.onRefresh();
+                      this.getSelectOrderPayment();
+                    }}
+                    changeVisible={()=>{
+                      this.getSelectOrderPayment();
+                      this.props.onRefresh && this.props.onRefresh();
+                      this.setState({
                         payRecordVisible: false,
-                    })
-                }}
-            /> : <div/>}
-      </div>
+                      })
+                    }}
+                /> : <div/>}
+              </div>
+          }
+        </div>
     )
   }
 }

+ 95 - 0
js/component/manageCenter/components/oldInforProject/index.js

@@ -0,0 +1,95 @@
+import React,{Component} from 'react';
+import {Form} from 'antd';
+import { getRefundStatus } from '@/tools';
+import ImgList from "../../../common/imgList";
+
+const formItemLayout = {
+    labelCol: { span: 8 },
+    wrapperCol: { span: 14 },
+}
+
+class OldInforProject extends Component{
+    constructor(props) {
+        super(props);
+        this.state={
+
+        }
+    }
+
+    render() {
+        const {oldInfor} = this.props;
+        return (
+            <div>
+                <div className="clearfix">
+                    <Form.Item
+                        className="half-item"
+                        {...formItemLayout}
+                        label="外包公司"
+                    >
+                        <span>{oldInfor.companyName}</span>
+                    </Form.Item>
+                </div>
+                <div className="clearfix">
+                    <Form.Item
+                        className="half-item"
+                        {...formItemLayout}
+                        label="单价(万元)"
+                    >
+                        <span>{oldInfor.unitPrice}</span>
+                    </Form.Item>
+                </div>
+                <div className="clearfix">
+                    <Form.Item
+                        className="half-item"
+                        {...formItemLayout}
+                        label="数量(个)"
+                    >
+                        <span>{oldInfor.unitNumber}</span>
+                    </Form.Item>
+                </div>
+                <div className="clearfix">
+                    <Form.Item
+                        className="half-item"
+                        {...formItemLayout}
+                        label="总金额(万元)"
+                    >
+                        <span>{oldInfor.amount}</span>
+                    </Form.Item>
+                </div>
+                <div className="clearfix">
+                    <Form.Item
+                        className="half-item"
+                        {...formItemLayout}
+                        label="备注"
+                    >
+                        <span>{oldInfor.outsourceRemarks}</span>
+                    </Form.Item>
+                </div>
+                <div className="clearfix">
+                    <Form.Item
+                        labelCol={{ span: 4 }}
+                        wrapperCol={{ span: 18 }}
+                        label="合同/协议扫描件"
+                    >
+                        <div style={{paddingTop:'10px',paddingBottom:'10px'}}>
+                            <ImgList fileList={oldInfor.pictureUrl} ItemWidth={'96px'}/>
+                        </div>
+                    </Form.Item>
+                </div>
+                <div className="clearfix" style={{
+                    borderTop:'1px #000000 solid'
+                }}>
+                    <Form.Item
+                        className="half-item"
+                        {...formItemLayout}
+                        label="审核结果"
+                    >
+                        <span>{getRefundStatus(oldInfor.refundStatus)}</span>
+                    </Form.Item>
+                </div>
+            </div>
+        )
+    }
+}
+
+export default OldInforProject;

+ 45 - 16
js/component/manageCenter/order/orderNew/costAuditList/detailsModal/index.js

@@ -28,10 +28,15 @@ class DetailsModal extends Component{
     }
 
     visitOk(){
-
+        this.setState({
+            oldInfor: {}
+        });
     }
 
     visitCancel(){
+        this.setState({
+            oldInfor: {}
+        });
         this.props.visitCancel();
     }
 
@@ -56,20 +61,41 @@ class DetailsModal extends Component{
                     loading: false,
                 })
                 if (!data.error.length && data.data) {
-                    this.setState({
-                        orderDtails: data.data,
-                        startType: data.data.startType, //类型
-                        outsourceRemarks: data.data.outsourceRemarks,
-                        refundStatus: data.data.refundStatus,
-                        pictureUrl: data.data.pictureUrl
-                            ? splitUrl(
-                                data.data.pictureUrl,
-                                ',',
-                                globalConfig.avatarHost + '/upload',
-                                url
-                            )
-                            : [], //图片地址
-                    })
+                    if(data.data.unitNumber){
+                        this.setState({
+                            oldInfor: {
+                                companyName:data.data.companyName,
+                                unitPrice:data.data.unitPrice,
+                                unitNumber:data.data.unitNumber,
+                                amount:data.data.amount,
+                                outsourceRemarks:data.data.outsourceRemarks,
+                                refundStatus: data.data.refundStatus,
+                                pictureUrl: data.data.pictureUrl
+                                    ? splitUrl(
+                                        data.data.pictureUrl,
+                                        ',',
+                                        globalConfig.avatarHost + '/upload',
+                                        url
+                                    )
+                                    : [], //图片地址
+                            }
+                        })
+                    }else{
+                        this.setState({
+                            orderDtails: data.data,
+                            startType: data.data.startType, //类型
+                            outsourceRemarks: data.data.outsourceRemarks,
+                            refundStatus: data.data.refundStatus,
+                            pictureUrl: data.data.pictureUrl
+                                ? splitUrl(
+                                    data.data.pictureUrl,
+                                    ',',
+                                    globalConfig.avatarHost + '/upload',
+                                    url
+                                )
+                                : [], //图片地址
+                        })
+                    }
                 } else if (data.error && data.error.length) {
                     message.warning(data.error[0].message)
                 } else if (!data.data) {
@@ -235,7 +261,9 @@ class DetailsModal extends Component{
                           </span>
                           <span style={{marginLeft:'15px'}}>
                             项目编号:
-                          <span style={{color:'#F00',paddingRight:'5px'}}>{this.props.taskID}</span>
+                          <span style={{color:'#F00',paddingRight:'5px'}}>
+                              {this.props.taskID}
+                          </span>
                           </span>
                         </div>
                     }
@@ -244,6 +272,7 @@ class DetailsModal extends Component{
                         {this.state.activeKey === '1' ? <CheckProject
                             {...this.props}
                             tid={this.props.tid}
+                            oldInfor={this.state.oldInfor}
                             isAuditPayment={true}
                             status={this.state.refundStatus}
                             patentNameType={this.state.orderDtails.patentNameType}

+ 87 - 44
js/component/manageCenter/order/orderNew/outsourcingPro.jsx

@@ -518,6 +518,7 @@ const outsourcingPro = Form.create()(
         visible: false,
         remarks: undefined,
         activeKey: "1",
+        oldInfor: {},
       });
     },
     nextCancel() {
@@ -944,30 +945,51 @@ const outsourcingPro = Form.create()(
               loading: false,
             })
             if (!data.error.length && data.data) {
-              this.setState({
-                startType: data.data.startType, //类型
-                patentType: data.data.patentType, //专利类型
-                patentNameType: data.data.patentNameType, //专利名称类型
-                patentName: data.data.patentName, //专利名称
-                outsourceRemarks: data.data.outsourceRemarks,
-                remarks: data.data.remarks,
-                companyName: data.data.companyName,
-                amount: data.data.amount,
-                mid: data.data.id,
-                unitPrice: data.data.unitPrice,
-                refundStatus: data.data.refundStatus,
-                unitNumber: data.data.unitNumber,
-                pictureUrl: data.data.pictureUrl
-                    ? splitUrl(
-                        data.data.pictureUrl,
-                        ',',
-                        globalConfig.avatarHost + '/upload',
-                        url
-                    )
-                    : [], //图片地址
-                createTimes: data.data.createTimes,
-                auditTimes: data.data.auditTimes,
-              })
+              if(data.data.unitNumber){
+                this.setState({
+                  oldInfor: {
+                    companyName:data.data.companyName,
+                    unitPrice:data.data.unitPrice,
+                    unitNumber:data.data.unitNumber,
+                    amount:data.data.amount,
+                    outsourceRemarks:data.data.outsourceRemarks,
+                    refundStatus: data.data.refundStatus,
+                    pictureUrl: data.data.pictureUrl
+                        ? splitUrl(
+                            data.data.pictureUrl,
+                            ',',
+                            globalConfig.avatarHost + '/upload',
+                            url
+                        )
+                        : [], //图片地址
+                  }
+                })
+              }else{
+                this.setState({
+                  startType: data.data.startType, //类型
+                  patentType: data.data.patentType, //专利类型
+                  patentNameType: data.data.patentNameType, //专利名称类型
+                  patentName: data.data.patentName, //专利名称
+                  outsourceRemarks: data.data.outsourceRemarks,
+                  remarks: data.data.remarks,
+                  companyName: data.data.companyName,
+                  amount: data.data.amount,
+                  mid: data.data.id,
+                  unitPrice: data.data.unitPrice,
+                  refundStatus: data.data.refundStatus,
+                  unitNumber: data.data.unitNumber,
+                  pictureUrl: data.data.pictureUrl
+                      ? splitUrl(
+                          data.data.pictureUrl,
+                          ',',
+                          globalConfig.avatarHost + '/upload',
+                          url
+                      )
+                      : [], //图片地址
+                  createTimes: data.data.createTimes,
+                  auditTimes: data.data.auditTimes,
+                })
+              }
             } else if (data.error && data.error.length) {
               message.warning(data.error[0].message)
             } else if (!data.data) {
@@ -1017,26 +1039,46 @@ const outsourcingPro = Form.create()(
             }
           } else {
             let thisdata = data.data;
-            this.setState({
-              id: thisdata.id,
-              orderNo: thisdata.orderNo,
-              createTimes: thisdata.createTimes,
-              auditTimes: thisdata.auditTimes,
-              remarks: thisdata.remarks,
-              pictureUrl: thisdata.pictureUrl
-                ? splitUrl(
-                    thisdata.pictureUrl,
-                    ",",
-                    globalConfig.avatarHost + "/upload"
-                  )
-                : [], //图片地址
-              amount: thisdata.amount,
-              refundStatus: thisdata.refundStatus,
-              companyName: thisdata.companyName,
-              outsourceRemarks: thisdata.outsourceRemarks,
-              unitNumber: thisdata.unitNumber,
-              unitPrice: thisdata.unitPrice,
-            });
+            if(data.data.unitNumber){
+              this.setState({
+                oldInfor: {
+                  companyName:thisdata.companyName,
+                  unitPrice:thisdata.unitPrice,
+                  unitNumber:thisdata.unitNumber,
+                  amount:thisdata.amount,
+                  outsourceRemarks:thisdata.outsourceRemarks,
+                  pictureUrl: data.data.pictureUrl
+                      ? splitUrl(
+                          data.data.pictureUrl,
+                          ',',
+                          globalConfig.avatarHost + '/upload',
+                          url
+                      )
+                      : [], //图片地址
+                }
+              })
+            }else{
+              this.setState({
+                id: thisdata.id,
+                orderNo: thisdata.orderNo,
+                createTimes: thisdata.createTimes,
+                auditTimes: thisdata.auditTimes,
+                remarks: thisdata.remarks,
+                pictureUrl: thisdata.pictureUrl
+                    ? splitUrl(
+                        thisdata.pictureUrl,
+                        ",",
+                        globalConfig.avatarHost + "/upload"
+                    )
+                    : [], //图片地址
+                amount: thisdata.amount,
+                refundStatus: thisdata.refundStatus,
+                companyName: thisdata.companyName,
+                outsourceRemarks: thisdata.outsourceRemarks,
+                unitNumber: thisdata.unitNumber,
+                unitPrice: thisdata.unitPrice,
+              });
+            }
           }
         }.bind(this),
       }).always(
@@ -1440,6 +1482,7 @@ const outsourcingPro = Form.create()(
                     <CheckProject
                         {...this.props}
                         tid={this.state.tid}
+                        oldInfor={this.state.oldInfor}
                         status={this.state.refundStatus}
                         thirdInfoList={this.state.thirdInfoList}
                         dataSource={this.state.payNodeList}

+ 65 - 27
js/component/manageCenter/project/task/myTask.jsx

@@ -45,7 +45,7 @@ import {getMaterialStatus,
 import { taskStatus, projectStatus, cuiJieDian } from '@/dataDic.js'
 import ShowModalDiv from '@/showModal.jsx'
 
-import CheckProject from '../../components/checkProject'
+import CheckProject from '../../components/checkProject';
 import NewSupplier from './newSupplier';
 import ImgList from "../../../common/imgList";
 import OperationPayNode from "./operationPayNode";
@@ -1566,6 +1566,9 @@ const Task = React.createClass({
         } else {
           this.setState({
             id: thisdata.id, //ID
+            splitId: thisdata.splitId,//拆分序号
+            splitStatus: thisdata.splitStatus,//0未拆分 1已拆分
+            splitSuper: thisdata.splitSuper,//拆分前项目编号
             orderNo: thisdata.orderNo, //订单编号
             userName: thisdata.userName, //客户名称
             taskName: thisdata.taskName, //项目名称
@@ -2067,6 +2070,9 @@ const Task = React.createClass({
     this.state.amount = undefined
     this.state.outsourceRemarks = undefined
     this.state.pictureUrl = []
+    this.setState({
+      oldInfor: {}
+    })
   },
   searchSwitch() {
     this.setState({
@@ -2345,30 +2351,51 @@ const Task = React.createClass({
           loading: false,
         })
         if (!data.error.length && data.data) {
-          this.setState({
-            startType: data.data.startType, //类型
-            patentType: data.data.patentType, //专利类型
-            patentNameType: data.data.patentNameType, //专利名称类型
-            patentName: data.data.patentName, //专利名称
-            outsourceRemarks: data.data.outsourceRemarks,
-            remarks: data.data.remarks,
-            companyName: data.data.companyName,
-            amount: data.data.amount,
-            mid: data.data.id,
-            unitPrice: data.data.unitPrice,
-            refundStatus: data.data.refundStatus,
-            unitNumber: data.data.unitNumber,
-            pictureUrl: data.data.pictureUrl
-              ? splitUrl(
-                  data.data.pictureUrl,
-                  ',',
-                  globalConfig.avatarHost + '/upload',
-                  url
-                )
-              : [], //图片地址
-            createTimes: data.data.createTimes,
-            auditTimes: data.data.auditTimes,
-          })
+          if(data.data.unitNumber){
+            this.setState({
+              oldInfor: {
+                companyName:data.data.companyName,
+                unitPrice:data.data.unitPrice,
+                unitNumber:data.data.unitNumber,
+                amount:data.data.amount,
+                outsourceRemarks:data.data.outsourceRemarks,
+                refundStatus: data.data.refundStatus,
+                pictureUrl: data.data.pictureUrl
+                    ? splitUrl(
+                        data.data.pictureUrl,
+                        ',',
+                        globalConfig.avatarHost + '/upload',
+                        url
+                    )
+                    : [], //图片地址
+              }
+            })
+          }else{
+            this.setState({
+              startType: data.data.startType, //类型
+              patentType: data.data.patentType, //专利类型
+              patentNameType: data.data.patentNameType, //专利名称类型
+              patentName: data.data.patentName, //专利名称
+              outsourceRemarks: data.data.outsourceRemarks,
+              remarks: data.data.remarks,
+              companyName: data.data.companyName,
+              amount: data.data.amount,
+              mid: data.data.id,
+              unitPrice: data.data.unitPrice,
+              refundStatus: data.data.refundStatus,
+              unitNumber: data.data.unitNumber,     //如果存在 证明是以前的旧数据
+              pictureUrl: data.data.pictureUrl
+                  ? splitUrl(
+                      data.data.pictureUrl,
+                      ',',
+                      globalConfig.avatarHost + '/upload',
+                      url
+                  )
+                  : [], //图片地址
+              createTimes: data.data.createTimes,
+              auditTimes: data.data.auditTimes,
+            })
+          }
         } else if (data.error && data.error.length) {
           message.warning(data.error[0].message)
         } else if (!data.data) {
@@ -3375,7 +3402,12 @@ const Task = React.createClass({
                   </span>
                   <span style={{marginLeft:'15px'}}>
                     项目编号:
-                  <span style={{color:'#F00',paddingRight:'5px'}}>{this.state.id}</span>
+                  <span style={{color:'#F00',paddingRight:'5px'}}>
+                    {this.state.id}
+                    {
+                      this.state.splitStatus === 1 || this.state.splitStatus === 2 ? '('+this.state.splitSuper+'-'+this.state.splitId+')' : ''
+                    }
+                  </span>
                   </span>
                 </div>
               }
@@ -4597,6 +4629,7 @@ const Task = React.createClass({
                           <CheckProject
                               {...this.props}
                               tid={this.state.tid}
+                              oldInfor={this.state.oldInfor}
                               projectType={this.state.projectType}    //0正常 1专利 2软著 3审计
                               patentNameType={this.state.patentNameType}
                               patentName={this.state.patentName}
@@ -4904,7 +4937,12 @@ const Task = React.createClass({
                   </span>
                   <span style={{marginLeft:'15px'}}>
                     项目编号:
-                  <span style={{color:'#F00',paddingRight:'5px'}}>{this.state.id}</span>
+                  <span style={{color:'#F00',paddingRight:'5px'}}>
+                    {this.state.id}
+                    {
+                      this.state.splitStatus === 1 || this.state.splitStatus === 2 ? '('+this.state.splitSuper+'-'+this.state.splitId+')' : ''
+                    }
+                  </span>
                   </span>
                 </div>
               }

+ 58 - 25
js/component/manageCenter/project/task/myTaskOutsource.jsx

@@ -137,30 +137,51 @@ const MyTaskOutsource = React.createClass({
             loading: false,
           })
           if (!data.error.length && data.data) {
-            this.setState({
-              startType: data.data.startType, //类型
-              patentType: data.data.patentType, //专利类型
-              patentNameType: data.data.patentNameType, //专利名称类型
-              patentName: data.data.patentName, //专利名称
-              outsourceRemarks: data.data.outsourceRemarks,
-              remarks: data.data.remarks,
-              companyName: data.data.companyName,
-              amount: data.data.amount,
-              mid: data.data.id,
-              unitPrice: data.data.unitPrice,
-              refundStatus: data.data.refundStatus,
-              unitNumber: data.data.unitNumber,
-              pictureUrl: data.data.pictureUrl
-                  ? splitUrl(
-                      data.data.pictureUrl,
-                      ',',
-                      globalConfig.avatarHost + '/upload',
-                      url
-                  )
-                  : [], //图片地址
-              createTimes: data.data.createTimes,
-              auditTimes: data.data.auditTimes,
-            })
+            if(data.data.unitNumber){
+              this.setState({
+                oldInfor: {
+                  companyName:data.data.companyName,
+                  unitPrice:data.data.unitPrice,
+                  unitNumber:data.data.unitNumber,
+                  amount:data.data.amount,
+                  outsourceRemarks:data.data.outsourceRemarks,
+                  refundStatus: data.data.refundStatus,
+                  pictureUrl: data.data.pictureUrl
+                      ? splitUrl(
+                          data.data.pictureUrl,
+                          ',',
+                          globalConfig.avatarHost + '/upload',
+                          url
+                      )
+                      : [], //图片地址
+                }
+              })
+            }else{
+              this.setState({
+                startType: data.data.startType, //类型
+                patentType: data.data.patentType, //专利类型
+                patentNameType: data.data.patentNameType, //专利名称类型
+                patentName: data.data.patentName, //专利名称
+                outsourceRemarks: data.data.outsourceRemarks,
+                remarks: data.data.remarks,
+                companyName: data.data.companyName,
+                amount: data.data.amount,
+                mid: data.data.id,
+                unitPrice: data.data.unitPrice,
+                refundStatus: data.data.refundStatus,
+                unitNumber: data.data.unitNumber,
+                pictureUrl: data.data.pictureUrl
+                    ? splitUrl(
+                        data.data.pictureUrl,
+                        ',',
+                        globalConfig.avatarHost + '/upload',
+                        url
+                    )
+                    : [], //图片地址
+                createTimes: data.data.createTimes,
+                auditTimes: data.data.auditTimes,
+              })
+            }
           } else if (data.error && data.error.length) {
             message.warning(data.error[0].message)
           } else if (!data.data) {
@@ -893,6 +914,9 @@ const MyTaskOutsource = React.createClass({
           this.setState({
             id: thisdata.id, //ID
             orderNo: thisdata.orderNo, //订单编号
+            splitId: thisdata.splitId,//拆分序号
+            splitStatus: thisdata.splitStatus,//0未拆分 1已拆分
+            splitSuper: thisdata.splitSuper,//拆分前项目编号
             userName: thisdata.userName, //客户名称
             taskName: thisdata.taskName, //项目名称
             cname: thisdata.cname, //项目品类
@@ -1565,6 +1589,9 @@ const MyTaskOutsource = React.createClass({
     this.state.outsourcePrice = ""; //外包价格
     this.loadData(this.state.page);
     this.state.approvalSearch = undefined;
+    this.setState({
+      oldInfor: {}
+    })
   },
   searchSwitch() {
     this.setState({
@@ -2205,7 +2232,12 @@ const MyTaskOutsource = React.createClass({
                   </span>
                   <span style={{marginLeft:'15px'}}>
                       项目编号:
-                    <span style={{color:'#F00',paddingRight:'5px'}}>{this.state.id}</span>
+                    <span style={{color:'#F00',paddingRight:'5px'}}>
+                      {this.state.id}
+                      {
+                        this.state.splitStatus === 1 || this.state.splitStatus === 2 ? '('+this.state.splitSuper+'-'+this.state.splitId+')' : ''
+                      }
+                    </span>
                   </span>
                 </div>
               }
@@ -2971,6 +3003,7 @@ const MyTaskOutsource = React.createClass({
                   tid={this.state.tid}
                   status={this.state.refundStatus}
                   projectType={this.state.projectType}
+                  oldInfor={this.state.oldInfor}
                   patentNameType={this.state.patentNameType}
                   patentName={this.state.patentName}
                   patentType={this.state.patentType}