采购管理: 新增采购计划相关功能及组件

文件上传: 增加拖拽上传功能并优化组件逻辑
库存管理: 移除表格固定高度以改善显示效果
采购计划: 添加类型定义文件及接口文档
This commit is contained in:
re-JZzzz
2025-09-26 20:05:38 +08:00
parent dd32d930d7
commit 086b52f88f
8 changed files with 1299 additions and 503 deletions

View File

@ -0,0 +1,56 @@
import request from '@/utils/request';
import { AxiosPromise } from 'axios';
import { CaigouPlanVO, CaigouPlanForm, CaigouPlanQuery } from '@/api/wuziguanli/caigouPlan/types';
/**
* 查询运维-物资-采购计划单列表
* @param query
* @returns {*}
*/
export const listCaigouPlan = (query?: CaigouPlanQuery): AxiosPromise<CaigouPlanVO[]> => {
return request({
url: '/ops/caigouPlan/list',
method: 'get',
params: query
});
};
/**
* 查询采购商列表
* @param query
* @returns {*}
*/
export const getSupplierList = (data:any): AxiosPromise<any> => {
return request({
url: '/ops/tenderSupplierInput/getList',
method: 'get',
params: data
});
};
/**
* 新增运维-物资-采购计划单
* @param data
* @returns {*}
*/
export const addCaigouPlan = (data: CaigouPlanForm): AxiosPromise<CaigouPlanVO> => {
return request({
url: '/ops/caigouPlan',
method: 'post',
data: data
});
};
/**
* 查询运维-物资-采购计划单详情
* @param id
* @returns {*}
*/
export const caigouPlanDetail = (id: string | number): AxiosPromise<CaigouPlanVO> => {
return request({
url: `/ops/caigouPlan/`+id,
method: 'get'
});
};

View File

@ -0,0 +1,558 @@
export interface CaigouPlanVO {
/**
* id
*/
id: string | number;
/**
* 项目id
*/
projectId: string | number;
/**
* 计划名称
*/
jihuaName: string;
/**
* 计划编号
*/
jihuaBianhao: string;
/**
* 采购单位(当前登录人部门)
*/
caigouDanwei: number;
/**
* 采购单位名称
*/
caigouDanweiName: string;
/**
* 经办人
*/
jingbanren: number;
/**
* 经办人名称
*/
jingbanrenName: string;
/**
* 合同类型
*/
hetonType: string;
/**
* 采购类型
*/
caigouType: string;
/**
* 仓库地址
*/
cangkuUrl: string;
/**
* 合同名称
*/
hetonName: string;
/**
* 供应商id
*/
gonyingshangId: string | number;
/**
* 出货时间
*/
chuhuoTime: string;
/**
* 付款条件
*/
fukuantiaojian: string;
/**
* 发票开具方式
*/
fapiaoKjfs: string;
/**
* 计划状态
*/
status: string;
/**
* 审核状态
*/
shenheStatus: string;
/**
* 预计金额
*/
yujiJine: number;
/**
* 实际采购金额
*/
shijiJine: number;
/**
* 文件id
*/
fileId: string | number;
/**
* 文件地址
*/
fileUrl: string;
/**
* 文件名称
*/
fileName: string;
/**
* 采购申请计划id
*/
caigouPlanId: string | number;
/**
* 产品名称
*/
chanpinName: string;
/**
* 产品型号
*/
chanpinType: string;
/**
* 产品单价
*/
chanpinMonovalent: number;
/**
* 购买数量
*/
goumaiNumber: number;
/**
* 单位
*/
danwei: string;
/**
* 用途
*/
yontu: string;
/**
* 总价
*/
totalPrice: number;
/**
* 申请时间
*/
createTime?: string;
/**
* 出货时间
*/
chouhuoTime?: string;
/**
* 采购申请计划文件 新增
*/
opsCaigouPlanFilesBos?: Array<any>;
/**
* 采购申请计划产品 新增
*/
opsCaigouPlanChanpinBos?:Array<any>;
/**
* 采购申请计划产品 查询
*/
opsCaigouPlanChanpinVos?: Array<any>;
/**
* 采购申请计划文件 查询
*/
opsCaigouPlanFilesVos?: Array<any>;
}
export interface CaigouPlanForm extends BaseEntity {
/**
* id
*/
id?: string | number;
/**
* 项目id
*/
projectId?: string | number;
/**
* 计划名称
*/
jihuaName?: string;
/**
* 计划编号
*/
jihuaBianhao?: string;
/**
* 采购单位(当前登录人部门)
*/
caigouDanwei?: number;
/**
* 采购单位名称
*/
caigouDanweiName?: string;
/**
* 经办人
*/
jingbanren?: number;
/**
* 经办人名称
*/
jingbanrenName?: string;
/**
* 合同类型
*/
hetonType?: string;
/**
* 采购类型
*/
caigouType?: string;
/**
* 仓库地址
*/
cangkuUrl?: string;
/**
* 合同名称
*/
hetonName?: string;
/**
* 供应商id
*/
gonyingshangId?: string | number;
/**
* 出货时间
*/
chuhuoTime?: string;
/**
* 付款条件
*/
fukuantiaojian?: string;
/**
* 发票开具方式
*/
fapiaoKjfs?: string;
/**
* 计划状态
*/
status?: string;
/**
* 审核状态
*/
shenheStatus?: string;
/**
* 预计金额
*/
yujiJine?: number;
/**
* 实际采购金额
*/
shijiJine?: number;
/**
* 采购申请计划id
*/
caigouPlanId?: string | number;
/**
* 文件id
*/
fileId?: string | number;
/**
* 文件地址
*/
fileUrl?: string;
/**
* 文件名称
*/
fileName?: string;
/**
* 产品名称
*/
chanpinName?: string;
/**
* 产品型号
*/
chanpinType?: string;
/**
* 产品单价
*/
chanpinMonovalent?: number;
/**
* 购买数量
*/
goumaiNumber?: number;
/**
* 单位
*/
danwei?: string;
/**
* 用途
*/
yontu?: string;
/**
* 总价
*/
totalPrice?: number;
/**
* 采购申请计划文件 新增
*/
opsCaigouPlanFilesBos?: Array<any>;
/**
* 采购申请计划产品 新增
*/
opsCaigouPlanChanpinBos?:Array<any>;
/**
* 采购申请计划产品 查询
*/
opsCaigouPlanChanpinVos?: Array<any>;
/**
* 采购申请计划文件 查询
*/
opsCaigouPlanFilesVos?: Array<any>;
/**
* 申请时间
*/
createTime?: string;
/**
* 出货时间
*/
chouhuoTime?: string;
}
export interface CaigouPlanQuery extends PageQuery {
/**
* 项目id
*/
projectId?: string | number;
/**
* 计划名称
*/
jihuaName?: string;
/**
* 计划编号
*/
jihuaBianhao?: string;
/**
* 采购单位(当前登录人部门)
*/
caigouDanwei?: number;
/**
* 采购单位名称
*/
caigouDanweiName?: string;
/**
* 经办人
*/
jingbanren?: number;
/**
* 经办人名称
*/
jingbanrenName?: string;
/**
* 合同类型
*/
hetonType?: string;
/**
* 采购类型
*/
caigouType?: string;
/**
* 仓库地址
*/
cangkuUrl?: string;
/**
* 合同名称
*/
hetonName?: string;
/**
* 供应商id
*/
gonyingshangId?: string | number;
/**
* 出货时间
*/
chuhuoTime?: string;
/**
* 付款条件
*/
fukuantiaojian?: string;
/**
* 发票开具方式
*/
fapiaoKjfs?: string;
/**
* 计划状态
*/
status?: string;
/**
* 审核状态
*/
shenheStatus?: string;
/**
* 预计金额
*/
yujiJine?: number;
/**
* 实际采购金额
*/
shijiJine?: number;
/**
* 日期范围参数
*/
params?: any;
/**
* 采购申请计划id
*/
caigouPlanId?: string | number;
/**
* 文件id
*/
fileId?: string | number;
/**
* 文件地址
*/
fileUrl?: string;
/**
* 文件名称
*/
fileName?: string;
/**
* 产品名称
*/
chanpinName?: string;
/**
* 产品型号
*/
chanpinType?: string;
/**
* 产品单价
*/
chanpinMonovalent?: number;
/**
* 购买数量
*/
goumaiNumber?: number;
/**
* 单位
*/
danwei?: string;
/**
* 用途
*/
yontu?: string;
/**
* 总价
*/
totalPrice?: number;
/**
* 采购申请计划文件 新增
*/
opsCaigouPlanFilesBos?: Array<any>;
/**
* 采购申请计划产品 新增
*/
opsCaigouPlanChanpinBos?:Array<any>;
/**
* 采购申请计划产品 查询
*/
opsCaigouPlanChanpinVos?: Array<any>;
/**
* 采购申请计划文件 查询
*/
opsCaigouPlanFilesVos?: Array<any>;
/**
* 申请时间
*/
createTime?: string;
/**
* 出货时间
*/
chouhuoTime?: string;
}