You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

678 lines
16 KiB

'use strict';
module.exports = app => {
const mongoose = app.mongoose;
const Schema = mongoose.Schema;
const ChanpinSchema = new Schema({
// 创建时间
create_at: {
type: Date,
default: Date.now
},
// 更新时间
update_at: {
type: Date,
default: Date.now
},
// 代码
daima: {
type: String,
default: "",
index: true,
unique: true
},
// 品名
pinming: {
type: String,
default: ""
},
// 规格型号
guigexinghao: {
type: String,
default: ""
},
// 助记符
zhujifu: {
type: String,
default: ""
},
// 计量单位
jiliangdanwei: {
type: String,
default: ""
},
// 条形码
tiaoxingma: {
type: String,
default: "",
index: true,
},
// 箱装量
xiangzhuangliang: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 箱装单位
xiangzhuangdanwei: {
type: String,
default: ""
},
// 最大单位箱装量
zuidadanweixiangzhuangliang: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最大箱装单位
zuidaxiangzhuangdanwei: {
type: String,
default: ""
},
// 产地
chandi: {
type: String,
default: ""
},
// 主供应商
zhugongyingshang: {
type: String,
default: ""
},
// 经销商
jingxiaoshang: {
type: String,
default: ""
},
// 所属类别
suoshuleibie: {
type: String,
default: ""
},
// 最高采购价
zuigaocaigoujia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 商超价1
shangchaojia1: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 现金价
xianjinjia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 二批流通价
erpiliutongjia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 商超价
shangchaojia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 现金零售价
xianjinlingshoujia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 商超零售价
shangchaolingshoujia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 特通价
tetongjia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 分公司价
fengongsijia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 零食店价
shangchaolingshoujia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 初中高中价
chuzhonggaozhongjia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 车销价
chexiaojia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 发货价11
shangchaolingshoujia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 发货价12
fahuojia12: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 进货税率%
jinhuoshuilv: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 发货税率%
fahuoshuilv: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 包装
baozhuang: {
type: String,
default: ""
},
// 毛利率
maolilv: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 主存放仓库
zhucunfangcangku: {
type: String,
default: ""
},
// 有保质期
youbaozhiqi: {
type: String,
default: ""
},
// 保质期(天)
baozhiqi: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 有效?
youxiao: {
type: String,
default: ""
},
// 采销类型
caixiaoleixing: {
type: String,
default: ""
},
// 商品类型
shangpinleixing: {
type: String,
default: ""
},
// 备注
beizhu: {
type: String,
default: ""
},
// 单位重量
danweizhongliang: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(4)) }
},
// 品牌
pinpai: {
type: String,
default: ""
},
// 单位体积(立方米)
danweitiji: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(4)) }
},
// 箱重量(kg)
xiangzhongliang: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(4)) }
},
// 最大单位重量(kg)
zuidadanweizhongliang: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(4)) }
},
// 箱体积(立方米)
xiangtiji: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(4)) }
},
// 最大单位体积(立方米)
zuidadanweitiji: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(4)) }
},
// 描述
miaoshu: {
type: String,
default: ""
},
// 仓库出入库时,以‘箱装单位’为依准
yixiangzhuangdanweiweiyizhun: {
type: String,
default: ""
},
// 打印‘流通随行单’
liutongsuixingdan: {
type: String,
default: ""
},
// 发货产品
fahuochanpin: {
type: String,
default: ""
},
// 标准核算价
biaozhunhesuanjia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 建议零售价
jianyilingshoujia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最近一次采购价
zuijinyicicaigoujia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最近一次销售价
zuijinyicixiaoshoujia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 箱条形码
xiangtiaoxingma: {
type: String,
default: "",
index: true,
},
// 最大箱装条码
zuidaxiangzhuangtiaoma: {
type: String,
default: "",
index: true,
},
// 接口编码1
jiekoubianma1: {
type: String,
default: ""
},
// 接口编码2
jiekoubianma2: {
type: String,
default: ""
},
// 接口编码3
jiekoubianma3: {
type: String,
default: ""
},
// 发货产品基数
fahuochanpinjishu: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 采购最少数量
caigouzuishaoshuliang: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 采购倍数
caigoubeishu: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 采购滚动基数
caigougundongjishu: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最小单位产品
zuixiaodanweichanpin: {
type: String,
default: ""
},
// 最小单位倍数
zuixiaodanweibeishu: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 产品归类
chanpinguilei: {
type: String,
default: ""
},
// 产品归类II
chanpinguilei2: {
type: String,
default: ""
},
// 箱单位最高采购价
xiangdanweizuigaocaigoujia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 箱单位商超价1
xiangdanweishangchaojia1: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 箱单位现金价
xiangdanweixianjinjia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 箱单位二批流通价
xiangdanweierpiliutongjia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 箱单位商超价
xiangdanweishangchaojia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 箱单位现金零售价
xiangdanweixianjinlingshoujia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 箱单位商超零售价
xiangdanweishangchaolingshoujia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 箱单位特通价
xiangdanweitetongjia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 箱单位分公司价
xiangdanweifengongsijia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 箱单位零食店价
xiangdanweilingshidianjia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 箱单位初中高中价
xiangdanweichuzhonggaozhongjia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 箱单位车销价
xiangdanweichexiaojia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 箱单位发货价11
xiangdanweifahuojia11: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 箱单位发货价12
xiangdanweifahuojia12: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最大单位最高采购价
zuidadanweizuigaocaigoujia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最大单位商超价1
zuidadanweishangchaojia1: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最大单位现金价
zuidadanweixianjinjia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最大单位二批流通价
zuidadanweierpiliutongjia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最大单位商超价
zuidadanweishangchaojia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最大单位现金零售价
zuidadanweixianjinlingshoujia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最大单位商超零售价
zuidadanweishangchaolingshoujia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最大单位特通价
zuidadanweitetongjia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最大单位分公司价
zuidadanweifengongsijia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最大单位零食店价
zuidadanweilingshidianjia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最大单位初中高中价
zuidadanweichuzhonggaozhongjia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最大单位车销价
zuidadanweichexiaojia: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最大单位发货价11
zuidadanweifahuojia11: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最大单位发货价12
zuidadanweifahuojia12: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 默认单据单位
morendanjudanwei: {
type: String,
default: ""
},
// 不封箱单位
bufengxiangdanwei: {
type: String,
default: ""
},
// 仓库提成类别
cangkutichengleibie: {
type: String,
default: ""
},
// 强制批次管理
qiangzhipiciguanli: {
type: String,
default: ""
},
// 立库存放区域
likucunfangquyu: {
type: String,
default: ""
},
// 建档日期
jiandangriqi: {
type: Date,
default: ""
},
// 出货是否加工
chuhuoshifujiagong: {
type: String,
default: ""
},
// 保质期天数需大于
baozhiqitianshuxudayu: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 单品重量误差
danpinzhongliangwucha: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最大单品重量误差百分比%
zuidadanpinzhongliangwuchabaifenbi: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 最大箱重量误差
zuidaxiangzhongliangwucha: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 价格调整时间
jiagediaozhengshijian: {
type: Date,
default: ""
},
// 录入人
lururen: {
type: String,
default: ""
},
// 允收天数
yunshoutianshu: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
// 强制序列号管理
qiangzhixuliehaoguanli: {
type: String,
default: ""
},
// 国标条形码
guobiaotiaoxingma: {
type: String,
default: ""
},
// 长(cm)
chang: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(4)) }
},
// 宽(cm)
kuan: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(4)) }
},
// 高(cm)
gao: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(4)) }
},
// 每托盘件数
meituopanjianshu: {
type: Number,
default: 0,
set: (val) => { return Number(Number(val).toFixed(2)) }
},
//数据是否删除
isExit: {
type: Number,
default: 1,
index: true
},
}, { strict: false });
return mongoose.model('Chanpin', ChanpinSchema);
};