
85 changed files with 71527 additions and 568 deletions
@ -0,0 +1,30 @@ |
|||||
|
|
||||
|
DROP TABLE IF EXISTS `vege_replenish`; |
||||
|
CREATE TABLE `vege_replenish` ( |
||||
|
`id` BIGINT(32) NOT NULL AUTO_INCREMENT COMMENT 'ID,唯一编号', |
||||
|
`sid` VARCHAR(64) NOT NULL COMMENT 'sid', |
||||
|
`createTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间', |
||||
|
`remarks` VARCHAR(255) NULL DEFAULT NULL COMMENT '备注信息', |
||||
|
|
||||
|
`cardCode` VARCHAR(255) NULL DEFAULT NULL COMMENT '卡编码,个人卡、企业卡是卡编码,转赠记录的是转赠编码', |
||||
|
`customerSid` VARCHAR(100) NULL DEFAULT NULL COMMENT '绑卡人', |
||||
|
`cardtype` VARCHAR(255) NULL DEFAULT 0 COMMENT '0 个人卡 1 企业卡 2 转赠的', |
||||
|
|
||||
|
PRIMARY KEY (`id`) USING BTREE |
||||
|
) ENGINE=InnoDB COMMENT='绑卡记录'; |
||||
|
|
||||
|
DROP TABLE IF EXISTS `vege_replenish_detail`; |
||||
|
CREATE TABLE `vege_replenish_detail` ( |
||||
|
`id` BIGINT(32) NOT NULL AUTO_INCREMENT COMMENT 'ID,唯一编号', |
||||
|
`sid` VARCHAR(64) NOT NULL COMMENT 'sid', |
||||
|
`createTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间', |
||||
|
`remarks` VARCHAR(255) NULL DEFAULT NULL COMMENT '备注信息', |
||||
|
|
||||
|
`orderSid` VARCHAR(100) NULL DEFAULT NULL COMMENT '订单SID', |
||||
|
`goodsSid` VARCHAR(100) NULL DEFAULT NULL COMMENT '商品Sid', |
||||
|
`goodsName` VARCHAR(100) NULL DEFAULT NULL COMMENT '商品名称', |
||||
|
`goodsNumber` INT(10) NULL DEFAULT '1' COMMENT '商品数量', |
||||
|
|
||||
|
PRIMARY KEY (`id`) USING BTREE |
||||
|
) ENGINE=InnoDB COMMENT='绑卡记录商品信息'; |
||||
|
|
File diff suppressed because one or more lines are too long
@ -0,0 +1,371 @@ |
|||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
-- 个人卡 |
||||
|
CREATE TABLE tmp_cust_goods( |
||||
|
SELECT |
||||
|
r.wxMpOpenid, |
||||
|
d.customerSid, |
||||
|
d.bindDate, |
||||
|
d.giftbagSid, |
||||
|
d.serialNumber, |
||||
|
d.code, |
||||
|
s.goodsSid, |
||||
|
s.goodsNumber, |
||||
|
e.NAME AS goodsName, |
||||
|
'个人卡' cardtype |
||||
|
FROM lpk_giftcard d |
||||
|
LEFT JOIN lpk_customer r ON r.sid = d.customerSid |
||||
|
LEFT JOIN lpk_giftbag_goods s ON s.giftbagSid=d.giftbagSid |
||||
|
LEFT JOIN lpk_goods e ON e.sid = s.goodsSid |
||||
|
WHERE d.customerSid IS NOT NULL AND d.customerSid <> '' |
||||
|
ORDER BY r.wxMpOpenid |
||||
|
); |
||||
|
|
||||
|
-- 企业卡 |
||||
|
INSERT INTO tmp_cust_goods |
||||
|
SELECT |
||||
|
r.wxMpOpenid, |
||||
|
d.customerSid, |
||||
|
d.bindDate, |
||||
|
d.giftbagSid, |
||||
|
d.serialNumber, |
||||
|
d.code, |
||||
|
s.goodsSid, |
||||
|
s.goodsNumber, |
||||
|
e.NAME AS goodsName, |
||||
|
'企业卡' cardtype |
||||
|
FROM emp_card d |
||||
|
LEFT JOIN lpk_customer r ON r.sid = d.customerSid |
||||
|
LEFT JOIN lpk_giftbag_goods s ON s.giftbagSid=d.giftbagSid |
||||
|
LEFT JOIN lpk_goods e ON e.sid = s.goodsSid |
||||
|
WHERE d.customerSid IS NOT NULL AND d.customerSid <> '' |
||||
|
ORDER BY r.wxMpOpenid; |
||||
|
|
||||
|
-- 购买卡 |
||||
|
INSERT INTO tmp_cust_goods |
||||
|
SELECT |
||||
|
r.wxMpOpenid, |
||||
|
d.customerSid, |
||||
|
d.bindDate, |
||||
|
d.sid, |
||||
|
d.serialNumber, |
||||
|
d.code, |
||||
|
s.goodsSid, |
||||
|
s.goodsNumber, |
||||
|
e.NAME AS goodsName, |
||||
|
'购买卡' cardtype |
||||
|
FROM emp_card_gift d |
||||
|
LEFT JOIN lpk_customer r ON r.sid = d.customerSid |
||||
|
LEFT JOIN emp_card_gift_goods s ON s.empCardGiftSid=d.sid |
||||
|
LEFT JOIN lpk_goods e ON e.sid = s.goodsSid |
||||
|
WHERE d.customerSid IS NOT NULL AND d.customerSid <> '' AND d.isSenior = '1' |
||||
|
ORDER BY r.wxMpOpenid; |
||||
|
|
||||
|
-- 转赠卡 |
||||
|
INSERT INTO tmp_cust_goods |
||||
|
SELECT |
||||
|
r.wxMpOpenid, |
||||
|
d.customerSid, |
||||
|
d.bindDate, |
||||
|
d.sid, |
||||
|
d.serialNumber, |
||||
|
d.code, |
||||
|
s.goodsSid, |
||||
|
s.goodsNumber, |
||||
|
e.NAME AS goodsName, |
||||
|
'转赠卡' cardtype |
||||
|
FROM emp_card_gift d |
||||
|
LEFT JOIN lpk_customer r ON r.sid = d.customerSid |
||||
|
LEFT JOIN emp_card_gift_goods s ON s.empCardGiftSid=d.sid |
||||
|
LEFT JOIN lpk_goods e ON e.sid = s.goodsSid |
||||
|
WHERE d.customerSid IS NOT NULL AND d.customerSid <> '' AND d.isSenior = '2' |
||||
|
ORDER BY r.wxMpOpenid; |
||||
|
|
||||
|
|
||||
|
-- 预约提货,数量为负值 |
||||
|
INSERT INTO tmp_cust_goods |
||||
|
SELECT |
||||
|
r.wxMpOpenid, |
||||
|
d.customerSid, |
||||
|
d.reserveDate, |
||||
|
d.sid, |
||||
|
d.storeSid, |
||||
|
d.cardCode, |
||||
|
s.goodsSid, |
||||
|
-s.goodsNumber AS goodsNumber, |
||||
|
e.NAME AS goodsName, |
||||
|
d.cardType cardtype |
||||
|
FROM lpk_reserve_order d |
||||
|
LEFT JOIN lpk_customer r ON r.sid = d.customerSid |
||||
|
LEFT JOIN lpk_reserve_order_goods s ON s.orderSid=d.sid |
||||
|
LEFT JOIN lpk_goods e ON e.sid = s.goodsSid |
||||
|
WHERE 1=1 |
||||
|
ORDER BY r.wxMpOpenid; |
||||
|
|
||||
|
|
||||
|
-- 赠出的卡,数量为负值 |
||||
|
INSERT INTO tmp_cust_goods |
||||
|
SELECT |
||||
|
r.wxMpOpenid, |
||||
|
d.empCardCustomerSid, |
||||
|
d.grantDate, |
||||
|
d.sid, |
||||
|
d.serialNumber, |
||||
|
d.code, |
||||
|
s.goodsSid, |
||||
|
-s.goodsNumber AS goodsNumber, |
||||
|
e.NAME AS goodsName, |
||||
|
'赠出' cardtype |
||||
|
FROM emp_card_gift d |
||||
|
LEFT JOIN lpk_customer r ON r.sid = d.empCardCustomerSid |
||||
|
LEFT JOIN emp_card_gift_goods s ON s.empCardGiftSid=d.sid |
||||
|
LEFT JOIN lpk_goods e ON e.sid = s.goodsSid |
||||
|
WHERE d.empCardCustomerSid IS NOT NULL AND d.empCardCustomerSid <> '' AND d.isSenior = '2' |
||||
|
ORDER BY r.wxMpOpenid; |
||||
|
|
||||
|
select * from tmp_cust_goods; |
||||
|
|
||||
|
-- 统计 |
||||
|
INSERT INTO vegetable_cellar(sid,customerSid,goodsSid,goodsNumber) |
||||
|
SELECT |
||||
|
UUID(), |
||||
|
customerSid, |
||||
|
goodsSid, |
||||
|
SUM(goodsNumber) AS goodsNumber |
||||
|
FROM tmp_cust_goods |
||||
|
GROUP BY customerSid,goodsSid |
||||
|
HAVING goodsNumber>0 |
||||
|
|
||||
|
|
||||
|
|
||||
|
update vegetable_cellar vc set affiliation=(select brandId from lpk_goods lg where vc.goodsSid=lg.sid) where 1=1 |
||||
|
|
||||
|
|
||||
|
|
||||
|
聂金义: |
||||
|
默认名称为“惠享客户000142” |
||||
|
|
||||
|
聂金义: |
||||
|
把“小主”换成“惠享客户” |
||||
|
SELECT * FROM lpk_customer WHERE nick LIKE '小主%' |
||||
|
|
||||
|
SELECT * FROM lpk_customer WHERE nick IS NOT NULL |
||||
|
|
||||
|
UPDATE lpk_customer set nick=REPLACE(nick,'小主','惠享客户') WHERE nick LIKE '小主%' |
||||
|
|
||||
|
SELECT * FROM lpk_goods WHERE sid='ac146c0f-9002-4203-8f59-ff7c46d3159c' |
||||
|
|
||||
|
|
||||
|
SELECT * FROM lpk_goods WHERE sid IN ( |
||||
|
SELECT goodsSid FROM vegetable_cellar WHERE affiliation IS NULL GROUP BY goodsSid |
||||
|
) |
||||
|
|
||||
|
|
||||
|
|
||||
|
SELECT * FROM lpk_giftcard WHERE serialNumber='00000010' |
||||
|
|
||||
|
|
||||
|
SELECT * FROM lpk_customer WHERE sid='e0f2b745-8055-48bc-a506-ff09dd82ddb5' |
||||
|
|
||||
|
|
||||
|
SELECT * FROM lpk_giftbag WHERE sid='8e667618-63de-480c-ad1e-2747b76aa99b' |
||||
|
|
||||
|
|
||||
|
SELECT * FROM lpk_giftbag_goods lgg |
||||
|
LEFT join lpk_goods lg on lg.sid=lgg.goodsSid |
||||
|
WHERE lgg.giftbagSid='8e667618-63de-480c-ad1e-2747b76aa99b' |
||||
|
|
||||
|
|
||||
|
|
||||
|
SELECT * FROM lpk_giftcard WHERE serialNumber in( |
||||
|
'00000001', |
||||
|
'00000002', |
||||
|
'00000003', |
||||
|
'00000004', |
||||
|
'00000005', |
||||
|
'00000006', |
||||
|
'00000007', |
||||
|
'00000008', |
||||
|
'00000009', |
||||
|
'00000010', |
||||
|
'00000011', |
||||
|
'00000012', |
||||
|
'00000013', |
||||
|
'00000014', |
||||
|
'00000015', |
||||
|
'00000016', |
||||
|
'00000017', |
||||
|
'00000018', |
||||
|
'00000019', |
||||
|
'00000020' |
||||
|
) |
||||
|
|
||||
|
|
||||
|
|
||||
|
SELECT |
||||
|
r.wxMpOpenid, |
||||
|
serialNumber,customerSid,giftbagSid |
||||
|
FROM lpk_giftcard lg |
||||
|
LEFT JOIN lpk_customer r ON r.sid = lg.customerSid |
||||
|
WHERE serialNumber in( |
||||
|
'00000001', |
||||
|
'00000002', |
||||
|
'00000003', |
||||
|
'00000004', |
||||
|
'00000005', |
||||
|
'00000006', |
||||
|
'00000007', |
||||
|
'00000008', |
||||
|
'00000009', |
||||
|
'00000010', |
||||
|
'00000011', |
||||
|
'00000012', |
||||
|
'00000013', |
||||
|
'00000014', |
||||
|
'00000015', |
||||
|
'00000016', |
||||
|
'00000017', |
||||
|
'00000018', |
||||
|
'00000019', |
||||
|
'00000020' |
||||
|
) |
||||
|
"wxMpOpenid" "serialNumber" "customerSid" "giftbagSid" |
||||
|
"o81zC6xQKV_Rau7cntsaUwOkf9NM" "00000013" "c89f8631-e401-4010-a223-0caf3fabd5c6" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
"o81zC6xQKV_Rau7cntsaUwOkf9NM" "00000015" "c89f8631-e401-4010-a223-0caf3fabd5c6" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
"o81zC65z6tNd5L6ximemKJKBc-4w" "00000010" "e0f2b745-8055-48bc-a506-ff09dd82ddb5" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
"o81zC610j5hKap2qQL_IxskermLY" "00000006" "a43573f1-e94f-455c-ad5d-3979bf56864e" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
"o81zC610j5hKap2qQL_IxskermLY" "00000008" "a43573f1-e94f-455c-ad5d-3979bf56864e" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
"o81zC6xZjXUAHJqbEkeHtec2vPPo" "00000001" "e157745c-856a-472d-a81e-2975312bf171" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
"o81zC60V3ymrfjgK-BifvcyWfJBo" "00000014" "05ba58d6-f1f0-4f68-9bcc-62ceeaf4c088" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
"o81zC6xfASEwu63AUvjeeJ6_t4oU" "00000002" "e569243c-1830-4316-8b4e-d4568b5a151d" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
\N "00000003" "" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
\N "00000004" "" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
\N "00000005" "" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
\N "00000007" "" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
\N "00000009" "" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
\N "00000011" "" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
\N "00000012" "" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
|
||||
|
|
||||
|
|
||||
|
"serialNumber" "customerSid" "giftbagSid" |
||||
|
"00000001" "e157745c-856a-472d-a81e-2975312bf171" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
"00000002" "e569243c-1830-4316-8b4e-d4568b5a151d" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
"00000006" "a43573f1-e94f-455c-ad5d-3979bf56864e" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
"00000008" "a43573f1-e94f-455c-ad5d-3979bf56864e" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
"00000010" "e0f2b745-8055-48bc-a506-ff09dd82ddb5" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
"00000013" "c89f8631-e401-4010-a223-0caf3fabd5c6" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
"00000014" "05ba58d6-f1f0-4f68-9bcc-62ceeaf4c088" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
"00000015" "c89f8631-e401-4010-a223-0caf3fabd5c6" "8e667618-63de-480c-ad1e-2747b76aa99b" |
||||
|
|
||||
|
SELECT COUNT(1) FROM vegetable_cellar; -- 970 |
||||
|
|
||||
|
select * from vegetable_cellar where customerSid='a43573f1-e94f-455c-ad5d-3979bf56864e'; -- 14 |
||||
|
|
||||
|
delete FROM vegetable_cellar where customerSid='a43573f1-e94f-455c-ad5d-3979bf56864e'; |
||||
|
|
||||
|
SELECT * FROM tmp_cust_goods WHERE customerSid='a43573f1-e94f-455c-ad5d-3979bf56864e'; |
||||
|
|
||||
|
|
||||
|
INSERT INTO vegetable_cellar(sid,customerSid,goodsSid,goodsNumber) |
||||
|
SELECT |
||||
|
UUID(), |
||||
|
customerSid, |
||||
|
goodsSid, |
||||
|
SUM(goodsNumber) AS goodsNumber |
||||
|
FROM tmp_cust_goods |
||||
|
where customerSid='a43573f1-e94f-455c-ad5d-3979bf56864e' and serialNumber not in ('00000006','00000008') |
||||
|
GROUP BY customerSid,goodsSid |
||||
|
HAVING goodsNumber>0 |
||||
|
|
||||
|
|
||||
|
SELECT COUNT(1) FROM vegetable_cellar; -- 970 |
||||
|
|
||||
|
select * from vegetable_cellar where customerSid='c89f8631-e401-4010-a223-0caf3fabd5c6'; -- 17 |
||||
|
|
||||
|
delete FROM vegetable_cellar where customerSid='c89f8631-e401-4010-a223-0caf3fabd5c6'; |
||||
|
|
||||
|
SELECT * FROM tmp_cust_goods WHERE customerSid='c89f8631-e401-4010-a223-0caf3fabd5c6'; |
||||
|
|
||||
|
|
||||
|
INSERT INTO vegetable_cellar(sid,customerSid,goodsSid,goodsNumber) |
||||
|
SELECT |
||||
|
UUID(), |
||||
|
customerSid, |
||||
|
goodsSid, |
||||
|
SUM(goodsNumber) AS goodsNumber |
||||
|
FROM tmp_cust_goods |
||||
|
where customerSid='c89f8631-e401-4010-a223-0caf3fabd5c6' and serialNumber not in ('00000013','00000015') |
||||
|
GROUP BY customerSid,goodsSid |
||||
|
HAVING goodsNumber>0 |
||||
|
|
||||
|
|
||||
|
SELECT COUNT(1) FROM vegetable_cellar; -- 958 |
||||
|
|
||||
|
|
||||
|
select * from vegetable_cellar where customerSid='05ba58d6-f1f0-4f68-9bcc-62ceeaf4c088'; -- 14 |
||||
|
|
||||
|
delete FROM vegetable_cellar where customerSid='05ba58d6-f1f0-4f68-9bcc-62ceeaf4c088'; |
||||
|
|
||||
|
SELECT * FROM tmp_cust_goods WHERE customerSid='05ba58d6-f1f0-4f68-9bcc-62ceeaf4c088'; |
||||
|
|
||||
|
|
||||
|
INSERT INTO vegetable_cellar(sid,customerSid,goodsSid,goodsNumber) |
||||
|
SELECT |
||||
|
UUID(), |
||||
|
customerSid, |
||||
|
goodsSid, |
||||
|
SUM(goodsNumber) AS goodsNumber |
||||
|
FROM tmp_cust_goods |
||||
|
where customerSid='05ba58d6-f1f0-4f68-9bcc-62ceeaf4c088' and serialNumber not in ('00000014') |
||||
|
GROUP BY customerSid,goodsSid |
||||
|
HAVING goodsNumber>0 |
||||
|
|
||||
|
|
||||
|
delete FROM vegetable_cellar where customerSid='e157745c-856a-472d-a81e-2975312bf171'; |
||||
|
|
||||
|
INSERT INTO vegetable_cellar(sid,customerSid,goodsSid,goodsNumber) |
||||
|
SELECT |
||||
|
UUID(), |
||||
|
customerSid, |
||||
|
goodsSid, |
||||
|
SUM(goodsNumber) AS goodsNumber |
||||
|
FROM tmp_cust_goods |
||||
|
where customerSid='e157745c-856a-472d-a81e-2975312bf171' and serialNumber not in ('00000001') |
||||
|
GROUP BY customerSid,goodsSid |
||||
|
HAVING goodsNumber>0 |
||||
|
|
||||
|
|
||||
|
delete FROM vegetable_cellar where customerSid='e569243c-1830-4316-8b4e-d4568b5a151d'; |
||||
|
|
||||
|
INSERT INTO vegetable_cellar(sid,customerSid,goodsSid,goodsNumber) |
||||
|
SELECT |
||||
|
UUID(), |
||||
|
customerSid, |
||||
|
goodsSid, |
||||
|
SUM(goodsNumber) AS goodsNumber |
||||
|
FROM tmp_cust_goods |
||||
|
where customerSid='e569243c-1830-4316-8b4e-d4568b5a151d' and serialNumber not in ('00000002') |
||||
|
GROUP BY customerSid,goodsSid |
||||
|
HAVING goodsNumber>0 |
||||
|
|
||||
|
|
||||
|
delete FROM vegetable_cellar where customerSid='e0f2b745-8055-48bc-a506-ff09dd82ddb5'; |
||||
|
|
||||
|
INSERT INTO vegetable_cellar(sid,customerSid,goodsSid,goodsNumber) |
||||
|
SELECT |
||||
|
UUID(), |
||||
|
customerSid, |
||||
|
goodsSid, |
||||
|
SUM(goodsNumber) AS goodsNumber |
||||
|
FROM tmp_cust_goods |
||||
|
where customerSid='e0f2b745-8055-48bc-a506-ff09dd82ddb5' and serialNumber not in ('00000010') |
||||
|
GROUP BY customerSid,goodsSid |
||||
|
HAVING goodsNumber>0 |
||||
|
|
||||
|
|
@ -0,0 +1,158 @@ |
|||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
-- 个人卡 |
||||
|
CREATE TABLE tmp_cust_goods( |
||||
|
SELECT |
||||
|
r.wxMpOpenid, |
||||
|
d.customerSid, |
||||
|
d.bindDate, |
||||
|
d.giftbagSid, |
||||
|
d.serialNumber, |
||||
|
d.code, |
||||
|
s.goodsSid, |
||||
|
s.goodsNumber, |
||||
|
e.NAME AS goodsName, |
||||
|
'个人卡' cardtype |
||||
|
FROM lpk_giftcard d |
||||
|
LEFT JOIN lpk_customer r ON r.sid = d.customerSid |
||||
|
LEFT JOIN lpk_giftbag_goods s ON s.giftbagSid=d.giftbagSid |
||||
|
LEFT JOIN lpk_goods e ON e.sid = s.goodsSid |
||||
|
WHERE d.customerSid IS NOT NULL AND d.customerSid <> '' |
||||
|
ORDER BY r.wxMpOpenid |
||||
|
); |
||||
|
|
||||
|
select count(1) from tmp_cust_goods; -- 5080 |
||||
|
|
||||
|
-- 企业卡 |
||||
|
INSERT INTO tmp_cust_goods |
||||
|
SELECT |
||||
|
r.wxMpOpenid, |
||||
|
d.customerSid, |
||||
|
d.bindDate, |
||||
|
d.giftbagSid, |
||||
|
d.serialNumber, |
||||
|
d.code, |
||||
|
s.goodsSid, |
||||
|
s.goodsNumber, |
||||
|
e.NAME AS goodsName, |
||||
|
'企业卡' cardtype |
||||
|
FROM emp_card d |
||||
|
LEFT JOIN lpk_customer r ON r.sid = d.customerSid |
||||
|
LEFT JOIN lpk_giftbag_goods s ON s.giftbagSid=d.giftbagSid |
||||
|
LEFT JOIN lpk_goods e ON e.sid = s.goodsSid |
||||
|
WHERE d.customerSid IS NOT NULL AND d.customerSid <> '' |
||||
|
ORDER BY r.wxMpOpenid; |
||||
|
|
||||
|
select count(1) from tmp_cust_goods; -- 5256 |
||||
|
|
||||
|
-- 购买卡 |
||||
|
INSERT INTO tmp_cust_goods |
||||
|
SELECT |
||||
|
r.wxMpOpenid, |
||||
|
d.customerSid, |
||||
|
d.bindDate, |
||||
|
d.sid, |
||||
|
d.serialNumber, |
||||
|
d.code, |
||||
|
s.goodsSid, |
||||
|
s.goodsNumber, |
||||
|
e.NAME AS goodsName, |
||||
|
'购买卡' cardtype |
||||
|
FROM emp_card_gift d |
||||
|
LEFT JOIN lpk_customer r ON r.sid = d.customerSid |
||||
|
LEFT JOIN emp_card_gift_goods s ON s.empCardGiftSid=d.sid |
||||
|
LEFT JOIN lpk_goods e ON e.sid = s.goodsSid |
||||
|
WHERE d.customerSid IS NOT NULL AND d.customerSid <> '' AND d.isSenior = '1' |
||||
|
ORDER BY r.wxMpOpenid; |
||||
|
|
||||
|
select count(1) from tmp_cust_goods; -- 5325 |
||||
|
|
||||
|
-- 转赠卡 |
||||
|
INSERT INTO tmp_cust_goods |
||||
|
SELECT |
||||
|
r.wxMpOpenid, |
||||
|
d.customerSid, |
||||
|
d.bindDate, |
||||
|
d.sid, |
||||
|
d.serialNumber, |
||||
|
d.code, |
||||
|
s.goodsSid, |
||||
|
s.goodsNumber, |
||||
|
e.NAME AS goodsName, |
||||
|
'转赠卡' cardtype |
||||
|
FROM emp_card_gift d |
||||
|
LEFT JOIN lpk_customer r ON r.sid = d.customerSid |
||||
|
LEFT JOIN emp_card_gift_goods s ON s.empCardGiftSid=d.sid |
||||
|
LEFT JOIN lpk_goods e ON e.sid = s.goodsSid |
||||
|
WHERE d.customerSid IS NOT NULL AND d.customerSid <> '' AND d.isSenior = '2' |
||||
|
ORDER BY r.wxMpOpenid; |
||||
|
|
||||
|
select count(1) from tmp_cust_goods; -- 5652 |
||||
|
|
||||
|
|
||||
|
-- 预约提货,数量为负值 |
||||
|
INSERT INTO tmp_cust_goods |
||||
|
SELECT |
||||
|
r.wxMpOpenid, |
||||
|
d.customerSid, |
||||
|
d.reserveDate, |
||||
|
d.sid, |
||||
|
d.storeSid, |
||||
|
d.cardCode, |
||||
|
s.goodsSid, |
||||
|
-s.goodsNumber AS goodsNumber, |
||||
|
e.NAME AS goodsName, |
||||
|
d.cardType cardtype |
||||
|
FROM lpk_reserve_order d |
||||
|
LEFT JOIN lpk_customer r ON r.sid = d.customerSid |
||||
|
LEFT JOIN lpk_reserve_order_goods s ON s.orderSid=d.sid |
||||
|
LEFT JOIN lpk_goods e ON e.sid = s.goodsSid |
||||
|
WHERE 1=1 |
||||
|
ORDER BY r.wxMpOpenid; |
||||
|
|
||||
|
select count(1) from tmp_cust_goods; -- 10917 |
||||
|
|
||||
|
|
||||
|
-- 赠出的卡,数量为负值 |
||||
|
INSERT INTO tmp_cust_goods |
||||
|
SELECT |
||||
|
r.wxMpOpenid, |
||||
|
d.empCardCustomerSid, |
||||
|
d.grantDate, |
||||
|
d.sid, |
||||
|
d.serialNumber, |
||||
|
d.code, |
||||
|
s.goodsSid, |
||||
|
-s.goodsNumber AS goodsNumber, |
||||
|
e.NAME AS goodsName, |
||||
|
'赠出' cardtype |
||||
|
FROM emp_card_gift d |
||||
|
LEFT JOIN lpk_customer r ON r.sid = d.empCardCustomerSid |
||||
|
LEFT JOIN emp_card_gift_goods s ON s.empCardGiftSid=d.sid |
||||
|
LEFT JOIN lpk_goods e ON e.sid = s.goodsSid |
||||
|
WHERE d.empCardCustomerSid IS NOT NULL AND d.empCardCustomerSid <> '' AND d.isSenior = '2' |
||||
|
ORDER BY r.wxMpOpenid; |
||||
|
|
||||
|
select count(1) from tmp_cust_goods; -- 11292 |
||||
|
|
||||
|
select * from tmp_cust_goods; |
||||
|
|
||||
|
delete from vegetable_cellar where 1=1; |
||||
|
|
||||
|
-- 统计 |
||||
|
INSERT INTO vegetable_cellar(sid,customerSid,goodsSid,goodsNumber) |
||||
|
SELECT |
||||
|
UUID(), |
||||
|
customerSid, |
||||
|
goodsSid, |
||||
|
SUM(goodsNumber) AS goodsNumber |
||||
|
FROM tmp_cust_goods |
||||
|
GROUP BY customerSid,goodsSid |
||||
|
HAVING goodsNumber>0 |
||||
|
|
||||
|
|
||||
|
|
||||
|
update vegetable_cellar vc set affiliation=(select brandId from lpk_goods lg where vc.goodsSid=lg.sid) where 1=1 |
||||
|
|
File diff suppressed because one or more lines are too long
@ -0,0 +1,62 @@ |
|||||
|
SELECT |
||||
|
r.wxMpOpenid, |
||||
|
d.CODE, |
||||
|
e.NAME AS goodsName, |
||||
|
s.goodsNumber AS goodsNumber, |
||||
|
CASE |
||||
|
WHEN r.wxMpOpenid IS NOT NULL |
||||
|
then '家庭菜窖' |
||||
|
END type |
||||
|
FROM |
||||
|
lpk_giftcard d |
||||
|
LEFT JOIN lpk_customer r ON r.sid = d.customerSid |
||||
|
LEFT JOIN lpk_giftbag_goods s ON s.giftbagSid = d.giftbagSid |
||||
|
LEFT JOIN lpk_goods e ON e.sid = s.goodsSid |
||||
|
WHERE |
||||
|
customerSid IS NOT NULL |
||||
|
AND customerSid != '' |
||||
|
UNION |
||||
|
SELECT |
||||
|
r.wxMpOpenid, |
||||
|
d.CODE, |
||||
|
e.NAME AS goodsName, |
||||
|
s.goodsNumber AS goodsNumber, |
||||
|
CASE |
||||
|
|
||||
|
WHEN r.wxMpOpenid IS NOT NULL |
||||
|
then '企业菜窖' |
||||
|
END type |
||||
|
FROM |
||||
|
emp_card d |
||||
|
LEFT JOIN lpk_customer r ON r.sid = d.customerSid |
||||
|
LEFT JOIN lpk_giftbag_goods s ON s.giftbagSid = d.giftbagSid |
||||
|
LEFT JOIN lpk_goods e ON e.sid = s.goodsSid |
||||
|
WHERE |
||||
|
customerSid IS NOT NULL |
||||
|
AND customerSid != '' |
||||
|
UNION |
||||
|
SELECT |
||||
|
r.wxMpOpenid, |
||||
|
d.CODE, |
||||
|
e.NAME AS goodsName, |
||||
|
s.goodsNumber AS goodsNumber, |
||||
|
CASE |
||||
|
|
||||
|
WHEN r.wxMpOpenid IS NOT NULL |
||||
|
then '购买的家庭菜窖' |
||||
|
END type |
||||
|
FROM |
||||
|
emp_card_gift d |
||||
|
LEFT JOIN lpk_customer r ON r.sid = d.customerSid |
||||
|
LEFT JOIN emp_card_gift_goods s ON s.empCardGiftSid = d.sid |
||||
|
LEFT JOIN lpk_goods e ON e.sid = s.goodsSid |
||||
|
WHERE |
||||
|
customerSid IS NOT NULL |
||||
|
AND customerSid != '' |
||||
|
AND isSenior = '1' |
||||
|
GROUP BY |
||||
|
CODE, |
||||
|
NAME |
||||
|
ORDER BY |
||||
|
wxMpOpenid, |
||||
|
CODE |
@ -0,0 +1,41 @@ |
|||||
|
package com.yxt.yythmall.adminapi; |
||||
|
|
||||
|
import com.yxt.common.core.result.ResultBean; |
||||
|
import com.yxt.yythmall.adminapi.vo.PmsBrandVo; |
||||
|
import com.yxt.yythmall.adminapi.vo.PmsProductCategoryVo; |
||||
|
import com.yxt.yythmall.adminservice.AdminMallService; |
||||
|
import com.yxt.yythmall.api.lpkbank.LpkBank; |
||||
|
import com.yxt.yythmall.api.lpkstore.LpkStore; |
||||
|
import com.yxt.yythmall.biz.lpkbank.LpkBankService; |
||||
|
import com.yxt.yythmall.biz.lpkstore.LpkStoreService; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.GetMapping; |
||||
|
import org.springframework.web.bind.annotation.RequestMapping; |
||||
|
import org.springframework.web.bind.annotation.RequestParam; |
||||
|
import org.springframework.web.bind.annotation.RestController; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
@RestController("com.yxt.yythmall.adminapi.AdminBankRest") |
||||
|
@RequestMapping("/adminapi/bank") |
||||
|
public class AdminBankRest { |
||||
|
|
||||
|
@Autowired |
||||
|
private LpkBankService lpkBankService; |
||||
|
@Autowired |
||||
|
private LpkStoreService lpkStoreService; |
||||
|
|
||||
|
@GetMapping(value = "/listBankAll") |
||||
|
public ResultBean<List<LpkBank>> listBankAll() { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
List<LpkBank> list = lpkBankService.listAllBank(); |
||||
|
return rb.success().setData(list); |
||||
|
} |
||||
|
|
||||
|
@GetMapping(value = "/listStoreOfBank") |
||||
|
public ResultBean<List<LpkStore>> listStoreOfBank(@RequestParam(name = "bankSid", required = false) String bankSid) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
List<LpkStore> list = lpkStoreService.listStoreOfBank(bankSid); |
||||
|
return rb.success().setData(list); |
||||
|
} |
||||
|
} |
@ -0,0 +1,28 @@ |
|||||
|
package com.yxt.yythmall.adminapi; |
||||
|
|
||||
|
import com.yxt.common.core.query.PagerQuery; |
||||
|
import com.yxt.common.core.result.ResultBean; |
||||
|
import com.yxt.common.core.vo.PagerVo; |
||||
|
import com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderQuery; |
||||
|
import com.yxt.yythmall.biz.vegecallerreserveorder.ReserveOrderVo; |
||||
|
import com.yxt.yythmall.biz.vegecallerreserveorder.VegeCellarReserveOrderService; |
||||
|
import io.swagger.annotations.ApiOperation; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.PostMapping; |
||||
|
import org.springframework.web.bind.annotation.RequestBody; |
||||
|
import org.springframework.web.bind.annotation.RequestMapping; |
||||
|
import org.springframework.web.bind.annotation.RestController; |
||||
|
|
||||
|
@RestController("com.yxt.yythmall.adminapi.AdminReserveRest") |
||||
|
@RequestMapping("/adminapi/reserve") |
||||
|
public class AdminReserveRest { |
||||
|
|
||||
|
@Autowired |
||||
|
private VegeCellarReserveOrderService vegeCellarReserveOrderService; |
||||
|
|
||||
|
@ApiOperation("精确到客户的预约单列表") |
||||
|
@PostMapping("/pageOfCustomer") |
||||
|
public ResultBean<PagerVo<ReserveOrderVo>> orderList(@RequestBody PagerQuery<LpkReserveOrderQuery> pq) { |
||||
|
return vegeCellarReserveOrderService.pageOfCustomer(pq); |
||||
|
} |
||||
|
} |
@ -0,0 +1,35 @@ |
|||||
|
package com.yxt.yythmall.api.recommendnewuserbag; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import com.fasterxml.jackson.annotation.JsonFormat; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.util.Date; |
||||
|
import java.util.UUID; |
||||
|
|
||||
|
/** |
||||
|
* @author wangpengfei |
||||
|
* @date 2023/11/21 15:06 |
||||
|
*/ |
||||
|
@ApiModel(value = "礼包信息", description = "礼包信息") |
||||
|
@TableName("applet_giftbag") |
||||
|
@Data |
||||
|
public class RecommendNewUserBag { |
||||
|
private String id; |
||||
|
private String sid = UUID.randomUUID().toString(); |
||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
||||
|
private Date createTime; |
||||
|
private String remarks; |
||||
|
private String isEnable; |
||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
||||
|
private Date dateStart; |
||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
||||
|
private Date dateEnd; |
||||
|
private String name; |
||||
|
private String price; |
||||
|
private String iconUrl; |
||||
|
private String isGrounding; |
||||
|
private String isRecommend; |
||||
|
private String preferentialPrice; |
||||
|
} |
@ -0,0 +1,27 @@ |
|||||
|
package com.yxt.yythmall.api.recommendnewuserbag; |
||||
|
|
||||
|
import com.yxt.yythmall.api.appletgiftbag.GiftBagGoods; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.util.ArrayList; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* @author wangpengfei |
||||
|
* @date 2024/1/6 15:39 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class RecommendNewUserBagDetailVo { |
||||
|
private String sid; |
||||
|
private String name; |
||||
|
private String dateStart; |
||||
|
private String dateEnd; |
||||
|
private String price; |
||||
|
private String iconUrl; |
||||
|
private String isEnable; |
||||
|
private String isGrounding; |
||||
|
private String isRecommend; |
||||
|
private String remark; |
||||
|
private String count; |
||||
|
private List<GiftBagGoods> goods = new ArrayList<>(); |
||||
|
} |
@ -0,0 +1,31 @@ |
|||||
|
package com.yxt.yythmall.api.recommendnewuserbag; |
||||
|
|
||||
|
import com.yxt.common.core.dto.Dto; |
||||
|
import com.yxt.yythmall.api.appletgiftbag.GiftBagGoods; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.util.ArrayList; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* @author wangpengfei |
||||
|
* @date 2023/11/21 15:13 |
||||
|
*/ |
||||
|
@ApiModel(value = "礼包信息 数据传输对象", description = "礼包信息 数据传输对象") |
||||
|
@Data |
||||
|
public class RecommendNewUserBagDto implements Dto { |
||||
|
|
||||
|
private String sid; |
||||
|
private String remarks; |
||||
|
private String dateStart; |
||||
|
private String dateEnd; |
||||
|
private String name; |
||||
|
private String price; |
||||
|
private String iconUrl; |
||||
|
private String isGrounding; |
||||
|
private String isRecommend; |
||||
|
private String preferentialPrice; |
||||
|
//商品sid
|
||||
|
private List<GiftBagGoods> goods = new ArrayList<>(); |
||||
|
} |
@ -0,0 +1,28 @@ |
|||||
|
package com.yxt.yythmall.api.recommendnewuserbag; |
||||
|
|
||||
|
import com.yxt.common.core.vo.Vo; |
||||
|
import com.yxt.yythmall.api.appletgiftbag.GiftBagGoods; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.util.ArrayList; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* @author Administrator |
||||
|
* @description |
||||
|
* @date 2023/11/22 11:15 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class RecommendNewUserBagInitVo implements Vo { |
||||
|
private String sid; |
||||
|
private String remarks; |
||||
|
private String dateStart; |
||||
|
private String dateEnd; |
||||
|
private String name; |
||||
|
private String price; |
||||
|
private String iconUrl; |
||||
|
private String isRecommend; |
||||
|
private String preferentialPrice; |
||||
|
//商品sid
|
||||
|
private List<GiftBagGoods> goods = new ArrayList<>(); |
||||
|
} |
@ -0,0 +1,15 @@ |
|||||
|
package com.yxt.yythmall.api.recommendnewuserbag; |
||||
|
|
||||
|
import com.yxt.common.core.query.Query; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
/** |
||||
|
* @author wangpengfei |
||||
|
* @date 2023/11/21 15:31 |
||||
|
*/ |
||||
|
@ApiModel(value = "礼包信息 查询条件", description = "礼包信息 查询条件") |
||||
|
@Data |
||||
|
public class RecommendNewUserBagQuery implements Query { |
||||
|
private String name; |
||||
|
} |
@ -0,0 +1,45 @@ |
|||||
|
package com.yxt.yythmall.api.recommendnewuserbag; |
||||
|
|
||||
|
import com.yxt.common.core.vo.Vo; |
||||
|
import com.yxt.yythmall.api.appletgiftbag.GiftBagGoods; |
||||
|
import com.yxt.yythmall.api.appletgiftbag.RecommendRecord; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import lombok.Data; |
||||
|
import lombok.NoArgsConstructor; |
||||
|
|
||||
|
import java.text.DecimalFormat; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* @author wangpengfei |
||||
|
* @date 2023/11/21 15:12 |
||||
|
*/ |
||||
|
@Data |
||||
|
@ApiModel(value = "礼包信息 视图数据对象", description = "礼包信息 视图数据对象") |
||||
|
@NoArgsConstructor |
||||
|
public class RecommendNewUserBagVo implements Vo { |
||||
|
private String sid; |
||||
|
private String name;//
|
||||
|
private String dateStart; |
||||
|
private String dateEnd; |
||||
|
private String price;//礼包总价格
|
||||
|
private String prefPrice;//优惠价格
|
||||
|
private String iconUrl;//图片
|
||||
|
private String isEnable; |
||||
|
private String isGrounding; |
||||
|
private String isRecommend;//是否推荐 1 推荐 0 默认
|
||||
|
private String remarks; |
||||
|
private String count;//
|
||||
|
private String goodsSid; |
||||
|
private String weight="0";//重量
|
||||
|
private List<GiftBagGoods> giftBagGoods; |
||||
|
private List<RecommendRecord> recordList; |
||||
|
|
||||
|
public String getPrice() { |
||||
|
DecimalFormat decimalFormat = new DecimalFormat("#0.00"); |
||||
|
if(null==price){ |
||||
|
price="0"; |
||||
|
} |
||||
|
return price=decimalFormat.format(Double.valueOf(price)); |
||||
|
} |
||||
|
} |
@ -0,0 +1,29 @@ |
|||||
|
package com.yxt.yythmall.api.recommendnewuserbagdetails; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import com.fasterxml.jackson.annotation.JsonFormat; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.util.Date; |
||||
|
import java.util.UUID; |
||||
|
|
||||
|
/** |
||||
|
* @author wangpengfei |
||||
|
* @date 2023/11/21 15:06 |
||||
|
*/ |
||||
|
@ApiModel(value = "礼包包含商品信息", description = "礼包包含商品信息") |
||||
|
@TableName("applet_giftbag_goods") |
||||
|
@Data |
||||
|
public class RecommendNewUserBagDetails { |
||||
|
private String id; |
||||
|
private String sid = UUID.randomUUID().toString(); |
||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
||||
|
private Date createTime; |
||||
|
private String remarks; |
||||
|
private String giftbagSid; |
||||
|
private String goodsSid; |
||||
|
private String goodsNumber; |
||||
|
// private String isGrounding;
|
||||
|
private double price; |
||||
|
} |
@ -0,0 +1,14 @@ |
|||||
|
package com.yxt.yythmall.api.recommendnewuserbagdetails; |
||||
|
|
||||
|
import com.yxt.common.core.dto.Dto; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
/** |
||||
|
* @author wangpengfei |
||||
|
* @date 2023/11/21 15:13 |
||||
|
*/ |
||||
|
@ApiModel(value = "礼包包含商品信息 数据传输对象", description = "礼包包含商品信息 数据传输对象") |
||||
|
@Data |
||||
|
public class RecommendNewUserBagDetailsDto implements Dto { |
||||
|
} |
@ -0,0 +1,15 @@ |
|||||
|
package com.yxt.yythmall.api.recommendnewuserbagdetails; |
||||
|
|
||||
|
import com.yxt.common.core.query.Query; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
/** |
||||
|
* @author wangpengfei |
||||
|
* @date 2023/11/21 15:31 |
||||
|
*/ |
||||
|
@ApiModel(value = "礼包包含商品信息 查询条件", description = "礼包包含商品信息 查询条件") |
||||
|
@Data |
||||
|
public class RecommendNewUserBagDetailsQuery implements Query { |
||||
|
|
||||
|
} |
@ -0,0 +1,23 @@ |
|||||
|
package com.yxt.yythmall.api.recommendnewuserbagdetails; |
||||
|
|
||||
|
import com.yxt.common.core.vo.Vo; |
||||
|
import io.swagger.annotations.ApiModel; |
||||
|
import lombok.Data; |
||||
|
import lombok.NoArgsConstructor; |
||||
|
|
||||
|
/** |
||||
|
* @author wangpengfei |
||||
|
* @date 2023/11/21 15:12 |
||||
|
*/ |
||||
|
@Data |
||||
|
@ApiModel(value = "礼包包含商品信息 视图数据对象", description = "礼包包含商品信息 视图数据对象") |
||||
|
@NoArgsConstructor |
||||
|
public class RecommendNewUserBagDetailsVo implements Vo { |
||||
|
private String goodsName; |
||||
|
private double goodsNumber; |
||||
|
private String picUrl; |
||||
|
private String goodsSid; |
||||
|
private String price; |
||||
|
private String unitName; |
||||
|
private String remarks; |
||||
|
} |
@ -0,0 +1,29 @@ |
|||||
|
package com.yxt.yythmall.biz.recommendnewuserbag; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
|
import com.baomidou.mybatisplus.core.toolkit.Constants; |
||||
|
import com.yxt.yythmall.api.appletgiftbag.GiftBagGoodss; |
||||
|
import com.yxt.yythmall.api.recommendnewuserbag.RecommendNewUserBag; |
||||
|
import com.yxt.yythmall.api.recommendnewuserbag.RecommendNewUserBagVo; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
import org.apache.ibatis.annotations.Param; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* @author wangpengfei |
||||
|
* @date 2023/11/21 15:03 |
||||
|
*/ |
||||
|
@Mapper |
||||
|
public interface RecommendNewUserBagMapper extends BaseMapper<RecommendNewUserBag> { |
||||
|
|
||||
|
|
||||
|
IPage<RecommendNewUserBagVo> giftBagListPage(IPage<RecommendNewUserBag> page, @Param(Constants.WRAPPER) QueryWrapper<RecommendNewUserBag> qw); |
||||
|
List<RecommendNewUserBagVo> giftBagList(); |
||||
|
|
||||
|
List<RecommendNewUserBagVo> giftBagGoodsList(); |
||||
|
List<GiftBagGoodss> getGoodsByBagSid(@Param("bagSid") String bagSid); |
||||
|
int saveBags(@Param("bags") List<RecommendNewUserBag> bags); |
||||
|
} |
@ -0,0 +1,62 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8" ?> |
||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
||||
|
<mapper namespace="com.yxt.yythmall.biz.recommendnewuserbag.RecommendNewUserBagMapper"> |
||||
|
<!-- <where> ${ew.sqlSegment} </where>--> |
||||
|
<!-- ${ew.customSqlSegment} --> |
||||
|
|
||||
|
<insert id="saveBags" parameterType="java.util.List"> |
||||
|
insert into lpk_giftbag(sid,createTime,`name`,dateStart,dateEnd) |
||||
|
values |
||||
|
<foreach collection="bags" item="item" index="index" separator=","> |
||||
|
(#{item.sid},#{item.createTime},#{item.name},#{item.dateStart},#{item.dateEnd}) |
||||
|
</foreach> |
||||
|
</insert> |
||||
|
|
||||
|
<select id="giftBagListPage" resultType="com.yxt.yythmall.api.recommendnewuserbag.RecommendNewUserBagVo"> |
||||
|
select |
||||
|
sid, |
||||
|
`name`, |
||||
|
date_format(dateStart, '%Y-%m-%d') as dateStart, |
||||
|
date_format(dateEnd, '%Y-%m-%d') as dateEnd, |
||||
|
price, |
||||
|
iconUrl, |
||||
|
isEnable, |
||||
|
isGrounding, |
||||
|
isRecommend |
||||
|
from recommend_newuser_bag |
||||
|
<where> |
||||
|
${ew.sqlSegment} |
||||
|
</where> |
||||
|
</select> |
||||
|
<select id="giftBagList" resultType="com.yxt.yythmall.api.recommendnewuserbag.RecommendNewUserBagVo"> |
||||
|
select |
||||
|
* |
||||
|
from recommend_newuser_bag |
||||
|
where isGrounding=1 |
||||
|
order by isRecommend desc,createTime desc |
||||
|
</select> |
||||
|
<select id="giftBagGoodsList" resultType="com.yxt.yythmall.api.recommendnewuserbag.RecommendNewUserBagVo"> |
||||
|
select |
||||
|
a.sid, |
||||
|
a.name , |
||||
|
a.iconUrl, |
||||
|
a.price , |
||||
|
a.preferentialPrice as prefPrice |
||||
|
from recommend_newuser_bag a |
||||
|
</select> |
||||
|
<select id="getGoodsByBagSid" resultType="com.yxt.yythmall.api.appletgiftbag.GiftBagGoodss"> |
||||
|
select |
||||
|
a.preferentialPrice as prefPrice, |
||||
|
c.name as name, |
||||
|
c.sid as goodsSid, |
||||
|
c.specificationUnit as specificationUnit, |
||||
|
c.unitName as unitName, |
||||
|
b.goodsNumber as goodsNumber, |
||||
|
c.weight as weight |
||||
|
from recommend_newuser_bag a |
||||
|
left join recommend_newuser_bag_details b on b.giftbagSid=a.sid |
||||
|
left join lpk_goods c on c.sid =b.goodsSid |
||||
|
where a.sid=#{bagSid} |
||||
|
</select> |
||||
|
|
||||
|
</mapper> |
@ -0,0 +1,79 @@ |
|||||
|
package com.yxt.yythmall.biz.recommendnewuserbag; |
||||
|
|
||||
|
import com.yxt.common.core.query.PagerQuery; |
||||
|
import com.yxt.common.core.result.ResultBean; |
||||
|
import com.yxt.common.core.vo.PagerVo; |
||||
|
import com.yxt.yythmall.api.recommendnewuserbag.RecommendNewUserBagDto; |
||||
|
import com.yxt.yythmall.api.recommendnewuserbag.RecommendNewUserBagQuery; |
||||
|
import com.yxt.yythmall.api.recommendnewuserbag.RecommendNewUserBagVo; |
||||
|
import io.swagger.annotations.Api; |
||||
|
import io.swagger.annotations.ApiOperation; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.*; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* @author wangpengfei |
||||
|
* @date 2023/11/21 15:03 |
||||
|
*/ |
||||
|
|
||||
|
@Api(tags = "小程序礼包信息") |
||||
|
@RestController |
||||
|
@RequestMapping("ecommendnewuserbag") |
||||
|
public class RecommendNewUserBagRest { |
||||
|
|
||||
|
@Autowired |
||||
|
RecommendNewUserBagService recommendNewUserBagService; |
||||
|
|
||||
|
|
||||
|
@ApiOperation("礼包信息列表") |
||||
|
@PostMapping("/giftBagListPage") |
||||
|
public ResultBean<PagerVo<RecommendNewUserBagVo>> giftBagListPage(@RequestBody PagerQuery<RecommendNewUserBagQuery> pq) { |
||||
|
return recommendNewUserBagService.giftBagListPage(pq); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation("保存修改") |
||||
|
@PostMapping("/saveGiftBag") |
||||
|
public ResultBean<String> saveGiftBag(@RequestBody RecommendNewUserBagDto dto) { |
||||
|
return recommendNewUserBagService.saveGiftBag(dto); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation("礼包初始化") |
||||
|
@GetMapping("/giftBagInit/{sid}") |
||||
|
public ResultBean giftBagInit(@PathVariable String sid) { |
||||
|
return recommendNewUserBagService.giftBagInit(sid); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation("删除礼包") |
||||
|
@DeleteMapping("/deleteBag/{sid}") |
||||
|
public ResultBean deleteBag(@PathVariable("sid") String sid) { |
||||
|
return recommendNewUserBagService.deleteBag(sid); |
||||
|
} |
||||
|
@ApiOperation("礼包信息列表") |
||||
|
@GetMapping("/giftBagList") |
||||
|
public ResultBean giftBagList() { |
||||
|
return recommendNewUserBagService.giftBagList(); |
||||
|
} |
||||
|
@GetMapping("/isGrounding/{sid}/{state}") |
||||
|
@ApiOperation(value = "设置是否上下架") |
||||
|
public ResultBean isGrounding(@PathVariable("sid")String sid,@PathVariable("state") String state) { |
||||
|
return recommendNewUserBagService.isGrounding(sid, state); |
||||
|
} |
||||
|
@ApiOperation("小程序礼包信息列表") |
||||
|
@GetMapping("/recommendNewUserBagList") |
||||
|
public ResultBean<List<RecommendNewUserBagVo>> recommendNewUserBagList() { |
||||
|
return recommendNewUserBagService.recommendNewUserBagList(); |
||||
|
} |
||||
|
@ApiOperation("礼包初始化") |
||||
|
@GetMapping("/getGiftBagBySid/{sid}") |
||||
|
public ResultBean getGiftBagBySid(@PathVariable String sid) { |
||||
|
return recommendNewUserBagService.getGiftBagBySid(sid); |
||||
|
} |
||||
|
|
||||
|
@ApiOperation("新人专属购买礼包") |
||||
|
@PostMapping("/newUserQuota") |
||||
|
public ResultBean newUserQuota() { |
||||
|
return recommendNewUserBagService.newUserQuota(); |
||||
|
} |
||||
|
} |
@ -0,0 +1,302 @@ |
|||||
|
package com.yxt.yythmall.biz.recommendnewuserbag; |
||||
|
|
||||
|
import cn.hutool.core.bean.BeanUtil; |
||||
|
import cn.hutool.core.date.DateTime; |
||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
||||
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
||||
|
import com.yxt.common.base.config.component.FileUploadComponent; |
||||
|
import com.yxt.common.base.service.MybatisBaseService; |
||||
|
import com.yxt.common.base.utils.PagerUtil; |
||||
|
import com.yxt.common.base.utils.StringUtils; |
||||
|
import com.yxt.common.core.query.PagerQuery; |
||||
|
import com.yxt.common.core.result.ResultBean; |
||||
|
import com.yxt.common.core.vo.PagerVo; |
||||
|
import com.yxt.yythmall.api.appletgiftbag.GiftBagGoods; |
||||
|
import com.yxt.yythmall.api.appletgiftbag.GiftBagGoodss; |
||||
|
import com.yxt.yythmall.api.appletgiftbag.RecommendRecord; |
||||
|
import com.yxt.yythmall.api.lpkgoods.LpkGoods; |
||||
|
import com.yxt.yythmall.api.recommendnewuserbag.*; |
||||
|
import com.yxt.yythmall.api.recommendnewuserbagdetails.RecommendNewUserBagDetails; |
||||
|
import com.yxt.yythmall.biz.lpkgoods.LpkGoodsService; |
||||
|
import com.yxt.yythmall.biz.recommendnewuserbagdetails.RecommendNewUserBagDetailsService; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
import org.springframework.transaction.annotation.Transactional; |
||||
|
|
||||
|
import java.math.BigDecimal; |
||||
|
import java.text.DecimalFormat; |
||||
|
import java.text.SimpleDateFormat; |
||||
|
import java.util.ArrayList; |
||||
|
import java.util.Collections; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* @author wangpengfei |
||||
|
* @date 2023/11/21 15:03 |
||||
|
*/ |
||||
|
@Service |
||||
|
public class RecommendNewUserBagService extends MybatisBaseService<RecommendNewUserBagMapper, RecommendNewUserBag> { |
||||
|
|
||||
|
@Autowired |
||||
|
private FileUploadComponent fileUploadComponent; |
||||
|
@Autowired |
||||
|
private RecommendNewUserBagDetailsService recommendNewUserBagDetailsService; |
||||
|
@Autowired |
||||
|
private LpkGoodsService lpkGoodsService; |
||||
|
|
||||
|
public ResultBean<PagerVo<RecommendNewUserBagVo>> giftBagListPage(PagerQuery<RecommendNewUserBagQuery> pq) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
RecommendNewUserBagQuery query = pq.getParams(); |
||||
|
QueryWrapper<RecommendNewUserBag> qw = new QueryWrapper<>(); |
||||
|
qw.eq("1", "1"); |
||||
|
if (StringUtils.isNotBlank(query.getName())) { |
||||
|
qw.like("name", query.getName()); |
||||
|
} |
||||
|
qw.orderByDesc("isRecommend"); |
||||
|
qw.orderByDesc("createTime"); |
||||
|
IPage<RecommendNewUserBag> page = PagerUtil.queryToPage(pq); |
||||
|
IPage<RecommendNewUserBagVo> pagging = baseMapper.giftBagListPage(page, qw); |
||||
|
PagerVo<RecommendNewUserBagVo> p = PagerUtil.pageToVo(pagging, null); |
||||
|
List<RecommendNewUserBagVo> records = pagging.getRecords(); |
||||
|
records.removeAll(Collections.singleton(null)); |
||||
|
if (!records.isEmpty()) { |
||||
|
for (RecommendNewUserBagVo record : records) { |
||||
|
if (StringUtils.isNotBlank(record.getIconUrl())) { |
||||
|
record.setIconUrl(fileUploadComponent.getUrlPrefix() + record.getIconUrl()); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
return rb.success().setData(p); |
||||
|
} |
||||
|
|
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public ResultBean<String> saveGiftBag(RecommendNewUserBagDto dto) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
String sid = ""; |
||||
|
if (StringUtils.isNotBlank(dto.getSid())) { |
||||
|
sid = dto.getSid(); |
||||
|
recommendNewUserBagDetailsService.deleteGoodsByBagSid(dto.getSid()); |
||||
|
RecommendNewUserBag RecommendNewUserBag = fetchBySid(dto.getSid()); |
||||
|
BeanUtil.copyProperties(dto, RecommendNewUserBag, "id", "sid"); |
||||
|
RecommendNewUserBag.setCreateTime(new DateTime()); |
||||
|
if (StringUtils.isNotBlank(dto.getIconUrl())) { |
||||
|
String urlPrefix = fileUploadComponent.getUrlPrefix(); |
||||
|
String path = dto.getIconUrl().substring(urlPrefix.length()); |
||||
|
RecommendNewUserBag.setIconUrl(path); |
||||
|
} |
||||
|
baseMapper.updateById(RecommendNewUserBag); |
||||
|
if (!dto.getGoods().isEmpty()) { |
||||
|
List<GiftBagGoods> goodsList = dto.getGoods(); |
||||
|
for (GiftBagGoods goods : goodsList) { |
||||
|
RecommendNewUserBagDetails RecommendNewUserBagGoods = new RecommendNewUserBagDetails(); |
||||
|
RecommendNewUserBagGoods.setCreateTime(new DateTime()); |
||||
|
RecommendNewUserBagGoods.setGoodsSid(goods.getGoodsSid()); |
||||
|
RecommendNewUserBagGoods.setGiftbagSid(RecommendNewUserBag.getSid()); |
||||
|
RecommendNewUserBagGoods.setGoodsNumber(goods.getGoodsNumber()); |
||||
|
RecommendNewUserBagGoods.setPrice(Double.valueOf(goods.getPrice())); |
||||
|
recommendNewUserBagDetailsService.insert(RecommendNewUserBagGoods); |
||||
|
} |
||||
|
} |
||||
|
} else { |
||||
|
RecommendNewUserBag RecommendNewUserBag = new RecommendNewUserBag(); |
||||
|
sid = RecommendNewUserBag.getSid(); |
||||
|
BeanUtil.copyProperties(dto, RecommendNewUserBag, "id", "sid"); |
||||
|
RecommendNewUserBag.setCreateTime(new DateTime()); |
||||
|
if (StringUtils.isNotBlank(dto.getIconUrl())) { |
||||
|
String urlPrefix = fileUploadComponent.getUrlPrefix(); |
||||
|
String path = dto.getIconUrl().substring(urlPrefix.length()); |
||||
|
RecommendNewUserBag.setIconUrl(path); |
||||
|
} |
||||
|
baseMapper.insert(RecommendNewUserBag); |
||||
|
if (!dto.getGoods().isEmpty()) { |
||||
|
List<GiftBagGoods> goodsList = dto.getGoods(); |
||||
|
for (GiftBagGoods goods : goodsList) { |
||||
|
RecommendNewUserBagDetails RecommendNewUserBagGoods = new RecommendNewUserBagDetails(); |
||||
|
RecommendNewUserBagGoods.setCreateTime(new DateTime()); |
||||
|
RecommendNewUserBagGoods.setGoodsSid(goods.getGoodsSid()); |
||||
|
RecommendNewUserBagGoods.setGiftbagSid(RecommendNewUserBag.getSid()); |
||||
|
RecommendNewUserBagGoods.setGoodsNumber(goods.getGoodsNumber()); |
||||
|
RecommendNewUserBagGoods.setPrice(Double.valueOf(goods.getPrice())); |
||||
|
recommendNewUserBagDetailsService.insert(RecommendNewUserBagGoods); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
return rb.success().setData(sid); |
||||
|
} |
||||
|
|
||||
|
public ResultBean giftBagInit(String sid) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
RecommendNewUserBagInitVo vo = new RecommendNewUserBagInitVo(); |
||||
|
RecommendNewUserBag entity = fetchBySid(sid); |
||||
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); |
||||
|
if (null != entity) { |
||||
|
BeanUtil.copyProperties(entity, vo); |
||||
|
if (null != entity.getDateStart()) { |
||||
|
vo.setDateStart(sdf.format(entity.getDateStart())); |
||||
|
} |
||||
|
if (null != entity.getDateEnd()) { |
||||
|
vo.setDateEnd(sdf.format(entity.getDateEnd())); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(entity.getIconUrl())) { |
||||
|
vo.setIconUrl(fileUploadComponent.getUrlPrefix() + entity.getIconUrl()); |
||||
|
} |
||||
|
List<GiftBagGoods> goods = new ArrayList<>(); |
||||
|
List<RecommendNewUserBagDetails> records = recommendNewUserBagDetailsService.getRecordsByBagSid(sid); |
||||
|
if (!records.isEmpty()) { |
||||
|
for (RecommendNewUserBagDetails record : records) { |
||||
|
GiftBagGoods bagGoods = new GiftBagGoods(); |
||||
|
if (StringUtils.isNotBlank(record.getGoodsNumber())) { |
||||
|
bagGoods.setGoodsNumber(record.getGoodsNumber()); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(record.getGoodsSid())) { |
||||
|
bagGoods.setGoodsSid(record.getGoodsSid()); |
||||
|
LpkGoods lpkGoods = lpkGoodsService.fetchBySid(record.getGoodsSid()); |
||||
|
if (null != lpkGoods) { |
||||
|
if (StringUtils.isNotBlank(lpkGoods.getName())) { |
||||
|
bagGoods.setName(lpkGoods.getName()); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(lpkGoods.getPicUrl())) { |
||||
|
bagGoods.setIconUrl(lpkGoods.getPicUrl()); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(lpkGoods.getUnitName())) { |
||||
|
bagGoods.setUnitName(lpkGoods.getUnitName()); |
||||
|
} |
||||
|
if (StringUtils.isNotBlank(lpkGoods.getPrice())) { |
||||
|
bagGoods.setPrice(lpkGoods.getPrice()); |
||||
|
} |
||||
|
bagGoods.setWeight(lpkGoods.getWeight()); |
||||
|
bagGoods.setSpecificationUnit(lpkGoods.getSpecificationUnit()); |
||||
|
} |
||||
|
} |
||||
|
goods.add(bagGoods); |
||||
|
} |
||||
|
} |
||||
|
vo.setGoods(goods); |
||||
|
} |
||||
|
return rb.success().setData(vo); |
||||
|
} |
||||
|
|
||||
|
public ResultBean deleteBag(String sid) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
RecommendNewUserBag RecommendNewUserBag = fetchBySid(sid); |
||||
|
if (null != RecommendNewUserBag) { |
||||
|
baseMapper.deleteById(RecommendNewUserBag.getId()); |
||||
|
recommendNewUserBagDetailsService.deleteGoodsByBagSid(sid); |
||||
|
} |
||||
|
return rb.success(); |
||||
|
} |
||||
|
|
||||
|
public ResultBean giftBagList() { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
List<RecommendNewUserBagVo> pagging = baseMapper.giftBagList(); |
||||
|
return rb.success().setData(pagging); |
||||
|
} |
||||
|
public ResultBean isGrounding(String sid,String state) { |
||||
|
ResultBean rb = new ResultBean().fail(); |
||||
|
RecommendNewUserBag bag=baseMapper.selectOne(new QueryWrapper<RecommendNewUserBag>().eq("sid",sid)); |
||||
|
bag.setIsGrounding(state); |
||||
|
baseMapper.updateById(bag); |
||||
|
return rb.success().setMsg("修改成功"); |
||||
|
} |
||||
|
|
||||
|
public int saveBags(List<RecommendNewUserBag> bags) { |
||||
|
return baseMapper.saveBags(bags); |
||||
|
} |
||||
|
public ResultBean<List<RecommendNewUserBagVo>> recommendNewUserBagList() { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
List<RecommendNewUserBagVo> list=baseMapper.giftBagList(); |
||||
|
list.forEach(s->{ |
||||
|
// s.setPrice(Double.valueOf(aa(s.getPrice())));
|
||||
|
List<com.yxt.yythmall.api.appletgiftbag.GiftBagGoods> list1=recommendNewUserBagDetailsService.getGoodsByBagSidB(s.getSid()); |
||||
|
list1.forEach(l->{ |
||||
|
l.setCount("共"+Integer.valueOf(l.getGoodsNumber())+l.getUnitName()); |
||||
|
l.setSpec(l.getWeight()+l.getSpecificationUnit()+"/"+l.getUnitName()); |
||||
|
|
||||
|
}); |
||||
|
// List<RecommendNewUserBagGoods> RecommendNewUserBagGoods=RecommendNewUserBagGoodsService.list(new QueryWrapper<RecommendNewUserBagGoods>().eq("giftbagSid",s.getSid()));
|
||||
|
s.setCount(list1.size()+"种蔬菜"); |
||||
|
s.setIconUrl(fileUploadComponent.getUrlPrefix() +s.getIconUrl()); |
||||
|
s.setGiftBagGoods(list1); |
||||
|
}); |
||||
|
|
||||
|
return rb.success().setData(list); |
||||
|
} |
||||
|
public ResultBean<RecommendNewUserBagDetailVo> getGiftBagBySid(String sid ) { |
||||
|
ResultBean rb = ResultBean.fireFail(); |
||||
|
List<com.yxt.yythmall.api.appletgiftbag.GiftBagGoods> goodsList=recommendNewUserBagDetailsService.getGoodsByBagSidA(sid); |
||||
|
RecommendNewUserBagDetailVo RecommendNewUserBagVo=new RecommendNewUserBagDetailVo(); |
||||
|
RecommendNewUserBag s= baseMapper.selectOne(new QueryWrapper<RecommendNewUserBag>().eq("sid",sid)); |
||||
|
double i=0; |
||||
|
DecimalFormat decimalFormat = new DecimalFormat("#0.00"); |
||||
|
for(com.yxt.yythmall.api.appletgiftbag.GiftBagGoods goods:goodsList){ |
||||
|
// i=i+Double.valueOf(goods.getJPrice())*Double.valueOf(goods.getGoodsNumber());
|
||||
|
i=i+Double.valueOf(goods.getJPrice())*Double.valueOf(goods.getWeight())*Double.valueOf(goods.getGoodsNumber()); |
||||
|
goods.setIconUrl(fileUploadComponent.getUrlPrefix() +goods.getIconUrl()); |
||||
|
goods.setTotalValue(String.valueOf(decimalFormat.format(Double.valueOf(goods.getGoodsNumber())*Double.valueOf(goods.getJPrice())*Double.valueOf(goods.getWeight())))); |
||||
|
// goods.setJPrice(String.valueOf(decimalFormat.format(Double.valueOf(goods.getPrice())*Double.valueOf(goods.getWeight()))));
|
||||
|
goods.setPrice(String.valueOf(decimalFormat.format(Double.valueOf(goods.getJPrice())*Double.valueOf(goods.getWeight())))); |
||||
|
} |
||||
|
RecommendNewUserBagVo.setPrice(decimalFormat.format(i)); |
||||
|
RecommendNewUserBagVo.setGoods(goodsList); |
||||
|
RecommendNewUserBagVo.setName(s.getName()); |
||||
|
return rb.success().setData(RecommendNewUserBagVo); |
||||
|
} |
||||
|
public static String aa(double a){ |
||||
|
BigDecimal d=new BigDecimal(a); |
||||
|
String c= d.setScale(2,BigDecimal.ROUND_HALF_UP).toString(); |
||||
|
return String.valueOf(c); |
||||
|
} |
||||
|
public ResultBean recommendRecord(String sid ) { |
||||
|
ResultBean rb=new ResultBean().fail(); |
||||
|
RecommendNewUserBagVo vo=new RecommendNewUserBagVo(); |
||||
|
RecommendNewUserBag bag=baseMapper.selectOne(new QueryWrapper<RecommendNewUserBag>().eq("sid","e49555f2-5370-45b0-9637-aa4d54c22e31")); |
||||
|
vo.setRemarks(bag.getRemarks()); |
||||
|
vo.setIconUrl(fileUploadComponent.getUrlPrefix() +bag.getIconUrl()); |
||||
|
RecommendRecord recommendRecord=new RecommendRecord(); |
||||
|
recommendRecord.setContent("梧桐居助力您获得7斤白菜"); |
||||
|
RecommendRecord recommendRecord1=new RecommendRecord(); |
||||
|
recommendRecord1.setContent("龙助力您获得7斤白菜"); |
||||
|
RecommendRecord recommendRecord2=new RecommendRecord(); |
||||
|
recommendRecord2.setContent("美人助力您获得15斤土豆"); |
||||
|
List<RecommendRecord> list=new ArrayList<>(); |
||||
|
list.add(recommendRecord); |
||||
|
list.add(recommendRecord1); |
||||
|
list.add(recommendRecord2); |
||||
|
vo.setRecordList(list); |
||||
|
return rb.success().setData(vo); |
||||
|
} |
||||
|
public ResultBean newUserQuota() { |
||||
|
ResultBean rb=new ResultBean().fail(); |
||||
|
List<RecommendNewUserBagVo> s=baseMapper.giftBagGoodsList(); |
||||
|
for (RecommendNewUserBagVo RecommendNewUserBagVo : s) { |
||||
|
List<RecommendNewUserBagDetails> giftBagGoods=recommendNewUserBagDetailsService.list(new QueryWrapper<RecommendNewUserBagDetails>().eq("giftbagSid",RecommendNewUserBagVo.getSid())); |
||||
|
for(RecommendNewUserBagDetails goods:giftBagGoods){ |
||||
|
LpkGoods lpkGoods=lpkGoodsService.getOne(new QueryWrapper<LpkGoods>().eq("sid",goods.getGoodsSid())); |
||||
|
RecommendNewUserBagVo.setWeight(removeZeros(String.valueOf(Double.valueOf(lpkGoods.getWeight())*Double.valueOf(goods.getGoodsNumber())+Double.valueOf(RecommendNewUserBagVo.getWeight())))); |
||||
|
} |
||||
|
RecommendNewUserBagVo.setIconUrl(fileUploadComponent.getUrlPrefix() +RecommendNewUserBagVo.getIconUrl()); |
||||
|
} |
||||
|
return rb.success().setData(s); |
||||
|
} |
||||
|
public ResultBean<List<GiftBagGoodss>> getGoodsByBagSid(String bagSid) { |
||||
|
ResultBean rb=new ResultBean().fail(); |
||||
|
List<GiftBagGoodss> s=baseMapper.getGoodsByBagSid(bagSid); |
||||
|
return rb.success().setData(s); |
||||
|
} |
||||
|
/** |
||||
|
* 去除多余.0 |
||||
|
* @param num |
||||
|
* @return |
||||
|
*/ |
||||
|
public static String removeZeros(String num) { |
||||
|
if (num.indexOf(".") > 0) { |
||||
|
// 去掉多余的0
|
||||
|
num = num.replaceAll("0+?$", ""); |
||||
|
// 如果最后一位是. 则去掉
|
||||
|
num = num.replaceAll("[.]$", ""); |
||||
|
} |
||||
|
return num; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,36 @@ |
|||||
|
package com.yxt.yythmall.biz.recommendnewuserbagdetails; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
||||
|
import com.yxt.yythmall.api.appletgiftbag.GiftBagGoods; |
||||
|
import com.yxt.yythmall.api.recommendnewuserbagdetails.RecommendNewUserBagDetails; |
||||
|
import com.yxt.yythmall.api.recommendnewuserbagdetails.RecommendNewUserBagDetailsVo; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
import org.apache.ibatis.annotations.Param; |
||||
|
import org.apache.ibatis.annotations.Select; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* @author wangpengfei |
||||
|
* @date 2023/11/21 15:03 |
||||
|
*/ |
||||
|
@Mapper |
||||
|
public interface RecommendNewUserBagDetailsMapper extends BaseMapper<RecommendNewUserBagDetails> { |
||||
|
|
||||
|
|
||||
|
int deleteGoodsByBagSid(@Param("sid") String sid); |
||||
|
|
||||
|
@Select("select goods.name as goodsName,bads.goodsNumber ,bads.goodsSid,goods.picUrl,goods.price,goods.unitName,goods.remarks " + |
||||
|
" from applet_giftbag_goods bads left join lpk_goods goods on goods.sid =bads.goodsSid where bads.giftbagSid=#{sid}") |
||||
|
List<RecommendNewUserBagDetailsVo> getGoodsByBagSid(String sid); |
||||
|
|
||||
|
@Select("select goods.name as name,bads.goodsNumber ,bads.goodsSid,goods.picUrl as iconUrl,goods.price as jPrice,goods.unitName,goods.content as remark " + |
||||
|
" ,goods.weight, goods.specificationUnit from applet_giftbag_goods bads left join lpk_goods goods on goods.sid =bads.goodsSid where bads.giftbagSid=#{sid}") |
||||
|
List<GiftBagGoods> getGoodsByBagSidA(String sid); |
||||
|
@Select("select goods.name as name,bads.goodsNumber ,bads.goodsSid,goods.picUrl as iconUrl,goods.price as jPrice,goods.unitName,goods.content as remark " + |
||||
|
" ,goods.weight, goods.specificationUnit from applet_giftbag_goods bads left join lpk_goods goods on goods.sid =bads.goodsSid where bads.giftbagSid=#{sid}") |
||||
|
List<GiftBagGoods> getGoodsByBagSidB(String sid); |
||||
|
List<RecommendNewUserBagDetails> getRecordsByBagSid(@Param("sid") String sid); |
||||
|
|
||||
|
int saveBagGoods(@Param("bagGoods") List<RecommendNewUserBagDetails> bagGoods); |
||||
|
} |
@ -0,0 +1,24 @@ |
|||||
|
<?xml version="1.0" encoding="UTF-8" ?> |
||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
||||
|
<mapper namespace="com.yxt.yythmall.biz.recommendnewuserbagdetails.RecommendNewUserBagDetailsMapper"> |
||||
|
<!-- <where> ${ew.sqlSegment} </where>--> |
||||
|
<!-- ${ew.customSqlSegment} --> |
||||
|
|
||||
|
<delete id="deleteGoodsByBagSid"> |
||||
|
DELETE |
||||
|
FROM recommend_newuser_bag_details |
||||
|
WHERE giftbagSid = #{sid} |
||||
|
</delete> |
||||
|
<select id="getRecordsByBagSid" resultType="com.yxt.yythmall.api.recommendnewuserbagdetails.RecommendNewUserBagDetails"> |
||||
|
select * |
||||
|
from recommend_newuser_bag_details |
||||
|
WHERE giftbagSid = #{sid} |
||||
|
</select> |
||||
|
<insert id="saveBagGoods" parameterType="java.util.List"> |
||||
|
insert into recommend_newuser_bag_details(sid,createTime,giftbagSid,goodsSid,goodsNumber) |
||||
|
values |
||||
|
<foreach collection="bagGoods" item="item" index="index" separator=","> |
||||
|
(#{item.sid},#{item.createTime},#{item.giftbagSid},#{item.goodsSid},#{item.goodsNumber}) |
||||
|
</foreach> |
||||
|
</insert> |
||||
|
</mapper> |
@ -0,0 +1,24 @@ |
|||||
|
package com.yxt.yythmall.biz.recommendnewuserbagdetails; |
||||
|
|
||||
|
import io.swagger.annotations.Api; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.RequestMapping; |
||||
|
import org.springframework.web.bind.annotation.RestController; |
||||
|
|
||||
|
/** |
||||
|
* @author wangpengfei |
||||
|
* @date 2023/11/21 15:03 |
||||
|
*/ |
||||
|
|
||||
|
@Api(tags = "礼包包含商品信息") |
||||
|
@RestController |
||||
|
@RequestMapping("recobagdetails") |
||||
|
public class RecommendNewUserBagDetailsRest { |
||||
|
|
||||
|
@Autowired |
||||
|
RecommendNewUserBagDetailsService recommendNewUserBagDetailsService; |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
} |
@ -0,0 +1,40 @@ |
|||||
|
package com.yxt.yythmall.biz.recommendnewuserbagdetails; |
||||
|
|
||||
|
import com.yxt.common.base.service.MybatisBaseService; |
||||
|
import com.yxt.yythmall.api.appletgiftbag.GiftBagGoods; |
||||
|
import com.yxt.yythmall.api.recommendnewuserbagdetails.RecommendNewUserBagDetails; |
||||
|
import com.yxt.yythmall.api.recommendnewuserbagdetails.RecommendNewUserBagDetailsVo; |
||||
|
import org.springframework.stereotype.Service; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* @author wangpengfei |
||||
|
* @date 2023/11/21 15:03 |
||||
|
*/ |
||||
|
@Service |
||||
|
public class RecommendNewUserBagDetailsService extends MybatisBaseService<RecommendNewUserBagDetailsMapper, RecommendNewUserBagDetails> { |
||||
|
|
||||
|
public int deleteGoodsByBagSid(String sid) { |
||||
|
return baseMapper.deleteGoodsByBagSid(sid); |
||||
|
} |
||||
|
|
||||
|
public List<RecommendNewUserBagDetails> getRecordsByBagSid(String sid) { |
||||
|
return baseMapper.getRecordsByBagSid(sid); |
||||
|
} |
||||
|
|
||||
|
public List<RecommendNewUserBagDetailsVo> getGoodsByBagSid(String sid) { |
||||
|
return baseMapper.getGoodsByBagSid(sid); |
||||
|
} |
||||
|
public List<GiftBagGoods> getGoodsByBagSidA(String sid) { |
||||
|
return baseMapper.getGoodsByBagSidA(sid); |
||||
|
} |
||||
|
public List<GiftBagGoods> getGoodsByBagSidB(String sid) { |
||||
|
return baseMapper.getGoodsByBagSidB(sid); |
||||
|
} |
||||
|
|
||||
|
public int saveBagGoods(List<RecommendNewUserBagDetails> bagGoods) { |
||||
|
return baseMapper.saveBagGoods(bagGoods); |
||||
|
} |
||||
|
|
||||
|
} |
@ -0,0 +1,37 @@ |
|||||
|
package com.yxt.yythmall.biz.vegecallerreserveorder; |
||||
|
|
||||
|
import com.fasterxml.jackson.annotation.JsonFormat; |
||||
|
import com.yxt.common.core.vo.Vo; |
||||
|
import com.yxt.yythmall.api.lpkreserveorder.OrderGoodsVo; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.util.ArrayList; |
||||
|
import java.util.Date; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* @author Fan |
||||
|
* @description |
||||
|
* @date 2023/11/27 15:11 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class ReserveOrderVo implements Vo { |
||||
|
private String reserveDate; |
||||
|
private String customerSid; |
||||
|
private String storeSid; |
||||
|
private String storeName; |
||||
|
private String storeLinker; |
||||
|
private String storePhone; |
||||
|
private String storeAddress; |
||||
|
private String affiliation; |
||||
|
private String userName; |
||||
|
private String userPhone; |
||||
|
private String bankSid; |
||||
|
private String bankName; |
||||
|
private String bankLinker; |
||||
|
private String bankPhone; |
||||
|
private String bankAddress; |
||||
|
private String goodsSid; |
||||
|
private String goodsName; |
||||
|
private String goodsNumber; |
||||
|
} |
Loading…
Reference in new issue