知与行后台管理端

editPolicy.jsx 2.8KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. import React, { useState, useEffect } from 'react';
  2. import { Form, Input, Button, Icon, Select, Tabs, Radio, DatePicker,message } from 'antd';
  3. import { FormattedMessage } from 'umi-plugin-react/locale';
  4. import styles from '../style/GoodsList.less';
  5. import moment from 'moment';
  6. import router from 'umi/router';
  7. import BuildSelect from '../../components/SelectButton/BuildSelect'
  8. import SelectCity from '../../components/SelectButton/CitySelect'
  9. import XForm, { FieldTypes } from '../../components/XForm';
  10. import Wangedit from '../../components/Wangedit/Wangedit'
  11. import apis from '../../services/apis';
  12. import request from '../../utils/request'
  13. const { MonthPicker, RangePicker, WeekPicker } = DatePicker;
  14. /**
  15. *
  16. *
  17. * @param {*} props
  18. * @returns
  19. */
  20. const Edit = (props) => {
  21. const policyId = props.location.query.policyId
  22. const [ policyData, setPolicyData ] = useState({})
  23. if(policyId){
  24. useEffect(() => {
  25. getPolicyData(policyId);
  26. },[])
  27. // 查询列表
  28. const getPolicyData = (policyId) => {
  29. request({ ...apis.system.taPolicy, urlData: {id: policyId} }).then((data) => {
  30. console.log(data)
  31. setPolicyData(data)
  32. })
  33. }
  34. }
  35. const cancelPage = () =>{
  36. router.push({
  37. pathname: '/system/housingPolicy',
  38. });
  39. }
  40. const fields = [
  41. {
  42. label: '城市',
  43. name: 'cityId',
  44. render: <SelectCity />,
  45. value: policyData.cityId,
  46. },
  47. {
  48. label: '政策图片',
  49. name: 'policyImg',
  50. type: FieldTypes.ImageUploader,
  51. value: policyData.policyImg,
  52. },
  53. {
  54. label: '政策标题',
  55. name: 'title',
  56. type: FieldTypes.Text,
  57. value: policyData.title,
  58. },
  59. {
  60. label: '政策详情',
  61. name: 'body',
  62. render: <Wangedit />,
  63. value: policyData.body,
  64. },
  65. {
  66. label: '状态',
  67. name: 'publishStatus',
  68. type: FieldTypes.Select,
  69. dict: [{label:"未发布",value:0},{label:"已发布",value:1}],
  70. value: policyData.publishStatus != null ? policyData.publishStatus : 1,
  71. },
  72. ]
  73. const handleSubmit = val => {
  74. console.log('submit data --->', val)
  75. if(policyId){
  76. val.policyId = policyId
  77. request({ ...apis.system.updateTaPolicy, urlData: {id: policyId},data: val, }).then((data) => {
  78. message.info("保存成功")
  79. cancelPage()
  80. }).catch((err) => {
  81. message.info(err.msg || err.message)
  82. })
  83. }else{
  84. request({ ...apis.system.addTaPolicy,data: val, }).then((data) => {
  85. message.info("保存成功")
  86. cancelPage()
  87. }).catch((err) => {
  88. message.info(err.msg || err.message)
  89. })
  90. }
  91. }
  92. return (
  93. <XForm onSubmit={handleSubmit} onCancel={cancelPage} fields={fields}></XForm>
  94. );
  95. }
  96. export default Edit