package com.gx.tools.ole.signature; import java.util.List; import org.eclipse.swt.SWT; import org.eclipse.swt.core.widgets.EDialog; import org.eclipse.swt.core.widgets.ESepator; import org.eclipse.swt.events.MouseAdapter; import org.eclipse.swt.events.MouseEvent; import org.eclipse.swt.graphics.Point; import org.eclipse.swt.layout.FillLayout; import org.eclipse.swt.layout.GridData; import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Shell; import com.gx.obe.business.enumeration.UserEnum; import com.gx.obe.components.core.enumeration.CommonEnum; import com.gx.obe.config.ConfigConstants; import com.gx.obe.config.utils.PropertiesUtils; import com.gx.obe.message.Messages; import com.gx.obe.util.utils.LogUtils; import com.gx.obe.util.utils.ScreenUtils; import com.gx.obe.web.entity.expert.Expert; import com.gx.obe.web.entity.tender.TenderProjectEntity; import com.gx.obe.web.service.expert.ExpertService; import com.swtdesigner.ResourceManager; /** * @Description: 流转签章 * @author guoyr */ public class ManagerBacthSignatureDialog extends EDialog { private TenderProjectEntity tenderProject; private Composite container; private ExpertService expertService = new ExpertService(); private Composite composite; private ExpertBatchSignatureComposite expertBatchSignatureComposite; // private UserInfoButton userInfoButton; { LogUtils.logClass(ManagerBacthSignatureDialog.class); } /** * @author guoyr * @param parentShell * @param tenderProjectEntity * @param templateType */ public ManagerBacthSignatureDialog(Shell parentShell, TenderProjectEntity tenderProjectEntity) { super(parentShell); setTitle(Messages.Button_scanSignatrue); this.tenderProject = tenderProjectEntity; } /** * @Description: * @author guoyr * @param parent * @return */ @Override protected Control createDialogArea(Composite parent) { container = (Composite) super.createDialogArea(parent); GridLayout gl_container = new GridLayout(1, false); container.setLayout(gl_container); composite = new Composite(container, SWT.NONE); GridLayout gl_composite = new GridLayout(10, false); gl_composite.horizontalSpacing = 20; gl_composite.verticalSpacing = 10; gl_composite.marginRight = 50; gl_composite.marginLeft = 50; composite.setLayout(gl_composite); composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); ESepator sep = new ESepator(container, SWT.NONE); sep.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1)); Composite composite_1 = new Composite(container, SWT.NONE); composite_1.setLayout(new FillLayout(SWT.HORIZONTAL)); composite_1.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); expertBatchSignatureComposite = new ExpertBatchSignatureComposite(composite_1, SWT.NONE); init(); return container; } /** * 初始化数据 */ private void init(){ container.setData("dialog", "true"); List<Expert> expertList = expertService.getExpertListByTenderId(tenderProject.getId()); int index = 0; if(null != expertList && expertList.size() > 0) { for(final Expert expert : expertList) { SignInfoButton imageButton = new SignInfoButton(composite, SWT.NONE); imageButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, false, false, 1, 1)); boolean managerIsFemale = null != expert.getUser() && UserEnum.FEMALE.equals(expert.getUser().getGender()); if(managerIsFemale) { imageButton.setImage(ResourceManager.getPluginImage("com.gx.obe.common.icons", "icons/female_48.png")); }else { imageButton.setImage(ResourceManager.getPluginImage("com.gx.obe.common.icons", "icons/male_48.png")); } // if(managerIsFemale) { imageButton.setText(expert.getUser().getUserName()); imageButton.addMouseListener(new MouseAdapter() { public void mouseUp(MouseEvent e) { expertBatchSignatureComposite.refreshSignatureFiles(tenderProject, expert.getUser(), expert); System.out.println("专家点击进入" + expert.getUser().getUserName()); } }); // 默认选中第一个 if(index == 0) { expertBatchSignatureComposite.refreshSignatureFiles(tenderProject, expert.getUser(), expert); } index ++; } } } /** * Return the initial size of the dialog. */ @Override protected Point getInitialSize() { ScreenUtils util = new ScreenUtils(); int screenHight = util.getScreenHight() - util.getTaskBarHight(); if(PropertiesUtils.getProperty(ConfigConstants.EVAL_FULL_SCREEN, "00").equals(CommonEnum.YES)) { screenHight = util.getScreenHight(); } return new Point(util.getScreenWight(),screenHight); // return new Point(840, 616); } }