From aef44dcce9fce1d76aaa8ae427164d5abbedbdf7 Mon Sep 17 00:00:00 2001 From: "autumn.g@foxmail.com" Date: Wed, 11 Oct 2023 17:01:23 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E4=BF=AE=E6=94=B9=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=E5=88=86=E8=B4=A6=E7=9A=84=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test/java/SpringBootTestController.java | 310 ++++++++++++++++-- .../impl/OrderBasicInfoServiceImpl.java | 14 +- 2 files changed, 289 insertions(+), 35 deletions(-) diff --git a/jsowell-admin/src/test/java/SpringBootTestController.java b/jsowell-admin/src/test/java/SpringBootTestController.java index cf5a4bdf2..eb9265ba9 100644 --- a/jsowell-admin/src/test/java/SpringBootTestController.java +++ b/jsowell-admin/src/test/java/SpringBootTestController.java @@ -500,7 +500,7 @@ public class SpringBootTestController { QueryPaymentConfirmDTO dto = new QueryPaymentConfirmDTO(); dto.setWechatAppId("wxbb3e0d474569481d"); // dto.setPaymentId("0022120230910032226990546664907296944128"); - dto.setPaymentConfirmId("0022120230910032226990546664907296944128"); + dto.setPaymentConfirmId("0022120231009032351990557174514064834560"); QueryPaymentConfirmDetailResponse.PaymentConfirmInfo paymentConfirmInfo = adapayService.queryPaymentConfirmDetail(dto); System.out.println(JSON.toJSONString(paymentConfirmInfo)); } @@ -608,7 +608,7 @@ public class SpringBootTestController { // 万车充小程序appId String wechatAppId = "wxbb3e0d474569481d"; // 用于verify的汇付会员id - String verifyAdapayMemberId = "ACM69460507"; + String verifyAdapayMemberId = "AM27665969"; List list = getList(); List resultList = Lists.newArrayList(); @@ -620,6 +620,7 @@ public class SpringBootTestController { dto.setPaymentId(s); dto.setWechatAppId(wechatAppId); QueryPaymentConfirmDetailResponse response = adapayService.queryPaymentConfirmList(dto); + System.out.println("response==" + JSON.toJSONString(response)); if (response != null) { List confirms = response.getPaymentConfirms(); if (CollectionUtils.isEmpty(confirms)) { @@ -696,7 +697,8 @@ public class SpringBootTestController { */ @Test public void testCreateConfirmReverse() throws BaseAdaPayException { - String wechatAppId = "wxbb3e0d474569481d"; + String wechatAppId = "wxbb3e0d474569481d"; // 万车充 + // String wechatAppId = "wx20abc5210391649c"; // 希晓 List list = getList(); for (String s : list) { // 查询支付确认id @@ -707,39 +709,287 @@ public class SpringBootTestController { if (response != null) { List confirms = response.getPaymentConfirms(); System.out.println("支付id:" + s + ", 确认信息:" + JSON.toJSONString(confirms)); - // if (CollectionUtils.isNotEmpty(confirms)) { - // for (QueryPaymentConfirmDetailResponse.PaymentConfirmInfo confirm : confirms) { - // adapayService.createConfirmReverse(confirm.getId(), wechatAppId); - // } - // } + if (CollectionUtils.isNotEmpty(confirms)) { + for (QueryPaymentConfirmDetailResponse.PaymentConfirmInfo confirm : confirms) { + adapayService.createConfirmReverse(confirm.getId(), wechatAppId); + } + } } } } public List getList() { List list = Lists.newArrayList(); - list.add("002212023082215262610539961740180578304"); - list.add("002212023082311373310540266527452135424"); - list.add("002212023082314254110540308836529778688"); - list.add("002212023082314524610540315652298944512"); - list.add("002212023082314544910540316170146885632"); - list.add("002212023082314574110540316892933017600"); - list.add("002212023082315053010540318859374428160"); - list.add("002212023082315170610540321776783896576"); - list.add("002212023082317112110540350527641501696"); - list.add("002212023082318144410540366481254158336"); - list.add("002212023082318215210540368274134847488"); - list.add("002212023082318242710540368927782121472"); - list.add("002212023082408475810540586236738351104"); - list.add("002212023082408563710540588415700250624"); - list.add("002212023082409080510540591299769815040"); - list.add("002212023082409175010540593754135060480"); - list.add("002212023082409294410540596745978433536"); - list.add("002212023082409370910540598613444284416"); - list.add("002212023082409392010540599165461884928"); - list.add("002212023082411000810540619496373694464"); - list.add("002212023083113391910543196272217128960"); - list.add("002212023083114021810543202055938179072"); + + list.add("002212023100314280210555167331638571008"); + list.add("002212023100314452010555171685453213696"); + list.add("002212023100411225510555483133315117056"); + list.add("002212023100616555610556291714934611968"); + list.add("002212023100617024510556293432550305792"); + list.add("002212023100617331610556301113070194688"); + list.add("002212023100619571910556337360904310784"); + list.add("002212023100620285110556345297462808576"); + list.add("002212023100621160310556357177719291904"); + list.add("002212023100621533410556366619086376960"); + list.add("002212023100621535110556366688602771456"); + list.add("002212023100622381210556377850191261696"); + list.add("002212023100622511810556381148448124928"); + list.add("002212023100623414010556393823903338496"); + list.add("002212023100701523810556426782597181440"); + list.add("002212023100704174710556463307963502592"); + list.add("002212023100704492210556471256810758144"); + list.add("002212023100705494710556486461974491136"); + list.add("002212023100705582710556488644795523072"); + list.add("002212023100705591310556488836151427072"); + list.add("002212023100708221210556524820170985472"); + list.add("002212023100708485710556531548630523904"); + list.add("002212023100709162110556538445036998656"); + list.add("002212023100711404410556574779156447232"); + list.add("002212023100712015310556580102097022976"); + list.add("002212023100714073510556611737347661824"); + list.add("002212023100714383710556619548209430528"); + list.add("002212023100715095810556627435343753216"); + list.add("002212023100715100210556627451548487680"); + list.add("002212023100715301410556632535796269056"); + list.add("002212023100717131410556658458322452480"); + list.add("002212023100717394610556665132941303808"); + list.add("002212023100718395010556680251173154816"); + list.add("002212023100718520810556683348261040128"); + list.add("002212023100718534710556683759872802816"); + list.add("002212023100719233710556691271180824576"); + list.add("002212023100719401710556695465618788352"); + list.add("002212023100719522110556698501270466560"); + list.add("002212023100721031810556716357552156672"); + list.add("002212023100721123510556718692823457792"); + list.add("002212023100722130310556733907225239552"); + list.add("002212023100722285810556737914479554560"); + list.add("002212023100722451710556742021055205376"); + list.add("002212023100722520210556743720615182336"); + list.add("002212023100723002110556745810819145728"); + list.add("002212023100723020110556746231778091008"); + list.add("002212023100723035410556746706410721280"); + list.add("002212023100723250010556752014956654592"); + list.add("002212023100723332710556754142061506560"); + list.add("002212023100723501510556758371589128192"); + list.add("002212023100723512710556758670444589056"); + list.add("002212023100723584510556760511053410304"); + list.add("002212023100723590410556760587963944960"); + list.add("002212023100800152910556764722251612160"); + list.add("002212023100800165510556765082192420864"); + list.add("002212023100800474610556772842600771584"); + list.add("002212023100800545410556774639213948928"); + list.add("002212023100800574010556775337303900160"); + list.add("002212023100801011010556776215928483840"); + list.add("002212023100801013110556776306730971136"); + list.add("002212023100801045010556777141089501184"); + list.add("002212023100801145810556779690810322944"); + list.add("002212023100801175310556780424052858880"); + list.add("002212023100801260010556782464762109952"); + list.add("002212023100801270410556782733541191680"); + list.add("002212023100801330610556784253024591872"); + list.add("002212023100801420610556786519243223040"); + list.add("002212023100802095410556793512076214272"); + list.add("002212023100802144510556794734765068288"); + list.add("002212023100802174110556795471652954112"); + list.add("002212023100802235510556797039735898112"); + list.add("002212023100802370410556800351939567616"); + list.add("002212023100803081410556808194048602112"); + list.add("002212023100803311810556814001094971392"); + list.add("002212023100803484110556818372205219840"); + list.add("002212023100803500310556818719759884288"); + list.add("002212023100804224810556826961497980928"); + list.add("002212023100805063710556837986808279040"); + list.add("002212023100805184510556841040305672192"); + list.add("002212023100805254410556842798029979648"); + list.add("002212023100805331710556844699177693184"); + list.add("002212023100806035110556852390260629504"); + list.add("002212023100806272410556858314677272576"); + list.add("002212023100809085610556898966909136896"); + list.add("002212023100809110710556899514989654016"); + list.add("002212023100810014610556912261981278208"); + list.add("002212023100810361110556920925737443328"); + list.add("002212023100811351410556935783555448832"); + list.add("002212023100812082610556944141137211392"); + list.add("002212023100812210210556947311314780160"); + list.add("002212023100812265110556948774422269952"); + list.add("002212023100812465910556953839987159040"); + list.add("002212023100813264410556963843003830272"); + list.add("002212023100813462710556968805371654144"); + list.add("002212023100813525810556970444841975808"); + list.add("002212023100814054910556973679042347008"); + list.add("002212023100814300110556979771751489536"); + list.add("002212023100814322510556980374340898816"); + list.add("002212023100814363410556981418804109312"); + list.add("002212023100814391410556982089733595136"); + list.add("002212023100814411710556982606605561856"); + list.add("002212023100814581310556986868903411712"); + list.add("002212023100815571410557001721300885504"); + list.add("002212023100816152010557006273082216448"); + list.add("002212023100816173810557006854883749888"); + list.add("002212023100816310810557010251493900288"); + list.add("002212023100816462910557014115077009408"); + list.add("002212023100816492510557014853526478848"); + list.add("002212023100817191910557022376213848064"); + list.add("002212023100817331010557025860654645248"); + list.add("002212023100817355010557026534143025152"); + list.add("002212023100818410810557042964866191360"); + list.add("002212023100818553710557046611448524800"); + list.add("002212023100819271310557054564391673856"); + list.add("002212023100820143810557066496450752512"); + list.add("002212023100821104210557080604108566528"); + list.add("002212023100821210010557083198233489408"); + list.add("002212023100821595610557092997578993664"); + list.add("002212023100822115310557096004232634368"); + list.add("002212023100822242310557099147395862528"); + list.add("002212023100822271910557099888908681216"); + list.add("002212023100822331510557101380323356672"); + list.add("002212023100822353510557101968053944320"); + list.add("002212023100822505910557105841569185792"); + list.add("002212023100822580210557107615710044160"); + list.add("002212023100823000610557108135865274368"); + list.add("002212023100823012710557108475975872512"); + list.add("002212023100823054910557109574160318464"); + list.add("002212023100823084310557110305735303168"); + list.add("002212023100823094110557110550396063744"); + list.add("002212023100823162810557112255176491008"); + list.add("002212023100823301810557115737967149056"); + list.add("002212023100823325810557116406880448512"); + list.add("002212023100823344110557116839047454720"); + list.add("002212023100823441510557119247116316672"); + list.add("002212023100823465110557119901203640320"); + list.add("002212023100823570310557122468944273408"); + list.add("002212023100900331110557131564040695808"); + list.add("002212023100900350910557132059302875136"); + list.add("002212023100900560410557137320419164160"); + list.add("002212023100901191910557143171144048640"); + list.add("002212023100901295810557145850995191808"); + list.add("002212023100901385110557148087988215808"); + list.add("002212023100901445210557149602608058368"); + list.add("002212023100902152810557157302704177152"); + list.add("002212023100902191310557158248265515008"); + list.add("002212023100903510710557181374452469760"); + list.add("002212023100904080810557185656704151552"); + list.add("002212023100904174610557188082356973568"); + list.add("002212023100904204910557188848974274560"); + list.add("002212023100905031810557199541176098816"); + list.add("002212023100905124310557201911345553408"); + list.add("002212023100905185910557203486984077312"); + list.add("002212023100905230310557204508484206592"); + list.add("002212023100905295910557206252840816640"); + list.add("002212023100905335810557207257720909824"); + list.add("002212023100906013810557214219340070912"); + list.add("002212023100906025110557214525746561024"); + list.add("002212023100906095810557216318769586176"); + list.add("002212023100908105410557246751206453248"); + list.add("002212023100908365310557253289620107264"); + list.add("002212023100908575610557258586591035392"); + list.add("002212023100909020810557259645600051200"); + list.add("002212023100909493710557271594562203648"); + list.add("002212023100910311610557282073351258112"); + list.add("002212023100910505110557287004246355968"); + list.add("002212023100910563910557288464139866112"); + list.add("002212023100911040610557290336184643584"); + list.add("002212023100911370310557298631284994048"); + list.add("002212023100912332810557312827932704768"); + list.add("002212023100913072510557321372000038912"); + list.add("002212023100913142110557323116407382016"); + list.add("002212023100914513510557347586297827328"); + list.add("002212023100915242210557355836632461312"); + list.add("002212023100916071810557366641727078400"); + list.add("002212023100916425310557375594074701824"); + list.add("002212023100916484010557377052274544640"); + list.add("002212023100919022610557410714202779648"); + list.add("002212023100920230110557430993124421632"); + list.add("002212023100920350910557434048567017472"); + list.add("002212023100922045610557456642341957632"); + list.add("002212023100922274110557462366150569984"); + list.add("002212023100922301510557463011746365440"); + list.add("002212023100922304410557463136778014720"); + list.add("002212023100922320610557463479780360192"); + list.add("002212023100922324410557463638198632448"); + list.add("002212023100922330110557463709581803520"); + list.add("002212023100922361410557464518627852288"); + list.add("002212023100922373610557464862648860672"); + list.add("002212023100922403910557465630279577600"); + list.add("002212023100923001010557470539953999872"); + list.add("002212023100923042410557471605327634432"); + list.add("002212023100923083110557472643424444416"); + list.add("002212023100923234410557476474496143360"); + list.add("002212023100923262510557477146655436800"); + list.add("002212023100923305810557478292170190848"); + list.add("002212023100923324510557478740734226432"); + list.add("002212023100923363110557479689283358720"); + list.add("002212023100923481910557482658900480000"); + list.add("002212023100923512810557483453444263936"); + list.add("002212023101000035210557486574162071552"); + list.add("002212023101000181310557490183995097088"); + list.add("002212023101000185410557490356116750336"); + list.add("002212023101000203010557490759829004288"); + list.add("002212023101001224410557506418102161408"); + list.add("002212023101001352010557509588882296832"); + list.add("002212023101001355510557509739164651520"); + list.add("002212023101001490910557513067755827200"); + list.add("002212023101002081310557517865344532480"); + list.add("002212023101003093710557533319893618688"); + list.add("002212023101003334410557539388527472640"); + list.add("002212023101003554110557544912959778816"); + list.add("002212023101004051510557547318955458560"); + list.add("002212023101004161310557550076995284992"); + list.add("002212023101004313110557553927735132160"); + list.add("002212023101005162910557565246591180800"); + list.add("002212023101005192010557565964321034240"); + list.add("002212023101005364710557570353624244224"); + list.add("002212023101007253510557597733834674176"); + list.add("002212023101009100610557624034717818880"); + list.add("002212023101009262910557628159869956096"); + list.add("002212023101009322510557629653935423488"); + list.add("002212023101010341710557645221856899072"); + list.add("002212023101010451510557647982226292736"); + list.add("002212023101010494510557649113008836608"); + list.add("002212023101011311010557659538611613696"); + list.add("002212023101011593410557666683520253952"); + list.add("002212023101012072910557668675515576321"); + list.add("002212023101012413010557677237626449920"); + list.add("002212023101012511310557679680741924864"); + list.add("002212023101012574110557681307867262976"); + list.add("002212023101013122310557685009789190144"); + list.add("002212023101013145010557685626354790400"); + list.add("002212023101013173210557686305686208512"); + list.add("002212023101013473510557693868446556160"); + list.add("002212023101013480910557694008680693760"); + list.add("002212023101014350410557705816947277824"); + list.add("002212023101015163510557716263628394496"); + list.add("002212023101015303810557719800789778432"); + list.add("002212023101015354910557721104058916864"); + list.add("002212023101015375810557721645195886592"); + list.add("002212023101015383810557721816270614528"); + list.add("002212023101015414410557722592678502400"); + list.add("002212023101015535010557725640019333120"); + list.add("002212023101015543310557725818228015104"); + list.add("002212023101015555410557726160594055168"); + list.add("002212023101016151210557731015254700032"); + list.add("002212023101016164610557731410510458880"); + list.add("002212023101016174010557731637002743808"); + list.add("002212023101016365410557736475756253184"); + list.add("002212023101018142110557761001706405888"); + list.add("002212023101019173010557776894855852032"); + list.add("002212023101019585910557787334893613057"); + list.add("002212023101020311210557795440665460736"); + list.add("002212023101020511910557800503294472192"); + list.add("002212023101021130910557805998275252224"); + list.add("002212023101021160710557806743103131648"); + list.add("002212023101021254910557809184548581376"); + list.add("002212023101021325110557810954496335872"); + list.add("002212023101021361410557811806244622336"); + list.add("002212023101021575010557817241707462656"); + list.add("002212023101022214810557823272558473216"); + list.add("002212023101022303510557825485695561728"); + list.add("002212023101022312310557825685885497344"); + list.add("002212023101022335210557826309939212288"); + list.add("002212023101022394710557827798707449856"); + list.add("002212023101022410510557828127758663680"); + list.add("002212023101022555010557831840514621440"); + list.add("002212023101022593510557832784378044416"); return list; } diff --git a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java index c12f6fab7..067cdd147 100644 --- a/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java +++ b/jsowell-pile/src/main/java/com/jsowell/pile/service/impl/OrderBasicInfoServiceImpl.java @@ -1483,7 +1483,7 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService { */ private OrderSettleResult verifyOrderConfirmAmount(List paymentIds, String orderCode, BigDecimal settleAmount, String wechatAppId) { // 分账金额 - BigDecimal confirmAmt = BigDecimal.ZERO; + BigDecimal totalConfirmAmt = BigDecimal.ZERO; // 手续费 BigDecimal feeAmt = BigDecimal.ZERO; // 通过支付id查询分账情况 @@ -1499,8 +1499,12 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService { JSONObject jsonObject = JSON.parseObject(confirm.getDescription()); if (StringUtils.equals(jsonObject.getString("orderCode"), orderCode)) { // 订单号对的上,累计分账金额 - BigDecimal amount = new BigDecimal(confirm.getConfirmAmt()); - confirmAmt = confirmAmt.add(amount); + BigDecimal confirmAmt = new BigDecimal(confirm.getConfirmAmt()); + BigDecimal confirmedAmt = new BigDecimal(confirm.getConfirmedAmt()); + BigDecimal orderConfirmedAmt = confirmedAmt.compareTo(BigDecimal.ZERO) == 0 + ? confirmedAmt + : confirmAmt; + totalConfirmAmt = totalConfirmAmt.add(orderConfirmedAmt); feeAmt = feeAmt.add(new BigDecimal(confirm.getFeeAmt())); } } @@ -1511,11 +1515,11 @@ public class OrderBasicInfoServiceImpl implements IOrderBasicInfoService { OrderSettleResult result = new OrderSettleResult(); result.setOrderCode(orderCode); result.setSettleAmt(settleAmount.toString()); - result.setConfirmAmt(confirmAmt.toString()); + result.setConfirmAmt(totalConfirmAmt.toString()); result.setFeeAmt(feeAmt.toString()); String status; // 如果确认金额和结算金额相等,返回succeeded,其他情况返回PENDING - if (settleAmount.compareTo(confirmAmt) == 0) { + if (settleAmount.compareTo(totalConfirmAmt) == 0) { // 返回succeeded 标识该笔订单已经完成了分账,不要再次执行分账 status = AdapayStatusEnum.SUCCEEDED.getValue(); } else {