반응형

 

 

쇼핑몰에서 가장 많이 쓰면서 가장 중요한 기능이 바로 쿠폰이다. 쿠폰은 매출에 굉장히 영향을 많이 미치는 부분이기때문에 각 회사들 마다 쿠폰에 신경을 많이 쓴다. 

 

마케팅이나 홍보 또는 영업같은 부서에 일하는 사람들은 어떻게 그런 생각을 하는지 별의별 이상하고 해괴한 쿠폰을 만들어달아고 요청하는 경우가 있다. 그래서 처음 쿠폰을 설계할때와 완전히 다른 쿠폰을 만들어야 하는 경우도 있다.

 

그러니 처음부터 완벽한 쿠폰의 설계란 있을 수 없다. 여기서도 기본적인 쿠폰의 기능에 대해서만 알아보도록 하겠다.

 

쿠폰은 대표적으로 대상으로 볼때는 상품에 적용되는 쿠폰과 사용자에게 적용되는 쿠폰이 있다. 할인으로 볼때는 일정금액을 할인(정액쿠폰)하거나 일정비율을 할인(정율쿠폰)하거나 하는 경우가 있다. 그리고 일정비율일때는 항상 최대 할인 금액도 있어야한다. 이것말고도 여러가지가 있겠지만 여기서는 이정도만 해보겠다.


CREATE TABLE `coupons` (
  `cid` int(11) NOT NULL AUTO_INCREMENT,
  `coupon_name` varchar(100) DEFAULT NULL COMMENT '쿠폰명',
  `coupon_image` varchar(100) DEFAULT NULL COMMENT '쿠폰이미지',
  `coupon_type` tinyint(4) DEFAULT NULL COMMENT '쿠폰타입',
  `coupon_price` double DEFAULT NULL COMMENT '할인금액',
  `coupon_ratio` double DEFAULT NULL COMMENT '할인비율',
  `status` tinyint(4) DEFAULT 0 COMMENT '상태',
  `regdate` datetime DEFAULT NULL COMMENT '등록일',
  `userid` varchar(100) DEFAULT NULL COMMENT '등록한유저',
  `max_value` double DEFAULT NULL COMMENT '최대할인금액',
  `use_min_price` double DEFAULT NULL COMMENT '최소사용금액',
  PRIMARY KEY (`cid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

 

이정도로 만족하자. 물론 하다가 또다른 컬럼을 추가할 수 있다.

 

이번엔 이 쿠폰을 가지고 있는 사용자 테이블을 만들어보자.

 

CREATE TABLE `user_coupons` (
  `ucid` int(11) NOT NULL AUTO_INCREMENT,
  `couponid` int(11) DEFAULT NULL COMMENT '쿠폰아이디',
  `userid` varchar(100) DEFAULT NULL COMMENT '유저아이디',
  `status` int(11) DEFAULT 1 COMMENT '상태',
  `use_max_date` datetime DEFAULT NULL COMMENT '사용기한',
  `regdate` datetime DEFAULT NULL COMMENT '등록일',
  `reason` varchar(100) DEFAULT NULL COMMENT '쿠폰취득사유',
  PRIMARY KEY (`ucid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

 

마찬가지로 추후 필요한것들이 생기면 추가할 것이다. 다음 시간엔 쿠폰을 만들어보고 그 쿠폰을 사용자에게 적용하는 것을 해보자

반응형

+ Recent posts