|  | @@ -410,38 +410,40 @@ let rptArchiveObj = {
 | 
	
		
			
				|  |  |          for(let i = 0; i < pageData.items.length; i++) {
 | 
	
		
			
				|  |  |              let page = pageData.items[i];
 | 
	
		
			
				|  |  |              for (let sCell of page.signature_cells) {
 | 
	
		
			
				|  |  | -                let control = null;
 | 
	
		
			
				|  |  | -                if (typeof sCell[JV.PROP_CONTROL] === "string") {
 | 
	
		
			
				|  |  | -                    control = controls[sCell[JV.PROP_CONTROL]];
 | 
	
		
			
				|  |  | -                } else {
 | 
	
		
			
				|  |  | -                    control = sCell[JV.PROP_CONTROL];
 | 
	
		
			
				|  |  | -                }
 | 
	
		
			
				|  |  | -                let idx = psInfoStr.indexOf(sCell.signature_name);
 | 
	
		
			
				|  |  | -                let actSignArea = _getProperSignatureArea(sCell, control);
 | 
	
		
			
				|  |  | -                if (idx < 0) {
 | 
	
		
			
				|  |  | -                    psInfoStr.push(sCell.signature_name);
 | 
	
		
			
				|  |  | -                    let newPsInfo = {'name': sCell.signature_name, areas: []};
 | 
	
		
			
				|  |  | -                    let area = {Left: actSignArea[JV.IDX_LEFT] + offsetX, Top: actSignArea[JV.IDX_TOP] + offsetY, width: (actSignArea[JV.IDX_RIGHT] - actSignArea[JV.IDX_LEFT]), height: (actSignArea[JV.IDX_BOTTOM] - actSignArea[JV.IDX_TOP]), pages: []};
 | 
	
		
			
				|  |  | -                    area.pages.push(i + 1);
 | 
	
		
			
				|  |  | -                    newPsInfo.areas.push(area);
 | 
	
		
			
				|  |  | -                    psInfo.push(newPsInfo);
 | 
	
		
			
				|  |  | -                } else {
 | 
	
		
			
				|  |  | -                    let hasArea = false;
 | 
	
		
			
				|  |  | -                    for (let areaItem of psInfo[idx].areas) {
 | 
	
		
			
				|  |  | -                        if (areaItem.Left === actSignArea[JV.IDX_LEFT] + offsetX && areaItem.Top === actSignArea[JV.IDX_TOP] + offsetX &&
 | 
	
		
			
				|  |  | -                            areaItem.width === actSignArea[JV.IDX_RIGHT] - actSignArea[JV.IDX_LEFT] && areaItem.height === actSignArea[JV.IDX_BOTTOM] - actSignArea[JV.IDX_TOP]) {
 | 
	
		
			
				|  |  | -                            areaItem.pages.push(i + 1);
 | 
	
		
			
				|  |  | -                            hasArea = true;
 | 
	
		
			
				|  |  | -                            break;
 | 
	
		
			
				|  |  | -                        }
 | 
	
		
			
				|  |  | +                // sCell.signature_name 草图不用加密
 | 
	
		
			
				|  |  | +                if (sCell.signature_name !== 'dummy_pic') {
 | 
	
		
			
				|  |  | +                    let control = null;
 | 
	
		
			
				|  |  | +                    if (typeof sCell[JV.PROP_CONTROL] === "string") {
 | 
	
		
			
				|  |  | +                        control = controls[sCell[JV.PROP_CONTROL]];
 | 
	
		
			
				|  |  | +                    } else {
 | 
	
		
			
				|  |  | +                        control = sCell[JV.PROP_CONTROL];
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  | -                    if (!hasArea) {
 | 
	
		
			
				|  |  | +                    let idx = psInfoStr.indexOf(sCell.signature_name);
 | 
	
		
			
				|  |  | +                    let actSignArea = _getProperSignatureArea(sCell, control);
 | 
	
		
			
				|  |  | +                    if (idx < 0) {
 | 
	
		
			
				|  |  | +                        psInfoStr.push(sCell.signature_name);
 | 
	
		
			
				|  |  | +                        let newPsInfo = {'name': sCell.signature_name, areas: []};
 | 
	
		
			
				|  |  |                          let area = {Left: actSignArea[JV.IDX_LEFT] + offsetX, Top: actSignArea[JV.IDX_TOP] + offsetY, width: (actSignArea[JV.IDX_RIGHT] - actSignArea[JV.IDX_LEFT]), height: (actSignArea[JV.IDX_BOTTOM] - actSignArea[JV.IDX_TOP]), pages: []};
 | 
	
		
			
				|  |  |                          area.pages.push(i + 1);
 | 
	
		
			
				|  |  | -                        psInfo[idx].areas.push(area);
 | 
	
		
			
				|  |  | +                        newPsInfo.areas.push(area);
 | 
	
		
			
				|  |  | +                        psInfo.push(newPsInfo);
 | 
	
		
			
				|  |  | +                    } else {
 | 
	
		
			
				|  |  | +                        let hasArea = false;
 | 
	
		
			
				|  |  | +                        for (let areaItem of psInfo[idx].areas) {
 | 
	
		
			
				|  |  | +                            if (areaItem.Left === actSignArea[JV.IDX_LEFT] + offsetX && areaItem.Top === actSignArea[JV.IDX_TOP] + offsetX &&
 | 
	
		
			
				|  |  | +                                areaItem.width === actSignArea[JV.IDX_RIGHT] - actSignArea[JV.IDX_LEFT] && areaItem.height === actSignArea[JV.IDX_BOTTOM] - actSignArea[JV.IDX_TOP]) {
 | 
	
		
			
				|  |  | +                                areaItem.pages.push(i + 1);
 | 
	
		
			
				|  |  | +                                hasArea = true;
 | 
	
		
			
				|  |  | +                                break;
 | 
	
		
			
				|  |  | +                            }
 | 
	
		
			
				|  |  | +                        }
 | 
	
		
			
				|  |  | +                        if (!hasArea) {
 | 
	
		
			
				|  |  | +                            let area = {Left: actSignArea[JV.IDX_LEFT] + offsetX, Top: actSignArea[JV.IDX_TOP] + offsetY, width: (actSignArea[JV.IDX_RIGHT] - actSignArea[JV.IDX_LEFT]), height: (actSignArea[JV.IDX_BOTTOM] - actSignArea[JV.IDX_TOP]), pages: []};
 | 
	
		
			
				|  |  | +                            area.pages.push(i + 1);
 | 
	
		
			
				|  |  | +                            psInfo[idx].areas.push(area);
 | 
	
		
			
				|  |  | +                        }
 | 
	
		
			
				|  |  |                      }
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  | -                // sCell.signature_name
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          return psInfo;
 | 
	
	
		
			
				|  | @@ -453,8 +455,10 @@ let rptArchiveObj = {
 | 
	
		
			
				|  |  |              // 每页
 | 
	
		
			
				|  |  |              for (let sCellIdx = 0; sCellIdx < currentRptPageRst.items[pageIdx].signature_cells.length; sCellIdx++) {
 | 
	
		
			
				|  |  |                  let sCell = currentRptPageRst.items[pageIdx].signature_cells[sCellIdx];
 | 
	
		
			
				|  |  | -                if (sCell.signature_name === 'dummy_pic' && sCell.path.indexOf('/sign') < 0) {
 | 
	
		
			
				|  |  | -                    //草图就不考虑重复问题,重复就重复吧
 | 
	
		
			
				|  |  | +                // if (sCell.signature_name === 'dummy_pic' && sCell.path.indexOf('/sign') < 0) {
 | 
	
		
			
				|  |  | +                if (sCell.signature_name === 'dummy_pic') {
 | 
	
		
			
				|  |  | +                    //1. 草图就不考虑重复问题,重复就重复吧;
 | 
	
		
			
				|  |  | +                    //2. 如果是dummy_pic,也不用判断是否为签名了,因为有其他的逻辑直接选择审核人,不经过签名过程,就当草图一样放过去了
 | 
	
		
			
				|  |  |                      picKeys.push(sCell.path);
 | 
	
		
			
				|  |  |                      picCells.push(sCell);
 | 
	
		
			
				|  |  |                  }
 |