detailedList.jsx 12 KB

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