1. 程式人生 > >二維矩形原料的簡易求解(下)

二維矩形原料的簡易求解(下)

表設計修正後

CREATE TABLE `o88o_raw_material_def` (
  `id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `name` VARCHAR(40) NOT NULL COMMENT '原料名稱',
  `unit` VARCHAR(4) NOT NULL COMMENT '單位',
  `width` INT(11) NOT NULL  COMMENT '寬度',
  `long` INT(11) NOT NULL  COMMENT '長度,-1:無限長',
  
  `remark` VARCHAR(128) DEFAULT NULL COMMENT '備註',
  `enabled` tinyint(4) DEFAULT '1' COMMENT '該行是否啟用:0-否 1-是',
  `add_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加人',
  `add_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加時間',
  `update_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改人',
  `update_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='原料定義表';


CREATE TABLE `o88o_raw_material_price_def` (
  `id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `name` VARCHAR(40) NOT NULL COMMENT '優惠名稱',
  `raw_material_id` BIGINT(20) NOT NULL COMMENT '原料id',
  `price_type` VARCHAR(4) NOT NULL COMMENT '優惠型別,as:金額區間內減固定金額,ap:金額區間內減比例金額,ls:長度區間內減固定金額,lp:長度區間內減比例金額,',
  `unit` VARCHAR(4) NOT NULL COMMENT '單位',
  `min_long` INT(11) NOT NULL  COMMENT '所需長度',
  `max_long` INT(11) NOT NULL  COMMENT '所需長度',
  `min_amount` DECIMAL(10,2) DEFAULT 0.00 COMMENT '金額',
  `max_amount` DECIMAL(10,2) DEFAULT 0.00 COMMENT '金額',
  `discount` DECIMAL(10,6) DEFAULT 0.00 COMMENT '優惠',
  
  `remark` VARCHAR(128) DEFAULT NULL COMMENT '備註',
  `enabled` tinyint(4) DEFAULT '1' COMMENT '該行是否啟用:0-否 1-是',
  `add_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加人',
  `add_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加時間',
  `update_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改人',
  `update_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='原料價格優惠定義表';


CREATE TABLE `o88o_batch_in` (
  `id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `batch_no` VARCHAR(30) NOT NULL  COMMENT '批次號',
  `order_no` VARCHAR(30) NOT NULL COMMENT '訂單號',
  `custom_name` VARCHAR(30) NOT NULL  COMMENT '客戶名稱',
  `prod_model` VARCHAR(20) NOT NULL  COMMENT '產品型號',
  
  `prod_package` VARCHAR(10) NOT NULL  COMMENT '包裝方式,一片合成,天地蓋',
  `unit` VARCHAR(4) NOT NULL COMMENT '單位',
  `prod_width` INT(11) NOT NULL  COMMENT '產品寬度',
  `rect_width` INT(11) NOT NULL  COMMENT '矩形寬度,由產品寬度計算而來',
  `prod_long` INT(11) NOT NULL  COMMENT '產品長度',
  `rect_long` INT(11) NOT NULL  COMMENT '矩形長度,由產品長度計算而來',
  `prod_hight` INT(11) NOT NULL  COMMENT '產品高度',
  `prod_count` INT(11) NOT NULL  COMMENT '產品數量',
  
  `remark` VARCHAR(128) DEFAULT NULL COMMENT '備註',
  `seq` INT(11) NOT NULL DEFAULT '-1' COMMENT '排序',
  `add_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加人',
  `add_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加時間',
  `update_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改人',
  `update_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='批次錄入表';


CREATE TABLE `o88o_product_calc` (
  `id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `batch_id` BIGINT(20) NOT NULL  COMMENT '批次id',
  `calc_type` INT(11) NOT NULL  COMMENT '計算方式',
  `unit` VARCHAR(4) NOT NULL COMMENT '單位',
  `prod_width` INT(11) NOT NULL  COMMENT '產品寬度',
  `rect_width` INT(11) NOT NULL  COMMENT '矩形寬度,由產品寬度計算而來',
  `prod_long` INT(11) NOT NULL  COMMENT '產品長度',
  `rect_long` INT(11) NOT NULL  COMMENT '矩形長度,由產品長度計算而來',
  `prod_hight` INT(11) NOT NULL  COMMENT '產品高度',
  `prod_count` INT(11) NOT NULL  COMMENT '產品數量',
  `width_in_section` INT(11) NULL  COMMENT '剖寬',
  `size_in_section` INT(11) NULL  COMMENT '原料寬度方向剖量',
  `size` INT(11) NULL  COMMENT '原料長度方向剖量',
  `need_raw_material_id` BIGINT(20)  NULL  COMMENT '包裝方式,一片合成,天地蓋',
  
  
  `remark` VARCHAR(128) DEFAULT NULL COMMENT '備註',
  `status` INT(11) NOT NULL DEFAULT '0' COMMENT '0:待處理,1:處理完成,2處理中',
  `add_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加人',
  `add_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加時間',
  `update_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改人',
  `update_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='批次產品計算表';


CREATE TABLE `o88o_product_need_raw_material` (
  `id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `raw_material_id` BIGINT(20) NOT NULL  COMMENT '原料id',
  `unit` VARCHAR(4) NOT NULL COMMENT '單位',
  `width` INT(11) NOT NULL  COMMENT '所需寬度',
  `long` INT(11) NOT NULL  COMMENT '所需長度',
  `price` DECIMAL(10,2) DEFAULT 0.00 COMMENT '價格',
  `remark` VARCHAR(128) DEFAULT NULL COMMENT '備註',
  `add_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加人',
  `add_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加時間',
  `update_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改人',
  `update_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='批次產品所需原料表';


CREATE TABLE `o88o_aggregate_seq` (
  `id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `aggregate_seq` BIGINT(20) NOT NULL  COMMENT '聚合排序',
  `product_calc_id` BIGINT(20) NOT NULL COMMENT '批次產品計算id',
  
  `add_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加人',
  `add_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加時間',
  `update_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改人',
  `update_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='批次產品聚合表';




CREATE TABLE `o88o_aggregate_need_raw_material` (
  `id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `aggregate_seq` BIGINT(20) NOT NULL  COMMENT '聚合排序',
  `raw_material_id` BIGINT(20) NOT NULL COMMENT '原料id',
  `unit` VARCHAR(4) NOT NULL COMMENT '單位',
  `width` INT(11) NOT NULL  COMMENT '所需寬度',
  `long` INT(11) NOT NULL  COMMENT '所需長度',
  `price_calc` DECIMAL(10,2) DEFAULT 0.00 COMMENT '價格',
  
  `remark` VARCHAR(128) DEFAULT NULL COMMENT '備註',
  `add_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加人',
  `add_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加時間',
  `update_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改人',
  `update_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='批次所需原料聚合表';






-- 字典表
CREATE TABLE `o88o_data_dict` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `catalog` varchar(50) NOT NULL DEFAULT '' COMMENT '字典型別',
  `parent_id` bigint(20) DEFAULT NULL COMMENT '父id',
  `name` varchar(50) NOT NULL DEFAULT '' COMMENT '名稱',
  `value` varchar(80) NOT NULL DEFAULT '' COMMENT '值',
  `remark` varchar(128) DEFAULT NULL COMMENT '備註',
  `seq` int(11) NOT NULL DEFAULT '-1' COMMENT '排序',
  `add_time` bigint(20) NOT NULL DEFAULT '-1' COMMENT '增加人',
  `add_user` bigint(20) NOT NULL DEFAULT '-1' COMMENT '增加時間',
  `update_time` bigint(20) NOT NULL DEFAULT '-1' COMMENT '修改人',
  `update_user` bigint(20) NOT NULL DEFAULT '-1' COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='資料字典'
-- 系統配置表
CREATE TABLE `o88o_system_config` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主鍵',
  `category` varchar(32) NOT NULL COMMENT '配置項類別',
  `name` varchar(128) NOT NULL COMMENT '配置項',
  `value` varchar(5000) DEFAULT NULL COMMENT '取值',
  `remark` varchar(2000) DEFAULT NULL,
  `add_time` bigint(20) DEFAULT NULL COMMENT '新增時間, unix時間戳(毫秒)',
  `add_user` bigint(20) DEFAULT '0' COMMENT '新增使用者ID',
  `update_time` bigint(20) DEFAULT NULL COMMENT '更新時間, unix時間戳(毫秒),修改任何欄位(除本欄位外)都應更新此欄位.',
  `update_user` bigint(20) DEFAULT '0' COMMENT '更新使用者ID',
  PRIMARY KEY (`id`),
  UNIQUE KEY `AK_name` (`category`,`name`)
) ENGINE=InnoDB AUTO_INCREMENT=26 DEFAULT CHARSET=utf8
 

----------------------------------------------------------------------------------

表設計草稿

原料定義表
raw_material_def
(id 
name
unit
width
long
operator
remark
)
原料價格優惠定義表
raw_material_price_def
(id 
name
raw_material_id
unit
long
type
price
amount
operator
remark
)


批次產品表:id,
product
(id 
name
unit
prod_width
rect_width
prod_long
rect_long
prod_hight
width_in_section
size_in_section
size
prod_count
remark
batch_id
need_raw_material_id
)


批次產品所需原料表
product_need_raw_material
(id 
raw_material_id
name
unit
width
long
price
operator
remark
)
批次所需原料表
need_raw_material
(id 
batch_id
raw_material_id
name
unit
width
long
price
operator
remark
)
批次所需原料價格計算表
need_raw_material_calc
(id 
batch_id
raw_material_id
calc_type
name
unit
width
long
price
operator
remark
)
batch_in批次表
(
id
batch_no
custom_name
order_no
prod_model
prod_package
unit
prod_width
rect_width
prod_long
rect_long
prod_hight
prod_count
remark
)


-- 字典表
CREATE TABLE `o88o_data_dict` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `catalog` varchar(50) NOT NULL DEFAULT '' COMMENT '字典型別',
  `parent_id` bigint(20) DEFAULT NULL COMMENT '父id',
  `name` varchar(50) NOT NULL DEFAULT '' COMMENT '名稱',
  `value` varchar(80) NOT NULL DEFAULT '' COMMENT '值',
  `remark` varchar(128) DEFAULT NULL COMMENT '備註',
  `seq` int(11) NOT NULL DEFAULT '-1' COMMENT '排序',
  `add_time` bigint(20) NOT NULL DEFAULT '-1' COMMENT '增加人',
  `add_user` bigint(20) NOT NULL DEFAULT '-1' COMMENT '增加時間',
  `update_time` bigint(20) NOT NULL DEFAULT '-1' COMMENT '修改人',
  `update_user` bigint(20) NOT NULL DEFAULT '-1' COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='資料字典'
-- 系統配置表
CREATE TABLE `o88o_system_config` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主鍵',
  `category` varchar(32) NOT NULL COMMENT '配置項類別',
  `name` varchar(128) NOT NULL COMMENT '配置項',
  `value` varchar(5000) DEFAULT NULL COMMENT '取值',
  `remark` varchar(2000) DEFAULT NULL,
  `add_time` bigint(20) DEFAULT NULL COMMENT '新增時間, unix時間戳(毫秒)',
  `add_user` bigint(20) DEFAULT '0' COMMENT '新增使用者ID',
  `update_time` bigint(20) DEFAULT NULL COMMENT '更新時間, unix時間戳(毫秒),修改任何欄位(除本欄位外)都應更新此欄位.',
  `update_user` bigint(20) DEFAULT '0' COMMENT '更新使用者ID',
  PRIMARY KEY (`id`),
  UNIQUE KEY `AK_name` (`category`,`name`)

) ENGINE=InnoDB AUTO_INCREMENT=26 DEFAULT CHARSET=utf8

表設計修正後

CREATE TABLE `o88o_raw_material_def` (
  `id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `name` VARCHAR(40) NOT NULL COMMENT '原料名稱',
  `unit` VARCHAR(4) NOT NULL COMMENT '單位',
  `width` INT(11) NOT NULL  COMMENT '寬度',
  `long` INT(11) NOT NULL  COMMENT '長度,-1:無限長',
  
  `remark` VARCHAR(128) DEFAULT NULL COMMENT '備註',
  `enabled` tinyint(4) DEFAULT '1' COMMENT '該行是否啟用:0-否 1-是',
  `add_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加人',
  `add_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加時間',
  `update_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改人',
  `update_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='原料定義表';


CREATE TABLE `o88o_raw_material_price_def` (
  `id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `name` VARCHAR(40) NOT NULL COMMENT '優惠名稱',
  `raw_material_id` BIGINT(20) NOT NULL COMMENT '原料id',
  `price_type` VARCHAR(4) NOT NULL COMMENT '優惠型別,as:金額區間內減固定金額,ap:金額區間內減比例金額,ls:長度區間內減固定金額,lp:長度區間內減比例金額,',
  `unit` VARCHAR(4) NOT NULL COMMENT '單位',
  `min_long` INT(11) NOT NULL  COMMENT '所需長度',
  `max_long` INT(11) NOT NULL  COMMENT '所需長度',
  `min_amount` DECIMAL(10,2) DEFAULT 0.00 COMMENT '金額',
  `max_amount` DECIMAL(10,2) DEFAULT 0.00 COMMENT '金額',
  `discount` DECIMAL(10,6) DEFAULT 0.00 COMMENT '優惠',
  
  `remark` VARCHAR(128) DEFAULT NULL COMMENT '備註',
  `enabled` tinyint(4) DEFAULT '1' COMMENT '該行是否啟用:0-否 1-是',
  `add_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加人',
  `add_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加時間',
  `update_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改人',
  `update_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='原料價格優惠定義表';


CREATE TABLE `o88o_batch_in` (
  `id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `batch_no` VARCHAR(30) NOT NULL  COMMENT '批次號',
  `order_no` VARCHAR(30) NOT NULL COMMENT '訂單號',
  `custom_name` VARCHAR(30) NOT NULL  COMMENT '客戶名稱',
  `prod_model` VARCHAR(20) NOT NULL  COMMENT '產品型號',
  
  `prod_package` VARCHAR(10) NOT NULL  COMMENT '包裝方式,一片合成,天地蓋',
  `unit` VARCHAR(4) NOT NULL COMMENT '單位',
  `prod_width` INT(11) NOT NULL  COMMENT '產品寬度',
  `rect_width` INT(11) NOT NULL  COMMENT '矩形寬度,由產品寬度計算而來',
  `prod_long` INT(11) NOT NULL  COMMENT '產品長度',
  `rect_long` INT(11) NOT NULL  COMMENT '矩形長度,由產品長度計算而來',
  `prod_hight` INT(11) NOT NULL  COMMENT '產品高度',
  `prod_count` INT(11) NOT NULL  COMMENT '產品數量',
  
  `remark` VARCHAR(128) DEFAULT NULL COMMENT '備註',
  `seq` INT(11) NOT NULL DEFAULT '-1' COMMENT '排序',
  `add_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加人',
  `add_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加時間',
  `update_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改人',
  `update_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='批次錄入表';


CREATE TABLE `o88o_product_calc` (
  `id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `batch_id` BIGINT(20) NOT NULL  COMMENT '批次id',
  `calc_type` INT(11) NOT NULL  COMMENT '計算方式',
  `unit` VARCHAR(4) NOT NULL COMMENT '單位',
  `prod_width` INT(11) NOT NULL  COMMENT '產品寬度',
  `rect_width` INT(11) NOT NULL  COMMENT '矩形寬度,由產品寬度計算而來',
  `prod_long` INT(11) NOT NULL  COMMENT '產品長度',
  `rect_long` INT(11) NOT NULL  COMMENT '矩形長度,由產品長度計算而來',
  `prod_hight` INT(11) NOT NULL  COMMENT '產品高度',
  `prod_count` INT(11) NOT NULL  COMMENT '產品數量',
  `width_in_section` INT(11) NULL  COMMENT '剖寬',
  `size_in_section` INT(11) NULL  COMMENT '原料寬度方向剖量',
  `size` INT(11) NULL  COMMENT '原料長度方向剖量',
  `need_raw_material_id` BIGINT(20)  NULL  COMMENT '包裝方式,一片合成,天地蓋',
  
  
  `remark` VARCHAR(128) DEFAULT NULL COMMENT '備註',
  `status` INT(11) NOT NULL DEFAULT '0' COMMENT '0:待處理,1:處理完成,2處理中',
  `add_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加人',
  `add_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加時間',
  `update_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改人',
  `update_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='批次產品計算表';


CREATE TABLE `o88o_product_need_raw_material` (
  `id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `raw_material_id` BIGINT(20) NOT NULL  COMMENT '原料id',
  `unit` VARCHAR(4) NOT NULL COMMENT '單位',
  `width` INT(11) NOT NULL  COMMENT '所需寬度',
  `long` INT(11) NOT NULL  COMMENT '所需長度',
  `price` DECIMAL(10,2) DEFAULT 0.00 COMMENT '價格',
  `remark` VARCHAR(128) DEFAULT NULL COMMENT '備註',
  `add_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加人',
  `add_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加時間',
  `update_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改人',
  `update_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='批次產品所需原料表';


CREATE TABLE `o88o_aggregate_seq` (
  `id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `aggregate_seq` BIGINT(20) NOT NULL  COMMENT '聚合排序',
  `product_calc_id` BIGINT(20) NOT NULL COMMENT '批次產品計算id',
  
  `add_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加人',
  `add_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加時間',
  `update_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改人',
  `update_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='批次產品聚合表';




CREATE TABLE `o88o_aggregate_need_raw_material` (
  `id` BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `aggregate_seq` BIGINT(20) NOT NULL  COMMENT '聚合排序',
  `raw_material_id` BIGINT(20) NOT NULL COMMENT '原料id',
  `unit` VARCHAR(4) NOT NULL COMMENT '單位',
  `width` INT(11) NOT NULL  COMMENT '所需寬度',
  `long` INT(11) NOT NULL  COMMENT '所需長度',
  `price_calc` DECIMAL(10,2) DEFAULT 0.00 COMMENT '價格',
  
  `remark` VARCHAR(128) DEFAULT NULL COMMENT '備註',
  `add_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加人',
  `add_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '增加時間',
  `update_time` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改人',
  `update_user` BIGINT(20) NOT NULL DEFAULT '-1' COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COMMENT='批次所需原料聚合表';






-- 字典表
CREATE TABLE `o88o_data_dict` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
  `catalog` varchar(50) NOT NULL DEFAULT '' COMMENT '字典型別',
  `parent_id` bigint(20) DEFAULT NULL COMMENT '父id',
  `name` varchar(50) NOT NULL DEFAULT '' COMMENT '名稱',
  `value` varchar(80) NOT NULL DEFAULT '' COMMENT '值',
  `remark` varchar(128) DEFAULT NULL COMMENT '備註',
  `seq` int(11) NOT NULL DEFAULT '-1' COMMENT '排序',
  `add_time` bigint(20) NOT NULL DEFAULT '-1' COMMENT '增加人',
  `add_user` bigint(20) NOT NULL DEFAULT '-1' COMMENT '增加時間',
  `update_time` bigint(20) NOT NULL DEFAULT '-1' COMMENT '修改人',
  `update_user` bigint(20) NOT NULL DEFAULT '-1' COMMENT '修改時間',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='資料字典'
-- 系統配置表
CREATE TABLE `o88o_system_config` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主鍵',
  `category` varchar(32) NOT NULL COMMENT '配置項類別',
  `name` varchar(128) NOT NULL COMMENT '配置項',
  `value` varchar(5000) DEFAULT NULL COMMENT '取值',
  `remark` varchar(2000) DEFAULT NULL,
  `add_time` bigint(20) DEFAULT NULL COMMENT '新增時間, unix時間戳(毫秒)',
  `add_user` bigint(20) DEFAULT '0' COMMENT '新增使用者ID',
  `update_time` bigint(20) DEFAULT NULL COMMENT '更新時間, unix時間戳(毫秒),修改任何欄位(除本欄位外)都應更新此欄位.',
  `update_user` bigint(20) DEFAULT '0' COMMENT '更新使用者ID',
  PRIMARY KEY (`id`),
  UNIQUE KEY `AK_name` (`category`,`name`)
) ENGINE=InnoDB AUTO_INCREMENT=26 DEFAULT CHARSET=utf8

深圳逆時針