/*
 *    Copyright (c) 2018-2025, cyweb All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions are met:
 *
 * Redistributions of source code must retain the above copyright notice,
 * this list of conditions and the following disclaimer.
 * Redistributions in binary form must reproduce the above copyright
 * notice, this list of conditions and the following disclaimer in the
 * documentation and/or other materials provided with the distribution.
 * Neither the name of the pig4cloud.com developer nor the names of its
 * contributors may be used to endorse or promote products derived from
 * this software without specific prior written permission.
 *
 */

import request from '/@/utils/request';

/**
 * 获取列表
 * @param query 查询参数
 */
export function fetchList(query?: any) {
	return request({
		url: '/finance/financenormalstu/page',
		method: 'get',
		params: query
	});
}

/**
 * 新增
 * @param obj 对象数据
 */
export function addObj(obj: any) {
	return request({
		url: '/finance/financenormalstu',
		method: 'post',
		data: obj
	});
}

/**
 * 获取详情
 * @param id ID
 */
export function getObj(id: string | number) {
	return request({
		url: '/finance/financenormalstu/' + id,
		method: 'get'
	});
}

/**
 * 删除
 * @param id ID
 */
export function delObj(id: string | number) {
	return request({
		url: '/finance/financenormalstu/' + id,
		method: 'delete'
	});
}

/**
 * 更新
 * @param obj 对象数据
 */
export function putObj(obj: any) {
	return request({
		url: '/finance/financenormalstu',
		method: 'put',
		data: obj
	});
}

/**
 * 班级提交
 * @param obj 对象数据
 */
export function classSubmit(obj: any) {
	return request({
		url: '/finance/financenormalstu/classSubmit',
		method: 'put',
		data: obj
	});
}

/**
 * 自动学费
 * @param obj 对象数据
 */
export function autoXF(obj: any) {
	return request({
		url: '/finance/financenormalstu/autoXF',
		method: 'put',
		data: obj
	});
}

/**
 * 获取学生信息
 * @param obj 对象数据
 */
export function getStuInfo(obj: any) {
	return request({
		url: '/finance/financenormalstu/getStuInfo',
		method: 'post',
		data: obj
	});
}

/**
 * 班级缴费
 * @param obj 对象数据
 */
export function fsClass(obj: any) {
	return request({
		url: '/finance/financenormalstu/fsClass',
		method: 'put',
		data: obj
	});
}

/**
 * 学生缴费
 * @param obj 对象数据
 */
export function stuFs(obj: any) {
	return request({
		url: '/finance/financenormalstu/stuFs',
		method: 'put',
		data: obj
	});
}

/**
 * 学生缴费2
 * @param obj 对象数据
 */
export function stuFs2(obj: any) {
	return request({
		url: '/finance/financePay/stuFs',
		method: 'put',
		data: obj
	});
}

/**
 * 更新缴费状态
 * @param obj 对象数据，包含 serialNumber
 */
export function updateFs(obj: any) {
	return request({
		url: '/finance/financePay/updateFs',
		method: 'put',
		data: obj
	});
}

/**
 * 批量更新缴费状态
 * @param obj 对象数据
 */
export function updateAllFS(obj: any) {
	return request({
		url: '/finance/financePay/updateFsAll',
		method: 'put',
		data: obj
	});
}

/**
 * 更新普通缴费状态
 * @param obj 对象数据
 */
export function updateNoramlFs(obj: any) {
	return request({
		url: '/finance/financenormalstu/updateNoramlFs',
		method: 'put',
		data: obj
	});
}

/**
 * 导出信息
 * @param query 查询参数
 */
export function exportInfo(query?: any) {
	return request({
		url: '/finance/financenormalstu/exportInfo',
		method: 'get',
		params: query
	});
}

/**
 * 更新班级学费
 * @param obj 对象数据
 */
export function updateClassXF(obj: any) {
	return request({
		url: '/finance/financenormalstu/updateClassXF',
		method: 'put',
		data: obj
	});
}
