import ajax from '../../util/ajax' import api from '../../util/api' export default { namespaced: true, state: { page: 0, list: [ { BookId: '1', BookTypeId: '1', BookName: '遮天', BookBarcode: '123456', BookImg: 'http://jingcheng-resourceplat.oss-cn-shanghai.aliyuncs.com/upload/135230460466.png', Author: '辰东', Publisher: '南京出版社', Price: 90.00, InStock: 10, LeftNum: 2, BorrowNum: 5, BorrowDays: 7, BookDescription: '《遮天》是一部古典仙侠类型的网络小说', CaseId: '1', OrgId: '1', CreateDate: new Date(), IsRecommend: 1, Status: 1, }, ], detail: {}, type: { page: 0, list: [ { BookTypeId: '1', BookTypeName: '测试', BookTypeImg: 'http://jingcheng-resourceplat.oss-cn-shanghai.aliyuncs.com/upload/135230460466.png', CaseId: '1', OrgId: '1', Nums: 100, Status: 1, CreateDate: new Date() } ], detail: { BookTypeId: '', BookTypeName: '', BookTypeImg: '', CaseId: '', OrgId: '1', Status: 1, CreateDate: new Date() }, }, stock: { list: [ { RecordId: '1', BookId: '1', InStockTotal: 20, InStockBefore: 8, InStockAfter: 10, ChangeReason: '补库存', ChangeDate: new Date(), ChangeUser: '1', ChangeUserName: 'admin', CaseId: '1', OrgId: '1', } ], detail: {}, }, borrow: { list: [], history: {}, }, bookReturn: { list: [], }, }, mutations: { mergeTypeDetail (state, payload) { state.type.detail = payload || {} if (payload && payload.BookTypeId) { state.type.list = (state.type.list || []).map(x => x.BookTypeId === payload.BookTypeId ? payload : x) } }, mergeBookDetail (state, payload) { state.detail = payload || {} if (payload && payload.BookId) { state.list = (state.list || []).map(x => x.BookId === payload.BookId ? payload : x) } }, setBorrowList (state, payload) { // 更新借阅记录 state.borrow.list = payload } }, actions: { cancelBorrow ({ commit }, payload) { // 取消预约 return new Promise((resolve, reject) => { ajax(api.borrow.cancelBorrow.url, { method: api.borrow.cancelBorrow.method, urlData: { id: payload } }).then(res => { resolve(res) }).catch(({ message }) => reject(message)) }) }, getBorrowList ({ commit }, payload) { // 获取借阅记录 return new Promise((resolve, reject) => { ajax(api.borrow.getBorrowList.url, { method: api.borrow.getBorrowList.method, queryData: { ...payload, } }).then(res => { commit('setBorrowList', res.list) resolve(res) }).catch(({ message }) => reject(message)) }) }, getTypeList ({ commit }, payload) { return new Promise((resolve, reject) => { }) }, getTypeDetail ({ commit }, payload) { return new Promise((resolve, reject) => { }) }, updateTypeDetail ({ commit }, payload) { return new Promise((resolve, reject) => { }) }, deleteType ({ commit }, payload) { return new Promise((resolve, reject) => { }) }, getBookList ({ commit }, payload) { return new Promise((resolve, reject) => { }) }, getBookDetail ({ commit }, payload) { return new Promise((resolve, reject) => { }) }, updateBookDetail ({ commit }, payload) { return new Promise((resolve, reject) => { }) }, deleteBook ({ commit }, payload) { return new Promise((resolve, reject) => { }) }, setBookRecommend ({ commit }, payload) { return new Promise((resolve, reject) => { }) }, getStockList ({ commit }, payload) { return new Promise((resolve, reject) => { }) }, }, }