import React from "react"; import $ from "jquery"; import moment from "moment"; import Picture from "@/manageCenter/publicComponent/picture"; import ResolutionDetail from "@/resolutionDetail"; import "@/manageCenter/financialManage/distribute/public.less"; import "@/manageCenter/financialManage/distribute/shouKuan.less"; import { cuiJieDian } from '@/dataDic.js' import OrderDetail from "../../order/orderNew/changeComponent/orderDetail"; import PatentSchedule from './patentSchedule'; import { Button, Form, Input, Select, Spin, Table, message, DatePicker, Modal, Radio, Cascader, Popconfirm, Tabs, Tag, notification, Col, Tooltip, } from "antd"; import Assign from "@/manageCenter/publicComponent/assign"; import { areaSelect } from "@/NewDicProvinceList"; import { ChooseList } from "../../order/orderNew/chooseList"; import OrderRiZi from "@/orderRiZi.jsx"; import "./table.less"; import { getMaterialStatus, getUrgentStatus, getProcessStatus, getApproval, getTaskStatus, getLiquidationStatus, getProjectStatus, splitUrl, getboutique, getprovince, moneyVerify, ShowModal, getRefundStatus, getProjectName, getApprovedType, } from "@/tools"; import { projectStatus, projectStatusCascader, approvalOptions, } from "@/dataDic.js"; import ShowModalDiv from "@/showModal.jsx"; import CheckProject from "../../components/checkProject"; import ImgList from "../../../common/imgList"; import NewSupplier from "./newSupplier"; import NowProjectStatus from '../../../common/nowProjectStatus'; import OperationPayNode from "./operationPayNode"; import DeclarationProgress from "../../../common/declarationProgress"; import OrderItemStatus from "../../../common/orderItemStatus"; import ProjectLog from "./projectLog"; import EnterpriseNameChange from "../../../common/enterpriseNameChange"; import PatentCheck from "../../../common/patentCheck"; import ProjectOperation from "../../../common/projectOperation"; import Cascaders from "../../../common/cascaders"; import Property from '../../../common/orderDetail/property' // 知识产权情况 const FormItem = Form.Item; const { Option } = Select; const { TextArea } = Input; const confirm = Modal.confirm const PicturesWall = React.createClass({ getInitialState() { return { fileList: [], } }, handleChange(info) { let fileList = info.fileList this.setState({ fileList, }) this.props.fileList(fileList) }, componentWillReceiveProps(nextProps) { this.state.fileList = nextProps.pictureUrl this.state.pojectApplicationUrl = undefined }, render() { const { fileList } = this.state return (
{ this.handleChange(infor) }} fileList={fileList} />
) }, }) const MyTaskOutsource = React.createClass({ loadData(pageNo) { this.state.data = []; this.setState({ 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, //客户名称 deps: this.state.departmenttSearch, //订单部门 orderNo: this.state.orderNoSearch, //订单编号 contractNo: this.state.contractNoSearch, //合同编号 taskId: this.state.taskNoSearch, //项目编号 taskStatus: this.state.taskStatuSearch, //项目状态 adminName: this.state.adminName, //项目受理人 outsource: 1, approval: this.state.approvalSearch, //特批状态搜索 projectStatus: this.state.projectStatusSearch && this.state.projectStatusSearch.length > 0 ? (typeof this.state.projectStatusSearch[0] === 'string' ? this.state.projectStatusSearch[1] : this.state.projectStatusSearch[0]) : undefined, //项目状态 type: this.state.approvaType.length > 0 ? this.state.approvaType.toString() : undefined, //特批类型 }, 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]; thisdata.key = i; thisdata.userName = thisdata.taskName.substring(0, 5) === "软件著作权" ? thisdata.userName + "(" + thisdata.commodityQuantity.toString() + "/" + thisdata.alreadyNumber + ")" : thisdata.userName; theArr.push(thisdata); } } 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, page: data.data.pageNo, pagination: this.state.pagination, }); }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); }, waiDetail() { let url = window.location.href.substring(7) this.setState({ waiDetailLoading: true, }) $.ajax({ method: 'get', dataType: 'json', crossDomain: false, url: globalConfig.context + '/api/admin/outsourceOrg/orderOutsourceDtails', data: { tid: this.state.id, orderNo: this.state.orderNo, }, }).done( function (data) { if (!data.error.length && data.data) { if (!isNaN(parseFloat(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 ) : [], //图片地址 } }, () => { this.setState({ waiDetailLoading: false, }) this.thirdTable(this.state.tid); this.payNodeTable(this.state.tid) }) } else { this.setState({ 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, containOfficialFees: data.data.actualOfficial,//官费类型 0实际已缴费 1实际未缴费 }, () => { this.setState({ waiDetailLoading: false, }) this.thirdTable(this.state.tid); this.payNodeTable(this.state.tid) }) } else if (data.error && data.error.length) { message.warning(data.error[0].message); this.setState({ waiDetailLoading: false, }) } else if (!data.data) { this.setState({ refundStatus: undefined, waiDetailLoading: false, }) } }.bind(this) ) }, getInitialState() { return { approvaType: [], PayNodeCompany: [], containOfficialFees: 0,//官费缴费情况 oldInfor: {}, paySubject: [], orderData: [], orderNo: "", jiedian: [], jiedianNew: [], page: 1, timeVisible: false, searchMore: true, assignVisible: false, releaseDate: [], // 判断是否是退回给咨询师经理 flag: false, roleName: "", modKey: "1", timeRecordparse: {}, testFlag: true, boHuivisible: false, companyProvinceArr: [], selectedRowKeys: [], departmentArr: [], selectedRows: [], attachmentUrl: [], contactList: [], //特批状态搜索 approvalSearch: undefined, paginations: false, loading: false, waiDetailLoading: false, pagination: { defaultCurrent: 1, defaultPageSize: 10, showQuickJumper: true, pageSize: 10, onChange: function (page) { this.loadData(page); }.bind(this), showTotal: function (total) { return "共" + total + "条数据"; }, }, // 子组件改变的表格title数组 changeList: undefined, columnsTime: [ { title: "工作时长(小时)", dataIndex: "hours", key: "hours", }, { title: "工作时间", dataIndex: "taskDays", key: "taskDays", }, // { // title: "项目负责人", // dataIndex: "remarks", // key: "remarks" // }, { title: "备注", dataIndex: "remarks", key: "remarks", }, ], columns: [ { title: "项目编号", dataIndex: "id", key: "id", render: (text, record) => { if (record.splitStatus == 2) { return {record.splitSuper + "-" + record.splitId}; } else { return text; } }, }, { title: "项目名称", dataIndex: "taskName", key: "taskName", render: (text, record) => { return {text}{record.patentTypeName} } }, { title: "项目数量", dataIndex: "commodityQuantity", key: "commodityQuantity", }, { title: "特批类型", dataIndex: "type", key: "type", width: 110, render: (text, record) => { return ( {getApprovedType(text ? text.split(",").map(Number) : [], record.typeExplain)} ); }, }, { title: "订单编号", dataIndex: "orderNo", key: "orderNo", }, { title: "合同编号", dataIndex: "contractNo", key: "contractNo", }, { title: "业务类别", dataIndex: "cname", key: "cname", }, { title: "客户名称", dataIndex: "userName", key: "userName", className: "userName", render: text => { return (
{text}
) } }, // { // title: "外包公司", // dataIndex: "outsourceName", // key: "outsourceName", // }, { title: "分配状态", dataIndex: "taskStatus", key: "taskStatus", render: (text) => { return getTaskStatus(text); }, }, { title: "项目状态", dataIndex: "projectStatus", key: "projectStatus", render: (text) => { return getProjectName(text); }, }, { title: "特批状态", dataIndex: "approval", key: "approval", render: (text) => { return getApproval(text, true); }, }, { title: "分配时间", dataIndex: "taskDate", key: "taskDate", }, { title: "订单部门", dataIndex: "depName", key: "depName", }, { title: '服务年限', dataIndex: 'serviceYear', key: 'serviceYear', }, { title: "累计工时(小时)", dataIndex: "hours", key: "hours", }, { title: "项目金额(万元)", dataIndex: "commodityPrice", key: "commodityPrice", }, { title: "外包成本(万元)", dataIndex: "costAmount", key: "costAmount", render: (text, record) => { return ( { isNaN(parseFloat(text)) ? text : parseFloat(text) } ) } }, { title: "已付(万元)", dataIndex: "partyAmount", key: "partyAmount", render: (text, record) => { return ( { isNaN(parseFloat(text)) ? text : parseFloat(text) } ) } }, { title: "操作", dataIndex: "caozuo", key: "caozuo", render: (text, record) => { return (
{this.props.isZxs ? : null}
); }, }, ], dataSource: [], searchTime: [], columnsX: [ { title: "业务项目名称", dataIndex: "commodityName", key: "commodityName", render: (text, record) => { return ( {text}{record.patentTypeName} ) } }, { 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", render: (text, record) => { return ( {this.props.isZxs || text === -1 ? '***' : text} ) } }, { title: "负责人", dataIndex: "contacts", key: "contacts", }, { title: "负责人电话", dataIndex: "contactsMobile", key: "contactsMobile", }, { title: "主要项目", dataIndex: "main", key: "main", render: (text) => { return text ? "是" : "否"; }, }, { title: "总年限", dataIndex: "yearSum", key: "yearSum", render: (text, record) => { return (
{["", "一年", "二年", "三年", "四年", "五年"][text]}
); } }, { title: "年限", dataIndex: "serviceLife", key: "serviceLife", render: (text, record) => { return (
{!!text && JSON.parse(text).toString()}
); } }, { title: "本次派单", dataIndex: "serviceYear", key: "serviceYear", render: (text, record) => { return (
{!text ? "" : text}
); } }, { title: "项目说明", dataIndex: "taskComment", key: "taskComment", render: (text) => { return (
{text}
) }, }, ], columnsA: [ { title: "流程", dataIndex: "content", key: "content", align: "center", }, { title: "操作人", dataIndex: "aName", key: "aName", align: "center", }, { title: "时间", dataIndex: "createTimes", key: "createTimes", align: "center", }, ], dataSourceX: [], dataSourceA: [], ContactsLists: [ { title: "批次", dataIndex: "num", key: "num", }, { title: "下证时间", dataIndex: "licenceTimes", key: "licenceTimes", render: (text, record) => { return (
{ }} value={ record.licenceTimes ? moment(record.licenceTimes) : null } onChange={(data, dataString) => { record.licenceTimes = dataString; this.setState({ contactList: this.state.contactList }); }} />
); }, }, { title: "下证数量", dataIndex: "alreadyNumber", key: "alreadyNumber", render: (text, record) => { return (
{ { record.alreadyNumber = e.target.value; this.setState({ contactList: this.state.contactList }); }} style={{ width: "120px" }} /> }
); }, }, { title: "未下证数量", dataIndex: "notCount", key: "notCount", }, { title: "操作", dataIndex: "dels", key: "dels", render: (text, record, index) => { return (
{ { this.confirmDelet(record); }} okText="删除" cancelText="不删除" > } {record.flag ? ( "" ) : ( )}
); }, }, ], status: 0, companyColumns: [ { title: "公司", dataIndex: "name", key: "name", //fixed:'left', width: 160, }, { title: "联系人", dataIndex: "contacts", key: "contacts", }, { title: "联系人电话", dataIndex: "contactsMobile", key: "contactsMobile", }, { title: "地址", dataIndex: "companyProvinceArr", key: "companyProvinceArr", width: 140, render: (test) => { return test[0] === null ? "" : getprovince(test[0]) + "/" + getprovince(test[1]) + "/" + getprovince(test[2]); }, }, { title: "详细地址", dataIndex: "address", key: "address", }, { title: "操作", width: 160, render: (text, record) => { return (
{ this.deleteCompany(record.id); }} cancelText="取消" >
); }, }, ], displayFees: 'none', costReduction: '', officialCost: '', }; }, /* 分派 */ evaluate(record, nub, flag) { this.state.assignData = record; this.setState( { nub, assignData: record, flag, }, () => { this.setState({ assignVisible: true, }); } ); }, componentWillMount() { // this.departmentList(); this.loadData(); }, componentDidMount() { this.setColor(); }, setColor() { $(".userName span").after( "(软著数/下证数)" ); }, async tableRowClick(record) { this.state.RowData = record; let str = record.taskName; let test = str.indexOf("会员"); if (test == -1) { this.setState({ isHuiyuan: false, }); } else { this.setState({ isHuiyuan: true, }); } if (record.taskName.substring(0, 5) === "软件著作权") { this.setState({ speVisible: true, id: record.id, splitStatus: record.splitStatus, splitSuper: record.splitSuper, splitId: record.splitId, dataArr: record, commodityQuantity: record.commodityQuantity, }); } else { this.setState({ visible: true, splitStatus: record.splitStatus, splitSuper: record.splitSuper, splitId: record.splitId, patentNameType: record.patentNameType, patentName: record.patentName, }); } this.setState({ orderNo: record.orderNo, id: record.id, isIso: record.taskName.indexOf("贯标") !== -1, projectType: record.projectType, }) this.xiangqings(record.orderNo); this.xiangmu(record.orderNo); this.loaduserss(record); // 获取第三方信息表格 this.thirdTable(record.id) await this.xiangqing(record.id); // 获取Csort await this.getCsortData(this.state.sort) await this.payNodeTable(record.id); this.projectTypeTabContent(record.projectType) }, //点击修改项目详情 tijiaoOk(status = '', fn) { if (moneyVerify(this.state.setUpAmount)) { return; } let attachmentUrls = []; if (this.state.attachmentUrl.length) { let picArr = []; this.state.attachmentUrl.map(function (item) { if (item.response && item.response.data && item.response.data.length) { picArr.push(item.response.data); } }); attachmentUrls = picArr.join(","); } this.setState({ loading: true, }); $.ajax({ method: "POST", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/orderProject/updateOrderTask", data: { id: this.state.id, //项目编号 orderNo: this.state.orderNo, //订单编号 projectStatus: status || this.state.projectStatus, //项目状态 status: this.state.status, //状态 taskStatus: this.state.taskStatus, //项目状态 taskComment: this.state.taskComment, //说明 startDate: this.state.startDate, //启动日期 endDate: this.state.endDate, //结束日期 acceptDate: this.state.acceptDate, //受理日期 reviewDate: this.state.reviewDate, //评审日期 publicityDate: this.state.publicityDate, //公示日期 licenceDate: this.state.licenceDate, //发证日期 attachmentUrl: attachmentUrls.length ? attachmentUrls : "", //附件 contacts: this.state.contacts, //联系人 contactMobile: this.state.contactMobile, //联系人电话 legalPerson: this.state.legalPerson, //法人 legalPersonTel: this.state.legalPersonTel, //法人电话 certificateNumber: this.state.certificateNumber, //证书编号 formRetrieve: this.state.formRetrieve, //满意度表格 taskRefund: this.state.taskRefund, //退单 refundContent: this.state.refundContent, //退单信息 retrieveContent: this.state.retrieveContent, //回收信息 locationProvince: this.state.ProvinceCity[0], locationCity: this.state.ProvinceCity[1], locationArea: this.state.ProvinceCity[2], postalAddress: this.state.postalAddress, //详细地址 arrivalMoney: this.state.arrivalMoney, //是否到款 setUpAmount: this.state.setUpAmount, //立项金额 declareUser: this.state.declareUser, //账号 declarePwd: this.state.declarePwd, //密码 outsourceName: this.state.outsourceName, //外包公司名称 outsourcePrice: this.state.outsourcePrice, //外包价格 declarationBatch: this.state.declarationBatch, specialComment: this.state.specialComment || undefined,//特别说明 setUpStatus: typeof this.state.setUpStatus === 'number' ? this.state.setUpStatus : undefined,//是否立项 setUpTime: this.state.setUpTime || undefined,//立项时间 highTechStatus: typeof this.state.highTechStatus === 'number' ? this.state.highTechStatus : undefined,//是否高新 spotCheckStatus: typeof this.state.spotCheckStatus === 'number' ? this.state.spotCheckStatus : undefined,//是否抽查 0否 1未通过 2通过 urgentDay: typeof this.state.urgentDay === 'number' ? this.state.urgentDay : undefined,//加急天数 ifMaterial: typeof this.state.ifMaterial === 'number' ? this.state.ifMaterial : undefined,//有无材料 acceptCount: this.state.acceptCount || undefined, certificatesCount: this.state.certificatesCount || undefined, rejectCount: this.state.rejectCount || undefined, certificationCorporate: this.state.certificationCorporate || undefined,//认证费公司 certificationFee: this.state.certificationFee,//认证费 ifCertificationFee: this.state.ifCertificationFee,//是否包含认证费 }, }).done( function (data) { this.setState({ loading: false, }); if (!data.error.length) { message.success("保存成功!"); fn ? fn() : this.visitCancel(); } else { message.warning(data.error[0].message); } }.bind(this) ); }, //点击修改项目详情 tianjiaOk() { if (this.state.attachmentUrl.length) { let picArr = []; this.state.attachmentUrl.map(function (item) { if (item.response && item.response.data && item.response.data.length) { picArr.push(item.response.data); } }); } $.ajax({ method: "POST", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/orderProject/addTaskHours", data: { taskId: this.state.taskId, //项目编号 hours: this.state.hours, //工时 remarks: this.state.remarks, //说明 taskDate: this.state.taskDate, //日期 taskComment: this.state.taskComment, //说明 }, }).done( function (data) { this.setState({ loading: false, }); if (!data.error.length) { message.success("保存成功!"); this.noCancel(); } else { message.warning(data.error[0].message); } }.bind(this) ); }, //订单详情 xiangqing(id) { return $.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 { localStorage.setItem('cSort', thisdata.sort); this.setState({ cSort: thisdata.sort, certificationCorporate: thisdata.certificationCorporate,//认证费公司 certificationFee: thisdata.certificationFee,//认证费 ifCertificationFee: thisdata.ifCertificationFee,//是否包含认证费 id: thisdata.id, //ID sort: thisdata.sort, orderNo: thisdata.orderNo, //订单编号 splitId: thisdata.splitId,//拆分序号 splitStatus: thisdata.splitStatus,//0未拆分 1已拆分 splitSuper: thisdata.splitSuper,//拆分前项目编号 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, //说明 taskCommentData: 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, //状态 0未开始 1已开始 2已暂停 3已完成 4已驳回 5已退单 // modifyProjectStatus: 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, orderTaskOfficialCost: thisdata.officialCost, //官费 0无 1有 orderTaskCostReduction: thisdata.costReduction,//费减 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, //派单项目数PatentSchedule timeRecord: thisdata.timeRecord || '{}',//项目状态JSON timeRecordparse: thisdata.timeRecord ? JSON.parse(thisdata.timeRecord) : {},//项目状态JSON checkStatus: thisdata.checkStatus,//核对状态 patentTypeName: thisdata.patentTypeName, patentTypeId: thisdata.patentType,//官费专利类型 }); } }.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, examineName: thisdata.examineName, processStatus: thisdata.processStatus, //流程状态 liquidationStatus: thisdata.liquidationStatus, //结算状态 approval: thisdata.approval, //特批状态 orderRemarks: thisdata.orderRemarks, //订单留言 salesmanName: thisdata.salesmanName, //营销员名称 salesmanMobile: thisdata.salesmanMobile, //营销员电话 oldSalesmanName: thisdata.oldSalesmanName, //营销员名称 oldSalesmanMobile: thisdata.oldSalesmanMobile, //营销员电话 financeName: thisdata.financeName, //财务名称 financeMobile: thisdata.financeMobile, //财务电话 nowFinance: thisdata.nowFinance, //财务名称 nowFinanceMobile: thisdata.nowFinanceMobile, //财务电话 depName: thisdata.depName, //订单部门 ProvinceCity: ProvinceCityArr[0] === null ? [] : ProvinceCityArr, postalAddress: thisdata.postalAddress, //详细地址 deleteSign: thisdata.deleteSign, patentStatus: thisdata.patentStatus, // 知识产权情况 }); } }.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]; thisdata.key = i; theArr.push(thisdata); } } this.setState({ dataSourceX: theArr, }); }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); }, //导出 exportExec() { let departmentName = "", depart = this.state.departmentArr || []; depart.map((item) => { if (this.state.departmentId == item.id) { departmentName = item.name; return; } }); let data = { departmentId: this.state.departmentId, departmentName: departmentName, salesName: this.state.orderRefundSearch, //订单负责人 startTime: this.state.releaseDate[0], endTime: this.state.releaseDate[1], grantStatus: this.state.grantStatus, type: this.state.approvaType.length > 0 ? this.state.approvaType.toString() : undefined, //特批类型 }; window.location.href = globalConfig.context + "/api/admin/orderProject/exporProjectList?" + $.param(data); }, //关闭详情 visitCancel() { this.setState({ visible: false, speVisible: false, modKey: "1", updataSwicth: false, projectSituationVisible: false, }); this.companyReset(); this.reset(this.state.page); }, visitOk() { this.setState({ visible: false, speVisible: false, }); this.reset(this.state.page); }, closeDesc(e, s) { this.state.showDesc = e; if (s) { this.loadData(this.state.page); } }, closeAssign(e, s) { this.state.roleName = ""; this.state.assignVisible = e; if (s) { this.loadData(this.state.page); } }, //添加工时 okCancel(record) { this.setState({ lookVisible: true, taskId: record.id, }); }, //测试 getOrgCodeUrl(e) { this.setState({ orgCodeUrl: e }); }, //查看下证信息 loaduserss(record) { $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/orderProject/selectTaskProgress", data: { tid: record.id, }, success: function (data) { let theArr = []; let thisData = []; if (!thisData) { if (data.error && data.error.length) { message.warning(data.error[0].message); } thisData = {}; } else { for (let i = 0; i < data.data.length; i++) { thisData = data.data[i]; theArr.push({ num: i + 1, key: i, id: thisData.id, //编号 alreadyNumber: thisData.alreadyNumber, //下证数 licenceTimes: thisData.licenceTimes, //下证时间 notCount: thisData.notCount, //未下证数 flag: true, }); } this.setState({ contactList: theArr, }); } }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); }, //下证信息保存 contactSave(record) { if (!record.licenceTimes) { message.warning("下证日期不能为空"); return; } if (!record.alreadyNumber) { message.warning("下证数量不能为空"); return; } this.setState({ loading: true, }); $.ajax({ url: globalConfig.context + "/api/admin/orderProject/createTaskProgress", method: "post", data: { taskId: this.state.id, licenceTimes: record.licenceTimes, alreadyNumber: record.alreadyNumber, }, }).done( function (data) { this.setState({ loading: false, }); if (!data.error.length) { message.success("保存成功!"); record.flag = true; this.loaduserss(this.state.dataArr); } else { message.warning(data.error[0].message); } }.bind(this) ); }, getOrgCodeUrlWai(e) { this.setState({ pictureUrl: e }) }, getUrl(url) { let theorgCodeUrl = [] if (url.length) { let picArr = [] url.map(function (item) { if (item.response && item.response.data && item.response.data.length) { picArr.push(item.response.data) } }) theorgCodeUrl = picArr.join(',') } return theorgCodeUrl }, //下证信息删除 contactDele(record) { this.setState({ loading: true, }); $.ajax({ url: globalConfig.context + "/api/admin/orderProject/delectTaskProgress", method: "post", data: { id: record.id, }, }).done( function (data) { this.setState({ loading: false, }); if (!data.error.length) { this.loaduserss(this.state.dataArr); } else { message.warning(data.error[0].message); } }.bind(this) ); }, //点击新增下证信息 addcontact() { this.state.contactList.push({ num: this.state.contactList.length + 1, key: this.state.contactList.length, licenceTimes: "", alreadyNumber: "", notCount: "", dels: "", flag: false, aflag: false, }); this.setState({ contactList: this.state.contactList, }); }, //删除下证信息 confirmDelet(record) { this.state.contactList.splice(record.key, 1); this.setState({ contactList: this.state.contactList, }); if (record.id) { this.contactDele(record); } }, 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 processName: thisdata.content, //流程 taskId: thisdata.taskId, //项目ID adminName: thisdata.aName, //负责人 createDate: thisdata.createTimes, //时间 }); } } this.setState({ dataSourceA: theArr, }); }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); }, //通知提醒 openNotification() { notification.open({ message: "提醒", description: "请在输入框中重新输入需要修改的选项!", }); }, //关闭操作工时 visitCancelA() { this.setState({ visibleA: false, }); }, async callBack(e) { this.setState({ modKey: e, }); if (e === '2') { this.waiDetail(); if (this.state.paySubject.length === 0) { await this.xiangqing(this.state.tid); // 获取Csort await this.getCsortData(localStorage.getItem('cSort')) await this.payNodeTable(this.state.tid); } else { await this.payNodeTable(this.state.tid) } } if (e === '3') { this.orderDetailData(this.state.orderNo); this.xiangmu(this.state.orderNo); this.jiedian(this.state.orderNo); this.jiedianNew(this.state.orderNo); } }, //添加公司 addCompany() { this.setState({ switch: true, }); }, //保存和修改公司 saveCompany(id) { if (this.companyJugle()) { let upAndde = this.state.updataSwicth ? { api: "/api/admin/outsourceOrg/updateOutsourceOrg", warn: "修改成功", data: { id: id, name: this.state.cName, contacts: this.state.companyContacts, contactsMobile: this.state.companyContactsMobile, province: this.state.companyProvinceArr[0], city: this.state.companyProvinceArr[1], area: this.state.companyProvinceArr[2], address: this.state.companyAddress, remarks: this.state.companyRemarks, }, } : { api: "/api/admin/outsourceOrg/addOutsourceOrg", warn: "保存成功", data: { name: this.state.cName, tid: this.state.RowData.id, contacts: this.state.companyContacts, contactsMobile: this.state.companyContactsMobile, orderNo: this.state.orderNo, province: this.state.companyProvinceArr[0], city: this.state.companyProvinceArr[1], area: this.state.companyProvinceArr[2], address: this.state.companyAddress, remarks: this.state.companyRemarks, }, }; this.setState({ loading: true, }); $.ajax({ method: "post", dataType: "json", crossDomain: false, url: globalConfig.context + upAndde.api, data: upAndde.data, success: function (data) { if (data.error.length || data.data.list == "") { if (data.error && data.error.length) { message.warning(data.error[0].message); } } }.bind(this), }).done( function () { this.setState({ loading: false, updataSwicth: false, }); this.companyReset(); message.success(upAndde.warn); }.bind(this) ); } }, //判断 companyJugle() { if (this.state.cName === undefined) { message.warning("公司名称不能为空!"); return; } if (this.state.companyContacts === undefined) { message.warning("联系人不能为空!"); return; } if (this.state.companyContactsMobile === undefined) { message.warning("联系人电话不能为空!"); return; } return true; }, //删除外包 deleteCompany(id) { $.ajax({ method: "post", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/outsourceOrg/deleteOutsourceOrg", data: { id: id, }, success: function () { }.bind(this), }).done( function () { this.setState({ loading: false, }); message.warning("删除成功"); }.bind(this) ); }, //重置外包 companyReset() { this.setState({ cName: undefined, companyContacts: undefined, companyContactsMobile: undefined, companyProvinceArr: [], companyAddress: undefined, companyRemarks: undefined, }); }, foo2() { this.setState({ testFlag1: false, }); }, foo1() { this.setState({ testFlag1: true, }); }, foo() { this.setState({ testFlag: false, }); }, nextCancel() { this.setState({ projectOperationVisible: false, dataInfor: {}, }, () => { this.xiangmu(this.state.orderNo); }); }, //点击打卡项目详情 tableRowClickX(record) { this.setState({ projectOperationVisible: true, dataInfor: record, }); }, //关闭添加工时 noCancel() { this.setState({ lookVisible: false, }); this.reset(); }, search() { this.loadData(); }, reset(page) { this.state.approvaType = []; this.state.id = ""; //项目编号 this.state.orderNo = ""; //订单编号 this.state.contractNoSearch = undefined; //订单编号 this.state.projectStatus = undefined; //项目状态 this.state.projectStatusSearch = undefined; //项目状态 this.state.taskStatuSearch = undefined; //项目状态 this.state.taskComment = ""; //说明 this.state.taskCommentData = ""; this.state.startDate = ""; //启动日期 this.state.endDate = ""; //结束日期 this.state.acceptDate = ""; //受理日期 this.state.reviewDate = ""; //评审日期 this.state.publicityDate = ""; //公示日期 this.state.licenceDate = ""; //发证日期 // attachmentUrl: []; //附件 this.state.contacts = ""; //联系人 this.state.contactMobile = ""; //联系人电话 this.state.legalPerson = ""; //法人 this.state.legalPersonTel = ""; //法人电话 this.state.taskId = ""; //项目编号 this.state.hours = ""; //工时 this.state.remarks = ""; //说明 this.state.taskDate = ""; //日期 this.state.nameSearch = ""; this.state.releaseDate = []; this.state.orderNoSearch = ""; this.state.taskNoSearch = ""; this.state.distribution = undefined; this.state.departmenttSearch = undefined; this.state.outsourceName = ""; //外包公司名称 this.state.outsourcePrice = ""; //外包价格 this.state.approvalSearch = undefined; this.Cascaders.empty(); this.loadData(page || 0); this.setState({ oldInfor: {}, urgentDay: '', //有无材料 ifMaterial: '', //加急情况 specialComment: '', //特别说明 spotCheckStatus: '', setUpStatus: '', setUpTime: '', highTechStatus: '', projectStatusSearch: undefined, //项目状态 }) }, searchSwitch() { this.setState({ searchMore: !this.state.searchMore, }); }, // 拆分详细 showRes(record) { this.setState({ resVisible: true, resRecord: record, }); }, resCancel() { this.setState({ resVisible: false, }); }, //部门 departmentList() { this.setState({ loading: true, }); $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/organization/selectSuperId", data: {}, success: function (data) { let thedata = data.data; let theArr = []; if (!thedata) { if (data.error && data.error.length) { message.warning(data.error[0].message); } thedata = {}; } else { thedata.map(function (item, index) { theArr.push({ key: index, name: item.name, id: item.id, }); }); } this.setState({ departmentArr: theArr, }); }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); }, updateProjectStatus(projectStatus, fn) { $.ajax({ url: globalConfig.context + '/api/admin/orderProject/updateProjectStatus', method: 'post', data: { tid: this.state.tid, projectStatus: projectStatus, timeRecord: '{}' }, }).done( function (data) { if (!data.error.length) { this.setState({ timeRecordparse: {}, }) message.success('保存成功!'); fn(); } else { message.warning(data.error[0].message) } }.bind(this) ) }, changeList(arr) { const newArr = []; this.state.columns.forEach((item) => { arr.forEach((val) => { if (val === item.title) { newArr.push(item); } }); }); this.setState({ changeList: newArr, }); }, timeClose() { this.setState({ timeVisible: false, }); }, timeDetail(record) { // console.log(record); this.setState({ loading: true, recordHour: record.hours, }); $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/orderProject/taskHoursDetailsList", data: { taskId: record.id, }, success: function (data) { if (data.error && data.error.length) { message.warning(data.error[0].message); } else { this.setState({ dataSourceTime: data.data, }); // console.log(this.state.dataSourceTime); } }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); }, rizhi() { this.setState({ loading: true, }); $.ajax({ method: "get", dataType: "json", crossDomain: false, url: "/api/admin/newOrder/selectOrderLog", data: { orderNo: this.state.orderNo, }, success: function (data) { let theArr = []; let thisData = data.data; if (!thisData.length) { if (data.error && data.error.length) { message.warning(data.error[0].message); } thisData = {}; } else { for (let i = 0; i < data.data.length; i++) { let thisdata = data.data[i]; theArr.push({ processName: thisdata.processName, adminName: thisdata.adminName, createDate: thisdata.createDate, remarks: thisdata.remarks, }); } } this.setState({ dataSourceY: theArr, }); }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); }, closeOrderLog() { this.setState({ avisible: false, }); }, getOrderLog() { this.setState({ avisible: true, }); this.rizhi(); }, orderChange(key) { this.setState({ activeKey: key, }); if (key == 2) { this.orderDetailData(this.state.orderNo); this.xiangmu(this.state.orderNo); this.jiedian(this.state.orderNo); this.jiedianNew(this.state.orderNo); } }, //节点列表 jiedian(orderNos) { $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/newOrder/selectOrderDun", data: { orderNo: orderNos, }, success: function (data) { let theArr = []; let thisData = []; 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++) { thisData = data.data[i]; theArr.push({ key: i, dunSubject: thisData.dunSubject ? thisData.dunSubject.toString() : "", //催款科目 id: thisData.id, //节点Id money: thisData.money, //催款金额 dunStatus: thisData.dunStatus, //催款状态 }); } this.setState({ jiedian: theArr, }); } }.bind(this), }); }, // 获取csort下的数据 getCsortData(cSort) { return cuiJieDian.map((item) => { if (item.value == cSort) { this.setState({ paySubject: item.children, }) } }) }, jiedianNew(orderNos) { $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/newOrderDun/selectListNewOrderDun", data: { orderNo: orderNos, }, success: function (data) { if (data.error && data.error.length) { message.warning(data.error[0].message); } else { let theArr = []; let thisData = []; let arr = data.data || []; let totalCui = 0; for (let i = 0; i < arr.length; i++) { thisData = arr[i]; totalCui += +thisData.money; thisData.key = i; thisData.dunSubject = thisData.dunSubject ? thisData.dunSubject.toString() : ""; //催款科目 theArr.push(thisData); } if (!totalCui) { totalCui = 0; } totalCui = (Math.round(totalCui * 1000000) / 1000000).toFixed(6); this.setState({ jiedianNew: theArr, totalCui, }); } }.bind(this), }).always( function () { this.setState({ loading: false, }); }.bind(this) ); }, //查看第三方信息表格 thirdTable(id) { this.setState({ loadData: true, thirdInfoLoading: true, }) $.ajax({ method: 'get', dataType: 'json', crossDomain: false, url: globalConfig.context + '/api/admin/company/selectCompany', data: { tid: id, }, success: function (data) { if (data.error && data.error.length) { message.warning(data.error[0].message) } else { let companyNameArr = []; let theArr = []; let thisData = []; let arr = data.data || []; let allTotalAmount = 0; let type = 0; let startType = 0; let patentNameType = 0; for (let i = 0; i < arr.length; i++) { thisData = arr[i] allTotalAmount = (allTotalAmount * 10000 + thisData.totalAmount * 10000) / 10000 companyNameArr.push(thisData.companyName); thisData.key = i; type = thisData.patentType; thisData.patentType = thisData.type; theArr.push(thisData); startType = thisData.startType; patentNameType = thisData.patentNameType } if (!allTotalAmount) { allTotalAmount = 0 } for (let d = 0; d < theArr.length; d++) { theArr[d].companyName = theArr[d].companyName + '-' + theArr[d].id; companyNameArr[d] = { companyName: theArr[d].companyName, id: theArr[d].id, } } if ((type === 0 || type === 1) && arr.length > 0) { this.setState({ patentType: type === 0 ? 0 : 1, //0专利申请 1专利买卖 patentNameType: patentNameType, //0实用新型 1发明专利 2外观专利 3 其他 }) } //设置项目类型 if (arr.length > 0) { this.setState({ startType: startType }) } this.setState({ tid: id, PayNodeCompany: companyNameArr, thirdInfoList: theArr, allTotalAmount: allTotalAmount, }, () => { this.projectTypeTabContent(this.state.projectType); }) } }.bind(this), }).always( function () { this.setState({ loading: false, thirdInfoLoading: false, }) }.bind(this) ) }, payNodeTable(id) { this.setState({ loadData: true, payNodeLoading: true, }) $.ajax({ method: 'get', dataType: 'json', crossDomain: false, url: globalConfig.context + '/api/admin/company/selectPaymentNode', data: { tid: id, }, success: function (data) { if (data.error && data.error.length) { message.warning(data.error[0].message) } else { let payNodeArr = [] let thisData = [] let arr = data.data || [] // console.log('this.state.paySubject', this.state.paySubject) //对#5283自定义的补充展示 this.state.paySubject.push({ key: '自定义', value: '0' }) for (let i = 0; i < arr.length; i++) { thisData = arr[i] //遍历paySubject,获取当前dunType对应的key this.state.paySubject.map((item) => { if (item.value == thisData.dunType) { thisData.dunType = item.key } }) payNodeArr.push({ key: i, id: thisData.id, //付款节点Id tid: thisData.tid, nodeId: thisData.id, //付款节点Id companyName: thisData.companyName, //供应商名称 projectType: thisData.projectType, //项目分类 dunType: thisData.dunType, //催款分类 unitPrice: thisData.unitPrice, //单价 quantity: thisData.quantity, //数量 totalAmount: thisData.totalAmount, //总价 partyAmount: thisData.partyAmount, //付款 partyTimes: thisData.partyTimes, //付款时间 cid: thisData.cid, //机构id status: thisData.status, //催款状态 0-未支付 1-待全款 ,2已全款 status=2的时候已经全款,申请付款按钮可以去掉了 }) } for (let d = 0; d < payNodeArr.length; d++) { payNodeArr[d].companyName = payNodeArr[d].companyName + '-' + payNodeArr[d].cid; } this.setState({ tid: id, payNodeList: payNodeArr, }) } }.bind(this), }).always( function () { this.setState({ loading: false, payNodeLoading: false }) }.bind(this) ) }, // 新增第三方供应商信息 addThirdList() { this.setState({ ThirdListVisible: true, }) }, // 新增支付节点 addPayNode() { this.setState({ PayNodeVisible: true, }) }, //用于判断 第三方信息表格显示 projectTypeTabContent(projectType) { //0正常 1专利 2软著 3审计 this.props.startType 0外包 1供应商 外包时当普通单处理 projectType大于3的都用通用表格 if (projectType === 0 || !projectType || this.props.startType === 0 || projectType > 3) { this.setState({ ContactsListsNew: [ { title: '供应商名称', dataIndex: 'companyName', key: 'companyName', render: (text, record, index) => { if (text) { return {text} } }, }, { title: '单价(万元)', dataIndex: 'unitPrice', key: 'unitPrice', render: (text, record) => { if (text) { return { isNaN(text) ? text : parseFloat(text) } } }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: '总价(万元)', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { return { isNaN(text) ? text : parseFloat(text) } }, }, { title: '备注', dataIndex: 'remarks', key: 'remarks', }, { title: '操作', dataIndex: 'action', key: 'action', render: (text, record) => { return (
{/*外包审核通过后,咨询师/咨询经理可申请付款*/} {/*存在支付节点时不显示第三方的申请付款*/} {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/} { } { this.confirmDeletNew(record) }} okText="删除" cancelText="不删除" >
) }, }, ], }) } else if (projectType === 2) { //2软著 this.setState({ ContactsListsNew: [ { title: '供应商名称', dataIndex: 'companyName', key: 'companyName', render: (text, record, index) => { if (text) { return {text} } }, }, { title: '单价(万元)', dataIndex: 'unitPrice', key: 'unitPrice', render: (text, record) => { if (text) { return { isNaN(text) ? text : parseFloat(text) } } }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: '总价(万元)', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { return { isNaN(text) ? text : parseFloat(text) } }, }, { title: '方案', dataIndex: 'material', key: 'material', render: (text, record) => { return getMaterialStatus(text) }, }, { title: '加急', dataIndex: 'urgent', key: 'urgent', render: (text, record) => { return getUrgentStatus(text) }, }, { title: '操作', dataIndex: 'action', key: 'action', render: (text, record) => { return (
{/*外包审核通过后,咨询师/咨询经理可申请付款*/} {/*存在支付节点时不显示第三方的申请付款*/} {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/} { } { this.confirmDeletNew(record) }} okText="删除" cancelText="不删除" >
) }, }, ], }) } else if (projectType === 1) { //1专利 if (this.state.patentType === 0) { //专利申请 this.setState({ ContactsListsNew: [ { title: '供应商名称', dataIndex: 'companyName', key: 'companyName', render: (text, record, index) => { if (text) { return {text} } }, }, { title: '单价(万元)', dataIndex: 'unitPrice', key: 'unitPrice', render: (text, record) => { if (text) { return { isNaN(text) ? text : parseFloat(text) } } }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, // { // title: "官费", // dataIndex: "officialCost", // key: "officialCost", // render: (text) => { // return text === 1 ? '有官费' : '无官费' // }, // }, // { // title: "费减", // dataIndex: "costReduction", // key: "costReduction", // render: (text) => { // return text === 1 ? '有费减' : '无费减' // }, // }, { title: '总价(万元)', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { return { isNaN(text) ? text : parseFloat(text) } }, }, { title: '备注', dataIndex: 'remarks', key: 'remarks', }, { title: '操作', dataIndex: 'action', key: 'action', render: (text, record) => { return (
{/*外包审核通过后,咨询师/咨询经理可申请付款*/} {/*存在支付节点时不显示第三方的申请付款*/} {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/} { } {/*{*/} {/* {*/} {/* this.setState({*/} {/* previewPayVisible: true,*/} {/* previewPayInfor: record,*/} {/* })*/} {/* }}>*/} {/* 付官费*/} {/* */} {/*}*/} { this.confirmDeletNew(record) }} okText="删除" cancelText="不删除" >
) }, }, ] }) } else { this.setState({ ContactsListsNew: [ { title: '供应商名称', dataIndex: 'companyName', key: 'companyName', render: (text, record, index) => { if (text) { return {text} } }, }, { title: '单价(万元)', dataIndex: 'unitPrice', key: 'unitPrice', render: (text, record) => { if (text) { return { isNaN(text) ? text : parseFloat(text) } } }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: '总价(万元)', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { return { isNaN(text) ? text : parseFloat(text) } }, }, { title: '备注', dataIndex: 'remarks', key: 'remarks', }, { title: '操作', dataIndex: 'action', key: 'action', render: (text, record) => { return (
{/*外包审核通过后,咨询师/咨询经理可申请付款*/} {/*存在支付节点时不显示第三方的申请付款*/} {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/} { } { this.confirmDeletNew(record) }} okText="删除" cancelText="不删除" >
) }, }, ] }) } } else if (projectType === 3) { //3审计 this.setState({ ContactsListsNew: [ { title: '供应商名称', dataIndex: 'companyName', key: 'companyName', render: (text, record, index) => { if (text) { return {text} } }, }, { title: '单价(万元)', dataIndex: 'unitPrice', key: 'unitPrice', render: (text, record) => { if (text) { return { isNaN(text) ? text : parseFloat(text) } } }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: '总价(万元)', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { return { isNaN(text) ? text : parseFloat(text) } }, }, { title: '审计', dataIndex: 'audit', key: 'audit', render: (text, record) => { if (text) { return {text === 0 ? '无审计' : text === 1 ? '年审' : '专审'} } }, }, { title: '公司资产(万元)', dataIndex: 'assets', key: 'assets', render: (text, record) => { if (text) { return {text} } }, }, { title: '收入(万元)', dataIndex: 'income', key: 'income', render: (text, record) => { return { isNaN(text) ? text : parseFloat(text) } }, }, { title: '操作', dataIndex: 'action', key: 'action', render: (text, record) => { return (
{/*外包审核通过后,咨询师/咨询经理可申请付款*/} {/*存在支付节点时不显示第三方的申请付款*/} {/*0-待审核 ,1-审核通过,2-审核拒绝 true [NULL]*/} { } { this.confirmDeletNew(record) }} okText="删除" cancelText="不删除" >
) }, }, ] }) } this.setState({ //付款节点表头 PayNodeTableColunms: [ { title: '供应商名称', dataIndex: 'companyName', key: 'companyName', render: (text, record, index) => { if (text) { return {text} } }, }, { title: '付款科目', dataIndex: 'dunType', key: 'dunType', render: (text, record) => { if (text) { return {text} } }, }, { title: '付款时间', dataIndex: 'partyTimes', key: 'partyTimes', render: (text, record) => { return {text ? text : '/'} }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: '总价(万元)', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { return { isNaN(text) ? text : parseFloat(text) } }, }, { title: '已付', dataIndex: 'partyAmount', key: 'partyAmount', render: (text, record) => { if (text) { return {text} } }, }, { title: '操作', dataIndex: 'dels', key: 'dels', render: (text, record, index) => { return (
{ this.payNodeConfirmDeletNew(record) }} okText="删除" cancelText="不删除" >
) }, }, ], }) }, // 删除供应商信息 confirmDeletNew(index, resolve = () => { }, reject = () => { }) { let arr = this.state.payNodeList.filter((v) => { return v.companyName === index.companyName }); let _this = this; if (arr.length > 0) { confirm({ title: '确定要删除此供应商信息吗?', content: '此供应商存在' + arr.length + '条付款节点信息,删除后对应的付款节点也会一起删除', onOk() { return new Promise((resolve, reject) => { let str = ''; arr.map((value) => { str += value.id + ','; }) _this.payNodeConfirmDeletNew({ id: str }); _this.handleConfirmDelet(index, resolve, reject) }).catch(() => console.log('Oops errors!')); }, onCancel() { }, }); } else { this.handleConfirmDelet(index, resolve, reject) } }, //外包日志列表 getSelectOutsourceLog(tid) { this.setState({ loading: true, }) $.ajax({ method: 'get', dataType: 'json', crossDomain: false, url: globalConfig.context + '/api/admin/outsourceOrg/selectOutsourceLog', data: { tid: tid, }, success: function (data) { if (data.error.length) { if (data.error && data.error.length) { message.warning(data.error[0].message); } } else { this.setState({ outsourceLogs: data.data }) } this.setState({ loading: false, }) }.bind(this), }).always( function () { this.setState({ loading: false, }) }.bind(this) ) }, // 项目发起外包 sureOut(startType) { if (this.state.startType !== 0 && this.state.startType !== 1) { message.warning('请选择类型') return } //0正常 1专利 2软著 3审计 if (this.state.projectType === 1) { //专利 if (this.state.patentType === -1) { message.warning('请选择专利类型') return } if (this.state.patentNameType === -1) { message.warning('请选择专利类型名称') return } if (this.state.patentNameType == 3) { if (!this.state.patentName) { message.warning('请填写专利名称') return } } } if (!this.state.outsourceRemarks) { message.warning('备注不能为空') return } //refundStatus 0-待审核 ,1-审核通过,2-审核拒绝 //类型为供应商时不需要发起原因 //this.state.startType 0外包 1供应商 if (!this.state.reason && (this.state.refundStatus === 2 || typeof this.state.refundStatus === 'undefined') && this.state.startType !== 1) { message.warning('发起原因不能为空') return } let _this = this; let ajaxObj = null; confirm({ title: startType === 0 ? '确定要发起外包吗?' : '确定要提交供应商信息吗?', content: startType === 0 ? '高于总部价格,费用个人承担' : '确定提交供应商信息后,不可修改', onOk() { return new Promise((resolve, reject) => { _this.setState({ sureOutLoading: true, }) let data = { tid: _this.state.id, orderNo: _this.state.orderNo, type: 1, //分类 0订单 1项目 startType: _this.state.startType, //支付类型 0外包 1供应商 false 0 companyName: _this.state.companyName, amount: _this.state.amount, outsourceRemarks: _this.state.outsourceRemarks, unitNumber: _this.state.unitNumber, unitPrice: _this.state.unitPrice, id: _this.state.refundStatus === 2 ? _this.state.mid : undefined,//被拒绝外包申请时,需要传id } if (_this.state.startType !== 0) { data.actualOfficial = _this.state.containOfficialFees;//0实际已缴费 1实际未缴费 } //refundStatus 0-待审核 ,1-审核通过,2-审核拒绝 审核被驳回时和第一次发起外包时,要填写发起原因 //this.state.startType 0外包 1供应商 //类型为外包时不需要传 发起原因 if ((_this.state.refundStatus === 2 || typeof _this.state.refundStatus === 'undefined') && _this.state.startType !== 1) { data.reason = _this.state.reason } if (_this.state.projectType === 1) { data.patentType = _this.state.patentType; data.patentNameType = _this.state.patentNameType; if (_this.state.patentNameType == 3) { data.patentName = _this.state.patentName; } } if (_this.state.pictureUrl && Array.isArray(_this.state.pictureUrl) && _this.state.pictureUrl.length !== 0) { data.pictureUrl = _this.getUrl(_this.state.pictureUrl).length ? _this.getUrl(_this.state.pictureUrl) : '' } ajaxObj = $.ajax({ method: 'POST', dataType: 'json', crossDomain: false, url: globalConfig.context + '/api/admin/outsourceOrg/outsourceProjectAudit', data: data, }).done( function (data) { _this.setState({ sureOutLoading: false, }) if (!data.error.length) { resolve(); message.success('提交成功!') _this.waiDetail(); _this.thirdTable(_this.state.tid); _this.getSelectOutsourceLog(_this.state.tid); _this.payNodeTable(_this.state.tid) } else { message.warning(data.error[0].message); reject(); } }.bind(_this) ) }).catch((err) => console.log(err)); }, onCancel() { ajaxObj ? ajaxObj.abort() : ''; _this.setState({ sureOutLoading: false, }) }, }); }, handleConfirmDelet(index, resolve = () => { }, reject = () => { }) { this.setState({ loading: true, ThirdListVisible: false, }) let id = ''; if (index === -1) { if (this.state.thirdInfoList.length === 1) { id = this.state.thirdInfoList[0].id } else { this.state.thirdInfoList.map((value, index) => { id += value.id + ','; }) } } else { id = index.id } $.ajax({ url: globalConfig.context + '/api/admin/company/deleteCompany', method: 'post', data: { id: id, }, }).done( function (data) { this.setState({ loading: false, }) if (!data.error.length) { message.success('删除成功!') this.thirdTable(this.state.tid) resolve(); } else { message.warning(data.error[0].message) reject(); } }.bind(this) ) }, // 删除付款节点 payNodeConfirmDeletNew(index, resolve = () => { }, reject = () => { }) { this.setState({ loading: true, PayNodeVisible: false, }) let id = ''; if (index === -1) { this.state.payNodeList.map((value, index) => { id += value.id + ','; }) } else { id = index.id } $.ajax({ url: globalConfig.context + '/api/admin/company/deletePaymentNode', method: 'post', data: { id: id, }, }).done( function (data) { this.setState({ loading: false, }) if (!data.error.length) { message.success('删除成功!') resolve(); this.payNodeTable(this.state.tid) } else { message.warning(data.error[0].message) reject(); } }.bind(this) ) }, orderDetailData(orderNos) { this.setState({ loading: true, }); $.ajax({ method: "get", dataType: "json", crossDomain: false, url: globalConfig.context + "/api/admin/newOrder/getOrderNewDetail", data: { orderNo: orderNos, }, success: function (data) { if (data.error.length || data.data.list == "") { if (data.error && data.error.length) { message.warning(data.error[0].message); this.setState({ loading: false, }); } } else { let thisdata = data.data; this.setState({ orderUid: thisdata.uid, loading: false, userName: thisdata.userName, primaryOrderNo: thisdata.primaryOrder, additionalOrder: thisdata.additionalOrder, contractNo: thisdata.contractNo, orderData: thisdata, isAddition: thisdata.additionalOrder ? true : false, deleteSign: thisdata.deleteSign, contractPictureUrl: thisdata.contractPictureUrl ? splitUrl( thisdata.contractPictureUrl, ",", globalConfig.avatarHost + "/upload" ) : [], }); } }.bind(this), }); }, render() { const { TabPane } = Tabs; const formItemLayout = { labelCol: { span: 8 }, wrapperCol: { span: 14 }, }; let departmentArr = this.state.departmentArr || []; const approvaChildren = approvalOptions.map(i => ( )); return (
{this.state.resVisible ? ( ) : ( "" )} { this.setState({ showModal: false }) }} />
我的外包项目
{ this.setState({ orderNoSearch: e.target.value }); }} /> { this.setState({ contractNoSearch: e.target.value }); }} /> { this.setState({ nameSearch: e.target.value }); }} /> { this.setState({ taskNoSearch: e.target.value }); }} /> this.Cascaders = ref} placeholder="选择部门" height={28} onSel={(e) => { this.setState({ departmenttSearch: JSON.stringify(e) }) }} /> {/* */} { this.setState({ projectStatusSearch: e }) }} /> {/* 更多搜索
订单时间 : { this.setState({ releaseDate: dataString }); }} />
*/}
{/* */}
{this.state.visible ? { this.setState({ visible: false, speVisible: false, modKey: "1", updataSwicth: false, projectSituationVisible: false, }); this.companyReset(); this.loadData(this.state.page); }} >
项目名称: {this.state.taskName} 项目编号: {this.state.id} { this.state.splitStatus === 2 ? '(' + this.state.splitSuper + '-' + this.state.splitId + ')' : '' }
} > {this.state.modKey === "1" ?
{ getProjectName(parseInt(this.state.projectStatus)) } { this.state.projectStatus !== 0 ? : null } {this.state.contractNo}
{getApproval(this.state.approval)} {getLiquidationStatus(this.state.liquidationStatus)} {getProcessStatus(this.state.processStatus, this.state.examineName, this.state.approval)} {this.state.orderNo}
{ this.setState({ formRetrieve: e.target.value }); }} > 未收回 已收回 其他 { { this.setState({ retrieveContent: e.target.value, }); }} /> } {/**/} {/* {*/} {/* this.setState({ taskRefund: e.target.value });*/} {/* }}*/} {/* >*/} {/* 已完成*/} {/* 未完成*/} {/* 其他*/} {/* */} {/**/}
特别说明 (针对项目的特殊情况说明)
备注:
{ this.setState({ specialComment: e.target.value }); }} />
{ // // { // this.setState({ refundContent: e.target.value }); // }} // /> // }

订单负责人信息

{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.orderRemarks}
{/*
*/}

联系信息

{this.state.userName} { this.setState({ legalPerson: e.target.value }); }} ref="commodityQuantity" /> { this.setState({ legalPersonTel: e.target.value }); }} ref="commodityQuantity" /> { this.setState({ contacts: e.target.value }); }} ref="commodityQuantity" /> { this.setState({ contactMobile: e.target.value }); }} ref="commodityQuantity" /> { this.setState({ ProvinceCity: e }); }} /> { this.setState({ postalAddress: e.target.value }); }} ref="commodityQuantity" />
{/*
*/}

项目信息

{/*0通用 1专利 2软著 3审计 4双软 5高新 6商标*/} {/*贯标需要显示*/} { this.state.isIso ?
{ this.state.ifCertificationFee === 1 ? '包含' : '不包含' } {this.state.ifCertificationFee === 1 ? { this.setState({ certificationFee: e.target.value }) }} /> : null} {this.state.ifCertificationFee === 1 ? : null} {this.state.ifCertificationFee === 1 ? { this.setState({ certificationCorporate: e.target.value }) }} ref="commodityQuantity" /> : null}
: null } {this.state.splitStatus == 2 ? this.state.splitSuper + "-" + this.state.splitId : this.state.id} {this.state.taskName} {/**/} {/* {*/} {/* this.setState({ taskStatus: e });*/} {/* }}*/} {/* >*/} {/* {taskStatus.map(function (item) {*/} {/* return (*/} {/* */} {/* {item.key}*/} {/* */} {/* );*/} {/* })}*/} {/* */} {/**/} {this.state.cname} {this.state.certificateNumber}

申报系统账户信息

{/*注:仅技术部可见*/} { this.setState({ declareUser: e.target.value }); }} /> { this.setState({ declarePwd: e.target.value }); }} />

项目申报进度

{/*专利显示 bpType: 0 正常 1专利 2软著 3审计 4双软 5高新 6商标*/} { this.state.bpType === 1 || this.state.bpType === 6 ?
{ this.setState({ highTechStatus: e.target.value }) }} > { this.xiangqing(this.state.id) }} onChange={(key, value) => { if (key === 'acceptCount') { this.setState({ acceptCount: value }) } if (key === 'certificatesCount') { this.setState({ certificatesCount: value }) } if (key === 'rejectCount') { this.setState({ rejectCount: value }) } }} />
:
{/*高新显示 bpType: 0 正常 1专利 2软著 3审计 4双软 5高新 6商标*/} {this.state.bpType === 5 ? { this.setState({ spotCheckStatus: e.target.value }) }} > 是,未通过 是,通过 : null} {this.state.bpType === 5 ? : null} {this.state.bpType === 5 ? { this.setState({ setUpStatus: e.target.value }) }} > : null} {this.state.bpType === 5 ? {this.state.setUpStatus === 1 ? { }} value={ this.state.setUpTime ? moment(this.state.setUpTime) : null } onChange={(data, dataString) => { this.setState({ setUpTime: dataString }) }} /> : null} : null} {/*高新和科技项目显示 bpType: 0 正常 1专利 2软著 3审计 4双软 5高新 6商标*/} {/*sort: 3 科技项目 6: 会员*/} {(this.state.bpType === 5 || this.state.sort === 3) && } {/*只有科技项目才有是否到款*/} {/*cSort: 3 科技项目 6: 会员*/} {this.state.sort === 3 && { this.setState({ arrivalMoney: e.target.value }); }} > 未到企业 已到企业 }
}
{this.state.bpType !== 1 && this.state.bpType !== 6 ?
{ this.setState({ attachmentUrl: e }); }} pictureUrl={this.state.attachmentUrl} visible={this.props.visible} data={{ sign: "order_task_file", url: "/api/admin/orderProject/uploadOrderTaskFile", number: 8, }} />
: null} {this.state.bpType !== 1 && this.state.bpType !== 6 ?
{ let len = this.state.taskCommentData.length; if (e.target.value.slice(0, len) !== this.state.taskCommentData) { message.warning('项目说明不允许删除与修改已存在的内容'); return; } this.setState({ taskComment: e.target.value }); }} />
: null}

项目业务

{this.state.processStatus == 0 ? ( ) : ( "" )}
:
} {this.state.visible && this.state.modKey === '2' ?
{ this.state.refundStatus !== 0 && this.state.refundStatus !== 1 ? (
* 类型 } > { let _this = this; if (this.state.thirdInfoList.length > 0) { confirm({ title: '确定要切换吗?', content: '切换将删除所有第三信息和付款节点', onOk() { return new Promise((resolve, reject) => { _this.setState({ startType: 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({ startType: e.target.value }, () => { this.projectTypeTabContent(this.state.projectType); }) } }} > 外包(不走总部) 供应商信息
{/* 专利类型 */}
* 专利类型 } > { 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); }) } }} > 专利申请/变更/转让 专利买卖
* 专利名称 } > { 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); }) } }} > 实用新型专利 发明专利 外观专利 {/**/} {/* 其他*/} {/* {*/} {/* this.setState({*/} {/* patentName: e.target.value,*/} {/* })*/} {/* }}*/} {/* placeholder="请填写专利名称"*/} {/* />*/} {/**/}
{/*外包类型无此选项*/} {this.state.startType !== 0 && this.state.projectType === 1 ?
官费}> { this.state.patentType === 1 ? { this.setState({ containOfficialFees: e.target.value }) }} > 实际已缴费 实际未缴费 : { this.xiangqing(this.state.id); }} /> }
:
} {/* 第三方信息专利 */}
第三方信息 金额总计(万元): {this.state.allTotalAmount}
{/*如果是软著类或者专利类的专利申请,隐藏付款节点 但当为外包类型时,无需隐藏*/} {/*this.state.startType 0外包 1供应商*/}
付款节点
{/*如果是软著类或者专利类的专利申请,隐藏付款节点 但当为外包类型时,无需隐藏*/}
*备注 } >