‘linchangsheng’ před 7 měsíci
rodič
revize
ed80460e53

+ 1 - 1
src/main/java/com/zfire/mall/manager/bean/k3/KingDeePurchaseStockOutData.java

@@ -14,5 +14,5 @@ public class KingDeePurchaseStockOutData extends KingDeePurchaseStockOut {
 
 
     @ApiModelProperty(value = "绑定采购退料单")
-    private List<KingDeePurchaseStockOutItemBean> kingDeePurchaseStockOutItemBeans;
+    private List<KingDeePurchaseStockOutItemBean> kingDeePurchaseStockOutItems;
 }

+ 42 - 0
src/main/java/com/zfire/mall/manager/bean/k3/KingDeeWalletVO.java

@@ -0,0 +1,42 @@
+package com.zfire.mall.manager.bean.k3;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.zfire.mall.manager.plus.entity.KingDeeWallet;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+@Data
+@ApiModel
+public class KingDeeWalletVO   {
+
+
+
+    @ApiModelProperty(value = "钱包编码")
+    private String number;
+
+    @ApiModelProperty(value = "钱包名称")
+    private String name;
+
+
+    @ApiModelProperty(value = "创建人")
+    @TableField(fill = FieldFill.INSERT)
+    private String createBy;
+
+    @ApiModelProperty(value = "创建时间")
+    @TableField(fill = FieldFill.INSERT)
+    private Date createTime;
+
+    @ApiModelProperty(value = "更新人")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private String updateBy;
+
+    @ApiModelProperty(value = "更新时间")
+    @TableField(fill = FieldFill.INSERT_UPDATE)
+    private Date updateTime;
+}

+ 3 - 1
src/main/java/com/zfire/mall/manager/bean/k3/KingTransferAdd.java → src/main/java/com/zfire/mall/manager/bean/k3/KingTransferAddOrUp.java

@@ -2,13 +2,15 @@ package com.zfire.mall.manager.bean.k3;
 
 import com.zfire.mall.manager.plus.entity.KingDeeTransfer;
 import com.zfire.mall.manager.plus.entity.KingDeeTransferItem;
+import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.util.List;
 
 @Data
-public class KingTransferAdd extends KingDeeTransfer {
+@ApiModel
+public class KingTransferAddOrUp extends KingDeeTransfer {
 
 
     @ApiModelProperty(value = "item")

+ 1 - 0
src/main/java/com/zfire/mall/manager/bean/k3/KingTransferBean.java

@@ -17,6 +17,7 @@ import java.util.List;
  * @author change
  */
 @Data
+@ApiModel
 public class KingTransferBean extends KingDeeTransfer {
 
     @ApiModelProperty(value = "绑定物料")

+ 4 - 0
src/main/java/com/zfire/mall/manager/commonmapper/rece/ReceMapper.java

@@ -1,7 +1,10 @@
 package com.zfire.mall.manager.commonmapper.rece;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.zfire.mall.manager.bean.k3.KingDeeWalletVO;
 import com.zfire.mall.manager.bean.rece.ReceivableItemBean;
+import com.zfire.mall.manager.zfire.bean.ZfireParamBean;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
@@ -27,4 +30,5 @@ public interface ReceMapper {
                 @Param("customerNumber") String customerNumber
     );
 
+    IPage<KingDeeWalletVO> walletV2(Page page,@Param("ex") ZfireParamBean zfireParamBean);
 }

+ 2 - 2
src/main/java/com/zfire/mall/manager/controller/k3/K3ReceiptController.java

@@ -167,9 +167,9 @@ public class K3ReceiptController {
     @PostMapping("/examine")
     public ResponseHelper examine(
             @ApiParam(required = false, value = "单据编号") @RequestParam(required = false) String billNo,
-            @ApiParam(required = false, value = " 状态 A=保存 B=审核中 C=已审核") @RequestParam(required = false) String cancelStatus
+            @ApiParam(required = false, value = " 状态 A=保存 B=审核中 C=已审核") @RequestParam(required = false) String status
     ) throws Exception {
-        k3ReceiptLogic.examine(billNo,cancelStatus);
+        k3ReceiptLogic.examine(billNo,status);
         return ResponseHelper.success();
     }
 

+ 5 - 4
src/main/java/com/zfire/mall/manager/controller/k3/K3TransferController.java

@@ -4,7 +4,8 @@ package com.zfire.mall.manager.controller.k3;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.zfire.mall.manager.bean.ExcelData;
 import com.zfire.mall.manager.bean.k3.KingTransfer;
-import com.zfire.mall.manager.bean.k3.KingTransferAdd;
+import com.zfire.mall.manager.bean.k3.KingTransferAddOrUp;
+import com.zfire.mall.manager.bean.k3.KingTransferAddOrUp;
 import com.zfire.mall.manager.bean.k3.KingTransferBean;
 import com.zfire.mall.manager.bean.pick.PickManagerBean;
 import com.zfire.mall.manager.helper.ResponseHelper;
@@ -89,7 +90,7 @@ public class K3TransferController {
     @ApiOperation(value = "新增调拨单")
     @PostMapping("/add")
     public ResponseHelper add(
-            @RequestBody KingTransferAdd kingTransferAdd
+            @RequestBody KingTransferAddOrUp kingTransferAdd
     ) throws Exception {
         k3TransferLogic.add(kingTransferAdd);
         return ResponseHelper.success();
@@ -97,8 +98,8 @@ public class K3TransferController {
 
     @ApiOperation(value = "修改调拨单")
     @PostMapping("/update")
-    public ResponseHelper updateCustomer(
-            @RequestBody KingTransferAdd kingTransferAdd
+    public ResponseHelper update(
+            @RequestBody KingTransferAddOrUp kingTransferAdd
     ) throws Exception {
         k3TransferLogic.update(kingTransferAdd);
         return ResponseHelper.success();

+ 28 - 0
src/main/java/com/zfire/mall/manager/controller/wallet/WalletNewController.java

@@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.zfire.mall.manager.annotation.ZfireList;
 import com.zfire.mall.manager.bean.ExcelData;
 import com.zfire.mall.manager.bean.k3.KingDeeOtherStockInAdd;
+import com.zfire.mall.manager.bean.k3.KingDeeWalletVO;
+import com.zfire.mall.manager.bean.k3.v2.KingTransferVO;
 import com.zfire.mall.manager.bean.listV2.CustomerWalletAmountVO;
 import com.zfire.mall.manager.bean.listV2.WalletRebateVO;
 import com.zfire.mall.manager.bean.listV2.WalletSaleTypeRelaVO;
@@ -51,6 +53,32 @@ public class WalletNewController {
     RedisLockRegistry redisLockRegistry;
 
 
+    @ZfireList
+    @ApiOperation(value = "调拨单-列表")
+    @PostMapping("/list")
+    public ResponseHelper<IPage<KingDeeWalletVO>> v2ListPage(
+            @RequestBody ZfireParamBean zfireParamBean
+    ) throws Exception {
+        IPage<KingDeeWalletVO> page = walletLogic.v2ListPage(zfireParamBean);
+        return ResponseHelper.success(page, new TypeReference<KingDeeWalletVO>() {});
+    }
+
+    @PostMapping("/list/export")
+    @ApiOperation("调拨单-导出")
+    public void v2ListPageExport(
+            @RequestBody ZfireParamBean zfireParamBean,
+            HttpServletRequest request,
+            HttpServletResponse response
+    ) throws Exception {
+        //1.组装查询条件
+        ZfireParamBean zfireParam = FieldUtils.supplyParam(zfireParamBean);
+        //2.查询要导出的内容
+        IPage<KingDeeWalletVO> list = walletLogic.v2ListPage(zfireParamBean);
+        //3.导出
+        FieldUtils.exportData(list.getRecords(),zfireParam.getExportFields(),request,response);
+    }
+
+
 
     @ApiOperation(value = "新增钱包")
     @PostMapping("/add")

+ 55 - 6
src/main/java/com/zfire/mall/manager/logic/k3/K3ReceiptLogic.java

@@ -1,9 +1,10 @@
 package com.zfire.mall.manager.logic.k3;
 
 import cn.hutool.core.date.DateUtil;
-import com.aliyuncs.utils.StringUtils;
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.zfire.mall.manager.bean.CommonCountBean;
 import com.zfire.mall.manager.bean.ExcelData;
@@ -30,6 +31,7 @@ import com.zfire.mall.manager.plus.service.KingDeeReceiptService;
 import com.zfire.mall.manager.plus.service.KingDeeWalletService;
 import com.zfire.mall.manager.zfire.bean.ZfireParamBean;
 import com.zfire.mall.manager.zfire.util.FieldUtils;
+import lombok.extern.log4j.Log4j;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -41,6 +43,7 @@ import java.util.*;
 import java.util.stream.Collectors;
 
 @Service
+@Log4j
 public class K3ReceiptLogic {
 
     @Autowired
@@ -463,11 +466,6 @@ public class K3ReceiptLogic {
                     kingDeeReceipt.getTheTime(),kingDeeReceipt.getBillNo(),1,"add");
             walletLogic.doWalletAmount(customerWalletAmountBean);
         }
-        //弃审金蝶
-        boolean b = k3ReceiptBillLogic.unAuditByBillNo(kingDeeReceipt.getBillNo(),billType);
-        if(!b){
-            throw new RemoteServiceException("对接金蝶系统异常,弃审失败");
-        }
     }
 
     public void add(KingDeeReceipt kingDeeWallet) {
@@ -484,4 +482,55 @@ public class K3ReceiptLogic {
         kingDeeReceipt.setStatus(cancelStatus);
         kingDeeReceipt.updateById();
     }
+
+
+
+    /**
+     * 现金钱包金额充值/反审
+     * @param objects
+     * @throws InterruptedException
+     */
+    public void initAmount(List<KingDeeReceipt> objects) throws InterruptedException {
+        //一键生成经销商钱包
+//        List<String> customerIds = objects.stream().filter(v -> v != null && StringUtils.isNotEmpty(v.getWalletId()))
+//                .map(KingDeeReceipt::getCustomerId).distinct().collect(Collectors.toList());
+//        for (String customerId : customerIds) {
+//            walletLogic.initByK3Customer(customerId);
+//        }
+        walletLogic.initByK3Customer(null);
+        log.info("收款单/退款单/付款单:"+ JSONObject.toJSONString(objects));
+
+        List<CustomerWalletAmountBean> customerWalletAmountBeans = new ArrayList<>();
+        //处理收款单/返利单逻辑/付款单
+        for(KingDeeReceipt kingDeeReceipt : objects){
+            if(kingDeeReceipt == null || (!kingDeeReceipt.getStatus().equals("C") && !kingDeeReceipt.getStatus().equals("D"))){
+                continue;
+            }
+            if(org.apache.commons.lang3.StringUtils.isEmpty(kingDeeReceipt.getWalletId().trim()) || org.apache.commons.lang3.StringUtils.isEmpty(kingDeeReceipt.getCustomerId().trim())){
+                continue;
+            }
+
+            //本次同步过来的钱
+            BigDecimal amount = kingDeeReceipt.getAmount();
+            if(kingDeeReceipt.getStatus().equals("D")) {
+                amount = BigDecimal.valueOf(0);
+            }
+
+            //检查是否存在反审过来的单,如果之前存在审核通过的单,又有相同的单过来,代表该单这次被反审了,需要减掉它
+            KingDeeReceipt oldBill = kingDeeReceiptService.getById(kingDeeReceipt.getId());
+            if(oldBill != null && oldBill.getExamineTime() != null && kingDeeReceipt.getExamineTime() != null
+                    && oldBill.getExamineTime().getTime() == kingDeeReceipt.getExamineTime().getTime()){
+                log.info("【重复同步的收款单/付款单】id:"+kingDeeReceipt.getId());
+                continue;
+            }
+            if(oldBill != null && oldBill.getStatus().equals("C")){
+                BigDecimal subAmount = BigDecimal.valueOf(0).subtract(oldBill.getAmount());
+              //  customerWalletAmountBeans.add(this.doAmount(oldBill,subAmount,oldBill.getRemark()));
+            }
+
+           // customerWalletAmountBeans.add(this.doAmount(kingDeeReceipt,amount,kingDeeReceipt.getRemark()));
+        }
+        walletLogic.doWalletAmount(customerWalletAmountBeans);
+    }
+
 }

+ 2 - 2
src/main/java/com/zfire/mall/manager/logic/k3/K3TransferLogic.java

@@ -139,7 +139,7 @@ public class K3TransferLogic {
         return excelData;
     }
 
-    public void add(KingTransferAdd kingTransferAdd) {
+    public void add(KingTransferAddOrUp kingTransferAdd) {
         kingTransferAdd.setId(IdWorker.getIdStr());
         kingTransferAdd.setBillNo(kingTransferAdd.getId());
         kingTransferAdd.insert();
@@ -150,7 +150,7 @@ public class K3TransferLogic {
         kingDeeTransferItemService.saveBatch(kingTransferAdd.getKingDeeTransferItems());
     }
 
-    public void update(KingTransferAdd kingTransferAdd) {
+    public void update(KingTransferAddOrUp kingTransferAdd) {
         kingTransferAdd.updateById();
 
         kingDeeTransferItemService.lambdaUpdate().eq(KingDeeTransferItem::getBillNo,kingTransferAdd.getId()).remove();

+ 6 - 0
src/main/java/com/zfire/mall/manager/logic/wallet/WalletLogic.java

@@ -14,6 +14,7 @@ import com.zfire.mall.manager.bean.ExcelData;
 import com.zfire.mall.manager.bean.ReceivableOrderBean;
 import com.zfire.mall.manager.bean.admin.AdminUserCom;
 import com.zfire.mall.manager.bean.k3.K3CustomerBean;
+import com.zfire.mall.manager.bean.k3.KingDeeWalletVO;
 import com.zfire.mall.manager.bean.k3.bill.OtherReceItemBean;
 import com.zfire.mall.manager.bean.k3.bill.SyncK3OtherReceBean;
 import com.zfire.mall.manager.bean.listV2.*;
@@ -1992,4 +1993,9 @@ public class WalletLogic {
         kingDeeWallet.updateById();
 
     }
+
+    public IPage<KingDeeWalletVO> v2ListPage(ZfireParamBean zfireParamBean) {
+        zfireParamBean = FieldUtils.supplyParam(zfireParamBean);
+        return receMapper.walletV2(new Page(zfireParamBean.getPageNum(), zfireParamBean.getPageSize()), zfireParamBean);
+    }
 }

+ 11 - 0
src/main/resources/mapper/ReceMapper.xml

@@ -52,6 +52,17 @@
 
         ORDER BY a.create_time DESC
     </select>
+    <select id="walletV2" resultType="com.zfire.mall.manager.bean.k3.KingDeeWalletVO">
+        SELECT
+            a.*
+        FROM
+        king_dee_wallet a
+        ${ex.query}
+        <if test="ex.orderBy == null or ex.orderBy ==''">
+            ORDER BY a.create_time DESC
+        </if>
+        ${ex.orderBy}
+    </select>
 
 
 </mapper>