662 lines
30 KiB
Plaintext
662 lines
30 KiB
Plaintext
CREATE OR REPLACE PROCEDURE HIGHWAY_EXCHANGE.状态回馈
|
|
IS
|
|
M_COUNT NUMBER;
|
|
M_COMMODITYTYPE_ID NUMBER;
|
|
M_COMMODITYTYPE_PID NUMBER;
|
|
M_SERVERPART_CODE VARCHAR2(500);
|
|
|
|
--服务区对应的脚本 HIGHWAY_EXCHANGE.T_SYSCODE
|
|
CURSOR C_SYSCODE IS
|
|
SELECT * FROM HIGHWAY_EXCHANGE.T_SYSCODE;
|
|
M_SYSCODE C_SYSCODE%ROWTYPE;
|
|
|
|
BEGIN
|
|
HIGHWAY_EXCHANGE.GETCONTROLINFOS;
|
|
/* COMMIT;
|
|
OPEN C_SYSCODE;
|
|
FETCH C_SYSCODE INTO M_SYSCODE;
|
|
WHILE C_SYSCODE%FOUND LOOP
|
|
M_SERVERPART_CODE := M_SYSCODE.SERVERPARTCODE;
|
|
--删除重复数据
|
|
DELETE FROM HIGHWAY_EXCHANGE.T_CONNECTPOINT A WHERE EXISTS (SELECT 1
|
|
FROM HIGHWAY_EXCHANGE.T_CONNECTPOINT B WHERE A.MACHINECODE = B.MACHINECODE AND
|
|
A.SERVERPARTCODE = B.SERVERPARTCODE AND A.SHOPCODE = B.SHOPCODE
|
|
GROUP BY MACHINECODE,SERVERPARTCODE,SHOPCODE HAVING COUNT(*) > 1) AND
|
|
ROWID NOT IN (SELECT MAX(ROWID) FROM HIGHWAY_EXCHANGE.T_CONNECTPOINT
|
|
GROUP BY MACHINECODE,SERVERPARTCODE,SHOPCODE HAVING COUNT(*)>1);
|
|
|
|
DELETE FROM T_CONNECTPOINT@NEWEX WHERE SERVERPARTCODE = M_SERVERPART_CODE;
|
|
|
|
INSERT INTO T_CONNECTPOINT@NEWEX(
|
|
CONNECTPOINT_ID,MACHINECODE,CONNECT_DATE,CONNECT_IP,SERVERPARTCODE,SHOPCODE,
|
|
MACHINENAME,CONTENT,CURRAMOUNT,CURRSELLCOUNT,CURRCOMMCOUNT,CURRPRESON,COMMODITYINFO)
|
|
(SELECT
|
|
CONNECTPOINT_ID,MACHINECODE,CONNECT_DATE,CONNECT_IP,SERVERPARTCODE,SHOPCODE,
|
|
MACHINENAME,CONTENT,CURRAMOUNT,CURRSELLCOUNT,CURRCOMMCOUNT,CURRPRESON,COMMODITYINFO
|
|
FROM HIGHWAY_EXCHANGE.T_CONNECTPOINT
|
|
WHERE SERVERPARTCODE = M_SERVERPART_CODE AND SHOPCODE IS NOT NULL);
|
|
|
|
FETCH C_SYSCODE INTO M_SYSCODE;
|
|
END LOOP;
|
|
CLOSE C_SYSCODE;*/
|
|
END;
|
|
----------
|
|
CREATE OR REPLACE PROCEDURE HIGHWAY_EXCHANGE.上传程序
|
|
IS
|
|
M_COUNT NUMBER;
|
|
M_COMMODITYTYPE_ID NUMBER;
|
|
M_COMMODITYTYPE_PID NUMBER;
|
|
M_SERVERPARTCODE VARCHAR2(10);
|
|
EXCEPTION_1 EXCEPTION;
|
|
M_SERVERPART_CODE VARCHAR2(500);
|
|
|
|
--服务区对应的脚本 HIGHWAY_EXCHANGE.T_SYSCODE
|
|
CURSOR C_SYSCODE IS
|
|
SELECT * FROM HIGHWAY_EXCHANGE.T_SYSCODE;
|
|
M_SYSCODE C_SYSCODE%ROWTYPE;
|
|
|
|
BEGIN
|
|
OPEN C_SYSCODE;
|
|
FETCH C_SYSCODE INTO M_SYSCODE;
|
|
WHILE C_SYSCODE%FOUND LOOP
|
|
M_SERVERPART_CODE := M_SYSCODE.SERVERPARTCODE;
|
|
--上传销售数据 仅上传最近10天数据 1.服务区编码 2.服务区销售时间 3.门店编码
|
|
--上传销售数据
|
|
/* INSERT INTO HIGHWAY_EXCHANGE.T_SELLDATA@SERVER_ORCL(
|
|
SELLDATA_ID,SELLDATA_DATE,SERVERPARTCODE,SHOPCODE,MACHINECODE,TICKETCODE,WORKERCODE,
|
|
COMMODITY_CODE,SELLCOUNT,SELLPRICE,OFFPRICE,FACTAMOUNT,LINENUM,FLAG,CASH,CREDITCARD,
|
|
TICKETBILL,VIPPERSON,COSTBILL,OTHERPAY)
|
|
SELECT DISTINCT
|
|
SELLDATA_ID,SELLDATA_DATE,SERVERPARTCODE,SHOPCODE,MACHINECODE,
|
|
TICKETCODE,WORKERCODE, COMMODITY_CODE,SELLCOUNT,SELLPRICE,OFFPRICE,
|
|
FACTAMOUNT,LINENUM,FLAG,CASH,CREDITCARD,TICKETBILL,VIPPERSON,COSTBILL,OTHERPAY
|
|
FROM
|
|
HIGHWAY_EXCHANGE.T_SELLDATA A
|
|
WHERE
|
|
SERVERPARTCODE = M_SERVERPART_CODE AND SELLDATA_DATE BETWEEN SYSDATE - 36500 AND SYSDATE + 366 AND
|
|
NOT EXISTS(SELECT 1 FROM HIGHWAY_EXCHANGE.T_SELLDATA@SERVER_ORCL B
|
|
WHERE A.SELLDATA_DATE = B.SELLDATA_DATE AND A.SERVERPARTCODE = B.SERVERPARTCODE AND
|
|
A.SHOPCODE = B.SHOPCODE AND A.MACHINECODE = B.MACHINECODE AND
|
|
A.TICKETCODE = B.TICKETCODE AND A.LINENUM = B.LINENUM); */
|
|
--异常流水
|
|
INSERT INTO HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA (SELLDATA_ID,SELLDATA_TYPE,SELLDATA_DATE,
|
|
SERVERPARTCODE,SHOPCODE,MACHINECODE,TICKETCODE,WORKERCODE,COMMODITY_CODE,
|
|
SELLCOUNT,SELLPRICE,OFFPRICE,FACTAMOUNT,LINENUM,FLAG,SELLDATA_EXTRA_DESC)
|
|
SELECT DISTINCT
|
|
SELLDATA_ID,'SELLDATA',SELLDATA_DATE,SERVERPARTCODE,SHOPCODE,MACHINECODE,TICKETCODE,
|
|
WORKERCODE,COMMODITY_CODE,SELLCOUNT,SELLPRICE,OFFPRICE,FACTAMOUNT,LINENUM,FLAG,ORDERCODE
|
|
FROM
|
|
HIGHWAY_EXCHANGE.T_SELLDATA A
|
|
WHERE
|
|
SERVERPARTCODE = M_SERVERPART_CODE AND EXISTS(SELECT 1 FROM HIGHWAY_EXCHANGE.T_EXCEPTION B
|
|
WHERE A.SELLDATA_DATE = B.EXCEPTION_DATE AND A.SERVERPARTCODE = B.SERVERPARTCODE AND
|
|
A.SHOPCODE = B.SHOPCODE AND A.MACHINECODE = B.MACHINECODE AND
|
|
A.TICKETCODE = B.COMMODITY_CODE AND B.EXCEPTIONTYPE IN ('3020','3010','3990','1050')) AND
|
|
NOT EXISTS(SELECT 1 FROM HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA B
|
|
WHERE A.SELLDATA_DATE = B.SELLDATA_DATE AND A.SERVERPARTCODE = B.SERVERPARTCODE AND
|
|
A.SHOPCODE = B.SHOPCODE AND A.MACHINECODE = B.MACHINECODE AND
|
|
A.TICKETCODE = B.TICKETCODE AND A.LINENUM = B.LINENUM);
|
|
--移动支付
|
|
INSERT INTO HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA (SELLDATA_ID,SELLDATA_TYPE,SELLDATA_DATE,SERVERPARTCODE,
|
|
SHOPCODE,MACHINECODE,TICKETCODE,WORKERCODE,COMMODITY_CODE,SELLCOUNT,SELLPRICE,OFFPRICE,
|
|
FACTAMOUNT,LINENUM,FLAG,SELLDATA_EXTRA_DESC)
|
|
SELECT DISTINCT
|
|
SELLDATA_ID,CASE WHEN TICKETBILL <> 0 OR TICKETCODE LIKE '%微%' THEN 'WECHAT_PAY'
|
|
WHEN OTHERPAY <> 0 OR TICKETCODE LIKE '%(支)%' THEN 'ALI_PAY'
|
|
WHEN LENGTH(ORDERCODE) > 20 THEN 'MOBILE_PAY' ELSE 'SELLDATA' END,
|
|
SELLDATA_DATE,SERVERPARTCODE,SHOPCODE,MACHINECODE,TICKETCODE,
|
|
WORKERCODE,COMMODITY_CODE,SELLCOUNT,SELLPRICE,OFFPRICE,FACTAMOUNT,LINENUM,FLAG,ORDERCODE
|
|
FROM
|
|
HIGHWAY_EXCHANGE.T_SELLDATA A
|
|
WHERE
|
|
SERVERPARTCODE = M_SERVERPART_CODE AND (TICKETBILL <> 0 OR COSTBILL <> 0 OR
|
|
OTHERPAY <> 0 OR TICKETCODE LIKE '%(%)%' OR LENGTH(ORDERCODE) > 20) AND
|
|
NOT EXISTS(SELECT 1 FROM HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA B
|
|
WHERE A.SELLDATA_DATE = B.SELLDATA_DATE AND A.SERVERPARTCODE = B.SERVERPARTCODE AND
|
|
A.SHOPCODE = B.SHOPCODE AND A.MACHINECODE = B.MACHINECODE AND
|
|
A.TICKETCODE = B.TICKETCODE AND A.LINENUM = B.LINENUM);
|
|
|
|
INSERT INTO HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA (SELLDATA_ID,SELLDATA_TYPE,SELLDATA_DATE,SERVERPARTCODE,
|
|
SHOPCODE,MACHINECODE,TICKETCODE,WORKERCODE,COMMODITY_CODE,SELLCOUNT,SELLPRICE,OFFPRICE,
|
|
FACTAMOUNT,LINENUM,FLAG,SELLDATA_EXTRA_DESC)
|
|
SELECT DISTINCT
|
|
A.SELLDATA_ID,B.SELLDATA_TYPE,A.SELLDATA_DATE,A.SERVERPARTCODE,A.SHOPCODE,A.MACHINECODE,A.TICKETCODE,
|
|
A.WORKERCODE,A.COMMODITY_CODE,A.SELLCOUNT,A.SELLPRICE,A.OFFPRICE,A.FACTAMOUNT,A.LINENUM,A.FLAG,A.ORDERCODE
|
|
FROM HIGHWAY_EXCHANGE.T_SELLDATA A,HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA B
|
|
WHERE A.SELLDATA_DATE = B.SELLDATA_DATE AND A.SERVERPARTCODE = B.SERVERPARTCODE AND
|
|
A.SHOPCODE = B.SHOPCODE AND A.TICKETCODE = B.TICKETCODE AND A.LINENUM <> B.LINENUM AND
|
|
NOT EXISTS(SELECT 1 FROM HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA C
|
|
WHERE A.SELLDATA_DATE = C.SELLDATA_DATE AND A.SERVERPARTCODE = C.SERVERPARTCODE AND
|
|
A.SHOPCODE = C.SHOPCODE AND A.TICKETCODE = C.TICKETCODE AND A.LINENUM = C.LINENUM);
|
|
|
|
INSERT INTO T_SELLDATA_EXTRA@SERVER_ORCL (SELLDATA_ID,SELLDATA_TYPE,SELLDATA_DATE,SERVERPARTCODE,
|
|
SHOPCODE,MACHINECODE,TICKETCODE,WORKERCODE,COMMODITY_CODE,SELLCOUNT,SELLPRICE,OFFPRICE,
|
|
FACTAMOUNT,LINENUM,FLAG,SELLDATA_EXTRA_DESC)
|
|
SELECT DISTINCT
|
|
SELLDATA_ID,SELLDATA_TYPE,SELLDATA_DATE,SERVERPARTCODE,SHOPCODE,MACHINECODE,TICKETCODE,
|
|
WORKERCODE,COMMODITY_CODE,SELLCOUNT,SELLPRICE,OFFPRICE,FACTAMOUNT,LINENUM,0,SELLDATA_EXTRA_DESC
|
|
FROM
|
|
HIGHWAY_EXCHANGE.T_SELLDATA_EXTRA A
|
|
WHERE
|
|
SERVERPARTCODE = M_SERVERPART_CODE AND NOT EXISTS(SELECT 1 FROM T_SELLDATA_EXTRA@SERVER_ORCL B
|
|
WHERE A.SELLDATA_DATE = B.SELLDATA_DATE AND --A.SELLDATA_TYPE = B.SELLDATA_TYPE AND
|
|
A.SERVERPARTCODE = B.SERVERPARTCODE AND A.SHOPCODE = B.SHOPCODE AND
|
|
A.MACHINECODE = B.MACHINECODE AND A.TICKETCODE = B.TICKETCODE AND
|
|
NVL(A.LINENUM,1) = NVL(B.LINENUM,1));
|
|
--上传结帐数据
|
|
/*INSERT INTO HIGHWAY_EXCHANGE.T_ENDACCOUNT@SERVER_ORCL (
|
|
ENDACCOUNT_ID,ENDACCOUNT_STARTDATE,ENDACCOUNT_DATE,SERVERPARTCODE,SHOPCODE,
|
|
MACHINECODE,ENDPERSONCODE,TICKETCOUNT,TOTALCOUNT,TOTALSELLAMOUNT,TOTALOFFAMOUNT,CASH,
|
|
CREDITCARD,TICKETBILL,VIPPERSON,COSTBILL,OTHERPAY,CASHPAY,FLAG)
|
|
SELECT DISTINCT
|
|
ENDACCOUNT_ID,ENDACCOUNT_STARTDATE,ENDACCOUNT_DATE,SERVERPARTCODE,SHOPCODE,
|
|
MACHINECODE,ENDPERSONCODE,TICKETCOUNT,TOTALCOUNT,TOTALSELLAMOUNT,TOTALOFFAMOUNT,CASH,
|
|
CREDITCARD,TICKETBILL,VIPPERSON,COSTBILL,OTHERPAY,CASHPAY,FLAG
|
|
FROM HIGHWAY_EXCHANGE.T_ENDACCOUNT A
|
|
WHERE SERVERPARTCODE = M_SERVERPART_CODE AND NOT EXISTS(SELECT 1 FROM HIGHWAY_EXCHANGE.T_ENDACCOUNT@SERVER_ORCL B
|
|
WHERE A.ENDACCOUNT_DATE = B.ENDACCOUNT_DATE AND A.SERVERPARTCODE = B.SERVERPARTCODE AND
|
|
A.SHOPCODE = B.SHOPCODE AND A.MACHINECODE = B.MACHINECODE) AND A.ENDACCOUNT_DATE IS NOT NULL;*/
|
|
--上传人员结帐数据
|
|
INSERT INTO HIGHWAY_EXCHANGE.T_PERSONSELL@SERVER_ORCL(
|
|
PERSONSELL_ID,SERVERPARTCODE,SHOPCODE,MACHINECODE,STARTDATE,ENDDATE,CASHWORKER_CODE,
|
|
TICKETCOUNT,TOTALCOUNT,TOTALSELLAMOUNT,TOTALOFFAMOUNT,CASH,TICKETBILL,CREDITCARD,
|
|
VIPPERSON,COSTBILL,OTHERPAY,CASHPAY,ENDPERSONCODE)
|
|
SELECT DISTINCT
|
|
PERSONSELL_ID,SERVERPARTCODE,SHOPCODE,MACHINECODE,STARTDATE,ENDDATE,CASHWORKER_CODE,
|
|
TICKETCOUNT,TOTALCOUNT,TOTALSELLAMOUNT,TOTALOFFAMOUNT,CASH,TICKETBILL,CREDITCARD,VIPPERSON,
|
|
COSTBILL,OTHERPAY,CASHPAY,ENDPERSONCODE
|
|
FROM
|
|
HIGHWAY_EXCHANGE.T_PERSONSELL A
|
|
WHERE
|
|
SERVERPARTCODE = M_SERVERPART_CODE AND NOT EXISTS(SELECT 1 FROM HIGHWAY_EXCHANGE.T_PERSONSELL@SERVER_ORCL B
|
|
WHERE A.ENDDATE = B.ENDDATE AND A.SERVERPARTCODE = B.SERVERPARTCODE AND
|
|
A.SHOPCODE = B.SHOPCODE AND A.MACHINECODE = B.MACHINECODE) AND A.ENDDATE IS NOT NULL;
|
|
--上传单品报表数据
|
|
/*SELECT COUNT(1) INTO M_COUNT FROM HIGHWAY_EXCHANGE.T_COMMODITYSALE
|
|
WHERE SERVERPARTCODE = M_SERVERPART_CODE AND TRANSFER_STATE < 9 AND TRANSFER_ID > 0;
|
|
IF M_COUNT > 0 THEN
|
|
INSERT INTO T_COMMODITYSALE_TS@SERVER_ORCL(
|
|
COMMODITYSALE_ID,STARTDATE,ENDDATE,SERVERPARTCODE,SHOPCODE,COMMODITY_TYPE,COMMODITY_CODE,
|
|
COMMODITY_NAME,TICKETCOUNT,TOTALCOUNT,TOTALSELLAMOUNT,TOTALOFFAMOUNT,FLAG,TRANSFER_ID)
|
|
SELECT DISTINCT
|
|
COMMODITYSALE_ID,STARTDATE,ENDDATE,SERVERPARTCODE,SHOPCODE,COMMODITY_TYPE,COMMODITY_CODE,
|
|
COMMODITY_NAME,TICKETCOUNT,TOTALCOUNT,TOTALSELLAMOUNT,TOTALOFFAMOUNT,FLAG,TRANSFER_ID
|
|
FROM
|
|
HIGHWAY_EXCHANGE.T_COMMODITYSALE A
|
|
WHERE
|
|
SERVERPARTCODE = M_SERVERPART_CODE AND TRANSFER_STATE < 9 AND TRANSFER_ID > 0 AND
|
|
NOT EXISTS(SELECT 1 FROM T_COMMODITYSALE_TS@SERVER_ORCL B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND A.TRANSFER_ID = B.TRANSFER_ID);
|
|
|
|
UPDATE HIGHWAY_EXCHANGE.T_COMMODITYSALE A SET TRANSFER_STATE = 9
|
|
WHERE SERVERPARTCODE = M_SERVERPART_CODE AND TRANSFER_STATE < 9 AND TRANSFER_ID > 0 AND
|
|
EXISTS(SELECT 1 FROM T_COMMODITYSALE_TS@SERVER_ORCL B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND A.TRANSFER_ID = B.TRANSFER_ID);
|
|
END IF;
|
|
INSERT INTO HIGHWAY_EXCHANGE.T_COMMODITYSALE@SERVER_ORCL(
|
|
COMMODITYSALE_ID,STARTDATE,ENDDATE,SERVERPARTCODE,SHOPCODE,COMMODITY_TYPE,
|
|
COMMODITY_CODE,COMMODITY_NAME,TICKETCOUNT,TOTALCOUNT,TOTALSELLAMOUNT,TOTALOFFAMOUNT,FLAG)
|
|
SELECT DISTINCT
|
|
COMMODITYSALE_ID,STARTDATE,ENDDATE,SERVERPARTCODE,SHOPCODE,COMMODITY_TYPE,
|
|
COMMODITY_CODE,COMMODITY_NAME,TICKETCOUNT,TOTALCOUNT,TOTALSELLAMOUNT,TOTALOFFAMOUNT,FLAG
|
|
FROM
|
|
HIGHWAY_EXCHANGE.T_COMMODITYSALE A
|
|
WHERE
|
|
SERVERPARTCODE = M_SERVERPART_CODE AND ENDDATE BETWEEN SYSDATE - 36500 AND SYSDATE + 366 AND
|
|
NOT EXISTS(SELECT 1 FROM HIGHWAY_EXCHANGE.T_COMMODITYSALE@SERVER_ORCL B
|
|
WHERE A.ENDDATE = B.ENDDATE AND A.SERVERPARTCODE = B.SERVERPARTCODE AND
|
|
A.SHOPCODE = B.SHOPCODE AND A.COMMODITY_CODE = B.COMMODITY_CODE) AND
|
|
A.ENDDATE IS NOT NULL AND COMMODITY_CODE IS NOT NULL;*/
|
|
--异常表数据
|
|
INSERT INTO T_EXCEPTION@SERVER_ORCL(
|
|
EXCEPTION_ID,EXCEPTION_DATE,SERVERPARTCODE,SHOPCODE,MACHINECODE,
|
|
WORKERCODE,EXCEPTIONTYPE,COMMODITY_CODE,EXCEPTIONCOUNT,EXCEPTIONAMOUNT,
|
|
FLAG,APPROVE_STAFF,APPROVE_INFO,APPROVE_DATE,EXCEPTION_DESC)
|
|
SELECT DISTINCT
|
|
EXCEPTION_ID,EXCEPTION_DATE,SERVERPARTCODE,SHOPCODE,MACHINECODE,
|
|
WORKERCODE,EXCEPTIONTYPE,COMMODITY_CODE,EXCEPTIONCOUNT,EXCEPTIONAMOUNT,
|
|
FLAG,APPROVE_STAFF,APPROVE_INFO,APPROVE_DATE,EXCEPTION_DESC
|
|
FROM
|
|
HIGHWAY_EXCHANGE.T_EXCEPTION A
|
|
WHERE
|
|
SERVERPARTCODE = M_SERVERPART_CODE AND EXCEPTIONTYPE NOT IN('1010','2020') AND
|
|
SERVERPARTCODE IS NOT NULL AND SHOPCODE IS NOT NULL AND
|
|
MACHINECODE IS NOT NULL AND COMMODITY_CODE IS NOT NULL AND
|
|
TRIM(TRANSLATE(EXCEPTIONTYPE,'0123456789',' ')) IS NULL AND
|
|
NOT EXISTS(SELECT 1 FROM HIGHWAY_EXCHANGE.T_EXCEPTION@SERVER_ORCL B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND A.SHOPCODE = B.SHOPCODE AND
|
|
A.EXCEPTION_DATE = B.EXCEPTION_DATE AND A.MACHINECODE = B.MACHINECODE AND
|
|
A.EXCEPTIONTYPE = B.EXCEPTIONTYPE AND A.COMMODITY_CODE = B.COMMODITY_CODE AND
|
|
A.EXCEPTION_ID = B.EXCEPTION_ID);
|
|
COMMIT;
|
|
|
|
FETCH C_SYSCODE INTO M_SYSCODE;
|
|
END LOOP;
|
|
CLOSE C_SYSCODE;
|
|
END ;
|
|
----------
|
|
CREATE OR REPLACE PROCEDURE HIGHWAY_EXCHANGE.交互程序
|
|
IS
|
|
M_COUNT NUMBER;
|
|
M_COMMODITYTYPE_ID NUMBER;
|
|
M_COMMODITYTYPE_PID NUMBER;
|
|
M_SERVERPARTCODE VARCHAR2(10);
|
|
M_SERVERPART_CODE VARCHAR2(500);
|
|
|
|
--服务区对应的脚本 HIGHWAY_EXCHANGE.T_SYSCODE
|
|
CURSOR C_SYSCODE IS
|
|
SELECT * FROM HIGHWAY_EXCHANGE.T_SYSCODE;
|
|
M_SYSCODE C_SYSCODE%ROWTYPE;
|
|
|
|
CURSOR C_INSERT_COMMODITY(MM_SERVERPART_CODE VARCHAR2) IS
|
|
SELECT * FROM HIGHWAY_EXCHANGE.T_COMMODITYEX@NEWEX A
|
|
WHERE SERVERPARTCODE = MM_SERVERPART_CODE AND ROWNUM < 50 AND
|
|
NOT EXISTS(SELECT 1 FROM HIGHWAY_EXCHANGE.T_COMMODITYEX B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND
|
|
A.COMMODITY_CODE = B.COMMODITY_CODE AND
|
|
A.SERVERPARTSHOP_ID = B.SERVERPARTSHOP_ID)
|
|
ORDER BY DOWNLOADDATE DESC;
|
|
M_INSERT_COMMODITY C_INSERT_COMMODITY%ROWTYPE;
|
|
|
|
--新插入商品游标
|
|
CURSOR C_UPDATE_COMMODITY(MM_SERVERPART_CODE VARCHAR2) IS
|
|
SELECT
|
|
*
|
|
FROM
|
|
(
|
|
SELECT *
|
|
FROM (
|
|
SELECT
|
|
SERVERPARTCODE,COMMODITY_CODE,SERVERPARTSHOP_ID,COMMODITY_TYPE,
|
|
COMMODITY_BARCODE,COMMODITY_NAME,COMMODITY_RULE,COMMODITY_UNIT,
|
|
COMMODITY_RETAILPRICE,COMMODITY_MEMBERPRICE,CANCHANGEPRICE,ISVALID,
|
|
COMMODITY_EN,ISBULK,METERINGMETHOD,DOWNLOADDATE,FLAG,BUSINESSTYPE,
|
|
ROW_NUMBER()OVER(PARTITION BY COMMODITY_CODE,SERVERPARTCODE,SERVERPARTSHOP_ID
|
|
ORDER BY DOWNLOADDATE DESC,COMMODITYEX_ID DESC)COLNUM
|
|
FROM
|
|
HIGHWAY_EXCHANGE.T_COMMODITYEX@NEWEX
|
|
WHERE
|
|
SERVERPARTCODE = MM_SERVERPART_CODE)
|
|
WHERE COLNUM = 1
|
|
) A
|
|
WHERE
|
|
EXISTS(SELECT 1 FROM HIGHWAY_EXCHANGE.T_COMMODITYEX B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND
|
|
A.COMMODITY_CODE = B.COMMODITY_CODE AND
|
|
A.SERVERPARTSHOP_ID = B.SERVERPARTSHOP_ID) AND ROWNUM < 50;
|
|
M_UPDATE_COMMODITY C_UPDATE_COMMODITY%ROWTYPE;
|
|
|
|
--更新门店
|
|
CURSOR C_INSERT_SHOPMESSAGE(MM_SERVERPART_CODE VARCHAR2) IS
|
|
SELECT * FROM HIGHWAY_EXCHANGE.T_SHOPMESSAGE@NEWEX A
|
|
WHERE SERVERPARTCODE = MM_SERVERPART_CODE AND ROWNUM < 50 AND
|
|
NOT EXISTS(SELECT 1 FROM HIGHWAY_EXCHANGE.T_SHOPMESSAGE B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND
|
|
A.SERVERPARTSHOP_ID = B.SERVERPARTSHOP_ID)
|
|
ORDER BY DOWNLOADDATE DESC;
|
|
M_INSERT_SHOPMESSAGE C_INSERT_SHOPMESSAGE%ROWTYPE;
|
|
|
|
|
|
CURSOR C_UPDATE_SHOPMESSAGE(MM_SERVERPART_CODE VARCHAR2) IS
|
|
|
|
SELECT
|
|
*
|
|
FROM
|
|
(
|
|
SELECT *
|
|
FROM (
|
|
SELECT
|
|
SERVERPARTSHOP_ID,SERVERPARTCODE,SHOPCODE,
|
|
SHOPNAME,BUSINESSTYPE,DOWNLOADDATE,FLAG,VALID,
|
|
ROW_NUMBER()OVER(PARTITION BY SERVERPARTCODE,SERVERPARTSHOP_ID
|
|
ORDER BY DOWNLOADDATE DESC,SHOPMESSAGE_ID DESC)COLNUM
|
|
FROM HIGHWAY_EXCHANGE.T_SHOPMESSAGE@NEWEX
|
|
WHERE SERVERPARTCODE = MM_SERVERPART_CODE)
|
|
WHERE COLNUM = 1
|
|
) A
|
|
WHERE
|
|
EXISTS(SELECT 1 FROM HIGHWAY_EXCHANGE.T_SHOPMESSAGE B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND
|
|
A.SERVERPARTSHOP_ID = B.SERVERPARTSHOP_ID AND
|
|
SERVERPARTCODE = MM_SERVERPART_CODE) AND ROWNUM < 50;
|
|
|
|
M_UPDATE_SHOPMESSAGE C_UPDATE_SHOPMESSAGE%ROWTYPE;
|
|
|
|
--更新员工
|
|
CURSOR C_INSERT_SELLWORKER(MM_SERVERPART_CODE VARCHAR2) IS
|
|
SELECT * FROM HIGHWAY_EXCHANGE.T_SELLWORKER@NEWEX A
|
|
WHERE SERVERPARTCODE = MM_SERVERPART_CODE AND ROWNUM < 50 AND
|
|
NOT EXISTS(SELECT 1 FROM HIGHWAY_EXCHANGE.T_SELLWORKER B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND
|
|
A.SELLWORKERCODE = B.SELLWORKERCODE AND
|
|
A.SERVERPARTCODE = MM_SERVERPART_CODE)
|
|
ORDER BY DOWNLOADDATE DESC;
|
|
M_INSERT_SELLWORKER C_INSERT_SELLWORKER%ROWTYPE;
|
|
|
|
CURSOR C_UPDATE_SELLWORKER(MM_SERVERPART_CODE VARCHAR2) IS
|
|
|
|
SELECT
|
|
*
|
|
FROM
|
|
(
|
|
SELECT *
|
|
FROM (
|
|
SELECT
|
|
SERVERPARTCODE,SELLWORKERCODE,SELLWORKERNAME,PROWERRIGHT,
|
|
SHOPCODE,DOWNLOADDATE,FLAG,VALID,SELLWORKERPASSWORD,DISCOUNT_RATE,
|
|
ROW_NUMBER()OVER(PARTITION BY SERVERPARTCODE,SELLWORKERCODE
|
|
ORDER BY DOWNLOADDATE DESC,SELLWORKER_ID DESC)COLNUM
|
|
FROM HIGHWAY_EXCHANGE.T_SELLWORKER@NEWEX
|
|
WHERE SERVERPARTCODE = MM_SERVERPART_CODE)
|
|
WHERE COLNUM = 1
|
|
) A
|
|
WHERE
|
|
EXISTS(SELECT 1 FROM HIGHWAY_EXCHANGE.T_SELLWORKER B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND
|
|
A.SELLWORKERCODE = B.SELLWORKERCODE AND
|
|
SERVERPARTCODE = MM_SERVERPART_CODE) AND ROWNUM < 50;
|
|
|
|
M_UPDATE_SELLWORKER C_UPDATE_SELLWORKER%ROWTYPE;
|
|
|
|
--更新快捷键
|
|
CURSOR C_INSERT_HOTKEYSET(MM_SERVERPART_CODE VARCHAR2) IS
|
|
SELECT * FROM HIGHWAY_EXCHANGE.T_HOTKEYSET@NEWEX A
|
|
WHERE SERVERPARTCODE = MM_SERVERPART_CODE AND ROWNUM < 50 AND
|
|
NOT EXISTS(SELECT 1 FROM HIGHWAY_EXCHANGE.T_HOTKEYSET B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND
|
|
A.COMMODITY_BARCODE = B.COMMODITY_BARCODE AND
|
|
A.SERVERPARTCODE = MM_SERVERPART_CODE)
|
|
ORDER BY DOWNLOADDATE DESC;
|
|
M_INSERT_HOTKEYSET C_INSERT_HOTKEYSET%ROWTYPE;
|
|
|
|
CURSOR C_UPDATE_HOTKEYSET(MM_SERVERPART_CODE VARCHAR2) IS
|
|
|
|
SELECT
|
|
*
|
|
FROM
|
|
(
|
|
SELECT *
|
|
FROM (
|
|
SELECT SERVERPARTCODE,COMMODITY_BARCODE,HOTKEY,
|
|
BUSINESSTYPE,DOWNLOADDATE,FLAG,VALID,
|
|
ROW_NUMBER()OVER(PARTITION BY SERVERPARTCODE,COMMODITY_BARCODE
|
|
ORDER BY DOWNLOADDATE DESC,HOTKEYSET_ID DESC)COLNUM
|
|
FROM HIGHWAY_EXCHANGE.T_HOTKEYSET@NEWEX
|
|
WHERE SERVERPARTCODE = MM_SERVERPART_CODE)
|
|
WHERE COLNUM = 1
|
|
) A
|
|
WHERE
|
|
EXISTS(SELECT 1 FROM HIGHWAY_EXCHANGE.T_HOTKEYSET B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND
|
|
A.COMMODITY_BARCODE = B.COMMODITY_BARCODE AND
|
|
A.SERVERPARTCODE = MM_SERVERPART_CODE) AND ROWNUM < 50;
|
|
|
|
M_UPDATE_HOTKEYSET C_UPDATE_HOTKEYSET%ROWTYPE;
|
|
|
|
BEGIN
|
|
OPEN C_SYSCODE;
|
|
FETCH C_SYSCODE INTO M_SYSCODE;
|
|
WHILE C_SYSCODE%FOUND LOOP
|
|
M_SERVERPART_CODE := M_SYSCODE.SERVERPARTCODE;
|
|
--下载商品数据 条件1.商品编码 2.服务区内码 3.门店内码
|
|
OPEN C_INSERT_COMMODITY(M_SERVERPART_CODE);
|
|
FETCH C_INSERT_COMMODITY INTO M_INSERT_COMMODITY;
|
|
WHILE C_INSERT_COMMODITY%FOUND LOOP
|
|
SELECT
|
|
COUNT(*) INTO M_COUNT
|
|
FROM
|
|
HIGHWAY_EXCHANGE.T_COMMODITYEX
|
|
WHERE
|
|
SERVERPARTCODE = M_INSERT_COMMODITY.SERVERPARTCODE AND
|
|
COMMODITY_CODE = M_INSERT_COMMODITY.COMMODITY_CODE AND
|
|
SERVERPARTSHOP_ID = M_INSERT_COMMODITY.SERVERPARTSHOP_ID;
|
|
IF(M_COUNT = 0)THEN
|
|
INSERT INTO HIGHWAY_EXCHANGE.T_COMMODITYEX (COMMODITYEX_ID,SERVERPARTCODE,COMMODITY_TYPE,COMMODITY_CODE,
|
|
COMMODITY_BARCODE,COMMODITY_NAME,COMMODITY_RULE, COMMODITY_UNIT,COMMODITY_RETAILPRICE,COMMODITY_MEMBERPRICE,
|
|
CANCHANGEPRICE,ISVALID,COMMODITY_EN,ISBULK,METERINGMETHOD,DOWNLOADDATE,FLAG,BUSINESSTYPE,SERVERPARTSHOP_ID)
|
|
(SELECT
|
|
COMMODITYEX_ID,SERVERPARTCODE,COMMODITY_TYPE,COMMODITY_CODE,COMMODITY_BARCODE,COMMODITY_NAME,COMMODITY_RULE,
|
|
COMMODITY_UNIT,COMMODITY_RETAILPRICE,COMMODITY_MEMBERPRICE,CANCHANGEPRICE,ISVALID,COMMODITY_EN,ISBULK,
|
|
METERINGMETHOD,DOWNLOADDATE,FLAG,BUSINESSTYPE,SERVERPARTSHOP_ID
|
|
FROM
|
|
HIGHWAY_EXCHANGE.T_COMMODITYEX@NEWEX A
|
|
WHERE
|
|
A.COMMODITYEX_ID = M_INSERT_COMMODITY.COMMODITYEX_ID);
|
|
|
|
DELETE FROM HIGHWAY_EXCHANGE.T_COMMODITYEX@NEWEX WHERE COMMODITYEX_ID = M_INSERT_COMMODITY.COMMODITYEX_ID;
|
|
END IF;
|
|
FETCH C_INSERT_COMMODITY INTO M_INSERT_COMMODITY;
|
|
END LOOP;
|
|
CLOSE C_INSERT_COMMODITY;
|
|
|
|
|
|
OPEN C_UPDATE_COMMODITY(M_SERVERPART_CODE);
|
|
FETCH C_UPDATE_COMMODITY INTO M_UPDATE_COMMODITY;
|
|
WHILE C_UPDATE_COMMODITY%FOUND LOOP
|
|
--更新数据
|
|
UPDATE
|
|
HIGHWAY_EXCHANGE.T_COMMODITYEX
|
|
SET
|
|
COMMODITY_TYPE = M_UPDATE_COMMODITY.COMMODITY_TYPE,
|
|
COMMODITY_BARCODE = M_UPDATE_COMMODITY.COMMODITY_BARCODE,
|
|
COMMODITY_NAME = M_UPDATE_COMMODITY.COMMODITY_NAME,
|
|
COMMODITY_RULE = M_UPDATE_COMMODITY.COMMODITY_RULE,
|
|
COMMODITY_UNIT= M_UPDATE_COMMODITY.COMMODITY_UNIT,
|
|
COMMODITY_RETAILPRICE = M_UPDATE_COMMODITY.COMMODITY_RETAILPRICE,
|
|
COMMODITY_MEMBERPRICE = M_UPDATE_COMMODITY.COMMODITY_MEMBERPRICE,
|
|
CANCHANGEPRICE = M_UPDATE_COMMODITY.CANCHANGEPRICE,
|
|
ISVALID = M_UPDATE_COMMODITY.ISVALID,
|
|
COMMODITY_EN = M_UPDATE_COMMODITY.COMMODITY_EN,
|
|
ISBULK = M_UPDATE_COMMODITY.ISBULK,
|
|
METERINGMETHOD = M_UPDATE_COMMODITY.METERINGMETHOD,
|
|
DOWNLOADDATE = M_UPDATE_COMMODITY.DOWNLOADDATE,
|
|
FLAG = M_UPDATE_COMMODITY.FLAG,
|
|
BUSINESSTYPE = M_UPDATE_COMMODITY.BUSINESSTYPE
|
|
WHERE
|
|
SERVERPARTCODE = M_UPDATE_COMMODITY.SERVERPARTCODE AND
|
|
COMMODITY_CODE = M_UPDATE_COMMODITY.COMMODITY_CODE AND
|
|
DOWNLOADDATE < M_UPDATE_COMMODITY.DOWNLOADDATE AND
|
|
SERVERPARTSHOP_ID = M_UPDATE_COMMODITY.SERVERPARTSHOP_ID;
|
|
|
|
DELETE FROM HIGHWAY_EXCHANGE.T_COMMODITYEX@NEWEX
|
|
WHERE SERVERPARTCODE = M_UPDATE_COMMODITY.SERVERPARTCODE AND
|
|
COMMODITY_CODE = M_UPDATE_COMMODITY.COMMODITY_CODE AND
|
|
SERVERPARTSHOP_ID = M_UPDATE_COMMODITY.SERVERPARTSHOP_ID;
|
|
FETCH C_UPDATE_COMMODITY INTO M_UPDATE_COMMODITY;
|
|
END LOOP;
|
|
CLOSE C_UPDATE_COMMODITY;
|
|
|
|
DELETE HIGHWAY_EXCHANGE.T_COMMODITYEX A WHERE A.COMMODITYEX_ID < (SELECT COMMODITYEX_ID FROM(SELECT *
|
|
FROM HIGHWAY_EXCHANGE.T_COMMODITYEX ORDER BY DOWNLOADDATE DESC,COMMODITYEX_ID DESC)B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND A.COMMODITY_CODE = B.COMMODITY_CODE AND
|
|
A.SERVERPARTSHOP_ID = B.SERVERPARTSHOP_ID AND ROWNUM <= 1) AND
|
|
EXISTS(SELECT B.DOWNLOADDATE FROM HIGHWAY_EXCHANGE.T_COMMODITYEX B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND A.COMMODITY_CODE = B.COMMODITY_CODE AND
|
|
A.SERVERPARTSHOP_ID = B.SERVERPARTSHOP_ID);
|
|
|
|
--下载门点数据 1.服务区编码 2.门店内码
|
|
OPEN C_INSERT_SHOPMESSAGE(M_SERVERPART_CODE);
|
|
FETCH C_INSERT_SHOPMESSAGE INTO M_INSERT_SHOPMESSAGE;
|
|
WHILE C_INSERT_SHOPMESSAGE%FOUND LOOP
|
|
SELECT COUNT(*) INTO M_COUNT FROM HIGHWAY_EXCHANGE.T_SHOPMESSAGE
|
|
WHERE SERVERPARTCODE = M_INSERT_SHOPMESSAGE.SERVERPARTCODE AND
|
|
SERVERPARTSHOP_ID = M_INSERT_SHOPMESSAGE.SERVERPARTSHOP_ID ;
|
|
IF(M_COUNT = 0)THEN
|
|
INSERT INTO HIGHWAY_EXCHANGE.T_SHOPMESSAGE(
|
|
SHOPMESSAGE_ID,SERVERPARTSHOP_ID,SERVERPARTCODE,SHOPCODE,
|
|
SHOPNAME,BUSINESSTYPE,DOWNLOADDATE,FLAG,VALID)
|
|
(SELECT SHOPMESSAGE_ID,SERVERPARTSHOP_ID,SERVERPARTCODE,SHOPCODE,
|
|
SHOPNAME,BUSINESSTYPE,DOWNLOADDATE,FLAG,VALID
|
|
FROM HIGHWAY_EXCHANGE.T_SHOPMESSAGE@NEWEX A WHERE SHOPMESSAGE_ID = M_INSERT_SHOPMESSAGE.SHOPMESSAGE_ID);
|
|
|
|
DELETE FROM HIGHWAY_EXCHANGE.T_SHOPMESSAGE@NEWEX WHERE SHOPMESSAGE_ID = M_INSERT_SHOPMESSAGE.SHOPMESSAGE_ID;
|
|
END IF;
|
|
FETCH C_INSERT_SHOPMESSAGE INTO M_INSERT_SHOPMESSAGE;
|
|
END LOOP;
|
|
CLOSE C_INSERT_SHOPMESSAGE;
|
|
|
|
OPEN C_UPDATE_SHOPMESSAGE(M_SERVERPART_CODE);
|
|
FETCH C_UPDATE_SHOPMESSAGE INTO M_UPDATE_SHOPMESSAGE;
|
|
WHILE C_UPDATE_SHOPMESSAGE%FOUND LOOP
|
|
UPDATE
|
|
HIGHWAY_EXCHANGE.T_SHOPMESSAGE
|
|
SET
|
|
SHOPCODE = M_UPDATE_SHOPMESSAGE.SHOPCODE,SHOPNAME = M_UPDATE_SHOPMESSAGE.SHOPNAME,
|
|
BUSINESSTYPE = M_UPDATE_SHOPMESSAGE.BUSINESSTYPE,
|
|
DOWNLOADDATE = M_UPDATE_SHOPMESSAGE.DOWNLOADDATE,
|
|
FLAG = M_UPDATE_SHOPMESSAGE.FLAG,
|
|
VALID =M_UPDATE_SHOPMESSAGE.VALID
|
|
WHERE
|
|
SERVERPARTCODE = M_UPDATE_SHOPMESSAGE.SERVERPARTCODE AND
|
|
SERVERPARTSHOP_ID = M_UPDATE_SHOPMESSAGE.SERVERPARTSHOP_ID AND
|
|
DOWNLOADDATE < M_UPDATE_SHOPMESSAGE.DOWNLOADDATE AND
|
|
SERVERPARTCODE = M_SERVERPART_CODE;
|
|
|
|
DELETE FROM HIGHWAY_EXCHANGE.T_SHOPMESSAGE@NEWEX
|
|
WHERE SERVERPARTCODE = M_UPDATE_SHOPMESSAGE.SERVERPARTCODE AND
|
|
SERVERPARTSHOP_ID = M_UPDATE_SHOPMESSAGE.SERVERPARTSHOP_ID;
|
|
FETCH C_UPDATE_SHOPMESSAGE INTO M_UPDATE_SHOPMESSAGE;
|
|
END LOOP;
|
|
CLOSE C_UPDATE_SHOPMESSAGE;
|
|
|
|
DELETE FROM HIGHWAY_EXCHANGE.T_SHOPMESSAGE A WHERE A.SHOPMESSAGE_ID < (SELECT SHOPMESSAGE_ID FROM(SELECT *
|
|
FROM HIGHWAY_EXCHANGE.T_SHOPMESSAGE ORDER BY DOWNLOADDATE DESC,SHOPMESSAGE_ID DESC)B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND A.SERVERPARTSHOP_ID = B.SERVERPARTSHOP_ID AND ROWNUM <= 1) AND
|
|
EXISTS(SELECT B.DOWNLOADDATE FROM HIGHWAY_EXCHANGE.T_SHOPMESSAGE B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND A.SERVERPARTSHOP_ID = B.SERVERPARTSHOP_ID);
|
|
|
|
--下载员工数据 1.服务区编码 2.人员编码
|
|
OPEN C_INSERT_SELLWORKER(M_SERVERPART_CODE);
|
|
FETCH C_INSERT_SELLWORKER INTO M_INSERT_SELLWORKER;
|
|
WHILE C_INSERT_SELLWORKER%FOUND LOOP
|
|
SELECT
|
|
COUNT(*) INTO M_COUNT
|
|
FROM
|
|
HIGHWAY_EXCHANGE.T_SELLWORKER
|
|
WHERE
|
|
SERVERPARTCODE = M_INSERT_SELLWORKER.SERVERPARTCODE AND
|
|
SELLWORKERCODE = M_INSERT_SELLWORKER.SELLWORKERCODE AND
|
|
SERVERPARTCODE = M_INSERT_SELLWORKER.SERVERPARTCODE;
|
|
IF(M_COUNT = 0)THEN
|
|
INSERT INTO HIGHWAY_EXCHANGE.T_SELLWORKER(
|
|
SELLWORKER_ID,SERVERPARTCODE,SELLWORKERCODE,SELLWORKERNAME,PROWERRIGHT,SHOPCODE,
|
|
DOWNLOADDATE,FLAG,VALID,SELLWORKERPASSWORD,DISCOUNT_RATE)
|
|
(SELECT
|
|
SELLWORKER_ID,SERVERPARTCODE,SELLWORKERCODE,SELLWORKERNAME,PROWERRIGHT,SHOPCODE,
|
|
DOWNLOADDATE,FLAG,VALID,SELLWORKERPASSWORD,DISCOUNT_RATE
|
|
FROM HIGHWAY_EXCHANGE.T_SELLWORKER@NEWEX A
|
|
WHERE SELLWORKER_ID = M_INSERT_SELLWORKER.SELLWORKER_ID);
|
|
|
|
DELETE FROM HIGHWAY_EXCHANGE.T_SELLWORKER@NEWEX WHERE SELLWORKER_ID = M_INSERT_SELLWORKER.SELLWORKER_ID;
|
|
END IF;
|
|
FETCH C_INSERT_SELLWORKER INTO M_INSERT_SELLWORKER;
|
|
END LOOP;
|
|
CLOSE C_INSERT_SELLWORKER;
|
|
|
|
OPEN C_UPDATE_SELLWORKER(M_SERVERPART_CODE);
|
|
FETCH C_UPDATE_SELLWORKER INTO M_UPDATE_SELLWORKER;
|
|
WHILE C_UPDATE_SELLWORKER%FOUND LOOP
|
|
UPDATE
|
|
HIGHWAY_EXCHANGE.T_SELLWORKER
|
|
SET
|
|
SELLWORKERNAME = M_UPDATE_SELLWORKER.SELLWORKERNAME,
|
|
PROWERRIGHT = M_UPDATE_SELLWORKER.PROWERRIGHT,
|
|
SHOPCODE = M_UPDATE_SELLWORKER.SHOPCODE,
|
|
DOWNLOADDATE =M_UPDATE_SELLWORKER.DOWNLOADDATE,
|
|
FLAG = M_UPDATE_SELLWORKER.FLAG,
|
|
VALID = M_UPDATE_SELLWORKER.VALID,
|
|
SELLWORKERPASSWORD = M_UPDATE_SELLWORKER.SELLWORKERPASSWORD,
|
|
DISCOUNT_RATE = M_UPDATE_SELLWORKER.DISCOUNT_RATE
|
|
WHERE
|
|
SERVERPARTCODE = M_UPDATE_SELLWORKER.SERVERPARTCODE AND
|
|
SELLWORKERCODE = M_UPDATE_SELLWORKER.SELLWORKERCODE AND
|
|
DOWNLOADDATE < M_UPDATE_SELLWORKER.DOWNLOADDATE AND
|
|
SERVERPARTCODE = M_SERVERPART_CODE;
|
|
|
|
DELETE FROM HIGHWAY_EXCHANGE.T_SELLWORKER@NEWEX
|
|
WHERE SERVERPARTCODE = M_UPDATE_SELLWORKER.SERVERPARTCODE AND
|
|
SELLWORKERCODE = M_UPDATE_SELLWORKER.SELLWORKERCODE AND
|
|
SERVERPARTCODE = M_SERVERPART_CODE;
|
|
FETCH C_UPDATE_SELLWORKER INTO M_UPDATE_SELLWORKER;
|
|
END LOOP;
|
|
CLOSE C_UPDATE_SELLWORKER;
|
|
|
|
DELETE FROM HIGHWAY_EXCHANGE.T_SELLWORKER A WHERE A.SELLWORKER_ID < (SELECT SELLWORKER_ID FROM(SELECT *
|
|
FROM HIGHWAY_EXCHANGE.T_SELLWORKER ORDER BY DOWNLOADDATE DESC,SELLWORKER_ID DESC)B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND A.SELLWORKERCODE = B.SELLWORKERCODE AND ROWNUM <= 1) AND
|
|
EXISTS(SELECT B.DOWNLOADDATE FROM HIGHWAY_EXCHANGE.T_SELLWORKER B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND A.SELLWORKERCODE = B.SELLWORKERCODE);
|
|
|
|
--快捷键交互 1.服务区编码 2.快捷键
|
|
OPEN C_INSERT_HOTKEYSET(M_SERVERPART_CODE);
|
|
FETCH C_INSERT_HOTKEYSET INTO M_INSERT_HOTKEYSET;
|
|
WHILE C_INSERT_HOTKEYSET%FOUND LOOP
|
|
SELECT
|
|
COUNT(*) INTO M_COUNT
|
|
FROM
|
|
HIGHWAY_EXCHANGE.T_HOTKEYSET
|
|
WHERE
|
|
SERVERPARTCODE = M_INSERT_HOTKEYSET.SERVERPARTCODE AND
|
|
COMMODITY_BARCODE = M_INSERT_HOTKEYSET.COMMODITY_BARCODE AND
|
|
SERVERPARTCODE = M_INSERT_HOTKEYSET.SERVERPARTCODE;
|
|
IF(M_COUNT = 0)THEN
|
|
INSERT INTO HIGHWAY_EXCHANGE.T_HOTKEYSET(
|
|
HOTKEYSET_ID,SERVERPARTCODE,COMMODITY_BARCODE,HOTKEY,BUSINESSTYPE,DOWNLOADDATE,FLAG,VALID)
|
|
(SELECT
|
|
HOTKEYSET_ID,SERVERPARTCODE,COMMODITY_BARCODE,HOTKEY,BUSINESSTYPE,DOWNLOADDATE,FLAG,VALID
|
|
FROM HIGHWAY_EXCHANGE.T_HOTKEYSET@NEWEX A
|
|
WHERE HOTKEYSET_ID = M_INSERT_HOTKEYSET.HOTKEYSET_ID);
|
|
|
|
DELETE FROM HIGHWAY_EXCHANGE.T_HOTKEYSET@NEWEX WHERE HOTKEYSET_ID = M_INSERT_HOTKEYSET.HOTKEYSET_ID;
|
|
END IF;
|
|
FETCH C_INSERT_HOTKEYSET INTO M_INSERT_HOTKEYSET;
|
|
END LOOP;
|
|
CLOSE C_INSERT_HOTKEYSET;
|
|
|
|
OPEN C_UPDATE_HOTKEYSET(M_SERVERPART_CODE);
|
|
FETCH C_UPDATE_HOTKEYSET INTO M_UPDATE_HOTKEYSET;
|
|
WHILE C_UPDATE_HOTKEYSET%FOUND LOOP
|
|
UPDATE
|
|
HIGHWAY_EXCHANGE.T_HOTKEYSET
|
|
SET
|
|
HOTKEY = M_UPDATE_HOTKEYSET.HOTKEY,
|
|
BUSINESSTYPE = M_UPDATE_HOTKEYSET.BUSINESSTYPE,
|
|
DOWNLOADDATE = M_UPDATE_HOTKEYSET.DOWNLOADDATE,
|
|
FLAG = M_UPDATE_HOTKEYSET.FLAG,
|
|
VALID = M_UPDATE_HOTKEYSET.VALID
|
|
WHERE
|
|
SERVERPARTCODE = M_UPDATE_HOTKEYSET.SERVERPARTCODE AND
|
|
COMMODITY_BARCODE = M_UPDATE_HOTKEYSET.COMMODITY_BARCODE AND
|
|
DOWNLOADDATE < M_UPDATE_HOTKEYSET.DOWNLOADDATE AND
|
|
SERVERPARTCODE = M_SERVERPART_CODE;
|
|
|
|
DELETE FROM HIGHWAY_EXCHANGE.T_HOTKEYSET@NEWEX
|
|
WHERE SERVERPARTCODE = M_UPDATE_HOTKEYSET.SERVERPARTCODE AND
|
|
COMMODITY_BARCODE = M_UPDATE_HOTKEYSET.COMMODITY_BARCODE AND
|
|
SERVERPARTCODE = M_SERVERPART_CODE;
|
|
FETCH C_UPDATE_HOTKEYSET INTO M_UPDATE_HOTKEYSET;
|
|
END LOOP;
|
|
CLOSE C_UPDATE_HOTKEYSET;
|
|
|
|
DELETE FROM HIGHWAY_EXCHANGE.T_HOTKEYSET A WHERE A.HOTKEYSET_ID < (SELECT HOTKEYSET_ID FROM(SELECT *
|
|
FROM HIGHWAY_EXCHANGE.T_HOTKEYSET ORDER BY DOWNLOADDATE DESC,HOTKEYSET_ID DESC)B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND A.COMMODITY_BARCODE = B.COMMODITY_BARCODE AND
|
|
A.BUSINESSTYPE = B.BUSINESSTYPE AND ROWNUM <= 1) AND
|
|
EXISTS(SELECT B.DOWNLOADDATE FROM HIGHWAY_EXCHANGE.T_HOTKEYSET B
|
|
WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND A.BUSINESSTYPE = B.BUSINESSTYPE AND
|
|
A.COMMODITY_BARCODE = B.COMMODITY_BARCODE);
|
|
COMMIT;
|
|
FETCH C_SYSCODE INTO M_SYSCODE;
|
|
END LOOP;
|
|
CLOSE C_SYSCODE;
|
|
|
|
DELETE FROM HIGHWAY_EXCHANGE.T_COMMODITYEX WHERE ISVALID = 0 AND DOWNLOADDATE < SYSDATE - 90;
|
|
DELETE FROM HIGHWAY_EXCHANGE.T_SELLWORKER WHERE VALID = 0 AND DOWNLOADDATE < SYSDATE - 90;
|
|
DELETE FROM HIGHWAY_EXCHANGE.T_HOTKEYSET A WHERE A.VALID = 0 OR NOT EXISTS (SELECT 1
|
|
FROM HIGHWAY_EXCHANGE.T_COMMODITYEX B WHERE A.SERVERPARTCODE = B.SERVERPARTCODE AND
|
|
A.COMMODITY_BARCODE = B.COMMODITY_BARCODE AND A.BUSINESSTYPE = B.BUSINESSTYPE AND ISVALID = 1);
|
|
DELETE FROM HIGHWAY_EXCHANGE.T_SHOPMESSAGE WHERE VALID = 0 AND DOWNLOADDATE < SYSDATE - 60;
|
|
EXCEPTION
|
|
WHEN others THEN
|
|
DBMS_OUTPUT.PUT_LINE('连接数据库失败!');
|
|
END ; |