⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gbs_mifaction.java

📁 对日软件外包 为东芝做的一个全球商业管理系统
💻 JAVA
字号:
/*
 * Created on 2004/08/10
 *
 */
package ACTION;

import java.util.ArrayList;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import COMMON.BaseDispatchAction;
import COMMON.ReturnValue;
import COMMON.SystemConstants;
import DataBean.GBS_CountryDetail_stBean;
import DataBean.GBS_Detail_stBean;
import DataBean.GBS_MMifDetailList_stBean;
import DataBean.GBS_MMif_stBean;
import DataBean.GBS_MifEntryDetailList_stBean;
import DataBean.GBS_ProductPrice_stBean;
import DataBean.GBS_SubsidiaryDetail_stBean;
import LOGIC.GBS_MifActionLogic;

/**
 * <p>Title: MIF </p>
 * <p>Description: process page action<br>
 * </p>
 * <p> Copyright (c) 2004</p>
 * @author xjl
 * @version  1.0
 */

public class GBS_MifAction extends BaseDispatchAction	implements SystemConstants {
	
	/**
	 * init page  
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 * @throws Exception
	 */	
	public ActionForward init(
	  							ActionMapping mapping,
	  							ActionForm form,
	  							HttpServletRequest request,
	  							HttpServletResponse response)
								throws Exception {	   	
		log.info("[location info]GBS_MifAction.init method!");
		GBS_MifForm thisForm = (GBS_MifForm) form;
		this.setUserInfoFromSession( request, thisForm);
		
		GBS_MifActionLogic logic = new GBS_MifActionLogic(
					this.getDataSource(request));
					
		ArrayList detailList = new ArrayList();
		String strCustomerName = "";
		String recordCount = "";
		//GBS_MifActionLogic.getMif
		//僷儔儊乕僞丗thisForm.getCustomerId()
		ReturnValue returnValue = logic.getMif( thisForm.getCustomerId() );
		//僄儔乕帪
		if ( returnValue.isError() ){
			if ( returnValue.isBussinessError() ){
				this.setMessage( returnValue.getMessageList() );
			}
			return (mapping.findForward( nextview ));
		}else{
			//僨乕僞傪庢摼
			Map getData = ( Map ) returnValue.getDataValue();
			strCustomerName = ( String ) getData.get( CUSTOMER_NAME );
			detailList = ( ArrayList ) getData.get( DETAIL );
			recordCount = ( String ) getData.get( RECORDCOUNT );
			thisForm.setCustomerName( strCustomerName );
			thisForm.setRecordCount( recordCount );
			thisForm = toTree( thisForm, detailList );
		}
		return (mapping.findForward(nextview));
	}

	/**
	 * init page 
	 * @param mapping
	 * @param form
	 * @param request
	 * @param response
	 * @return
	 * @throws Exception
	 */	
	public ActionForward download(
									ActionMapping mapping,
									ActionForm form,
									HttpServletRequest request,
									HttpServletResponse response)
									throws Exception {
										
		log.info("[location info]GBS_MifAction.download method!");
		
		GBS_MifForm thisForm = ( GBS_MifForm ) form;
		
		this.setUserInfoFromSession( request, thisForm);
		
		// read data 
		GBS_MMif_stBean in = new GBS_MMif_stBean();
		in.setCustomerId( thisForm.getCustomerId().trim() );
		in.setProductCategory( thisForm.getProductCategory().trim() );
		in.setSubsidiaryCode( thisForm.getSubsidiaryCode().trim() );
		in.setCountryCode( thisForm.getCountryCode().trim());
		
		// read data 
		GBS_MifActionLogic logic = 
				new GBS_MifActionLogic(this.getDataSource(request));
				
		ReturnValue returnValue = logic.getAttachmentFile( in, response);
		if (returnValue.isError()){
			if ( returnValue.isBussinessError() ){
				this.setMessage( returnValue.getMessageList() );
			}
			return (mapping.findForward(nextview));
		}
		
		return (null);
	}	

	/**
	 * toTree
	 * @param GBS_MifForm thisForm,ArrayList detailList
	 * @return GBS_MifForm
	 */
	private GBS_MifForm toTree( GBS_MifForm thisForm , ArrayList detailList){
    	
		ArrayList mifDetail_stList = new ArrayList();

		GBS_MMifDetailList_stBean mifDetail_st = new GBS_MMifDetailList_stBean();
		ArrayList productCategoryList = new ArrayList();
	  

		GBS_CountryDetail_stBean  countryDetail_st =new GBS_CountryDetail_stBean();
		ArrayList countryList = new ArrayList();

		GBS_ProductPrice_stBean productIdList_st = new GBS_ProductPrice_stBean();

		
		if( detailList.size() >0 ){
	  
			for(int i = 0;i < detailList.size();i++){
				GBS_MifEntryDetailList_stBean 	mifEntryDetailList = 
								( GBS_MifEntryDetailList_stBean )detailList.get(i);
			
			  	if(mifEntryDetailList.getProductCategory().equals( mifDetail_st.getProductCategory())){
					mifDetail_st = setMifDetail_st( mifEntryDetailList,mifDetail_st );
					productCategoryList.set( productCategoryList.size()-1, mifDetail_st );
			  	}else{
					mifDetail_st = newMifDetail_st(  mifEntryDetailList );
					productCategoryList.add( mifDetail_st );
			  	}
			}
		}
		thisForm.setDataList( productCategoryList );
		return thisForm;
	}
	
	/**
	 * newMifDetail_st
	 * @param GBS_MifEntryDetailList_stBean mifEntryDetailList
	 * @return GBS_MMifDetailList_stBean
	*/
	private GBS_MMifDetailList_stBean newMifDetail_st(GBS_MifEntryDetailList_stBean	mifEntryDetailList){
		GBS_MMifDetailList_stBean mifDetail_st = new GBS_MMifDetailList_stBean();
		return setMifDetail_st( mifEntryDetailList,mifDetail_st );
	}
	/**
	 * setMifDetail_st
	 * @param GBS_MifEntryDetailList_stBean 	GBS_MMifDetailList_stBean
	 * @return GBS_MMifDetailList_stBean
	 */
	private GBS_MMifDetailList_stBean setMifDetail_st(
								GBS_MifEntryDetailList_stBean mifEntryDetail_st,
								GBS_MMifDetailList_stBean mifDetail_st ){
		
		ArrayList dataList = mifDetail_st.getDataList();
		mifDetail_st.setProductCategory(mifEntryDetail_st.getProductCategory());
		mifDetail_st.setString1(mifEntryDetail_st.getString1());
		GBS_CountryDetail_stBean  countryDetail_st = new GBS_CountryDetail_stBean();
		if(dataList.size()>0){
			countryDetail_st = (GBS_CountryDetail_stBean)dataList.get(dataList.size()-1);
		}else{
			countryDetail_st = new GBS_CountryDetail_stBean();
		}
		
		if(countryDetail_st.getCountryCode().equals(mifEntryDetail_st.getCountryCode())){
			countryDetail_st = setCountry_st( mifEntryDetail_st, countryDetail_st );
			dataList.set( dataList.size()-1, countryDetail_st );
		}else{
			countryDetail_st = newCountry_st( mifEntryDetail_st );
			dataList.add( countryDetail_st );
		}
		mifDetail_st.setDataList(dataList);
		return mifDetail_st;
	}
	
	/**
	 * newCountry_st
	 * @param GBS_MifEntryDetailList_stBean 	mifEntryDetail_st
	 * @return GBS_CountryDetail_stBean
	 */
	private GBS_CountryDetail_stBean newCountry_st(GBS_MifEntryDetailList_stBean mifEntryDetail_st){
		GBS_CountryDetail_stBean  country_st =new GBS_CountryDetail_stBean();
		return setCountry_st(mifEntryDetail_st, country_st);
	}
	/**
	 * setCountry_st
	 * @param GBS_MifEntryDetailList_stBean 	GBS_CountryDetail_stBean
	 * @return GBS_CountryDetail_stBean
	 */
	private GBS_CountryDetail_stBean setCountry_st( 
									GBS_MifEntryDetailList_stBean mifEntryDetail_st, 
									GBS_CountryDetail_stBean country_st ){
		ArrayList dataList = country_st.getDataList();
		country_st.setCountryCode( mifEntryDetail_st.getCountryCode() );
		country_st.setCountryName( mifEntryDetail_st.getCountryName() );
		GBS_SubsidiaryDetail_stBean  subsidiary_st = new GBS_SubsidiaryDetail_stBean();
		if(dataList.size()>0){
			subsidiary_st = (GBS_SubsidiaryDetail_stBean)dataList.get(dataList.size()-1);
		}else{
			subsidiary_st = new GBS_SubsidiaryDetail_stBean();
		}
		if(subsidiary_st.getSubsidiaryCode().equals(mifEntryDetail_st.getSubsidiaryCode())){
			subsidiary_st = setSubsidiary_st( mifEntryDetail_st, subsidiary_st );
			dataList.set( dataList.size()-1, subsidiary_st );
		}else{
			subsidiary_st = newSubsidiary_st( mifEntryDetail_st );
			dataList.add( subsidiary_st );
		}
		country_st.setDataList(dataList);
		return country_st;
	}
	
	/**
	 * newSubsidiary_st
	 * @param GBS_MifEntryDetailList_stBean 	mifEntryDetail_st
	 * @return GBS_SubsidiaryDetail_stBean
	 */
	private GBS_SubsidiaryDetail_stBean newSubsidiary_st(GBS_MifEntryDetailList_stBean mifEntryDetail_st){
		GBS_SubsidiaryDetail_stBean  subsidiary_st =new GBS_SubsidiaryDetail_stBean();
		return setSubsidiary_st( mifEntryDetail_st, subsidiary_st );
	}
	/**
	 * setSubsidiary_st
	 * @param GBS_MifEntryDetailList_stBean GBS_SubsidiaryDetail_stBean
	 * @return GBS_SubsidiaryDetail_stBean
	 */
	private GBS_SubsidiaryDetail_stBean setSubsidiary_st(
										GBS_MifEntryDetailList_stBean mifEntryDetail_st,
										GBS_SubsidiaryDetail_stBean subsidiary_st){
		ArrayList dataList=	subsidiary_st.getDataList();
		subsidiary_st.setSubsidiaryCode( mifEntryDetail_st.getSubsidiaryCode() );
		subsidiary_st.setSubsidiaryName( mifEntryDetail_st.getSubsidiaryName() );
		subsidiary_st.setAtchFiletype( mifEntryDetail_st.getAtchFiletype() );
		subsidiary_st.setRemarks( mifEntryDetail_st.getRemarks() );
		dataList.add(newDetail_st(mifEntryDetail_st));
		subsidiary_st.setDataList( dataList );
		subsidiary_st.setRowSize(1);
		return subsidiary_st;
	}
	
	/**
	 * newDetail_st
	 * @param GBS_MifEntryDetailList_stBean mifEntryDetail_st
	 * @return GBS_ProductHardwarePriceList_stBean
	 */
	private GBS_Detail_stBean newDetail_st(GBS_MifEntryDetailList_stBean mifEntryDetail_st ){
		GBS_Detail_stBean detail_st = new GBS_Detail_stBean();
		detail_st.setModel( mifEntryDetail_st.getModel() );
		detail_st.setQty( mifEntryDetail_st.getQty() );
		detail_st.setCurrency( mifEntryDetail_st.getCurrency() );
		detail_st.setHardPrice( mifEntryDetail_st.getHardPrice() );
		detail_st.setCpcPrice( mifEntryDetail_st.getCpcPrice() );
		detail_st.setMcv( mifEntryDetail_st.getMcv() );
		detail_st.setInstallDate( mifEntryDetail_st.getInstallDate() );
		detail_st.setRfpRcvDate( mifEntryDetail_st.getRfpRcvDate() );
		detail_st.setMemberName( mifEntryDetail_st.getMemberName() );
		return detail_st;
	}
	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -