| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682 |
- package com.style24.front.biz.web;
- import java.util.ArrayList;
- import java.util.Collection;
- import java.util.List;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import org.apache.commons.lang3.StringUtils;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.core.env.Environment;
- import org.springframework.mobile.device.Device;
- import org.springframework.stereotype.Controller;
- import org.springframework.web.bind.annotation.GetMapping;
- import org.springframework.web.bind.annotation.PathVariable;
- 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.RequestParam;
- import org.springframework.web.bind.annotation.ResponseBody;
- import org.springframework.web.servlet.ModelAndView;
- import com.gagaframework.web.parameter.GagaMap;
- import com.gagaframework.web.rest.server.GagaResponse;
- import com.gagaframework.web.rest.server.GagaResponseStatus;
- import com.gagaframework.web.util.GagaCookieUtil;
- import com.style24.core.biz.service.TscCouponService;
- import com.style24.core.biz.service.TscCustomerService;
- import com.style24.core.biz.service.TscEnvsetService;
- import com.style24.core.biz.service.TscKakaotalkService;
- import com.style24.core.biz.service.TscKcpService;
- import com.style24.core.biz.service.TscMailService;
- import com.style24.core.biz.service.TscOrderChangeService;
- import com.style24.core.biz.service.TscOrderRefundService;
- import com.style24.core.biz.service.TscOrderService;
- import com.style24.core.biz.service.TscWmsService;
- import com.style24.core.support.env.TscConstants;
- import com.style24.core.support.message.TscMessageByLocale;
- import com.style24.front.biz.service.TsfCartService;
- import com.style24.front.biz.service.TsfCommonService;
- import com.style24.front.biz.service.TsfCouponService;
- import com.style24.front.biz.service.TsfCustomerService;
- import com.style24.front.biz.service.TsfDeliveryService;
- import com.style24.front.biz.service.TsfGiftcardService;
- import com.style24.front.biz.service.TsfLoginService;
- import com.style24.front.biz.service.TsfOrderChangeService;
- import com.style24.front.biz.service.TsfOrderService;
- import com.style24.front.biz.service.TsfPointService;
- import com.style24.front.biz.service.TsfReinboundService;
- import com.style24.front.biz.service.TsfRendererService;
- import com.style24.front.biz.service.TsfReviewService;
- import com.style24.front.biz.service.TsfWishlistService;
- import com.style24.front.biz.thirdparty.NiceCertify;
- import com.style24.front.support.controller.TsfBaseController;
- import com.style24.front.support.env.TsfConstants;
- import com.style24.front.support.security.session.TsfSession;
- import com.style24.persistence.TscPageRequest;
- import com.style24.persistence.domain.Cart;
- import com.style24.persistence.domain.Coupon;
- import com.style24.persistence.domain.CustAccount;
- import com.style24.persistence.domain.CustContactHst;
- import com.style24.persistence.domain.CustDeliveryAddr;
- import com.style24.persistence.domain.Customer;
- import com.style24.persistence.domain.GiftCard;
- import com.style24.persistence.domain.Goods;
- import com.style24.persistence.domain.Order;
- import com.style24.persistence.domain.OrderChange;
- import com.style24.persistence.domain.Point;
- import com.style24.persistence.domain.ReinboundInform;
- import com.style24.persistence.domain.Review;
- import com.style24.persistence.domain.SweetTracker;
- import com.style24.persistence.domain.WishList;
- import lombok.extern.slf4j.Slf4j;
- /**
- * 마이페이지 Controller
- *
- * @author gagamel
- * @since 2020. 12. 29
- */
- @Controller
- @RequestMapping("/mypage")
- @Slf4j
- public class TsfMypageController extends TsfBaseController {
- @Autowired
- private Environment env;
- @Autowired
- private TscMessageByLocale message;
- @Autowired
- private TsfCustomerService customerService;
- @Autowired
- private TscCustomerService coreCustomerService;
- @Autowired
- private TsfOrderService orderService;
- @Autowired
- private TscOrderService coreOrderService;
- @Autowired
- private TsfOrderChangeService orderChangeService;
- @Autowired
- private TscOrderChangeService coreOrderChangeService;
- @Autowired
- private TscOrderRefundService coreOrderRefundService;
- @Autowired
- private TsfReviewService reviewService;
- @Autowired
- private TsfWishlistService wishListService;
- @Autowired
- private TsfPointService pointService;
- @Autowired
- private TsfGiftcardService giftcardService;
- @Autowired
- private TsfCouponService couponService;
- @Autowired
- private TsfRendererService rendererService;
- @Autowired
- private NiceCertify niceCertify;
- @Autowired
- private TscCouponService coreCouponService;
- @Autowired
- private TsfCartService cartService;
- @Autowired
- private TsfCommonService commonService;
- @Autowired
- private TscKcpService coreKcpService;
- @Autowired
- private TsfReinboundService reinboundService;
-
- @Autowired
- private TscWmsService coreWmsService;
-
- @Autowired
- private TsfDeliveryService deliveryService;
-
- @Autowired
- private TscEnvsetService eventService;
- @Autowired
- private TscKakaotalkService coreKakaotalkService;
- @Autowired
- private TscMailService mailService;
- @Autowired
- private TsfLoginService loginService;
- /**
- * 마이페이지 메인 화면
- *
- * @return
- * @author card007
- * @since 2021. 02. 04
- */
- @GetMapping({"/main/form", "/order/list/form"})
- public ModelAndView mypageOrderListForm(HttpServletRequest request, @RequestBody(required = false) Order order) {
- ModelAndView mav = new ModelAndView();
- if (order == null) {
- order = new Order();
- }
- // 고객번호 설정
- int custNo = TsfSession.getInfo().getCustNo();
- order.setCustNo(custNo);
- // 고객정보 조회
- Customer customer = new Customer();
- customer.setSiteCd(TscConstants.Site.STYLE24.value());
- customer.setCustNo(custNo);
- customer.setCustStat(TscConstants.CustStat.ACTIVE.value());
- mav.addObject("customerInfo", coreCustomerService.getCustomerInfo(customer));
- // 쿠폰정보 조회
- mav.addObject("couponCnt", coreOrderService.getCouponInfo(order));
- order.setExpiredSoon("Y");
- mav.addObject("expiredSoonCouponCnt", coreOrderService.getCouponInfo(order));
- // 포인트 정보 조회
- mav.addObject("rmPntAmt", coreOrderService.getCustPointInfo(order));
- // 상품권 정보 조회
- mav.addObject("rmGfcdAmt", coreOrderService.getGiftcardInfo(order));
- // 주문 상태 별 수량 조회
- mav.addObject("orderCount", coreOrderService.getOrderStatCount(order));
-
- // 2021.04.21 모바일에서 사용하려고 추가
- int totalCnt = orderService.getPagingOrdNoListCount(order);
- mav.addObject("totalCnt", totalCnt);
-
- // 2021.04.25 마이페이지 메인화면 판단기준
- if (request.getRequestURL().toString().indexOf("mypage/main/form") > 0) {
- mav.addObject("mypageMainYn", "Y");
- } else {
- mav.addObject("mypageMainYn", "N");
- }
-
- // 2021.04.30 모바일 추가
- String custGradeNm1Str = coreCustomerService.getCustomerInfo(customer).getCustGradeNm().substring(0,1);
- mav.addObject("custGradeNm1Str", custGradeNm1Str);
- // 주문상세상태코드 설정
- mav.addObject("ordDtlStatList", rendererService.getCommonCodeList("G013", "Y", new String[] {"G013_10", "G013_11", "G013_25", "G013_35", "G013_55", "G013_97", "G013_98", "G013_99"}));
- mav.setViewName(super.getDeviceViewName("mypage/MypageOrderListForm"));
- return mav;
- }
- /**
- * 마이페이지 주문상세 화면
- *
- * @return
- * @author card007
- * @since 2021. 02. 15
- */
- @GetMapping("/order/detail/form/{ordNo}")
- public ModelAndView mypageOrderDetailForm(@PathVariable(value = "ordNo") int ordNo) {
- ModelAndView mav = new ModelAndView();
- // 고객번호 설정
- int custNo = TsfSession.getInfo().getCustNo();
- mav.addObject("custNo", custNo);
- // 고객정보 조회
- Customer customer = new Customer();
- customer.setSiteCd(TscConstants.Site.STYLE24.value());
- customer.setCustNo(custNo);
- customer.setCustStat(TscConstants.CustStat.ACTIVE.value());
- customer = coreCustomerService.getCustomerInfo(customer);
- mav.addObject("customerInfo", customer);
- // 로그인여부 설정
- mav.addObject("isLogin", TsfSession.isLogin());
- // 주문번호 설정
- mav.addObject("ordNo", ordNo);
- Order order = new Order();
- order.setCustNo(custNo);
- order.setOrdNo(ordNo);
- // 주문목록 조회
- Collection<GagaMap> orderList = orderService.getOrderListForMypage(order);
- if (orderList.size() == 0) {
- mav.setViewName("redirect:/mypage/order/list/form");
- return mav;
- }
- mav.addObject("orderList", orderList);
- mav.addObject("oneData", orderList.iterator().next().get("oneData"));
- mav.addObject("allCanYn", orderList.iterator().next().get("allCanYn"));
- mav.addObject("allDecideYn", orderList.iterator().next().get("allDecideYn"));
- // 주문정보 조회
- mav.addObject("orderInfo", coreOrderService.getOrderInfoList(order).iterator().next());
- // 주문 금액정보 조회
- mav.addObject("orderAmtInfo", orderService.getOrderAmtForMypage(order));
- // 주문 결제정보 조회
- mav.addObject("paymentInfo", orderService.getPaymentInfoForMypage(order));
- // 주문 배송지 정보 조회
- mav.addObject("deliveryAddrInfo", orderService.getOrderDeliveryAddrInfo(order));
- // 상품권 현금영수증 신청 정보 조회
- mav.addObject("cashReceiptsInfo", giftcardService.getCashReceiptsRequestInfo(order));
- // KCP 전표 경로 설정
- mav.addObject("kcpReceiptUrl", env.getProperty("pg.kcp.receipt.url"));
- mav.setViewName(super.getDeviceViewName("mypage/MypageOrderDetailForm"));
- return mav;
- }
- /**
- * 마이페이지 주문목록 조회
- *
- * @param Order
- * @return ModelAndView
- * @author card007
- * @since 2021. 02. 18
- */
- @PostMapping("/order/list")
- @ResponseBody
- public GagaMap getOrderList(@RequestBody Order order) {
- GagaMap map = new GagaMap();
- // 고객번호 설정
- int custNo = 0;
- if(TsfSession.isLogin()) {
- custNo = TsfSession.getInfo().getCustNo();
- }
- // 페이징 처리 설정
- order.setCustNo(custNo);
- TscPageRequest pageable = new TscPageRequest((order.getPageNo() > 0 ? order.getPageNo() - 1 : 0), order.getPageSize(), order.getPageUnit());
- pageable.setTotalCount(orderService.getPagingOrdNoListCount(order));
- order.setPageable(pageable);
- // 페이징 처리 및 주문정보 조회
- List<Integer> ordNoList = new ArrayList<>();
- for (Order tmpOrder : orderService.getPagingOrdNoList(order)) {
- ordNoList.add(tmpOrder.getOrdNo());
- }
- if (ordNoList.size() > 0) {
- order.setOrdNoList(ordNoList.stream().mapToInt(Integer::intValue).toArray());
- map.set("orderList", orderService.getOrderListForMypage(order));
- }
- map.set("orderInfo", order);
- return map;
- }
- /**
- * 마이페이지 주문상세 주문내역 삭제
- *
- * @return
- * @author card007
- * @since 2021. 02. 15
- */
- @PostMapping("/order/delete")
- @ResponseBody
- public GagaMap deleteOrder(@RequestBody Order order) {
- GagaMap result = new GagaMap();
- // 고객번호 설정
- int custNo = TsfSession.getInfo().getCustNo();
- order.setUpdNo(custNo);
- // 주문내역 삭제 처리
- int chk = orderService.updateOrderDisplayYn(order);
- if (chk > 0) {
- result.set("message", message.getMessage("SUCC_0003"));
- result.set("status", GagaResponseStatus.SUCCESS.getCode());
- } else {
- result.set("message", message.getMessage("FAIL_0003"));
- result.set("status", GagaResponseStatus.FAIL.getCode());
- }
- return result;
- }
- /**
- * 마이페이지 구매확정 처리
- *
- * @return
- * @author card007
- * @since 2021. 02. 17
- */
- @PostMapping("/order/decision")
- @ResponseBody
- public GagaMap decideOrder(@RequestBody Order order) {
- GagaMap result = new GagaMap();
- if (order.getOrdDtlNoArr().length == 0) {
- result.set("message", message.getMessage("FAIL_1003"));
- result.set("status", GagaResponseStatus.FAIL.getCode());
- return result;
- }
- // 고객번호 설정
- int custNo = TsfSession.getInfo().getCustNo();
- order.setCustNo(custNo);
- order.setRegNo(custNo);
- order.setUpdNo(custNo);
- // 구매확정 처리
- result = coreOrderService.decideOrder(order);
- return result;
- }
- /**
- * 마이페이지 교환신청 화면
- *
- * @param Order
- * @return ModelAndView
- * @author card007
- * @since 2021. 02. 22
- */
- @GetMapping("/exchange/form")
- @ResponseBody
- public ModelAndView exchangeForm(Order order) {
- ModelAndView mav = new ModelAndView();
- // 주문번호 설정
- mav.addObject("ordNo", order.getOrdNo());
- // 고객번호 설정
- int custNo = TsfSession.getInfo().getCustNo();
- order.setCustNo(custNo);
- mav.addObject("custNo", custNo);
- // 고객정보 조회
- Customer customer = new Customer();
- customer.setSiteCd(TscConstants.Site.STYLE24.value());
- customer.setCustNo(custNo);
- customer.setCustStat(TscConstants.CustStat.ACTIVE.value());
- customer = coreCustomerService.getCustomerInfo(customer);
- mav.addObject("customerInfo", customer);
- // 로그인여부 설정
- mav.addObject("isLogin", TsfSession.isLogin());
- // 교환 가능 리스트 조회
- order.setChgGb(TscConstants.OrderChangeGb.EXCHANGE.value());
- GagaMap map = orderChangeService.getReturnListForMypage(order);
- Order oneData = (Order)map.get("oneData");
- mav.addObject("exchangeList", map);
- mav.addObject("oneData", oneData);
- // 주문 배송지 정보 조회
- mav.addObject("deliveryAddrInfo", orderService.getOrderDeliveryAddrInfo(order));
- // 교환 사유 목록 조회
- mav.addObject("exchangeReason", rendererService.getCommonCodeList("G689", "Y"));
- mav.setViewName(super.getDeviceViewName("/mypage/MypageExchangeForm"));
- return mav;
- }
- /**
- * 마이페이지 교환 옵션 변경 팝업
- *
- * @param Order
- * @return ModelAndView
- * @author card007
- * @since 2021. 03. 30
- */
- @PostMapping("/change/option/popup/form")
- @ResponseBody
- public ModelAndView changeOptionPopupForm(OrderChange orderChange) {
- ModelAndView mav = new ModelAndView();
- // custNo 설정
- if (TsfSession.isLogin()) {
- orderChange.setCustNo(TsfSession.getInfo().getCustNo());
- } else {
- orderChange.setCustNo(0);
- }
- // 교환 옵션 정보 조회
- Collection<OrderChange> exchangeOptionInfo = orderChangeService.getExchangeOptionInfo(orderChange);
- mav.addObject("exchangeOptionInfo" , exchangeOptionInfo);
- mav.addObject("oneData" , exchangeOptionInfo.iterator().next());
- mav.addObject("ordDtlNo" , orderChange.getOrdDtlNo());
- mav.addObject("chgQty" , orderChange.getChgQty());
- mav.addObject("title" , "교환 옵션 변경");
- mav.setViewName(super.getDeviceViewName("mypage/ChangeOptionPopupForm"));
- return mav;
- }
- /**
- * 교환신청
- *
- * @param OrderChange
- * @return GagaMap
- * @author card007
- * @since 2021. 04. 06
- */
- @SuppressWarnings("unchecked")
- @PostMapping("/exchange")
- @ResponseBody
- public GagaMap excReq(@RequestBody OrderChange orderChange) {
- GagaMap result = new GagaMap();
- // 교환요청 데이터 확인
- if (orderChange == null) {
- result.set("status", GagaResponseStatus.FAIL.getCode());
- result.set("message", message.getMessage("FAIL_1001"));
- return result;
- }
- // 세션 고객번호 설정
- int custNo = TsfSession.getInfo().getCustNo();
- orderChange.setUpdNo(custNo);
- orderChange.setRegNo(custNo);
- // 교환처리
- result = coreOrderChangeService.exchReq(orderChange);
- int ordChgSq = result.getInt("ordChgSq");
- int addPayCost = result.getInt("addPayCost");
- if (ordChgSq > 0) {
- try {
- // 교환 알림톡 관련 정보 조회
- orderChange = coreOrderChangeService.getKakaoOrderReturnInfo(ordChgSq);
- // 교환 알림톡 발송
- if (StringUtils.isNotBlank(orderChange.getOrdPhnno())) {
- coreKakaotalkService.sendOrderExchangeRequest(orderChange, custNo);
- }
- // 교환배송비 있을 시 추가결제완료 로직에서 메일 발송
- if (addPayCost == 0) {
- // 교환 안내 메일 정보 조회
- GagaMap replaceInfo = coreOrderChangeService.getMailOrderExchangeReplaceInfo(orderChange);
- // 교환 안내 메일 발송
- if (StringUtils.isNotBlank(replaceInfo.getString("ordEmail"))) {
- mailService.sendOrderExchange(replaceInfo, custNo);
- }
- }
- } catch (Exception e) {
- throw new IllegalStateException(message.getMessage("FAIL_0004"));
- }
- }
- // 처리 결과 코드에 따른 메세지 설정
- if (result.get("status").equals(GagaResponseStatus.SUCCESS.getCode())) {
- if (orderChange.getAddPayCost() == 0) {
- result.set("message", message.getMessage("EXCHANGE_0001"));
- }
- } else {
- result.set("message", message.getMessage("FAIL_0004"));
- }
- return result;
- }
- /**
- * 교환요청철회
- *
- * @param OrderChange
- * @return GagaResponse
- * @author card007
- * @since 2021. 04. 20
- */
- @PostMapping("/exchange/cancel")
- @ResponseBody
- public GagaResponse exchangeRequestCancel(@RequestBody OrderChange orderChange) {
- if (orderChange== null) {
- throw new IllegalStateException(message.getMessage("FAIL_1001"));
- }
- // 1. 교환요청철회 정보 설정
- int custNo = TsfSession.isLogin() ? TsfSession.getInfo().getCustNo() : 0;
- orderChange.setCustNo(custNo);
- orderChange.setRegNo(custNo);
- orderChange.setUpdNo(custNo);
-
- String ipAddress = TsfSession.getIpAddress();
- orderChange.setIpAddress(ipAddress);
- // 2.교환요청철회
- coreOrderChangeService.exchangeCancel(orderChange);
- return super.ok(message.getMessage("EXCHANGE_0002"));
- // return super.ok();
- }
- /**
- * 마이페이지 등급쿠폰 다운 처리
- *
- * @return
- * @author card007
- * @since 2021. 02. 17
- */
- @PostMapping("/coupon/download/all")
- @ResponseBody
- public GagaMap createCustGradeAllCoupon(@RequestBody Coupon coupon) {
- GagaMap result = new GagaMap();
- // 고객정보 조회
- Customer customer = new Customer();
- customer.setSiteCd(TscConstants.Site.STYLE24.value());
- customer.setCustNo(coupon.getCustNo());
- customer.setCustStat(TscConstants.CustStat.ACTIVE.value());
- customer = coreCustomerService.getCustomerInfo(customer);
- // 고객정보 설정
- coupon.setCustGb(customer.getCustGb());
- coupon.setCustGrade(customer.getCustGrade());
- // 등급쿠폰 다운 처리
- int count = couponService.createCustGradeAllCoupon(coupon);
- result.set("status", GagaResponseStatus.SUCCESS.getCode());
- if (count == 0) {
- result.set("message", message.getMessage("COUPON_0002"));
- } else {
- result.set("message", message.getMessage("COUPON_0001", new Object[] {count}));
- }
- return result;
- }
- /**
- * 마이페이지 쿠폰 수량 조회
- *
- * @return
- * @author card007
- * @since 2021. 02. 25
- */
- @PostMapping("/coupon/count")
- @ResponseBody
- public GagaMap fnReloadCouponCount() {
- GagaMap result = new GagaMap();
- // 쿠폰정보 조회
- Order order = new Order();
- order.setCustNo(TsfSession.getInfo().getCustNo());
- result.set("couponCnt", coreOrderService.getCouponInfo(order));
- order.setExpiredSoon("Y");
- result.set("expiredSoonCouponCnt", coreOrderService.getCouponInfo(order));
- result.set("status", GagaResponseStatus.SUCCESS.getCode());
- return result;
- }
- /**
- * 마이페이지 상태별 수량 조회
- *
- * @return
- * @author card007
- * @since 2021. 02. 25
- */
- @PostMapping("/status/count")
- @ResponseBody
- public GagaMap fnReloadStatusCount() {
- GagaMap result = new GagaMap();
- // 쿠폰정보 조회
- Order order = new Order();
- order.setCustNo(TsfSession.getInfo().getCustNo());
- result.set("orderCount", coreOrderService.getOrderStatCount(order));
- result.set("status", GagaResponseStatus.SUCCESS.getCode());
- return result;
- }
- /**
- * 마이페이지 반품신청 화면
- *
- * @param Order
- * @return ModelAndView
- * @author card007
- * @since 2021. 02. 25
- */
- @GetMapping("/return/form")
- @ResponseBody
- public ModelAndView returnForm(Order order) {
- ModelAndView mav = new ModelAndView();
- // 주문번호 설정
- mav.addObject("ordNo", order.getOrdNo());
- // 고객번호 설정
- int custNo = TsfSession.getInfo().getCustNo();
- order.setCustNo(custNo);
- mav.addObject("custNo", custNo);
- // 고객정보 조회
- Customer customer = new Customer();
- customer.setSiteCd(TscConstants.Site.STYLE24.value());
- customer.setCustNo(custNo);
- customer.setCustStat(TscConstants.CustStat.ACTIVE.value());
- customer = coreCustomerService.getCustomerInfo(customer);
- mav.addObject("customerInfo", customer);
- // 로그인여부 설정
- mav.addObject("isLogin", TsfSession.isLogin());
- // 반품 가능 리스트 조회
- order.setChgGb(TscConstants.OrderChangeGb.RETURN.value());
- GagaMap map = orderChangeService.getReturnListForMypage(order);
- Order oneData = (Order)map.get("oneData");
- mav.addObject("returnList", map);
- mav.addObject("oneData", oneData);
- // 주문 결제정보 조회
- mav.addObject("paymentInfo", orderService.getPaymentInfoForMypage(order));
- // 주문 배송지 정보 조회
- mav.addObject("deliveryAddrInfo", orderService.getOrderDeliveryAddrInfo(order));
- // 반품 사유 목록 조회
- mav.addObject("returnReason", rendererService.getCommonCodeList("G688", "Y"));
-
- // 2021.05.03 은행목록추가
- mav.addObject("bankList", rendererService.getCommonCodeList("G942", "Y"));
- mav.setViewName(super.getDeviceViewName("/mypage/MypageReturnForm"));
- return mav;
- }
- /**
- * 반품신청
- *
- * @param OrderChange
- * @return GagaMap
- * @author card007
- * @since 2021. 03. 30
- */
- @SuppressWarnings("unchecked")
- @PostMapping("/return")
- @ResponseBody
- public GagaMap rtnReq(@RequestBody OrderChange orderChange) {
- if (orderChange == null) {
- throw new IllegalStateException(message.getMessage("FAIL_1001"));
- }
- // 1. 세션회원조회
- int custNo = TsfSession.getInfo().getCustNo();
- orderChange.setCustNo(custNo);
- // 2. 환불 사전 정보 조회
- GagaMap refundPreInfo = coreOrderChangeService.getRefundPreInfo(orderChange);
- List<Order> returnReqList = (List<Order>)refundPreInfo.get("cnclReqList");
- String allLastCanYn = refundPreInfo.getString("allLastCanYn");
- String supplyCompCd = refundPreInfo.getString("supplyCompCd");
- // 3. 환불금액계산
- GagaMap result = coreOrderRefundService.cnclRtnRefundAmt(returnReqList);
- // 4. 주문변경 기본정보 설정
- result.set("ordNo", orderChange.getOrdNo()); // 주문번호
- result.setInt("custNo", custNo); // 고객번호
- // result.set("ordChgSq", orderChange.getOrdChgSq()); // 주문변경번호
- result.set("chgReason", orderChange.getChgReason()); // 변경사유
- result.set("chgMemo", orderChange.getChgMemo()); // 변경메모
- result.set("accountNo", orderChange.getAccountNo()); // 환불계좌번호
- result.set("accountNm", orderChange.getAccountNm()); // 환불계좌예금주명
- result.set("bankCd", orderChange.getBankCd()); // 환불계좌은행코드
- result.setString("allLastCanYn", allLastCanYn); // 전체 마지막 취소 여부
- result.set("isCustomer", orderChange.getIsCustomer()); // 변경사유 (고객, 회사)
- result.set("wdGb", orderChange.getWdGb()); // 회수방법
- result.set("wdInvoiceNo", orderChange.getWdInvoiceNo()); // 회수송장번호
- // 5. 주문변경 회수지정보 추가
- result.set("chgerNm", orderChange.getChgerNm()); // 변경자명
- result.set("chgerEmail", orderChange.getChgerEmail()); // 변경자이메일주소
- result.set("chgerZipcode", orderChange.getChgerZipcode()); // 회수지우편번호
- result.set("chgerBaseAddr", orderChange.getChgerBaseAddr()); // 회수지기본주소
- result.set("chgerDtlAddr", orderChange.getChgerDtlAddr()); // 회수지상세주소
- result.set("chgerPhnno", orderChange.getChgerPhnno()); // 변경자핸드폰번호
- result.set("chgerTelno", orderChange.getChgerTelno()); // 변경자전화번호
- result.set("chgerRtnMemo", orderChange.getChgerRtnMemo()); // 반품메모
- // 6. 주문변경 DB 등록 (TB_ORDER_CHANGE, TB_ORDER_CHANGE_DETAIL, TB_REFUND)
- GagaMap map = coreOrderChangeService.returnRequest(result);
- int ordChgSq = map.getInt("ordChgSq");
- int addPayCost = map.getInt("addPayCost");
- if (ordChgSq > 0) {
- try {
- // 반품 알림톡 관련 정보 조회
- orderChange = coreOrderChangeService.getKakaoOrderReturnInfo(ordChgSq);
-
- // 반품 알림톡 발송
- if (StringUtils.isNotBlank(orderChange.getOrdPhnno())) {
- coreKakaotalkService.sendOrderReturnRequest(orderChange, custNo);
- }
- // 반품배송비 있을 시 추가결제완료 로직에서 메일 전송
- if (addPayCost == 0) {
- // 반품 안내 메일 정보 조회
- GagaMap replaceInfo = coreOrderChangeService.getMailOrderReturnReplaceInfo(orderChange);
- // 반품 안내 메일 발송
- if (StringUtils.isNotBlank(replaceInfo.getString("ordEmail"))) {
- mailService.sendOrderReturn(replaceInfo, custNo);
- }
- }
- } catch (Exception e) {
- throw new IllegalStateException(message.getMessage("FAIL_0004"));
- }
- }
- result.set("status", GagaResponseStatus.SUCCESS.getCode());
- if (orderChange.getAddPayCost() == 0) {
- result.set("message", message.getMessage("RETURN_0001"));
- }
- return result;
- }
- /**
- * 반품요청철회
- *
- * @param OrderChange
- * @return GagaResponse
- * @author card007
- * @since 2021. 04. 20
- */
- @PostMapping("/return/cancel")
- @ResponseBody
- public GagaResponse rtnReqCancel(@RequestBody OrderChange orderChange) {
- if (orderChange== null) {
- throw new IllegalStateException(message.getMessage("FAIL_1001"));
- }
- // 1. 반품요청철회 정보 설정
- int custNo = TsfSession.isLogin() ? TsfSession.getInfo().getCustNo() : 0;
- GagaMap map = new GagaMap();
- map.set("ordNo" , orderChange.getOrdNo());
- map.set("ordChgSq" , orderChange.getOrdChgSq());
- map.set("custNo" , custNo);
- map.set("ipAddress" , TsfSession.getIpAddress());
- // 2.반품요청철회
- coreOrderChangeService.rtnReqCancel(map, custNo);
- return super.ok(message.getMessage("RETURN_0002"));
- // return super.ok();
- }
- /**
- * 마이페이지 취소신청 화면
- *
- * @param Order
- * @return ModelAndView
- * @author card007
- * @since 2021. 03. 19
- */
- @GetMapping("/cancel/form")
- @ResponseBody
- public ModelAndView cancelForm(Order order) {
- ModelAndView mav = new ModelAndView();
- // 고객번호 설정
- int custNo = TsfSession.getInfo().getCustNo();
- order.setCustNo(custNo);
-
- // 2021.05.07 고객정보 조회
- Customer customer = new Customer();
- customer.setSiteCd(TscConstants.Site.STYLE24.value());
- customer.setCustNo(custNo);
- customer.setCustStat(TscConstants.CustStat.ACTIVE.value());
- customer = coreCustomerService.getCustomerInfo(customer);
-
- mav.addObject("customerInfo", customer);
- // 취소 가능 리스트 조회
- GagaMap map = orderChangeService.getCancelListForMypage(order);
- Order oneData = (Order)map.get("oneData");
- mav.addObject("cancelList", map);
- mav.addObject("oneData", oneData);
- // 주문 결제정보 조회
- mav.addObject("paymentInfo", orderService.getPaymentInfoForMypage(order));
- // 2021.05.03 은행목록추가
- mav.addObject("bankList", rendererService.getCommonCodeList("G942", "Y"));
- mav.setViewName(super.getDeviceViewName("/mypage/MypageCancelForm"));
- return mav;
- }
- /**
- * 마이페이지 취소신청
- *
- * @param Collection<Order>
- * @return GagaMap
- * @author card007
- * @since 2021. 03. 22
- */
- @SuppressWarnings("unchecked")
- @PostMapping("/cancel")
- @ResponseBody
- public GagaMap cancel(@RequestBody OrderChange orderChange) {
- if (orderChange == null) {
- throw new IllegalStateException(message.getMessage("FAIL_1001"));
- }
- // 1. 세션회원조회
- int custNo = TsfSession.getInfo().getCustNo();
- orderChange.setCustNo(custNo);
- orderChange.setIpAddress(TsfSession.getIpAddress());
- // 2. 취소완료 처리
- GagaMap result = coreOrderChangeService.orderCancelPreInfoTemp(orderChange, custNo);
- // 3. 취소완료 카카오알림톡 발송
- int ordChgSq = result.getInt("ordChgSq");
-
- if (ordChgSq > 0) {
- try {
- // 취소 알림톡 관련 정보 조회
- orderChange = coreOrderChangeService.getKakaoOrderCancelInfo(ordChgSq);
- // 취소 알림톡 발송
- if (StringUtils.isNotBlank(orderChange.getOrdPhnno())) {
- coreKakaotalkService.sendOrderCancelComplete(orderChange, custNo);
- }
- // 취소 안내 메일 정보 조회
- GagaMap replaceInfo = coreOrderChangeService.getMailOrderCancelReplaceInfo(orderChange);
- // 취소 안내 메일 발송
- if (StringUtils.isNotBlank(replaceInfo.getString("ordEmail"))) {
- mailService.sendOrderCancel(replaceInfo, custNo);
- }
- } catch (Exception e) {
- throw new IllegalStateException(message.getMessage("FAIL_0004"));
- }
- }
- result.set("status", GagaResponseStatus.SUCCESS.getCode());
- result.set("message", message.getMessage("CANCEL_0001"));
- return result;
- }
- /**
- * 마이페이지 장바구니 관련 정보 조회
- *
- * @param Cart
- * @return Collecion<Cart>
- * @author card007
- * @since 2021. 03. 26
- */
- @PostMapping("/cart/add/info")
- @ResponseBody
- public Collection<Cart> getAddCartInfo(@RequestBody Cart cart) {
- return cartService.getAddCartInfoForMypage(cart);
- }
- /**
- * 환불계좌 등록 팝업
- *
- * @param OrderChange
- * @return ModelAndView
- * @author card007
- * @since 2021. 04. 05
- */
- @ResponseBody
- @RequestMapping(value = "/refund/account/register/popup/form")
- public ModelAndView registerRefundAccountPopupForm(@RequestBody OrderChange orderChange) {
- ModelAndView mav = new ModelAndView();
- // 계좌인증용 은행코드 조회
- mav.addObject("bankList", rendererService.getAvailCommonCodeList("G942"));
- // 계좌주명 설정
- mav.addObject("accountNm", orderChange.getAccountNm());
- // 주문번호 설정
- mav.addObject("ordNo", orderChange.getOrdNo());
- mav.setViewName(super.getDeviceViewName("popup/RefundAccountAddPopupForm"));
- return mav;
- }
- /**
- * 마이페이지 취반교 목록 화면
- *
- * @return
- * @author card007
- * @since 2021. 02. 04
- */
- @GetMapping("/cre/list/form")
- public ModelAndView mypageCreListForm() {
- ModelAndView mav = new ModelAndView();
- // 고객번호 설정
- int custNo = TsfSession.getInfo().getCustNo();
- mav.addObject("custNo", custNo);
- // 주문 상태 별 수량 조회
- Order order = new Order();
- order.setCustNo(custNo);
- mav.addObject("orderCount", coreOrderService.getOrderStatCount(order));
-
- // 2021.04.21 모바일에서 사용하려고 추가
- OrderChange orderChange = new OrderChange();
- orderChange.setCustNo(custNo);
- int totalCnt = orderChangeService.getPagingCreListCount(orderChange);
- mav.addObject("totalCnt", totalCnt);
- // 주문상세상태코드 설정
- mav.addObject("chgStatList", rendererService.getCommonCodeList("G685", "Y", new String[] {"G685_10", "G685_11", "G685_19"}));
- mav.setViewName(super.getDeviceViewName("mypage/MypageCreListForm"));
- return mav;
- }
- /**
- * 마이페이지 취반교 목록 조회
- *
- * @param OrderChange
- * @return ModelAndView
- * @author card007
- * @since 2021. 02. 18
- */
- @PostMapping("/cre/list")
- @ResponseBody
- public GagaMap getCreList(@RequestBody OrderChange orderChange) {
- GagaMap map = new GagaMap();
- // 고객번호 설정
- int custNo = 0;
- if(TsfSession.isLogin()) {
- custNo = TsfSession.getInfo().getCustNo();
- }
- // 페이징 처리 설정
- orderChange.setCustNo(custNo);
- TscPageRequest pageable = new TscPageRequest((orderChange.getPageNo() > 0 ? orderChange.getPageNo() - 1 : 0), orderChange.getPageSize(), orderChange.getPageUnit());
- pageable.setTotalCount(orderChangeService.getPagingCreListCount(orderChange));
- orderChange.setPageable(pageable);
- // 페이징 처리 및 주문정보 조회
- List<Integer> ordChgSqList = new ArrayList<>();
- for (OrderChange tmpOrderChange : orderChangeService.getPagingCreList(orderChange)) {
- ordChgSqList.add(tmpOrderChange.getOrdChgSq());
- }
- if (ordChgSqList.size() > 0) {
- orderChange.setOrdChgSqArr(ordChgSqList.stream().mapToInt(Integer::intValue).toArray());
- map.set("creList", orderChangeService.getCreList(orderChange));
- }
- map.set("creInfo", orderChange);
- return map;
- }
- /**
- * 마이페이지 취반교 취소 상세 화면
- *
- * @return ModelAndView
- * @author card007
- * @since 2021. 04. 12
- */
- @GetMapping("/cre/cancel/detail/form")
- public ModelAndView mypageCreCancelDetailForm(OrderChange orderChange) {
- ModelAndView mav = new ModelAndView();
- // 고객번호 설정
- int custNo = TsfSession.getInfo().getCustNo();
- mav.addObject("custNo", custNo);
- // 취소상세 데이터 조회
- orderChange.setCustNo(custNo);
- GagaMap map = coreOrderChangeService.getCreCancelDetailInfo(orderChange);
- OrderChange oneData = (OrderChange) map.get("oneData");
- mav.addObject("cancelDetailList", map);
- mav.addObject("oneData", oneData);
- mav.addObject("refundYn", map.getString("refundYn"));
- // 주문 결제정보 조회
- Order order = new Order();
- order.setOrdNo(orderChange.getOrdNo());
- mav.addObject("paymentInfo", orderService.getPaymentInfoForMypage(order));
- // KCP 전표 경로 설정
- mav.addObject("kcpReceiptUrl", env.getProperty("pg.kcp.receipt.url"));
- mav.setViewName(super.getDeviceViewName("mypage/MypageCreCancelDetailForm"));
- return mav;
- }
- /**
- * 마이페이지 취반교 반품 상세 화면
- *
- * @return ModelAndView
- * @author card007
- * @since 2021. 04. 13
- */
- @GetMapping("/cre/return/detail/form")
- public ModelAndView mypageCreReturnDetailForm(OrderChange orderChange) {
- ModelAndView mav = new ModelAndView();
- // 고객번호 설정
- int custNo = TsfSession.getInfo().getCustNo();
- mav.addObject("custNo", custNo);
- // 로그인여부 설정
- mav.addObject("isLogin", TsfSession.isLogin());
- // 취소상세 데이터 조회
- orderChange.setCustNo(custNo);
- GagaMap map = coreOrderChangeService.getCreReturnDetailInfo(orderChange);
- OrderChange oneData = (OrderChange) map.get("oneData");
- mav.addObject("returnDetailList", map);
- mav.addObject("oneData", oneData);
- mav.addObject("refundYn", map.getString("refundYn"));
- // 주문 결제정보 조회
- Order order = new Order();
- order.setOrdNo(orderChange.getOrdNo());
- mav.addObject("paymentInfo", orderService.getPaymentInfoForMypage(order));
- // KCP 전표 경로 설정
- mav.addObject("kcpReceiptUrl", env.getProperty("pg.kcp.receipt.url"));
- mav.setViewName(super.getDeviceViewName("mypage/MypageCreReturnDetailForm"));
- return mav;
- }
- /**
- * 마이페이지 취반교 교환 상세 화면
- *
- * @return ModelAndView
- * @author card007
- * @since 2021. 04. 13
- */
- @GetMapping("/cre/exchange/detail/form")
- public ModelAndView mypageCreExchangeDetailForm(OrderChange orderChange) {
- ModelAndView mav = new ModelAndView();
- // 고객번호 설정
- int custNo = TsfSession.getInfo().getCustNo();
- mav.addObject("custNo", custNo);
- // 로그인여부 설정
- mav.addObject("isLogin", TsfSession.isLogin());
- // 취소상세 데이터 조회
- orderChange.setCustNo(custNo);
- GagaMap map = coreOrderChangeService.getCreExchangeDetailInfo(orderChange);
- OrderChange oneData = (OrderChange) map.get("oneData");
- mav.addObject("exchangeDetailList", map);
- mav.addObject("oneData", oneData);
- // KCP 전표 경로 설정
- mav.addObject("kcpReceiptUrl", env.getProperty("pg.kcp.receipt.url"));
- mav.setViewName(super.getDeviceViewName("mypage/MypageCreExchangeDetailForm"));
- return mav;
- }
- /**
- * WMS 주문 취소 가능 여부 조회
- *
- * @param
- * @return
- * @author card007
- * @since 2021. 04. 22
- */
- @PostMapping("/wms/cancel/available")
- @ResponseBody
- public GagaMap getWmsCancelYn(@RequestBody OrderChange orderChange) {
- GagaMap result = new GagaMap();
- String cancelYn = "Y";
- Integer ordNo = orderChange.getOrdNo();
- for (Integer ordDtlNo : orderChange.getOrdDtlNoArr()) {
- String rst = coreWmsService.getCancelYn(ordNo, ordDtlNo);
-
- if ("Y".equals(cancelYn) && "N".equals(rst)) {
- cancelYn = "N";
- }
- }
- result.setString("cancelYn", cancelYn);
- return result;
- }
- /**
- * 상품권 KCP 현금영수증 신청
- *
- * @param Order
- * @return GagaResponse
- * @author card007
- * @since 2021. 04. 25
- */
- @PostMapping("/cash/receipts/request")
- @ResponseBody
- public GagaMap requestCashReceipts(@RequestBody GiftCard giftCard) {
- GagaMap map = new GagaMap();
- // 상품권 KCP 현금영수증 신청 정보 조회
- giftCard = giftcardService.getCashReceiptsInfo(giftCard);
- if (giftCard == null || giftCard.getUsGfcdAmt() == 0) {
- throw new IllegalStateException(message.getMessage("FAIL_0004"));
- }
- // 상품권 KCP 현금영수증 신청
- GiftCard result = orderService.kcpCashReceiptsRequest(giftCard);
- // 결과 처리
- if("0000".equals(result.getResultCd())) {
- map.set("status", GagaResponseStatus.SUCCESS.getCode());
- map.set("message", message.getMessage("SUCC_0004"));
- } else {
- map.set("status", GagaResponseStatus.SUCCESS.getCode());
- map.set("message", message.getMessage("FAIL_0004"));
- }
- return map;
- }
-
- /**
- * 마이페이지 STYLE24 포인트화면
- *
- * @param
- * @return ModelAndView
- * @author csh9191
- * @since 2021. 02. 25
- */
- @GetMapping("/point/form")
- public ModelAndView stylePointForm(Point point) {
- ModelAndView mav = new ModelAndView();
- int custNo = TsfSession.getInfo().getCustNo();
- point.setCustNo(custNo);
- // 잔여포인트
- mav.addObject("rmPntAmt", pointService.getUsablePointInfo(point));
- // 적립예정포인트 expectedPntAmt
- mav.addObject("expectedPntAmt", pointService.getExpectedPointInfo(point));
- // 한달 이내 소멸 예정 포인트
- mav.addObject("expectedExpirePntAmt", pointService.getExtinctPointInfo(point));
- // 전체내역 조회
- mav.addObject("allPointList", pointService.getAllPointList(point));
- // 적립내역 조회
- mav.addObject("accumulatePointList", pointService.getAccumulatePointList(point));
- // 사용내역 조회
- mav.addObject("usePointList", pointService.getUsePointList(point));
- // 최근 12개월
- mav.addObject("date", pointService.getRecentlyDate());
- mav.setViewName(super.getDeviceViewName("mypage/MypagePointForm"));
- return mav;
- }
- /**
- * 마이페이지 STYLE24 포인트 전체,적립,사용내역
- *
- * @param param
- * @return GagaMap
- * @author csh9191
- * @since 2021. 03. 02
- */
- @PostMapping("/allpoint/list")
- @ResponseBody
- public GagaMap getAllPointList(@RequestBody Point point) {
- GagaMap result = new GagaMap();
- int custNo = TsfSession.getInfo().getCustNo();
- point.setCustNo(custNo);
- // 전체내역 조회
- result.set("allPointList", pointService.getAllPointList(point));
- // 적립내역 조회
- result.set("accumulatePointList", pointService.getAccumulatePointList(point));
- // 사용내역 조회
- result.set("usePointList", pointService.getUsePointList(point));
- return result;
- }
- /**
- * 마이페이지 반품신청 환불금액 계산
- *
- * @param Order
- * @return GagaMap
- * @author card007
- * @since 2021. 02. 26
- */
- @SuppressWarnings("unchecked")
- @PostMapping("/cancel/refund/amt/calculate")
- @ResponseBody
- public GagaMap calculateRefundAmt(@RequestBody OrderChange orderChange) {
- if (orderChange == null) {
- throw new IllegalStateException(message.getMessage("FAIL_1001"));
- }
- // 1. 세션회원조회
- int custNo = TsfSession.getInfo().getCustNo();
- orderChange.setCustNo(custNo);
- // 2. 환불 사전 정보 조회
- GagaMap refundPreInfo = coreOrderChangeService.getRefundPreInfo(orderChange);
- List<Order> cnclReqList = (List<Order>)refundPreInfo.get("cnclReqList");
- return coreOrderRefundService.cnclRtnRefundAmt(cnclReqList);
- }
- /**
- * 마이페이지 배송지 정보 수정
- *
- * @param Order
- * @return GagaMap
- * @author card007
- * @since 2021. 04. 04
- */
- @PostMapping("/change/delvery/addr")
- @ResponseBody
- public GagaMap changeDelveryAddr(@RequestBody Order order) {
- GagaMap result = new GagaMap();
- result.set("status", GagaResponseStatus.SUCCESS.getCode());
- result.set("message", message.getMessage("DELV_0001"));
- if (TsfSession.isLogin()) {
- order.setCustNo(TsfSession.getInfo().getCustNo());
- } else {
- order.setCustNo(0);
- }
- try {
- commonService.updateDeliverAddr(order);
- commonService.updateDeliverAddrDelvMemo(order);
- // TODO
- // WMS IF TABLE 내 정보 업데이트 처리 필요
- } catch (Exception e) {
- result.set("status", GagaResponseStatus.FAIL.getCode());
- result.set("message", message.getMessage("FAIL_0002"));
- }
- return result;
- }
- /**
- * 마이페이지 배송 메모 수정
- *
- * @param Order
- * @return GagaMap
- * @author card007
- * @since 2021. 04. 04
- */
- @PostMapping("/change/delvery/memo")
- @ResponseBody
- public GagaMap changeDelveryAddrDelvMemo(@RequestBody Order order) {
- GagaMap result = new GagaMap();
- result.set("status", GagaResponseStatus.SUCCESS.getCode());
- result.set("message", message.getMessage("DELV_0002"));
- if (TsfSession.isLogin()) {
- order.setCustNo(TsfSession.getInfo().getCustNo());
- } else {
- order.setCustNo(0);
- }
- try {
- commonService.updateDeliverAddrDelvMemo(order);
- } catch (Exception e) {
- result.set("status", GagaResponseStatus.FAIL.getCode());
- result.set("message", message.getMessage("FAIL_0002"));
- }
- return result;
- }
- /**
- * 마이페이지 회수지 정보 수정
- *
- * @param Order
- * @return GagaMap
- * @author card007
- * @since 2021. 04. 13
- */
- @PostMapping("/change/chger/addr")
- @ResponseBody
- public GagaMap changeChgerAddr(@RequestBody OrderChange orderChange) {
- GagaMap result = new GagaMap();
- result.set("status", GagaResponseStatus.SUCCESS.getCode());
- result.set("message", message.getMessage("DELV_0003"));
- try {
- orderChange.setUpdNo(TsfSession.getInfo().getCustNo());
- orderChangeService.updateChgerAddr(orderChange);
- // TODO
- // WMS IF TABLE 내 정보 업데이트 처리 필요
- } catch (Exception e) {
- result.set("status", GagaResponseStatus.FAIL.getCode());
- result.set("message", message.getMessage("FAIL_0002"));
- }
- return result;
- }
- /**
- * 마이페이지 반품메모 수정
- *
- * @param Order
- * @return GagaMap
- * @author card007
- * @since 2021. 04. 13
- */
- @PostMapping("/change/chger/rtn/memo")
- @ResponseBody
- public GagaMap changeChgerRtnMemo(@RequestBody OrderChange orderChange) {
- GagaMap result = new GagaMap();
- result.set("status", GagaResponseStatus.SUCCESS.getCode());
- result.set("message", message.getMessage("DELV_0004"));
- try {
- orderChange.setUpdNo(TsfSession.getInfo().getCustNo());
- orderChangeService.updateChgerRtnMemo(orderChange);
- // TODO
- // WMS IF TABLE 내 정보 업데이트 처리 필요
- } catch (Exception e) {
- throw new IllegalStateException(message.getMessage("FAIL_0002"));
- }
- return result;
- }
- /**
- * 배송조회 화면
- *
- * @param Order
- * @return ModelAndView
- * @author card007
- * @since 2021. 05. 04
- */
- @GetMapping("/delivery/info/form")
- @ResponseBody
- public ModelAndView deliveryInfoForm(Order order) {
- ModelAndView mav = new ModelAndView();
-
- // 고객번호 설정
- order.setCustNo(TsfSession.getInfo().getCustNo());
- // 주문번호 설정
- mav.addObject("ordNo", order.getOrdNo());
- // 주문목록 조회
- Collection<GagaMap> orderList = orderService.getOrderListForMypage(order);
- if (orderList.size() == 0) {
- mav.setViewName("redirect:/mypage/order/list/form");
- return mav;
- }
- mav.addObject("orderList", orderList);
- mav.addObject("oneData", orderList.iterator().next().get("oneData"));
- // 주문 배송지 정보 조회
- mav.addObject("deliveryAddrInfo", orderService.getOrderDeliveryAddrInfo(order));
- // 스윗트래커 정보 조회
- SweetTracker sweetTracker = new SweetTracker();
- sweetTracker.setShipCompCd(order.getShipCompCd());
- sweetTracker.setInvoiceNo(order.getInvoiceNo());
- mav.addObject("sweetTrackerInfoList", deliveryService.getSweetTrackerDeliveryInfo(sweetTracker));
- mav.setViewName(super.getDeviceViewName("mypage/MypageDeliveryInfoForm"));
-
- return mav;
- }
- /**
- * 회수 배송 조회 팝업
- *
- * @param Order
- * @return ModelAndView
- * @author card007
- * @since 2021. 03. 30
- */
- @PostMapping("/track/withdraw/popup/form")
- @ResponseBody
- public ModelAndView trackWithdrawPopupForm(@RequestBody OrderChange orderChange) {
- ModelAndView mav = new ModelAndView();
- // 스윗트래커 정보 조회
- SweetTracker sweetTracker = new SweetTracker();
- sweetTracker.setShipCompCd(orderChange.getShipCompCd());
- sweetTracker.setInvoiceNo(orderChange.getWdInvoiceNo());
- mav.addObject("sweetTrackerInfoList", deliveryService.getSweetTrackerDeliveryInfo(sweetTracker));
- mav.setViewName(super.getDeviceViewName("popup/TrackWithdrawPopupForm"));
- return mav;
- }
- /**
- * 위시리스트 등록처리
- *
- * @param wishList
- * @return GagaResponse
- * @author eskim
- * @since 2021. 03. 08
- */
- @PostMapping("/wish/list/put")
- @ResponseBody
- public GagaMap createWishList(@RequestBody Collection<WishList> wishList) throws Exception {
- GagaMap result = new GagaMap();
- customerService.createWishList(wishList);
- result.set("status", "200");
- return result;
- }
- /**
- * 위시리스트 삭제처리
- *
- * @param wishList
- * @return GagaResponse
- * @throws Exception
- * @author eskim
- * @since 2021. 03. 08
- */
- @PostMapping("/wish/list/delete")
- @ResponseBody
- public GagaMap deleteWishList(@RequestBody Collection<WishList> wishList) throws Exception {
- GagaMap result = new GagaMap();
- customerService.deleteWishList(wishList);
- result.set("status", "200");
- return result;
- }
- /* 김소원 상품권 쿠폰 리뷰 위시리스트 시작 */
- /**
- * 마이페이지 상품권화면
- *
- * @return
- * @author sowon
- * @since 2021. 03. 12
- */
- @GetMapping("/gift/card/form")
- public ModelAndView mypageGiftcardForm(GiftCard giftcard, Device device) {
- ModelAndView mav = new ModelAndView();
- // 상품권 기본정보
- mav.addObject("giftcardInfo", giftcardService.getGiftcardInfo(giftcard));
- // 최근 12개월 년,월
- mav.addObject("date", giftcardService.getRecentlyDate());
- mav.setViewName(super.getDeviceViewName("mypage/MypageGiftcardForm"));
- return mav;
- }
- /**
- * 마이페이지 상품권 사용 리스트
- *
- * @return
- * @author sowon
- * @since 2021. 03. 12
- */
- @PostMapping("/gift/use/list")
- @ResponseBody
- public GagaMap getGiftcardUseList(@RequestBody GiftCard giftcard) {
- GagaMap result = new GagaMap();
- result.set("giftcardUseList", giftcardService.getGiftcardUseList(giftcard));
- return result;
- }
- /**
- * 마이페이지 상품권 보유 리스트
- *
- * @return
- * @author sowon
- * @since 2021. 03. 12
- */
- @PostMapping("/gift/own/list")
- @ResponseBody
- public GagaMap getGiftcardOwnList(@RequestBody GiftCard giftcard) {
- GagaMap result = new GagaMap();
- result.set("giftcardOwnList", giftcardService.getGiftcardOwnList(giftcard));
- return result;
- }
- /**
- * 마이페이지 상품권 저장
- *
- * @return
- * @author sowon
- * @throws Exception
- * @since 2021. 03. 15
- */
- @PostMapping("/gift/use/confirm")
- @ResponseBody
- public GagaResponse createGiftcardUseConfirm(@RequestBody GiftCard giftcard) throws Exception {
- giftcardService.createGiftcardUseConfirm(giftcard);
- return super.ok(message.getMessage("SUCC_0001"));
- }
- /**
- * 마이페이지 쿠폰화면
- *
- * @return
- * @author sowon
- * @since 2021. 03. 16
- */
- @GetMapping("/coupon/form")
- public ModelAndView mypageCouponForm(Coupon coupon) {
- ModelAndView mav = new ModelAndView();
- mav.addObject("couponList", couponService.getMypageCouponList(coupon));
- mav.addObject("couponInfo", couponService.getMypageCouponInfo(coupon));
- mav.setViewName(super.getDeviceViewName("mypage/MypageCouponForm"));
- return mav;
- }
-
- /**
- * 퀵메뉴 보유한 쿠폰리스트
- * @return
- * @author sowon
- * @since 2021. 4. 14
- */
- @GetMapping("/quick/own/coupon/list")
- @ResponseBody
- public Collection<Coupon> getQuickOwnCouponList() {
- Coupon coupon = new Coupon();
- Collection<Coupon> ownCouponList = new ArrayList<>();
- coupon.setQuickYn("Y");
- ownCouponList = couponService.getMypageCouponList(coupon);
- return ownCouponList;
- }
-
- /**
- * 퀵메뉴 다운가능한 쿠폰리스트
- * @return
- * @author sowon
- * @since 2021. 4. 23
- */
- @GetMapping("/quick/down/coupon/list")
- @ResponseBody
- public GagaMap getQuickDownCouponList() {
- GagaMap result = new GagaMap();
- Coupon coupon = new Coupon();
- coupon.setQuickYn("N");
- Collection<Coupon> ownCouponList = couponService.getQuickCouponDownList(coupon);
- result.set("ownCouponList", ownCouponList);
- result.set("couponCount",couponService.getMypageCouponInfo(coupon));
- return result;
- }
-
- /**
- * 퀵메뉴 쿠폰 다운
- * @return
- * @author sowon
- * @since 2021. 4. 23
- */
- @PostMapping("/quick/coupon/download")
- @ResponseBody
- public GagaMap downQuickCoupon(@RequestBody Coupon coupon) {
- GagaMap result = new GagaMap();
- String couponResult = couponService.saveQuickCoupon(coupon);
- if ("ERROR_10".equals(couponResult)) {
- result.set("message", "발급가능 쿠폰이 없습니다.");
- }else if("ERROR_20".equals(couponResult)){
- result.set("message", "죄송합니다. 해당 쿠폰은 다운로드가 불가합니다.");
- }else if("ERROR_30".equals(couponResult)){
- result.set("message", "죄송합니다. 해당 쿠폰은 다운로드가 불가합니다.");
- }else {
- result.set("message", "쿠폰이 발급되었습니다.");
- }
- coupon.setQuickYn("Y");
- result.set("status", "200");
- result.set("couponList", couponService.getQuickCouponDownList(coupon));
- return result;
- }
- /**
- * 마이페이지 쿠폰 상세보기 팝업
- *
- * @return
- * @author sowon
- * @since 2021. 03. 17
- */
- @PostMapping(value = "/coupon/detailPop")
- public ModelAndView mypageCouponDetailPop(@RequestBody Coupon coupon) {
- ModelAndView mav = new ModelAndView();
- // 쿠폰 - 기본정보
- mav.addObject("couponDetailInfo", couponService.getCouponDetailInfo(coupon));
-
- mav.setViewName(super.getDeviceViewName("mypage/MypageCouponDetailForm"));
- return mav;
- }
- /**
- * 마이페이지 리뷰화면
- *
- * @return
- * @author sowon
- * @since 2021. 03. 24
- */
- @GetMapping("/review/form")
- public ModelAndView mypageReviewForm(Review review) {
- ModelAndView mav = new ModelAndView();
- review.setCustNo(TsfSession.getInfo().getCustNo());
- review.setSiteCd(TscConstants.Site.STYLE24.value());
- // 작성가능한 리뷰 카운트
- review.setReviewExpireDay(eventService.getGoodsReviewRegisterDays(TscConstants.Site.STYLE24.value()));
- mav.addObject("completeReviewCount", reviewService.getCompleteReviewList(review).size());
- // 작성한 리뷰 카운트
- mav.addObject("alreadyReviewCount", reviewService.getAlreadyReviewList(review).size());
- // 관리자 댓글확인
- mav.addObject("adminCount", reviewService.getAdminConfirmCount(review));
- // 리뷰 이미지/동영상
- mav.addObject("alreadyReviewAttach", reviewService.getReviewAttach(review));
- mav.setViewName(super.getDeviceViewName("mypage/MypageReviewForm"));
- return mav;
- }
- /**
- * 마이페이지 작성가능한 리뷰 목록
- * @param review
- * @return
- * @author sowon
- * @since 2021. 03. 25
- */
- @PostMapping("/complete/review/list")
- @ResponseBody
- public GagaMap getMypageCompleteReviewList(@RequestBody Review review) {
- review.setSiteCd(TscConstants.Site.STYLE24.value());
- if (TsfSession.isLogin()) {
- review.setCustNo(TsfSession.getInfo().getCustNo());
- }
- GagaMap result = new GagaMap();
- int reviewExpireDay = eventService.getGoodsReviewRegisterDays(TscConstants.Site.STYLE24.value());
- review.setReviewExpireDay(reviewExpireDay);
- result.set("completeReviewCount", reviewService.getCompleteReviewList(review).size());
-
- TscPageRequest pageable = new TscPageRequest((review.getPageNo() > 0 ? review.getPageNo() - 1 : 0), review.getPageSize(), review.getPageUnit());
- int totalCnt = reviewService.getCompleteReviewList(review).size();
- pageable.setTotalCount(totalCnt);
- review.setPageable(pageable);
- result.set("paging1", review);
- result.set("totalCnt", totalCnt);
- result.set("endRow", pageable.getEndRow());
- result.set("dataList1", reviewService.getCompleteReviewList(review));
- return result;
- }
- /**
- * 마이페이지 작성한 리뷰 목록
- * @param review
- * @return
- * @author sowon
- * @since 2021. 03. 26
- */
- @PostMapping("/already/review/list")
- @ResponseBody
- public GagaMap getMypageAlreadyReviewList(@RequestBody Review review) {
- review.setSiteCd(TscConstants.Site.STYLE24.value());
- GagaMap result = new GagaMap();
- if (TsfSession.isLogin()) {
- review.setCustNo(TsfSession.getInfo().getCustNo());
- }
-
- review.setReviewExpireDay(eventService.getGoodsReviewPointExpireDays(TscConstants.Site.STYLE24.value()));
- result.set("alreadyReviewCount", reviewService.getAlreadyReviewList(review).size());
- TscPageRequest pageable = new TscPageRequest((review.getPageNo() > 0 ? review.getPageNo() - 1 : 0), review.getPageSize(), review.getPageUnit());
- int totalCnt = reviewService.getAlreadyReviewList(review).size();
- pageable.setTotalCount(totalCnt);
- review.setPageable(pageable);
- result.set("paging2", review);
- result.set("totalCnt", totalCnt);
- result.set("endRow", pageable.getEndRow());
- result.set("dataList2", reviewService.getAlreadyReviewList(review));
- return result;
- }
- /**
- * 마이페이지 리뷰작성화면
- *
- * @return
- * @author sowon
- * @since 2021. 03. 25
- */
- @PostMapping("/review/create/form")
- public ModelAndView mypageReviewCreateForm(Review review) {
- ModelAndView mav = new ModelAndView();
-
- review.setCustNo(TsfSession.getInfo().getCustNo());
- review.setSiteCd(TscConstants.Site.STYLE24.value());
-
- mav.addObject("reviewStat", review.getReviewStat());
- if (review.getReviewStat().equals("u")) {
- // 리뷰 이미지/동영상
- mav.addObject("alreadyReviewAttach", reviewService.getReviewAttach(review));
- }
- review.setReviewExpireDay(eventService.getGoodsReviewRegisterDays(TscConstants.Site.STYLE24.value()));
- mav.addObject("reviewInfo", reviewService.getReviewGoodsInfo(review));
-
- mav.setViewName(super.getDeviceViewName("mypage/MypageReviewCreateForm"));
- return mav;
- }
- /**
- * 마이페이지 리뷰 저장
- * @param review
- * @return
- * @author sowon
- * @since 2021. 03. 25
- */
- @PostMapping("/review/save")
- @ResponseBody
- public GagaMap mypageReviewSave(@RequestBody Review review) {
- GagaMap result = new GagaMap();
- review.setCustNo(TsfSession.getInfo().getCustNo());
- reviewService.saveMypageReview(review);
- result.set("status", "200");
- return result;
- }
-
- /**
- * 마이페이지 리뷰 업데이트
- * @param review
- * @return
- * @author sowon
- * @since 2021. 04. 28
- */
- @PostMapping("/review/update")
- @ResponseBody
- public GagaMap mypageReviewUpdate(@RequestBody Review review) {
- GagaMap result = new GagaMap();
- review.setCustNo(TsfSession.getInfo().getCustNo());
- /*
- * if (reviewService.reviewDeleteConfirm(review).getCount() > 0) {
- * review.setReviewSq(reviewService.reviewDeleteConfirm(review).getReviewSq());
- * }
- */
- reviewService.updateMypageReview(review);
- result.set("status", "200");
- return result;
- }
- /**
- * 마이페이지 리뷰 삭제처리
- *
- * @param review
- * @return
- * @throws Exception
- * @author sowon
- * @since 2021. 03. 26
- */
- @PostMapping("/review/delete")
- @ResponseBody
- public GagaMap mypageReviewDelete(@RequestBody Review review) throws Exception {
- GagaMap result = new GagaMap();
- review.setCustNo(TsfSession.getInfo().getCustNo());
- review.setSiteCd(TscConstants.Site.STYLE24.value());
- reviewService.reviewDelete(review);
- result.set("alreadyReviewCount",reviewService.getAlreadyReviewList(review).size());
- result.set("completeReviewCount",reviewService.getCompleteReviewList(review).size());
- result.set("status", "200");
- return result;
- }
-
- /**
- * 상품상세 - 상품평 상세 레이어
- * @return
- * @author sowon
- * @since 2021. 5. 3
- */
- @PostMapping("/review/detail/layer")
- public ModelAndView mypageReviewDetailForm(Review review) {
- ModelAndView mav = new ModelAndView();
- // 상품관련 기본값 설정(회원 등급, 앱, PC/모바일 등)
- Goods paramsGoods = new Goods();
- paramsGoods.setGoodsCd(review.getGoodsCd());
- // 상품 기본정보
- mav.addObject("params", paramsGoods);
- mav.addObject("review", review);
- mav.addObject("reviewList", reviewService.getMypageReviewList(review));
- mav.setViewName(super.getDeviceViewName("mypage/MypageReviewDetailForm"));
- return mav;
- }
-
- /**
- * 상품상세 - 상품평 상세 레이어
- * @return
- * @author sowon
- * @since 2021. 3. 8
- */
- @PostMapping("/review/detail/list")
- @ResponseBody
- public GagaMap getReviewDetailList(@RequestBody Review review) {
- log.info("getReviewDetailList {}", review);
- GagaMap result = new GagaMap();
- result.set("reviewList", reviewService.getMypageReviewList(review));
- return result;
- }
-
- /**
- * 마이페이지 어드민 댓글 확인
- *
- * @param review
- * @return
- * @throws Exception
- * @author sowon
- * @since 2021. 04. 15
- */
- @PostMapping("/review/customer/confirm")
- @ResponseBody
- public GagaMap mypageReviewCustomerConfirm(@RequestBody Review review) throws Exception {
- GagaMap result = new GagaMap();
- reviewService.reviewCustomerConfirm(review);
- result.set("status", "200");
- return result;
- }
- /**
- * 마이페이지 위시리스트화면
- *
- * @return
- * @author sowon
- * @since 2021. 03. 29
- */
- @GetMapping("/wish/list/form")
- public ModelAndView mypageWishListForm(WishList wishList, Device device) {
- ModelAndView mav = new ModelAndView(super.getDeviceViewName("mypage/MypageWishListForm"));
- wishList.setSiteCd(TscConstants.Site.STYLE24.value());
- wishList.setFrontGb(TsfSession.getFrontGb());
- wishList.setCustGb(TsfSession.getCustGb());
- // 위시리스트 달
- mav.addObject("wishMonth", wishListService.getWishListMonth(wishList));
- return mav;
- }
- /**
- * 마이페이지 상품목록 가져오기
- *
- * @return
- * @author sowon
- * @since 2021. 03. 29
- */
- @GetMapping("/wish/list")
- @ResponseBody
- public Collection<Goods> getWishList() {
- Collection<Goods> wishList = new ArrayList<>();
- WishList wish = new WishList();
- wish.setSiteCd(TscConstants.Site.STYLE24.value());
- wish.setFrontGb(TsfSession.getFrontGb());
- wish.setCustGb(TsfSession.getCustGb());
- // 위시리스트 상품목록
- wishList = wishListService.getWishListGoodsList(wish);
- return wishList;
- }
- /*신주승 시작*/
- /**
- * 마이페이지 - 회원정보확인 화면
- *
- * @return ModelAndView
- * @author jsshin
- * @since 2021. 03. 15
- */
- @GetMapping("/customer/confirm/form")
- public ModelAndView getCustomerConfirmForm() {
- ModelAndView mav = new ModelAndView();
- Customer customer = customerService.getCustomerFindByCustNo(TsfSession.getInfo().getCustNo());
- mav.addObject("custId", customer.getCustId());
- mav.addObject("snsType", StringUtils.defaultString(customer.getSnsType(), ""));
- // 1.간편가입인데 처음 마이페지로 진입 했을떄
- if (StringUtils.isNotBlank(customer.getSnsType()) && StringUtils.isBlank(customer.getPasswd())) {
- mav.setViewName(super.getDeviceViewName("mypage/MypageCustSnsJoinInitPwdForm"));
- } else {
- mav.setViewName(super.getDeviceViewName("mypage/MypageCustConfirmForm"));
- }
- return mav;
- }
- /**
- * 마이페이지 - 회원정보확인처리
- *
- * @return ModelAndView
- * @author jsshin
- * @since 2021. 03. 15
- */
- @PostMapping("/customer/password/confirm")
- @ResponseBody
- public GagaMap customerPasswordConfirm(@RequestBody Customer customer) {
- GagaMap result = new GagaMap();
- boolean isMatch = customerService.customerPasswordConfirm(customer);
- result.setBoolean("isMatch", isMatch);
- return result;
- }
- /**
- * 마이페이지 - 회원정보수정 화면
- *
- * @param confirmYn - 정보확인여부
- * @return ModelAndView
- * @author jsshin
- * @since 2021. 03. 15
- */
- @RequestMapping("/customer/modify/form")
- public ModelAndView getCustomerModifyForm(@RequestParam(required = false) String confirmYn,
- @RequestParam(value = "sEncData", required = false) String sEncData ,
- @RequestParam(value = "authMethod", required = false) String authMethod) {
- ModelAndView mav = new ModelAndView();
- String referer = StringUtils.defaultIfBlank(TsfSession.getHttpServletRequest().getHeader("referer"), "");
- boolean redirect = false;
- log.info("referer ==> {}", referer);
- if (StringUtils.isBlank(referer)) {
- redirect = true;
- }
- if (!referer.contains("/mypage/customer/confirm/form")) {
- redirect = true;
- }
- if (!"Y".equals(confirmYn)) {
- redirect = true;
- }
- if (referer.contains("/customer/nice/certify/callback")) {
- redirect = false;
- }
- if (redirect) {
- mav.setViewName("redirect:/mypage/customer/confirm/form");
- return mav;
- }
- mav.addObject("sEncData", sEncData);
- mav.addObject("authMethod", authMethod);
- mav.addObject("bankList", rendererService.getCommonCodeList("G942", "Y"));
- mav.setViewName(super.getDeviceViewName("mypage/MypageCustModifyForm"));
- return mav;
- }
- /**
- * 마이페이지 - 회원정보조회
- *
- * @return Customer - 고객정보
- * @author jsshin
- * @since 2021. 03. 15
- */
- @GetMapping("/customer/info")
- @ResponseBody
- public Customer getCustomerInfo() {
- Integer custNo = TsfSession.getInfo().getCustNo();
- return customerService.getCustomerFindByCustNo(custNo);
- }
- /**
- * 마이페이지 - 계좌정보
- *
- * @return Customer - 고객정보
- * @author jsshin
- * @since 2021. 03. 15
- */
- @GetMapping("/customer/account/info")
- @ResponseBody
- public CustAccount getCustomerAccuontInfo() {
- Integer custNo = TsfSession.getInfo().getCustNo();
- return customerService.getCustomerAccuontInfo(custNo);
- }
- /**
- * 마이페이지 - 개명본인인증, 휴대폰 본인인증
- *
- * @return GagaMap - 결과
- * @param customer - 본인인증 값
- * @author jsshin
- * @since 2021. 03. 15
- */
- @PostMapping("/customer/auth/update")
- @ResponseBody
- public GagaMap updateCustomerAuth(@RequestBody Customer customer) {
- GagaMap authInfo = niceCertify.getCertifyCellPhoneResultInfo(customer);
- customer.setSexGb(authInfo.getString("sGender"));
- customer.setCustNo(TsfSession.getInfo().getCustNo());
- customer.setCellPhnno(authInfo.getString("sMobileNo"));
- customer.setCustNm(authInfo.getString("sName"));
- customer.setBirthYmd(authInfo.getString("sBirthDate"));
- return customerService.updateCustomerAuth(customer);
- }
- /**
- * 마이페이지 - 확인(수정)
- *
- * @return GagaMap - 결과
- * @param customer - 수정 데이터
- * @author jsshin
- * @since 2021. 03. 15
- */
- @PostMapping("/customer/info/save")
- @ResponseBody
- public GagaMap updateCustomerInfo(@RequestBody Customer customer) {
- CustAccount custAccount = new CustAccount();
- custAccount.setIpAddress(TsfSession.getIpAddress());
- custAccount.setAccountNm(customer.getAccountNm());
- custAccount.setAccountNo(customer.getAccountNo());
- custAccount.setBankCd(customer.getBankCd());
- if ("Y".equals(customer.getAccountModifyYn())) {
- GagaMap result = coreKcpService.checkAccount(custAccount);
- if (!"0000".equals(result.get("resCd"))) {
- result.setBoolean("isSuccess", false);
- result.setString("resultType", "INVALID_ACCOUNT");
- return result;
- }
- }
- return customerService.saveCustomerInfo(customer);
- }
- /**
- * 마이페이지 - 계좌인증
- *
- * @return GagaMap - 결과
- * @author jsshin
- * @since 2021. 03. 16
- */
- @RequestMapping("/account/check")
- @ResponseBody
- public GagaMap getAccountCheck(@RequestBody CustAccount custAccount) {
- boolean isValid = false;
- GagaMap result = coreKcpService.checkAccount(custAccount);
- if ("0000".equals(result.get("resCd"))) {
- isValid = true;
- }
- result.setBoolean("isValid", isValid);
- return result;
- }
- /**
- * 마이페이지 - 회원탈퇴 화면
- *
- * @return ModelAndView
- * @author jsshin
- * @since 2021. 03. 16
- */
- @GetMapping("/customer/secede/form")
- public ModelAndView getCustomerSecedeForm() {
- ModelAndView mav = new ModelAndView();
- Order order = new Order();
- order.setCustNo(TsfSession.getInfo().getCustNo());
- Point point = new Point();
- point.setCustNo(TsfSession.getInfo().getCustNo());
- // 주문 상태 별 수량 조회
- mav.addObject("orderStatInfo", coreOrderService.getOrderStatCount(order));
- // 포인트정보
- mav.addObject("pointInfo", pointService.getCustomerPoint(point));
- // 상품권 정보 조회
- mav.addObject("rmGfcdAmt", coreOrderService.getGiftcardInfo(order));
- // 쿠폰정보 조회
- mav.addObject("couponCnt", coreOrderService.getCouponInfo(order));
- Customer customer = customerService.getCustomerFindByCustNo(TsfSession.getInfo().getCustNo());
- mav.addObject("snsType", customer.getSnsType());
- mav.addObject("custId", customer.getCustId());
- mav.addObject("custNm", customer.getCustNm());
- mav.setViewName(super.getDeviceViewName("mypage/MypageCustSecedeForm"));
- return mav;
- }
- /**
- * 마이페이지 - 회원탈퇴
- *
- * @return ModelAndView
- * @author jsshin
- * @since 2021. 03. 16
- */
- @PostMapping("/customer/secede/complete/form")
- public ModelAndView getCustomerSecedeCompleteForm(HttpServletRequest request, HttpServletResponse response) {
- ModelAndView mav = new ModelAndView();
- Integer custNo = TsfSession.getInfo().getCustNo();
- Order order = new Order();
- order.setCustNo(custNo);
- Point point = new Point();
- point.setCustNo(custNo);
- // 주문 상태 별 수량 조회
- mav.addObject("orderStatInfo", coreOrderService.getOrderStatCount(order));
- // 포인트정보
- mav.addObject("pointInfo", pointService.getCustomerPoint(point));
- // 상품권 정보 조회
- mav.addObject("rmGfcdAmt", coreOrderService.getGiftcardInfo(order));
- // 쿠폰정보 조회
- mav.addObject("couponCnt", coreOrderService.getCouponInfo(order));
- mav.addObject("custNm", TsfSession.getInfo().getCustNm());
- Customer customer = new Customer();
- customer.setCustId(TsfSession.getInfo().getCustId());
- customer.setCustNm(TsfSession.getInfo().getCustNm());
- customer.setCustNo(custNo);
- customer.setRegNo(custNo);
- customer.setUpdNo(custNo);
- customer.setSiteCd(TscConstants.Site.STYLE24.value());
- GagaMap result = customerService.saveCustomerSecede(customer);
- boolean isSuccess = result.getBoolean("isSuccess");
- if (!isSuccess) {
- mav.setViewName("redirect:/mypage/customer/secede/form");
- return mav;
- }
- try {
- customer.setRejoinRejectDay(result.getInt("rejoinRejectDay"));
- customer.setSecedeDt(result.getString("secedeDt"));
- customer.setSnsType(result.getString("snsType"));
- mailService.sendSecedComplete(customer, TsfSession.getInfo().getCustNo());
- } catch (Exception e) {
- log.error(e.getMessage());
- }
- TsfSession.invalidate(request);
- // RememberMe 쿠키가 있으면
- String ckRememberMe = GagaCookieUtil.getCookie(request, TsfConstants.CK_PREFIX + "_remember-me");
- if (StringUtils.isNotBlank(ckRememberMe)) {
- // 로그인유지토큰 삭제
- loginService.deletePersistentToken(ckRememberMe);
- // RememberMe 쿠키 삭제
- GagaCookieUtil.deleteCookie(response, TsfConstants.CK_PREFIX + "_remember-me");
- }
- mav.setViewName(super.getDeviceViewName("mypage/MypageCustSecedeCompleteForm"));
- return mav;
- }
- /**
- * 마이페이지 - 비밀번호 변경 팝업
- *
- * @return ModelAndView
- * @author jsshin
- * @since 2021. 04. 01
- */
- @PostMapping("/password/modify/form")
- public ModelAndView pwdModifyForm() {
- ModelAndView mav = new ModelAndView();
- mav.addObject("custId", TsfSession.getInfo().getCustId());
- mav.setViewName(super.getDeviceViewName("mypage/MypageCustPwdModifyForm"));
- return mav;
- }
- /**
- * 마이페이지 - 비밀번호 변경
- *
- * @return GagaMap
- * @author jsshin
- * @since 2021. 04. 01
- */
- @PostMapping("/password/change")
- @ResponseBody
- public GagaMap changePassword(@RequestBody Customer customer) {
- Integer custNo = TsfSession.getInfo().getCustNo();
- customer.setCustNo(custNo);
- customer.setRegNo(custNo);
- customer.setUpdNo(custNo);
- return customerService.changePassword(customer);
- }
- /**
- * 마이페이지 - 배송지관리
- *
- * @return ModelAndView
- * @author jsshin
- * @since 2021. 04. 01
- */
- @GetMapping("/delivery/addr/form")
- public ModelAndView getDeliveryListForm() {
- ModelAndView mav = new ModelAndView();
- mav.setViewName(super.getDeviceViewName("mypage/MypageCustDeliveryAddrForm"));
- return mav;
- }
- /**
- * 마이페이지 - 배송지목록
- *
- * @return Collection<CustDeliveryAddr>
- * @author jsshin
- * @since 2021. 04. 02
- */
- @GetMapping("/customer/delivery/addr/list")
- @ResponseBody
- public Collection<CustDeliveryAddr> getCustomerDeliveryAddrList() {
- CustDeliveryAddr custDeliveryAddr = new CustDeliveryAddr();
- custDeliveryAddr.setCustNo(TsfSession.getInfo().getCustNo());
- return customerService.getCustomerDeliveryAddrList(custDeliveryAddr);
- }
- /**
- * 마이페이지 - 배송지 삭제
- *
- * @return Collection<CustDeliveryAddr>
- * @author jsshin
- * @since 2021. 04. 05
- */
- @PostMapping("/customer/delivery/addr/delete")
- @ResponseBody
- public GagaMap deleteCustDeliveryAddr(@RequestBody CustDeliveryAddr custDeliveryAddr) {
- return customerService.deleteCustDeliveryAddr(custDeliveryAddr);
- }
- /*신주승 끝*/
- /**
- * 마이페이지 - 재입고알림
- * @return ModelAndView
- * @author gagamel
- * @since 2021. 4. 13
- */
- @GetMapping("/restock/form")
- public ModelAndView restockForm() {
- ModelAndView mav = new ModelAndView();
- mav.setViewName(super.getDeviceViewName("mypage/RestockForm"));
- return mav;
- }
- /**
- * 마이페이지 - 재입고알림 목록
- * @return
- * @author gagamel
- * @since 2021. 4. 13
- */
- @GetMapping("/restock/list")
- @ResponseBody
- public Collection<ReinboundInform> getRestockList() {
- return reinboundService.getReinboundInformList(TsfSession.getInfo().getCustNo());
- }
- /**
- * 마이페이지 - 재입고알림 목록
- * @param params - 재입고알림 정보
- * @return
- * @author gagamel
- * @since 2021. 4. 13
- */
- @PostMapping("/restock/continue/update")
- @ResponseBody
- public GagaResponse updateRestockContinue(@RequestBody ReinboundInform params) {
- params.setCustNo(TsfSession.getInfo().getCustNo());
- params.setUpdNo(TsfSession.getInfo().getCustNo());
- reinboundService.updateReinboundInformContinue(params);
- return super.ok("알림 기한을 15일로 연장하였습니다.");
- }
-
- /**
- * 마이페이지 주문목록 조회 (모바일)
- *
- * @param Order
- * @return ModelAndView
- * @author jsh77b
- * @since 2021. 04. 19
- */
- @ResponseBody
- @PostMapping("/order/listInfo")
- public ModelAndView getOrderListInfo(@RequestBody Order order) {
-
- // 주문목록조회
- ModelAndView mav = new ModelAndView();
-
- // 페이징 처리 설정
- TscPageRequest pageable = new TscPageRequest((order.getPageNo() > 0 ? order.getPageNo() - 1 : 0), order.getPageSize(), order.getPageUnit());
- int totalCnt = orderService.getPagingOrdNoListCount(order);
- pageable.setTotalCount(totalCnt);
- order.setPageable(pageable);
-
- // 페이징 처리 및 주문정보 조회
- List<Integer> ordNoList = new ArrayList<>();
- for (Order tmpOrder : orderService.getPagingOrdNoList(order)) {
- ordNoList.add(tmpOrder.getOrdNo());
- }
-
- if (ordNoList.size() > 0) {
- order.setOrdNoList(ordNoList.stream().mapToInt(Integer::intValue).toArray());
- }
-
- Collection<GagaMap> orderList = orderService.getOrderListForMypage(order);
-
- mav.addObject("orderList" , orderList);
- mav.addObject("orderListCnt" , orderList.size());
- mav.addObject("pageNo" , order.getPageNo());
-
- mav.setViewName(super.getDeviceViewName("mypage/MypageOrderListInfo"));
- return mav;
- }
-
- /**
- * 마이페이지 주문목록 조회 (모바일)
- *
- * @param Order
- * @return ModelAndView
- * @author jsh77b
- * @since 2021. 04. 19
- */
- @ResponseBody
- @PostMapping("/order/listInfo2")
- public GagaMap getOrderListInfo2(@RequestBody Order order) {
-
- GagaMap result = new GagaMap();
-
- // 페이징 처리 설정
- TscPageRequest pageable = new TscPageRequest((order.getPageNo() > 0 ? order.getPageNo() - 1 : 0), order.getPageSize(), order.getPageUnit());
- int totalCnt = orderService.getPagingOrdNoListCount(order);
- pageable.setTotalCount(orderService.getPagingOrdNoListCount(order));
- order.setPageable(pageable);
- result.set("paging" , order);
- result.set("totalCnt" , totalCnt);
- result.set("endRow" , pageable.getEndRow());
- result.set("orderList" , orderService.getOrderListForMypage(order));
-
- // 주문목록조회
- //ModelAndView mav = new ModelAndView();
- //mav.addObject("orderList", orderService.getOrderListForMypage(order));
- //mav.setViewName(super.getDeviceViewName("mypage/MypageOrderListInfo"));
- return result;
- }
- /**
- * 마이페이지 주문목록 사전 정보 조회 (모바일)
- *
- * @param Order
- * @return ModelAndView
- * @author card007
- * @since 2021. 05. 27
- */
- @ResponseBody
- @PostMapping("/order/list/pre/info")
- public GagaMap getOrderListPreInfo(@RequestBody Order order) {
- GagaMap result = new GagaMap();
- // 페이징 처리 설정
- TscPageRequest pageable = new TscPageRequest((order.getPageNo() > 0 ? order.getPageNo() - 1 : 0), order.getPageSize(), order.getPageUnit());
- pageable.setTotalCount(orderService.getPagingOrdNoListCount(order));
- order.setPageable(pageable);
- result.set("paging" , pageable);
- result.set("ordNoList" , orderService.getPagingOrdNoList(order));
- return result;
- }
- /**
- * 마이페이지 주문목록 조회 (모바일)
- *
- * @param Order
- * @return ModelAndView
- * @author card007
- * @since 2021. 05. 27
- */
- @ResponseBody
- @PostMapping("/order/list/info")
- public ModelAndView getOrderListInfo3(@RequestBody Order order) {
- // 주문목록조회
- ModelAndView mav = new ModelAndView();
- Collection<GagaMap> orderList = orderService.getOrderListForMypage(order);
-
- mav.addObject("orderList" , orderList);
- mav.addObject("orderListCnt" , orderList.size());
- mav.addObject("pageNo" , order.getPageNo());
- mav.setViewName(super.getDeviceViewName("mypage/MypageOrderListInfo"));
- return mav;
- }
-
- /**
- * 마이페이지 취반교 목록 조회
- *
- * @param OrderChange
- * @return ModelAndView
- * @author jsh77b
- * @since 2021. 02. 18
- */
- @PostMapping("/cre/listInfo")
- @ResponseBody
- public ModelAndView getCreListInfo(@RequestBody OrderChange orderChange) {
- // 주문목록조회
- ModelAndView mav = new ModelAndView();
- // 페이징 처리 설정
- TscPageRequest pageable = new TscPageRequest((orderChange.getPageNo() > 0 ? orderChange.getPageNo() - 1 : 0), orderChange.getPageSize(), orderChange.getPageUnit());
- pageable.setTotalCount(orderChangeService.getPagingCreListCount(orderChange));
- orderChange.setPageable(pageable);
- // 페이징 처리 및 주문정보 조회
- List<Integer> ordChgSqList = new ArrayList<>();
- for (OrderChange tmpOrderChange : orderChangeService.getPagingCreList(orderChange)) {
- ordChgSqList.add(tmpOrderChange.getOrdChgSq());
- }
- if (ordChgSqList.size() > 0) {
- orderChange.setOrdChgSqArr(ordChgSqList.stream().mapToInt(Integer::intValue).toArray());
- }
- mav.addObject("creList", orderChangeService.getCreList(orderChange));
- mav.addObject("creInfo", orderChange);
- mav.setViewName(super.getDeviceViewName("mypage/MypageCreListInfo"));
- return mav;
- }
- /**
- * 마이페이지 취반교목록 사전 정보 조회 (모바일)
- *
- * @param Order
- * @return ModelAndView
- * @author card007
- * @since 2021. 05. 27
- */
- @ResponseBody
- @PostMapping("/cre/list/pre/info")
- public GagaMap getCreListPreInfo(@RequestBody OrderChange orderChange) {
- GagaMap result = new GagaMap();
-
- orderChange.setCustNo(TsfSession.getInfo().getCustNo());
- // 페이징 처리 설정
- TscPageRequest pageable = new TscPageRequest((orderChange.getPageNo() > 0 ? orderChange.getPageNo() - 1 : 0), orderChange.getPageSize(), orderChange.getPageUnit());
- pageable.setTotalCount(orderChangeService.getPagingCreListCount(orderChange));
- orderChange.setPageable(pageable);
- result.set("paging" , pageable);
- result.set("creList" , orderChangeService.getPagingCreList(orderChange));
- return result;
- }
- /**
- * 마이페이지 취반교목록 조회 (모바일)
- *
- * @param Order
- * @return ModelAndView
- * @author card007
- * @since 2021. 05. 27
- */
- @ResponseBody
- @PostMapping("/cre/list/info")
- public ModelAndView getCreListInfo2(@RequestBody OrderChange orderChange) {
- // 주문목록조회
- ModelAndView mav = new ModelAndView();
- orderChange.setCustNo(TsfSession.getInfo().getCustNo());
- Collection<GagaMap> creList = orderChangeService.getCreList(orderChange);
- mav.addObject("creList" , creList);
- mav.addObject("creListCnt" , creList.size());
- mav.addObject("pageNo" , orderChange.getPageNo());
- mav.setViewName(super.getDeviceViewName("mypage/MypageCreListInfo"));
- return mav;
- }
- /**
- * 선물하기 알림톡 재전송
- *
- * @param order
- * @return GagaResponse
- * @author card007
- * @since 2021. 06. 03
- */
- @ResponseBody
- @PostMapping("/gift/kakao/resend")
- public GagaResponse resendGiftKakao(@RequestBody Order order) {
- // 선물하기 알림톡 이전 발송이력 조회
- CustContactHst custContactHst = new CustContactHst();
- custContactHst.setContactType(TscConstants.ContactType.GIFT.value());
- custContactHst.setContactMethod(TscConstants.ContactMethod.KAKAOTALK.value());
- custContactHst.setContactMemo(String.valueOf(order.getOrdNo()));
- int count = customerService.getGiftKakaoSendInfo(custContactHst);
-
- if (count > 0) {
- return super.error("선물하기 SMS를 조금 전 다시 발송하였습니다. 잠시 후 다시 시도해주세요.");
- }
- // 선물하기 알림톡 전송 관련 정보 조회
- GagaMap resultMap = coreOrderService.getOrderCompleteInfo(order);
- Order orderInfo = (Order) resultMap.get("orderInfo");
- orderInfo.setGoodsNm((String) resultMap.get("goodsNm"));
- orderInfo.setGoodsCnt(String.valueOf(resultMap.get("goodsCnt")));
-
- try {
- // 선물하기 알림톡 전송
- coreKakaotalkService.sendOrderGiftComplete(orderInfo, TsfSession.getInfo().getCustNo());
- } catch (Exception e) {
- return super.error(e.getMessage());
- }
-
- return super.ok(env.getProperty("SUCC_0005"));
- }
- }
|