?? gbs_mifaction.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 + -