import React from 'react' import $ from 'jquery' import moment from 'moment' import Picture from '@/manageCenter/publicComponent/picture' import '@/manageCenter/financialManage/distribute/public.less' import '@/manageCenter/financialManage/distribute/shouKuan.less' import OrderDetail from '../../order/orderNew/changeComponent/orderDetail' import ResolutionDetail from '@/resolutionDetail' import { Button, Form, Input, Select, Spin, Table, message, DatePicker, Modal, Radio, Cascader, Popconfirm, Switch, Tabs, Col, Icon, Upload, AutoComplete, Tag, } 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, ShowModal, getRefundStatus, } from '@/tools' import { taskStatus, projectStatus, cuiJieDian } from '@/dataDic.js' import ShowModalDiv from '@/showModal.jsx' import CheckProject from '../../components/checkProject' import NewSupplier from './newSupplier'; const confirm = Modal.confirm const FormItem = Form.Item const { TabPane } = Tabs const { TextArea } = Input const { Option } = Select const { MonthPicker, RangePicker } = DatePicker const PicturesWall = React.createClass({ getInitialState() { return { previewVisible: false, previewImage: '', fileList: [], } }, handleCancel() { this.setState({ previewVisible: false, }) }, handlePreview(file) { this.setState({ previewImage: file.url || file.thumbUrl, previewVisible: true, }) }, 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 { previewVisible, previewImage, fileList } = this.state const uploadButton = (
点击上传
) return (
{uploadButton} example
) }, }) const Task = React.createClass({ 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, //部门名称 projectType: thisdata.projectType, //0正常 1专利 2软著 3审计 commodityQuantity: thisdata.commodityQuantity, //项目数量 hours: thisdata.hours, contractNo: thisdata.contractNo, approval: thisdata.approval, //特批状态 outsourceStatus: thisdata.outsourceStatus, //外包审核状态 outsourceType: thisdata.outsourceType, //外包审核状态 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) ) }, getInitialState() { return { projectType: '', //项目分类 paySubject: [], paySubjectName: '', //付款科目名称 PayNodeCompany: [], thirdMaterial: 0, //第三方信息材料 0-无 1-有 thirdUrgent: 0, //第三方信息加急状态 thirdCompanyName: '', thirdUnitPrice: '', currentCompanyName: '', //当前选中供应商名称 thirdQuantity: 1, payNodeQuantity: 1, thirdRemarks: '', customerArr: [], currentTotalPrice: 0, //当前修改页面的总价 saveThirdList: [], orderData: [], orderNo: '', jiedian: [], jiedianNew: [], timeVisible: false, ThirdListVisible: false, PayNodeVisible: false, //新增付款节点 searchMore: true, assignVisible: false, releaseDate: [], patentType: -1, patentNameType: -1, startType: 0, //外包供应商类型 // 判断是否是退回给咨询师经理 flag: false, roleName: '', activeKey: '1', //特批状态搜索 approvalSearch: undefined, testFlag: true, boHuivisible: false, selectedRowKeys: [], avisible: false, departmentArr: [], selectedRows: [], attachmentUrl: [], contactList: [], paginations: false, loading: 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) => { return text && text.length > 8 ? text.substr(0, 8) + '…' : text }, }, { title: '项目数量', dataIndex: 'commodityQuantity', key: 'commodityQuantity', }, { title: '订单编号', dataIndex: 'orderNo', key: 'orderNo', }, { title: '合同编号', dataIndex: 'contractNo', key: 'contractNo', }, { title: '业务类别', dataIndex: 'cname', key: 'cname', }, { title: '客户名称', dataIndex: 'userName', key: 'userName', className: 'userName', }, { title: '分配状态', dataIndex: 'taskStatus', key: 'taskStatus', render: (text) => { return getTaskStatus(text) }, }, { title: '项目状态', dataIndex: 'projectStatus', key: 'projectStatus', render: (text) => { return getProjectStatus(text) }, }, { title: '审核状态', dataIndex: 'outsourceStatus', key: 'outsourceStatus', render: (text,record) => { if(record.outsourceType === 1){ return '供应商' }else{ if (text === 0) { return 外包待审核 } else if (text === 1) { return 外包已通过 } else if (text === 2) { return 外包被驳回 } else { return
/
} return text } }, }, { title: '分配时间', dataIndex: 'taskDate', key: 'taskDate', }, { title: '订单部门', dataIndex: 'depName', key: 'depName', }, { title: '累计工时(小时)', dataIndex: 'hours', key: 'hours', }, { title: '操作', dataIndex: 'caozuo', key: 'caozuo', render: (text, record) => { return (
) }, }, ], dataSource: [], searchTime: [], 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', }, ], 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 ? ( '' ) : ( )}
) }, }, ], // 专利 ContactsListsNew: [], //付款节点表头 PayNodeTableColunms: [], } }, /* 分派 */ evaluate(record, nub, flag) { this.setState( { nub: nub, assignData: record, flag, }, () => { this.setState({ assignVisible: true, }) } ) }, componentWillMount() { this.departmentList() this.loadData() }, componentDidMount() { this.setColor() }, //用于判断 第三方信息表格显示 projectTypeTabContent(projectType) { if(projectType === 0 || !projectType){ //0正常 1专利 2软著 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 {text} } }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: '总价(万元)', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { if (text) { return {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 {text} } }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: '总价(万元)', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { if (text) { return *** } }, }, { 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 {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) => { if (text) { return {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{ 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 {text} } }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: '总价(万元)', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { if (text) { return {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 {text} } }, }, { title: '数量', dataIndex: 'quantity', key: 'quantity', render: (text, record) => { if (text) { return {text} } }, }, { title: '总价(万元)', dataIndex: 'totalAmount', key: 'totalAmount', render: (text, record) => { if (text) { return *** } }, }, { 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) => { if (text) { return {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 {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="不删除" >
) }, }, ], }) }, setColor() { $('.userName span').after( "(软著数/下证数)" ) }, // 获取csort下的数据 getCsortData(cSort) { cuiJieDian.map((item) => { if (item.value == cSort) { console.log(item.children) this.setState({ paySubject: item.children, }) } }) }, 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, }) } this.setState({ projectType: record.projectType }) this.xiangqing(record.id, record.taskName) this.xiangqings(record.orderNo) this.xiangmu(record.orderNo) this.loaduserss(record) // 获取第三方信息表格 this.thirdTable(record.id) //获取支付节点信息表格 this.payNodeTable(record.id) // 获取Csort this.getCsortData(localStorage.getItem('cSort')) this.projectTypeTabContent(record.projectType) console.log('项目类型',record.projectType) }, //点击修改项目详情 tijiaoOk() { 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: this.state.projectStatus, //项目状态 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, //证书编号 status: this.state.status, //状态 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, }, }).done( function (data) { this.setState({ loading: false, }) if (!data.error.length) { message.success('保存成功!') 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) { $.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({ 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, }) } }.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({ 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) theArr.push({ key: i, id: thisdata.id, orderNo: thisdata.orderNo, //订单编号 commodityId: thisdata.commodityId, //项目ID commodityName: thisdata.commodityName, //项目名称 cname: thisdata.cname, //项目类别 commodityPrice: thisdata.commodityPrice, //项目价格 commodityQuantity: thisdata.commodityQuantity, //项目数量 main: thisdata.main, //是否为主要项目 taskComment: thisdata.taskComment, //项目说明 contacts: thisdata.contacts, //联系人 contactsMobile: thisdata.contactsMobile, //联系人电话 taskStatus: thisdata.taskStatus, //是否分配 contractNo: thisdata.contractNo, //合同编号 certificateNumber: thisdata.certificateNumber, splitStatus: thisdata.splitStatus, officialCost: thisdata.officialCost, costReduction: thisdata.costReduction, type: thisdata.type, cSort: thisdata.cSort, }) } } this.setState({ dataSourceX: theArr, type: theArr[0].type, cSort: theArr[0].cSort, }) }.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, } window.location.href = globalConfig.context + '/api/admin/orderProject/exporProjectList?' + $.param(data) }, //关闭详情 visitCancel() { this.setState({ visible: false, speVisible: false, activeKey: '1', }) this.reset() }, visitOk() { this.setState({ visible: false, speVisible: false, }) this.reset() }, 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, tid: record.id, }) } }.bind(this), }).always( function () { this.setState({ loading: false, }) }.bind(this) ) }, // 拆分详细 showRes(record) { this.setState({ resVisible: true, resRecord: record, }) }, resCancel() { this.setState({ resVisible: false, }) }, //下证信息保存 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) ) }, //下证信息删除 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 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) ) }, //关闭操作工时 visitCancelA() { this.setState({ visibleA: false, }) }, nextCancel() { this.setState({ addnextVisible: false, displayFees: 'none', officialCost: '', //是否有官费 costReduction: '', //是否有费减 }) }, //点击打卡项目详情 tableRowClickX(record) { if (record.type == '1') { this.setState({ displayFees: 'block', costReduction: record.costReduction, officialCost: record.officialCost, }) } this.setState({ jid: record.id, //项目ID kid: record.commodityId, //商品ID commodityName: record.commodityName, //金额 commodityPrice: record.commodityPrice, //金额 commodityQuantity: record.commodityQuantity, //数量 taskComment: record.taskComment, //备注 main: record.main.toString(), //是否为主要 addnextVisible: true, addState: 0, }) }, //关闭添加工时 noCancel() { this.setState({ lookVisible: false, }) this.reset() }, search() { this.loadData() }, reset(flag) { if (flag) { this.state.nameSearch = '' this.state.orderNoSearch = '' this.state.contractNoSearch = undefined this.state.taskNoSearch = '' this.state.departmenttSearch = undefined this.state.projectStatusSearch = undefined //项目状态 this.state.approvalSearch = undefined this.state.outsourceStatusSearch = [] } this.state.id = '' //项目编号 this.state.orderNo = '' //订单编号 this.state.projectStatus = undefined //项目状态 this.state.taskStatuSearch = undefined //项目状态 this.state.taskComment = '' //说明 this.state.startDate = '' //启动日期 this.state.endDate = '' //结束日期 this.state.acceptDate = '' //受理日期 this.state.reviewDate = '' //评审日期 this.state.publicityDate = '' //公示日期 this.state.licenceDate = '' //发证日期 this.state.partyTimes = '' //付款时间 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.taskComment = '' //说明 this.state.releaseDate = [] this.state.outsourceName = '' this.state.outsourcePrice = undefined this.state.distribution = undefined this.loadData(this.state.page) this.state.companyName = undefined this.state.unitPrice = undefined this.state.unitNumber = undefined this.state.amount = undefined this.state.outsourceRemarks = undefined this.state.pictureUrl = [] }, searchSwitch() { this.setState({ searchMore: !this.state.searchMore, }) }, //部门 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) ) }, 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) ) }, showDeleteConfirm(num, fn) { let text = getProjectStatus(num) confirm({ title:

注意

, content: (

当前的项目状态为{text},保存后将触发对应的催款节点!!!您确定保存?

), okText: '确定', okType: 'danger', cancelText: '取消', onOk() { fn() }, onCancel() {}, }) }, // 项目发起外包 sureOut() { 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 } console.log(this.state.pictureUrl) if (!this.state.pictureUrl && !Array.isArray(this.state.pictureUrl)) { message.warning('合同扫描件不能为空') return } if(this.state.pictureUrl.length === 0){ message.warning('合同扫描件不能为空') return } this.setState({ loading: 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, pictureUrl: this.getUrl(this.state.pictureUrl).length ? this.getUrl(this.state.pictureUrl) : '', outsourceRemarks: this.state.outsourceRemarks, unitNumber: this.state.unitNumber, unitPrice: this.state.unitPrice, id: this.state.refundStatus == 2 ? this.state.mid : undefined, } 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; } } $.ajax({ method: 'POST', dataType: 'json', crossDomain: false, url: globalConfig.context + '/api/admin/outsourceOrg/outsourceProjectAudit', data: data, }).done( function (data) { this.setState({ loading: false, }) if (!data.error.length) { message.success('提交成功!') this.visitCancel() } else { message.warning(data.error[0].message) } }.bind(this) ) }, callback(e) { this.setState({ activeKey: e, }) if (e == 3) { this.orderDetailData(this.state.orderNo) this.xiangmu(this.state.orderNo) this.jiedian(this.state.orderNo) this.jiedianNew(this.state.orderNo) } }, 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 }, waiDetail() { let url = window.location.href.substring(7) this.setState({ loading: 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) { this.setState({ loading: false, }) if (!data.error.length && data.data) { this.setState({ startType: data.data.startType, //类型 patentType: data.data.patentType, //专利类型 patentNameType: data.data.patentNameType, //专利名称类型 patentName: data.data.patentName, //专利名称 outsourceRemarks: data.data.outsourceRemarks, remarks: data.data.remarks, companyName: data.data.companyName, amount: data.data.amount, mid: data.data.id, unitPrice: data.data.unitPrice, refundStatus: data.data.refundStatus, unitNumber: data.data.unitNumber, pictureUrl: data.data.pictureUrl ? splitUrl( data.data.pictureUrl, ',', globalConfig.avatarHost + '/upload', url ) : [], //图片地址 createTimes: data.data.createTimes, auditTimes: data.data.auditTimes, }) } else if (data.error && data.error.length) { message.warning(data.error[0].message) } else if (!data.data) { this.setState({ refundStatus: undefined, }) } }.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 == 3) { this.orderDetailData(this.state.orderNo) this.xiangmu(this.state.orderNo) this.jiedian(this.state.orderNo) this.jiedianNew(this.state.orderNo) } if (key == 2) { this.waiDetail() } }, //节点列表 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), }) }, 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 theArr.push({ key: i, dunSubject: thisData.dunSubject ? thisData.dunSubject.toString() : '', //催款科目 id: thisData.id, //节点Id tid: thisData.tid, //节点指定的第三方id money: thisData.money, //催款金额 // orderNo: record ? record.orderNo : this.props.datauser.orderNo, commodityName: thisData.commodityName, projectType: thisData.projectType, dunTypeName: thisData.dunTypeName, status: thisData.status, waitDay: thisData.waitDay, effectiveCount: thisData.effectiveCount, startDate: thisData.startDate, dunType: thisData.dunType, appropriationRatio: thisData.appropriationRatio, customizeName: thisData.customizeName, customizeTimes: thisData.customizeTimes, }) } if (!totalCui) { totalCui = 0 } totalCui = (Math.round(totalCui * 10000) / 10000).toFixed(4) this.setState({ jiedianNew: theArr, totalCui, }) } }.bind(this), }).always( function () { this.setState({ loading: false, }) }.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({ loading: false, userName: thisdata.userName, primaryOrderNo: thisdata.primaryOrder, additionalOrder: thisdata.additionalOrder, contractNo: thisdata.contractNo, orderData: thisdata, isAddition: thisdata.additionalOrder ? true : false, contractPictureUrl: thisdata.contractPictureUrl ? splitUrl( thisdata.contractPictureUrl, ',', globalConfig.avatarHost + '/upload' ) : [], }) } }.bind(this), }) }, //点击新增供应商 addcontactNew() { this.state.contactListNew.push({ key: this.state.contactListNew.length, money: '', dunSubject: undefined, orderNo: this.state.orderNo, dunTarget: this.state.kehuId, }) this.setState({ contactListNew: this.state.contactListNew, cuiFlag: true, }) }, //查看第三方信息表格 thirdTable(id) { this.setState({ loadData: 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 patentNameType = 0; for (let i = 0; i < arr.length; i++) { thisData = arr[i] allTotalAmount = (allTotalAmount * 10000 + thisData.totalAmount * 10000) / 10000 companyNameArr.push(thisData.companyName) theArr.push({ key: i, id: thisData.id, //节点Id tid: thisData.tid, companyName: thisData.companyName, //供应商名称 unitPrice: thisData.unitPrice, //单价 quantity: thisData.quantity, //数量 totalAmount: thisData.totalAmount, //总价 material: thisData.material, //材料 0无 1有 urgent: thisData.urgent, // 0无加急(系统默认)1加急3天 2加急4天 3加急5-10天 4加急11-15天 5加急16-20天 6加急21-25天 7加急26-30天 audit: thisData.audit, //0无审计 1年审 2专审 assets: thisData.assets, //资产 income: thisData.income, //收入 remarks: thisData.remarks, //备注 cid: thisData.cid, //机构id costReduction: thisData.costReduction,//费减 officialCost: thisData.officialCost,//官费 type: thisData.type, //0其他 1专利申请 2专利买卖 patentType: thisData.type, //专利名称类型 0实用新型 1发明专利 2外观专利 3 其他 }) type=thisData.type patentNameType= thisData.patentNameType } if (!allTotalAmount) { allTotalAmount = 0 } for(let d=0;d{ this.projectTypeTabContent(this.state.projectType); }) } }.bind(this), }).always( function () { this.setState({ loading: false, }) }.bind(this) ) }, payNodeTable(id) { this.setState({ loadData: 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 nodeId: thisData.id, //付款节点Id tid: thisData.tid, 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 { if (item.companyName === this.state.thirdCompanyName) { currentTotalPrice = num ? item.unitPrice * num : item.quantity * item.unitPrice; currentTotalPrice = currentTotalPrice.toFixed(4); quantity = num ? num : item.quantity; unitPrice = item.unitPrice; } }) this.setState({ payNodeQuantity: num ? num : quantity, }) if(this.state.projectType !== 2){ this.setState({ currentTotalPrice: currentTotalPrice, thirdUnitPrice: unitPrice }) } }, // 保存供应商信息 handleCancelq() { let api if (this.state.ThirdId) { //修改 api = '/api/admin/company/updateCompany' } else { //新增 api = '/api/admin/company/addCompany' } let customerId = 0; let isHave =this.state.customerArr.some((value)=>{ if(value.companyName === this.state.thirdCompanyName){ customerId = value.id return true; } }); if(!isHave && this.state.projectType !== 0){ message.warning('请输入正确的供应商名称') return; } this.setState({ loading: true, }) // material: this.state.thirdMaterial, //材料 // urgent: this.state.thirdUrgent, //加急 // unitPrice: this.state.thirdUnitPrice, //单价 let data = { id: this.state.ThirdId, //id tid: this.state.tid, //订单编号 companyName: this.state.thirdCompanyName, //第三方名称 quantity: this.state.thirdQuantity, //数量 // totalAmount: this.state.currentTotalPrice, //总价 remarks: this.state.thirdRemarks, //备注 } if(this.state.projectType === 0){ data.unitPrice = this.state.thirdUnitPrice; } if(isHave){ data.cid = customerId ////公司id } $.ajax({ url: globalConfig.context + api, method: 'post', dataType: 'json', crossDomain: false, data: data, }).done( function (data) { this.setState({ loading: false, }) if (!data.error.length) { message.success('保存成功!') this.setState({ ThirdId: '', ThirdListVisible: false, thirdCompanyName: '', //第三方名称 thirdUnitPrice: '', //单价 thirdQuantity: '', //数量 currentTotalPrice: '', //总价 thirdRemarks: '', thirdUrgent: 0, }) // this.visitCancel(); this.thirdTable(this.state.tid) } else { message.warning(data.error[0].message) } }.bind(this) ) }, //保存付款节点 savePayNode() { let api if (this.state.ThirdId) { //修改 api = '/api/admin/company/updatePaymentNode' } else { //新增 api = '/api/admin/company/addPaymentNode' } // totalAmount: this.state.currentTotalPrice, //总价 // partyAmount: this.state.partyAmount, //付款金额 // let customerId=0; this.state.PayNodeCompany.some((value)=>{ if(value.companyName === this.state.thirdCompanyName){ customerId = value.id return true; } }); if(!this.state.thirdCompanyName){ message.error('请选择供应商名称'); return; } if(!this.state.paySubjectName){ message.error('请选择付款科目'); return; } if(!this.state.payNodeQuantity){ message.error('请输入数量'); return; } let data = { id: this.state.ThirdId, //id tid: this.state.tid, //订单编号 cid: customerId,//对应的第三方信息 companyName: this.state.thirdCompanyName.split('-')[0], //第三方名称 quantity: this.state.payNodeQuantity, //数量 dunType: this.state.dunType, //催款节点 projectType: this.state.cSort, //项目分类 } if(this.state.paySubjectName === '0'){ if(!this.state.partyTimes){ message.error('请选择付款时间'); return; } data.partyTimes = this.state.partyTimes //付款时间 } if(this.state.projectType !== 2){ //其他类型 0正常 1专利 2软著 3审计 data.totalAmount = this.state.currentTotalPrice //总价 data.unitPrice = this.state.thirdUnitPrice //单价 } this.setState({ loading: true, }) $.ajax({ url: globalConfig.context + api, method: 'post', dataType: 'json', crossDomain: false, data: data, }).done( function (data) { this.setState({ loading: false, }) if (!data.error.length) { message.success('保存成功!') this.setState({ ThirdId: '', PayNodeVisible: false, thirdCompanyName: '', //第三方名称 paySubjectName: '', //付款科目名称 thirdUnitPrice: '', //单价 thirdQuantity: '', //数量 payNodeQuantity: 1, //付款节点数量 currentTotalPrice: '', //总价 partyAmount: '', //付款金额 partyTimes: '', //付款时间 dunType: '', //催款节点 }) // this.visitCancel(); this.payNodeTable(this.state.tid) } else { message.warning(data.error[0].message) } }.bind(this) ) }, // 取消 handleCancelclose() { this.setState({ PayNodeVisible: false, ThirdListVisible: false, thirdCompanyName: '', //第三方名称 paySubjectName: '', //付款科目名称 thirdUnitPrice: '', //单价 partyTimes: '', thirdQuantity: 1, //数量 payNodeQuantity: 1, currentTotalPrice: '', //总价 thirdRemarks: '', ThirdId: '', thirdUrgent: 0, //加急状态 }) }, // 删除供应商信息 confirmDeletNew(index,resolve=()=>{},reject=()=>{}) { this.setState({ loading: true, ThirdListVisible: false, }) let id = ''; if(index === -1){ 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) ) }, //点击供应商详情 tableRowClickOne(record) { this.setState({ ThirdListVisible: true, ThirdId: record.id, //供应商id thirdCompanyName: record.companyName, //第三方名称 thirdUnitPrice: record.unitPrice, //单价 thirdQuantity: record.quantity, //数量 currentTotalPrice: record.totalAmount, //总价 thirdMaterial: record.material, //有无材料 thirdUrgent: record.urgent, //加急情况 thirdRemarks: record.remarks, }) }, //点击付款节点详情 payNodeTableRowClickOne(record) { this.setState({ PayNodeVisible: true, ThirdId: record.id, //供应商id thirdCompanyName: record.companyName, //第三方名称 thirdUnitPrice: record.unitPrice, //单价 thirdQuantity: record.quantity, //供应商数量 payNodeQuantity: record.quantity, //付款节点数量 currentTotalPrice: record.totalAmount, //总价 partyTimes: record.partyTimes, paySubjectName: record.dunType, }) }, render() { const formItemLayout = { labelCol: { span: 8 }, wrapperCol: { span: 14 }, } let departmentArr = this.state.departmentArr || [] return (
{this.state.resVisible ? ( ) : ( '' )}
项目任务
{ this.setState({ nameSearch: e.target.value }) }} /> { this.setState({ orderNoSearch: e.target.value }) }} /> { this.setState({ contractNoSearch: e.target.value }) }} /> { this.setState({ taskNoSearch: e.target.value }) }} /> {/* 更多搜索
订单时间 : { this.setState({ releaseDate: dataString }); }} />
*/}
{/* */}
{/*
{ this.setState({ nameSearch: e.target.value }); }} /> { this.setState({ orderNoSearch: e.target.value }); }} /> { this.setState({ taskNoSearch: e.target.value }); }} /> 更多搜索
订单时间 : { this.setState({ releaseDate: dataString }); }} />
*/}
{this.state.visible ? { this.callback(e) if (e == 2) { this.waiDetail(); this.thirdTable(this.state.tid); this.payNodeTable(this.state.tid) } }} >
{ this.setState({ status: e.target.value }) }} > 开启 暂停 {this.state.contractNo}
{getApproval(this.state.approval)} {getLiquidationStatus(this.state.liquidationStatus)} {getProcessStatus(this.state.processStatus)} {this.state.orderNo}
{ this.setState({ formRetrieve: e.target.value }) }} > 未收回 已收回 其他 { this.setState({ taskRefund: e.target.value }) }} > 已完成 未完成 其他
{ { this.setState({ retrieveContent: 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.setState({ outsourceName: e.target.value, }) }} placeholder="请输入外包公司" style={{ width: '200px' }} /> { this.setState({ outsourcePrice: e.target.value, }) }} placeholder="请输入外包成本" style={{ width: '200px' }} />
{/*
*/}

联系信息

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

项目信息

{this.state.splitStatus == 2 ? this.state.splitSuper + '-' + this.state.splitId : this.state.id} {this.state.taskName} {this.state.cname} { this.setState({ certificateNumber: e.target.value, }) }} ref="commodityQuantity" />

申报系统账户信息

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

项目申报进度

{}} value={ this.state.startDate ? moment(this.state.startDate) : null } onChange={(data, dataString) => { this.setState({ startDate: dataString }) }} /> {}} value={ this.state.endDate ? moment(this.state.endDate) : null } onChange={(data, dataString) => { this.setState({ endDate: dataString }) }} /> {}} value={ this.state.acceptDate ? moment(this.state.acceptDate) : null } onChange={(data, dataString) => { this.setState({ acceptDate: dataString }) }} /> {}} value={ this.state.reviewDate ? moment(this.state.reviewDate) : null } onChange={(data, dataString) => { this.setState({ reviewDate: dataString }) }} /> {}} value={ this.state.publicityDate ? moment(this.state.publicityDate) : null } onChange={(data, dataString) => { this.setState({ publicityDate: dataString }) }} /> {}} value={ this.state.licenceDate ? moment(this.state.licenceDate) : null } onChange={(data, dataString) => { this.setState({ licenceDate: dataString }) }} /> { this.setState({ setUpAmount: e.target.value }) }} ref="commodityQuantity" /> { this.setState({ arrivalMoney: e.target.value }) }} > 未到企业 已到企业
{ this.setState({ attachmentUrl: e }) }} pictureUrl={this.state.attachmentUrl} visible={this.props.visible} data={{ sign: 'order_task_file', url: '/api/admin/orderProject/uploadOrderTaskFile', number: 8, }} />
{ this.setState({ taskComment: e.target.value }) }} />

项目业务

{this.state.processStatus == 0 ? ( ) : ( '' )}
{this.state.refundStatus != 0 && this.state.refundStatus != 1 ? (
* 类型 } > { this.setState({ startType: e.target.value }) }} > 外包(不走总部) 供应商信息
{/* 专利类型 */}
* 专利类型 } > { 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.allTotalAmount}
付款节点
*备注 } >