From 026447959141110afd24d18b61da953c62aa2209 Mon Sep 17 00:00:00 2001
From: zhubaomin <470473919@qq.com>
Date: 星期三, 23 四月 2025 12:23:55 +0800
Subject: [PATCH] 各轮灌组开阀时间提前2分钟,第一组除外
---
pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/loss/LossCtrl.java | 150 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 150 insertions(+), 0 deletions(-)
diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/loss/LossCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/loss/LossCtrl.java
new file mode 100644
index 0000000..051ddab
--- /dev/null
+++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/loss/LossCtrl.java
@@ -0,0 +1,150 @@
+package com.dy.pipIrrSell.loss;
+
+import com.dy.common.aop.SsoAop;
+import com.dy.common.webUtil.BaseResponse;
+import com.dy.common.webUtil.BaseResponseUtils;
+import com.dy.common.webUtil.QueryResultVo;
+import com.dy.common.webUtil.ResultCodeMsg;
+import com.dy.pipIrrGlobal.pojoSe.SeClientCard;
+import com.dy.pipIrrGlobal.pojoSe.SeLoss;
+import com.dy.pipIrrGlobal.voSe.VoLoss;
+import com.dy.pipIrrSell.clientCard.CardStateENUM;
+import com.dy.pipIrrSell.clientCard.ClientCardSv;
+import com.dy.pipIrrSell.clientCard.LastOperateENUM;
+import com.dy.pipIrrSell.result.SellResultCode;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.media.Content;
+import io.swagger.v3.oas.annotations.media.Schema;
+import io.swagger.v3.oas.annotations.responses.ApiResponse;
+import io.swagger.v3.oas.annotations.responses.ApiResponses;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.validation.Valid;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.http.MediaType;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.validation.BindingResult;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.*;
+
+/**
+ * @author ZhuBaoMin
+ * @date 2023/12/6 9:54
+ * @LastEditTime 2023/12/6 9:54
+ * @Description
+ */
+
+@Slf4j
+@Tag(name = "鎸傚け绠$悊", description = "鎸傚け鎿嶄綔")
+@RestController
+@RequestMapping(path="loss")
+@RequiredArgsConstructor
+public class LossCtrl {
+ private final LossSv lossSv;
+ private final ClientCardSv clientCardSv;
+
+ @Operation(summary = "鑾峰緱涓�椤垫寕澶辫褰�", description = "杩斿洖涓�椤垫寕澶辨暟鎹�")
+ @ApiResponses(value = {
+ @ApiResponse(
+ responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE,
+ description = "杩斿洖涓�椤垫寕澶辨暟鎹紙BaseResponse.content:QueryResultVo[{}]锛�",
+ content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE,
+ schema = @Schema(implementation = VoLoss.class))}
+ )
+ })
+ @GetMapping(path = "/getLosses")
+ @SsoAop()
+ public BaseResponse<QueryResultVo<List<VoLoss>>> getLosses(QueryVo vo){
+ try {
+ QueryResultVo<List<VoLoss>> res = lossSv.getLosses(vo);
+ return BaseResponseUtils.buildSuccess(res);
+ } catch (Exception e) {
+ log.error("鑾峰彇鎸傚け璁板綍寮傚父", e);
+ return BaseResponseUtils.buildException(e.getMessage()) ;
+ }
+ }
+
+ @Operation(summary = "娣诲姞鎸傚け璁板綍", description = "娣诲姞鎸傚け璁板綍")
+ @ApiResponses(value = {
+ @ApiResponse(
+ responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE,
+ description = "鎿嶄綔缁撴灉锛歵rue锛氭垚鍔燂紝false锛氬け璐ワ紙BaseResponse.content锛�",
+ content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE,
+ schema = @Schema(implementation = Boolean.class))}
+ )
+ })
+ @PostMapping(path = "add", consumes = MediaType.APPLICATION_JSON_VALUE)
+ @Transactional(rollbackFor = Exception.class)
+ @SsoAop()
+ public BaseResponse<Boolean> add(@RequestBody @Valid DtoLoss po, BindingResult bindingResult){
+ if(bindingResult != null && bindingResult.hasErrors()){
+ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage());
+ }
+
+ /**
+ * cardId 姘村崱缂栧彿锛堥潪浼犲叆鍙傛暟锛岀敱cardNum鍙嶆煡锛�
+ * clientId 鍐滄埛缂栧彿锛堥潪浼犲叆鍙傛暟锛岀敱cardNum鍙嶆煡锛�
+ * cardNum 姘村崱缂栧彿
+ * money 浣欓
+ * refund 閫�娆鹃噾棰�
+ * remarks 澶囨敞
+ * operator 鎿嶄綔浜虹紪鍙�
+ * lossTime 鎸傚け鏃堕棿
+ */
+ Long cardId = 0L;
+ Long cardNum = po.getCardNum();
+ Long clientId = 0L;
+ Float money = po.getMoney();
+ Float refund = po.getRefund();
+ String remarks = po.getRemarks();
+ Long operator = po.getOperator();
+ Date lossTime = new Date();
+
+ /**
+ * 渚濇嵁姘村崱缂栧彿鑾峰彇姘村崱琛ㄤ富閿強鍐滄埛缂栧彿
+ */
+ Map map = Optional.ofNullable(clientCardSv.getCardIdAndClientNum(cardNum)).orElse(new HashMap());
+ if(map == null || map.size() <= 0) {
+ return BaseResponseUtils.buildFail(SellResultCode.CARD_NUMBER_MISTAKE.getMessage());
+ }
+ cardId = Long.parseLong(map.get("cardId").toString());
+ clientId = Long.parseLong(map.get("clientId").toString());
+
+ /**
+ * 淇敼鍐滄埛鍗′俊鎭細
+ * 鎸傚け鏃堕棿
+ * 鏈�鍚庢搷浣滅被鍨�-4
+ */
+ SeClientCard seClientCard = new SeClientCard();
+ seClientCard.setId(cardId);
+ seClientCard.setMoney(money);
+ seClientCard.setLossdtdt(lossTime);
+ seClientCard.setState(CardStateENUM.LOSS.getCode());
+ seClientCard.setLastoper(LastOperateENUM.LOSS.getCode());
+ Integer rec_updateClientCard = Optional.ofNullable(clientCardSv.UpdateClientCard(seClientCard)).orElse(0);
+ if(rec_updateClientCard == 0) {
+ return BaseResponseUtils.buildFail(SellResultCode.LOSS_FAIL_WRITE_CLIENT_CARD_ERROR.getMessage());
+ }
+
+ /**
+ * 娣诲姞鎸傚け璁板綍
+ */
+ SeLoss seLoss = new SeLoss();
+ //seLoss.setCardnum(cardNum);
+ //seLoss.setClientnum(clientNum);
+ seLoss.setCardid(cardId);
+ seLoss.setClientid(clientId);
+ seLoss.setMoney(money);
+ seLoss.setRefund(refund);
+ seLoss.setRemarks(remarks);
+ seLoss.setOperator(operator);
+ seLoss.setOperatedt(lossTime);
+ Long rec = Optional.ofNullable(lossSv.add(seLoss)).orElse(0L);
+ if(rec == 0) {
+ return BaseResponseUtils.buildFail(SellResultCode.LOSS_FAIL_WRITE_LOSS_ERROR.getMessage());
+ }
+
+ return BaseResponseUtils.buildSuccess(true) ;
+ }
+}
--
Gitblit v1.8.0