12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- import MonitorApiBase from './base'
- import {
- ajaxFollowProjectInfo,
- ajaxFollowProjectAdd,
- ajaxFollowProjectCancel
- } from '../api/follow-project'
- export default class MonitorProjectApi extends MonitorApiBase {
- constructor({ id, fid = '' }) {
- super()
- this.id = id
- this.fid = fid
- }
- /**
- * 提供覆盖的ajax请求
- * @return {{}}
- */
- async ajaxGetState() {
- return await ajaxFollowProjectInfo({ sid: this.id }).then((res) => {
- const result = this.createModel()
- result.canFollow = res?.data?.showFollow || false
- result.follow = res?.data?.flag || false
- if (res?.data?.info) {
- result.expands = res.data.info
- }
- if (res?.data?.fig) {
- this.fid = res.data.fig
- }
- return result
- })
- }
- async ajaxAdd() {
- return ajaxFollowProjectAdd({ sid: this.id }).then((res) => {
- const result = {
- success: false,
- msg: '',
- data: {}
- }
- result.success = res?.error_code === 0 && res?.data?.status
- result.data = res?.data
- if (res?.data?.followId) {
- this.fid = res.data.followId
- }
- if (result.success) {
- this.model.expands.used += 1
- this.model.expands.surplus = Math.max(this.model.expands.surplus - 1, 0)
- } else {
- result.msg = res?.error_msg || '抱歉,操作失败'
- }
- return result
- })
- }
- async ajaxRemove() {
- return ajaxFollowProjectCancel({ fid: this.fid }).then(
- (res) => {
- const result = {
- success: false,
- msg: '',
- data: {}
- }
- result.success = res?.error_code === 0 && res?.data === 'success'
- result.data = res?.data
- if (result.success) {
- this.fid = ''
- this.model.expands.surplus += 1
- this.model.expands.used = Math.max(this.model.expands.used - 1, 0)
- } else {
- result.msg = res?.error_msg || '抱歉,操作失败'
- }
- return result
- }
- )
- }
- }
|