|
@@ -1438,7 +1438,6 @@ const Task = React.createClass({
|
|
|
// 获取Csort
|
|
|
this.getCsortData(localStorage.getItem('cSort'))
|
|
|
this.projectTypeTabContent(record.projectType)
|
|
|
- console.log('项目类型',record.projectType)
|
|
|
},
|
|
|
//点击修改项目详情
|
|
|
tijiaoOk() {
|
|
@@ -2253,7 +2252,7 @@ const Task = React.createClass({
|
|
|
outsourceRemarks: _this.state.outsourceRemarks,
|
|
|
unitNumber: _this.state.unitNumber,
|
|
|
unitPrice: _this.state.unitPrice,
|
|
|
- id: _this.state.refundStatus == 2 ? _this.state.mid : undefined,
|
|
|
+ id: _this.state.refundStatus === 2 ? _this.state.mid : undefined,//被拒绝外包申请时,需要传id
|
|
|
}
|
|
|
|
|
|
//refundStatus 0-待审核 ,1-审核通过,2-审核拒绝 审核被驳回时和第一次发起外包时,要填写发起原因
|
|
@@ -2368,34 +2367,37 @@ const Task = React.createClass({
|
|
|
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,
|
|
|
+ oldInfor: {},
|
|
|
})
|
|
|
}
|
|
|
+ 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) {
|
|
@@ -5481,307 +5483,525 @@ const Task = React.createClass({
|
|
|
</Button>
|
|
|
</div>
|
|
|
</TabPane>
|
|
|
- <TabPane tab="外包(不走本部)" key="2">
|
|
|
+ <TabPane tab="外包/供应商信息" key="2">
|
|
|
{this.state.refundStatus != 0 && this.state.refundStatus != 1 ? (
|
|
|
- <div style={{ marginTop: 10 }}>
|
|
|
- <div className="clearfix">
|
|
|
- <FormItem
|
|
|
- className="half-item"
|
|
|
- {...formItemLayout}
|
|
|
- label={
|
|
|
- <span>
|
|
|
+ <div style={{ marginTop: 10 }}>
|
|
|
+ <div className="clearfix">
|
|
|
+ <FormItem
|
|
|
+ className="half-item"
|
|
|
+ {...formItemLayout}
|
|
|
+ label={
|
|
|
+ <span>
|
|
|
<strong style={{ color: '#f00' }}>*</strong>
|
|
|
- 外包公司
|
|
|
+ 类型
|
|
|
</span>
|
|
|
- }
|
|
|
- >
|
|
|
- <Input
|
|
|
- value={this.state.companyName}
|
|
|
- onChange={(e) => {
|
|
|
- this.setState({
|
|
|
- companyName: e.target.value,
|
|
|
- })
|
|
|
+ }
|
|
|
+ >
|
|
|
+ <Radio.Group
|
|
|
+ value={this.state.startType}
|
|
|
+ onChange={(e) => {
|
|
|
+ this.setState({ startType: e.target.value })
|
|
|
+ }}
|
|
|
+ >
|
|
|
+ <Radio value={0}>外包(不走总部)</Radio>
|
|
|
+ <Radio value={1}>供应商信息</Radio>
|
|
|
+ </Radio.Group>
|
|
|
+ </FormItem>
|
|
|
+ </div>
|
|
|
+ {/* 专利类型 */}
|
|
|
+ <div
|
|
|
+ className="clearfix"
|
|
|
+ style={{
|
|
|
+ display: this.state.projectType === 1 ? 'block' : 'none',
|
|
|
}}
|
|
|
- placeholder="请填写外包公司名称"
|
|
|
- />
|
|
|
- </FormItem>
|
|
|
- <span className="tip" style={{ color: 'red' }}>
|
|
|
- 如多个公司,请用间隔
|
|
|
- </span>
|
|
|
- </div>
|
|
|
- <div className="clearfix">
|
|
|
- <FormItem
|
|
|
- className="half-item"
|
|
|
- {...formItemLayout}
|
|
|
- label={
|
|
|
- <span>
|
|
|
- <strong style={{ color: '#f00' }}>*</strong>
|
|
|
- 单价(万元)
|
|
|
- </span>
|
|
|
- }
|
|
|
>
|
|
|
- <Input
|
|
|
- value={this.state.unitPrice}
|
|
|
- onChange={(e) => {
|
|
|
- this.setState({
|
|
|
- unitPrice: e.target.value,
|
|
|
- })
|
|
|
- }}
|
|
|
- placeholder="请填写本次外包公司的价格"
|
|
|
- />
|
|
|
- </FormItem>
|
|
|
- </div>
|
|
|
- <div className="clearfix">
|
|
|
- <FormItem
|
|
|
- className="half-item"
|
|
|
- {...formItemLayout}
|
|
|
- label={
|
|
|
- <span>
|
|
|
+ <FormItem
|
|
|
+ className="half-item"
|
|
|
+ {...formItemLayout}
|
|
|
+ label={
|
|
|
+ <span>
|
|
|
<strong style={{ color: '#f00' }}>*</strong>
|
|
|
- 数量(个)
|
|
|
+ 专利类型
|
|
|
</span>
|
|
|
- }
|
|
|
- >
|
|
|
- <Input
|
|
|
- value={this.state.unitNumber}
|
|
|
- onChange={(e) => {
|
|
|
- this.setState({
|
|
|
- unitNumber: e.target.value,
|
|
|
- })
|
|
|
+ }
|
|
|
+ >
|
|
|
+ <Radio.Group
|
|
|
+ value={this.state.patentType}
|
|
|
+ onChange={(e) => {
|
|
|
+ let _this = this;
|
|
|
+ if(this.state.thirdInfoList.length >0){
|
|
|
+ confirm({
|
|
|
+ title: '确定要切换吗?',
|
|
|
+ content: '切换将删除所有第三信息和付款节点',
|
|
|
+ onOk() {
|
|
|
+ return new Promise((resolve, reject) => {
|
|
|
+ _this.setState({ patentType: e.target.value },()=>{
|
|
|
+ _this.projectTypeTabContent(_this.state.projectType);
|
|
|
+ })
|
|
|
+ _this.confirmDeletNew(-1,resolve,reject)
|
|
|
+ if(_this.state.payNodeList.length > 0){
|
|
|
+ _this.payNodeConfirmDeletNew(-1,resolve,reject);
|
|
|
+ }
|
|
|
+ }).catch(() => console.log('Oops errors!'));
|
|
|
+ },
|
|
|
+ onCancel() {},
|
|
|
+ });
|
|
|
+ }else{
|
|
|
+ this.setState({ patentType: e.target.value },()=>{
|
|
|
+ this.projectTypeTabContent(this.state.projectType);
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }}
|
|
|
+ >
|
|
|
+ <Radio value={0}>专利申请/变更/转让</Radio>
|
|
|
+ <Radio value={1}>专利买卖</Radio>
|
|
|
+ </Radio.Group>
|
|
|
+ </FormItem>
|
|
|
+ </div>
|
|
|
+ <div
|
|
|
+ className="clearfix"
|
|
|
+ style={{
|
|
|
+ display: this.state.projectType === 1? 'block' : 'none',
|
|
|
}}
|
|
|
- placeholder="请填写本次外包公司的价格"
|
|
|
- />
|
|
|
- </FormItem>
|
|
|
- </div>
|
|
|
- <div className="clearfix">
|
|
|
- <FormItem
|
|
|
- className="half-item"
|
|
|
- {...formItemLayout}
|
|
|
- label={
|
|
|
- <span>
|
|
|
+ >
|
|
|
+ <FormItem
|
|
|
+ className="half-item"
|
|
|
+ {...formItemLayout}
|
|
|
+ label={
|
|
|
+ <span>
|
|
|
<strong style={{ color: '#f00' }}>*</strong>
|
|
|
- 总金额(万元)
|
|
|
+ 专利名称
|
|
|
</span>
|
|
|
- }
|
|
|
- >
|
|
|
- <Input
|
|
|
- value={this.state.amount}
|
|
|
- onChange={(e) => {
|
|
|
- this.setState({
|
|
|
- amount: e.target.value,
|
|
|
- })
|
|
|
+ }
|
|
|
+ >
|
|
|
+ <Radio.Group
|
|
|
+ value={this.state.patentNameType}
|
|
|
+ onChange={(e) => {
|
|
|
+ let _this = this;
|
|
|
+ if(this.state.thirdInfoList.length >0){
|
|
|
+ confirm({
|
|
|
+ title: '确定要切换吗?',
|
|
|
+ content: '切换将删除所有第三信息和付款节点',
|
|
|
+ onOk() {
|
|
|
+ return new Promise((resolve, reject) => {
|
|
|
+ _this.setState({ patentNameType: e.target.value },()=>{
|
|
|
+ _this.projectTypeTabContent(_this.state.projectType);
|
|
|
+ })
|
|
|
+ _this.confirmDeletNew(-1,resolve,reject)
|
|
|
+ if(_this.state.payNodeList.length > 0){
|
|
|
+ _this.payNodeConfirmDeletNew(-1,resolve,reject);
|
|
|
+ }
|
|
|
+ }).catch(() => console.log('Oops errors!'));
|
|
|
+ },
|
|
|
+ onCancel() {},
|
|
|
+ });
|
|
|
+ }else{
|
|
|
+ this.setState({ patentNameType: e.target.value },()=>{
|
|
|
+ this.projectTypeTabContent(this.state.projectType);
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }}
|
|
|
+ >
|
|
|
+ <Radio value={0}>实用新型专利</Radio>
|
|
|
+ <Radio value={1}>发明专利</Radio>
|
|
|
+ <Radio value={2}>外观专利</Radio>
|
|
|
+ {/*<Radio value={3}>*/}
|
|
|
+ {/* 其他*/}
|
|
|
+ {/* <Input*/}
|
|
|
+ {/* disabled={this.state.patentNameType !== 3}*/}
|
|
|
+ {/* value={this.state.patentName}*/}
|
|
|
+ {/* style={{ marginLeft: '15px' }}*/}
|
|
|
+ {/* onChange={(e) => {*/}
|
|
|
+ {/* this.setState({*/}
|
|
|
+ {/* patentName: e.target.value,*/}
|
|
|
+ {/* })*/}
|
|
|
+ {/* }}*/}
|
|
|
+ {/* placeholder="请填写专利名称"*/}
|
|
|
+ {/* />*/}
|
|
|
+ {/*</Radio>*/}
|
|
|
+ </Radio.Group>
|
|
|
+ </FormItem>
|
|
|
+ </div>
|
|
|
+ {/* 第三方信息专利 */}
|
|
|
+ <div
|
|
|
+ style={{
|
|
|
+ // display: this.state.type == 1 ? "block" : "none",
|
|
|
+ display: this.state.type == 1 ? 'block' : 'block',
|
|
|
}}
|
|
|
- placeholder="请填写本次外包公司的价格"
|
|
|
- />
|
|
|
- </FormItem>
|
|
|
- </div>
|
|
|
- <div className="clearfix">
|
|
|
- <FormItem
|
|
|
- className="half-item"
|
|
|
- {...formItemLayout}
|
|
|
- label={
|
|
|
- <span>
|
|
|
- <strong style={{ color: '#f00' }}>*</strong>备注
|
|
|
- </span>
|
|
|
- }
|
|
|
>
|
|
|
- <TextArea
|
|
|
- rows={4}
|
|
|
- value={this.state.outsourceRemarks}
|
|
|
- onChange={(e) => {
|
|
|
- this.setState({
|
|
|
- outsourceRemarks: e.target.value,
|
|
|
- })
|
|
|
+ <span
|
|
|
+ style={{
|
|
|
+ marginLeft: '50px',
|
|
|
+ fontSize: '18px',
|
|
|
}}
|
|
|
- placeholder="请输入备注"
|
|
|
- />
|
|
|
- </FormItem>
|
|
|
- </div>
|
|
|
- <p
|
|
|
- className="tip"
|
|
|
- style={{
|
|
|
- paddingBottom: '12px',
|
|
|
- width: '240px',
|
|
|
- marginLeft: '145px',
|
|
|
- color: 'red',
|
|
|
- }}
|
|
|
- >
|
|
|
- 首次派单项目,需上传协议,第2次起,同项目,只需写外包公司
|
|
|
- </p>
|
|
|
- <div className="clearfix">
|
|
|
- <FormItem
|
|
|
- labelCol={{ span: 4 }}
|
|
|
- wrapperCol={{ span: 18 }}
|
|
|
- label={
|
|
|
- <span>
|
|
|
- 合同/协议扫描件
|
|
|
- </span>
|
|
|
- }
|
|
|
- >
|
|
|
- <PicturesWall
|
|
|
- fileList={this.getOrgCodeUrlWai}
|
|
|
- pictureUrl={this.state.pictureUrl}
|
|
|
- />
|
|
|
- <p style={{ color: 'red' }}>图片建议:要清晰。</p>
|
|
|
- </FormItem>
|
|
|
- </div>
|
|
|
- <div className="clearfix">
|
|
|
- <div
|
|
|
- style={{
|
|
|
- display: 'inline-black',
|
|
|
- textAlign: 'center',
|
|
|
- }}
|
|
|
>
|
|
|
+ 第三方信息
|
|
|
+ </span>
|
|
|
+ <span
|
|
|
+ style={{
|
|
|
+ display: 'inline-block',
|
|
|
+ marginLeft: 10,
|
|
|
+ color: 'red',
|
|
|
+ }}
|
|
|
+ >
|
|
|
+ 金额总计(万元): {this.state.allTotalAmount}
|
|
|
+ </span>
|
|
|
<Button
|
|
|
- type="primary"
|
|
|
- loading={this.state.loading}
|
|
|
- onClick={()=>{
|
|
|
- this.sureOut(this.state.startType);
|
|
|
- }}
|
|
|
+ type="primary"
|
|
|
+ onClick={(e) => {
|
|
|
+ if(this.state.projectType === 1 && this.state.patentType === -1){
|
|
|
+ message.info('请先选择专利类型');
|
|
|
+ }else if(this.state.projectType === 1 && this.state.patentNameType === -1){
|
|
|
+ message.info('请先选择专利名称');
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ this.addThirdList()
|
|
|
+ }
|
|
|
+ }}
|
|
|
+ style={{
|
|
|
+ float: 'right',
|
|
|
+ marginRight: '50px',
|
|
|
+ marginBottom: '15px',
|
|
|
+ }}
|
|
|
>
|
|
|
- {
|
|
|
- this.state.startType === 0 ? "确认发起外包,不通过总部" : "提交供应商信息"
|
|
|
- }
|
|
|
+ +新增供应商名称
|
|
|
</Button>
|
|
|
- <p className="tip" style={{ color: 'red' }}>
|
|
|
- {
|
|
|
- this.state.startType === 0 ? "提示:高于总部价格,费用个人承担" : "确定提交供应商信息,提交后,不可修改"
|
|
|
- }
|
|
|
- </p>
|
|
|
</div>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- ) : (
|
|
|
- <div>
|
|
|
- <div className="clearfix">
|
|
|
- <FormItem
|
|
|
- className="half-item"
|
|
|
- {...formItemLayout}
|
|
|
- label="外包公司"
|
|
|
- >
|
|
|
- <span>{this.state.companyName}</span>
|
|
|
- </FormItem>
|
|
|
- </div>
|
|
|
- <div className="clearfix">
|
|
|
- <FormItem
|
|
|
- className="half-item"
|
|
|
- {...formItemLayout}
|
|
|
- label="单价(万元)"
|
|
|
- >
|
|
|
- <span>{this.state.unitPrice}</span>
|
|
|
- </FormItem>
|
|
|
- </div>
|
|
|
- <div className="clearfix">
|
|
|
- <FormItem
|
|
|
- className="half-item"
|
|
|
- {...formItemLayout}
|
|
|
- label="数量(个)"
|
|
|
- >
|
|
|
- <span>{this.state.unitNumber}</span>
|
|
|
- </FormItem>
|
|
|
- </div>
|
|
|
- <div className="clearfix">
|
|
|
- <FormItem
|
|
|
- className="half-item"
|
|
|
- {...formItemLayout}
|
|
|
- label="总金额(万元)"
|
|
|
+ <div
|
|
|
+ className="clearfix"
|
|
|
+ style={{
|
|
|
+ // display: this.state.type == 1 ? "block" : "none",
|
|
|
+ display: this.state.type == 1 ? 'block' : 'block',
|
|
|
+ }}
|
|
|
>
|
|
|
- <span>{this.state.amount}</span>
|
|
|
- </FormItem>
|
|
|
- </div>
|
|
|
- <div className="clearfix">
|
|
|
- <FormItem
|
|
|
- className="half-item"
|
|
|
- {...formItemLayout}
|
|
|
- label="备注"
|
|
|
+ <Spin spinning={this.state.loading}>
|
|
|
+ <Form layout="horizontal">
|
|
|
+ <Table
|
|
|
+ pagination={false}
|
|
|
+ columns={this.state.ContactsListsNew}
|
|
|
+ dataSource={this.state.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
|
|
|
+ style={{
|
|
|
+ display: (this.state.projectType === 1 && this.state.patentType === 0) || this.state.projectType === 2? 'none' : 'block', //0正常 1专利 2软著 3审计
|
|
|
+ }}
|
|
|
>
|
|
|
- <span>{this.state.outsourceRemarks}</span>
|
|
|
- </FormItem>
|
|
|
- </div>
|
|
|
- <div className="clearfix">
|
|
|
- <FormItem
|
|
|
- labelCol={{ span: 4 }}
|
|
|
- wrapperCol={{ span: 18 }}
|
|
|
- label="合同/协议扫描件"
|
|
|
+ <span
|
|
|
+ style={{
|
|
|
+ marginLeft: '50px',
|
|
|
+ fontSize: '18px',
|
|
|
+ }}
|
|
|
>
|
|
|
- {/*<Upload*/}
|
|
|
- {/* className="demandDetailShow-upload"*/}
|
|
|
- {/* listType="picture-card"*/}
|
|
|
- {/* fileList={this.state.pictureUrl}*/}
|
|
|
- {/* onPreview={(file) => {*/}
|
|
|
- {/* this.setState({*/}
|
|
|
- {/* previewImage: file.url || file.thumbUrl,*/}
|
|
|
- {/* previewVisible: true,*/}
|
|
|
- {/* })*/}
|
|
|
- {/* }}*/}
|
|
|
- {/*/>*/}
|
|
|
- <div style={{paddingTop:'10px',paddingBottom:'10px'}}>
|
|
|
- <ImgList fileList={this.state.pictureUrl} ItemWidth={'96px'}/>
|
|
|
- </div>
|
|
|
- <Modal
|
|
|
- maskClosable={false}
|
|
|
- footer={null}
|
|
|
- visible={this.state.previewVisible}
|
|
|
- onCancel={() => {
|
|
|
- this.setState({ previewVisible: false })
|
|
|
+ 付款节点
|
|
|
+ </span>
|
|
|
+ <span
|
|
|
+ style={{
|
|
|
+ display: 'inline-block',
|
|
|
+ marginLeft: 10,
|
|
|
+ color: 'red',
|
|
|
+ }}
|
|
|
+ ></span>
|
|
|
+ <Button
|
|
|
+ type="primary"
|
|
|
+ onClick={(e) => {
|
|
|
+ this.addPayNode()
|
|
|
+ }}
|
|
|
+ style={{
|
|
|
+ float: 'right',
|
|
|
+ marginRight: '50px',
|
|
|
+ marginBottom: '15px',
|
|
|
+ }}
|
|
|
+ >
|
|
|
+ +新增付款节点
|
|
|
+ </Button>
|
|
|
+ </div>
|
|
|
+ {/*如果是软著类或者专利类的专利申请,隐藏付款节点*/}
|
|
|
+ <div
|
|
|
+ className="clearfix"
|
|
|
+ style={{
|
|
|
+ display: (this.state.projectType === 1 && this.state.patentType === 0) || this.state.projectType === 2? 'none' : 'block', //0正常 1专利 2软著 3审计
|
|
|
}}
|
|
|
+ >
|
|
|
+ <Spin spinning={this.state.loading}>
|
|
|
+ <Form layout="horizontal">
|
|
|
+ <Table
|
|
|
+ pagination={false}
|
|
|
+ columns={this.state.PayNodeTableColunms}
|
|
|
+ dataSource={this.state.payNodeList}
|
|
|
+ onRowClick={this.payNodeTableRowClickOne}
|
|
|
+ scroll={{ x: 'max-content', y: 0 }}
|
|
|
+ bordered
|
|
|
+ size="small"
|
|
|
+ />
|
|
|
+ <Col
|
|
|
+ span={24}
|
|
|
+ offset={9}
|
|
|
+ style={{ marginTop: '15px' }}
|
|
|
+ />
|
|
|
+ </Form>
|
|
|
+ </Spin>
|
|
|
+ </div>
|
|
|
+ <div className="clearfix">
|
|
|
+ <FormItem
|
|
|
+ className="half-item"
|
|
|
+ {...formItemLayout}
|
|
|
+ label={
|
|
|
+ <span>
|
|
|
+ <strong style={{ color: '#f00' }}>*</strong>备注
|
|
|
+ </span>
|
|
|
+ }
|
|
|
>
|
|
|
- <img
|
|
|
- alt=""
|
|
|
- style={{ width: '100%' }}
|
|
|
- src={this.state.previewImage || ''}
|
|
|
+ <TextArea
|
|
|
+ rows={4}
|
|
|
+ value={this.state.outsourceRemarks}
|
|
|
+ onChange={(e) => {
|
|
|
+ this.setState({
|
|
|
+ outsourceRemarks: e.target.value,
|
|
|
+ })
|
|
|
+ }}
|
|
|
+ placeholder="请输入备注"
|
|
|
/>
|
|
|
- </Modal>
|
|
|
- </FormItem>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- )}
|
|
|
- {this.state.refundStatus == 1 ||
|
|
|
- this.state.refundStatus == 0 ||
|
|
|
- this.state.refundStatus == 2 ? (
|
|
|
- <div className="clearfix">
|
|
|
- <hr className="division" />
|
|
|
- <div
|
|
|
- className="clearfix"
|
|
|
- style={{
|
|
|
- display: this.state.refundStatus == 0 ? 'none' : 'block',
|
|
|
- }}
|
|
|
- >
|
|
|
- <FormItem
|
|
|
- className="half-item"
|
|
|
- {...formItemLayout}
|
|
|
- label="审核意见"
|
|
|
- >
|
|
|
- <span>{this.state.remarks}</span>
|
|
|
- </FormItem>
|
|
|
- </div>
|
|
|
- <div className="clearfix">
|
|
|
- <FormItem
|
|
|
- className="half-item"
|
|
|
- {...formItemLayout}
|
|
|
- label="审核结果"
|
|
|
- >
|
|
|
- <span>{getRefundStatus(this.state.refundStatus)}</span>
|
|
|
- </FormItem>
|
|
|
- </div>
|
|
|
- <div
|
|
|
- className="clearfix"
|
|
|
- style={{
|
|
|
- display: this.state.refundStatus == 0 ? 'none' : 'block',
|
|
|
- }}
|
|
|
- >
|
|
|
- <FormItem
|
|
|
- className="half-item"
|
|
|
- {...formItemLayout}
|
|
|
- label="审核时间"
|
|
|
+ </FormItem>
|
|
|
+ </div>
|
|
|
+ {/*<div className="clearfix">
|
|
|
+ <FormItem className="half-item"
|
|
|
+ {...formItemLayout}
|
|
|
+ label="上传协议文件" style={{height:"auto"}}>
|
|
|
+ <Upload header={{authorization: 'authorization-text'}} action={globalConfig.context + "/api/admin/outsourceOrg/uploadOutsourceFile"}
|
|
|
+ data={(e)=>{
|
|
|
+ return {
|
|
|
+ 'sign': e.name.substring(0,e.name.lastIndexOf("."))
|
|
|
+ }
|
|
|
+ }}
|
|
|
+ fileList={this.state.fileUrl}
|
|
|
+ onChange={(e)=>{
|
|
|
+ this.setState({
|
|
|
+ attachmentUrl:e.fileList,
|
|
|
+ fileUrl:e.fileList
|
|
|
+ })
|
|
|
+ }}>
|
|
|
+ {fileUrl.length>1?null:<Button>
|
|
|
+ <Icon type="upload" /> 点击上传
|
|
|
+ </Button>}
|
|
|
+ </Upload>
|
|
|
+ <span className="tip" style={{display:"inline-block"}}>支持文件格式: doc,excel,ppt</span>
|
|
|
+ </FormItem>
|
|
|
+ </div>*/}
|
|
|
+ <p
|
|
|
+ className="tip"
|
|
|
+ style={{
|
|
|
+ paddingBottom: '12px',
|
|
|
+ width: '240px',
|
|
|
+ marginLeft: '145px',
|
|
|
+ color: 'red',
|
|
|
+ }}
|
|
|
>
|
|
|
- <span>{this.state.auditTimes}</span>
|
|
|
- </FormItem>
|
|
|
+ 首次派单项目,需上传协议,第2次起,同项目,只需写外包公司
|
|
|
+ </p>
|
|
|
+ <div className="clearfix">
|
|
|
+ <FormItem
|
|
|
+ labelCol={{ span: 4 }}
|
|
|
+ wrapperCol={{ span: 18 }}
|
|
|
+ label={
|
|
|
+ <span>
|
|
|
+ 合同/协议扫描件
|
|
|
+ </span>
|
|
|
+ }
|
|
|
+ >
|
|
|
+ <PicturesWall
|
|
|
+ fileList={this.getOrgCodeUrlWai}
|
|
|
+ pictureUrl={this.state.pictureUrl}
|
|
|
+ />
|
|
|
+ <p style={{ color: 'red' }}>图片建议:要清晰。</p>
|
|
|
+ </FormItem>
|
|
|
+ </div>
|
|
|
+ {/*只有审核拒绝和第一次发起外包的时候才要填写发起原因*/}
|
|
|
+ {typeof this.state.refundStatus === 'undefined' || this.state.refundStatus === 2 ? <div className="clearfix">
|
|
|
+ <FormItem
|
|
|
+ className="half-item"
|
|
|
+ {...formItemLayout}
|
|
|
+ label={
|
|
|
+ <span>
|
|
|
+ <strong style={{ color: '#f00' }}>*</strong>发起原因
|
|
|
+ </span>
|
|
|
+ }
|
|
|
+ >
|
|
|
+ <TextArea
|
|
|
+ rows={4}
|
|
|
+ value={this.state.reason}
|
|
|
+ onChange={(e) => {
|
|
|
+ this.setState({
|
|
|
+ reason: e.target.value,
|
|
|
+ })
|
|
|
+ }}
|
|
|
+ placeholder="请输入发起原因"
|
|
|
+ />
|
|
|
+ </FormItem>
|
|
|
+ </div> : <div/>}
|
|
|
+ <div className="clearfix">
|
|
|
+ <div
|
|
|
+ style={{
|
|
|
+ display: 'inline-black',
|
|
|
+ textAlign: 'center',
|
|
|
+ }}
|
|
|
+ >
|
|
|
+ <Button
|
|
|
+ type="primary"
|
|
|
+ loading={this.state.loading}
|
|
|
+ onClick={()=>{
|
|
|
+ this.sureOut(this.state.startType);
|
|
|
+ }}
|
|
|
+ >
|
|
|
+ {
|
|
|
+ this.state.startType === 0 ? "确认发起外包,不通过总部" : "提交供应商信息"
|
|
|
+ }
|
|
|
+ </Button>
|
|
|
+ <p className="tip" style={{ color: 'red' }}>
|
|
|
+ {
|
|
|
+ this.state.startType === 0 ? "提示:高于总部价格,费用个人承担" : "确定提交供应商信息,提交后,不可修改"
|
|
|
+ }
|
|
|
+ </p>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
</div>
|
|
|
- </div>
|
|
|
) : (
|
|
|
- ''
|
|
|
+ <div>
|
|
|
+ {
|
|
|
+ this.state.speVisible && this.state.activeKey === '2' ?
|
|
|
+ <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}
|
|
|
+ patentType={this.state.patentType}
|
|
|
+ status={this.state.refundStatus}
|
|
|
+ isPreviewPay={true}
|
|
|
+ thirdInfoList={this.state.thirdInfoList}
|
|
|
+ dataSource={this.state.payNodeList}
|
|
|
+ outsourceRemarks={this.state.outsourceRemarks}
|
|
|
+ fileList={this.state.pictureUrl}
|
|
|
+ startType={this.state.startType}
|
|
|
+ projectStatus={this.state.projectStatus}
|
|
|
+ onRefresh={()=>{
|
|
|
+ this.waiDetail();
|
|
|
+ this.thirdTable(this.state.tid);
|
|
|
+ this.getSelectOutsourceLog(this.state.tid);
|
|
|
+ this.payNodeTable(this.state.tid)
|
|
|
+ this.loadData(this.state.page)
|
|
|
+ }}
|
|
|
+ /> : <div/>
|
|
|
+ }
|
|
|
+ </div>
|
|
|
)}
|
|
|
+ {(this.state.refundStatus == 1 ||
|
|
|
+ this.state.refundStatus == 0 ||
|
|
|
+ this.state.refundStatus == 2) &&
|
|
|
+ this.state.startType !== 1
|
|
|
+ ? (
|
|
|
+ <div className="clearfix"
|
|
|
+ style={{
|
|
|
+ display: this.state.refundStatus == 0 ? 'none' : 'block',
|
|
|
+ }}
|
|
|
+ >
|
|
|
+ <hr className="division" />
|
|
|
+ {parseInt(this.state.startType) !== 1 ? <div style={{
|
|
|
+ color:'#F00',
|
|
|
+ fontWeight: 'bolder',
|
|
|
+ paddingBottom: '20px',
|
|
|
+ }}>
|
|
|
+ 审核结果: <span style={{paddingLeft:'20px'}}>{getRefundStatus(this.state.refundStatus)}</span>
|
|
|
+ </div> : <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*/}
|
|
|
+ {/* className="clearfix"*/}
|
|
|
+ {/* style={{*/}
|
|
|
+ {/* display: this.state.refundStatus == 0 ? 'none' : 'block',*/}
|
|
|
+ {/* }}*/}
|
|
|
+ {/* >*/}
|
|
|
+ {/* <FormItem*/}
|
|
|
+ {/* className="half-item"*/}
|
|
|
+ {/* {...formItemLayout}*/}
|
|
|
+ {/* label="审核意见"*/}
|
|
|
+ {/* >*/}
|
|
|
+ {/* <span>{this.state.remarks}</span>*/}
|
|
|
+ {/* </FormItem>*/}
|
|
|
+ {/* </div>*/}
|
|
|
+ {/* {parseInt(this.state.startType) !== 1 ?<div className="clearfix">*/}
|
|
|
+ {/* <FormItem*/}
|
|
|
+ {/* className="half-item"*/}
|
|
|
+ {/* {...formItemLayout}*/}
|
|
|
+ {/* label="审核结果"*/}
|
|
|
+ {/* >*/}
|
|
|
+ {/* <span>{getRefundStatus(this.state.refundStatus)}</span>*/}
|
|
|
+ {/* </FormItem>*/}
|
|
|
+ {/* </div> : <div/>}*/}
|
|
|
+ {/* <div*/}
|
|
|
+ {/* className="clearfix"*/}
|
|
|
+ {/* style={{*/}
|
|
|
+ {/* display: this.state.refundStatus == 0 ? 'none' : 'block',*/}
|
|
|
+ {/* }}*/}
|
|
|
+ {/* >*/}
|
|
|
+ {/* <FormItem*/}
|
|
|
+ {/* className="half-item"*/}
|
|
|
+ {/* {...formItemLayout}*/}
|
|
|
+ {/* label="审核时间"*/}
|
|
|
+ {/* >*/}
|
|
|
+ {/* <span>{this.state.auditTimes}</span>*/}
|
|
|
+ {/* </FormItem>*/}
|
|
|
+ {/* </div>*/}
|
|
|
+ </div>
|
|
|
+ ) : (
|
|
|
+ ''
|
|
|
+ )}
|
|
|
</TabPane>
|
|
|
{!this.props.isZxs || (this.state.isHuiyuan && this.props.isZxs) ? (
|
|
|
<TabPane tab="订单详情" key="3">
|