Browse Source

Merge remote-tracking branch 'origin/master'

master
djz236@163.com 1 year ago
parent
commit
c3c09149dd
  1. 30
      docs/databases/table_create-vege.sql
  2. 1207
      docs/databases/yxt_lpk_yythmall-pms-20240120150330.sql
  3. 371
      docs/databases/将卡中数据导入到账户中.sql
  4. 158
      docs/databases/将卡中数据导入到账户中20240123.sql
  5. 67331
      docs/databases/数据备份/yxt_lpk_yyth-全部-20240121162617.sql
  6. 62
      docs/databases/菜窖明细.sql
  7. 41
      src/main/java/com/yxt/yythmall/adminapi/AdminBankRest.java
  8. 28
      src/main/java/com/yxt/yythmall/adminapi/AdminReserveRest.java
  9. 6
      src/main/java/com/yxt/yythmall/api/appletgiftbag/AppletGiftBagVo.java
  10. 4
      src/main/java/com/yxt/yythmall/api/appletgiftbag/GiftBagGoodss.java
  11. 2
      src/main/java/com/yxt/yythmall/api/appletgiftbag/RecommendRecord.java
  12. 2
      src/main/java/com/yxt/yythmall/api/lpkreserveorder/LpkReserveOrder.java
  13. 1
      src/main/java/com/yxt/yythmall/api/lpkreserveorder/LpkReserveOrderQuery.java
  14. 2
      src/main/java/com/yxt/yythmall/api/lpkreserveordergoods/LpkReserveOrderGoods.java
  15. 2
      src/main/java/com/yxt/yythmall/api/newcomerrecorecord/NewcomerRecoRecordDto.java
  16. 6
      src/main/java/com/yxt/yythmall/api/ordorder/OrdOrder.java
  17. 16
      src/main/java/com/yxt/yythmall/api/ordorder/OrdOrderDto.java
  18. 3
      src/main/java/com/yxt/yythmall/api/ordorder/OrdOrderQuery.java
  19. 15
      src/main/java/com/yxt/yythmall/api/ordorder/OrdOrderVo.java
  20. 15
      src/main/java/com/yxt/yythmall/api/ordorderdetails/OrdOrderDetail.java
  21. 12
      src/main/java/com/yxt/yythmall/api/ordorderdetails/OrdOrderDetailVo.java
  22. 35
      src/main/java/com/yxt/yythmall/api/recommendnewuserbag/RecommendNewUserBag.java
  23. 27
      src/main/java/com/yxt/yythmall/api/recommendnewuserbag/RecommendNewUserBagDetailVo.java
  24. 31
      src/main/java/com/yxt/yythmall/api/recommendnewuserbag/RecommendNewUserBagDto.java
  25. 28
      src/main/java/com/yxt/yythmall/api/recommendnewuserbag/RecommendNewUserBagInitVo.java
  26. 15
      src/main/java/com/yxt/yythmall/api/recommendnewuserbag/RecommendNewUserBagQuery.java
  27. 45
      src/main/java/com/yxt/yythmall/api/recommendnewuserbag/RecommendNewUserBagVo.java
  28. 29
      src/main/java/com/yxt/yythmall/api/recommendnewuserbagdetails/RecommendNewUserBagDetails.java
  29. 14
      src/main/java/com/yxt/yythmall/api/recommendnewuserbagdetails/RecommendNewUserBagDetailsDto.java
  30. 15
      src/main/java/com/yxt/yythmall/api/recommendnewuserbagdetails/RecommendNewUserBagDetailsQuery.java
  31. 23
      src/main/java/com/yxt/yythmall/api/recommendnewuserbagdetails/RecommendNewUserBagDetailsVo.java
  32. 1
      src/main/java/com/yxt/yythmall/api/shoppingcart/ShoppingCartVo.java
  33. 2
      src/main/java/com/yxt/yythmall/api/transferrecords/TransferRecords.java
  34. 1
      src/main/java/com/yxt/yythmall/api/transferrecords/TransferRecordsDto.java
  35. 2
      src/main/java/com/yxt/yythmall/api/transferrecords/TransferRecordsVo.java
  36. 3
      src/main/java/com/yxt/yythmall/biz/appletgiftbag/AppletGiftBagMapper.java
  37. 36
      src/main/java/com/yxt/yythmall/biz/appletgiftbag/AppletGiftBagMapper.xml
  38. 2
      src/main/java/com/yxt/yythmall/biz/appletgiftbag/AppletGiftBagRest.java
  39. 34
      src/main/java/com/yxt/yythmall/biz/appletgiftbag/AppletGiftBagService.java
  40. 2
      src/main/java/com/yxt/yythmall/biz/customerstore/CustomerStoreService.java
  41. 19
      src/main/java/com/yxt/yythmall/biz/empcard/EmpCardMapper.xml
  42. 2
      src/main/java/com/yxt/yythmall/biz/empcard/EmpCardService.java
  43. 8
      src/main/java/com/yxt/yythmall/biz/empcardgift/EmpCardGiftMapper.xml
  44. 5
      src/main/java/com/yxt/yythmall/biz/empcardgift/EmpCardGiftService.java
  45. 4
      src/main/java/com/yxt/yythmall/biz/lpkbank/LpkBankService.java
  46. 4
      src/main/java/com/yxt/yythmall/biz/lpkcustomer/LpkCustomerService.java
  47. 21
      src/main/java/com/yxt/yythmall/biz/lpkgiftcard/LpkGiftCardMapper.xml
  48. 5
      src/main/java/com/yxt/yythmall/biz/lpkgiftcard/LpkGiftCardService.java
  49. 6
      src/main/java/com/yxt/yythmall/biz/lpkgoods/LpkGoodsMapper.xml
  50. 18
      src/main/java/com/yxt/yythmall/biz/lpkgoods/LpkGoodsService.java
  51. 6
      src/main/java/com/yxt/yythmall/biz/lpkreserveorder/LpkReserveOrderMapper.java
  52. 440
      src/main/java/com/yxt/yythmall/biz/lpkreserveorder/LpkReserveOrderMapper.xml
  53. 36
      src/main/java/com/yxt/yythmall/biz/lpkreserveorder/LpkReserveOrderService.java
  54. 56
      src/main/java/com/yxt/yythmall/biz/lpkreserveordergoods/LpkReserveOrderGoodsService.java
  55. 12
      src/main/java/com/yxt/yythmall/biz/lpkstore/LpkStoreService.java
  56. 2
      src/main/java/com/yxt/yythmall/biz/newcomerrecorecord/NewcomerRecoRecordMapper.java
  57. 12
      src/main/java/com/yxt/yythmall/biz/newcomerrecorecord/NewcomerRecoRecordRest.java
  58. 58
      src/main/java/com/yxt/yythmall/biz/newcomerrecorecord/NewcomerRecoRecordService.java
  59. 11
      src/main/java/com/yxt/yythmall/biz/ordorder/OrdOrderMapper.java
  60. 110
      src/main/java/com/yxt/yythmall/biz/ordorder/OrdOrderMapper.xml
  61. 27
      src/main/java/com/yxt/yythmall/biz/ordorder/OrdOrderRest.java
  62. 289
      src/main/java/com/yxt/yythmall/biz/ordorder/OrdOrderService.java
  63. 29
      src/main/java/com/yxt/yythmall/biz/recommendnewuserbag/RecommendNewUserBagMapper.java
  64. 62
      src/main/java/com/yxt/yythmall/biz/recommendnewuserbag/RecommendNewUserBagMapper.xml
  65. 79
      src/main/java/com/yxt/yythmall/biz/recommendnewuserbag/RecommendNewUserBagRest.java
  66. 302
      src/main/java/com/yxt/yythmall/biz/recommendnewuserbag/RecommendNewUserBagService.java
  67. 36
      src/main/java/com/yxt/yythmall/biz/recommendnewuserbagdetails/RecommendNewUserBagDetailsMapper.java
  68. 24
      src/main/java/com/yxt/yythmall/biz/recommendnewuserbagdetails/RecommendNewUserBagDetailsMapper.xml
  69. 24
      src/main/java/com/yxt/yythmall/biz/recommendnewuserbagdetails/RecommendNewUserBagDetailsRest.java
  70. 40
      src/main/java/com/yxt/yythmall/biz/recommendnewuserbagdetails/RecommendNewUserBagDetailsService.java
  71. 93
      src/main/java/com/yxt/yythmall/biz/shoppingcart/ShoppingCartService.java
  72. 3
      src/main/java/com/yxt/yythmall/biz/transferrecords/TransferRecordsMapper.java
  73. 61
      src/main/java/com/yxt/yythmall/biz/transferrecords/TransferRecordsMapper.xml
  74. 26
      src/main/java/com/yxt/yythmall/biz/transferrecords/TransferRecordsService.java
  75. 2
      src/main/java/com/yxt/yythmall/biz/transferrecordsgoodsdetails/TransferRecordsGoodsDetailsMapper.java
  76. 2
      src/main/java/com/yxt/yythmall/biz/vegecallerreservedetail/VegeCellarReserveDetailsRest.java
  77. 37
      src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveOrderVo.java
  78. 7
      src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderMapper.java
  79. 32
      src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderMapper.xml
  80. 66
      src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderService.java
  81. 12
      src/main/java/com/yxt/yythmall/biz/vegereplenish/VegeReplenishService.java
  82. 2
      src/main/java/com/yxt/yythmall/biz/vegetablecellar/VegetableCellarRest.java
  83. 26
      src/main/java/com/yxt/yythmall/biz/vegetablecellar/VegetableCellarService.java
  84. 10
      src/main/java/com/yxt/yythmall/config/SaTokenConfigure.java
  85. 2
      src/main/resources/application-pro.yml

30
docs/databases/table_create-vege.sql

@ -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='绑卡记录商品信息';

1207
docs/databases/yxt_lpk_yythmall-pms-20240120150330.sql

File diff suppressed because one or more lines are too long

371
docs/databases/将卡中数据导入到账户中.sql

@ -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

158
docs/databases/将卡中数据导入到账户中20240123.sql

@ -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

67331
docs/databases/数据备份/yxt_lpk_yyth-全部-20240121162617.sql

File diff suppressed because one or more lines are too long

62
docs/databases/菜窖明细.sql

@ -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

41
src/main/java/com/yxt/yythmall/adminapi/AdminBankRest.java

@ -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);
}
}

28
src/main/java/com/yxt/yythmall/adminapi/AdminReserveRest.java

@ -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);
}
}

6
src/main/java/com/yxt/yythmall/api/appletgiftbag/AppletGiftBagVo.java

@ -1,6 +1,7 @@
package com.yxt.yythmall.api.appletgiftbag; package com.yxt.yythmall.api.appletgiftbag;
import com.yxt.common.core.vo.Vo; import com.yxt.common.core.vo.Vo;
import com.yxt.yythmall.api.newcomerrecorecord.NewcomerRecoRecordVo;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
@ -21,6 +22,7 @@ public class AppletGiftBagVo implements Vo {
private String dateStart; private String dateStart;
private String dateEnd; private String dateEnd;
private String price;//礼包总价格 private String price;//礼包总价格
private String prefPrice;//优惠价格
private String iconUrl;//图片 private String iconUrl;//图片
private String isEnable; private String isEnable;
private String isGrounding; private String isGrounding;
@ -28,8 +30,10 @@ public class AppletGiftBagVo implements Vo {
private String remarks; private String remarks;
private String count;// private String count;//
private String goodsSid; private String goodsSid;
private String weight="0";//重量
private List<GiftBagGoods> giftBagGoods; private List<GiftBagGoods> giftBagGoods;
private List<recommendRecord> recordList; private List<RecommendRecord> recordList;
private List<NewcomerRecoRecordVo> newcomerRecoRecordVos;
public String getPrice() { public String getPrice() {
DecimalFormat decimalFormat = new DecimalFormat("#0.00"); DecimalFormat decimalFormat = new DecimalFormat("#0.00");

4
src/main/java/com/yxt/yythmall/api/appletgiftbag/GiftBagGoodss.java

@ -20,12 +20,14 @@ public class GiftBagGoodss {
private String weight; //每份的重量 private String weight; //每份的重量
private String jPrice; //每斤单价 private String jPrice; //每斤单价
private String specificationUnit; //规格单位 private String specificationUnit; //规格单位
private String prefPrice;//优惠价格
private String bagPrice;//礼包价格
private String totalValue; //总价值 private String totalValue; //总价值
private String spec; //总价值 private String spec; //总价值
private String count="0"; //总价值 private String count="0"; //总价值
private String mefenPrice="0"; private String mefenPrice="0";
private boolean showCart=false; private boolean showCart=false;
private String prefPrice;//优惠价格

2
src/main/java/com/yxt/yythmall/api/appletgiftbag/recommendRecord.java → src/main/java/com/yxt/yythmall/api/appletgiftbag/RecommendRecord.java

@ -7,6 +7,6 @@ import lombok.Data;
* @date 2024/1/11 9:29 * @date 2024/1/11 9:29
*/ */
@Data @Data
public class recommendRecord { public class RecommendRecord {
private String content; private String content;
} }

2
src/main/java/com/yxt/yythmall/api/lpkreserveorder/LpkReserveOrder.java

@ -1,5 +1,6 @@
package com.yxt.yythmall.api.lpkreserveorder; package com.yxt.yythmall.api.lpkreserveorder;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
@ -11,6 +12,7 @@ import java.util.UUID;
* @date 2023/11/23 10:29 * @date 2023/11/23 10:29
*/ */
@Data @Data
@TableName("lpk_reserve_order")
public class LpkReserveOrder{ public class LpkReserveOrder{
private String id; private String id;
private String sid= UUID.randomUUID().toString(); private String sid= UUID.randomUUID().toString();

1
src/main/java/com/yxt/yythmall/api/lpkreserveorder/LpkReserveOrderQuery.java

@ -18,4 +18,5 @@ public class LpkReserveOrderQuery implements Query {
private String bankSid; private String bankSid;
private String bankName; private String bankName;
private String serialNumber; private String serialNumber;
private String cardType; //1 家庭 2 亲情卡 3 企业
} }

2
src/main/java/com/yxt/yythmall/api/lpkreserveordergoods/LpkReserveOrderGoods.java

@ -1,5 +1,6 @@
package com.yxt.yythmall.api.lpkreserveordergoods; package com.yxt.yythmall.api.lpkreserveordergoods;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
@ -11,6 +12,7 @@ import java.util.UUID;
* @date 2023/11/23 10:29 * @date 2023/11/23 10:29
*/ */
@Data @Data
@TableName("lpk_reserve_order_goods")
public class LpkReserveOrderGoods { public class LpkReserveOrderGoods {
private String id; private String id;
private String sid= UUID.randomUUID().toString(); private String sid= UUID.randomUUID().toString();

2
src/main/java/com/yxt/yythmall/api/newcomerrecorecord/NewcomerRecoRecordDto.java

@ -26,4 +26,6 @@ public class NewcomerRecoRecordDto implements Dto {
private Date assistanceDate;//助力时间 private Date assistanceDate;//助力时间
private String state; private String state;
private String giftName;//礼包名 private String giftName;//礼包名
private String customerSid;//礼包名
private String orderSid;
} }

6
src/main/java/com/yxt/yythmall/api/ordorder/OrdOrder.java

@ -18,18 +18,20 @@ public class OrdOrder {
private Date createTime; private Date createTime;
private String remarks; private String remarks;
private String mainSid; private String mainSid;
private String outTradeNo;
private int payStatus; private int payStatus;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date payTime; private Date payTime;
private int cardNumber; private int cardNumber;
private int source; private int source;
private String totalTee; private String totalTee;//实际价格
private String openId; private String openId;
private String userSid; private String userSid;
private String name; private String name;
private int timeRemarks; private int timeRemarks;
private String returnUrl; private String returnUrl;
private String vegeCellarType; private String meet;
// private String receivablePrice;//应收价格
} }

16
src/main/java/com/yxt/yythmall/api/ordorder/OrdOrderDto.java

@ -23,15 +23,19 @@ public class OrdOrderDto implements Dto {
private int payStatus; private int payStatus;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date payTime; private Date payTime;
private int cardNumber; private int cardNumber;//卡的张数
private int source; private int source;//来源:0、云菜窖
private String totalTee; private String totalTee;//金额
private String openId; private String openId;//微信唯一标识openid
private String userSid; private String userSid;//用户sid
private String name; private String name;
private int timeRemarks; private int timeRemarks;
private String returnUrl; private String returnUrl;
private String customerSid; private String customerSid;
private String vegeCellarType; //菜窖类型 0 百姓菜窖 1 精品菜窖 2 企业菜窖 private String brandId;
private String bagSid;
private String meet;
// private String receivablePrice;
private List<OrdOrderDetailVo> ordOrderDetailsVoList; private List<OrdOrderDetailVo> ordOrderDetailsVoList;
} }

3
src/main/java/com/yxt/yythmall/api/ordorder/OrdOrderQuery.java

@ -11,5 +11,6 @@ import lombok.Data;
public class OrdOrderQuery implements Query { public class OrdOrderQuery implements Query {
private String startDate; //开始时间 private String startDate; //开始时间
private String endDate; //结束时间 private String endDate; //结束时间
private String countNumber; //总数 private String customerSid; //总数
private String state;
} }

15
src/main/java/com/yxt/yythmall/api/ordorder/OrdOrderVo.java

@ -2,9 +2,11 @@ package com.yxt.yythmall.api.ordorder;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo; import com.yxt.common.core.vo.Vo;
import com.yxt.yythmall.api.ordorderdetails.OrdOrderDetail;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
* @author wangpengfei * @author wangpengfei
@ -18,15 +20,24 @@ public class OrdOrderVo implements Vo {
private Date createTime; private Date createTime;
private String remarks; private String remarks;
private String mainSid; private String mainSid;
private int payStatus; private String outTradeNo;
private int payStatus;//状态
private String payType="微信支付";
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date payTime; private Date payTime;
private int cardNumber; private int cardNumber;
private int source; private int source;
private String totalTee; private String totalTee;//实付金额
private String meet="0";//应付价格
private String surcharge="0";//附加费
private String openId; private String openId;
private String userSid; private String userSid;
private String name; private String name;
private int timeRemarks; private int timeRemarks;
private String returnUrl; private String returnUrl;
private String count;//商品数
private List<String> picUrls;//图片
List<OrdOrderDetail> ordOrderDetails;
private String endTime;
private PayResult result;
} }

15
src/main/java/com/yxt/yythmall/api/ordorderdetails/OrdOrderDetail.java

@ -1,9 +1,11 @@
package com.yxt.yythmall.api.ordorderdetails; package com.yxt.yythmall.api.ordorderdetails;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
import java.util.List;
import java.util.UUID; import java.util.UUID;
/** /**
@ -19,11 +21,14 @@ public class OrdOrderDetail {
private String remarks; private String remarks;
private String orderSid; private String orderSid;
private String goodsSid; private String goodsSid;
private String goodsName; private String goodsName;//商品名
private int partNumber; private int partNumber; //份数
private double numofPart; private double numofPart;//每份数量
private double priceUnit; private double priceUnit;//
private double pricePart; private double pricePart;//每份价格
@TableField(exist = false)
private String picUrl;//图片
} }

12
src/main/java/com/yxt/yythmall/api/ordorderdetails/OrdOrderDetailVo.java

@ -18,10 +18,10 @@ public class OrdOrderDetailVo implements Vo {
private Date createTime; private Date createTime;
private String remarks; private String remarks;
private String orderSid; private String orderSid;
private String goodsSid; private String goodsSid;//商品Sid
private String goodsName; private String goodsName;//商品名称
private int partNumber; private int partNumber;//份数
private double numofPart; private double numofPart;//每份数量
private double priceUnit; private double priceUnit;//商品单价
private double pricePart; private double pricePart;//每份价格
} }

35
src/main/java/com/yxt/yythmall/api/recommendnewuserbag/RecommendNewUserBag.java

@ -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;
}

27
src/main/java/com/yxt/yythmall/api/recommendnewuserbag/RecommendNewUserBagDetailVo.java

@ -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<>();
}

31
src/main/java/com/yxt/yythmall/api/recommendnewuserbag/RecommendNewUserBagDto.java

@ -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<>();
}

28
src/main/java/com/yxt/yythmall/api/recommendnewuserbag/RecommendNewUserBagInitVo.java

@ -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<>();
}

15
src/main/java/com/yxt/yythmall/api/recommendnewuserbag/RecommendNewUserBagQuery.java

@ -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;
}

45
src/main/java/com/yxt/yythmall/api/recommendnewuserbag/RecommendNewUserBagVo.java

@ -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));
}
}

29
src/main/java/com/yxt/yythmall/api/recommendnewuserbagdetails/RecommendNewUserBagDetails.java

@ -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;
}

14
src/main/java/com/yxt/yythmall/api/recommendnewuserbagdetails/RecommendNewUserBagDetailsDto.java

@ -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 {
}

15
src/main/java/com/yxt/yythmall/api/recommendnewuserbagdetails/RecommendNewUserBagDetailsQuery.java

@ -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 {
}

23
src/main/java/com/yxt/yythmall/api/recommendnewuserbagdetails/RecommendNewUserBagDetailsVo.java

@ -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;
}

1
src/main/java/com/yxt/yythmall/api/shoppingcart/ShoppingCartVo.java

@ -29,6 +29,7 @@ public class ShoppingCartVo implements Vo {
private String unitName; private String unitName;
private String iconUrl; private String iconUrl;
private String specificationUnit; private String specificationUnit;
// private String text;
} }

2
src/main/java/com/yxt/yythmall/api/transferrecords/TransferRecords.java

@ -24,6 +24,8 @@ public class TransferRecords {
private String affiliation;//所属菜窖 private String affiliation;//所属菜窖
private String state;// private String state;//
private String recipientSid;//领取人 private String recipientSid;//领取人
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
private Date recipientTime;//领取人
} }

1
src/main/java/com/yxt/yythmall/api/transferrecords/TransferRecordsDto.java

@ -18,6 +18,7 @@ public class TransferRecordsDto implements Dto {
private String state;// private String state;//
private String recipientSid;//领取人 private String recipientSid;//领取人
private String orderSid; private String orderSid;
private String remarks;
private List<GoodsVo> vos; private List<GoodsVo> vos;
} }

2
src/main/java/com/yxt/yythmall/api/transferrecords/TransferRecordsVo.java

@ -27,4 +27,6 @@ public class TransferRecordsVo implements Vo {
private String goodss; private String goodss;
private String createTime; private String createTime;
private String remarks; private String remarks;
private String fxNick;
private String lqNick;
} }

3
src/main/java/com/yxt/yythmall/biz/appletgiftbag/AppletGiftBagMapper.java

@ -23,6 +23,7 @@ public interface AppletGiftBagMapper extends BaseMapper<AppletGiftBag> {
IPage<AppletGiftBagVo> giftBagListPage(IPage<AppletGiftBag> page, @Param(Constants.WRAPPER) QueryWrapper<AppletGiftBag> qw); IPage<AppletGiftBagVo> giftBagListPage(IPage<AppletGiftBag> page, @Param(Constants.WRAPPER) QueryWrapper<AppletGiftBag> qw);
List<AppletGiftBagVo> giftBagList(); List<AppletGiftBagVo> giftBagList();
List<GiftBagGoodss> giftBagGoodsList(@Param("sid")String sid ); List<AppletGiftBagVo> giftBagGoodsList();
List<GiftBagGoodss> getGoodsByBagSid(@Param("bagSid") String bagSid);
int saveBags(@Param("bags") List<AppletGiftBag> bags); int saveBags(@Param("bags") List<AppletGiftBag> bags);
} }

36
src/main/java/com/yxt/yythmall/biz/appletgiftbag/AppletGiftBagMapper.xml

@ -35,22 +35,28 @@
where isGrounding=1 where isGrounding=1
order by isRecommend desc,createTime desc order by isRecommend desc,createTime desc
</select> </select>
<select id="giftBagGoodsList" resultType="com.yxt.yythmall.api.appletgiftbag.GiftBagGoodss"> <select id="giftBagGoodsList" resultType="com.yxt.yythmall.api.appletgiftbag.AppletGiftBagVo">
select select
s.goodsNumber as goodsNumber, a.sid,
d.`name` , a.name ,
d.unitName, a.iconUrl,
d.price as jPrice, a.price ,
d.price as price, a.preferentialPrice as prefPrice
d.picUrl as iconUrl,
d.specificationUnit,
d.isAppletGrounding,
d.content as remark,
d.weight,
d.sid as goodsSid
from applet_giftbag a from applet_giftbag a
left join applet_giftbag_goods s on s.giftbagSid=a.sid
left join lpk_goods d on d.sid=s.goodsSid
where a.sid=#{sid}
</select> </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 applet_giftbag a
left join applet_giftbag_goods b on b.giftbagSid=a.sid
left join lpk_goods c on c.sid =b.goodsSid
where a.sid=#{bagSid}
</select>
</mapper> </mapper>

2
src/main/java/com/yxt/yythmall/biz/appletgiftbag/AppletGiftBagRest.java

@ -71,7 +71,7 @@ public class AppletGiftBagRest {
public ResultBean getGiftBagBySid(@PathVariable String sid) { public ResultBean getGiftBagBySid(@PathVariable String sid) {
return AppletGiftBagService.getGiftBagBySid(sid); return AppletGiftBagService.getGiftBagBySid(sid);
} }
@ApiOperation("共享家庭卡蔬菜详情") @ApiOperation("")
@GetMapping("/recommendRecord/{sid}") @GetMapping("/recommendRecord/{sid}")
public ResultBean recommendRecord(@PathVariable("sid") String sid) { public ResultBean recommendRecord(@PathVariable("sid") String sid) {
return AppletGiftBagService.recommendRecord(sid); return AppletGiftBagService.recommendRecord(sid);

34
src/main/java/com/yxt/yythmall/biz/appletgiftbag/AppletGiftBagService.java

@ -14,8 +14,7 @@ import com.yxt.common.core.vo.PagerVo;
import com.yxt.yythmall.api.appletgiftbag.*; import com.yxt.yythmall.api.appletgiftbag.*;
import com.yxt.yythmall.api.appletgiftbaggoods.AppletGiftBagGoods; import com.yxt.yythmall.api.appletgiftbaggoods.AppletGiftBagGoods;
import com.yxt.yythmall.api.appletgiftbag.GiftBagGoods; import com.yxt.yythmall.api.appletgiftbag.GiftBagGoods;
import com.yxt.yythmall.api.appletgiftbag.recommendRecord; import com.yxt.yythmall.api.appletgiftbag.RecommendRecord;
import com.yxt.yythmall.api.lpkgiftcard.LpkGiftCardQuery;
import com.yxt.yythmall.api.lpkgoods.LpkGoods; import com.yxt.yythmall.api.lpkgoods.LpkGoods;
import com.yxt.yythmall.biz.appletgiftbaggoods.AppletGiftBagGoodsService; import com.yxt.yythmall.biz.appletgiftbaggoods.AppletGiftBagGoodsService;
import com.yxt.yythmall.biz.lpkgoods.LpkGoodsService; import com.yxt.yythmall.biz.lpkgoods.LpkGoodsService;
@ -24,7 +23,6 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.math.RoundingMode;
import java.text.DecimalFormat; import java.text.DecimalFormat;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
@ -253,13 +251,13 @@ public class AppletGiftBagService extends MybatisBaseService<AppletGiftBagMapper
AppletGiftBag bag=baseMapper.selectOne(new QueryWrapper<AppletGiftBag>().eq("sid","e49555f2-5370-45b0-9637-aa4d54c22e31")); AppletGiftBag bag=baseMapper.selectOne(new QueryWrapper<AppletGiftBag>().eq("sid","e49555f2-5370-45b0-9637-aa4d54c22e31"));
vo.setRemarks(bag.getRemarks()); vo.setRemarks(bag.getRemarks());
vo.setIconUrl(fileUploadComponent.getUrlPrefix() +bag.getIconUrl()); vo.setIconUrl(fileUploadComponent.getUrlPrefix() +bag.getIconUrl());
recommendRecord recommendRecord=new recommendRecord(); RecommendRecord recommendRecord=new RecommendRecord();
recommendRecord.setContent("梧桐居助力您获得7斤白菜"); recommendRecord.setContent("梧桐居助力您获得7斤白菜");
recommendRecord recommendRecord1=new recommendRecord(); RecommendRecord recommendRecord1=new RecommendRecord();
recommendRecord1.setContent("龙助力您获得7斤白菜"); recommendRecord1.setContent("龙助力您获得7斤白菜");
recommendRecord recommendRecord2=new recommendRecord(); RecommendRecord recommendRecord2=new RecommendRecord();
recommendRecord2.setContent("美人助力您获得15斤土豆"); recommendRecord2.setContent("美人助力您获得15斤土豆");
List<recommendRecord> list=new ArrayList<>(); List<RecommendRecord> list=new ArrayList<>();
list.add(recommendRecord); list.add(recommendRecord);
list.add(recommendRecord1); list.add(recommendRecord1);
list.add(recommendRecord2); list.add(recommendRecord2);
@ -268,18 +266,22 @@ public class AppletGiftBagService extends MybatisBaseService<AppletGiftBagMapper
} }
public ResultBean newUserQuota() { public ResultBean newUserQuota() {
ResultBean rb=new ResultBean().fail(); ResultBean rb=new ResultBean().fail();
// List<GiftBagGoodss> giftBagGoodss=baseMapper.getAllGoodsApplets(query); List<AppletGiftBagVo> s=baseMapper.giftBagGoodsList();
for (AppletGiftBagVo appletGiftBagVo : s) {
List<GiftBagGoodss> s=baseMapper.giftBagGoodsList("e49555f2-5370-45b0-9637-aa4d54c22e31"); List<AppletGiftBagGoods> giftBagGoods=appletGiftBagGoodsService.list(new QueryWrapper<AppletGiftBagGoods>().eq("giftbagSid",appletGiftBagVo.getSid()));
for (GiftBagGoodss giftBagGoodss : s) { for(AppletGiftBagGoods goods:giftBagGoods){
giftBagGoodss.setIconUrl(fileUploadComponent.getUrlPrefix() +giftBagGoodss.getIconUrl()); LpkGoods lpkGoods=lpkGoodsService.getOne(new QueryWrapper<LpkGoods>().eq("sid",goods.getGoodsSid()));
giftBagGoodss.setMefenPrice(String.valueOf((int)(Double.valueOf(giftBagGoodss.getPrice())*Double.valueOf(giftBagGoodss.getWeight())))); appletGiftBagVo.setWeight(removeZeros(String.valueOf(Double.valueOf(lpkGoods.getWeight())*Double.valueOf(goods.getGoodsNumber())+Double.valueOf(appletGiftBagVo.getWeight()))));
giftBagGoodss.setPrefPrice(String.valueOf((Integer.valueOf(giftBagGoodss.getMefenPrice())*0.5))); }
giftBagGoodss.setPrefPrice(removeZeros(giftBagGoodss.getPrefPrice())); appletGiftBagVo.setIconUrl(fileUploadComponent.getUrlPrefix() +appletGiftBagVo.getIconUrl());
} }
return rb.success().setData(s); 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 * 去除多余.0
* @param num * @param num

2
src/main/java/com/yxt/yythmall/biz/customerstore/CustomerStoreService.java

@ -43,8 +43,6 @@ public class CustomerStoreService extends MybatisBaseService<CustomerStoreMapper
vo1.setStoreSid(list.getSid()); vo1.setStoreSid(list.getSid());
vo1.setBusinessHours(list.getBusinessHours()); vo1.setBusinessHours(list.getBusinessHours());
vo1.setStoreName(list.getName()); vo1.setStoreName(list.getName());
vo1.setName("张三");
vo1.setPhone("11111111111");
vo1=getStart(vo1); vo1=getStart(vo1);
return rb.success().setData(vo1); return rb.success().setData(vo1);
} }

19
src/main/java/com/yxt/yythmall/biz/empcard/EmpCardMapper.xml

@ -159,7 +159,8 @@
FROM emp_card card FROM emp_card card
LEFT JOIN lpk_giftbag bag on card.giftbagSid = bag.sid LEFT JOIN lpk_giftbag bag on card.giftbagSid = bag.sid
left join lpk_giftbag_goods s on bag.sid = s.giftbagSid left join lpk_giftbag_goods s on bag.sid = s.giftbagSid
where card.sid = #{sid} and s.goodsSid=#{goodsSid} where card.sid = #{sid}
and s.goodsSid = #{goodsSid}
</select> </select>
<select id="cardStatisticsList" resultType="com.yxt.yythmall.api.empcard.EmpCardVo"> <select id="cardStatisticsList" resultType="com.yxt.yythmall.api.empcard.EmpCardVo">
SELECT SELECT
@ -232,15 +233,13 @@
</where> </where>
</select> </select>
<select id="getGoodsList" resultType="com.yxt.yythmall.api.vegetablecellar.vegeVo"> <select id="getGoodsList" resultType="com.yxt.yythmall.api.vegetablecellar.vegeVo">
SELECT SELECT e.sid AS goodsSid,
e.sid as goodsSid, e.NAME AS goodsName,
e.name as goodsName, d.goodsNumber AS goodsNumber,
d.goodsNumber as goodsNumber, e.brandId AS brandId,
e.brandId as e.brandId, e.categoryId AS categoryId
e.cetegoryId as cetegoryId FROM emp_card gi
FROM left join lpk_giftbag_goods d on d.giftbagSid = gi.giftbagSid
emp_card_gift gi
left join emp_card_gift_goods d on d.empCardGiftSid=gi.sid
left join lpk_goods e on e.sid = d.goodsSid left join lpk_goods e on e.sid = d.goodsSid
where gi.sid = #{sid} where gi.sid = #{sid}
</select> </select>

2
src/main/java/com/yxt/yythmall/biz/empcard/EmpCardService.java

@ -139,7 +139,7 @@ public class EmpCardService extends MybatisBaseService<EmpCardMapper, EmpCard> {
return rb.setMsg("该卡已绑定"); return rb.setMsg("该卡已绑定");
} }
lpkGiftCard.setCustomerSid(bindCardDto.getCustomerSid()); lpkGiftCard.setCustomerSid(bindCardDto.getCustomerSid());
lpkGiftCard.setState("2"); lpkGiftCard.setState("3");
lpkGiftCard.setBindDate(new Date()); lpkGiftCard.setBindDate(new Date());
baseMapper.updateById(lpkGiftCard); baseMapper.updateById(lpkGiftCard);
List<vegeVo> k = baseMapper.getGoodsList(lpkGiftCard.getSid()); List<vegeVo> k = baseMapper.getGoodsList(lpkGiftCard.getSid());

8
src/main/java/com/yxt/yythmall/biz/empcardgift/EmpCardGiftMapper.xml

@ -244,11 +244,11 @@
e.sid as goodsSid, e.sid as goodsSid,
e.name as goodsName, e.name as goodsName,
d.goodsNumber as goodsNumber, d.goodsNumber as goodsNumber,
e.brandId as e.brandId, e.brandId as brandId,
e.cetegoryId as cetegoryId e.categoryId as categoryId
FROM FROM
emp_card gi emp_card_gift gi
left join lpk_giftbag_goods d on d.giftbagSid=gi.giftbagSid left join emp_card_gift_goods d on d.empCardGiftSid=gi.sid
left join lpk_goods e on e.sid =d.goodsSid left join lpk_goods e on e.sid =d.goodsSid
where gi.sid=#{sid} where gi.sid=#{sid}
</select> </select>

5
src/main/java/com/yxt/yythmall/biz/empcardgift/EmpCardGiftService.java

@ -120,7 +120,7 @@ public class EmpCardGiftService extends MybatisBaseService<EmpCardGiftMapper, Em
return rb.setMsg("该卡已绑定"); return rb.setMsg("该卡已绑定");
} }
empCardGift.setCustomerSid(bindCardDto.getCustomerSid()); empCardGift.setCustomerSid(bindCardDto.getCustomerSid());
empCardGift.setState("2"); empCardGift.setState("3");
empCardGift.setIsShare("3"); empCardGift.setIsShare("3");
empCardGift.setBindDate(new Date()); empCardGift.setBindDate(new Date());
baseMapper.updateById(empCardGift); baseMapper.updateById(empCardGift);
@ -1175,6 +1175,9 @@ public class EmpCardGiftService extends MybatisBaseService<EmpCardGiftMapper, Em
} }
} }
} }
order.setPayStatus(4);
order.setPayTime(new Date());
ordOrderService.updateById(order);
return rb.success(); return rb.success();
} }

4
src/main/java/com/yxt/yythmall/biz/lpkbank/LpkBankService.java

@ -1,6 +1,7 @@
package com.yxt.yythmall.biz.lpkbank; package com.yxt.yythmall.biz.lpkbank;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
@ -68,4 +69,7 @@ public class LpkBankService extends MybatisBaseService<LpkBankMapper, LpkBank> {
} }
public List<LpkBank> listAllBank() {
return baseMapper.selectList(null);
}
} }

4
src/main/java/com/yxt/yythmall/biz/lpkcustomer/LpkCustomerService.java

@ -105,7 +105,7 @@ public class LpkCustomerService extends MybatisBaseService<LpkCustomerMapper, Lp
newCustomer.setIsNewUser("1"); newCustomer.setIsNewUser("1");
newCustomer.setPhoto("headImage.png"); newCustomer.setPhoto("headImage.png");
LpkCustomer lpkCustomer1 = baseMapper.selectOwn(); LpkCustomer lpkCustomer1 = baseMapper.selectOwn();
newCustomer.setNick("小主000"+ (Integer.valueOf(lpkCustomer1.getId()).intValue() +1)); newCustomer.setNick("惠享客户000"+ (Integer.valueOf(lpkCustomer1.getId()).intValue() +1));
baseMapper.insert(newCustomer); baseMapper.insert(newCustomer);
// return rb.setData(newCustomer).setCode("110"); // return rb.setData(newCustomer).setCode("110");
StpUtil.login(newCustomer.getId()); StpUtil.login(newCustomer.getId());
@ -124,7 +124,7 @@ public class LpkCustomerService extends MybatisBaseService<LpkCustomerMapper, Lp
lpkCustomer = fetchBySid(lpkCustomer.getSid()); lpkCustomer = fetchBySid(lpkCustomer.getSid());
} }
if(StringUtils.isBlank(lpkCustomer.getNick())){ if(StringUtils.isBlank(lpkCustomer.getNick())){
lpkCustomer.setNick("小主000"+lpkCustomer.getId()); lpkCustomer.setNick("惠享客户000"+lpkCustomer.getId());
baseMapper.updateById(lpkCustomer); baseMapper.updateById(lpkCustomer);
lpkCustomer = fetchBySid(lpkCustomer.getSid()); lpkCustomer = fetchBySid(lpkCustomer.getSid());
} }

21
src/main/java/com/yxt/yythmall/biz/lpkgiftcard/LpkGiftCardMapper.xml

@ -17,8 +17,7 @@
<select id="getGifCardsByCustomerSid" resultType="com.yxt.yythmall.api.lpkgiftcard.AppletVo"> <select id="getGifCardsByCustomerSid" resultType="com.yxt.yythmall.api.lpkgiftcard.AppletVo">
SELECT SELECT card.sid as sid,
card.sid as sid,
card.state AS state, card.state AS state,
CASE CASE
card.state card.state
@ -49,8 +48,7 @@
LEFT JOIN lpk_giftbag bag ON card.giftbagSid = bag.sid LEFT JOIN lpk_giftbag bag ON card.giftbagSid = bag.sid
WHERE card.customerSid = #{customerSid} WHERE card.customerSid = #{customerSid}
UNION UNION
SELECT SELECT card.sid as sid,
card.sid as sid,
card.state AS state, card.state AS state,
CASE card.state CASE card.state
WHEN 3 THEN '未提货' WHEN 3 THEN '未提货'
@ -82,8 +80,7 @@
LEFT JOIN lpk_giftbag gif ON gif.sid = emp.giftbagSid LEFT JOIN lpk_giftbag gif ON gif.sid = emp.giftbagSid
WHERE card.customerSid = #{customerSid} WHERE card.customerSid = #{customerSid}
UNION UNION
SELECT SELECT card.sid as sid,
card.sid as sid,
card.state AS state, card.state AS state,
CASE CASE
card.state card.state
@ -325,15 +322,13 @@
</where> </where>
</select> </select>
<select id="getGoodsList" resultType="com.yxt.yythmall.api.vegetablecellar.vegeVo"> <select id="getGoodsList" resultType="com.yxt.yythmall.api.vegetablecellar.vegeVo">
SELECT SELECT e.sid as goodsSid,
e.sid as goodsSid,
e.name as goodsName, e.name as goodsName,
d.goodsNumber as goodsNumber, d.goodsNumber as goodsNumber,
e.brandId as e.brandId, e.brandId as brandId,
e.cetegoryId as cetegoryId e.categoryId as categoryId
FROM FROM lpk_giftcard gi
lpk_giftcard gi left join lpk_giftbag_goods d on d.giftbagSid = gi.giftbagSid
left join emp_card_gift_goods d on d.empCardGiftSid=gi.sid
left join lpk_goods e on e.sid = d.goodsSid left join lpk_goods e on e.sid = d.goodsSid
where gi.sid = #{sid} where gi.sid = #{sid}
</select> </select>

5
src/main/java/com/yxt/yythmall/biz/lpkgiftcard/LpkGiftCardService.java

@ -201,12 +201,11 @@ public class LpkGiftCardService extends MybatisBaseService<LpkGiftCardMapper, Lp
baseMapper.updateById(lpkGiftCard); baseMapper.updateById(lpkGiftCard);
List<vegeVo> k = baseMapper.getGoodsList(lpkGiftCard.getSid()); List<vegeVo> k = baseMapper.getGoodsList(lpkGiftCard.getSid());
VegetableCellarDto dto = new VegetableCellarDto(); VegetableCellarDto dto = new VegetableCellarDto();
//生成绑卡流水
//加入菜窖 //加入菜窖
dto.setCustomerSid(dto.getCustomerSid()); dto.setCustomerSid(bindCardDto.getCustomerSid());
dto.setVos(k); dto.setVos(k);
vegetableCellarService.save1Goods(dto); vegetableCellarService.save1Goods(dto);
//生成绑卡流水
vegeReplenishService.saveBindRecord(bindCardDto, "0"); vegeReplenishService.saveBindRecord(bindCardDto, "0");
return rb.success().setMsg("绑定成功"); return rb.success().setMsg("绑定成功");
} }

6
src/main/java/com/yxt/yythmall/biz/lpkgoods/LpkGoodsMapper.xml

@ -94,8 +94,8 @@
s.weight , s.weight ,
r.goodsNumber as goodsNumber r.goodsNumber as goodsNumber
FROM FROM
lpk_goods s vegetable_cellar r
LEFT JOIN vegetable_cellar r ON s.sid = r.goodsSid LEFT JOIN lpk_goods s ON s.sid = r.goodsSid
WHERE WHERE
r.customerSid =#{query.customerSid} and r.affiliation =#{query.affiliation} r.customerSid =#{query.customerSid} and r.affiliation =#{query.affiliation}
</select> </select>
@ -125,6 +125,6 @@
order by createTime desc order by createTime desc
</select> </select>
<select id="getType" resultType="com.yxt.yythmall.api.lpkgoods.GoodsTypeVo"> <select id="getType" resultType="com.yxt.yythmall.api.lpkgoods.GoodsTypeVo">
select name , id as id from pms_product_category where parent_id=0 select name , id as id from pms_product_category where parent_id=0 and show_status=1
</select> </select>
</mapper> </mapper>

18
src/main/java/com/yxt/yythmall/biz/lpkgoods/LpkGoodsService.java

@ -266,7 +266,7 @@ public class LpkGoodsService extends MybatisBaseService<LpkGoodsMapper, LpkGoods
if(l.size()==0){ if(l.size()==0){
giftBagGoodss.forEach(d->{ giftBagGoodss.forEach(d->{
// d.setIconUrl(fileUploadComponent.getUrlPrefix()+d.getIconUrl()); // d.setIconUrl(fileUploadComponent.getUrlPrefix()+d.getIconUrl());
d.setMefenPrice(String.valueOf((int)(Double.valueOf(d.getPrice())* Double.valueOf(d.getWeight())))); d.setMefenPrice(removeZeros(String.valueOf((Double.valueOf(d.getPrice())* Double.valueOf(d.getWeight())))));
}); });
}else{ }else{
l.forEach(s->{ l.forEach(s->{
@ -275,11 +275,25 @@ public class LpkGoodsService extends MybatisBaseService<LpkGoodsMapper, LpkGoods
d.setGoodsNumber(s.getGoodsNumber()); d.setGoodsNumber(s.getGoodsNumber());
} }
// d.setIconUrl(fileUploadComponent.getUrlPrefix()+d.getIconUrl()); // d.setIconUrl(fileUploadComponent.getUrlPrefix()+d.getIconUrl());
d.setMefenPrice(String.valueOf((int)(Double.valueOf(d.getPrice())* Double.valueOf(d.getWeight())))); d.setMefenPrice(removeZeros(String.valueOf((Double.valueOf(d.getPrice())* Double.valueOf(d.getWeight())))));
}); });
}); });
} }
return rb.success().setData(giftBagGoodss); return rb.success().setData(giftBagGoodss);
} }
/**
* 去除多余.0
* @param num
* @return
*/
public static String removeZeros(String num) {
if (num.indexOf(".") > 0) {
// 去掉多余的0
num = num.replaceAll("0+?$", "");
// 如果最后一位是. 则去掉
num = num.replaceAll("[.]$", "");
}
return num;
}
} }

6
src/main/java/com/yxt/yythmall/biz/lpkreserveorder/LpkReserveOrderMapper.java

@ -18,6 +18,9 @@ import java.util.List;
@Mapper @Mapper
public interface LpkReserveOrderMapper extends BaseMapper<LpkReserveOrder> { public interface LpkReserveOrderMapper extends BaseMapper<LpkReserveOrder> {
IPage<LpkReserveOrderVo> orderList(IPage<LpkReserveOrder> page,@Param("qw") LpkReserveOrderQuery qw); IPage<LpkReserveOrderVo> orderList(IPage<LpkReserveOrder> page,@Param("qw") LpkReserveOrderQuery qw);
IPage<LpkReserveOrderVo> orderList1(IPage<LpkReserveOrder> page,@Param("qw") LpkReserveOrderQuery qw);
IPage<LpkReserveOrderVo> orderList2(IPage<LpkReserveOrder> page,@Param("qw") LpkReserveOrderQuery qw);
IPage<LpkReserveOrderVo> orderList3(IPage<LpkReserveOrder> page,@Param("qw") LpkReserveOrderQuery qw);
IPage<LpkReserveOrderVo> orderListByStore(IPage<LpkReserveOrder> page, @Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrder> qw); IPage<LpkReserveOrderVo> orderListByStore(IPage<LpkReserveOrder> page, @Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrder> qw);
IPage<LpkReserveOrderVo> orderListByBank(IPage<LpkReserveOrder> page, @Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrder> qw); IPage<LpkReserveOrderVo> orderListByBank(IPage<LpkReserveOrder> page, @Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrder> qw);
IPage<LpkReserveOrderVo> orderListByZ(IPage<LpkReserveOrder> page, @Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrder> qw); IPage<LpkReserveOrderVo> orderListByZ(IPage<LpkReserveOrder> page, @Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrder> qw);
@ -27,6 +30,9 @@ public interface LpkReserveOrderMapper extends BaseMapper<LpkReserveOrder> {
IPage<LpkReserveOrderCardVo> orderListByUserSid(IPage<LpkReserveOrder> page, @Param("userSid")String userSid); IPage<LpkReserveOrderCardVo> orderListByUserSid(IPage<LpkReserveOrder> page, @Param("userSid")String userSid);
List<ReserveOrderExport> exportExcel(@Param("qw") LpkReserveOrderQuery qw); List<ReserveOrderExport> exportExcel(@Param("qw") LpkReserveOrderQuery qw);
List<ReserveOrderExport> exportExcel1(@Param("qw") LpkReserveOrderQuery qw);
List<ReserveOrderExport> exportExcel2(@Param("qw") LpkReserveOrderQuery qw);
List<ReserveOrderExport> exportExcel3(@Param("qw") LpkReserveOrderQuery qw);
List<ReserveOrderExportByStore> exportExcelByStore(@Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrderQuery> qw); List<ReserveOrderExportByStore> exportExcelByStore(@Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrderQuery> qw);
List<ReserveOrderExportByBank> exportExcelByBank(@Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrderQuery> qw); List<ReserveOrderExportByBank> exportExcelByBank(@Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrderQuery> qw);
List<ReserveOrderExportByZ> exportExcelByZ(@Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrderQuery> qw); List<ReserveOrderExportByZ> exportExcelByZ(@Param(Constants.WRAPPER) QueryWrapper<LpkReserveOrderQuery> qw);

440
src/main/java/com/yxt/yythmall/biz/lpkreserveorder/LpkReserveOrderMapper.xml

@ -32,7 +32,7 @@
s.sid as ssid, s.sid as ssid,
c.serialNumber, c.serialNumber,
case o.cardType case o.cardType
when 1 then '家庭' when 1 then '家庭菜窖'
end cardType end cardType
FROM FROM
lpk_reserve_order AS o lpk_reserve_order AS o
@ -42,9 +42,6 @@
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
<where> <where>
o.cardType='1' o.cardType='1'
<if test="qw.bankSid !='' and qw.bankSid!=null">
and s.bankSid=#{qw.bankSid}
</if>
<if test="qw.store !='' and qw.store!=null"> <if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store} and s.name=#{qw.store}
</if> </if>
@ -69,7 +66,7 @@
s.sid as ssid, s.sid as ssid,
c.serialNumber, c.serialNumber,
case o.cardType case o.cardType
when 2 then '亲情' when 2 then '亲情菜窖'
end cardType end cardType
FROM FROM
lpk_reserve_order AS o lpk_reserve_order AS o
@ -106,7 +103,118 @@
s.sid as ssid, s.sid as ssid,
c.serialNumber, c.serialNumber,
case o.cardType case o.cardType
when 3 then '企业卡' when 3 then '企业菜窖'
end cardType
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN emp_card AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
<where>
o.cardType='3'
<if test="qw.bankSid !='' and qw.bankSid!=null">
and s.bankSid=#{qw.bankSid}
</if>
<if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store}
</if>
<if test="qw.startDate !='' and qw.startDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d')>=date_format(#{qw.startDate},'%Y-%m-%d')
</if>
<if test="qw.endDate !='' and qw.endDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if>
</where>
order by reserveDate asc,dsid desc,ssid desc,serialNumber asc
</select>
<select id="orderList1" resultType="com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderVo">
SELECT
o.sid,
date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
o.userName,
o.userPhone,
s.`name` AS store,
b.`name` AS bagName,
d.NAME AS bankName,
c.`code`,
d.sid as dsid,
s.sid as ssid,
c.serialNumber,
case o.cardType
when 1 then '家庭菜窖'
end cardType
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
<where>
o.cardType='1'
<if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store}
</if>
<if test="qw.startDate !='' and qw.startDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d')>=date_format(#{qw.startDate},'%Y-%m-%d')
</if>
<if test="qw.endDate !='' and qw.endDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if>
</where>
order by reserveDate asc,dsid desc,ssid desc,serialNumber asc
</select>
<select id="orderList2" resultType="com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderVo">
SELECT
o.sid,
date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
o.userName,
o.userPhone,
s.`name` AS store,
b.`name` AS bagName,
d.NAME AS bankName,
c.`code`,
d.sid as dsid,
s.sid as ssid,
c.serialNumber,
case o.cardType
when 2 then '亲情菜窖'
end cardType
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN emp_card_gift AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.sid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
<where>
o.cardType='2'
<if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store}
</if>
<if test="qw.startDate !='' and qw.startDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d')>=date_format(#{qw.startDate},'%Y-%m-%d')
</if>
<if test="qw.endDate !='' and qw.endDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if>
</where>
order by reserveDate asc,dsid desc,ssid desc,serialNumber asc
</select>
<select id="orderList3" resultType="com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderVo">
SELECT
o.sid,
date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
o.userName,
o.userPhone,
s.`name` AS store,
b.`name` AS bagName,
d.NAME AS bankName,
c.`code`,
d.sid as dsid,
s.sid as ssid,
c.serialNumber,
case o.cardType
when 3 then '企业菜窖'
end cardType end cardType
FROM FROM
lpk_reserve_order AS o lpk_reserve_order AS o
@ -114,7 +222,18 @@
LEFT JOIN emp_card AS c ON o.cardSid = c.sid LEFT JOIN emp_card AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
WHERE o.cardType='3' <where>
o.cardType='3'
<if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store}
</if>
<if test="qw.startDate !='' and qw.startDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d')>=date_format(#{qw.startDate},'%Y-%m-%d')
</if>
<if test="qw.endDate !='' and qw.endDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if>
</where>
order by reserveDate asc,dsid desc,ssid desc,serialNumber asc order by reserveDate asc,dsid desc,ssid desc,serialNumber asc
</select> </select>
<select id="orderListByStore" resultType="com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderVo"> <select id="orderListByStore" resultType="com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderVo">
@ -126,20 +245,18 @@
d.name as bankName, d.name as bankName,
t.goodsSid as goodsSid, t.goodsSid as goodsSid,
sum(t.goodsNumber) as goodsNumber, sum(t.goodsNumber) as goodsNumber,
d.linker, s.linker,
d.linkPhone, s.phone as linkPhone,
d.address, s.address,
e.`name` as goodsName, e.`name` as goodsName,
case o.cardType case o.cardType
when 1 then '家庭' when 1 then '家庭菜窖'
when 2 then '亲情' when 2 then '亲情菜窖'
when 3 then '企业' when 3 then '企业菜窖'
end cardType end cardType
from lpk_reserve_order as o from lpk_reserve_order as o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
left join lpk_store as s on o.storeSid = s.sid left join lpk_store as s on o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
left join lpk_bank as d on d.sid =s.bankSid left join lpk_bank as d on d.sid =s.bankSid
left join lpk_goods e on e.sid= t.goodsSid left join lpk_goods e on e.sid= t.goodsSid
<where> <where>
@ -155,20 +272,18 @@
d.name as bankName, d.name as bankName,
t.goodsSid as goodsSid, t.goodsSid as goodsSid,
sum(t.goodsNumber) as goodsNumber, sum(t.goodsNumber) as goodsNumber,
s.linker, d.linker,
s.phone as linkPhone, d.linkPhone as linkPhone,
s.address, d.address,
case o.cardType case o.cardType
when 1 then '家庭' when 1 then '家庭菜窖'
when 2 then '亲情' when 2 then '亲情菜窖'
when 3 then '企业' when 3 then '企业菜窖'
end cardType, end cardType,
e.`name` as goodsName e.`name` as goodsName
from lpk_reserve_order as o from lpk_reserve_order as o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
left join lpk_store as s on o.storeSid = s.sid left join lpk_store as s on o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
left join lpk_bank as d on d.sid =s.bankSid left join lpk_bank as d on d.sid =s.bankSid
left join lpk_goods e on e.sid= t.goodsSid left join lpk_goods e on e.sid= t.goodsSid
<where> <where>
@ -185,17 +300,15 @@
t.goodsSid as goodsSid, t.goodsSid as goodsSid,
sum(t.goodsNumber) as goodsNumber, sum(t.goodsNumber) as goodsNumber,
case o.cardType case o.cardType
when 1 then '家庭' when 1 then '家庭菜窖'
when 2 then '亲情' when 2 then '亲情菜窖'
when 3 then '企业' when 3 then '企业菜窖'
end cardType, end cardType,
e.`name` as goodsName e.`name` as goodsName
FROM FROM
lpk_reserve_order AS o lpk_reserve_order AS o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
LEFT JOIN lpk_goods e on e.sid =t.goodsSid LEFT JOIN lpk_goods e on e.sid =t.goodsSid
<where> <where>
@ -249,7 +362,8 @@
o.sid as orderSid, o.sid as orderSid,
o.userName, o.userName,
o.userPhone,c.serialNumber as serialNumber, o.userPhone,c.serialNumber as serialNumber,
o.sid o.sid,
s.phone
FROM lpk_reserve_order AS o FROM lpk_reserve_order AS o
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
@ -269,7 +383,8 @@
o.sid as orderSid, o.sid as orderSid,
o.userName, o.userName,
o.userPhone,c.serialNumber as serialNumber, o.userPhone,c.serialNumber as serialNumber,
o.sid o.sid,
s.phone
FROM lpk_reserve_order AS o FROM lpk_reserve_order AS o
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN emp_card_gift AS c ON o.cardSid = c.sid LEFT JOIN emp_card_gift AS c ON o.cardSid = c.sid
@ -289,7 +404,8 @@
o.sid as orderSid, o.sid as orderSid,
o.userName, o.userName,
o.userPhone,c.serialNumber as serialNumber, o.userPhone,c.serialNumber as serialNumber,
o.sid o.sid,
s.phone
FROM lpk_reserve_order AS o FROM lpk_reserve_order AS o
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN emp_card AS c ON o.cardSid = c.sid LEFT JOIN emp_card AS c ON o.cardSid = c.sid
@ -300,30 +416,77 @@
ORDER BY reserveDate DESC ORDER BY reserveDate DESC
</select> </select>
<select id="exportExcel" resultType="com.yxt.yythmall.api.lpkreserveorder.ReserveOrderExport"> <select id="exportExcel" resultType="com.yxt.yythmall.api.lpkreserveorder.ReserveOrderExport">
select SELECT
o.sid, o.sid,
date_format(o.reserveDate, '%Y-%m-%d') as reserveDate, date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
o.userName, o.userName,
o.userPhone, o.userPhone,
s.`name` AS store,
b.`name` AS bagName,
d.NAME AS bankName,
c.`code`,
d.sid as dsid, d.sid as dsid,
s.sid as ssid, s.sid as ssid,
s.`name` as store, c.serialNumber,
b.`name` as bagName, case o.cardType
d.name as bankName, when 1 then '家庭菜窖'
c.`code`,c.serialNumber, end cardType,
t.goodsSid as goodsSid, t.goodsSid as goodsSid,
t.goodsNumber as goodsNumber, t.goodsNumber as goodsNumber,
case o.cardType e.name as goodsName
when 1 then '家庭卡' FROM
end cardType lpk_reserve_order AS o
from lpk_reserve_order as o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
left join lpk_store as s on o.storeSid = s.sid LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
left join lpk_bank as d on d.sid =s.bankSid LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
left join lpk_goods e on e.sid= t.goodsSid
<where> <where>
o.cardType='1' 1=1
and o.cardType='1'
<if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store}
</if>
<if test="qw.startDate !='' and qw.startDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d')>=date_format(#{qw.startDate},'%Y-%m-%d')
</if>
<if test="qw.endDate !='' and qw.endDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if>
</where>
union
SELECT
o.sid,
date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
o.userName,
o.userPhone,
s.`name` AS store,
b.`name` AS bagName,
d.NAME AS bankName,
c.`code`,
d.sid as dsid,
s.sid as ssid,
c.serialNumber,
case o.cardType
when 2 then '亲情菜窖'
end cardType,
t.goodsSid as goodsSid,
t.goodsNumber as goodsNumber,
e.name as goodsName
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN emp_card_gift AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.sid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
left join lpk_goods e on e.sid= t.goodsSid
<where>
1=1
and o.cardType='2'
<if test="qw.bankSid !='' and qw.bankSid!=null"> <if test="qw.bankSid !='' and qw.bankSid!=null">
and s.bankSid=#{qw.bankSid} and s.bankSid=#{qw.bankSid}
</if> </if>
@ -338,30 +501,127 @@
</if> </if>
</where> </where>
union union
select SELECT
o.sid, o.sid,
date_format(o.reserveDate, '%Y-%m-%d') as reserveDate, date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
o.userName, o.userName,
o.userPhone, o.userPhone,
s.`name` AS store,
b.`name` AS bagName,
d.NAME AS bankName,
c.`code`,
d.sid as dsid, d.sid as dsid,
s.sid as ssid, s.sid as ssid,
s.`name` as store, c.serialNumber,
b.`name` as bagName, case o.cardType
d.name as bankName, when 3 then '企业菜窖'
c.`code`,c.serialNumber, end cardType,
t.goodsSid as goodsSid, t.goodsSid as goodsSid,
t.goodsNumber as goodsNumber, t.goodsNumber as goodsNumber,
e.name as goodsName
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN emp_card AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
left join lpk_goods e on e.sid= t.goodsSid
<where>
1=1
and o.cardType='3'
<if test="qw.bankSid !='' and qw.bankSid!=null">
and s.bankSid=#{qw.bankSid}
</if>
<if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store}
</if>
<if test="qw.startDate !='' and qw.startDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d')>=date_format(#{qw.startDate},'%Y-%m-%d')
</if>
<if test="qw.endDate !='' and qw.endDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if>
</where>
order by reserveDate asc,dsid desc,ssid desc,serialNumber asc
</select>
<select id="exportExcel1" resultType="com.yxt.yythmall.api.lpkreserveorder.ReserveOrderExport">
SELECT
o.sid,
date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
o.userName,
o.userPhone,
s.`name` AS store,
b.`name` AS bagName,
d.NAME AS bankName,
c.`code`,
d.sid as dsid,
s.sid as ssid,
c.serialNumber,
case o.cardType case o.cardType
when 2 then '亲情卡' when 1 then '家庭菜窖'
end cardType end cardType,
from lpk_reserve_order as o t.goodsSid as goodsSid,
t.goodsNumber as goodsNumber,
e.name as goodsName
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
left join lpk_store as s on o.storeSid = s.sid LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
left join lpk_goods e on e.sid= t.goodsSid
<where>
1=1
and o.cardType='1'
<if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store}
</if>
<if test="qw.startDate !='' and qw.startDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d')>=date_format(#{qw.startDate},'%Y-%m-%d')
</if>
<if test="qw.endDate !='' and qw.endDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if>
</where>
order by reserveDate asc,dsid desc,ssid desc,serialNumber asc
</select>
<select id="exportExcel2" resultType="com.yxt.yythmall.api.lpkreserveorder.ReserveOrderExport">
SELECT
o.sid,
date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
o.userName,
o.userPhone,
s.`name` AS store,
b.`name` AS bagName,
d.NAME AS bankName,
c.`code`,
d.sid as dsid,
s.sid as ssid,
c.serialNumber,
case o.cardType
when 2 then '亲情菜窖'
end cardType,
t.goodsSid as goodsSid,
t.goodsNumber as goodsNumber,
e.name as goodsName
FROM
lpk_reserve_order AS o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN emp_card_gift AS c ON o.cardSid = c.sid LEFT JOIN emp_card_gift AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.sid = b.sid LEFT JOIN lpk_giftbag AS b ON c.sid = b.sid
left join lpk_bank as d on d.sid =s.bankSid LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
left join lpk_goods e on e.sid= t.goodsSid
<where> <where>
o.cardType='2' 1=1
and o.cardType='2'
<if test="qw.bankSid !='' and qw.bankSid!=null"> <if test="qw.bankSid !='' and qw.bankSid!=null">
and s.bankSid=#{qw.bankSid} and s.bankSid=#{qw.bankSid}
</if> </if>
@ -375,7 +635,9 @@
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d') and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if> </if>
</where> </where>
union order by reserveDate asc,dsid desc,ssid desc,serialNumber asc
</select>
<select id="exportExcel3" resultType="com.yxt.yythmall.api.lpkreserveorder.ReserveOrderExport">
SELECT SELECT
o.sid, o.sid,
date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate, date_format( o.reserveDate, '%Y-%m-%d' ) AS reserveDate,
@ -389,15 +651,37 @@
s.sid as ssid, s.sid as ssid,
c.serialNumber, c.serialNumber,
case o.cardType case o.cardType
when 3 then '企业卡' when 3 then '企业菜窖'
end cardType end cardType,
t.goodsSid as goodsSid,
t.goodsNumber as goodsNumber,
e.name as goodsName
FROM FROM
lpk_reserve_order AS o lpk_reserve_order AS o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN emp_card AS c ON o.cardSid = c.sid LEFT JOIN emp_card AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
WHERE o.cardType='3' left join lpk_goods e on e.sid= t.goodsSid
<where>
1=1
and o.cardType='3'
<if test="qw.bankSid !='' and qw.bankSid!=null">
and s.bankSid=#{qw.bankSid}
</if>
<if test="qw.store !='' and qw.store!=null">
and s.name=#{qw.store}
</if>
<if test="qw.startDate !='' and qw.startDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d')>=date_format(#{qw.startDate},'%Y-%m-%d')
</if>
<if test="qw.endDate !='' and qw.endDate!=null">
and date_format(o.reserveDate,'%Y-%m-%d') &lt;= date_format(#{qw.endDate},'%Y-%m-%d')
</if>
</where>
order by reserveDate asc,dsid desc,ssid desc,serialNumber asc order by reserveDate asc,dsid desc,ssid desc,serialNumber asc
</select> </select>
<select id="exportExcelByStore" resultType="com.yxt.yythmall.api.lpkreserveorder.ReserveOrderExportByStore"> <select id="exportExcelByStore" resultType="com.yxt.yythmall.api.lpkreserveorder.ReserveOrderExportByStore">
@ -409,20 +693,18 @@
d.name as bankName, d.name as bankName,
t.goodsSid as goodsSid, t.goodsSid as goodsSid,
sum(t.goodsNumber) as goodsNumber, sum(t.goodsNumber) as goodsNumber,
d.linker, s.linker,
d.linkPhone, s.phone as linkPhone,
d.address, s.address,
case o.cardType case o.cardType
when 1 then '家庭' when 1 then '家庭菜窖'
when 2 then '亲情' when 2 then '亲情菜窖'
when 3 then '企业' when 3 then '企业菜窖'
end cardType, end cardType,
e.name as goodsName e.name as goodsName
from lpk_reserve_order as o from lpk_reserve_order as o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
left join lpk_store as s on o.storeSid = s.sid left join lpk_store as s on o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
left join lpk_bank as d on d.sid =s.bankSid left join lpk_bank as d on d.sid =s.bankSid
left join lpk_goods e on e.sid= t.goodsSid left join lpk_goods e on e.sid= t.goodsSid
<where> <where>
@ -438,20 +720,18 @@
d.name as bankName, d.name as bankName,
t.goodsSid as goodsSid, t.goodsSid as goodsSid,
sum(t.goodsNumber) as goodsNumber, sum(t.goodsNumber) as goodsNumber,
s.linker, d.linker,
s.phone as linkPhone, d.linkPhone as linkPhone,
s.address, d.address,
case o.cardType case o.cardType
when 1 then '家庭' when 1 then '家庭菜窖'
when 2 then '亲情' when 2 then '亲情菜窖'
when 3 then '企业' when 3 then '企业菜窖'
end cardType, end cardType,
e.name as goodsName e.name as goodsName
from lpk_reserve_order as o from lpk_reserve_order as o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
left join lpk_store as s on o.storeSid = s.sid left join lpk_store as s on o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
left join lpk_bank as d on d.sid =s.bankSid left join lpk_bank as d on d.sid =s.bankSid
left join lpk_goods e on e.sid= t.goodsSid left join lpk_goods e on e.sid= t.goodsSid
<where> <where>
@ -468,17 +748,15 @@
t.goodsSid as goodsSid, t.goodsSid as goodsSid,
sum(t.goodsNumber) as goodsNumber, sum(t.goodsNumber) as goodsNumber,
case o.cardType case o.cardType
when 1 then '家庭' when 1 then '家庭菜窖'
when 2 then '亲情' when 2 then '亲情菜窖'
when 3 then '企业' when 3 then '企业菜窖'
end cardType, end cardType,
e.name as goodsName e.name as goodsName
FROM FROM
lpk_reserve_order AS o lpk_reserve_order AS o
LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid LEFT JOIN lpk_reserve_order_goods AS t ON t.orderSid = o.sid
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid LEFT JOIN lpk_bank AS d ON d.sid = s.bankSid
left join lpk_goods e on e.sid= t.goodsSid left join lpk_goods e on e.sid= t.goodsSid
<where> <where>

36
src/main/java/com/yxt/yythmall/biz/lpkreserveorder/LpkReserveOrderService.java

@ -8,6 +8,7 @@ import com.alibaba.excel.write.metadata.style.WriteCellStyle;
import com.alibaba.excel.write.style.HorizontalCellStyleStrategy; import com.alibaba.excel.write.style.HorizontalCellStyleStrategy;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.base.utils.PagerUtil;
@ -108,7 +109,16 @@ public class LpkReserveOrderService extends MybatisBaseService<LpkReserveOrderMa
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
LpkReserveOrderQuery query = pq.getParams(); LpkReserveOrderQuery query = pq.getParams();
IPage<LpkReserveOrder> page = PagerUtil.queryToPage(pq); IPage<LpkReserveOrder> page = PagerUtil.queryToPage(pq);
IPage<LpkReserveOrderVo> pagging = baseMapper.orderList(page, query); IPage<LpkReserveOrderVo> pagging=new Page<>();
if(StringUtils.isBlank(query.getCardType())){
pagging= baseMapper.orderList(page, query);
}else if(query.getCardType().equals("1")){
pagging= baseMapper.orderList1(page, query);
}else if(query.getCardType().equals("2")){
pagging= baseMapper.orderList2(page, query);
}else if(query.getCardType().equals("3")){
pagging= baseMapper.orderList3(page, query);
}
List<LpkReserveOrderVo> records = pagging.getRecords(); List<LpkReserveOrderVo> records = pagging.getRecords();
if (!records.isEmpty()) { if (!records.isEmpty()) {
records.forEach(s -> { records.forEach(s -> {
@ -354,12 +364,22 @@ public class LpkReserveOrderService extends MybatisBaseService<LpkReserveOrderMa
public void exportExcel(LpkReserveOrderQuery query) { public void exportExcel(LpkReserveOrderQuery query) {
//得到所有要导出的数据 //得到所有要导出的数据
List<ReserveOrderExport> exportList = baseMapper.exportExcel(query); List<ReserveOrderExport> exportList = new ArrayList<>();
List<ReserveOrderExport> exportList1 = new ArrayList<>(); List<ReserveOrderExport> exportList1 = new ArrayList<>();
if (!exportList.isEmpty()) { if(StringUtils.isBlank(query.getCardType())){
exportList.forEach(s -> { exportList= baseMapper.exportExcel( query);
LpkGoods lpkGoods = lpkGoodsService.fetchBySid(s.getGoodsSid()); }else if(query.getCardType().equals("1")){
s.setGoodsName(lpkGoods.getName()); exportList= baseMapper.exportExcel1( query);
}else if(query.getCardType().equals("2")){
exportList= baseMapper.exportExcel2( query);
}else if(query.getCardType().equals("3")){
exportList= baseMapper.exportExcel3( query);
}
// if (!exportList.isEmpty()) {
// exportList.forEach(s -> {
// LpkGoods lpkGoods = lpkGoodsService.fetchBySid(s.getGoodsSid());
// s.setGoodsName(lpkGoods.getName());
// if (StringUtils.isNotBlank(s.getUserPhone())) { // if (StringUtils.isNotBlank(s.getUserPhone())) {
//// String phone = s.getUserPhone().substring(0, 3) + "****" + s.getUserPhone().substring(7); //// String phone = s.getUserPhone().substring(0, 3) + "****" + s.getUserPhone().substring(7);
// String phone = s.getUserPhone(); // String phone = s.getUserPhone();
@ -398,8 +418,8 @@ public class LpkReserveOrderService extends MybatisBaseService<LpkReserveOrderMa
// } // }
// } // }
// } // }
}); // });
} // }
//定义导出的excel名字 //定义导出的excel名字
//定义导出的excel名字 //定义导出的excel名字
String excelName = "订单明细.xlsx"; String excelName = "订单明细.xlsx";

56
src/main/java/com/yxt/yythmall/biz/lpkreserveordergoods/LpkReserveOrderGoodsService.java

@ -47,34 +47,34 @@ public class LpkReserveOrderGoodsService extends MybatisBaseService<LpkReserveOr
baseMapper.insert(goods); baseMapper.insert(goods);
} }
} }
AppletVo vo = lpkGiftCardService.getGifCardBySid(dto.getSid()).getData(); // AppletVo vo = lpkGiftCardService.getGifCardBySid(dto.getSid()).getData();
int i=0; // int i=0;
for (com.yxt.yythmall.api.lpkgiftcard.GoodsVo vo1 : vo.getGoodsVos()) { // for (com.yxt.yythmall.api.lpkgiftcard.GoodsVo vo1 : vo.getGoodsVos()) {
EmpCardGiftGoodsVo goods1=empCardGiftGoodsService.recordListGoods(dto.getSid(),vo1.getGoodsSid()).getData(); // EmpCardGiftGoodsVo goods1=empCardGiftGoodsService.recordListGoods(dto.getSid(),vo1.getGoodsSid()).getData();
LpkReserveOrderGoods goods2 = baseMapper.getReserveByCardSid(dto.getSid(), vo1.getGoodsSid()); // LpkReserveOrderGoods goods2 = baseMapper.getReserveByCardSid(dto.getSid(), vo1.getGoodsSid());
double c=0; // double c=0;
if(goods1==null){ // if(goods1==null){
if(goods2==null){ // if(goods2==null){
c=0; // c=0;
}else{ // }else{
c=goods2.getGoodsNumber(); // c=goods2.getGoodsNumber();
} // }
}else{ // }else{
if(goods2==null){ // if(goods2==null){
c=goods1.getGoodsNumber(); // c=goods1.getGoodsNumber();
}else{ // }else{
c=goods2.getGoodsNumber()+goods1.getGoodsNumber(); // c=goods2.getGoodsNumber()+goods1.getGoodsNumber();
} // }
} // }
if (vo1.getNum() <= c) { // if (vo1.getNum() <= c) {
i++; // i++;
} // }
} // }
if (vo.getGoodsVos().size() == i) { // if (vo.getGoodsVos().size() == i) {
lpkGiftCardService.changState(dto.getSid(), "5"); // lpkGiftCardService.changState(dto.getSid(), "5");
} else { // } else {
lpkGiftCardService.changState(dto.getSid(), "4"); // lpkGiftCardService.changState(dto.getSid(), "4");
} // }
return rb.success().setData("预约成功"); return rb.success().setData("预约成功");
} }

12
src/main/java/com/yxt/yythmall/biz/lpkstore/LpkStoreService.java

@ -2,6 +2,7 @@ package com.yxt.yythmall.biz.lpkstore;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateTime;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
@ -69,7 +70,6 @@ public class LpkStoreService extends MybatisBaseService<LpkStoreMapper, LpkStore
} }
/** /**
*
* @return * @return
*/ */
public ResultBean<List<StoreSelect>> getAllStore() { public ResultBean<List<StoreSelect>> getAllStore() {
@ -77,6 +77,7 @@ public class LpkStoreService extends MybatisBaseService<LpkStoreMapper, LpkStore
List<StoreSelect> vos = baseMapper.getAllStore(); List<StoreSelect> vos = baseMapper.getAllStore();
return rb.success().setData(vos); return rb.success().setData(vos);
} }
public ResultBean<List<LpkStoreVo>> getAllStoreByQuery(LpkStoreQuery query) { public ResultBean<List<LpkStoreVo>> getAllStoreByQuery(LpkStoreQuery query) {
ResultBean rb = new ResultBean(); ResultBean rb = new ResultBean();
QueryWrapper<LpkStore> qw = new QueryWrapper<>(); QueryWrapper<LpkStore> qw = new QueryWrapper<>();
@ -88,6 +89,7 @@ public class LpkStoreService extends MybatisBaseService<LpkStoreMapper, LpkStore
List<LpkStoreVo> vos = baseMapper.getAllStoreByQuery(qw); List<LpkStoreVo> vos = baseMapper.getAllStoreByQuery(qw);
return rb.success().setData(vos); return rb.success().setData(vos);
} }
public ResultBean updateIsEnable(String sid, String isEnable) { public ResultBean updateIsEnable(String sid, String isEnable) {
ResultBean rb = new ResultBean(); ResultBean rb = new ResultBean();
LpkStore lpkStore = fetchBySid(sid); LpkStore lpkStore = fetchBySid(sid);
@ -101,4 +103,12 @@ public class LpkStoreService extends MybatisBaseService<LpkStoreMapper, LpkStore
List<StoreSelect> vos = baseMapper.getSelectStore(); List<StoreSelect> vos = baseMapper.getSelectStore();
return rb.success().setData(vos); return rb.success().setData(vos);
} }
public List<LpkStore> listStoreOfBank(String bankSid) {
if (StrUtil.isBlank(bankSid))
return this.list();
QueryWrapper<LpkStore> qw = new QueryWrapper<>();
qw.eq("bankSid", bankSid);
return baseMapper.selectList(qw);
}
} }

2
src/main/java/com/yxt/yythmall/biz/newcomerrecorecord/NewcomerRecoRecordMapper.java

@ -26,6 +26,6 @@ public interface NewcomerRecoRecordMapper extends BaseMapper<NewcomerRecoRecord>
List<NewcomerRecoRecord> selInOrderSid(@Param("orderSids") List<String> orderSids); List<NewcomerRecoRecord> selInOrderSid(@Param("orderSids") List<String> orderSids);
@Select("select *,goodsNumber as num from lpk_reserve_order_goods where orderSid=#{orderSid}") @Select("select *,goodsNumber as num from lpk_reserve_order_goods where orderSid=#{orderSid}")
List<NewcomerRecoRecord> selByOrderSids(String orderSid); List<NewcomerRecoRecord> selByOrderSids(String orderSid);
@Select("select * from newcomer_reco_record r where customerSid =#{customerSid} limit 5") @Select("select * from newcomer_reco_record r where r.customerSid =#{customerSid} and recommendedSid is not null limit 5")
List<NewcomerRecoRecordVo> recordList(@Param("customerSid")String customerSid); List<NewcomerRecoRecordVo> recordList(@Param("customerSid")String customerSid);
} }

12
src/main/java/com/yxt/yythmall/biz/newcomerrecorecord/NewcomerRecoRecordRest.java

@ -5,10 +5,8 @@ import com.yxt.yythmall.api.newcomerrecorecord.NewcomerRecoRecordDto;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PathVariable; import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/** /**
* @author wangpengfei * @author wangpengfei
@ -24,15 +22,15 @@ public class NewcomerRecoRecordRest {
@ApiOperation("推荐新人用户") @ApiOperation("推荐新人用户")
@PostMapping("/recommendNewUsers") @PostMapping("/recommendNewUsers")
public ResultBean recommendNewUsers(NewcomerRecoRecordDto dto){ public ResultBean recommendNewUsers(@RequestBody NewcomerRecoRecordDto dto){
return newcomerRecoRecordService.recommendNewUsers(dto); return newcomerRecoRecordService.recommendNewUsers(dto);
} }
@ApiOperation("新人助力") @ApiOperation("新人助力")
@PostMapping("/recommendedAssistance") @PostMapping("/recommendedAssistance")
public ResultBean recommendedAssistance(NewcomerRecoRecordDto dto){ public ResultBean recommendedAssistance(@RequestBody NewcomerRecoRecordDto dto){
return newcomerRecoRecordService.recommendedAssistance(dto); return newcomerRecoRecordService.recommendedAssistance(dto);
} }
@ApiOperation("新人助力") @ApiOperation("新人推荐列表")
@PostMapping("/recordList/{customerSid}") @PostMapping("/recordList/{customerSid}")
public ResultBean recordList(@PathVariable("customerSid") String customerSid){ public ResultBean recordList(@PathVariable("customerSid") String customerSid){
return newcomerRecoRecordService.recordList(customerSid); return newcomerRecoRecordService.recordList(customerSid);

58
src/main/java/com/yxt/yythmall/biz/newcomerrecorecord/NewcomerRecoRecordService.java

@ -4,15 +4,23 @@ import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateTime;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.yythmall.api.appletgiftbag.AppletGiftBag;
import com.yxt.yythmall.api.appletgiftbag.AppletGiftBagVo;
import com.yxt.yythmall.api.appletgiftbag.RecommendRecord;
import com.yxt.yythmall.api.appletgiftbaggoods.AppletGiftBagGoods; import com.yxt.yythmall.api.appletgiftbaggoods.AppletGiftBagGoods;
import com.yxt.yythmall.api.empcardgiftgoods.EmpCardGiftGoodsVo; import com.yxt.yythmall.api.empcardgiftgoods.EmpCardGiftGoodsVo;
import com.yxt.yythmall.api.lpkcustomer.LpkCustomer;
import com.yxt.yythmall.api.lpkgiftcard.AppletVo; import com.yxt.yythmall.api.lpkgiftcard.AppletVo;
import com.yxt.yythmall.api.lpkgiftcard.GoodsVo; import com.yxt.yythmall.api.lpkgiftcard.GoodsVo;
import com.yxt.yythmall.api.lpkgoods.LpkGoods; import com.yxt.yythmall.api.lpkgoods.LpkGoods;
import com.yxt.yythmall.api.newcomerrecorecord.NewcomerRecoRecord; import com.yxt.yythmall.api.newcomerrecorecord.NewcomerRecoRecord;
import com.yxt.yythmall.api.newcomerrecorecord.NewcomerRecoRecordDto; import com.yxt.yythmall.api.newcomerrecorecord.NewcomerRecoRecordDto;
import com.yxt.yythmall.api.newcomerrecorecord.NewcomerRecoRecordVo; import com.yxt.yythmall.api.newcomerrecorecord.NewcomerRecoRecordVo;
import com.yxt.yythmall.api.recommendnewuserbag.RecommendNewUserBag;
import com.yxt.yythmall.api.recommendnewuserbag.RecommendNewUserBagVo;
import com.yxt.yythmall.api.recommendnewuserbagdetails.RecommendNewUserBagDetails;
import com.yxt.yythmall.api.vegetablecellar.VegetableCellarDto; import com.yxt.yythmall.api.vegetablecellar.VegetableCellarDto;
import com.yxt.yythmall.api.vegetablecellar.vegeVo; import com.yxt.yythmall.api.vegetablecellar.vegeVo;
import com.yxt.yythmall.biz.appletgiftbag.AppletGiftBagService; import com.yxt.yythmall.biz.appletgiftbag.AppletGiftBagService;
@ -21,9 +29,12 @@ import com.yxt.yythmall.biz.empcardgiftgoods.EmpCardGiftGoodsService;
import com.yxt.yythmall.biz.lpkcustomer.LpkCustomerService; import com.yxt.yythmall.biz.lpkcustomer.LpkCustomerService;
import com.yxt.yythmall.biz.lpkgiftcard.LpkGiftCardService; import com.yxt.yythmall.biz.lpkgiftcard.LpkGiftCardService;
import com.yxt.yythmall.biz.lpkgoods.LpkGoodsService; import com.yxt.yythmall.biz.lpkgoods.LpkGoodsService;
import com.yxt.yythmall.biz.recommendnewuserbag.RecommendNewUserBagService;
import com.yxt.yythmall.biz.recommendnewuserbagdetails.RecommendNewUserBagDetailsService;
import com.yxt.yythmall.biz.vegetablecellar.VegetableCellarService; import com.yxt.yythmall.biz.vegetablecellar.VegetableCellarService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
@ -45,6 +56,10 @@ public class NewcomerRecoRecordService extends MybatisBaseService<NewcomerRecoRe
VegetableCellarService vegetableCellarService; VegetableCellarService vegetableCellarService;
@Autowired @Autowired
LpkGoodsService lpkGoodsService; LpkGoodsService lpkGoodsService;
@Autowired
RecommendNewUserBagService recommendNewUserBagService;
@Autowired
RecommendNewUserBagDetailsService recommendNewUserBagDetailsService;
public ResultBean<NewcomerRecoRecord> getReserveByCardSid(String carSid, String goodsSid) { public ResultBean<NewcomerRecoRecord> getReserveByCardSid(String carSid, String goodsSid) {
ResultBean rb = new ResultBean(); ResultBean rb = new ResultBean();
NewcomerRecoRecord goods = baseMapper.getReserveByCardSid(carSid, goodsSid); NewcomerRecoRecord goods = baseMapper.getReserveByCardSid(carSid, goodsSid);
@ -54,23 +69,35 @@ public class NewcomerRecoRecordService extends MybatisBaseService<NewcomerRecoRe
public ResultBean recommendNewUsers(NewcomerRecoRecordDto dto) { public ResultBean recommendNewUsers(NewcomerRecoRecordDto dto) {
ResultBean rb = new ResultBean(); ResultBean rb = new ResultBean();
NewcomerRecoRecord newcomerRecoRecord = new NewcomerRecoRecord(); NewcomerRecoRecord newcomerRecoRecord = new NewcomerRecoRecord();
List<RecommendNewUserBag> bags=recommendNewUserBagService.list();
dto.setGiftBagSid(bags.get(0).getSid());
dto.setGiftName(bags.get(0).getName());
BeanUtil.copyProperties(dto, newcomerRecoRecord, "id", "sid"); BeanUtil.copyProperties(dto, newcomerRecoRecord, "id", "sid");
newcomerRecoRecord.setCreateTime(new Date()); newcomerRecoRecord.setCreateTime(new Date());
newcomerRecoRecord.setRecommendSid(dto.getCustomerSid());
baseMapper.insert(newcomerRecoRecord); baseMapper.insert(newcomerRecoRecord);
return rb.success().setData("推荐成功"); return rb.success().setData(newcomerRecoRecord);
} }
@Transactional(rollbackFor = Exception.class)
public ResultBean recommendedAssistance(NewcomerRecoRecordDto dto) { public ResultBean recommendedAssistance(NewcomerRecoRecordDto dto) {
ResultBean rb = new ResultBean(); ResultBean rb = new ResultBean().fail();
LpkCustomer customer=lpkCustomerService.getOne(new QueryWrapper<LpkCustomer>().eq("sid",dto.getCustomerSid()));
if(null==customer){
return rb.setMsg("参数不全");
}
if(!customer.getIsNewUser().equals("1")){
return rb.setMsg("您不是新人");
}
NewcomerRecoRecord newcomerRecoRecord = baseMapper.selectOne(new QueryWrapper<NewcomerRecoRecord>().eq("sid",dto.getSid())); NewcomerRecoRecord newcomerRecoRecord = baseMapper.selectOne(new QueryWrapper<NewcomerRecoRecord>().eq("sid",dto.getSid()));
newcomerRecoRecord.setRecommendedSid(dto.getRecommendedSid()); newcomerRecoRecord.setRecommendedSid(dto.getCustomerSid());
newcomerRecoRecord.setAssistanceDate(new Date()); newcomerRecoRecord.setAssistanceDate(new Date());
baseMapper.updateById(newcomerRecoRecord); baseMapper.updateById(newcomerRecoRecord);
List<AppletGiftBagGoods>list=appletGiftBagGoodsService.list(new QueryWrapper<AppletGiftBagGoods>().eq("giftbagSid",dto.getGiftBagSid())); List<RecommendNewUserBagDetails>list=recommendNewUserBagDetailsService.list(new QueryWrapper<RecommendNewUserBagDetails>().eq("giftbagSid",dto.getGiftBagSid()));
// List<AppletGiftBagGoods>list=appletGiftBagGoodsService.list(new QueryWrapper<AppletGiftBagGoods>().eq("giftbagSid",dto.getGiftBagSid()));
VegetableCellarDto dto1=new VegetableCellarDto(); VegetableCellarDto dto1=new VegetableCellarDto();
dto1.setCustomerSid(dto.getRecommendSid()); dto1.setCustomerSid(customer.getSid());
List<vegeVo> vos=new ArrayList<>(); List<vegeVo> vos=new ArrayList<>();
for (AppletGiftBagGoods appletGiftBagGoods : list) { for (RecommendNewUserBagDetails appletGiftBagGoods : list) {
LpkGoods a=lpkGoodsService.getOne(new QueryWrapper<LpkGoods>().eq("sid",appletGiftBagGoods.getGoodsSid())); LpkGoods a=lpkGoodsService.getOne(new QueryWrapper<LpkGoods>().eq("sid",appletGiftBagGoods.getGoodsSid()));
vegeVo vo=new vegeVo(); vegeVo vo=new vegeVo();
vo.setGoodsSid(appletGiftBagGoods.getGoodsSid()); vo.setGoodsSid(appletGiftBagGoods.getGoodsSid());
@ -80,16 +107,23 @@ public class NewcomerRecoRecordService extends MybatisBaseService<NewcomerRecoRe
} }
dto1.setVos(vos); dto1.setVos(vos);
vegetableCellarService.save1Goods(dto1); vegetableCellarService.save1Goods(dto1);
//改变新人状态
customer.setIsNewUser("0");
lpkCustomerService.updateById(customer);
return rb.success().setData("助力成功"); return rb.success().setData("助力成功");
} }
public ResultBean recordList(String customerSid) { public ResultBean recordList(String customerSid) {
ResultBean rb = new ResultBean(); ResultBean rb = new ResultBean();
RecommendNewUserBagVo vo=new RecommendNewUserBagVo();
List<NewcomerRecoRecordVo> vos=baseMapper.recordList(customerSid); List<NewcomerRecoRecordVo> vos=baseMapper.recordList(customerSid);
for (NewcomerRecoRecordVo newcomerRecoRecordVo : vos) {
// vos.forEach(s->{ RecommendNewUserBag r= recommendNewUserBagService.getOne(new QueryWrapper<RecommendNewUserBag>().eq("sid",newcomerRecoRecordVo.getGiftBagSid()));
// s. //被推荐人的信息
// }); LpkCustomer l= lpkCustomerService.getOne(new QueryWrapper<LpkCustomer>().eq("sid",newcomerRecoRecordVo.getRecommendedSid()));
//推荐人信息
LpkCustomer p=lpkCustomerService.getOne(new QueryWrapper<LpkCustomer>().eq("sid",newcomerRecoRecordVo.getRecommendSid()));
newcomerRecoRecordVo.setRemarks(l.getNick()+"助力您获得"+r.getName());
}
return rb.success().setData("助力成功"); return rb.success().setData("助力成功");
} }
} }

11
src/main/java/com/yxt/yythmall/biz/ordorder/OrdOrderMapper.java

@ -1,8 +1,17 @@
package com.yxt.yythmall.biz.ordorder; package com.yxt.yythmall.biz.ordorder;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.common.core.result.ResultBean;
import com.yxt.yythmall.api.lpkstore.LpkStore;
import com.yxt.yythmall.api.ordorder.OrdOrder; import com.yxt.yythmall.api.ordorder.OrdOrder;
import com.yxt.yythmall.api.ordorder.OrdOrderVo;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/** /**
* @author wangpengfei * @author wangpengfei
@ -10,5 +19,7 @@ import org.apache.ibatis.annotations.Mapper;
*/ */
@Mapper @Mapper
public interface OrdOrderMapper extends BaseMapper<OrdOrder> { public interface OrdOrderMapper extends BaseMapper<OrdOrder> {
IPage<OrdOrderVo> orderList(IPage<OrdOrder> page, @Param(Constants.WRAPPER) QueryWrapper<OrdOrder> qw);
OrdOrderVo getOrderDetails(@Param("sid")String sid);
} }

110
src/main/java/com/yxt/yythmall/biz/ordorder/OrdOrderMapper.xml

@ -4,111 +4,23 @@
<!-- <where> ${ew.sqlSegment} </where>--> <!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} --> <!-- ${ew.customSqlSegment} -->
<select id="storeListPage" resultType="com.yxt.yythmall.api.lpkstore.LpkStoreVo"> <select id="orderList" resultType="com.yxt.yythmall.api.ordorder.OrdOrderVo">
select select
sid, *
date_format(createTime, '%Y-%m-%d') as createTime, from ord_order
code,
`name`,
address,
phone,
businessHours
from lpk_store
<where> <where>
${ew.sqlSegment} ${ew.sqlSegment}
</where> </where>
</select> </select>
<select id="orderList" resultType="com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderVo"> <select id="getOrderDetails" resultType="com.yxt.yythmall.api.ordorder.OrdOrderVo">
select select
o.sid, *
date_format(o.reserveDate, '%Y-%m-%d') as reserveDate, from ord_order
o.userName, where sid=#{sid}
o.userPhone,
s.`name` as store,
b.`name` as bagName,
c.`code`
from lpk_reserve_order as o
left join lpk_store as s on o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
<where>
${ew.sqlSegment}
</where>
</select>
<select id="orderListByStore" resultType="com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderVo">
select
o.sid,
date_format(o.reserveDate, '%Y-%m-%d') as reserveDate,
s.`name` as store,
s.sid as storeSid
from lpk_reserve_order as o
left join lpk_store as s on o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
<where>
${ew.sqlSegment}
</where>
</select>
<select id="orderByCardSid" resultType="com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderCardVo">
SELECT date_format(o.reserveDate, '%Y-%m-%d') as reserveDate,
c.`code`,
s.`name` as store,
b.`name` as bagName,
o.sid as orderSid
FROM lpk_reserve_order AS o
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
WHERE o.cardSid = #{sid}
</select>
<select id="orderListByUserSid" resultType="com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderCardVo">
SELECT date_format(o.reserveDate, '%Y-%m-%d') as reserveDate,
c.`code`,
s.`name` as store,
b.`name` as bagName,
o.cardSid as cardSid,
o.sid as orderSid,
o.userName,
o.userPhone,c.serialNumber as serialNumber,
o.sid
FROM lpk_reserve_order AS o
LEFT JOIN lpk_store AS s ON o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
<where>
${ew.sqlSegment}
</where>
</select>
<select id="exportExcel" resultType="com.yxt.yythmall.api.lpkreserveorder.ReserveOrderExport">
select
o.sid,
date_format(o.reserveDate, '%Y-%m-%d') as reserveDate,
o.userName,
o.userPhone,
s.`name` as store,
b.`name` as bagName,
c.`code`
from lpk_reserve_order as o
left join lpk_store as s on o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
<where>
${ew.sqlSegment}
</where>
</select>
<select id="exportExcelByStore" resultType="com.yxt.yythmall.api.lpkreserveorder.ReserveOrderExportByStore">
select
o.sid,
date_format(o.reserveDate, '%Y-%m-%d') as reserveDate,
s.`name` as store,
s.sid as storeSid
from lpk_reserve_order as o
left join lpk_store as s on o.storeSid = s.sid
LEFT JOIN lpk_giftcard AS c ON o.cardSid = c.sid
LEFT JOIN lpk_giftbag AS b ON c.giftbagSid = b.sid
<where>
${ew.sqlSegment}
</where>
</select> </select>
</mapper> </mapper>

27
src/main/java/com/yxt/yythmall/biz/ordorder/OrdOrderRest.java

@ -1,7 +1,12 @@
package com.yxt.yythmall.biz.ordorder; package com.yxt.yythmall.biz.ordorder;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.yythmall.api.lpkstore.LpkStoreVo;
import com.yxt.yythmall.api.ordorder.OrdOrderDto; import com.yxt.yythmall.api.ordorder.OrdOrderDto;
import com.yxt.yythmall.api.ordorder.OrdOrderQuery;
import com.yxt.yythmall.api.ordorder.OrdOrderVo;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -25,8 +30,28 @@ public class OrdOrderRest {
return ordOrderService.createOrder(dto); return ordOrderService.createOrder(dto);
} }
@PostMapping("/createVegeOrder") @PostMapping("/createVegeOrder")
@ApiOperation(value = "创建订单") @ApiOperation(value = "创建菜窖账户订单")
public ResultBean createVegeOrder(@RequestBody OrdOrderDto dto) { public ResultBean createVegeOrder(@RequestBody OrdOrderDto dto) {
return ordOrderService.createVegeOrder(dto); return ordOrderService.createVegeOrder(dto);
} }
@PostMapping("/createNewUserBagOrder")
@ApiOperation(value = "创建新人限购礼包订单")
public ResultBean createNewUserBagOrder(@RequestBody OrdOrderDto dto) {
return ordOrderService.createNewUserBagOrder(dto);
}
@PostMapping("/ordersList")
@ApiOperation(value = "支付记录")
public ResultBean<PagerVo<OrdOrderVo>> orderList(@RequestBody PagerQuery<OrdOrderQuery> query) {
return ordOrderService.orderList(query);
}
@GetMapping("/OrderDetails/{sid}")
@ApiOperation(value = "支付记录明细")
public ResultBean<OrdOrderVo> getOrderDetails(@PathVariable("sid") String sid) {
return ordOrderService.getOrderDetails(sid);
}
@GetMapping("/changePayState/{sid}")
@ApiOperation(value = "改变订单状态")
public ResultBean changePayState(@PathVariable("sid") String sid) {
return ordOrderService.changePayState(sid);
}
} }

289
src/main/java/com/yxt/yythmall/biz/ordorder/OrdOrderService.java

@ -1,20 +1,42 @@
package com.yxt.yythmall.biz.ordorder; package com.yxt.yythmall.biz.ordorder;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
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.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.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.yythmall.api.appletgiftbag.GiftBagGoodss;
import com.yxt.yythmall.api.lpkcustomer.LpkCustomer;
import com.yxt.yythmall.api.lpkcustomer.LpkCustomerVo; import com.yxt.yythmall.api.lpkcustomer.LpkCustomerVo;
import com.yxt.yythmall.api.lpkgoods.LpkGoods;
import com.yxt.yythmall.api.lpkstore.LpkStore;
import com.yxt.yythmall.api.lpkstore.LpkStoreQuery;
import com.yxt.yythmall.api.lpkstore.LpkStoreVo;
import com.yxt.yythmall.api.ordorder.*; import com.yxt.yythmall.api.ordorder.*;
import com.yxt.yythmall.api.ordorderdetails.OrdOrderDetail; import com.yxt.yythmall.api.ordorderdetails.OrdOrderDetail;
import com.yxt.yythmall.api.ordorderdetails.OrdOrderDetailVo; import com.yxt.yythmall.api.ordorderdetails.OrdOrderDetailVo;
import com.yxt.yythmall.api.shoppingcart.ShoppingCart;
import com.yxt.yythmall.api.shoppingcart.ShoppingCartQuery;
import com.yxt.yythmall.api.shoppingcart.ShoppingCartVo;
import com.yxt.yythmall.biz.appletgiftbag.AppletGiftBagService;
import com.yxt.yythmall.biz.lpkcustomer.LpkCustomerService; import com.yxt.yythmall.biz.lpkcustomer.LpkCustomerService;
import com.yxt.yythmall.biz.lpkgoods.LpkGoodsService;
import com.yxt.yythmall.biz.ordorderdetails.OrdOrderDetailService; import com.yxt.yythmall.biz.ordorderdetails.OrdOrderDetailService;
import com.yxt.yythmall.biz.shoppingcart.ShoppingCartService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.client.RestTemplate; import org.springframework.web.client.RestTemplate;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
/** /**
@ -25,10 +47,21 @@ import java.util.*;
public class OrdOrderService extends MybatisBaseService<OrdOrderMapper, OrdOrder> { public class OrdOrderService extends MybatisBaseService<OrdOrderMapper, OrdOrder> {
private static final String OrderUrl="https://supervise.yxtsoft.com/lpkapi/empcardgift/generateTopEmpCard?mainSid="; private static final String OrderUrl="https://supervise.yxtsoft.com/lpkapi/empcardgift/generateTopEmpCard?mainSid=";
private static final String or="https://supervise.yxtsoft.com/lpkapi/vegetablecellar/addGoods?mainSid=";
@Autowired @Autowired
OrdOrderDetailService ordOrderDetailsService; OrdOrderDetailService ordOrderDetailsService;
@Autowired @Autowired
LpkCustomerService lpkCustomerService; LpkCustomerService lpkCustomerService;
@Autowired
ShoppingCartService shoppingCartService;
@Autowired
LpkGoodsService lpkGoodsService;
@Autowired
AppletGiftBagService appletGiftBagService;
@Autowired
OrdOrderDetailService ordOrderDetailService;
@Autowired
private FileUploadComponent fileUploadComponent;
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@ -47,9 +80,10 @@ public class OrdOrderService extends MybatisBaseService<OrdOrderMapper, OrdOrder
} }
OrdOrder order=new OrdOrder(); OrdOrder order=new OrdOrder();
BeanUtil.copyProperties(dto, order, "id", "sid"); BeanUtil.copyProperties(dto, order, "id", "sid");
order.setCreateTime(new Date());
order.setMainSid(rb2.get("mainSid").toString()); order.setMainSid(rb2.get("mainSid").toString());
order.setPayStatus(1); order.setOutTradeNo(rb2.get("outTradeNo").toString());
order.setPayStatus(2);
order.setPayTime(new Date()); order.setPayTime(new Date());
order.setCardNumber(dto.getCardNumber()); order.setCardNumber(dto.getCardNumber());
order.setSource(0); order.setSource(0);
@ -115,9 +149,30 @@ public class OrdOrderService extends MybatisBaseService<OrdOrderMapper, OrdOrder
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public ResultBean createVegeOrder(OrdOrderDto dto) { public ResultBean createVegeOrder(OrdOrderDto dto) {
String or="";
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
PayResult result=new PayResult(); PayResult result=new PayResult();
List<OrdOrderDetailVo> ordOrderDetailVos=new ArrayList<>();
ShoppingCartQuery query=new ShoppingCartQuery();
query.setCustomerSid(dto.getCustomerSid());
query.setBrandId(dto.getBrandId());
List<ShoppingCartVo> vos=shoppingCartService.shoppingCartList(query).getData();
List<String> strings=new ArrayList<>();
double totalAmount=0;
for (ShoppingCartVo vo : vos) {
OrdOrderDetailVo vo1 =new OrdOrderDetailVo();
LpkGoods goods = lpkGoodsService.getOne(new QueryWrapper<LpkGoods>().eq("sid", vo.getGoodsSid()));
vo1.setGoodsSid(vo.getGoodsSid());
vo1.setGoodsName(vo.getGoodsName());
vo1.setPartNumber(Integer.parseInt(vo.getGoodsNumber()));
vo1.setNumofPart(Double.valueOf(vo.getWeight()));
vo1.setPriceUnit(Double.valueOf(goods.getPrice()));
vo1.setPricePart((Double.valueOf(goods.getPrice())*Double.valueOf(goods.getWeight())));
totalAmount= Double.valueOf(vo1.getPricePart())*Double.valueOf(vo1.getPartNumber())+totalAmount;
ordOrderDetailVos.add(vo1);
strings.add(vo.getSid());
}
dto.setOrdOrderDetailsVoList(ordOrderDetailVos);
Map<String,Object>map =new HashMap<>(); Map<String,Object>map =new HashMap<>();
LpkCustomerVo vo= lpkCustomerService.getCustomerInfo(dto.getCustomerSid()).getData(); LpkCustomerVo vo= lpkCustomerService.getCustomerInfo(dto.getCustomerSid()).getData();
Map<String, Object> sendBody=buildMessageBody( vo.getSid(), vo.getWxMpOpenid(),dto.getTotalTee(),dto.getOrdOrderDetailsVoList(),or); Map<String, Object> sendBody=buildMessageBody( vo.getSid(), vo.getWxMpOpenid(),dto.getTotalTee(),dto.getOrdOrderDetailsVoList(),or);
@ -130,16 +185,17 @@ public class OrdOrderService extends MybatisBaseService<OrdOrderMapper, OrdOrder
} }
OrdOrder order=new OrdOrder(); OrdOrder order=new OrdOrder();
BeanUtil.copyProperties(dto, order, "id", "sid"); BeanUtil.copyProperties(dto, order, "id", "sid");
order.setCreateTime(new Date());
order.setMainSid(rb2.get("mainSid").toString()); order.setMainSid(rb2.get("mainSid").toString());
order.setPayStatus(1); order.setOutTradeNo(rb2.get("outTradeNo").toString());
order.setPayStatus(2);
order.setPayTime(new Date()); order.setPayTime(new Date());
order.setCardNumber(dto.getCardNumber()); order.setCardNumber(dto.getCardNumber());
order.setSource(0); order.setSource(0);
order.setUserSid(vo.getSid()); order.setUserSid(vo.getSid());
order.setOpenId(vo.getWxMpOpenid()); order.setOpenId(vo.getWxMpOpenid());
order.setTotalTee(dto.getTotalTee()); order.setTotalTee(dto.getTotalTee());//实付金额
order.setVegeCellarType(dto.getVegeCellarType()); order.setMeet(removeZeros(String.valueOf(totalAmount)));//应付金额
if(dto.getOrdOrderDetailsVoList().size()>1){ if(dto.getOrdOrderDetailsVoList().size()>1){
order.setName(dto.getOrdOrderDetailsVoList().get(0).getGoodsName().toString()+"等"+(dto.getOrdOrderDetailsVoList().size()-1)+"件商品"); order.setName(dto.getOrdOrderDetailsVoList().get(0).getGoodsName().toString()+"等"+(dto.getOrdOrderDetailsVoList().size()-1)+"件商品");
}else{ }else{
@ -160,6 +216,9 @@ public class OrdOrderService extends MybatisBaseService<OrdOrderMapper, OrdOrder
}); });
ordOrderDetailsService.saveBatch(ordOrders); ordOrderDetailsService.saveBatch(ordOrders);
//生成订单 删除购物车
String [] sids=strings.toArray(new String [0]);
shoppingCartService.delBySids(sids);
if(dto.getOrdOrderDetailsVoList().size()>1){ if(dto.getOrdOrderDetailsVoList().size()>1){
result.setGoods(dto.getOrdOrderDetailsVoList().get(0).getGoodsName().toString()+"等"+(dto.getOrdOrderDetailsVoList().size()-1)+"件商品"); result.setGoods(dto.getOrdOrderDetailsVoList().get(0).getGoodsName().toString()+"等"+(dto.getOrdOrderDetailsVoList().size()-1)+"件商品");
}else{ }else{
@ -193,6 +252,115 @@ public class OrdOrderService extends MybatisBaseService<OrdOrderMapper, OrdOrder
result.setTrade_no_url(tradeNoUrl); result.setTrade_no_url(tradeNoUrl);
String [] a =new String []{"pay"}; String [] a =new String []{"pay"};
result.setBus(a); result.setBus(a);
//新人限购礼包 该状态
LpkCustomer customer=lpkCustomerService.getOne(new QueryWrapper<LpkCustomer>().eq("sid",dto.getCustomerSid()));
customer.setIsPurchase("0");
lpkCustomerService.updateById(customer);
return rb.success().setData(result);
}
@Transactional(rollbackFor = Exception.class)
public ResultBean createNewUserBagOrder(OrdOrderDto dto) {
ResultBean rb = ResultBean.fireFail();
PayResult result=new PayResult();
List<OrdOrderDetailVo> ordOrderDetailVos=new ArrayList<>();
List<GiftBagGoodss> vos=appletGiftBagService.getGoodsByBagSid(dto.getBagSid()).getData();
dto.setTotalTee(vos.get(0).getPrefPrice());
dto.setCardNumber(1);
double totalAmount=0;
for (GiftBagGoodss vo : vos) {
OrdOrderDetailVo vo1 =new OrdOrderDetailVo();
LpkGoods goods = lpkGoodsService.getOne(new QueryWrapper<LpkGoods>().eq("sid", vo.getGoodsSid()));
vo1.setGoodsSid(vo.getGoodsSid());
vo1.setGoodsName(vo.getName());
vo1.setPartNumber(Integer.parseInt(vo.getGoodsNumber()));
vo1.setNumofPart(Double.valueOf(vo.getWeight()));
vo1.setPriceUnit(Double.valueOf(goods.getPrice()));
vo1.setPricePart((Double.valueOf(goods.getPrice())*Double.valueOf(goods.getWeight())));
totalAmount= Double.valueOf(vo1.getPricePart())*Double.valueOf(vo1.getPartNumber())+totalAmount;
ordOrderDetailVos.add(vo1);
}
dto.setOrdOrderDetailsVoList(ordOrderDetailVos);
Map<String,Object>map =new HashMap<>();
LpkCustomerVo vo= lpkCustomerService.getCustomerInfo(dto.getCustomerSid()).getData();
Map<String, Object> sendBody=buildMessageBody( vo.getSid(), vo.getWxMpOpenid(),dto.getTotalTee(),dto.getOrdOrderDetailsVoList(),or);
ResponseEntity<ResultBean> postForEntity=new RestTemplate().postForEntity("https://supervise.yxtsoft.com/wxPay/order/createOrder", sendBody,ResultBean.class);
ResultBean<PayOrderVo> rb1= postForEntity.getBody();
LinkedHashMap rb2= (LinkedHashMap)postForEntity.getBody().getData();
if(!rb1.getCode().equals("200")){
return rb1;
}
OrdOrder order=new OrdOrder();
BeanUtil.copyProperties(dto, order, "id", "sid");
order.setCreateTime(new Date());
order.setMainSid(rb2.get("mainSid").toString());
order.setOutTradeNo(rb2.get("outTradeNo").toString());
order.setPayStatus(2);
order.setPayTime(new Date());
order.setCardNumber(dto.getCardNumber());
order.setSource(0);
order.setUserSid(vo.getSid());
order.setOpenId(vo.getWxMpOpenid());
order.setTotalTee(dto.getTotalTee());
order.setMeet(removeZeros(String.valueOf(totalAmount)));//应付金额
if(dto.getOrdOrderDetailsVoList().size()>1){
order.setName(dto.getOrdOrderDetailsVoList().get(0).getGoodsName().toString()+"等"+(dto.getOrdOrderDetailsVoList().size()-1)+"件商品");
}else{
order.setName(dto.getOrdOrderDetailsVoList().get(0).getGoodsName().toString()+"商品");
}
// order.setName("商品");
order.setTimeRemarks(10);
order.setReturnUrl(or);
baseMapper.insert(order);
List<OrdOrderDetail> ordOrders=new ArrayList<>();
dto.getOrdOrderDetailsVoList().forEach(s->{
OrdOrderDetail ordOrderDetails=new OrdOrderDetail();
BeanUtil.copyProperties(s, ordOrderDetails, "id", "sid");
ordOrderDetails.setOrderSid(order.getSid());
ordOrders.add(ordOrderDetails);
});
ordOrderDetailsService.saveBatch(ordOrders);
//生成订单 删除购物车
if(dto.getOrdOrderDetailsVoList().size()>1){
result.setGoods(dto.getOrdOrderDetailsVoList().get(0).getGoodsName().toString()+"等"+(dto.getOrdOrderDetailsVoList().size()-1)+"件商品");
}else{
result.setGoods(dto.getOrdOrderDetailsVoList().get(0).getGoodsName().toString()+"商品");
}
result.setPrice(dto.getTotalTee());
// result.setOrderId(rbData.getOutTradeNo());
result.setOrderId(rb2.get("outTradeNo").toString());
result.setRemainder(String.valueOf(10*60));
PayUrl payUrl=new PayUrl();
payUrl.setUrl("https://supervise.yxtsoft.com/wxPay/order/pay");
PayParams aVoid=new PayParams();
aVoid.setMainSid(rb2.get("mainSid").toString());
payUrl.setParams(aVoid);
OrderUrl orderUrl=new OrderUrl();
OrderParams orderParams=new OrderParams();
orderParams.setMainSid("");
orderUrl.setParams(orderParams);
TradeNoUrl tradeNoUrl=new TradeNoUrl();
tradeNoUrl.setUrl("https://supervise.yxtsoft.com/wxPay/order/orderQuery");
TradeParams tradeParams=new TradeParams();
tradeParams.setMainSid(rb2.get("mainSid").toString());
tradeNoUrl.setParams(tradeParams);
// result.setOrder_url(orderUrl);
result.setPay_url(payUrl);
result.setTrade_no_url(tradeNoUrl);
String [] a =new String []{"pay"};
result.setBus(a);
//新人限购礼包 该状态
LpkCustomer customer=lpkCustomerService.getOne(new QueryWrapper<LpkCustomer>().eq("sid",dto.getCustomerSid()));
customer.setIsPurchase("0");
lpkCustomerService.updateById(customer);
return rb.success().setData(result); return rb.success().setData(result);
} }
private static Map<String, Object> buildMessageBody(String userSid, String openId, String totalTee, List<OrdOrderDetailVo> detailVos,String returnUrl){ private static Map<String, Object> buildMessageBody(String userSid, String openId, String totalTee, List<OrdOrderDetailVo> detailVos,String returnUrl){
@ -214,4 +382,111 @@ public class OrdOrderService extends MybatisBaseService<OrdOrderMapper, OrdOrder
return mp_template_msg; return mp_template_msg;
} }
public ResultBean<PagerVo<OrdOrderVo>> orderList(PagerQuery<OrdOrderQuery> pq) {
ResultBean rb=new ResultBean().fail();
OrdOrderQuery query = pq.getParams();
IPage<OrdOrder> page = PagerUtil.queryToPage(pq);
QueryWrapper<OrdOrder> qw = new QueryWrapper<>();
if (StringUtils.isBlank(query.getCustomerSid())){
return rb.setMsg("参数不全");
}
if(StringUtils.isNotBlank(query.getState())){
qw.eq("payStatus",query.getState());
}
qw.eq("userSid",query.getCustomerSid());
qw.orderByDesc("createTime");
IPage<OrdOrderVo> pagging = baseMapper.orderList(page, qw);
for (OrdOrderVo record : pagging.getRecords()) {
List<OrdOrderDetail> details=ordOrderDetailService.list(new QueryWrapper<OrdOrderDetail>().eq("orderSid",record.getSid()));
List<String> urls=new ArrayList<>();
for (OrdOrderDetail detail : details) {
LpkGoods lpkGoods=lpkGoodsService.getOne(new QueryWrapper<LpkGoods>().eq("sid",detail.getGoodsSid()));
urls.add(fileUploadComponent.getUrlPrefix()+lpkGoods.getPicUrl());
}
record.setCount(String.valueOf(details.size()));
record.setPicUrls(urls);
}
PagerVo<LpkStoreVo> p = PagerUtil.pageToVo(pagging, null);
return rb.success().setData(p);
}
public ResultBean<OrdOrderVo> getOrderDetails(String sid) {
ResultBean rb=new ResultBean().fail();
OrdOrderVo pagging = baseMapper.getOrderDetails(sid);
List<OrdOrderDetail> details=ordOrderDetailService.list(new QueryWrapper<OrdOrderDetail>().eq("orderSid",pagging.getSid()));
if(StringUtils.isBlank(pagging.getMeet())){
pagging.setMeet(pagging.getTotalTee());
}
DecimalFormat decimalFormat = new DecimalFormat("#0.00");
pagging.setSurcharge(removeZeros(String.valueOf(decimalFormat.format(Double.valueOf(pagging.getTotalTee())-Double.valueOf(pagging.getMeet())))));
for (OrdOrderDetail detail : details) {
LpkGoods lpkGoods=lpkGoodsService.getOne(new QueryWrapper<LpkGoods>().eq("sid",detail.getGoodsSid()));
detail.setPicUrl(fileUploadComponent.getUrlPrefix()+lpkGoods.getPicUrl());
detail.setRemarks(removeZeros(String.valueOf(detail.getNumofPart()))+"斤/份,"+"共"+detail.getPartNumber()+"份");
}
pagging.setOrdOrderDetails(details);
SimpleDateFormat sdf1 =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
pagging.setEndTime(sdf1.format(DateUtil.offsetMinute(pagging.getCreateTime(),pagging.getTimeRemarks())));
if(pagging.getPayStatus()==2){
PayResult result=new PayResult();
if(details.size()>1){
result.setGoods(details.get(0).getGoodsName().toString()+"等"+(details.size()-1)+"件商品");
}else{
result.setGoods(details.get(0).getGoodsName().toString()+"商品");
}
result.setPrice(pagging.getTotalTee());
// result.setOrderId(rbData.getOutTradeNo());
result.setOrderId(pagging.getOutTradeNo());
result.setRemainder(String.valueOf(10*60));
PayUrl payUrl=new PayUrl();
payUrl.setUrl("https://supervise.yxtsoft.com/wxPay/order/pay");
PayParams aVoid=new PayParams();
aVoid.setMainSid(pagging.getMainSid());
payUrl.setParams(aVoid);
OrderUrl orderUrl=new OrderUrl();
OrderParams orderParams=new OrderParams();
orderParams.setMainSid("");
orderUrl.setParams(orderParams);
TradeNoUrl tradeNoUrl=new TradeNoUrl();
tradeNoUrl.setUrl("https://supervise.yxtsoft.com/wxPay/order/orderQuery");
TradeParams tradeParams=new TradeParams();
tradeParams.setMainSid(pagging.getMainSid());
tradeNoUrl.setParams(tradeParams);
// result.setOrder_url(orderUrl);
result.setPay_url(payUrl);
result.setTrade_no_url(tradeNoUrl);
String [] a =new String []{"pay"};
result.setBus(a);
pagging.setResult(result);
}
return rb.success().setData(pagging);
}
public ResultBean changePayState(String sid) {
ResultBean rb=new ResultBean().fail();
OrdOrder order=baseMapper.selectOne(new QueryWrapper<OrdOrder>().eq("sid",sid));
if(order.getPayStatus()==2){
order.setPayStatus(3);
baseMapper.updateById(order);
}
return rb.success().setData(order);
}
/**
* 去除多余.0
* @param num
* @return
*/
public static String removeZeros(String num) {
if (num.indexOf(".") > 0) {
// 去掉多余的0
num = num.replaceAll("0+?$", "");
// 如果最后一位是. 则去掉
num = num.replaceAll("[.]$", "");
}
return num;
}
} }

29
src/main/java/com/yxt/yythmall/biz/recommendnewuserbag/RecommendNewUserBagMapper.java

@ -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);
}

62
src/main/java/com/yxt/yythmall/biz/recommendnewuserbag/RecommendNewUserBagMapper.xml

@ -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>

79
src/main/java/com/yxt/yythmall/biz/recommendnewuserbag/RecommendNewUserBagRest.java

@ -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();
}
}

302
src/main/java/com/yxt/yythmall/biz/recommendnewuserbag/RecommendNewUserBagService.java

@ -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;
}
}

36
src/main/java/com/yxt/yythmall/biz/recommendnewuserbagdetails/RecommendNewUserBagDetailsMapper.java

@ -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);
}

24
src/main/java/com/yxt/yythmall/biz/recommendnewuserbagdetails/RecommendNewUserBagDetailsMapper.xml

@ -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>

24
src/main/java/com/yxt/yythmall/biz/recommendnewuserbagdetails/RecommendNewUserBagDetailsRest.java

@ -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;
}

40
src/main/java/com/yxt/yythmall/biz/recommendnewuserbagdetails/RecommendNewUserBagDetailsService.java

@ -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);
}
}

93
src/main/java/com/yxt/yythmall/biz/shoppingcart/ShoppingCartService.java

@ -13,16 +13,21 @@ import com.yxt.common.core.vo.PagerVo;
import com.yxt.yythmall.api.empcardbuildrecord.EmpCardBuildRecord; import com.yxt.yythmall.api.empcardbuildrecord.EmpCardBuildRecord;
import com.yxt.yythmall.api.empcardbuildrecord.EmpCardBuildRecordQuery; import com.yxt.yythmall.api.empcardbuildrecord.EmpCardBuildRecordQuery;
import com.yxt.yythmall.api.empcardbuildrecord.EmpCardBuildRecordVo; import com.yxt.yythmall.api.empcardbuildrecord.EmpCardBuildRecordVo;
import com.yxt.yythmall.api.lpkcustomer.LpkCustomer;
import com.yxt.yythmall.api.lpkgiftcard.LpkGiftCardQuery; import com.yxt.yythmall.api.lpkgiftcard.LpkGiftCardQuery;
import com.yxt.yythmall.api.ordorder.OrdOrderDto;
import com.yxt.yythmall.api.ordorderdetails.OrdOrderDetailVo;
import com.yxt.yythmall.api.shoppingcart.ShoppingCart; import com.yxt.yythmall.api.shoppingcart.ShoppingCart;
import com.yxt.yythmall.api.shoppingcart.ShoppingCartDto; import com.yxt.yythmall.api.shoppingcart.ShoppingCartDto;
import com.yxt.yythmall.api.shoppingcart.ShoppingCartQuery; import com.yxt.yythmall.api.shoppingcart.ShoppingCartQuery;
import com.yxt.yythmall.api.shoppingcart.ShoppingCartVo; import com.yxt.yythmall.api.shoppingcart.ShoppingCartVo;
import com.yxt.yythmall.biz.empcard.EmpCardService; import com.yxt.yythmall.biz.empcard.EmpCardService;
import com.yxt.yythmall.biz.lpkcustomer.LpkCustomerService;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -34,6 +39,8 @@ import java.util.List;
public class ShoppingCartService extends MybatisBaseService<ShoppingCartMapper, ShoppingCart> { public class ShoppingCartService extends MybatisBaseService<ShoppingCartMapper, ShoppingCart> {
@Autowired @Autowired
private FileUploadComponent fileUploadComponent; private FileUploadComponent fileUploadComponent;
@Autowired
LpkCustomerService lpkCustomerService;
public ResultBean save(ShoppingCartDto dto) { public ResultBean save(ShoppingCartDto dto) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
@ -62,7 +69,7 @@ public class ShoppingCartService extends MybatisBaseService<ShoppingCartMapper,
ShoppingCart entity=new ShoppingCart(); ShoppingCart entity=new ShoppingCart();
List<ShoppingCartVo> list= baseMapper.ShoppingCartList(query.getCustomerSid(),query.getBrandId()); List<ShoppingCartVo> list= baseMapper.ShoppingCartList(query.getCustomerSid(),query.getBrandId());
list.forEach(s->{ list.forEach(s->{
s.setTotalPrice(String.valueOf((int)(Double.valueOf(s.getPrice())* Double.valueOf(s.getGoodsNumber())))); s.setTotalPrice(removeZeros(String.valueOf((Double.valueOf(s.getPrice())* Double.valueOf(s.getGoodsNumber())))));
s.setIconUrl(fileUploadComponent.getUrlPrefix() +s.getIconUrl()); s.setIconUrl(fileUploadComponent.getUrlPrefix() +s.getIconUrl());
}); });
@ -100,8 +107,92 @@ public class ShoppingCartService extends MybatisBaseService<ShoppingCartMapper,
weight=Double.valueOf(vo.getWeight())*Double.valueOf(vo.getGoodsNumber())+weight; weight=Double.valueOf(vo.getWeight())*Double.valueOf(vo.getGoodsNumber())+weight;
} }
ShoppingCartVo vo =new ShoppingCartVo(); ShoppingCartVo vo =new ShoppingCartVo();
// vo.setText("1.20斤起订量。\n" +
// "2.新用户正好20斤5折。\n" +
// "3.20-100斤加10%附加额。\n" +
// "4.101斤-200斤加5%附加额。");
vo.setCustomerSid(query.getCustomerSid());
vo.setTotalPrice(String.valueOf((int) price)); vo.setTotalPrice(String.valueOf((int) price));
vo.setTotalWeight(String.valueOf((int)weight)); vo.setTotalWeight(String.valueOf((int)weight));
vo=price(vo);
return rb.success().setData(vo); return rb.success().setData(vo);
} }
private ShoppingCartVo price(ShoppingCartVo vo){
int weight=Integer.parseInt(vo.getTotalWeight());
LpkCustomer lpkCustomer=lpkCustomerService.getOne(new QueryWrapper<LpkCustomer>().eq("sid",vo.getCustomerSid()));
vo.setRemarks("已减免附加费");
if(weight<=99){
if(weight<=20){
vo.setRemarks("不足20斤,请继续选菜");
}else{
double a =1.1;
double d=Double.valueOf(vo.getTotalPrice());
double t=Double.valueOf(vo.getTotalPrice())*a;
BigDecimal bg = new BigDecimal(t);
vo.setTotalPrice(String.valueOf(bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()));
// String c =String.valueOf(Double.valueOf(vo.getTotalPrice())-d);
double f=Double.valueOf(vo.getTotalPrice())-d;
BigDecimal bgd = new BigDecimal(f);
String c =String.valueOf(bgd.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
vo.setRemarks("包含附加费"+removeZeros(c)+"元");
}
// if(weight==20){
// if(lpkCustomer.getIsPurchase().equals("1")){
// double a =0.5;
// double t=Double.valueOf(vo.getTotalPrice())*a;
// BigDecimal bg = new BigDecimal(t);
// vo.setTotalPrice(String.valueOf(bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()));
// vo.setRemarks("已享受新人专享5折优惠");
// }else{
// double a =1.1;
// double d=Double.valueOf(vo.getTotalPrice());
// double t=Double.valueOf(vo.getTotalPrice())*a;
// BigDecimal bg = new BigDecimal(t);
// vo.setTotalPrice(String.valueOf(bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()));
// double f=Double.valueOf(vo.getTotalPrice())-d;
// BigDecimal bgd = new BigDecimal(f);
// String c =String.valueOf(bgd.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
// vo.setRemarks("包含附加费"+removeZeros(c)+"元");
// }
// }else{
// double a =1.1;
// double d=Double.valueOf(vo.getTotalPrice());
// double t=Double.valueOf(vo.getTotalPrice())*a;
// BigDecimal bg = new BigDecimal(t);
// vo.setTotalPrice(String.valueOf(bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()));
//// String c =String.valueOf(Double.valueOf(vo.getTotalPrice())-d);
// double f=Double.valueOf(vo.getTotalPrice())-d;
// BigDecimal bgd = new BigDecimal(f);
// String c =String.valueOf(bgd.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
// vo.setRemarks("包含附加费"+removeZeros(c)+"元");
// }
}else if(weight>=100 && weight<=199){
double a =1.05;
double d=Double.valueOf(vo.getTotalPrice());
double t=Double.valueOf(vo.getTotalPrice())*a;
BigDecimal bg = new BigDecimal(t);
vo.setTotalPrice(String.valueOf(bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()));
// String c =String.valueOf(Double.valueOf(vo.getTotalPrice())-d);
double f=Double.valueOf(vo.getTotalPrice())-d;
BigDecimal bgd = new BigDecimal(f);
String c =String.valueOf(bgd.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
vo.setRemarks("包含附加费"+removeZeros(c)+"元");
}
return vo;
}
/**
* 去除多余.0
* @param num
* @return
*/
public static String removeZeros(String num) {
if (num.indexOf(".") > 0) {
// 去掉多余的0
num = num.replaceAll("0+?$", "");
// 如果最后一位是. 则去掉
num = num.replaceAll("[.]$", "");
}
return num;
}
} }

3
src/main/java/com/yxt/yythmall/biz/transferrecords/TransferRecordsMapper.java

@ -5,9 +5,6 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.yythmall.api.transferrecords.TransferRecords; import com.yxt.yythmall.api.transferrecords.TransferRecords;
import com.yxt.yythmall.api.transferrecords.TransferRecordsQuery; import com.yxt.yythmall.api.transferrecords.TransferRecordsQuery;
import com.yxt.yythmall.api.transferrecords.TransferRecordsVo; import com.yxt.yythmall.api.transferrecords.TransferRecordsVo;
import com.yxt.yythmall.api.vegecallerreserveorder.VegeCellarReserveOrder;
import com.yxt.yythmall.api.vegecallerreserveorder.VegeCellarReserveOrderQuery;
import com.yxt.yythmall.api.vegecallerreserveorder.VegeCellarReserveOrderVo;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select; import org.apache.ibatis.annotations.Select;

61
src/main/java/com/yxt/yythmall/biz/transferrecords/TransferRecordsMapper.xml

@ -6,38 +6,53 @@
<select id="orderListByUserSid" resultType="com.yxt.yythmall.api.transferrecords.TransferRecordsVo"> <select id="orderListByUserSid" resultType="com.yxt.yythmall.api.transferrecords.TransferRecordsVo">
SELECT SELECT
sid , s.sid,
'转赠' as type, '转赠' AS type,
transferCode, s.transferCode,
createTime , s.createTime,
remarks, s.remarks,
case state r.nick as fxNick,
when 1 then '已分享' d.nick as lqNick,
when 2 then '已领取' s.state,
end stateValue CASE
state
WHEN 1 THEN
'已分享'
WHEN 2 THEN
'已领取'
END stateValue
FROM FROM
transfer_records transfer_records s
LEFT JOIN lpk_customer r on r.sid =s.customerSid
left join lpk_customer d on d.sid =s.recipientSid
WHERE WHERE
customerSid=#{query.customerSid} customerSid=#{query.customerSid}
order by s.createTime desc
</select> </select>
<select id="orderListByUserSid1" resultType="com.yxt.yythmall.api.transferrecords.TransferRecordsVo"> <select id="orderListByUserSid1" resultType="com.yxt.yythmall.api.transferrecords.TransferRecordsVo">
SELECT SELECT
sid, s.sid,
'领取' as type, '转赠' AS type,
transferCode, s.transferCode,
createTime , s.createTime,
remarks, s.remarks,
case state r.nick as fxNick,
when 1 then '已分享' d.nick as lqNick,
when 2 then '已领取' s.state,
end stateValue CASE
state
WHEN 1 THEN
'已分享'
WHEN 2 THEN
'已领取'
END stateValue
FROM FROM
transfer_records transfer_records s
LEFT JOIN lpk_customer r on r.sid =s.customerSid
left join lpk_customer d on d.sid =s.recipientSid
WHERE WHERE
recipientSid =#{query.customerSid} recipientSid =#{query.customerSid}
order by s.createTime desc
</select> </select>
</mapper> </mapper>

26
src/main/java/com/yxt/yythmall/biz/transferrecords/TransferRecordsService.java

@ -10,6 +10,7 @@ import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.base.utils.StringUtils; import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.yythmall.api.customerstore.CustomerStoreDto; import com.yxt.yythmall.api.customerstore.CustomerStoreDto;
import com.yxt.yythmall.api.lpkgiftcard.GoodsVo; import com.yxt.yythmall.api.lpkgiftcard.GoodsVo;
import com.yxt.yythmall.api.lpkgoods.LpkGoods; import com.yxt.yythmall.api.lpkgoods.LpkGoods;
@ -22,9 +23,6 @@ import com.yxt.yythmall.api.transferrecordsgoodsdetails.TransferRecordsGoodsDeta
import com.yxt.yythmall.api.vegecallerreservedetails.VegeCellarReserveDetails; import com.yxt.yythmall.api.vegecallerreservedetails.VegeCellarReserveDetails;
import com.yxt.yythmall.api.vegecallerreserveorder.OrderGoodsVo; import com.yxt.yythmall.api.vegecallerreserveorder.OrderGoodsVo;
import com.yxt.yythmall.api.vegecallerreserveorder.VegeCellarReserveOrder; import com.yxt.yythmall.api.vegecallerreserveorder.VegeCellarReserveOrder;
import com.yxt.yythmall.api.vegecallerreserveorder.VegeCellarReserveOrderQuery;
import com.yxt.yythmall.api.vegecallerreserveorder.VegeCellarReserveOrderVo;
import com.yxt.yythmall.api.vegetablecellar.VegetableCellar;
import com.yxt.yythmall.biz.customerstore.CustomerStoreService; import com.yxt.yythmall.biz.customerstore.CustomerStoreService;
import com.yxt.yythmall.biz.lpkgiftcard.LpkGiftCardService; import com.yxt.yythmall.biz.lpkgiftcard.LpkGiftCardService;
import com.yxt.yythmall.biz.lpkgiftcard.generateRule.UniqueIdGenerator; import com.yxt.yythmall.biz.lpkgiftcard.generateRule.UniqueIdGenerator;
@ -90,14 +88,28 @@ public class TransferRecordsService extends MybatisBaseService<TransferRecordsMa
// orderGoodsVo.setUnitName(lpkGoods.getUnitName()); // orderGoodsVo.setUnitName(lpkGoods.getUnitName());
// goodsVo.add(orderGoodsVo); // goodsVo.add(orderGoodsVo);
if(StringUtils.isBlank(vo.getGoodss())){ if(StringUtils.isBlank(vo.getGoodss())){
vo.setGoodss(lpkGoods.getName()+":"+goods1.getGoodsNumber()+lpkGoods.getUnitName()); vo.setGoodss(lpkGoods.getName()+":"+removeZeros(String.valueOf(goods1.getGoodsNumber()))+lpkGoods.getUnitName());
}else{ }else{
vo.setGoodss(vo.getGoodss()+" "+lpkGoods.getName()+":"+goods1.getGoodsNumber()+lpkGoods.getUnitName()); vo.setGoodss(vo.getGoodss()+" "+lpkGoods.getName()+":"+removeZeros(String.valueOf(goods1.getGoodsNumber()))+lpkGoods.getUnitName());
} }
} }
// vo.setGoodsVo(goodsVo); // vo.setGoodsVo(goodsVo);
} }
return rb.success().setData(1); PagerVo<TransferRecordsVo> p = PagerUtil.pageToVo(pagging, null);
return rb.success().setData(p);
}
/**
* 去除多余.0
* @param num
* @return
*/
public static String removeZeros(String num) {
if (num.indexOf(".") > 0) {
// 去掉多余的0
num = num.replaceAll("0+?$", "");
// 如果最后一位是. 则去掉
num = num.replaceAll("[.]$", "");
}
return num;
} }
} }

2
src/main/java/com/yxt/yythmall/biz/transferrecordsgoodsdetails/TransferRecordsGoodsDetailsMapper.java

@ -23,6 +23,6 @@ public interface TransferRecordsGoodsDetailsMapper extends BaseMapper<TransferRe
List<TransferRecordsGoodsDetails> selByOrderSid(String orderSid); List<TransferRecordsGoodsDetails> selByOrderSid(String orderSid);
List<TransferRecordsGoodsDetails> selInOrderSid(@Param("orderSids") List<String> orderSids); List<TransferRecordsGoodsDetails> selInOrderSid(@Param("orderSids") List<String> orderSids);
@Select("select *,goodsNumber as goodsNumber from lpk_reserve_order_goods where orderSid=#{orderSid}") @Select("select *,goodsNumber as goodsNumber from transfer_records_goods_details where orderSid=#{orderSid}")
List<TransferRecordsGoodsDetails> selByOrderSids(String orderSid); List<TransferRecordsGoodsDetails> selByOrderSids(String orderSid);
} }

2
src/main/java/com/yxt/yythmall/biz/vegecallerreservedetail/VegeCellarReserveDetailsRest.java

@ -11,7 +11,7 @@ import org.springframework.web.bind.annotation.RestController;
*/ */
@Api(tags = "预约订单信息") @Api(tags = "预约订单信息")
@RestController @RestController
@RequestMapping("lpksreservoordersss") @RequestMapping("vegecellarreservedetails")
public class VegeCellarReserveDetailsRest { public class VegeCellarReserveDetailsRest {
@Autowired @Autowired
VegeCellarReserveDetailsService vegeCellarReserveOrderService; VegeCellarReserveDetailsService vegeCellarReserveOrderService;

37
src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/ReserveOrderVo.java

@ -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;
}

7
src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderMapper.java

@ -3,16 +3,13 @@ package com.yxt.yythmall.biz.vegecallerreserveorder;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.yythmall.api.vegecallerreserveorder.VegeCellarReserveOrder; import com.yxt.yythmall.api.vegecallerreserveorder.VegeCellarReserveOrder;
import com.yxt.yythmall.api.vegecallerreserveorder.VegeCellarReserveOrderQuery; import com.yxt.yythmall.api.vegecallerreserveorder.VegeCellarReserveOrderQuery;
import com.yxt.yythmall.api.vegecallerreserveorder.VegeCellarReserveOrderVo; import com.yxt.yythmall.api.vegecallerreserveorder.VegeCellarReserveOrderVo;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
/** /**
* @author wangpengfei * @author wangpengfei
@ -28,6 +25,8 @@ public interface VegeCellarReserveOrderMapper extends BaseMapper<VegeCellarReser
// //
//// IPage<VegeCellarReserveOrderCardVo> orderListByUserSid(IPage<VegeCellarReserveOrder> page, @Param(Constants.WRAPPER) QueryWrapper<VegeCellarReserveOrder> qw); //// IPage<VegeCellarReserveOrderCardVo> orderListByUserSid(IPage<VegeCellarReserveOrder> page, @Param(Constants.WRAPPER) QueryWrapper<VegeCellarReserveOrder> qw);
IPage<VegeCellarReserveOrderVo> orderListByUserSid(IPage<VegeCellarReserveOrder> page, @Param("query") VegeCellarReserveOrderQuery query); IPage<VegeCellarReserveOrderVo> orderListByUserSid(IPage<VegeCellarReserveOrder> page, @Param("query") VegeCellarReserveOrderQuery query);
PagerVo<ReserveOrderVo> pageOfCustomer(IPage<VegeCellarReserveOrder> page,QueryWrapper<VegeCellarReserveOrder> qw);
// //
// List<ReserveOrderExport> exportExcel(@Param("qw") VegeCellarReserveOrderQuery qw); // List<ReserveOrderExport> exportExcel(@Param("qw") VegeCellarReserveOrderQuery qw);
// List<ReserveOrderExportByStore> exportExcelByStore(@Param(Constants.WRAPPER) QueryWrapper<VegeCellarReserveOrderQuery> qw); // List<ReserveOrderExportByStore> exportExcelByStore(@Param(Constants.WRAPPER) QueryWrapper<VegeCellarReserveOrderQuery> qw);

32
src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderMapper.xml

@ -259,6 +259,7 @@
<where> <where>
o.customerSid=#{query.customerSid} and state=#{query.state} o.customerSid=#{query.customerSid} and state=#{query.state}
</where> </where>
order by o.reserveDate desc
</select> </select>
<select id="exportExcel" resultType="com.yxt.yythmall.api.lpkreserveorder.ReserveOrderExport"> <select id="exportExcel" resultType="com.yxt.yythmall.api.lpkreserveorder.ReserveOrderExport">
select select
@ -446,4 +447,35 @@
${ew.sqlSegment} ${ew.sqlSegment}
</where> </where>
</select> </select>
<select id="pageOfCustomer" resultType="com.yxt.yythmall.biz.vegecallerreserveorder.ReserveOrderVo">
select
date_format(vo.reserveDate,'%Y-%m-%d') reserveDate,
vo.customerSid,
vo.storeSid,
max(ls.name) storeName,
max(ls.linker) storeLinker,
max(ls.phone) storePhone,
max(ls.address) storeAddress,
max(vo.affiliation) affiliation,
max(vo.userName) userName,
max(vo.userPhone) userPhone,
max(lb.sid) bankSid,
max(lb.name) bankName,
max(lb.linker) bankLinker,
max(lb.linkPhone) bankPhone,
max(lb.address) bankAddress,
vd.goodsSid,
max(vd.goodsName) goodsName,
sum(vd.goodsNumber) goodsNumber
from vege_cellar_reserve_order vo
LEFT JOIN lpk_store ls ON ls.sid=vo.storeSid
LEFT JOIN lpk_bank lb ON lb.sid=ls.bankSid
left join vege_cellar_reserve_details vd on vo.sid=vd.orderSid
left join lpk_goods lg on vd.goodsSid=lg.sid
<where>
${ew.sqlSegment}
</where>
GROUP BY vo.reserveDate,vo.storeSid,vo.customerSid,vd.goodsSid
</select>
</mapper> </mapper>

66
src/main/java/com/yxt/yythmall/biz/vegecallerreserveorder/VegeCellarReserveOrderService.java

@ -3,47 +3,29 @@ package com.yxt.yythmall.biz.vegecallerreserveorder;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import com.alibaba.excel.EasyExcel; import cn.hutool.core.util.StrUtil;
import com.alibaba.excel.write.metadata.style.WriteCellStyle;
import com.alibaba.excel.write.style.HorizontalCellStyleStrategy;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; 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.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.base.utils.StringUtils; import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
import com.yxt.yythmall.api.lpkgiftbaggoods.LpkGiftBagGoodsVo;
import com.yxt.yythmall.api.lpkgiftcard.AppletVo;
import com.yxt.yythmall.api.lpkgiftcard.GoodsVo;
import com.yxt.yythmall.api.lpkgoods.LpkGoods; import com.yxt.yythmall.api.lpkgoods.LpkGoods;
import com.yxt.yythmall.api.lpkreserveorder.LpkReserveOrderQuery;
import com.yxt.yythmall.api.lpkstore.LpkStore; import com.yxt.yythmall.api.lpkstore.LpkStore;
import com.yxt.yythmall.api.lpkstore.StoreSelect;
import com.yxt.yythmall.api.vegecallerreservedetails.VegeCellarReserveDetails; import com.yxt.yythmall.api.vegecallerreservedetails.VegeCellarReserveDetails;
import com.yxt.yythmall.api.vegecallerreserveorder.*; import com.yxt.yythmall.api.vegecallerreserveorder.*;
import com.yxt.yythmall.biz.lpkgiftbaggoods.LpkGiftBagGoodsService;
import com.yxt.yythmall.biz.lpkgiftcard.LpkGiftCardMapper;
import com.yxt.yythmall.biz.lpkgiftcard.generateRule.UniqueIdGenerator; import com.yxt.yythmall.biz.lpkgiftcard.generateRule.UniqueIdGenerator;
import com.yxt.yythmall.biz.lpkgoods.LpkGoodsService; import com.yxt.yythmall.biz.lpkgoods.LpkGoodsService;
import com.yxt.yythmall.biz.lpkstore.LpkStoreService; import com.yxt.yythmall.biz.lpkstore.LpkStoreService;
import com.yxt.yythmall.biz.vegecallerreservedetail.VegeCellarReserveDetailsService; import com.yxt.yythmall.biz.vegecallerreservedetail.VegeCellarReserveDetailsService;
import com.yxt.yythmall.utils.StyleUtils;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.io.BufferedOutputStream;
import java.io.IOException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date;
import java.util.List; import java.util.List;
/** /**
@ -64,6 +46,7 @@ public class VegeCellarReserveOrderService extends MybatisBaseService<VegeCellar
// private FileUploadComponent fileUploadComponent; // private FileUploadComponent fileUploadComponent;
@Autowired @Autowired
private LpkGoodsService lpkGoodsService; private LpkGoodsService lpkGoodsService;
// @Autowired // @Autowired
// private HttpServletResponse response; // private HttpServletResponse response;
// //
@ -85,9 +68,10 @@ public class VegeCellarReserveOrderService extends MybatisBaseService<VegeCellar
order.setStoreName(lpkStore.getName()); order.setStoreName(lpkStore.getName());
baseMapper.insert(order); baseMapper.insert(order);
dto.setOrderSid(order.getSid()); dto.setOrderSid(order.getSid());
vegeCellarReserveDetailsService.submissionDetail(dto); rb = vegeCellarReserveDetailsService.submissionDetail(dto);
return rb.success().setData("预约成功"); return rb;
} }
public ResultBean addGoodsOrder(VegeCellarReserveOrderDto dto) { public ResultBean addGoodsOrder(VegeCellarReserveOrderDto dto) {
ResultBean rb = new ResultBean().fail(); ResultBean rb = new ResultBean().fail();
boolean b = isSatAndSun(dto.getReserveDate()); boolean b = isSatAndSun(dto.getReserveDate());
@ -108,6 +92,7 @@ public class VegeCellarReserveOrderService extends MybatisBaseService<VegeCellar
vegeCellarReserveDetailsService.addDetail(dto); vegeCellarReserveDetailsService.addDetail(dto);
return rb.success().setData("预约成功"); return rb.success().setData("预约成功");
} }
public ResultBean minusGoodsOrder(VegeCellarReserveOrderDto dto) { public ResultBean minusGoodsOrder(VegeCellarReserveOrderDto dto) {
ResultBean rb = new ResultBean().fail(); ResultBean rb = new ResultBean().fail();
boolean b = isSatAndSun(dto.getReserveDate()); boolean b = isSatAndSun(dto.getReserveDate());
@ -130,9 +115,9 @@ public class VegeCellarReserveOrderService extends MybatisBaseService<VegeCellar
} }
public boolean isSatAndSun(String date) { public boolean isSatAndSun(String date) {
DateTime dateTime = DateUtil.parse(date);; // 获取当前时间 DateTime dateTime = DateUtil.parse(date);
; // 获取当前时间
int dayOfWeek = dateTime.dayOfWeekEnum().getValue();// 获取星期几(1-7) int dayOfWeek = dateTime.dayOfWeekEnum().getValue();// 获取星期几(1-7)
System.out.println(dayOfWeek); System.out.println(dayOfWeek);
if (dayOfWeek == 1 || dayOfWeek == 7) { if (dayOfWeek == 1 || dayOfWeek == 7) {
@ -141,6 +126,7 @@ public class VegeCellarReserveOrderService extends MybatisBaseService<VegeCellar
return true; return true;
} }
} }
// @Test // @Test
// public void isSatAndSun(){ // public void isSatAndSun(){
// String date="2023-12-11"; // String date="2023-12-11";
@ -722,4 +708,36 @@ public class VegeCellarReserveOrderService extends MybatisBaseService<VegeCellar
// return new ResultBean().success().setData(baseMapper.selOrderByCardSid(sid)); // return new ResultBean().success().setData(baseMapper.selOrderByCardSid(sid));
// } // }
private QueryWrapper<VegeCellarReserveOrder> buildQuery(LpkReserveOrderQuery query) {
QueryWrapper<VegeCellarReserveOrder> qw = new QueryWrapper<>();
if (StrUtil.isNotBlank(query.getStartDate())) {
qw.ge("date_format(vo.reserveDate,'%Y-%m-%d')", query.getStartDate());
}
if (StrUtil.isNotBlank(query.getEndDate())) {
qw.le("date_format(vo.reserveDate,'%Y-%m-%d')", query.getEndDate());
}
if (StrUtil.isNotBlank(query.getBankSid())) {
qw.eq("lb.sid", query.getBankSid());
}
if (StrUtil.isNotBlank(query.getStore())) {
qw.eq("vo.storeSid", query.getStore());
}
if (StrUtil.isNotBlank(query.getCardType())) {
qw.eq("vo.affiliation", query.getCardType());
}
qw.orderByAsc("vo.reserveDate");
return qw;
}
public ResultBean<PagerVo<ReserveOrderVo>> pageOfCustomer(PagerQuery<LpkReserveOrderQuery> pq) {
ResultBean rb = ResultBean.fireFail();
LpkReserveOrderQuery query = pq.getParams();
QueryWrapper<VegeCellarReserveOrder> qw = buildQuery(query);
IPage<VegeCellarReserveOrder> page = PagerUtil.queryToPage(pq);
PagerVo<ReserveOrderVo> pagerVo = baseMapper.pageOfCustomer(page,qw);
return rb.success().setData(pagerVo);
}
} }

12
src/main/java/com/yxt/yythmall/biz/vegereplenish/VegeReplenishService.java

@ -55,6 +55,8 @@ public class VegeReplenishService extends MybatisBaseService<VegeReplenishMapper
private EmpCardGiftService empCardGiftService; private EmpCardGiftService empCardGiftService;
@Autowired @Autowired
private EmpCardGiftGoodsService empCardGiftGoodsService; private EmpCardGiftGoodsService empCardGiftGoodsService;
@Autowired
private LpkGoodsService lpkGoodsService;
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public ResultBean<String> saveBindRecord(BindCardDto dto, String type) { public ResultBean<String> saveBindRecord(BindCardDto dto, String type) {
@ -83,6 +85,9 @@ public class VegeReplenishService extends MybatisBaseService<VegeReplenishMapper
detail.setGoodsNumber(Integer.parseInt(g.getGoodsNumber())); detail.setGoodsNumber(Integer.parseInt(g.getGoodsNumber()));
detail.setOrderSid(entity.getSid()); detail.setOrderSid(entity.getSid());
detail.setCreateTime(new DateTime()); detail.setCreateTime(new DateTime());
if (StringUtils.isNotBlank(g.getName())) {
detail.setGoodsName(g.getName());
}
vegeReplenishDetailService.insert(detail); vegeReplenishDetailService.insert(detail);
}); });
} }
@ -102,6 +107,9 @@ public class VegeReplenishService extends MybatisBaseService<VegeReplenishMapper
detail.setGoodsNumber(Integer.parseInt(g.getGoodsNumber())); detail.setGoodsNumber(Integer.parseInt(g.getGoodsNumber()));
detail.setOrderSid(entity.getSid()); detail.setOrderSid(entity.getSid());
detail.setCreateTime(new DateTime()); detail.setCreateTime(new DateTime());
if (StringUtils.isNotBlank(g.getName())) {
detail.setGoodsName(g.getName());
}
vegeReplenishDetailService.insert(detail); vegeReplenishDetailService.insert(detail);
}); });
} }
@ -116,6 +124,10 @@ public class VegeReplenishService extends MybatisBaseService<VegeReplenishMapper
goods.stream().forEach(g -> { goods.stream().forEach(g -> {
VegeReplenishDetail detail = new VegeReplenishDetail(); VegeReplenishDetail detail = new VegeReplenishDetail();
detail.setGoodsSid(g.getGoodsSid()); detail.setGoodsSid(g.getGoodsSid());
LpkGoods lpkGoods = lpkGoodsService.fetchBySid(g.getGoodsSid());
if (null != lpkGoods) {
detail.setGoodsName(lpkGoods.getName());
}
detail.setGoodsNumber(g.getGoodsNumber()); detail.setGoodsNumber(g.getGoodsNumber());
detail.setOrderSid(entity.getSid()); detail.setOrderSid(entity.getSid());
detail.setCreateTime(new DateTime()); detail.setCreateTime(new DateTime());

2
src/main/java/com/yxt/yythmall/biz/vegetablecellar/VegetableCellarRest.java

@ -22,7 +22,7 @@ public class VegetableCellarRest {
@Autowired @Autowired
VegetableCellarService VegetableCellarService; VegetableCellarService VegetableCellarService;
@ApiOperation("创建记录列表") @ApiOperation("创建记录列表")
@PostMapping("/addGoods") @GetMapping("/addGoods")
public ResultBean addGoods(@RequestParam("mainSid") String mainSid) { public ResultBean addGoods(@RequestParam("mainSid") String mainSid) {
return VegetableCellarService.addGoods(mainSid); return VegetableCellarService.addGoods(mainSid);
} }

26
src/main/java/com/yxt/yythmall/biz/vegetablecellar/VegetableCellarService.java

@ -8,6 +8,7 @@ import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
import com.yxt.yythmall.api.lpkcustomer.LpkCustomer;
import com.yxt.yythmall.api.lpkgoods.LpkGoods; import com.yxt.yythmall.api.lpkgoods.LpkGoods;
import com.yxt.yythmall.api.ordorder.OrdOrder; import com.yxt.yythmall.api.ordorder.OrdOrder;
import com.yxt.yythmall.api.ordorderdetails.OrdOrderDetail; import com.yxt.yythmall.api.ordorderdetails.OrdOrderDetail;
@ -16,6 +17,7 @@ import com.yxt.yythmall.api.transferrecords.TransferRecords;
import com.yxt.yythmall.api.transferrecordsgoodsdetails.TransferRecordsGoodsDetails; import com.yxt.yythmall.api.transferrecordsgoodsdetails.TransferRecordsGoodsDetails;
import com.yxt.yythmall.api.vegetablecellar.*; import com.yxt.yythmall.api.vegetablecellar.*;
import com.yxt.yythmall.biz.empcard.EmpCardService; import com.yxt.yythmall.biz.empcard.EmpCardService;
import com.yxt.yythmall.biz.lpkcustomer.LpkCustomerService;
import com.yxt.yythmall.biz.lpkgoods.LpkGoodsService; import com.yxt.yythmall.biz.lpkgoods.LpkGoodsService;
import com.yxt.yythmall.biz.ordorder.OrdOrderService; import com.yxt.yythmall.biz.ordorder.OrdOrderService;
import com.yxt.yythmall.biz.ordorderdetails.OrdOrderDetailService; import com.yxt.yythmall.biz.ordorderdetails.OrdOrderDetailService;
@ -24,7 +26,9 @@ import com.yxt.yythmall.biz.transferrecords.TransferRecordsService;
import com.yxt.yythmall.biz.transferrecordsgoodsdetails.TransferRecordsGoodsDetailsService; import com.yxt.yythmall.biz.transferrecordsgoodsdetails.TransferRecordsGoodsDetailsService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
import java.util.List; import java.util.List;
/** /**
@ -46,16 +50,20 @@ public class VegetableCellarService extends MybatisBaseService<VegetableCellarMa
TransferRecordsGoodsDetailsService transferRecordsGoodsDetailsService; TransferRecordsGoodsDetailsService transferRecordsGoodsDetailsService;
@Autowired @Autowired
LpkGoodsService lpkGoodsService; LpkGoodsService lpkGoodsService;
@Autowired
LpkCustomerService lpkCustomerService;
@Transactional(rollbackFor = Exception.class)
public ResultBean addGoods(String mainSid) { public ResultBean addGoods(String mainSid) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
OrdOrder ordOrder=ordOrderService.getOne(new QueryWrapper<OrdOrder>().eq("mainSid",mainSid)); OrdOrder ordOrder=ordOrderService.getOne(new QueryWrapper<OrdOrder>().eq("mainSid",mainSid));
List<OrdOrderDetail> detailList=ordOrderDetailService.list(new QueryWrapper<OrdOrderDetail>().eq("orderSid",ordOrder.getSid())); List<OrdOrderDetail> detailList=ordOrderDetailService.list(new QueryWrapper<OrdOrderDetail>().eq("orderSid",ordOrder.getSid()));
for(OrdOrderDetail detail:detailList){ for(OrdOrderDetail detail:detailList){
LpkGoods cl=lpkGoodsService.getOne(new QueryWrapper<LpkGoods>().eq("sid",detail.getGoodsSid()));
VegetableCellar vegetableCellar=baseMapper.selectOne(new QueryWrapper<VegetableCellar>().eq("customerSid",ordOrder.getUserSid()) VegetableCellar vegetableCellar=baseMapper.selectOne(new QueryWrapper<VegetableCellar>().eq("customerSid",ordOrder.getUserSid())
.eq("goodsSid",detail.getGoodsSid()).eq("affiliation",ordOrder.getVegeCellarType())); .eq("goodsSid",detail.getGoodsSid()).eq("affiliation",cl.getBrandId()));
if(vegetableCellar==null){ if(vegetableCellar==null){
VegetableCellar vegetable=new VegetableCellar(); VegetableCellar vegetable=new VegetableCellar();
vegetable.setAffiliation(ordOrder.getVegeCellarType()); vegetable.setAffiliation(String.valueOf(cl.getBrandId()));
vegetable.setGoodsSid(detail.getGoodsSid()); vegetable.setGoodsSid(detail.getGoodsSid());
vegetable.setGoodsNumber(String.valueOf(detail.getPartNumber())); vegetable.setGoodsNumber(String.valueOf(detail.getPartNumber()));
vegetable.setCustomerSid(ordOrder.getUserSid()); vegetable.setCustomerSid(ordOrder.getUserSid());
@ -65,8 +73,15 @@ public class VegetableCellarService extends MybatisBaseService<VegetableCellarMa
baseMapper.updateById(vegetableCellar); baseMapper.updateById(vegetableCellar);
} }
} }
LpkCustomer customer=lpkCustomerService.getOne(new QueryWrapper<LpkCustomer>().eq("sid",ordOrder.getUserSid()));
customer.setIsPurchase("0");
lpkCustomerService.updateById(customer);
ordOrder.setPayStatus(4);
ordOrder.setPayTime(new Date());
ordOrderService.updateById(ordOrder);
return rb.success().setMsg("成功"); return rb.success().setMsg("成功");
} }
@Transactional(rollbackFor = Exception.class)
public ResultBean saveGoods(VegetableCellarDto dto) { public ResultBean saveGoods(VegetableCellarDto dto) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
@ -92,6 +107,7 @@ public class VegetableCellarService extends MybatisBaseService<VegetableCellarMa
} }
return rb.success().setMsg("成功"); return rb.success().setMsg("成功");
} }
@Transactional(rollbackFor = Exception.class)
public ResultBean save1Goods(VegetableCellarDto dto) { public ResultBean save1Goods(VegetableCellarDto dto) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
for(vegeVo detail:dto.getVos()){ for(vegeVo detail:dto.getVos()){
@ -111,9 +127,10 @@ public class VegetableCellarService extends MybatisBaseService<VegetableCellarMa
} }
return rb.success().setMsg("成功"); return rb.success().setMsg("成功");
} }
@Transactional(rollbackFor = Exception.class)
public ResultBean receiveTransferGoods(VegetableCellarDto dto) { public ResultBean receiveTransferGoods(VegetableCellarDto dto) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
TransferRecords transferRecords=transferRecordsService.getOne(new QueryWrapper<TransferRecords>().eq("sid",dto.getTransferSid()).eq("state","0")); TransferRecords transferRecords=transferRecordsService.getOne(new QueryWrapper<TransferRecords>().eq("sid",dto.getTransferSid()).eq("state","1"));
if(transferRecords==null){ if(transferRecords==null){
return rb.setMsg("已经被领取"); return rb.setMsg("已经被领取");
} }
@ -121,7 +138,7 @@ public class VegetableCellarService extends MybatisBaseService<VegetableCellarMa
for(TransferRecordsGoodsDetails detail:list){ for(TransferRecordsGoodsDetails detail:list){
LpkGoods cl=lpkGoodsService.getOne(new QueryWrapper<LpkGoods>().eq("sid",detail.getGoodsSid())); LpkGoods cl=lpkGoodsService.getOne(new QueryWrapper<LpkGoods>().eq("sid",detail.getGoodsSid()));
VegetableCellar vegetableCellar=baseMapper.selectOne(new QueryWrapper<VegetableCellar>().eq("customerSid",dto.getCustomerSid()) VegetableCellar vegetableCellar=baseMapper.selectOne(new QueryWrapper<VegetableCellar>().eq("customerSid",dto.getCustomerSid())
.eq("goodsSid",detail.getGoodsSid()).eq("affiliation",transferRecords.getAffiliation())); .eq("goodsSid",detail.getGoodsSid()).eq("affiliation",cl.getBrandId()));
if(vegetableCellar==null){ if(vegetableCellar==null){
VegetableCellar vegetable=new VegetableCellar(); VegetableCellar vegetable=new VegetableCellar();
vegetable.setAffiliation(String.valueOf(cl.getBrandId())); vegetable.setAffiliation(String.valueOf(cl.getBrandId()));
@ -135,6 +152,7 @@ public class VegetableCellarService extends MybatisBaseService<VegetableCellarMa
} }
transferRecords.setState("2"); transferRecords.setState("2");
transferRecords.setRecipientSid(dto.getCustomerSid()); transferRecords.setRecipientSid(dto.getCustomerSid());
transferRecords.setRecipientTime(new Date());
transferRecordsService.updateById(transferRecords); transferRecordsService.updateById(transferRecords);
} }
return rb.success().setMsg("成功"); return rb.success().setMsg("成功");

10
src/main/java/com/yxt/yythmall/config/SaTokenConfigure.java

@ -34,7 +34,10 @@ public class SaTokenConfigure implements WebMvcConfigurer {
.excludePathPatterns("/empcard/isSaturAndSun/**") .excludePathPatterns("/empcard/isSaturAndSun/**")
.excludePathPatterns("/lpkgiftcard/getReservationBySid/**") .excludePathPatterns("/lpkgiftcard/getReservationBySid/**")
.excludePathPatterns("/lpksreservoorder/submission") .excludePathPatterns("/lpksreservoorder/submission")
.excludePathPatterns("/lpksreservoorder/exportExcelByStore")
.excludePathPatterns("/empsreservoorder/createNewUserBagOrder")
.excludePathPatterns("/lpksreservoorders/submission") .excludePathPatterns("/lpksreservoorders/submission")
.excludePathPatterns("/empsreservoorder/ordersList")
.excludePathPatterns("/empsreservoorder/submission") .excludePathPatterns("/empsreservoorder/submission")
.excludePathPatterns("/empsreservoorder/submissionEmp") .excludePathPatterns("/empsreservoorder/submissionEmp")
.excludePathPatterns("/empcardgift/generateCard") .excludePathPatterns("/empcardgift/generateCard")
@ -43,6 +46,13 @@ public class SaTokenConfigure implements WebMvcConfigurer {
.excludePathPatterns("/lpksreservoorder/orderByCardSid/**") .excludePathPatterns("/lpksreservoorder/orderByCardSid/**")
.excludePathPatterns("/lpksreservoorder/orderListByUserSid/**") .excludePathPatterns("/lpksreservoorder/orderListByUserSid/**")
.excludePathPatterns("/lpksreservoorder/orderDetails/**") .excludePathPatterns("/lpksreservoorder/orderDetails/**")
.excludePathPatterns("/newcomerrecorecord/recommendNewUsers")
.excludePathPatterns("/newcomerrecorecord/recommendedAssistance")
.excludePathPatterns("/newcomerrecorecord/recordList/**")
.excludePathPatterns("/transferrecords/transferRecordsList")
.excludePathPatterns("/empsreservoorder/createVegeOrder")
.excludePathPatterns("/empsreservoorder/OrderDetails/**")
.excludePathPatterns("/empsreservoorder/changePayState/**")
.excludePathPatterns("/lpkgoods/goodsDetails/**") .excludePathPatterns("/lpkgoods/goodsDetails/**")
.excludePathPatterns("/lpkstore/getAllStoreByQuery") .excludePathPatterns("/lpkstore/getAllStoreByQuery")
.excludePathPatterns("/vegetablecellar/receiveTransferGoods") .excludePathPatterns("/vegetablecellar/receiveTransferGoods")

2
src/main/resources/application-pro.yml

@ -22,7 +22,7 @@ spring:
timeout: 0 # 连接超时时间(毫秒) timeout: 0 # 连接超时时间(毫秒)
image: image:
upload: upload:
path: D:/webapps/lipinka/yyth-ui/upload/ path: D:/webapps/lipinka/yythmall-ui/upload/
url: url:
prefix: https://supervise.yxtsoft.com/lpk/upload/ prefix: https://supervise.yxtsoft.com/lpk/upload/
import: import:

Loading…
Cancel
Save