/**
 * Copyright (c) 2003-2004 System Integrator Corporation.
 *                 All Rights Reserved.
 */

package jp.co.sint.basic;

import java.sql.Connection;
import java.util.ArrayList;
import java.util.Collection;

import jp.co.sint.database.SIDBAccessException;
import jp.co.sint.database.SIDBUtil;
import jp.co.sint.tools.SIUtil;

/**
 * @version $Id : SICustAttr.java,v 1.0 Exp $
 * @author      : Jinwang Chen
 * <br>Description :
 * <p>History</p>
 * <p>Author&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Date&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Reason</p>
 * ============&nbsp;&nbsp;&nbsp;==========&nbsp;&nbsp;===========================<br>
 * Jinwang Chen   2003/09/08  Original
 */

public class SICustAttr extends SIBasic {
  // ショップコード
  private String attrCode = "";
  
  // 規格コード
  private String attrFlag = "";
  
  // 規格名称
  private String attrName = "";
  
  // 表示順序
  private String dispOrder = "";
  
  /**
   * @return
   */
  public String getAttrCode() {
    return attrCode;
  }
  
  /**
   * @return
   */
  public String getAttrFlag() {
    return attrFlag;
  }
  
  /**
   * @return
   */
  public String getAttrName() {
    return attrName;
  }
  
  /**
   * @return
   */
  public String getDispOrder() {
    return dispOrder;
  }
  
  /**
   * @param string
   */
  public void setAttrCode(String string) {
    if (string == null) string = "";
    string = SIUtil.changeTo(string.trim(), this.encode);
    attrCode = string;
  }
  
  /**
   * @param string
   */
  public void setAttrFlag(String string) {
    if (string == null) string = "";
    string = SIUtil.changeTo(string.trim(), this.encode);
    attrFlag = string;
  }
  
  /**
   * @param string
   */
  public void setAttrName(String string) {
    if (string == null) string = "";
    string = SIUtil.changeTo(string.trim(), this.encode);
    attrName = string;
  }
  
  /**
   * @param string
   */
  public void setDispOrder(String string) {
    if (string == null) string = "";
    string = SIUtil.changeTo(string.trim(), this.encode);
    dispOrder = string;
  }
  
  /**
   * <b>getNameCollection</b> 顧客属性フラグから顧客属性名称を取得
   * 
   * @param Connection
   * @param lAttrFlg 顧客属性フラグ
   * @return Collection 顧客属性名称リスト
   * @throws なし
   */
  public static Collection getNameCollection(Connection lConnection, String lAttrFlg) {
    
    StringBuffer lSqlBuf = new StringBuffer("SELECT attrName,attrName FROM CustAttrMtbl ");
    lSqlBuf.append("WHERE attrName<>'楽天' AND ATTRFLAG=").append(SIDBUtil.SQL2Str(lAttrFlg)).append(" ORDER BY dispOrder ASC");
    
    Collection lResultColl = new ArrayList();
    
    try {
      if("0".equals(lAttrFlg)) lResultColl = SIDBUtil.getCollection(lConnection, lSqlBuf.toString(), true);
      else lResultColl = SIDBUtil.getCollection(lConnection, lSqlBuf.toString(), false);
    } catch (SIDBAccessException e) {
      e.printStackTrace();
    }
    
    return lResultColl;
    
  }
  
  /**
   * <b>getHobbyCollection</b> 顧客属性フラグから顧客趣味名称リストを取得
   * 
   * @param Connection
   * @param lAttrFlg 顧客属性フラグ
   * @return Collection 顧客趣味名称リスト
   * @throws なし
   */
  public static Collection getHobbyCollection(Connection lConnection, String lAttrFlg) throws SIDBAccessException {
    
    StringBuffer lSqlBuf = new StringBuffer("SELECT attrName,attrName FROM CustAttrMtbl ");
    lSqlBuf.append("WHERE ATTRFLAG=").append(SIDBUtil.SQL2Str(lAttrFlg)).append(" ORDER BY dispOrder ASC");
    
    return SIDBUtil.getCollection(lConnection, lSqlBuf.toString());
    
  }
}
