// 导出一个函数，这个函数接受数据库对象db和一个回调函数callback作为参数
module.exports = function(db, callback) {
    // 用户模型
    // 使用db.define方法定义一个模型，模型名为GoodModel
    db.define("GoodModel", {
        // 定义模型的属性
        goods_id: {type: 'serial', key: true}, // 商品ID，自增主键
        cat_id: Number, // 分类ID，类型为数字
        goods_name: String, // 商品名称，类型为字符串
        goods_price: Number, // 商品价格，类型为数字
        goods_number: Number, // 商品数量，类型为数字
        goods_weight: Number, // 商品重量，类型为数字
        goods_introduce: String, // 商品介绍，类型为字符串
        goods_big_logo: String, // 商品大图，类型为字符串
        goods_small_logo: String, // 商品小图，类型为字符串
        goods_state: Number, // 商品状态，0：未审核 1: 审核中 2: 已审核
        is_del: ['0', '1'], // 是否删除，0: 正常 , 1: 删除
        add_time: Number, // 添加时间，类型为数字
        upd_time: Number, // 更新时间，类型为数字
        delete_time: Number, // 删除时间，类型为数字
        hot_mumber: Number, // 热门数量，类型为数字
        is_promote: Boolean, // 是否促销，类型为布尔值
        cat_one_id: Number, // 一级分类ID，类型为数字
        cat_two_id: Number, // 二级分类ID，类型为数字
        cat_three_id: Number // 三级分类ID，类型为数字
    }, {
        // 定义模型的选项
        table: "sp_goods", // 指定模型对应的数据库表名为sp_goods
        methods: { // 定义模型的方法
            getGoodsCat: function() {
                // 返回一个字符串，包含所有分类ID，用逗号分隔
                return this.cat_one_id + ',' + this.cat_two_id + ',' + this.cat_three_id;
            }
        }
    });
    // 调用回调函数，传入无参数
    return callback();
}