detailedList.jsx 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368
  1. import React,{ Component } from 'react';
  2. import {
  3. Modal,
  4. Tooltip,
  5. } from "antd";
  6. import './index.less';
  7. import TabelContent from "../../../../common/tabelContent";
  8. import {getApprovedState, getLiquidationStatus, getNewOrderStatus, getProcessStatus} from "../../../../tools";
  9. class DetailedList extends Component{
  10. constructor(props) {
  11. super(props);
  12. this.state= {
  13. columns: [
  14. {
  15. title: "编号",
  16. dataIndex: "key",
  17. key: "key",
  18. width: 120,
  19. },
  20. {
  21. title: "订单部门",
  22. dataIndex: "depName",
  23. key: "depName",
  24. width: 320,
  25. },
  26. {
  27. title: "签单人",
  28. dataIndex: "name",
  29. key: "name",
  30. width: 220,
  31. },
  32. {
  33. title: "总单量(个)",
  34. dataIndex: "quantity",
  35. key: "quantity",
  36. className: 'projectTable',
  37. width: 150,
  38. onCellClick: (record, event) => {
  39. event.stopPropagation();
  40. this.setState({
  41. visible1: true,
  42. aid: record.aid
  43. })
  44. },
  45. },
  46. {
  47. title: "总签单额(万元)",
  48. dataIndex: "total",
  49. key: "total",
  50. className: 'projectTable',
  51. width: 150,
  52. onCellClick: (record, event) => {
  53. event.stopPropagation();
  54. this.setState({
  55. visible1: true,
  56. aid: record.aid
  57. })
  58. },
  59. },
  60. ],
  61. columns1: [
  62. {
  63. title: "合同编号",
  64. dataIndex: "contractNo",
  65. key: "contractNo",
  66. },
  67. {
  68. title: "订单编号",
  69. dataIndex: "orderNo",
  70. key: "orderNo",
  71. },
  72. {
  73. title: "客户名称",
  74. dataIndex: "userName",
  75. key: "userName",
  76. render:text=>{
  77. return (
  78. <Tooltip title={text}>
  79. <div style={{
  80. maxWidth:'150px',
  81. overflow:'hidden',
  82. textOverflow: "ellipsis",
  83. whiteSpace:'nowrap',
  84. }}>{text}</div>
  85. </Tooltip>
  86. )
  87. }
  88. },
  89. {
  90. title: "订单部门",
  91. dataIndex: "depName",
  92. key: "depName",
  93. },
  94. {
  95. title: "下单时间",
  96. dataIndex: "createDate",
  97. key: "createTime",
  98. },
  99. {
  100. title: "合同签订时间",
  101. dataIndex: "signDate",
  102. key: "signDate",
  103. },
  104. {
  105. title: "流程状态",
  106. dataIndex: "processStatus",
  107. key: "processStatus",
  108. render: (text) => {
  109. return getProcessStatus(text);
  110. },
  111. },
  112. {
  113. title: "签单金额(万元)",
  114. dataIndex: "totalAmount",
  115. key: "totalAmount",
  116. },
  117. {
  118. title: "开票金额(万元)",
  119. dataIndex: "invoiceAmount",
  120. key: "invoiceAmount",
  121. },
  122. {
  123. title: "已收款(万元)",
  124. dataIndex: "settlementAmount",
  125. key: "settlementAmount",
  126. },
  127. {
  128. title: "结算状态",
  129. dataIndex: "liquidationStatus",
  130. key: "liquidationStatus",
  131. render: (text) => {
  132. return getLiquidationStatus(text);
  133. },
  134. },
  135. {
  136. title: "是否特批",
  137. dataIndex: "approval",
  138. key: "approval",
  139. render: (text) => {
  140. return getApprovedState(text);
  141. },
  142. },
  143. {
  144. title: "订单状态",
  145. dataIndex: "orderStatus",
  146. key: "orderStatus",
  147. render: (text) => {
  148. return getNewOrderStatus(text);
  149. },
  150. },
  151. {
  152. title: "财务负责人",
  153. dataIndex: "financeName",
  154. key: "financeName",
  155. },
  156. ],
  157. }
  158. }
  159. searchList(){
  160. let arr = [
  161. {
  162. type:'departmentSelect',
  163. dataKey:'depId',
  164. placeholder:'请选择部门'
  165. },
  166. {
  167. type:'times',
  168. title:'下单时间',
  169. dataKey:['startCreate','endCreate'],
  170. },
  171. {
  172. type:'times',
  173. title:'合同时间',
  174. dataKey:['startSign','endSign'],
  175. },
  176. {
  177. type:'select',
  178. dataKey:'sort',
  179. placeholder:'请选择排序',
  180. selectList:[
  181. {
  182. value:'0',
  183. label:'按总金额排序'
  184. },
  185. {
  186. value:'1',
  187. label:'按数量排序'
  188. },
  189. ]
  190. },
  191. ]
  192. return arr;
  193. }
  194. searchList1(){
  195. let arr = [
  196. {
  197. type:'text',
  198. dataKey:'orderNo',
  199. placeholder:'请输入订单编号'
  200. },
  201. {
  202. type:'text',
  203. dataKey:'name',
  204. placeholder:'请输入客户名称'
  205. },
  206. {
  207. type:'departmentSelect',
  208. dataKey:'depId',
  209. placeholder:'请选择部门'
  210. },
  211. {
  212. type:'text',
  213. dataKey:'contractNo',
  214. placeholder:'请输入合同编号'
  215. },
  216. {
  217. type:'select',
  218. dataKey:'liquidationStatus',
  219. placeholder:'请选择结算状态',
  220. selectList:[
  221. {
  222. value:'0',
  223. label:'首付待付请'
  224. },
  225. {
  226. value:'1',
  227. label:'尾款待付清'
  228. },
  229. {
  230. value:'2',
  231. label:'已付清'
  232. }
  233. ]
  234. },
  235. {
  236. type:'select',
  237. dataKey:'approval',
  238. placeholder:'请选择特批状态',
  239. selectList:[
  240. {
  241. value:'0',
  242. label:'非特批'
  243. },
  244. {
  245. value:'1',
  246. label:'特批'
  247. }
  248. ]
  249. },
  250. {
  251. type:'select',
  252. dataKey:'amountStatus',
  253. placeholder:'请选择签单金额',
  254. selectList:[
  255. {
  256. value:'0',
  257. label:'10万元以下'
  258. },
  259. {
  260. value:'1',
  261. label:'10~20万元'
  262. },
  263. {
  264. value:'2',
  265. label:'20~30万元'
  266. },
  267. {
  268. value:'3',
  269. label:'30~40万元'
  270. },
  271. {
  272. value:'4',
  273. label:'40万元以上'
  274. },
  275. ]
  276. },
  277. {
  278. type:'times',
  279. title:'下单时间',
  280. dataKey:['starTime','endTime'],
  281. },
  282. ]
  283. return arr;
  284. }
  285. render() {
  286. return (
  287. <div>
  288. <Modal
  289. maskClosable={false}
  290. visible={this.props.visible}
  291. onOk={this.props.onCancel}
  292. onCancel={this.props.onCancel}
  293. width='1200px'
  294. title={this.props.recordInfor.province + '签单统计表'}
  295. footer=''
  296. className="admin-desc-content">
  297. <div className="user-content">
  298. <TabelContent
  299. scroll={{ x: 0, y: 200}}
  300. searchList={this.searchList()}
  301. columns={this.state.columns}
  302. tabelApi={'/api/admin/newOrder/provinceStatisticsList'}
  303. exportApi={'/api/admin/newOrder/provinceStatisticsListExprot'}
  304. query={{
  305. province:this.props.recordInfor.id,
  306. }}
  307. dataProcessing={(data)=>{
  308. let theArr = [];
  309. for (let i = 0; i < data.data.length; i++) {
  310. let thisdata = data.data[i];
  311. // thisdata.key=(data.data.pageNo - 1) * data.data.pageSize + i + 1;
  312. thisdata.key=i + 1;
  313. theArr.push(thisdata);
  314. }
  315. return theArr;
  316. }}
  317. />
  318. </div>
  319. {this.state.visible1 && <Modal
  320. maskClosable={false}
  321. visible={this.state.visible1}
  322. onOk={()=>{
  323. this.setState({
  324. visible1:false
  325. })
  326. }}
  327. onCancel={()=>{
  328. this.setState({
  329. visible1:false
  330. })
  331. }}
  332. width='1600px'
  333. title='个人订单'
  334. footer=''
  335. className="admin-desc-content">
  336. <div className="user-content">
  337. <TabelContent
  338. searchList={this.searchList1()}
  339. columns={this.state.columns1}
  340. tabelApi={'/api/admin/newOrder/orderNewList'}
  341. query={{
  342. specially:7,
  343. aid:this.state.aid
  344. }}
  345. dataProcessing={(data)=>{
  346. let theArr = [];
  347. for (let i = 0; i < data.data.list.length; i++) {
  348. let thisdata = data.data.list[i];
  349. thisdata.key=(data.data.pageNo - 1) * data.data.pageSize + i + 1;
  350. theArr.push(thisdata);
  351. }
  352. return theArr;
  353. }}
  354. />
  355. </div>
  356. </Modal>}
  357. </Modal>
  358. </div>
  359. )
  360. }
  361. }
  362. export default DetailedList;