import request from '@/utils/common/request' import consts from '@/utils/consts' /** * 标段升降、上下移、增删 * @param type - 操作类型 * @param payload - 载荷 */ export async function apiResfulContractTree(type: string, payload: object) { let url: string = '', method: string = '' switch (type) { case 'serial': url = '/api/contract/section/serial' method = 'post' break case 'depth': url = '/api/contract/section/depth' method = 'post' break case 'add': url = '/api/contract/section/add' method = 'post' break case 'del': url = '/api/contract/section' method = 'del' break default: break } const { data } = await request[method](url, { ...payload, treeType: consts.CONTRACT_TREE.PAID }) return data } /** * 获取单个合同详情和项目节详情 * @param id - 项目节id * @param bidsectionId - 标段id */ export async function apiGetExpenditure(id: string, bidsectionId: string) { const { data } = await request.get('/api/contract/expenditure', { id, bidsectionId }) return data } /** * 修改合同节序号 * @param id 项目节id * @param bidsectionId 标段id * @param serial 序号 */ export async function apiUpdateSerial(id: string, bidsectionId: string, serial: string) { const { data } = await request.post('/api/contract/section/serial/update', { id, bidsectionId, serial: parseInt(serial), treeType: consts.CONTRACT_TREE.PAID }) return data } /** * 修改合同节名称 * @param id 项目节id * @param bidsectionId 标段id * @param name 名称 */ export async function apiUpdateName(id: string, bidsectionId: string, name: string) { const { data } = await request.post('/api/contract/section/save', { id, bidsectionId, name, treeType: consts.CONTRACT_TREE.PAID }) return data } /** * 合同增删改(包括添加已支付) * @param type - 操作类型 * @param payload - 载荷 */ export async function apiResfulContract(type: string, payload: object) { let url: string = '', method: string = '' switch (type) { case 'create': url = '/api/contract/expenditure/create' method = 'post' break case 'update': url = '/api/contract/expenditure/update' method = 'post' break case 'close': url = '/api/contract/close' method = 'post' break case 'del': url = '/api/contract/expenditure' method = 'del' break case 'unlock': url = '/api/contract/unlock' method = 'post' break case 'paid': url = '/api/contract/paid/create' method = 'post' break default: break } const { data } = await request[method](url, { ...payload, treeType: consts.CONTRACT_TREE.PAID }) return data }