import React,{Component} from 'react'; import { Button, Cascader, DatePicker, Form, Input, message, Modal, Radio, Select, Spin, Table, Tabs, Tag, Upload } from "antd"; import Picture from '@/manageCenter/publicComponent/picture' import { getProcessStatus, getApproval, getTaskStatus, getLiquidationStatus, splitUrl, getProjectStatus, getboutique, getprovince, ShowModal, getRefundStatus, getProjectName } from '@/tools' import { taskStatus, projectStatus, cuiJieDian } from '@/dataDic.js' import { areaSelect } from '@/NewDicProvinceList' import '@/manageCenter/financialManage/distribute/public.less' import '@/manageCenter/financialManage/distribute/shouKuan.less' import OrderRiZi from '@/orderRiZi.jsx' import moment from "moment"; import $ from "jquery"; import PatentSchedule from '../../patentSchedule'; import DeclarationProgress from "../../../../../common/declarationProgress"; import EnterpriseNameChange from "../../../../../common/enterpriseNameChange"; import ProjectOperation from "../../../../../common/projectOperation"; const FormItem = Form.Item const { Option } = Select const formItemLayout = { labelCol: { span: 8 }, wrapperCol: { span: 14 }, } const utils = { getSatisfaction: function (num) { switch (num) { case 0: return '未收回' case 1: return '已收回' default: return '其它' } }, getChargeback: function (num) { switch (num) { case 0: return '已完成' case 1: return '未完成' default: return '其它' } }, } class projectOverview extends Component{ constructor(props) { super(props); this.state={ timeRecordparse:{}, loading: false, projectStatus: props.projectStatus, pagination: { defaultCurrent: 1, defaultPageSize: 10, showQuickJumper: true, pageSize: 10, onChange: function (page) { this.loadData(page) }.bind(this), showTotal: function (total) { return '共' + total + '条数据' }, }, attachmentUrl: [], paginations: false, columnsX: [ { title: '业务项目名称', dataIndex: 'commodityName', key: 'commodityName', }, { title: '项目类别', dataIndex: 'cname', key: 'cname', }, { title: '项目数量', dataIndex: 'commodityQuantity', key: 'commodityQuantity', render: (text, record) => { if (record.splitStatus == 1) { return ( {text}{' '} { e.stopPropagation() this.showRes(record) }} > 已拆 ) } else { return text } }, }, { title: '金额(万元)', dataIndex: 'commodityPrice', key: 'commodityPrice', }, { title: '负责人', dataIndex: 'contacts', key: 'contacts', }, { title: '负责人电话', dataIndex: 'contactsMobile', key: 'contactsMobile', }, { title: '主要项目', dataIndex: 'main', key: 'main', render: (text) => { return text ? '是' : '否' }, }, { title: '项目说明', dataIndex: 'taskComment', key: 'taskComment', render: (text) => { return text && text.length > 8 ? text.substr(0, 8) + '…' : text }, }, ], columnsA: [ { title: '流程', dataIndex: 'content', key: 'content', align: 'center', }, { title: '操作人', dataIndex: 'aName', key: 'aName', align: 'center', }, { title: '时间', dataIndex: 'createTimes', key: 'createTimes', align: 'center', }, ], editFw: {}, } this.visitCancelA = this.visitCancelA.bind(this); this.caozuorizhi = this.caozuorizhi.bind(this); this.tableRowClickX = this.tableRowClickX.bind(this); } //关闭操作工时 visitCancelA() { this.setState({ visibleA: false, }) } componentDidMount() { this.setState({ isIso: this.props.taskName.indexOf("贯标") !== -1, }) this.xiangqing(this.props.tid); this.loadData(); } caozuorizhi() { this.setState({ visibleA: true, }) $.ajax({ method: 'get', dataType: 'json', crossDomain: false, url: globalConfig.context + '/api/admin/orderProject/TaskLogList', data: { id: this.state.id, }, success: function (data) { let theArr = [] if (data.error.length || data.data.list == '') { if (data.error && data.error.length) { message.warning(data.error[0].message) } } else { for (let i = 0; i < data.data.length; i++) { let thisdata = data.data[i] theArr.push({ key: i, id: thisdata.id, //日志ID content: thisdata.content, //流程 taskId: thisdata.taskId, //项目ID aName: thisdata.aName, //负责人 createTimes: thisdata.createTimes, //时间 }) } } this.setState({ dataSourceA: theArr, }) }.bind(this), }).always( function () { this.setState({ loading: false, }) }.bind(this) ) } //订单详情 xiangqing(id) { $.ajax({ method: 'get', dataType: 'json', crossDomain: false, url: globalConfig.context + '/api/admin/orderProject/orderTaskDetail', data: { id: id, }, success: function (data) { let thisdata = data.data if (data.error.length || data.data.list == '') { if (data.error && data.error.length) { message.warning(data.error[0].message) } } else { this.setState({ certificationCorporate: thisdata.certificationCorporate,//认证费公司 certificationFee: thisdata.certificationFee,//认证费 ifCertificationFee: thisdata.ifCertificationFee,//是否包含认证费 id: thisdata.id, //ID orderNo: thisdata.orderNo, //订单编号 userName: thisdata.userName, //客户名称 taskName: thisdata.taskName, //项目名称 cname: thisdata.cname, //项目品类 contractNo: thisdata.contractNo, //合同编号 projectStatus: thisdata.projectStatus.toString(), //项目状态 taskStatus: thisdata.taskStatus.toString(), //项目状态 taskDate: thisdata.taskDate, //分配时间 taskComment: thisdata.taskComment, //说明 attachmentUrl: thisdata.attachmentUrl ? splitUrl( thisdata.attachmentUrl, ',', globalConfig.avatarHost + '/upload' ) : [], //图片地址 salesmanName: thisdata.salesmanName, //订单负责人 startDate: thisdata.startDate, //启动日期 endDate: thisdata.endDate, //结束日期 acceptDate: thisdata.acceptDate, //受理日期 reviewDate: thisdata.reviewDate, //评审日期 publicityDate: thisdata.publicityDate, //公示日期 licenceDate: thisdata.licenceDate, //发证日期 contacts: thisdata.contacts, //联系人 contactMobile: thisdata.contactMobile, //联系人电话 legalPerson: thisdata.legalPerson, //法人 legalPersonTel: thisdata.legalPersonTel, //法人电话 certificateNumber: thisdata.certificateNumber, //证书编号 status: thisdata.status, //状态 formRetrieve: thisdata.formRetrieve, //满意度表格 taskRefund: thisdata.taskRefund, //退单 refundContent: thisdata.refundContent, //退单信息 retrieveContent: thisdata.retrieveContent, //回收信息 arrivalMoney: thisdata.arrivalMoney, //是否到款 setUpAmount: thisdata.setUpAmount, //立项金额 declareUser: thisdata.declareUser, //账号 declarePwd: thisdata.declarePwd, //密码 outsourceName: thisdata.outsourceName, //外包公司 outsourcePrice: thisdata.outsourcePrice, //外包价格 declarationBatch: thisdata.declarationBatch, bpType:thisdata.bpType,//0 正常 1专利 2软著 3审计 4双软 5高新 6商标 specialComment: thisdata.specialComment, urgentDay: thisdata.urgentDay, //有无材料 ifMaterial: thisdata.ifMaterial, //加急情况 spotCheckStatus: thisdata.spotCheckStatus, setUpStatus: thisdata.setUpStatus, setUpTime: thisdata.setUpTime, highTechStatus: thisdata.highTechStatus, acceptCount:thisdata.acceptCount, //受理数 certificatesCount:thisdata.certificatesCount, //授权数 rejectCount:thisdata.rejectCount, //驳回数 commodityQuantity:thisdata.commodityQuantity, //派单项目数 timeRecordparse: thisdata.timeRecord ? JSON.parse(thisdata.timeRecord) : {}, }) this.loadData(thisdata.orderNo); this.xiangqings(thisdata.orderNo); this.xiangmu(thisdata.orderNo) } }.bind(this), }).always( function () { this.setState({ loading: false, }) }.bind(this) ) } loadData(pageNo) { this.state.data = [] this.setState({ page: pageNo, loading: true, }) $.ajax({ method: 'get', dataType: 'json', crossDomain: false, url: globalConfig.context + '/api/admin/orderProject/orderTaskList', data: { // pageNo: pageNo || 1, pageSize: this.state.pagination.pageSize, specially: 0, //个人 name: this.state.nameSearch, //客户名称 depId: this.state.departmenttSearch, //订单部门 orderNo: this.state.orderNoSearch, //订单编号 contractNo: this.state.contractNoSearch, //合同编号 taskId: this.state.taskNoSearch, //项目编号 taskStatus: this.state.taskStatuSearch, //项目状态 projectStatus: this.state.projectStatusSearch, //项目状态 adminName: this.state.adminName, //项目受理人 approval: this.state.approvalSearch, //特批状态搜索 outsourceStatus: this.state.outsourceStatusSearch >= 999 ? undefined : this.state.outsourceStatusSearch, //外包状态搜索 }, success: function (data) { ShowModal(this) let theArr = [] if (!data.data || !data.data.list) { if (data.error && data.error.length) { message.warning(data.error[0].message) } } else { for (let i = 0; i < data.data.list.length; i++) { let thisdata = data.data.list[i] theArr.push({ key: i, orderNo: thisdata.orderNo, //订单编号 id: thisdata.id, //项目ID taskName: thisdata.taskName, //名称 cname: thisdata.cname, //项目品类 receiverName: thisdata.receiverName, //受理人 projectStatus: thisdata.projectStatus, //项目状态 taskStatus: thisdata.taskStatus, //项目状态 taskDate: thisdata.taskDate, //分配时间 userName: thisdata.taskName.substring(0, 5) === '软件著作权' ? thisdata.userName + '(' + thisdata.commodityQuantity.toString() + '/' + thisdata.alreadyNumber + ')' : thisdata.userName, //用户名 depName: thisdata.depName, //部门名称 commodityQuantity: thisdata.commodityQuantity, //项目数量 hours: thisdata.hours, contractNo: thisdata.contractNo, approval: thisdata.approval, //特批状态 outsourceStatus: thisdata.outsourceStatus, //外包审核状态 splitStatus: thisdata.splitStatus, //是否为子项目 2是 1主项目 splitSuper: thisdata.splitSuper, splitId: thisdata.splitId, }) } } this.state.pagination.current = data.data.pageNo this.state.pagination.total = data.data.totalCount if (data.data && data.data.list && !data.data.list.length) { this.state.pagination.current = 0 this.state.pagination.total = 0 } this.setState({ dataSource: theArr, pagination: this.state.pagination, }) }.bind(this), }).always( function () { this.setState({ loading: false, }) }.bind(this) ) } //订单详情 xiangqings(orderNos) { $.ajax({ method: 'get', dataType: 'json', crossDomain: false, url: globalConfig.context + '/api/admin/newOrder/getOrderNewDetail', data: { orderNo: orderNos, }, success: function (data) { let thisdata = data.data let ProvinceCityArr = [] let ProvinceS = thisdata.locationProvince //省 let citys = thisdata.locationCity //市 let Areas = thisdata.locationArea //区 ProvinceCityArr.push(ProvinceS, citys, Areas) if (data.error.length || data.data.list == '') { if (data.error && data.error.length) { message.warning(data.error[0].message) } } else { this.setState({ orderUid: thisdata.uid, processStatus: thisdata.processStatus, //流程状态 liquidationStatus: thisdata.liquidationStatus, //结算状态 approval: thisdata.approval, //特批状态 orderRemarks: thisdata.orderRemarks, //订单留言 salesmanName: thisdata.salesmanName, //营销员名称 salesmanMobile: thisdata.salesmanMobile, //营销员电话 financeName: thisdata.financeName, //财务名称 financeMobile: thisdata.financeMobile, //财务电话 oldSalesmanName: thisdata.oldSalesmanName, //营销员名称 oldSalesmanMobile: thisdata.oldSalesmanMobile, //营销员电话 nowFinance: thisdata.nowFinance, //财务名称 nowFinanceMobile: thisdata.nowFinanceMobile, //财务电话 depName: thisdata.depName, //订单部门 ProvinceCity: ProvinceCityArr[0] === null ? [] : ProvinceCityArr, postalAddress: thisdata.postalAddress, //详细地址 }) } }.bind(this), }).always( function () { this.setState({ loading: false, }) }.bind(this) ) } xiangmu(orderNos) { $.ajax({ method: 'get', dataType: 'json', crossDomain: false, url: globalConfig.context + '/api/admin/newOrder/getOrderTask', data: { orderNo: orderNos, }, success: function (data) { let theArr = [] if (data.error.length || data.data.list == '') { if (data.error && data.error.length) { message.warning(data.error[0].message) } } else { for (let i = 0; i < data.data.length; i++) { let thisdata = data.data[i] localStorage.setItem('cSort', thisdata.cSort) thisdata.key = i; theArr.push(thisdata) } } this.setState({ dataSourceX: theArr, type: theArr[0].type, cSort: theArr[0].cSort, }) }.bind(this), }).always( function () { this.setState({ loading: false, }) }.bind(this) ) } tableRowClickX(record) { this.setState({ editFw:record, projectOperationVisible: true, }) } render() { const {editFw} = this.state; return(
{getProjectName(parseInt(this.state.projectStatus))} {this.state.contractNo}
{getApproval(this.state.approval)} {getLiquidationStatus(this.state.liquidationStatus)} {getProcessStatus(this.state.processStatus)} {this.state.orderNo} {this.state.outsource == 0 ? '否' : '是'}
{utils.getSatisfaction(this.state.formRetrieve)} {this.state.retrieveContent} {/**/} {/* {utils.getChargeback(this.state.taskRefund)}*/} {/**/}
{/*软著显示 bpType: 0 正常 1专利 2软著 3审计 4双软 5高新 6商标*/} {this.state.bpType === 2 ?
{ this.state.urgentDay === 1 ? '是' : this.state.urgentDay === 0 ? '否' : '' } { this.state.ifMaterial === 1 ? '是': this.state.ifMaterial === 0 ? '否': '' }
: null}
特别说明 (针对项目的特殊情况说明)
备注: {this.state.specialComment}
{ // // {this.state.refundContent} // }

任务信息

{/*0通用 1专利 2软著 3审计 4双软 5高新 6商标*/} {/*贯标需要显示*/} { this.state.isIso ?
{ this.state.ifCertificationFee === 1 ? '包含' : '不包含' } {this.state.ifCertificationFee === 1 ? { this.state.certificationFee } : null} {this.state.ifCertificationFee === 1 ? : null} {this.state.ifCertificationFee === 1 ? {this.state.certificationCorporate} :null}
: null } {this.state.id} {this.state.taskName} {getTaskStatus(this.state.taskStatus)} {this.state.cname} {this.state.certificateNumber}
{/*{this.state.outsource === 1 ? (*/} {/*
*/} {/*

外包信息

*/} {/* */} {/* {this.state.outsourceName}*/} {/* */} {/* */} {/* {this.state.outsourcePrice}*/} {/* */} {/*
*/} {/*) : (*/} {/* ''*/} {/*)}*/} {/*
*/}

联系信息

{this.state.userName} {this.state.legalPerson} {this.state.legalPersonTel} {this.state.contacts} {this.state.contactMobile} {getprovince(this.state.locationProvince)}/ {getprovince(this.state.locationCity)}/ {getprovince(this.state.locationArea)} {this.state.postalAddress}
{/*
*/}

订单负责人信息

{this.state.salesmanName + '(' + this.state.depName + ')'} {this.state.salesmanMobile} {this.state.nowFinance} {this.state.nowFinanceMobile} {this.state.oldSalesmanName} {this.state.oldSalesmanMobile} {this.state.financeName} {this.state.financeMobile}

申报系统账户信息

{/*注:仅技术部可见*/} {this.state.declareUser ? '****' : ''} {this.state.declarePwd ? '****' : ''}

项目申报进度

{/*专利显示 bpType: 0 正常 1专利 2软著 3审计 4双软 5高新 6商标*/} { this.state.bpType === 1 || this.state.bpType === 6 ?
{ this.state.highTechStatus === 1 ? '是': this.state.highTechStatus === 0 ? '否' : '' }
:
{/*高新显示 bpType: 0 正常 1专利 2软著 3审计 4双软 5高新 6商标*/} {this.state.bpType === 5 ? { this.state.spotCheckStatus === 0 ? '否': this.state.spotCheckStatus === 1 ? '是,未通过': this.state.spotCheckStatus === 2 ? '是,通过': '' } : null} {this.state.bpType === 5 ? { this.state.setUpStatus === 1 ? '是' : this.state.setUpStatus === 0 ? '否' : '' } : null} {this.state.bpType === 5 ? {this.state.setUpStatus === 1 ?this.state.setUpTime : null } : null} {/*高新和科技项目显示 bpType: 0 正常 1专利 2软著 3审计 4双软 5高新 6商标*/} {/*cSort: 3 科技项目 6: 会员*/} {(this.state.bpType === 5 || this.state.cSort === 3) && {this.state.declarationBatch} } {/*只有科技项目才有是否到款*/} {/*cSort: 3 科技项目 6: 会员*/} {this.state.cSort === 3 && {this.state.arrivalMoney ? '已到企业' : '未到企业'} }
{ this.setState({ previewImage: file.url || file.thumbUrl, previewVisible: true, }) }} /> { this.setState({ previewVisible: false }) }} >
}
{this.state.bpType !== 1 && this.state.bpType !== 6 ?
{this.state.taskComment}
: null}

项目业务

{/* {this.state.processStatus == 0 ? ( ) : ( "" )} */}
{this.state.projectOperationVisible ? 0 && this.state.processStatus !== 0} orderNo={this.state.orderNo} visible={this.state.projectOperationVisible} dataInfor={this.state.editFw} onCancel={()=>{ this.setState({ projectOperationVisible: false, editFw:{}, },()=>{ this.xiangmu(this.state.orderNo); }); }} /> : null} ) } } export default projectOverview;