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

📄 productrule.java

📁 一个基于java工厂模式的 的实现
💻 JAVA
字号:
/*
 * ProductRule.java
 *
 * Created on 2007年4月19日, 上午9:53
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package com.ebuy.businessrule;

import com.ebuy.common.dao.IDAO;
import com.ebuy.common.dao.IProductDAO;
import com.ebuy.common.rule.IProductRule;
import com.ebuy.common.rule.IRule;
import com.ebuy.common.NameProvider;
import com.ebuy.entities.ProductEntity;
import java.util.Iterator;
import java.util.List;

/**
 *
 * @author Administrator
 */
public class ProductRule extends RuleAdapter implements IProductRule
{
    
    /** Creates a new instance of ProductRule */
    public ProductRule()
    {
        super(NameProvider.Product);
    }
    
    public List getByCategoryID(int categoryid, int pagesize, int pageindex)
    {
        IProductDAO ipd=(IProductDAO)this.dao;
        List list=ipd.findByCategoryID(categoryid,pagesize,pageindex);
        this.setNormal(list);
        return list;          
    }
    
    public List getByProductNameKey(String key, int pagesize, int pageindex)
    {
        IProductDAO ipd=(IProductDAO)this.dao;
        List list=ipd.findByProductNameKey(key,pagesize,pageindex);
        this.setNormal(list);
        return list;          
    }
    private void setNormal(List list)
    {
        Iterator<ProductEntity> iter=list.iterator();
        ProductEntity p=null;
        boolean b;
        while(iter.hasNext())
        {
            p=iter.next();
            switch(p.getCategoryid())
            {
                case 3:
                    b=((p.getDownbound()-p.getQuantity())<=30);
                    p.setNormal(b);
                    break;
                case 4:
                    b=((p.getDownbound()-p.getQuantity())<=40);
                    p.setNormal(b);
                    break;
                case 7:
                    b=((p.getDownbound()-p.getQuantity())<=70);
                    p.setNormal(b);
                    break;
            }
        }
    }  

    public int getRecordCountByCategoryID(int categoryid)
    {
        IProductDAO ipd=(IProductDAO)this.dao;
        return ipd.getRecordCountByCategoryID(categoryid);
    }

    public int getRecordCountByProductNameKey(String key)
    {
         IProductDAO ipd=(IProductDAO)this.dao;
        return ipd.getRecordCountByProductNameKey(key);
    }
    public boolean addEntity(Object entity)
    {
        return this.dao.addEntity(entity);
    }
  }

⌨️ 快捷键说明

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