Taebu / prq

prq.co.kr
MIT License
1 stars 0 forks source link

KT CID 포트별 설계 변경 #35

Closed Taebu closed 8 years ago

Taebu commented 8 years ago

callerid.cdr

calledid 값 받아오게 변경.

Taebu commented 8 years ago

CalleridReceiveServlet.java 변경 설계 ava 설계 변경 안됨. server -api.jar 없다고 안전 모드 나온다 하여 prq에 넣기로 변경

http://prq.co.kr/prq/ajax/set_cdr/ ?get 없앰. POST 데이터로 변경

port=0 callerid=01050421183 userid=iq_up@naver.com calledid=0319091577 @Taebu

개발사에 요청한 상태

Taebu commented 8 years ago
use callerid;

show triggers;

DELIMITER $$

drop TRIGGER IF EXISTS cdr_inserted $$

CREATE TRIGGER cdr_inserted AFTER INSERT ON callerid.cdr FOR EACH ROW
BEGIN
SELECT
    st_name,st_tel_1,st_hp_1
INTO
    @st_name,@st_tel,@st_hp
FROM 
    prq.prq_store 
WHERE 
    st_port=NEW.port and mb_id=NEW.UserID;

INSERT INTO prq.prq_cdr SET 
cd_date=NEW.date,
cd_id=NEW.UserID,
cd_port=NEW.port,
cd_callerid=NEW.callerid,
cd_name=@st_name,
cd_tel=@st_tel,
cd_hp=@st_hp;

END
$$

DELIMITER ;

0인 경우의 예외 처리를 하여서 들어 올 수 있도록 처리 할것.

Taebu commented 8 years ago
use callerid;

show triggers;

DELIMITER $$

drop TRIGGER IF EXISTS cdr_inserted $$

CREATE TRIGGER cdr_inserted AFTER INSERT ON callerid.cdr FOR EACH ROW
BEGIN

IF NEW.port=0 THEN
SELECT
    st_name,st_tel_1,st_hp_1
INTO
    @st_name,@st_tel,@st_hp
FROM 
    prq.prq_store 
WHERE 
    mb_id=NEW.UserID and st_tel_1=NEW.calledid;

INSERT INTO prq.prq_cdr SET 
cd_date=NEW.date,
cd_id=NEW.UserID,
cd_port=NEW.port,
cd_callerid=NEW.callerid,
cd_name=@st_name,
cd_tel=@st_tel,
cd_hp=@st_hp;

ELSE
SELECT
    st_name,st_tel_1,st_hp_1
INTO
    @st_name,@st_tel,@st_hp
FROM 
    prq.prq_store 
WHERE 
    st_port=NEW.port and mb_id=NEW.UserID;

INSERT INTO prq.prq_cdr SET 
cd_date=NEW.date,
cd_id=NEW.UserID,
cd_port=NEW.port,
cd_callerid=NEW.callerid,
cd_name=@st_name,
cd_tel=@st_tel,
cd_hp=@st_hp;

END
END
$$

DELIMITER ;

포트가 0인 경우의 calledid를 받아서 조회한 데이터를 반영 기존에 포트 번호를 가져 오는 경우는 예외 처리하여 기존 대로 돌아가게 우회 처리

Taebu commented 8 years ago
use callerid;
IF (NEW.port=0) THEN

INSERT INTO prq.prq_cdr SET
cd_date=NEW.date,
cd_id=NEW.UserID,
cd_port=NEW.port,
cd_callerid=NEW.callerid,
cd_calledid=NEW.calledid;

ELSE
SELECT
st_name,st_tel_1,st_hp_1
INTO
@st_name,@st_tel,@st_hp
FROM
prq.prq_store
WHERE
st_port=NEW.port and mb_id=NEW.UserID;

INSERT INTO prq.prq_cdr SET
cd_date=NEW.date,
cd_id=NEW.UserID,
cd_port=NEW.port,
cd_callerid=NEW.callerid,
cd_name=@st_name,
cd_tel=@st_tel,
cd_hp=@st_hp;

END IF;
Taebu commented 8 years ago

port 0인 경우 후처리로 /prq/crontab/view에서 처리 할 수 있도록 변경