# 接口文档

# 模型列表 查询接口 无参数

//创建之后
    created() {
     axios.get('http://180.76.189.68:8911/singleProject/mx/list')
       .then((data) => {
         // console.log(data.data.data.list)
         this.list = data.data.data.list
       })
   },

# 方法2

data() {
	  return {
		list: [],
	  }
	},
//创建之后
 created() {
	  axios.get('http://180.76.189.68:8911/singleProject/mx/list')
	   .then((data) => {
		 // console.log(data.data.data.list)
		 // this.list = data.data.data.list
		 return data.data.data.list
	   }).then(data=>{
		 var blogsArray = [];
		 for(let key in data){
		   data[key].id = key;
		   blogsArray.push(data[key]);
		 }
		 this.list = blogsArray;
	   })
	},

# 模型管理 添加接口 form-data post

form-data 添加接口

   data(){
	   return {
		 list:{
			mxMc:'',
			mxWjlj:'',
			mxScsj:'',
			mxLx:'',
			sqId:''
		 }
	   }	   
   }

    const params = new URLSearchParams()
	params.append('mxMc',this.list.mxMc)
	params.append('mxWjlj',this.list.mxWjlj)
	params.append('mxScsj',this.list.mxScsj)
	params.append('mxLx',this.list.mxLx)
	params.append('sqId',this.list.sqId)

	axios.post("http://180.76.189.68:8911/singleProject/mx/add",params)
	  .then((data) => {
		console.log(data.data);
		// this.submmited = true;
	  });
	  

# 模型管理 修改接口 json post

json 修改接口


    data() {
      return {
        list:{},
      }
    },
      onSubmit(id) {
        const list = {
            mxMc:this.list.mxMc,
            mxWjlj:this.list.mxWjlj,
            mxScsj:this.list.mxScsj,
            mxLx:this.list.mxLx,
            sqId:this.list.sqId
        }
         axios.post("http://180.76.189.68:8911/singleProject/mx/update/"+id,list)
	       .then((data) => {
	         console.log(data);
            this.$router.push({path:'/tdm/modelAdmin'})
	       });
      },

# 方法2

json 修改接口

    data() {
	   return {
		 list:{
			mxMc:'',
			mxWjlj:'',
			mxScsj:'',
			mxLx:'',
			sqId:''
		 }
	   }
	 },
	 methods: {
	   onSubmit() {
	     axios.post("http://180.76.189.68:8911/singleProject/mx/update/{id}",this.list)
	       .then((data) => {
	         console.log(data.data);
	         // this.submmited = true;
	       });
	   },

# 模型管理 删除接口

   handleDelete(id) {
        axios.post('http://180.76.189.68:8911/singleProject/mx/delete/'+id)
          .then(res=>{
            this.$router.push({path:'/tdm/modelAdmin'})
        })

# 接口总结

index 页面

  export default {
    data() {
      return {
        list: [],
      }
    },
    methods: {
	 //获取接口	
      gitList(){
        axios.get('http://180.76.189.68:8911/singleProject/mx/list')
          .then( data => {
            return data.data.data.list
          }).then( data =>{
            var blogsArray = [];
            for(let key in data){
              data[key].id = key;
              blogsArray.push(data[key]);
            }
            this.list = blogsArray;
          })
      },
	  //跳转添加接口
      handleAdd() {
        this.$router.push({
          path: '/tdm/addModel'
        })
      },
	  //跳转修改接口
      handleUpdate(index, row) {
        this.$router.push({
          path: '/tdm/updateModel',
          query: { id: row.mxId }
        })
      },
	  //删除接口
      handleDelete(id) {
        axios.post('http://180.76.189.68:8911/singleProject/mx/delete/'+id)
          .then(res=>{
            this.$router.push({path:'/tdm/modelAdmin'})
            this.gitList()
        })
      },
    },
    //创建之后
    created() {

    },
    //挂载之后
    mounted(){
       this.gitList()
    },
    computed:{

    },
    //过滤
    filters: {

    },
  }

# 日志管理 查询接口 获取请求头token get headers


	axios.get('http://180.76.189.68:8911/singleProject/logger/list',{
	   headers:{'token':getToken()},
	 })
	 .then(data=>{
	  console.log(data)
   })
	console.log(getToken())

handleDelete(id) {
   const params = new URLSearchParams()
   params.append('ids',id)
   axios.post('http://180.76.189.68:8911/singleProject/logger/deleteSysLogs',params)
	   .then(res=>{

		 this.$router.push({path:'/adm/log'})
		 this.gitList()
		 console.log(res)
	 })
},

# 没有token 的登录接口 json get

const login = {
    suLoginname: this.login.suLoginname,
    suPwd: this.login.suPwd
}
//全局的方式可以去掉api
axios.post('/api/singleProject/login',login)
    .then(res => {
    console.log(res.data)
    this.$router.push({
        path: '/home'
    })
}).catch(err => {
    console.log(err)
    this.$router.push({
        path: '/404'
    })
})

# 列表查询 form-data get

	getlist() {
		this.$axios.get('/singleProject/cart/list', {
				params: {
					memberId: 'stores'
				}
			})
			.then(res => {
				return res.data.data.userck
			}).then(array => {
				this.data = array;  //没有循环的
				// console.log(array)
				array.forEach(item=>{
					this.list = item  //循环的
				})
			})
	}

# 删除接口 form-data post

	 del(id){
		const params = new URLSearchParams()
		params.append('ids',id)
		this.$axios.post('/singleProject/cart/delete',params)
			.then(res=>{
			console.log(res)
		})
	}		

# 接口封装

# api 封装

import request from '@/utils/request'
 //查询
 export function fetchList(params) {
  return request({
    url:'/singleProject/mx/list',
    method:'get',
    params:params
  })
 }
 //删除
 export function deleteHomeAdvertise(id,params) {
  return request({
    url:'/singleProject/mx/delete/'+id,
    method:'post',
    // data:data
    params:params
  })
 }
 //添加
 export function createHomeAdvertise(params) {
  return request({
    url:'/singleProject/mx/add/',
    method:'post',
    params:params
  })
 }
//修改
 export function updateStatus(id,data) {
  return request({
    url:'/singleProject/mx/update/'+id,
    method:'post',
    data:data
  })
}

# request 封装

import axios from 'axios'
import { Message, MessageBox } from 'element-ui'
import store from '../store'
import { getToken } from '@/utils/auth'

// 创建axios实例
const service = axios.create({
  baseURL: process.env.BASE_API, // api的base_url
  timeout: 15000 // 请求超时时间
})

// request拦截器
service.interceptors.request.use(config => {
  if (store.getters.token) {
    config.headers['Authorization'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
  }
  return config
}, error => {
  // Do something with request error
  console.log(error) // for debug
  Promise.reject(error)
})

// respone拦截器
service.interceptors.response.use(
  response => {
  /**
  * code为非200是抛错 可结合自己业务进行修改
  */
    const res = response.data
    res.code = parseInt(res.code);
    if (res.code !== 200) {
      Message({
        message: res.message,
        type: 'error',
        duration: 3 * 1000
      })

      // 401:未登录;
      if (res.code === 401) {
        MessageBox.confirm('你已被登出,可以取消继续留在该页面,或者重新登录', '确定登出', {
          confirmButtonText: '重新登录',
          cancelButtonText: '取消',
          type: 'warning'
        }).then(() => {
          store.dispatch('FedLogOut').then(() => {
            location.reload()// 为了重新实例化vue-router对象 避免bug
          })
        })
      }
      return Promise.reject('error')
    } else {
      return response.data
    }
  },
  error => {
    console.log('err' + error)// for debug
    Message({
      message: error.message,
      type: 'error',
      duration: 3 * 1000
    })
    return Promise.reject(error)
  }
)

export default service

# Cookies 封装

import Cookies from 'js-cookie'

const TokenKey = 'loginToken'

export function getToken() {
  return Cookies.get(TokenKey)
}

export function setToken(token) {
  return Cookies.set(TokenKey, token)
}

export function removeToken() {
  return Cookies.remove(TokenKey)
}

export function setSJID(id) {
  return Cookies.set('SJID', id)
}

export function getSJID() {
  return Cookies.get('SJID')

# 查询接口 form-data

export function fetchList(params) {
  return request({
    url:'/singleProject/mx/list',
    method:'get',
    params:params
  })
}
import {fetchList} from '@/api/myapi/modeAdmin';

const defaultListQuery = {
    pageNum: 1,
    pageSize: 5,
    mxMc: null,
    mxLx: null,
};

data:{
    listQuery: Object.assign({}, defaultListQuery),
}

    
gitList(){
     this.listLoading = true;
     fetchList(this.listQuery).then(response => {
         this.listLoading = false;
         this.list = response.data.list;
         this.total = response.data.total;
     })
 }

# 删除接口

export function deleteHomeAdvertise(id,params) {
  return request({
    url:'/singleProject/mx/delete/'+id,
    method:'post',
    // data:data
    params:params
  })
}
<el-button @click="handleDelete(scope.row.mxId)">删除 </el-button>

import {fetchList,deleteHomeAdvertise} from '@/api/myapi/modeAdmin';

handleDelete(id) {
  deleteHomeAdvertise(id);
},

# 添加接口 form-data

export function createHomeAdvertise(params) {
  return request({
    url:'/singleProject/mx/add/',
    method:'post',
    params:params
  })
}
import {createHomeAdvertise} from '@/api/myapi/modeAdmin';

const params = new URLSearchParams()
params.append('mxMc',this.list.mxMc)
params.append('mxWjlj',this.list.mxWjlj)
params.append('mxScsj',this.list.mxScsj)
params.append('mxLx',this.list.mxLx)
params.append('sqId',this.list.sqId)
createHomeAdvertise(params).then(res=>{
    this.$router.push({path:'/tdm/modelAdmin'})
})

# 修改接口 josn

export function updateStatus(id,data) {
  return request({
    url:'/singleProject/mx/update/'+id,
    method:'post',
    data:data
  })
}
import {updateStatus} from '@/api/myapi/modeAdmin'; 
const list = {
     mxMc:this.list.mxMc,
     mxWjlj:this.list.mxWjlj,
     mxScsj:this.list.mxScsj,
     mxLx:this.list.mxLx,
     sqId:this.list.sqId
 }
 updateStatus(id,list).then(res=>{
     this.$router.push({path:'/tdm/modelAdmin'})
 })