projectOrderDetaile.jsx 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365
  1. import React from 'react';
  2. import { Icon, Table, Modal, message, Spin, Input, Select, Button, Form ,Upload,Popconfirm,AutoComplete} from 'antd';
  3. import ajax from 'jquery/src/ajax/xhr.js';
  4. import $ from 'jquery/src/ajax';
  5. import './userMangagement.less';
  6. import {lvl} from '../../../dataDic.js';
  7. const MySettlementDetaile = Form.create()(React.createClass({
  8. loadData() {
  9. this.setState({
  10. loading: true
  11. });
  12. $.ajax({
  13. method: "post",
  14. dataType: "json",
  15. crossDomain: false,
  16. url: globalConfig.context + '/api/admin/roles',
  17. data: {
  18. },
  19. success: function (data) {
  20. let theArr =[];
  21. if (!data.data) {
  22. if (data.error && data.error.length) {
  23. message.warning(data.error[0].message);
  24. };
  25. } else {
  26. for (let i = 0; i < data.data.list.length; i++) {
  27. let thisdata = data.data.list;
  28. theArr.push({
  29. key:i,
  30. roleName5:thisdata[i].id
  31. });
  32. };
  33. }
  34. this.setState({
  35. dataSource: theArr,
  36. pagination: false,
  37. });
  38. }.bind(this),
  39. }).always(function () {
  40. this.setState({
  41. loading: false
  42. });
  43. }.bind(this));
  44. },
  45. getInitialState() {
  46. return {
  47. loading: false,
  48. visible: false,
  49. contractState:false,
  50. orgCodeUrl:[],
  51. checkedKeys: [],
  52. columns: [
  53. {
  54. title: '业务项目名称',
  55. dataIndex: 'roleName',
  56. key: 'roleName'
  57. }, {
  58. title: '项目类别',
  59. dataIndex: 'creater1',
  60. key: 'creater1'
  61. },{
  62. title: '项目数量',
  63. dataIndex: 'roleName2',
  64. key: 'roleName2'
  65. }, {
  66. title: '下单时间',
  67. dataIndex: 'creater4',
  68. key: 'creater4'
  69. }, {
  70. title: '项目说明',
  71. dataIndex: 'roleName5',
  72. key: 'roleName5',
  73. render:(text) => {
  74. return(
  75. text?text.substr(0,6)+'...':''
  76. )
  77. }
  78. }
  79. ]
  80. };
  81. },
  82. //查看基本详情基本信息
  83. loaduser(record){
  84. if(record){
  85. $.ajax({
  86. method: "post",
  87. dataType: "json",
  88. crossDomain: false,
  89. url: globalConfig.context + '/api/admin/role/rolePermission',
  90. data: {
  91. id: record.id
  92. },
  93. success: function (data) {
  94. let thisData = data.data;
  95. if (!thisData) {
  96. if (data.error && data.error.length) {
  97. message.warning(data.error[0].message);
  98. };
  99. thisData = {};
  100. };
  101. let idList=[];
  102. thisData.map(function(item){
  103. idList.push(
  104. item.pid
  105. )
  106. })
  107. this.setState({
  108. ids:record.id,
  109. roleName:thisData[0].rname,
  110. checkedKeys:idList,
  111. });
  112. }.bind(this),
  113. }).always(function () {
  114. this.setState({
  115. loading: false
  116. });
  117. }.bind(this));
  118. }
  119. },
  120. handleOk(e) {
  121. this.setState({
  122. visible: false,
  123. });
  124. this.props.closeDesc(false, true);
  125. },
  126. handleCancel(e) {
  127. this.setState({
  128. visible: false,
  129. });
  130. this.props.closeDesc(false);
  131. },
  132. componentWillMount() {
  133. },
  134. nextCancel() {
  135. this.setState({
  136. addnextVisible: false
  137. })
  138. },
  139. //查看订单明细
  140. orderDetails(record){
  141. if(record){
  142. $.ajax({
  143. method: "post",
  144. dataType: "json",
  145. crossDomain: false,
  146. url: globalConfig.context + '/api/admin/role/rolePermission',
  147. data: {
  148. id: record.id
  149. },
  150. success: function (data) {
  151. let thisData = data.data;
  152. if (!thisData) {
  153. if (data.error && data.error.length) {
  154. message.warning(data.error[0].message);
  155. };
  156. thisData = {};
  157. };
  158. let idList=[];
  159. thisData.map(function(item){
  160. idList.push(
  161. item.pid
  162. )
  163. })
  164. this.setState({
  165. ids:record.id,
  166. });
  167. }.bind(this),
  168. }).always(function () {
  169. this.setState({
  170. loading: false
  171. });
  172. }.bind(this));
  173. }
  174. },
  175. tableRowClick(record, index) {
  176. this.setState({
  177. addnextVisible:true,
  178. });
  179. this.orderDetails(record)
  180. },
  181. componentWillReceiveProps(nextProps) { //props改变时触发
  182. this.state.visible = nextProps.showDesc;
  183. if(nextProps.userDetaile && nextProps.showDesc ) {
  184. if(nextProps.datauser && nextProps.datauser.id ) {
  185. this.loaduser(nextProps.datauser);
  186. this.loadData();
  187. }
  188. }
  189. },
  190. render() {
  191. const FormItem = Form.Item
  192. const formItemLayout = {
  193. labelCol: { span: 8 },
  194. wrapperCol: { span: 14 },
  195. };
  196. const orderDetaiel=this.state.orderList || [];
  197. return(
  198. <div>
  199. <Modal maskClosable={false} visible={this.state.visible}
  200. onOk={this.handleOk} onCancel={this.handleCancel}
  201. width='1000px'
  202. title='编辑订单'
  203. footer=''
  204. className="admin-desc-content">
  205. <Form layout="horizontal" id="demand-form" style={{paddingBottom:'40px'}} >
  206. <Spin spinning={this.state.loading}>
  207. <div className="clearfix">
  208. <div className="clearfix">
  209. <FormItem className="half-item"
  210. {...formItemLayout}
  211. label="订单编号" >
  212. <span>{orderDetaiel.roleName}</span>
  213. </FormItem>
  214. <FormItem className="half-item"
  215. {...formItemLayout}
  216. label="下单时间" >
  217. <span>{orderDetaiel.createTimez}</span>
  218. </FormItem>
  219. <FormItem className="half-item"
  220. {...formItemLayout}
  221. label="客户名称" >
  222. <span>{orderDetaiel.roleName}</span>
  223. </FormItem>
  224. <FormItem className="half-item"
  225. {...formItemLayout}
  226. label="订单类型" >
  227. <span>{orderDetaiel.roleName}</span>
  228. </FormItem>
  229. <FormItem className="half-item"
  230. {...formItemLayout}
  231. label="订单渠道" >
  232. <span>{orderDetaiel.roleName}</span>
  233. </FormItem>
  234. <FormItem className="half-item"
  235. {...formItemLayout}
  236. label="订单状态" >
  237. <span>{orderDetaiel.roleName}</span>
  238. </FormItem>
  239. <FormItem className="half-item"
  240. {...formItemLayout}
  241. label="已收款项" >
  242. <span>{orderDetaiel.roleName}</span>
  243. </FormItem>
  244. <FormItem className="half-item"
  245. {...formItemLayout}
  246. label="结算状态" >
  247. <span>{orderDetaiel.roleName}</span>
  248. </FormItem>
  249. <div className='clearfix'>
  250. <FormItem className="half-item"
  251. {...formItemLayout}
  252. label="特批立项" >
  253. <span>{orderDetaiel.roleName}</span>
  254. </FormItem>
  255. </div>
  256. <div className='clearfix'>
  257. <FormItem
  258. labelCol={{ span: 4 }}
  259. wrapperCol={{ span: 16 }}
  260. label="订单留言" >
  261. <span>{orderDetaiel.roleName}</span>
  262. </FormItem>
  263. </div>
  264. </div>
  265. <div className='clearfix'>
  266. <FormItem className="half-item"
  267. {...formItemLayout}
  268. label="订单负责人" >
  269. <span>{orderDetaiel.roleName}</span>
  270. </FormItem>
  271. </div>
  272. <div className='clearfix'>
  273. <FormItem className="half-item"
  274. {...formItemLayout}
  275. label="意向时间" >
  276. <span>{orderDetaiel.createTimez}</span>
  277. </FormItem>
  278. <FormItem className="half-item"
  279. {...formItemLayout}
  280. label="签单时间" >
  281. <span>{orderDetaiel.createTimez}</span>
  282. </FormItem>
  283. <FormItem className="half-item"
  284. {...formItemLayout}
  285. label="财务负责人" >
  286. <span>{orderDetaiel.createTimez}</span>
  287. </FormItem>
  288. <FormItem className="half-item"
  289. {...formItemLayout}
  290. label="首付时间" >
  291. <span>{orderDetaiel.createTimez}</span>
  292. </FormItem>
  293. <FormItem className="half-item"
  294. {...formItemLayout}
  295. label="项目负责人" >
  296. <span>{orderDetaiel.roleName}</span>
  297. </FormItem>
  298. <FormItem className="half-item"
  299. {...formItemLayout}
  300. label="立项时间" >
  301. <span>{orderDetaiel.createTimez}</span>
  302. </FormItem>
  303. </div>
  304. <div>
  305. <span style={{marginLeft:'50px',fontSize:'20px'}}>订单明细</span>
  306. </div>
  307. <div className="patent-table">
  308. <Spin spinning={this.state.loading}>
  309. <Table columns={this.state.columns}
  310. dataSource={this.state.dataSource}
  311. pagination={this.state.pagination}
  312. onRowClick={this.tableRowClick}
  313. />
  314. </Spin>
  315. </div>
  316. </div>
  317. </Spin>
  318. </Form >
  319. </Modal>
  320. <Modal maskClosable={false} visible={this.state.addnextVisible}
  321. onOk={this.nextCancel} onCancel={this.nextCancel}
  322. width='550px'
  323. title='查看订单明细服务'
  324. footer=''
  325. className="admin-desc-content">
  326. <Form layout="horizontal" id="demand-form">
  327. <Spin spinning={this.state.loading}>
  328. <div className="clearfix">
  329. <FormItem className="half-middle"
  330. {...formItemLayout}
  331. label="服务名称" >
  332. <span>{this.state.aaa}</span>
  333. </FormItem>
  334. <FormItem className="half-middle"
  335. {...formItemLayout}
  336. label="项目类别" >
  337. <span>{this.state.aaa}</span>
  338. </FormItem>
  339. <FormItem className="half-middle"
  340. {...formItemLayout}
  341. label="项目数量" >
  342. <span>{this.state.aaa}</span>
  343. </FormItem>
  344. <FormItem className="half-middle"
  345. {...formItemLayout}
  346. label="下单时间" >
  347. <span>{this.state.aaa}</span>
  348. </FormItem>
  349. <FormItem className="half-middle"
  350. {...formItemLayout}
  351. label="服务说明" >
  352. <span>{this.state.aaa}</span>
  353. </FormItem>
  354. </div>
  355. </Spin>
  356. </Form >
  357. </Modal>
  358. </div>
  359. )
  360. }
  361. }));
  362. export default MySettlementDetaile;