dingxin 5 年之前
父節點
當前提交
ef5d4367ee

+ 1
- 1
src/pages/activity/ActivityList.jsx 查看文件

@@ -147,7 +147,7 @@ const header = props => {
147 147
             {row.activityStatus === 0 && <span style={{ color: '#1990FF',marginRight: '20px', cursor: 'pointer' }} onClick={finishDynamic.bind(this, row)}>结束活动<Icon type="poweroff" className={styles.edit} /></span>}
148 148
           </AuthButton>
149 149
           <AuthButton name="admin.buildingDynamic.update.put" noRight={null}>
150
-            <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={topDynamic(row)}>{row.weight === 1 ? '取消添加标签' : '添加标签'}<Icon type="vertical-align-top" className={styles.edit} /></span>
150
+            <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={topDynamic(row)}>{row.weight === 1 ? '取消标签' : '添加标签'}<Icon type="vertical-align-top" className={styles.edit} /></span>
151 151
             {(row.activityStatus === 0 || row.activityStatus === 1) && <span style={{ color: '#FF925C',marginRight: '20px', cursor: 'pointer' }} onClick={toEditGoods(row.dynamicId)}>编辑<Icon type="form" className={styles.edit} /></span>}
152 152
           </AuthButton>
153 153
       {(row.activityStatus === 0 || row.activityStatus === 2) &&<span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={newQrcode.bind(this, row)}>{row.isEnlist === 1 && '下载二维码'} {row.isEnlist === 1 && <Icon type="qrcode" className={styles.shoppingCart} />}</span>}

+ 30
- 2
src/pages/activity/groupActivity/editGroupActivity.jsx 查看文件

@@ -32,6 +32,9 @@ const Edit = props => {
32 32
   const { groupActivityId } = props.location.query
33 33
   const [dynamicData, setDynamicData] = useState({ isEnlist: 1 })
34 34
   const [scoreData, setScoreData] = useState({})
35
+  const [activityStatus, setActivityStatus] = useState({})
36
+  const [disable, setDisable] = useState(false)
37
+
35 38
   useEffect(() => {
36 39
     request(apis.groupActivity.avgScore).then((data) => {
37 40
       setScoreData(data);
@@ -46,6 +49,8 @@ const Edit = props => {
46 49
     const getDynamicData = (groupActivityId) => {
47 50
       request({ ...apis.groupActivity.details, urlData: { id: groupActivityId } }).then((data) => {
48 51
         setDynamicData(data)
52
+        setActivityStatus(data.activityStatus)
53
+        setDisable(data.activityStatus === 0 ? true : false)
49 54
       })
50 55
     }
51 56
   }
@@ -65,7 +70,7 @@ const Edit = props => {
65 70
       {
66 71
         label: '选择项目',
67 72
         name: 'buildingId',
68
-        render: <BuildSelect />,
73
+        render: <BuildSelect disabled={disable}/>,
69 74
         value: dynamicData.buildingId,
70 75
         rules: [
71 76
           { required: true, message: '请选择项目' },
@@ -90,12 +95,22 @@ const Edit = props => {
90 95
         ],
91 96
         help: '建议尺寸375*312px',
92 97
       },
98
+      {
99
+        label: '活动列表图',
100
+        name: 'detailImg',
101
+        type: FieldTypes.ImageUploader,
102
+        value: dynamicData.detailImg,
103
+        rules: [
104
+          { required: true, message: '请输入活动列表图' },
105
+        ],
106
+        help: '建议尺寸375*312px',
107
+      },
93 108
       {
94 109
         label: '活动时间',
95 110
         name: 'activityTime',
96 111
         type: FieldTypes.RangePicker,
97 112
         value: dynamicData.startTime != null ? [moment(dynamicData.startTime, 'YYYY-MM-DD HH:mm'), moment(dynamicData.endTime, 'YYYY-MM-DD HH:mm')] : null,
98
-        props: { showTime: { format: 'HH:mm' } },
113
+        props: { showTime: { format: 'HH:mm' }, disabled: activityStatus === 0 ? true : false },
99 114
         rules: [
100 115
           { required: true, message: '请选择活动时间' },
101 116
         ],
@@ -105,6 +120,7 @@ const Edit = props => {
105 120
         name: 'groupBuyPeople',
106 121
         type: FieldTypes.Text,
107 122
         value: dynamicData.groupBuyPeople,
123
+        props: {disabled: activityStatus === 0 ? true : false },
108 124
         help: '注:成团所需人数',
109 125
         rules: [
110 126
           { required: true, message: '请输入成团人数' },
@@ -115,6 +131,7 @@ const Edit = props => {
115 131
         name: 'integral',
116 132
         type: FieldTypes.Text,
117 133
         value: dynamicData.integral,
134
+        props: {disabled: activityStatus === 0 ? true : false },
118 135
         help: '注:用户平均积分' + scoreData.averageScore,
119 136
         rules: [
120 137
           { required: true, message: '请输入所需积分' },
@@ -130,6 +147,17 @@ const Edit = props => {
130 147
         ],
131 148
         help: '建议宽度:335px,高度不限',
132 149
       },
150
+      {
151
+        label: '权重',
152
+        name: 'heavy',
153
+        type: FieldTypes.Number,
154
+        render: <Input type="number" style={{ width: 80}}/>,
155
+        value: dynamicData.heavy,
156
+        rules: [
157
+          { required: true, message: '请输入权重' },
158
+        ],
159
+        help: '数字越大越靠前',
160
+      },
133 161
     ]
134 162
 
135 163
     const handleSubmit = val => {

+ 37
- 34
src/pages/activity/groupActivity/list.jsx 查看文件

@@ -101,43 +101,27 @@ const header = props => {
101 101
           {row.activityStatus === 0 &&
102 102
             <AuthButton name="admin.taShareActivity.finish.put" noRight={null}><span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={endGroupActivity(row)}>结束活动<Icon type="poweroff" className={styles.edit} /></span></AuthButton>
103 103
           }
104
-          {row.activityStatus === 0 &&
104
+          {(row.activityStatus === 0 || row.activityStatus === 2)&&
105 105
             <AuthButton name="admin.taShareSuccessRecord.get" noRight={null}>
106 106
               <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={getSignList.bind(this, row.groupActivityId)}>拼团记录<Icon type="snippets" className={styles.shoppingCart} /></span>
107 107
             </AuthButton>
108 108
           }
109
-          {row.activityStatus === 0 &&
109
+          {
110
+            <AuthButton name="admin.buildingDynamic.send.dynamicId.put" noRight={null}>
111
+              <span style={{ color: '#1990FF',marginRight: '20px', cursor: 'pointer' }} onClick={sendOrPublicDynamic.bind(this, row)}>{row.status === 1 ? '取消发布' : '发布'}<Icon type="close-circle" className={styles.edit} /></span>
112
+            </AuthButton>
113
+          }
114
+          {
110 115
             <AuthButton name="admin.taShareActivity.list.get" noRight={null}>
111
-              <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={topGroupActivity(row, row.weight)}>{row.weight === 1 ? '取消置顶' : '置顶'}<Icon type="vertical-align-top" className={styles.edit} /></span>
116
+              <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={topGroupActivity(row, row.weight)}>{row.weight === 1 ? '取消标签' : '添加标签'}<Icon type="vertical-align-top" className={styles.edit} /></span>
112 117
               <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={recommendGroupActivity(row)}>{row.sort === true ? '取消推荐首页' : '推荐首页'}<Icon type="vertical-align-top" className={styles.edit} /></span>
113 118
             </AuthButton>}
114 119
 
115
-          {row.activityStatus === 1 &&
120
+          {(row.activityStatus === 0 || row.activityStatus === 1) &&
116 121
             <AuthButton name="admin.taShareActivity.update.put" noRight={null}>
117 122
               <span style={{ color: '#FF925C', marginRight: '20px', cursor: 'pointer' }} onClick={toEditActivity(row.groupActivityId)}>编辑<Icon type="form" className={styles.edit} /></span>
118 123
             </AuthButton>
119 124
           }
120
-          {row.activityStatus === 1 &&
121
-            <AuthButton name="admin.taShareActivity.finish.put" noRight={null}>
122
-              <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={endGroupActivity(row)}>结束活动<Icon type="poweroff" className={styles.edit} /></span>
123
-            </AuthButton>
124
-          }
125
-          {row.activityStatus === 1 &&
126
-            <AuthButton name="admin.taShareActivity.weight.put" noRight={null}>
127
-              <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={topGroupActivity(row, row.weight)}>{row.weight === 1 ? '取消置顶' : '置顶'}<Icon type="vertical-align-top" className={styles.edit} /></span>
128
-              <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={recommendGroupActivity(row)}>{row.sort === true ? '取消推荐首页' : '推荐首页'}<Icon type="vertical-align-top" className={styles.edit} /></span>
129
-            </AuthButton>
130
-          }
131
-
132
-          {row.activityStatus === 2 &&
133
-            <AuthButton><span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={getSignList.bind(this, row.groupActivityId)}>拼团记录<Icon type="snippets" className={styles.shoppingCart} /></span></AuthButton>
134
-          }
135
-          {row.activityStatus === 2 &&
136
-            <AuthButton name="admin.taShareActivity.weight.put" noRight={null}>
137
-              <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={topGroupActivity(row, row.weight)}>{row.weight === 1 ? '取消置顶' : '置顶'}<Icon type="vertical-align-top" className={styles.edit} /></span>
138
-              <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={recommendGroupActivity(row)}>{row.sort === true ? '取消推荐首页' : '推荐首页'}<Icon type="vertical-align-top" className={styles.edit} /></span>
139
-            </AuthButton>
140
-          }
141 125
         </>
142 126
       ),
143 127
     },
@@ -193,21 +177,28 @@ const header = props => {
193 177
     })
194 178
   }
195 179
 
196
-  //首页推荐
197
-  const recommendGroupActivity = (row, code) => () => {
198
-    request({ ...apis.groupActivity.top, data: { groupActivityId: row.groupActivityId, sort: row.sort } }).then((data) => {
199
-      console.log(data)
180
+  const sendOrPublicDynamic = row => {
181
+    if (row.status === 1) {
182
+      cancelDynamic(row)
183
+    } else {
184
+      sendDynamic(row)
185
+    }
186
+  }
187
+
188
+  // 取消活动
189
+  const cancelDynamic = row => {
190
+    request({ ...apis.groupActivity.cancel, urlData: { id: row.groupActivityId } }).then(data => {
200 191
       message.info('操作成功!')
201
-      getList({ pageNum: 1, pageSize: 10, ...props.form.getFieldsValue() })
202
-    }).catch((err) => {
192
+      getList({ pageNum: 1, pageSize: 10, ...props.form.getFieldsValue()  })
193
+    }).catch(err => {
203 194
       console.log(err)
204 195
       message.info(err.msg || err.message)
205 196
     })
206 197
   }
207 198
 
208
-  //发布活动
209
-  const sendDynamic = (row) => {
210
-    request({ ...apis.activity.send, urlData: { id: row.dynamicId } }).then((data) => {
199
+  // 发布活动
200
+  const sendDynamic = row => {
201
+    request({ ...apis.groupActivity.send, urlData: { id: row.groupActivityId } }).then(data => {
211 202
       message.info('操作成功!')
212 203
       getList({ pageNum: 1, pageSize: 10, ...props.form.getFieldsValue() });
213 204
     }).catch(err => {
@@ -216,6 +207,18 @@ const header = props => {
216 207
     })
217 208
   }
218 209
 
210
+  //首页推荐
211
+  const recommendGroupActivity = (row, code) => () => {
212
+    request({ ...apis.groupActivity.top, data: { groupActivityId: row.groupActivityId, sort: row.sort } }).then((data) => {
213
+      console.log(data)
214
+      message.info('操作成功!')
215
+      getList({ pageNum: 1, pageSize: 10, ...props.form.getFieldsValue() })
216
+    }).catch((err) => {
217
+      console.log(err)
218
+      message.info(err.msg || err.message)
219
+    })
220
+  }
221
+
219 222
   const changePageNum = pageNumber => {
220 223
     getList({ pageNum: pageNumber, pageSize: 10, ...props.form.getFieldsValue() })
221 224
   }

+ 30
- 5
src/pages/activity/helpActivity/edithelpActivity.jsx 查看文件

@@ -22,6 +22,8 @@ const { TextArea } = Input;
22 22
 
23 23
 const header = props => {
24 24
   const [isEnlist, setIsEnlist] = useState(1)
25
+  const [activityStatus, setActivityStatus] = useState(1)  
26
+  const [disable, setDisable] = useState(false)
25 27
 
26 28
   const radioOnChange = e => {
27 29
     // console.log(e.target.value)
@@ -42,6 +44,8 @@ const header = props => {
42 44
           data.activityTime = [moment(data.startDate), moment(data.endDate)]
43 45
           const num = data.helpNum > 0 ? 1 : 0
44 46
           setIsEnlist(num)
47
+          setActivityStatus(data.activityStatus)
48
+          setDisable(data.activityStatus === 0 ? true : false)
45 49
           data.isEnlist = num
46 50
           props.form.setFieldsValue(data)
47 51
           setDynamicData(data)
@@ -140,7 +144,7 @@ const header = props => {
140 144
               message: '请选择所属项目',
141 145
             },
142 146
           ],
143
-        })(<BuildSelect />)}
147
+        })(<BuildSelect disabled={disable} />)}
144 148
         </Form.Item>
145 149
 
146 150
         <Form.Item label="活动标题">
@@ -165,6 +169,17 @@ const header = props => {
165 169
         })(<ImageUploader />)}
166 170
         </Form.Item>
167 171
 
172
+        <Form.Item label="活动列表图" help="建议尺寸375*312px">
173
+          {getFieldDecorator('detailImg', {
174
+          rules: [
175
+            {
176
+              required: true,
177
+              message: '活动主图不能为空',
178
+            },
179
+          ],
180
+        })(<ImageUploader />)}
181
+        </Form.Item>
182
+
168 183
         <Form.Item label="活动时间">
169 184
         {getFieldDecorator('activityTime', {
170 185
           rules: [
@@ -173,7 +188,7 @@ const header = props => {
173 188
               message: '请选择活动时间',
174 189
             },
175 190
           ],
176
-        })(<RangePicker format="YYYY-MM-DD HH:mm:ss" showTime={{ format: 'HH:mm:ss' }}/>)}
191
+        })(<RangePicker format="YYYY-MM-DD HH:mm:ss" showTime={{ format: 'HH:mm:ss' }} disabled={activityStatus===0 ? true : false}/>)}
177 192
         </Form.Item>
178 193
 
179 194
         <Form.Item label="助力邀请人数" min={1} max={10}>
@@ -184,7 +199,7 @@ const header = props => {
184 199
               message: '请输入活动人数',
185 200
             },
186 201
           ],
187
-        })(<Input type="number" />)}
202
+        })(<Input type="number" disabled={activityStatus===0 ? true : false}/>)}
188 203
         </Form.Item>
189 204
 
190 205
         <Form.Item label="助力次数">
@@ -196,7 +211,7 @@ const header = props => {
196 211
             },
197 212
           ],
198 213
         })(
199
-          <Radio.Group onChange={(e) => radioOnChange(e)}>
214
+          <Radio.Group disabled={activityStatus===0 ? true : false} onChange={(e) => radioOnChange(e)}>
200 215
             <Radio value={0}>不限制</Radio>
201 216
             <Radio value={1}>限制</Radio>
202 217
           </Radio.Group>,
@@ -211,7 +226,7 @@ const header = props => {
211 226
                  message: '请输入助力人数',
212 227
                },
213 228
              ],
214
-           })(<Input type="number" placeholder="助力人数限制"/>)}
229
+           })(<Input type="number" placeholder="助力人数限制" disabled={activityStatus===0 ? true : false}/>)}
215 230
            </Form.Item>
216 231
          }
217 232
 
@@ -225,6 +240,16 @@ const header = props => {
225 240
           ],
226 241
         })(<ImageUploader />)}
227 242
         </Form.Item>
243
+        <Form.Item label="权重">
244
+        {getFieldDecorator('heavy', {
245
+          rules: [
246
+            {
247
+              required: true,
248
+              message: '请输入权重',
249
+            },
250
+          ],
251
+        })(<Input type="number" disabled={activityStatus===0 ? true : false} style={{ width: 80}}/>)}<span style={{ marginLeft: 30, color:'grey'}}>数字越大越靠前</span>
252
+        </Form.Item>
228 253
         <Form.Item wrapperCol={{ span: 12, offset: 8 }}>
229 254
           <Button type="primary" htmlType="submit">
230 255
             确认

+ 19
- 29
src/pages/activity/helpActivity/list.jsx 查看文件

@@ -91,40 +91,30 @@ const toEditGoods = (helpActivityId) => () => {
91 91
       align: 'center',
92 92
       render: (x, row) => (
93 93
         <>
94
-          {row.activityStatus === 0 &&
94
+          {(row.activityStatus === 0 || row.activityStatus === 2) &&
95 95
           <AuthButton name="admin.helpRecord.get">
96 96
              <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={ getSignList.bind(this, row.helpActivityId)}>助力记录<Icon type="snippets" style={{color:'#bebebe'}}   className={styles.shoppingCart} /></span>
97 97
           </AuthButton>}
98
+          {
99
+            <AuthButton name="admin.top.update.post" noRight={null}>
100
+              <span style={{ color: '#1990FF',marginRight: '20px', cursor: 'pointer' }} onClick={sendOrPublicDynamic.bind(this, row)}>{row.status === 1 ? '取消发布' : '发布'}<Icon type="close-circle" className={styles.edit} /></span>
101
+            </AuthButton>
102
+          }
98 103
           {row.activityStatus === 0 &&
104
+            <AuthButton name="admin.top.update.post" noRight={null}>
105
+            <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={topDynamic(row, 2)}>结束活动<Icon type="poweroff" style={{color:'#bebebe'}} className={styles.edit} /></span> </AuthButton>
106
+          }
107
+          {
99 108
           <AuthButton name="admin.top.update.post" noRight={null}>
100
-            <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={topDynamic(row, 2)}>结束活动<Icon type="poweroff" style={{color:'#bebebe'}} className={styles.edit} /></span>
101
-            <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={topDynamic(row, 0)}>{ row.weight === 1 ? '取消置顶' : '置顶' }<Icon type="vertical-align-top"  style={{color:'#bebebe'}} className={styles.edit} /></span>
109
+            <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={topDynamic(row, 0)}>{ row.weight === 1 ? '取消标签' : '添加标签' }<Icon type="vertical-align-top"  style={{color:'#bebebe'}} className={styles.edit} /></span>
102 110
             <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={topDynamic(row, 1)}>{ row.isMain === true ? '取消推首页' : '推首页' }<Icon type="vertical-align-top" style={{color:'#bebebe'}} className={styles.edit} /></span>
103 111
           </AuthButton> }
104 112
 
105
-          {row.activityStatus === 1 &&
113
+          {(row.activityStatus === 1 || row.activityStatus === 0) &&
106 114
           <AuthButton name="admin.helpActivity.update.put" noRight={null}>
107 115
             <span style={{ color: '#FF925C', marginRight: '20px', cursor: 'pointer' }} onClick={toEditGoods(row.helpActivityId)}>编辑<Icon type="form" style={{color:'#bebebe'}} className={styles.edit} /></span>
108 116
           </AuthButton>
109 117
           }
110
-          {row.activityStatus === 1 &&
111
-           <AuthButton name="admin.top.update.post" noRight={null}>
112
-            <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={topDynamic(row, 0)}>{ row.weight === 1 ? '取消置顶' : '置顶' }<Icon type="vertical-align-top" style={{color:'#bebebe'}} className={styles.edit} /></span>
113
-            <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={topDynamic(row, 1)}>{ row.isMain === true ? '取消推首页' : '推首页' }<Icon type="vertical-align-top" style={{color:'#bebebe'}} className={styles.edit} /></span>
114
-            </AuthButton>
115
-          }
116
-
117
-          {row.activityStatus === 2 &&
118
-          <AuthButton name="admin.helpRecord.get" noRight={null}>
119
-            <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={ getSignList.bind(this, row.helpActivityId)}>助力记录<Icon type="snippets" style={{color:'#bebebe'}} className={styles.shoppingCart} /></span>
120
-          </AuthButton>
121
-          }
122
-           {row.activityStatus === 2 &&
123
-        <AuthButton name="admin.top.update.post" noRight={null}>
124
-           <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={topDynamic(row, 0)}>{ row.weight === 1 ? '取消置顶' : '置顶' }<Icon type="vertical-align-top" style={{color:'#bebebe'}} className={styles.edit} /></span>
125
-            <span style={{ color: '#1990FF', marginRight: '20px', cursor: 'pointer' }} onClick={topDynamic(row, 1)}>{ row.isMain === true ? '取消推首页' : '推首页' }<Icon type="vertical-align-top" style={{color:'#bebebe'}} className={styles.edit} /></span>
126
-        </AuthButton>
127
-          }
128 118
         </>
129 119
       ),
130 120
     },
@@ -168,13 +158,13 @@ const toEditGoods = (helpActivityId) => () => {
168 158
       })
169 159
   }
170 160
   
171
-  // const sendOrPublicDynamic = (row) => {
172
-  //     if (row.status === 1) {
173
-  //         cancelDynamic(row)
174
-  //     } else {
175
-  //         sendDynamic(row)
176
-  //     }
177
-  // }
161
+  const sendOrPublicDynamic = (row) => {
162
+      if (row.status === 1) {
163
+          cancelDynamic(row)
164
+      } else {
165
+          sendDynamic(row)
166
+      }
167
+  }
178 168
   
179 169
   // 取消活动
180 170
   const cancelDynamic = (row) => {

+ 0
- 6
src/pages/channel/channelList.jsx 查看文件

@@ -72,12 +72,6 @@ const columns = [
72 72
     key: 'recommendCount',
73 73
     align: 'center',
74 74
   },
75
-  {
76
-    title: '邀请经纪人',
77
-    dataIndex: 'inviteCount',
78
-    key: 'inviteCount',
79
-    align: 'center',
80
-  },
81 75
   {
82 76
     title: '操作',
83 77
     dataIndex: '',

+ 1
- 1
src/pages/news/list/editNewsList.jsx 查看文件

@@ -64,7 +64,7 @@ const { TextArea } = Input;
64 64
         ]
65 65
       },
66 66
       {
67
-        label: '资讯图',
67
+        label: '资讯列表图',
68 68
         name: 'newsImg',
69 69
         type: FieldTypes.ImageUploader,
70 70
         value: dynamicData.newsImg,

+ 20
- 0
src/services/apis.js 查看文件

@@ -775,6 +775,16 @@ export default {
775 775
     method: 'post',
776 776
     action: 'admin.top.update.post',
777 777
   },
778
+  cancel: {
779
+    method: 'PUT',
780
+    url: `${prefix}/helpActivity/cancel/:id`,
781
+    action: 'admin.helpActivity.update.put',
782
+  },
783
+  send: {
784
+    url: `${prefix}/helpActivity/send/:id`,
785
+    method: 'PUT',
786
+    action: 'admin.helpActivity.update.put',
787
+  },
778 788
   record: {
779 789
     url: `${prefix}/helpRecord`,
780 790
     method: 'get',
@@ -837,6 +847,16 @@ export default {
837 847
     method: 'put',
838 848
     action: 'admin.taShareActivity.finish.put',
839 849
   },
850
+  send: {
851
+    url: `${prefix}/taShareActivity/send/:id`,
852
+    method: 'PUT',
853
+    action: 'admin.taShareActivity.finish.put',
854
+  },
855
+  cancel: {
856
+    method: 'PUT',
857
+    url: `${prefix}/taShareActivity/cancel/:id`,
858
+    action: 'admin.taShareActivity.finish.put',
859
+  },
840 860
   top: {
841 861
     url: `${prefix}/taShareActivity/weight`,
842 862
     method: 'put',