فهرست منبع

修改代码逻辑

Qchen 2 سال پیش
والد
کامیت
177c872c18

+ 7 - 1
src/main/java/com/ydtech/modules/admin/model/SysDeptAccountWithdraw.java

@@ -3,12 +3,16 @@ package com.ydtech.modules.admin.model;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
+import com.ydtech.utils.LocalDateTimeDeserializer;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
 import java.math.BigDecimal;
+import java.time.LocalDateTime;
 
 
 @Data
@@ -41,5 +45,7 @@ public class SysDeptAccountWithdraw implements Serializable {
 
     @TableField(value = "create_time")
     @ApiModelProperty("创建时间")
-    private String createTime;
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @JsonDeserialize(using = LocalDateTimeDeserializer.class)
+    private LocalDateTime createTime;
 }

+ 2 - 16
src/main/java/com/ydtech/modules/admin/service/impl/SysDeptAccountServiceImpl.java

@@ -23,7 +23,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.Date;
+import java.time.LocalDateTime;
 import java.util.List;
 
 @Service
@@ -86,20 +86,6 @@ public class SysDeptAccountServiceImpl extends ServiceImpl<SysDeptAccountMapper,
         // 减去提现金额
         deptAccount.setManagementFee(deptAccount.getManagementFee().subtract(sysDeptAccount.getAmount()));
         sysDeptAccountService.updateById(deptAccount);
-        // 机构历史明细生成提现明细
-        SysDeptAccountHistory sysDeptAccountHistory = new SysDeptAccountHistory();
-        sysDeptAccountHistory.setId(IdGenerate.nextId());
-        sysDeptAccountHistory.setDeptId(sysDeptAccount.getDeptId());
-        sysDeptAccountHistory.setAmount(sysDeptAccount.getAmount());
-        sysDeptAccountHistory.setSurplusAmount(deptAccount.getManagementFee());
-        sysDeptAccountHistory.setSuborder(null);
-        sysDeptAccountHistory.setDocumentary("1"); //提现
-        sysDeptAccountHistory.setFromBankCard(null);
-        sysDeptAccountHistory.setToBankCard(null);
-        sysDeptAccountHistory.setUserId(BaseController.getUser().getId());
-        sysDeptAccountHistory.setCreateTime(new Date());
-        sysDeptAccountHistory.setRemark("从" + sysDept.getName() + "机构账户中提现" + sysDeptAccountHistory.getAmount() + "元");
-        sysDeptAccountHistoryService.save(sysDeptAccountHistory);
 
         // 生成提现审核数据
         SysDeptAccountWithdraw sysDeptAccountWithdraw = new SysDeptAccountWithdraw();
@@ -109,7 +95,7 @@ public class SysDeptAccountServiceImpl extends ServiceImpl<SysDeptAccountMapper,
         sysDeptAccountWithdraw.setAmount(sysDeptAccount.getAmount());
         sysDeptAccountWithdraw.setStatus(SysDeptAccountStatus.WAIT.getCode()); //待审核
         sysDeptAccountWithdraw.setRemark("");
-        sysDeptAccountWithdraw.setCreateTime(String.valueOf(new Date()));
+        sysDeptAccountWithdraw.setCreateTime(LocalDateTime.now());
         sysDeptAccountWithdrawService.save(sysDeptAccountWithdraw);
 
         return HttpResult.ok("", sysDeptAccount);

+ 24 - 1
src/main/java/com/ydtech/modules/admin/service/impl/SysDeptAccountWithdrawServiceImpl.java

@@ -9,13 +9,19 @@ import com.ydtech.core.page.HttpResult;
 import com.ydtech.core.page.PageRequest;
 import com.ydtech.modules.admin.dao.SysDeptAccountWithdrawMapper;
 import com.ydtech.modules.admin.model.SysDeptAccount;
+import com.ydtech.modules.admin.model.SysDeptAccountHistory;
 import com.ydtech.modules.admin.model.SysDeptAccountWithdraw;
 import com.ydtech.modules.admin.model.vo.SysDeptAccountWithdrawVo;
+import com.ydtech.modules.admin.service.SysDeptAccountHistoryService;
 import com.ydtech.modules.admin.service.SysDeptAccountService;
 import com.ydtech.modules.admin.service.SysDeptAccountWithdrawService;
+import com.ydtech.modules.base.controller.BaseController;
+import com.ydtech.utils.idgen.IdGenerate;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.Date;
+
 
 @Service
 public class SysDeptAccountWithdrawServiceImpl extends ServiceImpl<SysDeptAccountWithdrawMapper, SysDeptAccountWithdraw> implements SysDeptAccountWithdrawService {
@@ -27,6 +33,9 @@ public class SysDeptAccountWithdrawServiceImpl extends ServiceImpl<SysDeptAccoun
     private SysDeptAccountWithdrawService sysDeptAccountWithdrawService;
     @Autowired
     private SysDeptAccountService sysDeptAccountService;
+
+    @Autowired
+    private SysDeptAccountHistoryService sysDeptAccountHistoryService;
     @Override
     public IPage<SysDeptAccountWithdraw> getList(SysDeptAccountWithdrawVo sysDeptAccountWithdrawVo) {
         PageRequest pageRequest = new PageRequest();
@@ -41,8 +50,22 @@ public class SysDeptAccountWithdrawServiceImpl extends ServiceImpl<SysDeptAccoun
     public HttpResult updateByStatus(SysDeptAccountWithdraw sysDeptAccountWithdraw) {
         if (sysDeptAccountWithdraw.getStatus().equals(SysDeptAccountStatus.PASS.getCode())) {
             SysDeptAccount sysDeptAccount = sysDeptAccountService.getById(sysDeptAccountWithdraw.getDeptId());
-            sysDeptAccount.setManagementFee(sysDeptAccount.getManagementFee().subtract(sysDeptAccountWithdraw.getAmount()));
+            sysDeptAccount.setManagementFee(sysDeptAccount.getManagementFee());
             sysDeptAccountService.updateById(sysDeptAccount);
+            // 机构历史明细生成提现明细
+            SysDeptAccountHistory sysDeptAccountHistory = new SysDeptAccountHistory();
+            sysDeptAccountHistory.setId(IdGenerate.nextId());
+            sysDeptAccountHistory.setDeptId(sysDeptAccount.getDeptId());
+            sysDeptAccountHistory.setAmount(sysDeptAccountWithdraw.getAmount());
+            sysDeptAccountHistory.setSurplusAmount(sysDeptAccount.getManagementFee());
+            sysDeptAccountHistory.setSuborder(sysDeptAccountWithdraw.getId());
+            sysDeptAccountHistory.setDocumentary("1"); //提现
+            sysDeptAccountHistory.setFromBankCard(null);
+            sysDeptAccountHistory.setToBankCard(null);
+            sysDeptAccountHistory.setUserId(BaseController.getUser().getId());
+            sysDeptAccountHistory.setCreateTime(new Date());
+            sysDeptAccountHistory.setRemark("从" + sysDeptAccountWithdraw.getName() + "机构账户中提现" + sysDeptAccountWithdraw.getAmount() + "元");
+            sysDeptAccountHistoryService.save(sysDeptAccountHistory);
         }
         if (sysDeptAccountWithdraw.getStatus().equals(SysDeptAccountStatus.REJECT.getCode())) {
             SysDeptAccount sysDeptAccount = sysDeptAccountService.getById(sysDeptAccountWithdraw.getDeptId());

+ 29 - 0
src/main/java/com/ydtech/utils/LocalDateTimeDeserializer.java

@@ -0,0 +1,29 @@
+package com.ydtech.utils;
+
+import com.fasterxml.jackson.core.JsonParser;
+import com.fasterxml.jackson.databind.DeserializationContext;
+import com.fasterxml.jackson.databind.JsonDeserializer;
+import lombok.Data;
+
+import java.io.IOException;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.time.ZoneId;
+import java.time.format.DateTimeFormatter;
+
+
+/**
+ *
+ *   LocalDateTime反序列化器
+ *
+ */
+@Data
+public class LocalDateTimeDeserializer extends JsonDeserializer<LocalDateTime> {
+    @Override
+    public LocalDateTime deserialize(JsonParser p, DeserializationContext ctxt) throws IOException {
+        String dateStr = p.getValueAsString();
+        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
+        LocalDate date = LocalDate.parse(dateStr, formatter);
+        return date.atStartOfDay(ZoneId.systemDefault()).toLocalDateTime();
+    }
+}

+ 2 - 1
src/main/resources/mapper/modules/admin/SysDeptAccountWithdrawMapper.xml

@@ -18,7 +18,8 @@
         select
         id,
         dept_id,
-        name,amount,
+        name,
+        amount,
         status,
         remark,
         DATE(create_time) as create_date