reimbursement.js 3.08 KB
import request from '@/service/request.js'
import config from '@/common/config.js'

export default {
	// 获取报销申请列表
	getReimbursementList(params) {
		return request.get(`${config.getApiBaseUrl()}/api/Extend/LqReimbursementApplication`, params);
	},
	// 获取报销申请详情
	getReimbursementDetail(id) {
		return request.get(`${config.getApiBaseUrl()}/api/Extend/LqReimbursementApplication/${id}`);
	},
	// 创建报销申请
	createReimbursement(data) {
		return request.post(`${config.getApiBaseUrl()}/api/Extend/LqReimbursementApplication`, data);
	},
	// 更新报销申请
	updateReimbursement(id, data) {
		return request.put(`${config.getApiBaseUrl()}/api/Extend/LqReimbursementApplication/${id}`, data);
	},
	// 获取未报销的购买记录列表(不分页)
	getUnreimbursedPurchaseList(params) {
		return request.get(`${config.getApiBaseUrl()}/api/Extend/LqPurchaseRecords/Actions/GetNoPagingList`, params);
	},
	// 获取门店列表
	getStoreList(params) {
		return request.get(`${config.getApiBaseUrl()}/api/Extend/LqMdxx`, params);
	},
	objToUrlParams(params) {
	  if (typeof params !== 'object' || params === null) {
	    return '';
	  }
	  return Object.entries(params)
	    .filter(([_, value]) => value !== undefined && value !== null) // 过滤空值
	    .map(([key, value]) => {
	      // 编码参数,避免特殊字符(如中文、&、=)导致异常
	      // const encodeKey = encodeURIComponent(key);
	      // const encodeValue = encodeURIComponent(String(value));
		  
		  const encodeKey = key;
		  const encodeValue = value;
	      return `${encodeKey}=${encodeValue}`;
	    })
	    .join('&');
	},
	// 审批(支持通过、不通过、退回)
	approveReimbursement(id, params) {
		console.error(params)
		const urlParamsStr = this.objToUrlParams(params);
		console.log(urlParamsStr); 
		// const queryParams = new URLSearchParams()
		// if (params && params.result) {
		// 	queryParams.append('result', params.result)
		// }
		// if (params && params.opinion) {
		// 	queryParams.append('opinion', params.opinion)
		// }
		const queryString = urlParamsStr
		const url = `${config.getApiBaseUrl()}/api/Extend/LqReimbursementApplication/${id}/Actions/Approve${queryString ? '?' + queryString : ''}`
		return request.post(url);
	},
	// 拒绝审批
	rejectReimbursement(id) {
		return request.post(`${config.getApiBaseUrl()}/api/Extend/LqReimbursementApplication/${id}/Actions/Reject`);
	},
	// 提交审批
	submitApproval(id) {
		return request.post(`${config.getApiBaseUrl()}/api/Extend/LqReimbursementApplication/${id}/Actions/SubmitApproval`);
	},
	// 获取我的待办列表
	getMyPendingList(params) {
		return request.get(`${config.getApiBaseUrl()}/api/Extend/LqReimbursementApplication/Actions/PendingApproval`, params);
	},
	// 获取启用的工作流配置列表
	getEnabledWorkflowConfigList() {
		return request.get(`${config.getApiBaseUrl()}/api/Extend/LqReimbursementWorkflowConfig/Actions/GetEnabledList`);
	},
	// 获取工作流配置详情
	getWorkflowConfigDetail(id) {
		return request.get(`${config.getApiBaseUrl()}/api/Extend/LqReimbursementWorkflowConfig/${id}`);
	}
}