import React from "react"; import $ from "jquery/src/ajax"; import "@/manageCenter/financialManage/distribute/public.less"; import { Button, Form, Input, Select, Spin, Table, message, Modal, Tabs, Tag, Tooltip, } from "antd"; import Assign from "@/manageCenter/publicComponent/assign"; import ResolutionDetail from "@/resolutionDetail"; import OrderRiZi from "@/orderRiZi.jsx"; import { getProcessStatus, getLiquidationStatus, getApprovedState, splitUrl, getProjectName, getboutique, ShowModal, } from "@/tools"; import ShowModalDiv from "@/showModal.jsx"; // import ResolutionPro from "../task/resolutionPro"; const FormItem = Form.Item; const { TabPane } = Tabs; const PersonnelAll = 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: 1, //经理 name: this.state.nameSearch, //客户名称 orderNo: this.state.orderNoSearch, //订单编号 taskId: this.state.taskNoSearch, //任务编号 deps: this.state.departmenttSearch, //订单部门 taskStatus: this.state.taskStatus, //任务状态 adminName: this.state.adminName, //任务受理人 outsource: 1, }, 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]; if (thisdata.splitList) { thisdata.splitList.forEach((item) => { item.key = item.id; }); } theArr.push({ key: thisdata.id, 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, //分配时间 commodityQuantity: thisdata.commodityQuantity, //数量 userName: thisdata.userName, //用户名 depName: thisdata.depName, //部门名称 splitStatus: thisdata.splitStatus, //拆分状态 splitList: thisdata.splitList, }); } } 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 { searchMore: true, assignVisible: false, releaseDate: [], roleName: "", boHuivisible: false, departmentArr: [], selectedRowKeys: [], selectedRows: [], 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 + "条数据"; }, }, columns: [ { title: "任务编号", dataIndex: "id", key: "id", }, { title: "任务名称", dataIndex: "taskName", key: "taskName", }, { title: "订单编号", dataIndex: "orderNo", key: "orderNo", }, { title: "业务类别", dataIndex: "cname", key: "cname", }, { title: "客户名称", dataIndex: "userName", key: "userName", width: 150, render: (text) => { return (
{text}
) }, }, { title: "项目状态", dataIndex: "projectStatus", key: "projectStatus", render: (text) => { return getProjectName(text); }, }, { title: "分配时间", dataIndex: "taskDate", key: "taskDate", }, { title: "任务数量", dataIndex: "commodityQuantity", key: "commodityQuantity", render: (text, record) => { if (record.splitStatus == 1) { return ( {text}{" "} 已拆 ); } else { return text; } }, }, { title: "订单部门", dataIndex: "depName", key: "depName", }, { title: "操作", dataIndex: "caozuo", key: "caouzo", render: (text, record) => { return (
{record.splitStatus == 0 ? ( ) : ( "" )}
); }, }, ], 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", }, { 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}
) }, }, ], dataSourceX: [], resVisible: false, }; }, /* 分派 */ evaluate(record, nub) { this.state.assignData = record; this.setState( { nub, }, () => { this.setState({ assignVisible: true, }); } ); }, componentWillMount() { this.departmentList(); this.loadData(); }, tableRowClick(record) { this.state.RowData = record; this.setState({ visible: true, }); this.xiangqing(record.orderNo); this.xiangmu(record.orderNo); }, // 拆分详细 showRes(record) { this.setState({ resVisible: true, resRecord: record, }); }, resCancel() { this.setState({ resVisible: false, }); }, //订单详情 xiangqing(orderNos) { $.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); } } else { let thisdata = data.data; this.setState({ orderNo: thisdata.orderNo, //订单编号 contractNo: thisdata.contractNo, //合同编号 userName: thisdata.userName, //客户名称 signDate: thisdata.signDate, //签单时间 processStatus: thisdata.processStatus, //流程状态 liquidationStatus: thisdata.liquidationStatus, //结算状态 contacts: thisdata.contacts, //企业联系人 contactMobile: thisdata.contactMobile, //联系人电话 legalPerson: thisdata.legalPerson, //法人 legalPersonTel: thisdata.legalPersonTel, //法人电话 firstAmount: thisdata.firstAmount, //签单金额 totalAmount: thisdata.totalAmount, //首付金额 approval: thisdata.approval, //特批状态 settlementAmount: thisdata.settlementAmount, //已收款项 orderRemarks: thisdata.orderRemarks, //订单留言 orgCodeUrl: thisdata.contractPictureUrl ? splitUrl( thisdata.contractPictureUrl, ",", globalConfig.avatarHost + "/upload" ) : [], //图片地址 replenishUrl: thisdata.agreementUrl ? splitUrl( thisdata.agreementUrl, ",", globalConfig.avatarHost + "/upload" ) : [], 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, //订单部门 }); } }.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) ); }, //关闭详情 visitCancel() { this.setState({ visible: false, }); this.loadData(); }, visitOk() { this.setState({ visible: 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); } }, nextCancel() { this.setState({ addnextVisible: false, }); }, //点击打卡项目详情 tableRowClickX(record) { 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, }); }, search() { this.loadData(); }, reset() { this.state.nameSearch = ""; this.state.releaseDate = []; this.state.orderNoSearch = ""; this.state.taskNoSearch = ""; this.state.departmenttSearch = undefined; this.state.distribution = undefined; this.loadData(this.state.page); }, 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) ); }, resolutionCancel() { this.setState({ resolutionVisible: false, }); }, 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(); }, render() { const expandedRowRender = (e) => { const data = e.splitList; let columns = []; if (e.splitList instanceof Array && e.splitList.length) { columns = [ { title: "任务编号", dataIndex: "splitSuper", key: "splitSuper", render: (text, record) => { return text + "-" + record.splitId; }, }, { title: "任务名称", dataIndex: "taskName", key: "taskName", }, { title: "订单编号", dataIndex: "orderNo", key: "orderNo", }, { title: "业务类别", dataIndex: "cname", key: "cname", }, { title: "客户名称", dataIndex: "userName", key: "userName", width: 150, render: (text) => { return (
{text}
) }, }, { title: "项目状态", dataIndex: "projectStatus", key: "projectStatus", render: (text) => { return getProjectName(text); }, }, { title: "分配时间", dataIndex: "taskDate", key: "taskDate", }, { title: "任务数量", dataIndex: "commodityQuantity", key: "commodityQuantity", }, { title: "订单部门", dataIndex: "depName", key: "depName", }, { title: "拆分操作人", dataIndex: "splitAname", key: "splitAname", }, { title: "项目负责人", dataIndex: "receiverName", key: "receiverName", }, { title: "拆分时间", dataIndex: "splitTimes", key: "splitTimes", }, { title: "操作", dataIndex: "caozuo", key: "caouzo", render: (text, record) => { return (
); }, }, ]; return ( ); } else { columns = []; return (

此项目暂未拆分

); } }; const rowSelection = { selectedRowKeys: this.state.selectedRowKeys, onChange: (selectedRowKeys, selectedRows) => { this.setState({ selectedRows: selectedRows.slice(-1), selectedRowKeys: selectedRowKeys.slice(-1), }); }, }; const formItemLayout = { labelCol: { span: 8 }, wrapperCol: { span: 14 }, }; let departmentArr = this.state.departmentArr || []; return (
123
); }, }); export default PersonnelAll;