|
@@ -3,15 +3,19 @@ import {FormSchema} from '/@/components/Table';
|
|
import { rules} from '/@/utils/helper/validator';
|
|
import { rules} from '/@/utils/helper/validator';
|
|
import { render } from '/@/utils/common/renderUtils';
|
|
import { render } from '/@/utils/common/renderUtils';
|
|
import { getWeekMonthQuarterYear } from '/@/utils';
|
|
import { getWeekMonthQuarterYear } from '/@/utils';
|
|
|
|
+import { defHttp } from '/@/utils/http/axios';
|
|
|
|
+import {ref,onMounted} from 'vue';
|
|
|
|
+var customerOption = ref([])
|
|
|
|
+var projectOption = ref([])
|
|
//列表数据
|
|
//列表数据
|
|
export const columns: BasicColumn[] = [
|
|
export const columns: BasicColumn[] = [
|
|
- {
|
|
|
|
- title: '状态(1-启用,0-停用)',
|
|
|
|
|
|
+ {
|
|
|
|
+ title: '单据编码(bill code)',
|
|
align:"center",
|
|
align:"center",
|
|
- dataIndex: 'status'
|
|
|
|
|
|
+ dataIndex: 'billCode'
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- title: '单据日期',
|
|
|
|
|
|
+ title: '单据日期(bill date)',
|
|
align:"center",
|
|
align:"center",
|
|
dataIndex: 'billDate',
|
|
dataIndex: 'billDate',
|
|
customRender:({text}) =>{
|
|
customRender:({text}) =>{
|
|
@@ -19,171 +23,176 @@ export const columns: BasicColumn[] = [
|
|
return text;
|
|
return text;
|
|
},
|
|
},
|
|
},
|
|
},
|
|
|
|
+
|
|
{
|
|
{
|
|
- title: '单据编码',
|
|
|
|
- align:"center",
|
|
|
|
- dataIndex: 'billCode'
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- title: '项目',
|
|
|
|
|
|
+ title: '项目(project)',
|
|
align:"center",
|
|
align:"center",
|
|
dataIndex: 'projectId'
|
|
dataIndex: 'projectId'
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- title: '客户',
|
|
|
|
|
|
+ title: '客户(customer)',
|
|
align:"center",
|
|
align:"center",
|
|
dataIndex: 'customerId'
|
|
dataIndex: 'customerId'
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- title: '采购方式',
|
|
|
|
|
|
+ title: '采购方式(procurement method)',
|
|
align:"center",
|
|
align:"center",
|
|
dataIndex: 'procurementMethod'
|
|
dataIndex: 'procurementMethod'
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- title: '招标项目号',
|
|
|
|
|
|
+ title: '招标项目号(tender code)',
|
|
align:"center",
|
|
align:"center",
|
|
dataIndex: 'tenderCode'
|
|
dataIndex: 'tenderCode'
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- title: '招标项目名称',
|
|
|
|
|
|
+ title: '招标项目名称(tender name)',
|
|
align:"center",
|
|
align:"center",
|
|
dataIndex: 'tenderName'
|
|
dataIndex: 'tenderName'
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- title: '包号',
|
|
|
|
- align:"center",
|
|
|
|
- dataIndex: 'packetNumber'
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- title: '投标时间',
|
|
|
|
|
|
+ title: '投标时间(bid Time)',
|
|
align:"center",
|
|
align:"center",
|
|
dataIndex: 'bidTime'
|
|
dataIndex: 'bidTime'
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- title: '开标时间',
|
|
|
|
|
|
+ title: '开标时间(opening time)',
|
|
align:"center",
|
|
align:"center",
|
|
dataIndex: 'openingTime'
|
|
dataIndex: 'openingTime'
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- title: '项目总价',
|
|
|
|
|
|
+ title: '项目总价(total money)',
|
|
align:"center",
|
|
align:"center",
|
|
dataIndex: 'totalMoney'
|
|
dataIndex: 'totalMoney'
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- title: '投标结果',
|
|
|
|
|
|
+ title: '投标结果(tender result)',
|
|
align:"center",
|
|
align:"center",
|
|
dataIndex: 'tenderResult'
|
|
dataIndex: 'tenderResult'
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- title: '中标方',
|
|
|
|
- align:"center",
|
|
|
|
- dataIndex: 'winningBidder'
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- title: '中标价',
|
|
|
|
- align:"center",
|
|
|
|
- dataIndex: 'bidPrice'
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- title: '参与家数',
|
|
|
|
- align:"center",
|
|
|
|
- dataIndex: 'households'
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- title: '备注',
|
|
|
|
|
|
+ title: '备注(notes)',
|
|
align:"center",
|
|
align:"center",
|
|
dataIndex: 'notes'
|
|
dataIndex: 'notes'
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- title: '附件',
|
|
|
|
- align:"center",
|
|
|
|
- dataIndex: 'attachs'
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- title: '提交(0未提交,1已提交)',
|
|
|
|
|
|
+ title: '提交(submit)',
|
|
align:"center",
|
|
align:"center",
|
|
- dataIndex: 'submit'
|
|
|
|
|
|
+ dataIndex: 'submit',
|
|
|
|
+ customRender:function (t, r, index) {
|
|
|
|
+ if(t.text==1){
|
|
|
|
+ return '是(yes)'
|
|
|
|
+ }else if(t.text==0){
|
|
|
|
+ return '否(no)'
|
|
|
|
+ }
|
|
|
|
+ }
|
|
},
|
|
},
|
|
];
|
|
];
|
|
//查询数据
|
|
//查询数据
|
|
export const searchFormSchema: FormSchema[] = [
|
|
export const searchFormSchema: FormSchema[] = [
|
|
{
|
|
{
|
|
- label: "单据编码",
|
|
|
|
|
|
+ label: "单据编码(bill code)",
|
|
field: 'billCode',
|
|
field: 'billCode',
|
|
component: 'Input',
|
|
component: 'Input',
|
|
|
|
+ labelWidth:150
|
|
//colProps: {span: 6},
|
|
//colProps: {span: 6},
|
|
},
|
|
},
|
|
|
|
+
|
|
{
|
|
{
|
|
- label: "项目",
|
|
|
|
- field: 'projectId',
|
|
|
|
- component: 'Input',
|
|
|
|
- //colProps: {span: 6},
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- label: "客户",
|
|
|
|
|
|
+ label: "客户(customer)",
|
|
field: 'customerId',
|
|
field: 'customerId',
|
|
- component: 'Input',
|
|
|
|
|
|
+ labelWidth:150,
|
|
|
|
+ component: 'JSelectInput',
|
|
|
|
+ componentProps:{
|
|
|
|
+ options:customerOption
|
|
|
|
+ },
|
|
|
|
+
|
|
//colProps: {span: 6},
|
|
//colProps: {span: 6},
|
|
},
|
|
},
|
|
|
|
+ {
|
|
|
|
+ label: "投标结果(tender result)",
|
|
|
|
+ field: 'tenderResult',
|
|
|
|
+ component: 'JSelectMultiple',
|
|
|
|
+ componentProps:{
|
|
|
|
+ dictCode:"tender_result"
|
|
|
|
+ },
|
|
|
|
+ labelWidth:180
|
|
|
|
+ //colProps: {span: 6},
|
|
|
|
+ },
|
|
{
|
|
{
|
|
- label: "招标项目号",
|
|
|
|
|
|
+ label: "招标项目号(tender code)",
|
|
field: 'tenderCode',
|
|
field: 'tenderCode',
|
|
component: 'Input',
|
|
component: 'Input',
|
|
|
|
+ labelWidth:200,
|
|
//colProps: {span: 6},
|
|
//colProps: {span: 6},
|
|
},
|
|
},
|
|
- {
|
|
|
|
- label: "招标项目名称",
|
|
|
|
- field: 'tenderName',
|
|
|
|
- component: 'Input',
|
|
|
|
- //colProps: {span: 6},
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- label: "投标时间",
|
|
|
|
- field: "bidTime",
|
|
|
|
- component: 'RangePicker',
|
|
|
|
- componentProps: {
|
|
|
|
- valueType: 'Date',
|
|
|
|
- showTime:true
|
|
|
|
- },
|
|
|
|
|
|
+ {
|
|
|
|
+ label: "项目(project)",
|
|
|
|
+ field: 'projectId',
|
|
|
|
+ component: 'JSelectInput',
|
|
|
|
+ labelWidth:150,
|
|
|
|
+ componentProps:{
|
|
|
|
+ options:projectOption
|
|
|
|
+ },
|
|
|
|
+ //colProps: {span: 6},
|
|
|
|
+ },
|
|
|
|
+
|
|
|
|
+ {
|
|
|
|
+ label: "投标时间(bid Time)",
|
|
|
|
+ field: "bidTime",
|
|
|
|
+ component: 'RangePicker',
|
|
|
|
+ labelWidth:150,
|
|
|
|
+ componentProps: {
|
|
|
|
+ valueType: 'Date',
|
|
|
|
+ showTime:true
|
|
|
|
+ },
|
|
//colProps: {span: 6},
|
|
//colProps: {span: 6},
|
|
},
|
|
},
|
|
- {
|
|
|
|
- label: "开标时间",
|
|
|
|
- field: "openingTime",
|
|
|
|
- component: 'RangePicker',
|
|
|
|
- componentProps: {
|
|
|
|
- valueType: 'Date',
|
|
|
|
- showTime:true
|
|
|
|
- },
|
|
|
|
|
|
+ {
|
|
|
|
+ label: "开标时间(opening time)",
|
|
|
|
+ field: "openingTime",
|
|
|
|
+ component: 'RangePicker',
|
|
|
|
+ labelWidth:180,
|
|
|
|
+ componentProps: {
|
|
|
|
+ valueType: 'Date',
|
|
|
|
+ showTime:true
|
|
|
|
+ },
|
|
//colProps: {span: 6},
|
|
//colProps: {span: 6},
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- label: "投标结果",
|
|
|
|
- field: 'tenderResult',
|
|
|
|
- component: 'InputNumber',
|
|
|
|
- //colProps: {span: 6},
|
|
|
|
- },
|
|
|
|
|
|
+ label: "招标项目名称(tender name)",
|
|
|
|
+ field: 'tenderName',
|
|
|
|
+ component: 'Input',
|
|
|
|
+ labelWidth:200
|
|
|
|
+ //colProps: {span: 6},
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ label: "备注(notes)",
|
|
|
|
+ field: 'tenderCode',
|
|
|
|
+ component: 'Input',
|
|
|
|
+ labelWidth:150
|
|
|
|
+ //colProps: {span: 6},
|
|
|
|
+ },
|
|
{
|
|
{
|
|
- label: "提交(0未提交,1已提交)",
|
|
|
|
|
|
+ label: "提交(submit)",
|
|
field: 'submit',
|
|
field: 'submit',
|
|
- component: 'InputNumber',
|
|
|
|
|
|
+ component: 'JSelectMultiple',
|
|
|
|
+ labelWidth:150,
|
|
|
|
+ componentProps:{
|
|
|
|
+ dictCode:"yes_or_no"
|
|
|
|
+ },
|
|
//colProps: {span: 6},
|
|
//colProps: {span: 6},
|
|
},
|
|
},
|
|
];
|
|
];
|
|
//表单数据
|
|
//表单数据
|
|
export const formSchema: FormSchema[] = [
|
|
export const formSchema: FormSchema[] = [
|
|
{
|
|
{
|
|
- label: '状态(1-启用,0-停用)',
|
|
|
|
- field: 'status',
|
|
|
|
- component: 'InputNumber',
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- label: '单据日期',
|
|
|
|
|
|
+ label: '单据日期(bill date)',
|
|
field: 'billDate',
|
|
field: 'billDate',
|
|
component: 'DatePicker',
|
|
component: 'DatePicker',
|
|
componentProps: {
|
|
componentProps: {
|
|
valueFormat: 'YYYY-MM-DD'
|
|
valueFormat: 'YYYY-MM-DD'
|
|
},
|
|
},
|
|
|
|
+ labelWidth:150,
|
|
dynamicRules: ({model,schema}) => {
|
|
dynamicRules: ({model,schema}) => {
|
|
return [
|
|
return [
|
|
{ required: true, message: '请输入单据日期!'},
|
|
{ required: true, message: '请输入单据日期!'},
|
|
@@ -191,14 +200,19 @@ export const formSchema: FormSchema[] = [
|
|
},
|
|
},
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- label: '单据编码',
|
|
|
|
|
|
+ label: '单据编码(bill code)',
|
|
field: 'billCode',
|
|
field: 'billCode',
|
|
component: 'Input',
|
|
component: 'Input',
|
|
|
|
+ labelWidth:220,
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- label: '项目',
|
|
|
|
|
|
+ label: '项目(project)',
|
|
field: 'projectId',
|
|
field: 'projectId',
|
|
- component: 'Input',
|
|
|
|
|
|
+ component: 'JSelectInput',
|
|
|
|
+ componentProps:{
|
|
|
|
+ options:projectOption
|
|
|
|
+ },
|
|
|
|
+ labelWidth:150,
|
|
dynamicRules: ({model,schema}) => {
|
|
dynamicRules: ({model,schema}) => {
|
|
return [
|
|
return [
|
|
{ required: true, message: '请输入项目!'},
|
|
{ required: true, message: '请输入项目!'},
|
|
@@ -206,43 +220,55 @@ export const formSchema: FormSchema[] = [
|
|
},
|
|
},
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- label: '客户',
|
|
|
|
- field: 'customerId',
|
|
|
|
- component: 'Input',
|
|
|
|
|
|
+ label: '采购方式(procurement method)',
|
|
|
|
+ field: 'procurementMethod',
|
|
|
|
+ component: 'JDictSelectTag',
|
|
|
|
+ componentProps:{
|
|
|
|
+ dictCode:"procurement_method"
|
|
|
|
+ },
|
|
|
|
+ labelWidth:220,
|
|
dynamicRules: ({model,schema}) => {
|
|
dynamicRules: ({model,schema}) => {
|
|
return [
|
|
return [
|
|
- { required: true, message: '请输入客户!'},
|
|
|
|
|
|
+ { required: true, message: '请输入采购方式!'},
|
|
];
|
|
];
|
|
},
|
|
},
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- label: '采购方式',
|
|
|
|
- field: 'procurementMethod',
|
|
|
|
- component: 'InputNumber',
|
|
|
|
|
|
+ label: '客户(customer)',
|
|
|
|
+ field: 'customerId',
|
|
|
|
+ component: 'JSelectInput',
|
|
|
|
+ componentProps:{
|
|
|
|
+ options:customerOption
|
|
|
|
+ },
|
|
|
|
+ labelWidth:150,
|
|
dynamicRules: ({model,schema}) => {
|
|
dynamicRules: ({model,schema}) => {
|
|
return [
|
|
return [
|
|
- { required: true, message: '请输入采购方式!'},
|
|
|
|
|
|
+ { required: true, message: '请输入客户!'},
|
|
];
|
|
];
|
|
},
|
|
},
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- label: '招标项目号',
|
|
|
|
|
|
+ label: '招标项目号(tender code)',
|
|
field: 'tenderCode',
|
|
field: 'tenderCode',
|
|
component: 'Input',
|
|
component: 'Input',
|
|
|
|
+ labelWidth:220,
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- label: '招标项目名称',
|
|
|
|
- field: 'tenderName',
|
|
|
|
|
|
+ label: '包号(packet number)',
|
|
|
|
+ field: 'packetNumber',
|
|
|
|
+ labelWidth:150,
|
|
component: 'Input',
|
|
component: 'Input',
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- label: '包号',
|
|
|
|
- field: 'packetNumber',
|
|
|
|
|
|
+ label: '招标项目名称(tender name)',
|
|
|
|
+ field: 'tenderName',
|
|
component: 'Input',
|
|
component: 'Input',
|
|
|
|
+ labelWidth:220,
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- label: '投标时间',
|
|
|
|
|
|
+ label: '投标时间(bid Time)',
|
|
field: 'bidTime',
|
|
field: 'bidTime',
|
|
|
|
+ labelWidth:150,
|
|
component: 'DatePicker',
|
|
component: 'DatePicker',
|
|
componentProps: {
|
|
componentProps: {
|
|
showTime: true,
|
|
showTime: true,
|
|
@@ -250,8 +276,9 @@ export const formSchema: FormSchema[] = [
|
|
},
|
|
},
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- label: '开标时间',
|
|
|
|
|
|
+ label: '开标时间(opening time)',
|
|
field: 'openingTime',
|
|
field: 'openingTime',
|
|
|
|
+ labelWidth:220,
|
|
component: 'DatePicker',
|
|
component: 'DatePicker',
|
|
componentProps: {
|
|
componentProps: {
|
|
showTime: true,
|
|
showTime: true,
|
|
@@ -259,39 +286,49 @@ export const formSchema: FormSchema[] = [
|
|
},
|
|
},
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- label: '项目总价',
|
|
|
|
|
|
+ label: '项目总价(total money)',
|
|
|
|
+ labelWidth:150,
|
|
field: 'totalMoney',
|
|
field: 'totalMoney',
|
|
component: 'InputNumber',
|
|
component: 'InputNumber',
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- label: '投标结果',
|
|
|
|
|
|
+ label: '投标结果(tender result)',
|
|
field: 'tenderResult',
|
|
field: 'tenderResult',
|
|
- component: 'InputNumber',
|
|
|
|
|
|
+ labelWidth:220,
|
|
|
|
+ component: 'JDictSelectTag',
|
|
|
|
+ componentProps:{
|
|
|
|
+ dictCode:"tender_result"
|
|
|
|
+ },
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- label: '中标方',
|
|
|
|
|
|
+ label: '中标方(winning bidder)',
|
|
field: 'winningBidder',
|
|
field: 'winningBidder',
|
|
|
|
+ labelWidth:150,
|
|
component: 'Input',
|
|
component: 'Input',
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- label: '中标价',
|
|
|
|
|
|
+ label: '中标价(bid price)',
|
|
field: 'bidPrice',
|
|
field: 'bidPrice',
|
|
|
|
+ labelWidth:220,
|
|
component: 'InputNumber',
|
|
component: 'InputNumber',
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- label: '参与家数',
|
|
|
|
|
|
+ label: '参与家数(households)',
|
|
field: 'households',
|
|
field: 'households',
|
|
|
|
+ labelWidth:150,
|
|
component: 'Input',
|
|
component: 'Input',
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- label: '备注',
|
|
|
|
|
|
+ label: '备注(notes)',
|
|
field: 'notes',
|
|
field: 'notes',
|
|
|
|
+ labelWidth:220,
|
|
component: 'Input',
|
|
component: 'Input',
|
|
},
|
|
},
|
|
{
|
|
{
|
|
- label: '附件',
|
|
|
|
|
|
+ label: '附件(attachs)',
|
|
field: 'attachs',
|
|
field: 'attachs',
|
|
- component: 'Input',
|
|
|
|
|
|
+ labelWidth:150,
|
|
|
|
+ component: 'JUpload',
|
|
},
|
|
},
|
|
// TODO 主键隐藏字段,目前写死为ID
|
|
// TODO 主键隐藏字段,目前写死为ID
|
|
{
|
|
{
|
|
@@ -332,4 +369,30 @@ export const superQuerySchema = {
|
|
export function getBpmFormSchema(_formData): FormSchema[]{
|
|
export function getBpmFormSchema(_formData): FormSchema[]{
|
|
// 默认和原始表单保持一致 如果流程中配置了权限数据,这里需要单独处理formSchema
|
|
// 默认和原始表单保持一致 如果流程中配置了权限数据,这里需要单独处理formSchema
|
|
return formSchema;
|
|
return formSchema;
|
|
-}
|
|
|
|
|
|
+}
|
|
|
|
+export function getCustomerOptions(){
|
|
|
|
+ let params = {pageSize:'-1'}
|
|
|
|
+ defHttp.get({url:'/cuspCode/cuspCustomerProfile/list',params}, { isTransformResponse: false }).then(res=>{
|
|
|
|
+ if(res){
|
|
|
|
+ res.result.records.forEach(item=>{
|
|
|
|
+ customerOption.value.push({
|
|
|
|
+ label: item.name,
|
|
|
|
+ value: item.id
|
|
|
|
+ })
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+}
|
|
|
|
+export function getProjectOptions(){
|
|
|
|
+ let params = {pageSize:'-1'}
|
|
|
|
+ defHttp.get({url:'/baseCode/baseProjectArchive/list',params}, { isTransformResponse: false }).then(res=>{
|
|
|
|
+ if(res){
|
|
|
|
+ res.result.records.forEach(item=>{
|
|
|
|
+ projectOption.value.push({
|
|
|
|
+ label: item.name,
|
|
|
|
+ value: item.id
|
|
|
|
+ })
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+}
|