gbs_pricecpcpricelistactionlogic.java
来自「对日软件外包 为东芝做的一个全球商业管理系统」· Java 代码 · 共 215 行
JAVA
215 行
package LOGIC;
import java.util.ArrayList;
import javax.sql.DataSource;
import ACTION.GBS_PriceCPCPriceListForm;
import COMMON.MessageList;
import COMMON.ReturnValue;
import COMMON.SystemConstants;
import DB.GBS_MCountry_DB;
import DB.GBS_TProductPrice_DB;
import DataBean.GBS_CPCPrice_stBean;
import DataBean.GBS_LittleCPCPrice_stBean;
import DataBean.GBS_LittleCountry_stBean;
import DataBean.GBS_ProductCPCPriceList_stBean;
/**
* public class GBS_PriceCPCPriceListActionLogic implements SystemConstants
* created on 07-30-2004
* @author wxf
* @version 1.0
*/
public class GBS_PriceCPCPriceListActionLogic implements SystemConstants {
private DataSource datasource = null;
private ArrayList littleCountry_stList;
/**
* trans datasource to db
* @param datasource
* reurn GBS_PriceCPCPriceListActionLogic
*/
public GBS_PriceCPCPriceListActionLogic(DataSource datasource) {
this.datasource = datasource;
}
/**
* getAllCPCPriceInfo
* @param String productCategoryCode
* @param String countryCode
* @return all CPCPrice inforamtion
* @throws Exception
*/
public ReturnValue getAllCPCPriceInfo(String productCategoryCode, String countryCode, int plusHour)
throws Exception {
ReturnValue returnValue = new ReturnValue();
MessageList messageList = new MessageList();
returnValue.setMessageList(messageList);
GBS_PriceCPCPriceListForm priceCPCPriceListForm = new GBS_PriceCPCPriceListForm();
GBS_MCountry_DB countryDB = new GBS_MCountry_DB(datasource);
GBS_TProductPrice_DB tProductPriceDB = new GBS_TProductPrice_DB(datasource);
ReturnValue ret = countryDB.seletCountryName(countryCode);
this.littleCountry_stList = (ArrayList) ret.getDataValue();
ret = tProductPriceDB.selectCPCPricelist(productCategoryCode, countryCode, plusHour);
if (ret.isError()) {
if (ret.isBussinessError()) {
returnValue.setMessageList(ret.getMessageList());
}
returnValue.setErrorCode(ret.getErrorCode());
returnValue.setErrorMessage(ret.getErrorMessage());
//getErrorCode ,getErrorMessage傪張棟
}
ArrayList CPCPrice_stlist = (ArrayList) ret.getDataValue();
int indexOfProduct = -1;
GBS_ProductCPCPriceList_stBean productID_st = new GBS_ProductCPCPriceList_stBean();
ArrayList outList = new ArrayList();
outList.add(this.littleCountry_stList);
// CPC price data list cheng into tree.
for (int i = 0; CPCPrice_stlist != null && i < CPCPrice_stlist.size(); i++) {
GBS_CPCPrice_stBean CPCPrice_st = (GBS_CPCPrice_stBean) CPCPrice_stlist.get(i);
if (productID_st.getProductID().equals(CPCPrice_st.getProductID())) {
productID_st = setProductID(CPCPrice_st, productID_st);
outList.set(outList.size() - 1, productID_st);
} else {
productID_st = newProductID(CPCPrice_st);
outList.add(productID_st);
}
}
priceCPCPriceListForm.setLittleCountrylist(this.littleCountry_stList);
productID_st = new GBS_ProductCPCPriceList_stBean();
productID_st.setProductID(" ");
productID_st.setProductName(" ");
productID_st.setDataList(this.littleCountry_stList);
outList.set(0, productID_st);
priceCPCPriceListForm.setDataList(outList);
returnValue.setDataValue(priceCPCPriceListForm);
return returnValue;
}
/**
* setPrice_st
* @param GBS_CPCPrice_stBean CPCPrice_st
* @param GBS_LittleCPCPrice_stBean littleCPCPrice_st
* @return GBS_LittleCPCPrice_stBean
* @throws Exception
*/
private GBS_LittleCPCPrice_stBean setPrice_st(
GBS_CPCPrice_stBean CPCPrice_st,
GBS_LittleCPCPrice_stBean littleCPCPrice_st) {
littleCPCPrice_st.setLocalCurrency(CPCPrice_st.getLocalCurrency());
littleCPCPrice_st.setLocalCurrencyeKey(CPCPrice_st.getLocalCurrencyKey());
//C1:CPC BW
if (CPCPrice_st.getPriceCategory().equals("C1")) {
littleCPCPrice_st.setEUROPriceBWCPM(CPCPrice_st.getEUROPrice());
littleCPCPrice_st.setLocalPriceBWCPM(CPCPrice_st.getLocalPrice());
littleCPCPrice_st.setUSPriceBWCPM(CPCPrice_st.getUSPrice());
}
//C2:CPC_Color
if (CPCPrice_st.getPriceCategory().equals("C2")) {
littleCPCPrice_st.setEUROPriceColorCPM(CPCPrice_st.getEUROPrice());
littleCPCPrice_st.setLocalPriceColorCPM(CPCPrice_st.getLocalPrice());
littleCPCPrice_st.setUSPriceColorCPM(CPCPrice_st.getUSPrice());
}
//C3:CPC_MONOCOLOR
if (CPCPrice_st.getPriceCategory().equals("C3")) {
littleCPCPrice_st.setEUROPriceMonoColorCPM(CPCPrice_st.getEUROPrice());
littleCPCPrice_st.setLocalPriceMonoColorCPM(CPCPrice_st.getLocalPrice());
littleCPCPrice_st.setUSPriceMonoColorCPM(CPCPrice_st.getUSPrice());
}
//C4:CPC Other
if (CPCPrice_st.getPriceCategory().equals("C4")) {
littleCPCPrice_st.setEUROPriceOtherCPM(CPCPrice_st.getEUROPrice());
littleCPCPrice_st.setLocalPriceOtherCPM(CPCPrice_st.getLocalPrice());
littleCPCPrice_st.setUSPriceOtherCPM(CPCPrice_st.getUSPrice());
}
//set max date of country.
for (int j = 0; j < littleCountry_stList.size(); j++) {
GBS_LittleCountry_stBean littleCountry_st = (GBS_LittleCountry_stBean) littleCountry_stList.get(j);
if (littleCountry_st.getCountryCode().equals(CPCPrice_st.getCountryCode())) {
if (littleCountry_st.getDateTime().compareTo(CPCPrice_st.getDateTime()) < 0) {
littleCountry_st.setDateTime(CPCPrice_st.getDateTime());
littleCountry_st.setDate(CPCPrice_st.getDate());
littleCountry_stList.set(j, littleCountry_st);
}
}
}
return littleCPCPrice_st;
}
/**
* newPrice_st
* @param GBS_CPCPrice_stBean CPCPrice_st
* @return GBS_LittleCPCPrice_stBean
* @throws Exception
*/
private GBS_LittleCPCPrice_stBean newPrice_st(GBS_CPCPrice_stBean CPCPrice_st) {
GBS_LittleCPCPrice_stBean littleCPCPrice_st = new GBS_LittleCPCPrice_stBean();
return setPrice_st(CPCPrice_st, littleCPCPrice_st);
}
/**
* setProductID
* @param GBS_CPCPrice_stBean CPCPrice_st
* @param GBS_ProductCPCPriceList_stBean priductID
* @return GBS_ProductCPCPriceList_stBean
* @throws Exception
*/
private GBS_ProductCPCPriceList_stBean setProductID(
GBS_CPCPrice_stBean CPCPrice_st,
GBS_ProductCPCPriceList_stBean priductID) {
ArrayList dataList = priductID.getDataList();
for (int i = 0; i < littleCountry_stList.size(); i++) {
GBS_LittleCountry_stBean littleCountry_st = (GBS_LittleCountry_stBean) littleCountry_stList.get(i);
GBS_LittleCPCPrice_stBean price_st;
if (littleCountry_st.getCountryCode().equals(CPCPrice_st.getCountryCode())) {
price_st = (GBS_LittleCPCPrice_stBean) dataList.get(i);
price_st = setPrice_st(CPCPrice_st, price_st);
dataList.set(i, price_st);
}
}
priductID.setDataList(dataList);
priductID.setRowSize(12);
return priductID;
}
/**
* newProductID
* @param GBS_CPCPrice_stBean CPCPrice_st
* @return GBS_ProductCPCPriceList_stBean
* @throws Exception
*/
private GBS_ProductCPCPriceList_stBean newProductID(GBS_CPCPrice_stBean CPCPrice_st) {
GBS_ProductCPCPriceList_stBean priductID = new GBS_ProductCPCPriceList_stBean();
priductID.setProductID(CPCPrice_st.getProductID());
priductID.setProductName(CPCPrice_st.getProductName());
ArrayList dataList = new ArrayList();
for (int i = 0; i < littleCountry_stList.size(); i++) {
GBS_LittleCountry_stBean littleCountry_st = (GBS_LittleCountry_stBean) littleCountry_stList.get(i);
GBS_LittleCPCPrice_stBean price_st;
if (littleCountry_st.getCountryCode().equals(CPCPrice_st.getCountryCode())) {
price_st = newPrice_st(CPCPrice_st);
} else {
price_st = new GBS_LittleCPCPrice_stBean();
}
dataList.add(price_st);
}
priductID.setDataList(dataList);
priductID.setRowSize(12);
return priductID;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?