|  | @@ -113,7 +113,7 @@ const EmptySpreadSetting = {
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  |  // 可设置列集合
 | 
	
		
			
				|  |  |  const BaseSetCol = {
 | 
	
		
			
				|  |  | -    Ledger: [
 | 
	
		
			
				|  |  | +    tz_ledger_set: [
 | 
	
		
			
				|  |  |          { key: 'code', name: '项目节编号', fixed: ['move', 'valid', 'alias'], bills: 1, pos: 0, },
 | 
	
		
			
				|  |  |          { key: 'b_code', name: '清单编号', fixed: ['alias'], bills: 1, pos: 0, },
 | 
	
		
			
				|  |  |          { key: 'ex_memo1', name: '备注1', fixed: [], bills: 1, pos: 1, },
 | 
	
	
		
			
				|  | @@ -132,7 +132,7 @@ const BaseSetCol = {
 | 
	
		
			
				|  |  |          { key: 'ex_memo2', name: '备注2', fixed: [], bills: 1, pos: 1, },
 | 
	
		
			
				|  |  |          { key: 'ex_memo3', name: '备注3', fixed: [], bills: 1, pos: 1, },
 | 
	
		
			
				|  |  |      ],
 | 
	
		
			
				|  |  | -    Stage: [
 | 
	
		
			
				|  |  | +    tz_stage_set: [
 | 
	
		
			
				|  |  |          { key: 'code', name: '项目节编号', fixed: ['move', 'valid', 'alias'], bills: 1, pos: 0 },
 | 
	
		
			
				|  |  |          { key: 'b_code', name: '清单编号', fixed: ['alias'], bills: 1, pos: 0 },
 | 
	
		
			
				|  |  |          { key: 'ex_memo1', name: '备注1', fixed: [], bills: 1, pos: 1, },
 | 
	
	
		
			
				|  | @@ -160,6 +160,53 @@ const BaseSetCol = {
 | 
	
		
			
				|  |  |          { key: 'gxby', name: '工序报验', fixed: ['valid', 'alias'], bills: 1, pos: 1, },
 | 
	
		
			
				|  |  |          { key: 'dagl', name: '档案管理', fixed: ['valid', 'alias'], bills: 1, pos: 1, },
 | 
	
		
			
				|  |  |      ],
 | 
	
		
			
				|  |  | +    gcl_ledger_set: [
 | 
	
		
			
				|  |  | +        { key: 'code', name: '项目节编号', fixed: ['move', 'valid', 'alias'], bills: 1, pos: 0, },
 | 
	
		
			
				|  |  | +        { key: 'b_code', name: '清单编号', fixed: ['alias'], bills: 1, pos: 0, },
 | 
	
		
			
				|  |  | +        { key: 'ex_memo1', name: '备注1', fixed: [], bills: 1, pos: 1, },
 | 
	
		
			
				|  |  | +        { key: 'name', name: '名称/计量单元', fixed: ['alias'], bills: 1, pos: 1 },
 | 
	
		
			
				|  |  | +        { key: 'features', name: '项目特征', fixed: ['valid', 'alias'], bills: 1, pos: 0 },
 | 
	
		
			
				|  |  | +        { key: 'position', name: '位置', fixed: [], bills: 0, pos: 1 },
 | 
	
		
			
				|  |  | +        { key: 'unit', name: '单位', fixed: ['alias'], bills: 1, pos: 0 },
 | 
	
		
			
				|  |  | +        { key: 'unit_price', name: '单价', fixed: ['alias'], bills: 1, pos: 0 },
 | 
	
		
			
				|  |  | +        { key: 'dgn_qty', name: '项目节数量', fixed: [], bills: 1, pos: 0, },
 | 
	
		
			
				|  |  | +        { key: 'dgn_price', name: '经济指标', fixed: ['alias'], bills: 1, pos: 0},
 | 
	
		
			
				|  |  | +        { key: 'deal_calc', name: '签约', fixed: [], bills: 1, pos: 1, },
 | 
	
		
			
				|  |  | +        { key: 'tz_calc', name: '台账', fixed: ['alias'], bills: 1, pos: 1, },
 | 
	
		
			
				|  |  | +        { key: 'drawing_code', name: '图册号', fixed: ['alias'], bills: 1, pos: 1 },
 | 
	
		
			
				|  |  | +        { key: 'node_type', name: '费用类别', fixed: ['alias'], bills: 1, pos: 0 },
 | 
	
		
			
				|  |  | +        { key: 'memo', name: '备注', fixed: ['alias'], bills: 1, pos: 0 },
 | 
	
		
			
				|  |  | +        { key: 'ex_memo2', name: '备注2', fixed: [], bills: 1, pos: 1, },
 | 
	
		
			
				|  |  | +        { key: 'ex_memo3', name: '备注3', fixed: [], bills: 1, pos: 1, },
 | 
	
		
			
				|  |  | +    ],
 | 
	
		
			
				|  |  | +    gcl_stage_set: [
 | 
	
		
			
				|  |  | +        { key: 'code', name: '项目节编号', fixed: ['move', 'valid', 'alias'], bills: 1, pos: 0 },
 | 
	
		
			
				|  |  | +        { key: 'b_code', name: '清单编号', fixed: ['alias'], bills: 1, pos: 0 },
 | 
	
		
			
				|  |  | +        { key: 'ex_memo1', name: '备注1', fixed: [], bills: 1, pos: 1, },
 | 
	
		
			
				|  |  | +        { key: 'name', name: '名称/计量单元', fixed: ['alias'], bills: 1, pos: 1 },
 | 
	
		
			
				|  |  | +        { key: 'features', name: '项目特征', fixed: ['valid', 'alias'], bills: 1, pos: 0 },
 | 
	
		
			
				|  |  | +        { key: 'position', name: '位置', fixed: [], bills: 0, pos: 1},
 | 
	
		
			
				|  |  | +        { key: 'unit', name: '单位', fixed: ['alias'], bills: 1, pos: 0 },
 | 
	
		
			
				|  |  | +        { key: 'unit_price', name: '单价', fixed: ['alias'], bills: 1, pos: 0 },
 | 
	
		
			
				|  |  | +        { key: 'deal_calc', name: '签约', fixed: [], bills: 1, pos: 0 },
 | 
	
		
			
				|  |  | +        { key: 'tz_calc', name: '台账', fixed: [], bills: 1, pos: 0},
 | 
	
		
			
				|  |  | +        { key: 'real_qty', name: '现场实际数量', fixed: ['valid', 'alias'], bills: 0, pos: 1},
 | 
	
		
			
				|  |  | +        { key: 'estimate_qty', name: '预计变更数量', fixed: ['valid', 'alias'], bills: 0, pos: 1},
 | 
	
		
			
				|  |  | +        { key: 'cur_calc', name: '本期计量', fixed: ['alias'], bills: 1, pos: 1, },
 | 
	
		
			
				|  |  | +        { key: 'end_calc', name: '截止本期计量', fixed: ['alias'], bills: 1, pos: 1, },
 | 
	
		
			
				|  |  | +        { key: 'deal_dgn_qty', name: '合同-项目节数量', fixed: ['alias'], bills: 1, pos: 0, },
 | 
	
		
			
				|  |  | +        { key: 'c_dgn_qty', name: '变更-项目节数量', fixed: ['alias'], bills: 1, pos: 0, },
 | 
	
		
			
				|  |  | +        { key: 'final_dgn_price', name: '经济指标', fixed: [], bills: 1, pos: 0 },
 | 
	
		
			
				|  |  | +        { key: 'postil', name: '本期批注', fixed: [], bills: 1, pos: 1 },
 | 
	
		
			
				|  |  | +        { key: 'drawing_code', name: '图册号', fixed: [], bills: 1, pos: 1 },
 | 
	
		
			
				|  |  | +        { key: 'memo', name: '备注', fixed: [], bills: 1, pos: 0 },
 | 
	
		
			
				|  |  | +        { key: 'ex_memo2', name: '备注2', fixed: [], bills: 1, pos: 1, },
 | 
	
		
			
				|  |  | +        { key: 'ex_memo3', name: '备注3', fixed: [], bills: 1, pos: 1, },
 | 
	
		
			
				|  |  | +        { key: 'add_stage_order', name: '添加期数', fixed: [], bills: 1, pos: 1, },
 | 
	
		
			
				|  |  | +        { key: 'is_tp', name: '总额计量', fixed: [], bills: 1, pos: 0 },
 | 
	
		
			
				|  |  | +        { key: 'gxby', name: '工序报验', fixed: ['valid', 'alias'], bills: 1, pos: 1, },
 | 
	
		
			
				|  |  | +        { key: 'dagl', name: '档案管理', fixed: ['valid', 'alias'], bills: 1, pos: 1, },
 | 
	
		
			
				|  |  | +    ],
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  |  // 默认的列设置
 | 
	
		
			
				|  |  |  const glSpreadTemplate = {
 | 
	
	
		
			
				|  | @@ -454,7 +501,7 @@ const ProjectSpreadTemplate = [
 | 
	
		
			
				|  |  |      { code: 'xxby', name: '小修保养', template: glSpreadTemplate },
 | 
	
		
			
				|  |  |  ];
 | 
	
		
			
				|  |  |  const BaseSpreadColSetting = {
 | 
	
		
			
				|  |  | -    Ledger: {
 | 
	
		
			
				|  |  | +    tz_ledger_set: {
 | 
	
		
			
				|  |  |          bills: {
 | 
	
		
			
				|  |  |              code: [{title: '项目节编号', colSpan: '1', rowSpan: '2', field: 'code', hAlign: 0, width: 145, formatter: '@', cellType: 'tree'}],
 | 
	
		
			
				|  |  |              b_code: [{title: '清单编号', colSpan: '1', rowSpan: '2', field: 'b_code', hAlign: 0, width: 70, formatter: '@',}],
 | 
	
	
		
			
				|  | @@ -503,7 +550,7 @@ const BaseSpreadColSetting = {
 | 
	
		
			
				|  |  |              ex_memo3: [{title: 'ex_memo3', colSpan: '1', rowSpan: '2', field: 'ex_memo3', hAlign: 0, width: 100, formatter: '@', cellType: 'ellipsisAutoTip'}]
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    Stage: {
 | 
	
		
			
				|  |  | +    tz_stage_set: {
 | 
	
		
			
				|  |  |          bills: {
 | 
	
		
			
				|  |  |              code: [{title: '项目节编号', colSpan: '1', rowSpan: '2', field: 'code', hAlign: 0, width: 145, formatter: '@', readOnly: true, cellType: 'tree'}],
 | 
	
		
			
				|  |  |              b_code: [{title: '清单编号', colSpan: '1', rowSpan: '2', field: 'b_code', hAlign: 0, width: 70, formatter: '@', readOnly: true}],
 | 
	
	
		
			
				|  | @@ -583,7 +630,136 @@ const BaseSpreadColSetting = {
 | 
	
		
			
				|  |  |              gxby: [{title: '工序报验', colSpan: '1', rowSpan: '2', field: 'gxby', hAlign: 1, width: 80, formatter: '@', readOnly: true}],
 | 
	
		
			
				|  |  |              dagl: [{title: '档案管理', colSpan: '1', rowSpan: '2', field: 'dagl', hAlign: 1, width: 80, formatter: '@', readOnly: true}],
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -    }
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    gcl_ledger_set: {
 | 
	
		
			
				|  |  | +        bills: {
 | 
	
		
			
				|  |  | +            code: [{title: '项目节编号', colSpan: '1', rowSpan: '2', field: 'code', hAlign: 0, width: 145, formatter: '@', cellType: 'tree'}],
 | 
	
		
			
				|  |  | +            b_code: [{title: '清单编号', colSpan: '1', rowSpan: '2', field: 'b_code', hAlign: 0, width: 70, formatter: '@',}],
 | 
	
		
			
				|  |  | +            name: [{title: '名称', colSpan: '1', rowSpan: '2', field: 'name', hAlign: 0, width: 185, formatter: '@', }],
 | 
	
		
			
				|  |  | +            unit: [{title: '单位', colSpan: '1', rowSpan: '2', field: 'unit', hAlign: 1, width: 50, formatter: '@', cellType: 'unit'}],
 | 
	
		
			
				|  |  | +            unit_price: [{title: '单价', colSpan: '1', rowSpan: '2', field: 'unit_price', hAlign: 2, width: 60, type: 'Number',}],
 | 
	
		
			
				|  |  | +            dgn_qty: [
 | 
	
		
			
				|  |  | +                {title: '项目节数量|数量1',  colSpan: '2|1', rowSpan: '1|1', field: 'dgn_qty1', hAlign: 2, width: 60, type: 'Number', aliasFormat: '{%s}|数量1'},
 | 
	
		
			
				|  |  | +                {title: '|数量2',  colSpan: '|1', rowSpan: '|1', field: 'dgn_qty2', hAlign: 2, width: 60, type: 'Number'},
 | 
	
		
			
				|  |  | +            ],
 | 
	
		
			
				|  |  | +            dgn_price: [{title: '经济指标',  colSpan: '1', rowSpan: '2', field: 'dgn_price', hAlign: 2, width: 60, type: 'Number', readOnly: true}],
 | 
	
		
			
				|  |  | +            deal_calc: [
 | 
	
		
			
				|  |  | +                {title: '签约|数量', colSpan: '2|1', rowSpan: '1|1', field: 'deal_qty', hAlign: 2, width: 60, type: 'Number', aliasFormat: '{%s}|数量'},
 | 
	
		
			
				|  |  | +                {title: '|金额', colSpan: '|1', rowSpan: '|1', field: 'deal_tp', hAlign: 2, width: 60, type: 'Number', readOnly: true},
 | 
	
		
			
				|  |  | +            ],
 | 
	
		
			
				|  |  | +            tz_calc: [
 | 
	
		
			
				|  |  | +                {title: '设计量|数量', colSpan: '2|1', rowSpan: '1|1', field: 'sgfh_qty', hAlign: 2, width: 60, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|金额', colSpan: '|1', rowSpan: '|1', field: 'sgfh_tp', hAlign: 2, width: 60, type: 'Number', readOnly: true},
 | 
	
		
			
				|  |  | +                {title: '设计错漏增减|数量', colSpan: '2|1', rowSpan: '1|1', field: 'sjcl_qty', hAlign: 2, width: 60, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|金额', colSpan: '|1', rowSpan: '|1', field: 'sjcl_tp', hAlign: 2, width: 60, type: 'Number', readOnly: true},
 | 
	
		
			
				|  |  | +                {title: '其他错漏增减|数量', colSpan: '2|1', rowSpan: '1|1', field: 'qtcl_qty', hAlign: 2, width: 60, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|金额', colSpan: '|1', rowSpan: '|1', field: 'qtcl_tp', hAlign: 2, width: 60, type: 'Number', readOnly: true},
 | 
	
		
			
				|  |  | +                {title: '台账小计|数量', colSpan: '2|1', rowSpan: '1|1', field: 'quantity', hAlign: 2, width: 60, type: 'Number', readOnly: true},
 | 
	
		
			
				|  |  | +                {title: '|金额', colSpan: '|1', rowSpan: '|1', field: 'total_price', hAlign: 2, width: 60, type: 'Number', readOnly: true},
 | 
	
		
			
				|  |  | +            ],
 | 
	
		
			
				|  |  | +            drawing_code: [{title: '图(册)号', colSpan: '1', rowSpan: '2', field: 'drawing_code', hAlign: 0, width: 80, formatter: '@'}],
 | 
	
		
			
				|  |  | +            node_type: [{title: '费用类别', colSpan: '1', rowSpan: '2', field: 'node_type', hAlign: 0, width: 100, cellType: 'customizeCombo'}],
 | 
	
		
			
				|  |  | +            memo: [{title: '备注', colSpan: '1', rowSpan: '2', field: 'memo', hAlign: 0, width: 100, formatter: '@', cellType: 'ellipsisAutoTip'}],
 | 
	
		
			
				|  |  | +            ex_memo1: [{title: 'ex_memo1', colSpan: '1', rowSpan: '2', field: 'ex_memo1', hAlign: 0, width: 100, formatter: '@', cellType: 'ellipsisAutoTip'}, ],
 | 
	
		
			
				|  |  | +            ex_memo2: [{title: 'ex_memo2', colSpan: '1', rowSpan: '2', field: 'ex_memo2', hAlign: 0, width: 100, formatter: '@', cellType: 'ellipsisAutoTip'}, ],
 | 
	
		
			
				|  |  | +            ex_memo3: [{title: 'ex_memo3', colSpan: '1', rowSpan: '2', field: 'ex_memo3', hAlign: 0, width: 100, formatter: '@', cellType: 'ellipsisAutoTip'}]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        pos: {
 | 
	
		
			
				|  |  | +            name: [{title: '计量单元', colSpan: '1', rowSpan: '2', field: 'name', hAlign: 0, width: 230, formatter: '@'}],
 | 
	
		
			
				|  |  | +            position: [{title: '位置', colSpan: '1', rowSpan: '2', field: 'position', hAlign: 0, width: 60, formatter: '@'}],
 | 
	
		
			
				|  |  | +            tz_calc: [
 | 
	
		
			
				|  |  | +                {title: '台账数量|设计量', colSpan: '4|1', rowSpan: '1|1', field: 'sgfh_qty', hAlign: 2, width: 100, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|设计错漏增减', colSpan: '|1', rowSpan: '|1', field: 'sjcl_qty', hAlign: 2, width: 100, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|其他错漏增减', colSpan: '|1', rowSpan: '|1', field: 'qtcl_qty', hAlign: 2, width: 100, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|小计', colSpan: '|1', rowSpan: '|1', field: 'quantity', hAlign: 2, width: 60, type: 'Number', readOnly: true},
 | 
	
		
			
				|  |  | +            ],
 | 
	
		
			
				|  |  | +            drawing_code: [{title: '图(册)号', colSpan: '1', rowSpan: '2', field: 'drawing_code', hAlign: 0, width: 80, formatter: '@'}],
 | 
	
		
			
				|  |  | +            node_type: [{title: '费用类别', colSpan: '1', rowSpan: '2', field: 'node_type', hAlign: 0, width: 100, cellType: 'customizeCombo'}],
 | 
	
		
			
				|  |  | +            ex_memo1: [{title: 'ex_memo1', colSpan: '1', rowSpan: '2', field: 'ex_memo1', hAlign: 0, width: 100, formatter: '@', cellType: 'ellipsisAutoTip'}],
 | 
	
		
			
				|  |  | +            ex_memo2: [{title: 'ex_memo2', colSpan: '1', rowSpan: '2', field: 'ex_memo2', hAlign: 0, width: 100, formatter: '@', cellType: 'ellipsisAutoTip'}],
 | 
	
		
			
				|  |  | +            ex_memo3: [{title: 'ex_memo3', colSpan: '1', rowSpan: '2', field: 'ex_memo3', hAlign: 0, width: 100, formatter: '@', cellType: 'ellipsisAutoTip'}]
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +    gcl_stage_set: {
 | 
	
		
			
				|  |  | +        bills: {
 | 
	
		
			
				|  |  | +            code: [{title: '项目节编号', colSpan: '1', rowSpan: '2', field: 'code', hAlign: 0, width: 145, formatter: '@', readOnly: true, cellType: 'tree'}],
 | 
	
		
			
				|  |  | +            b_code: [{title: '清单编号', colSpan: '1', rowSpan: '2', field: 'b_code', hAlign: 0, width: 70, formatter: '@', readOnly: true}],
 | 
	
		
			
				|  |  | +            name: [{title: '名称', colSpan: '1', rowSpan: '2', field: 'name', hAlign: 0, width: 185, formatter: '@', readOnly: true}],
 | 
	
		
			
				|  |  | +            unit: [{title: '单位', colSpan: '1', rowSpan: '2', field: 'unit', hAlign: 1, width: 60, formatter: '@', readOnly: true, cellType: 'unit'}],
 | 
	
		
			
				|  |  | +            unit_price: [{title: '单价', colSpan: '1', rowSpan: '2', field: 'unit_price', hAlign: 2, width: 60, readOnly: true, type: 'Number'}],
 | 
	
		
			
				|  |  | +            tz_calc: [
 | 
	
		
			
				|  |  | +                {title: '台账|数量', colSpan: '2|1', rowSpan: '1|1', field: 'quantity', hAlign: 2, width: 60, readOnly: true, type: 'Number', aliasFormat: '{%s}|数量'},
 | 
	
		
			
				|  |  | +                {title: '|金额', colSpan: '|1', rowSpan: '|1', field: 'total_price', hAlign: 2, width: 60, readOnly: true, type: 'Number'},
 | 
	
		
			
				|  |  | +            ],
 | 
	
		
			
				|  |  | +            deal_calc: [
 | 
	
		
			
				|  |  | +                {title: '签约|数量', colSpan: '2|1', rowSpan: '1|1', field: 'deal_qty', hAlign: 2, width: 60, readOnly: true, type: 'Number', aliasFormat: '{%s}|数量'},
 | 
	
		
			
				|  |  | +                {title: '|金额', colSpan: '|1', rowSpan: '|1', field: 'deal_tp', hAlign: 2, width: 60, type: 'Number', readOnly: true},
 | 
	
		
			
				|  |  | +            ],
 | 
	
		
			
				|  |  | +            cur_calc: [
 | 
	
		
			
				|  |  | +                {title: '本期合同计量|数量', colSpan: '2|1', rowSpan: '1|1', field: 'contract_qty', hAlign: 2, width: 60, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|金额', colSpan: '|1', rowSpan: '|1', field: 'contract_tp', hAlign: 2, width: 60, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '本期数量变更|数量', colSpan: '3|1', rowSpan: '1|1', field: 'qc_qty', hAlign: 2, width: 60, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|金额', colSpan: '|1', rowSpan: '|1', field: 'qc_tp', hAlign: 2, width: 60, type: 'Number', readOnly: true},
 | 
	
		
			
				|  |  | +                {title: '|不计价', colSpan: '|1', rowSpan: '|1', field: 'qc_minus_qty', hAlign: 2, width: 60, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '本期补差|原单价', colSpan: '2|1', rowSpan: '1|1', field: 'org_price', hAlign: 2, width: 60, type: 'Number', readOnly: true },
 | 
	
		
			
				|  |  | +                {title: '|金额', colSpan: '|1', rowSpan: '|1', field: 'pc_tp', hAlign: 2, width: 60, type: 'Number', readOnly: true },
 | 
	
		
			
				|  |  | +                {title: '本期完成计量|数量', colSpan: '2|1', rowSpan: '1|1', field: 'gather_qty', hAlign: 2, width: 60, readOnly: true, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|金额', colSpan: '|1', rowSpan: '|1', field: 'gather_tp', hAlign: 2, width: 60, readOnly: true, type: 'Number'},
 | 
	
		
			
				|  |  | +            ],
 | 
	
		
			
				|  |  | +            end_calc: [
 | 
	
		
			
				|  |  | +                {title: '截止本期合同计量|数量', colSpan: '2|1', rowSpan: '1|1', field: 'end_contract_qty', hAlign: 2, width: 60, readOnly: true, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|金额', colSpan: '|1', rowSpan: '|1', field: 'end_contract_tp', hAlign: 2, width: 60, readOnly: true, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '截止本期数量变更|数量', colSpan: '2|1', rowSpan: '1|1', field: 'end_qc_qty', hAlign: 2, width: 60, readOnly: true, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|金额', colSpan: '|1', rowSpan: '|1', field: 'end_qc_tp', hAlign: 2, width: 60, readOnly: true, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '截止本期完成计量|数量', colSpan: '3|1', rowSpan: '1|1', field: 'end_gather_qty', hAlign: 2, width: 60, readOnly: true, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|金额', colSpan: '|1', rowSpan: '|1', field: 'end_gather_tp', hAlign: 2, width: 60, readOnly: true, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|完成率(%)', colSpan: '1', rowSpan: '|1', field: 'end_final_1_percent', hAlign: 2, width: 80, readOnly: true, type: 'Number'},
 | 
	
		
			
				|  |  | +            ],
 | 
	
		
			
				|  |  | +            deal_dgn_qty: [
 | 
	
		
			
				|  |  | +                {title: '合同|项目节数量1',  colSpan: '2|1', rowSpan: '1|1', field: 'deal_dgn_qty1', hAlign: 2, width: 60, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|项目节数量2',  colSpan: '|1', rowSpan: '|1', field: 'deal_dgn_qty2', hAlign: 2, width: 60, type: 'Number'},
 | 
	
		
			
				|  |  | +            ],
 | 
	
		
			
				|  |  | +            c_dgn_qty: [
 | 
	
		
			
				|  |  | +                {title: '变更|项目节数量1',  colSpan: '2|1', rowSpan: '1|1', field: 'c_dgn_qty1', hAlign: 2, width: 60, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|项目节数量2',  colSpan: '|1', rowSpan: '|1', field: 'c_dgn_qty2', hAlign: 2, width: 60, type: 'Number'},
 | 
	
		
			
				|  |  | +            ],
 | 
	
		
			
				|  |  | +            final_dgn_price: [{title: '经济指标',  colSpan: '1', rowSpan: '2', field: 'final_dgn_price', hAlign: 2, width: 60, readOnly: true, type: 'Number'},],
 | 
	
		
			
				|  |  | +            is_tp: [{title: '总额计量', colSpan: '1', rowSpan: '2', field: 'is_tp', hAlign: 1, width: 60, cellType: 'checkbox'}],
 | 
	
		
			
				|  |  | +            gxby: [{title: '工序报验', colSpan: '1', rowSpan: '2', field: 'gxby', hAlign: 1, width: 80, formatter: '@', readOnly: true}],
 | 
	
		
			
				|  |  | +            dagl: [{title: '档案管理', colSpan: '1', rowSpan: '2', field: 'dagl', hAlign: 1, width: 80, formatter: '@', readOnly: true}],
 | 
	
		
			
				|  |  | +            drawing_code: [{title: '图(册)号', colSpan: '1', rowSpan: '2', field: 'drawing_code', hAlign: 0, width: 80, formatter: '@'}],
 | 
	
		
			
				|  |  | +            memo: [{title: '备注', colSpan: '1', rowSpan: '2', field: 'memo', hAlign: 0, width: 100, formatter: '@', cellType: 'ellipsisAutoTip'}],
 | 
	
		
			
				|  |  | +            postil: [{title: '本期批注', colSpan: '1', rowSpan: '2', field: 'postil', hAlign: 0, width: 100, formatter: '@', cellType: 'autoTip'},],
 | 
	
		
			
				|  |  | +            ex_memo1: [{title: 'ex_memo1', colSpan: '1', rowSpan: '2', field: 'ex_memo1', hAlign: 0, width: 100, formatter: '@', cellType: 'ellipsisAutoTip'}],
 | 
	
		
			
				|  |  | +            ex_memo2: [{title: 'ex_memo2', colSpan: '1', rowSpan: '2', field: 'ex_memo2', hAlign: 0, width: 100, formatter: '@', cellType: 'ellipsisAutoTip'}],
 | 
	
		
			
				|  |  | +            ex_memo3: [{title: 'ex_memo3', colSpan: '1', rowSpan: '2', field: 'ex_memo3', hAlign: 0, width: 100, formatter: '@', cellType: 'ellipsisAutoTip'}],
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        pos: {
 | 
	
		
			
				|  |  | +            name: [{title: '计量单元', colSpan: '1', rowSpan: '2', field: 'name', hAlign: 0, width: 180, formatter: '@'}],
 | 
	
		
			
				|  |  | +            position: [{title: '位置', colSpan: '1', rowSpan: '2', field: 'position', hAlign: 0, width: 60, formatter: '@'}],
 | 
	
		
			
				|  |  | +            real_qty: [{title: '现场实际数量', colSpan: '1', rowSpan: '2', field: 'real_qty', hAlign: 2, width: 60, type: 'Number'}],
 | 
	
		
			
				|  |  | +            estimate_qty: [{title: '预计变更数量', colSpan: '1', rowSpan: '2', field: 'estimate_qty', hAlign: 2, width: 60, type: 'Number', readOnly: true}],
 | 
	
		
			
				|  |  | +            cur_calc: [
 | 
	
		
			
				|  |  | +                {title: '本期计量|合同', colSpan: '4|1', rowSpan: '1|1', field: 'contract_qty', hAlign: 2, width: 60, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|数量变更', colSpan: '|1', rowSpan: '|1', field: 'qc_qty', hAlign: 2, width: 80, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|不计价', colSpan: '|1', rowSpan: '|1', field: 'qc_minus_qty', hAlign: 2, width: 60, type: 'Number'},
 | 
	
		
			
				|  |  | +                {title: '|完成', colSpan: '|1', rowSpan: '|1', field: 'gather_qty', hAlign: 2, width: 60, type: 'Number', readOnly: true},
 | 
	
		
			
				|  |  | +            ],
 | 
	
		
			
				|  |  | +            end_calc: [
 | 
	
		
			
				|  |  | +                {title: '截止本期计量|合同', colSpan: '3|1', rowSpan: '1|1', field: 'end_contract_qty', hAlign: 2, width: 60, type: 'Number', readOnly: true},
 | 
	
		
			
				|  |  | +                {title: '|数量变更', colSpan: '|1', rowSpan: '|1', field: 'end_qc_qty', hAlign: 2, width: 80, type: 'Number', readOnly: true},
 | 
	
		
			
				|  |  | +                {title: '|完成', colSpan: '|1', rowSpan: '|1', field: 'end_gather_qty', hAlign: 2, width: 60, type: 'Number', readOnly: true},
 | 
	
		
			
				|  |  | +            ],
 | 
	
		
			
				|  |  | +            postil: [{title: '本期批注', colSpan: '1', rowSpan: '2', field: 'postil', hAlign: 0, width: 80, formatter: '@', cellType: 'autoTip'},],
 | 
	
		
			
				|  |  | +            drawing_code: [{title: '图(册)号', colSpan: '1', rowSpan: '2', field: 'drawing_code', hAlign: 0, width: 80, formatter: '@'}],
 | 
	
		
			
				|  |  | +            ex_memo1: [{title: 'ex_memo1', colSpan: '1', rowSpan: '2', field: 'ex_memo1', hAlign: 0, width: 100, formatter: '@', cellType: 'ellipsisAutoTip'}],
 | 
	
		
			
				|  |  | +            ex_memo2: [{title: 'ex_memo2', colSpan: '1', rowSpan: '2', field: 'ex_memo2', hAlign: 0, width: 100, formatter: '@', cellType: 'ellipsisAutoTip'}],
 | 
	
		
			
				|  |  | +            ex_memo3: [{title: 'ex_memo3', colSpan: '1', rowSpan: '2', field: 'ex_memo3', hAlign: 0, width: 100, formatter: '@', cellType: 'ellipsisAutoTip'}],
 | 
	
		
			
				|  |  | +            add_stage_order: [{title: '添加期数', colSpan: '1', rowSpan: '2', field: 'add_stage_order', hAlign:1, width: 80, readOnly: true}],
 | 
	
		
			
				|  |  | +            gxby: [{title: '工序报验', colSpan: '1', rowSpan: '2', field: 'gxby', hAlign: 1, width: 80, formatter: '@', readOnly: true}],
 | 
	
		
			
				|  |  | +            dagl: [{title: '档案管理', colSpan: '1', rowSpan: '2', field: 'dagl', hAlign: 1, width: 80, formatter: '@', readOnly: true}],
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  |  const withoutClReplace = {
 | 
	
		
			
				|  |  |      indexField: 'sgfh_qty',
 | 
	
	
		
			
				|  | @@ -600,7 +776,7 @@ const SpreadSpec = {
 | 
	
		
			
				|  |  |      gcl_stage_set: {
 | 
	
		
			
				|  |  |          pos: [
 | 
	
		
			
				|  |  |              { condition: { key: 'field', value: ['name', 'position'] }, update: { readOnly: false } },
 | 
	
		
			
				|  |  | -        ]
 | 
	
		
			
				|  |  | +        ],
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  };
 | 
	
		
			
				|  |  |  
 |