|
@@ -18,7 +18,10 @@ INTERFACE_EXPORT = (() => {
|
|
|
*/
|
|
*/
|
|
|
async function entry(areaKey, exportKind, projectData, tenderDetailMap) {
|
|
async function entry(areaKey, exportKind, projectData, tenderDetailMap) {
|
|
|
const {
|
|
const {
|
|
|
- CONFIG: { TYPE },
|
|
|
|
|
|
|
+ CONFIG: {
|
|
|
|
|
+ TYPE,
|
|
|
|
|
+ WHITE_SPACE
|
|
|
|
|
+ },
|
|
|
UTIL: {
|
|
UTIL: {
|
|
|
getValueByKey,
|
|
getValueByKey,
|
|
|
getHan,
|
|
getHan,
|
|
@@ -56,7 +59,7 @@ INTERFACE_EXPORT = (() => {
|
|
|
[CONTROL]: '招标控制',
|
|
[CONTROL]: '招标控制',
|
|
|
};
|
|
};
|
|
|
const attrs = [
|
|
const attrs = [
|
|
|
- { name: 'Xmbh', value: getValueByKey(information, 'projNum') }, // 项目编号
|
|
|
|
|
|
|
+ { name: 'Xmbh', value: getValueByKey(information, 'projNum') , minLen: 1, whiteSpace: WHITE_SPACE.COLLAPSE }, // 项目编号,招标xsd中有规定minLen whiteSpace,这里投标招标统一处理
|
|
|
{ name: 'Xmmc', value: projectName }, // 项目名称
|
|
{ name: 'Xmmc', value: projectName }, // 项目名称
|
|
|
{ name: 'Bzlx', value: '清单' }, // 项目编制类型
|
|
{ name: 'Bzlx', value: '清单' }, // 项目编制类型
|
|
|
{ name: 'Jjyj', value: '【18清单】2018部颁清单计价依据' }, // 计价依据
|
|
{ name: 'Jjyj', value: '【18清单】2018部颁清单计价依据' }, // 计价依据
|
|
@@ -153,7 +156,7 @@ INTERFACE_EXPORT = (() => {
|
|
|
// 单项工程信息,因项目管理中无“单项工程”这一层,从单位工程的工程特征信息中拼凑出来
|
|
// 单项工程信息,因项目管理中无“单项工程”这一层,从单位工程的工程特征信息中拼凑出来
|
|
|
function Dxgcxx(code, name) {
|
|
function Dxgcxx(code, name) {
|
|
|
const attrs = [
|
|
const attrs = [
|
|
|
- { name: 'Dxgcbh', value: code }, // 单项工程编号
|
|
|
|
|
|
|
+ { name: 'Dxgcbh', value: code, minLen: 1, whiteSpace: WHITE_SPACE.COLLAPSE }, // 单项工程编号
|
|
|
{ name: 'Dxgcmc', value: name }, // 单项工程名称
|
|
{ name: 'Dxgcmc', value: name }, // 单项工程名称
|
|
|
];
|
|
];
|
|
|
Element.call(this, 'Dxgcxx', attrs);
|
|
Element.call(this, 'Dxgcxx', attrs);
|
|
@@ -162,7 +165,7 @@ INTERFACE_EXPORT = (() => {
|
|
|
// 单位工程信息
|
|
// 单位工程信息
|
|
|
function Dwgcxx(tenderName, feature) {
|
|
function Dwgcxx(tenderName, feature) {
|
|
|
const attrs = [
|
|
const attrs = [
|
|
|
- { name: 'Dwgcbh', value: getValueByKey(feature, '') }, // 单位工程编号
|
|
|
|
|
|
|
+ { name: 'Dwgcbh', value: getValueByKey(feature, 'unitProjNo'), minLen: 1, whiteSpace: WHITE_SPACE.COLLAPSE }, // 单位工程编号
|
|
|
{ name: 'Dwgcmc', value: tenderName }, // 单位工程名称
|
|
{ name: 'Dwgcmc', value: tenderName }, // 单位工程名称
|
|
|
];
|
|
];
|
|
|
Element.call(this, 'Dwgcxx', attrs);
|
|
Element.call(this, 'Dwgcxx', attrs);
|
|
@@ -186,10 +189,10 @@ INTERFACE_EXPORT = (() => {
|
|
|
'雨季施工增加费': 'YJF',
|
|
'雨季施工增加费': 'YJF',
|
|
|
'夜间施工增加费': 'YEF',
|
|
'夜间施工增加费': 'YEF',
|
|
|
'工地转移费': 'ZYF',
|
|
'工地转移费': 'ZYF',
|
|
|
- '高原施工增加费': 'GYF',
|
|
|
|
|
- '风沙地区增加费': 'FSF',
|
|
|
|
|
- '沿海地区增加费': 'YHF',
|
|
|
|
|
- '行车干扰增加费': 'XCF',
|
|
|
|
|
|
|
+ '高原地区施工增加费': 'GYF',
|
|
|
|
|
+ '风沙地区施工增加费': 'FSF',
|
|
|
|
|
+ '沿海地区施工增加费': 'YHF',
|
|
|
|
|
+ '行车干扰施工增加费': 'XCF',
|
|
|
'施工辅助费': 'SFF',
|
|
'施工辅助费': 'SFF',
|
|
|
'养老保险费': 'YLF',
|
|
'养老保险费': 'YLF',
|
|
|
'失业保险费': 'SYF',
|
|
'失业保险费': 'SYF',
|
|
@@ -228,6 +231,9 @@ INTERFACE_EXPORT = (() => {
|
|
|
'量价': 14,
|
|
'量价': 14,
|
|
|
};
|
|
};
|
|
|
const rate = isEmptyVal(item.rate) ? '100' : item.rate; // 为空时输出=100,为0时输出=0
|
|
const rate = isEmptyVal(item.rate) ? '100' : item.rate; // 为空时输出=100,为0时输出=0
|
|
|
|
|
+ /* if (!FeeRateTypeMap[rootItem.name]) {
|
|
|
|
|
+ debugger;
|
|
|
|
|
+ } */
|
|
|
const attrs = [
|
|
const attrs = [
|
|
|
{ name: 'Bm', value: FeeRateCodeMap[item.name] }, // 编码
|
|
{ name: 'Bm', value: FeeRateCodeMap[item.name] }, // 编码
|
|
|
{ name: 'Name', value: item.name }, // 名称
|
|
{ name: 'Name', value: item.name }, // 名称
|
|
@@ -424,7 +430,7 @@ INTERFACE_EXPORT = (() => {
|
|
|
{ name: 'Dj', value: isBidInvitation ? '0' : getFee(node.data.fees, 'common.tenderTotalFee'), type: TYPE.DECIMAL }, // 单价
|
|
{ name: 'Dj', value: isBidInvitation ? '0' : getFee(node.data.fees, 'common.tenderTotalFee'), type: TYPE.DECIMAL }, // 单价
|
|
|
{ name: 'Hj', value: isBidInvitation ? '0' : getFee(node.data.fees, 'common.tenderUnitFee'), type: TYPE.DECIMAL }, // 合价
|
|
{ name: 'Hj', value: isBidInvitation ? '0' : getFee(node.data.fees, 'common.tenderUnitFee'), type: TYPE.DECIMAL }, // 合价
|
|
|
];
|
|
];
|
|
|
- Element.call(this, 'JrgBJrgMx', attrs);
|
|
|
|
|
|
|
+ Element.call(this, 'JrgMx', attrs);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// 暂估材料表、评标材料表
|
|
// 暂估材料表、评标材料表
|
|
@@ -463,8 +469,8 @@ INTERFACE_EXPORT = (() => {
|
|
|
}
|
|
}
|
|
|
const attrs = [
|
|
const attrs = [
|
|
|
{ name: 'RcjId', value: projectGLJIDToRcjID[glj.id] }, // 资源ID
|
|
{ name: 'RcjId', value: projectGLJIDToRcjID[glj.id] }, // 资源ID
|
|
|
- { name: 'Bm', value: glj.code }, // 编码
|
|
|
|
|
- { name: 'Mc', value: glj.name }, // 名称
|
|
|
|
|
|
|
+ { name: 'RcjBm', value: glj.code }, // 编码
|
|
|
|
|
+ { name: 'Name', value: glj.name }, // 名称
|
|
|
{ name: 'Ggxh', value: glj.specs }, // 规格型号
|
|
{ name: 'Ggxh', value: glj.specs }, // 规格型号
|
|
|
{ name: 'Dw', value: glj.unit }, // 单位
|
|
{ name: 'Dw', value: glj.unit }, // 单位
|
|
|
{ name: 'Dj', value: glj.priceInfo.tenderPrice, type: TYPE.DECIMAL }, // 预算价,调后
|
|
{ name: 'Dj', value: glj.priceInfo.tenderPrice, type: TYPE.DECIMAL }, // 预算价,调后
|
|
@@ -474,7 +480,7 @@ INTERFACE_EXPORT = (() => {
|
|
|
{ name: 'Gycs', value: '' }, // 厂商
|
|
{ name: 'Gycs', value: '' }, // 厂商
|
|
|
{ name: 'Rcjlb', value: rootType, type: TYPE.INT }, // 人材机类型 1=人工;2=材料;3=机械
|
|
{ name: 'Rcjlb', value: rootType, type: TYPE.INT }, // 人材机类型 1=人工;2=材料;3=机械
|
|
|
{ name: 'Jgbz', value: 'false', type: TYPE.BOOL }, // 供材方
|
|
{ name: 'Jgbz', value: 'false', type: TYPE.BOOL }, // 供材方
|
|
|
- { name: 'Zyclbj', value: !!glj.is_main_material, type: TYPE.BOOL }, // 主要材料
|
|
|
|
|
|
|
+ { name: 'Zyclbz', value: !!glj.is_main_material, type: TYPE.BOOL }, // 主要材料
|
|
|
{ name: 'Zgjbz', value: !!glj.is_evaluate, type: TYPE.BOOL }, // 是否暂估
|
|
{ name: 'Zgjbz', value: !!glj.is_evaluate, type: TYPE.BOOL }, // 是否暂估
|
|
|
{ name: 'Zcbz', value: 'false', type: TYPE.BOOL }, // 主材标记
|
|
{ name: 'Zcbz', value: 'false', type: TYPE.BOOL }, // 主材标记
|
|
|
];
|
|
];
|