zxz 3 år sedan
förälder
incheckning
e81c015cc2

+ 27 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/controller/PaymentManagementController.java

@@ -46,6 +46,33 @@ public class PaymentManagementController {
     public String payMoney(@RequestBody PaymentManagement paymentManagement){
         return paymentManagementService.payMoney(paymentManagement);
     }
+    /**
+     * 收款
+     * @param paymentManagement
+     * @return
+     */
+    @PostMapping("/api/collectMoney")
+    public String collectMoney(@RequestBody PaymentManagement paymentManagement){
+        return paymentManagementService.collectMoney(paymentManagement);
+    }
+    /**
+     * 编辑应收
+     * @param paymentManagement
+     * @return
+     */
+    @PostMapping("/api/editCollect")
+    public String editCollect(@RequestBody PaymentManagement paymentManagement){
+        return paymentManagementService.editCollect(paymentManagement);
+    }
+    /**
+     * 备注
+     * @param paymentManagement
+     * @return
+     */
+    @PostMapping("/api/addRemarks")
+    public String addRemarks(@RequestBody PaymentManagement paymentManagement){
+        return paymentManagementService.addRemarks(paymentManagement);
+    }
 
     /**
      * 结算

+ 16 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/IPaymentManagementService.java

@@ -35,6 +35,22 @@ public interface IPaymentManagementService extends IService<PaymentManagement> {
      * @param paymentManagement
      */
     String payMoney(PaymentManagement paymentManagement);
+    /**
+     * 收款
+     * @param paymentManagement
+     */
+    String collectMoney(PaymentManagement paymentManagement);
+    /**
+     * 备注
+     * @param paymentManagement
+     */
+    String addRemarks(PaymentManagement paymentManagement);
+    /**
+     * 编辑应收
+     * @param paymentManagement
+     */
+    String editCollect(PaymentManagement paymentManagement);
+
     /**
      * 删除
      *

+ 68 - 1
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/PaymentManagementServiceImpl.java

@@ -196,7 +196,74 @@ public class PaymentManagementServiceImpl extends ServiceImpl<PaymentManagementM
         }
         return "ok";
     }
-
+    /**
+     * 收款
+     * @param paymentManagement
+     * @return
+     */
+    @Override
+    public String collectMoney(PaymentManagement paymentManagement) {
+        List<PaymentManagement> paymentManagementList = paymentManagement.getPaymentManagementList();
+        Float money = paymentManagement.getMoney();
+        //收款多条
+        if (!CollectionUtils.isEmpty(paymentManagementList)) {
+            for (PaymentManagement paymentManagement1 : paymentManagementList) {
+                PaymentManagement paymentManagement2 = this.selectById(paymentManagement1.getId());
+                //收款金额大于本次循环未收金额
+                if (money >= paymentManagement1.getAmountNotCollectable()) {
+                    money = money - paymentManagement1.getAmountNotCollectable();
+                    //全部收款
+                    paymentManagement1.setStatus(StatusEnum.PUR_COLLECTaLL.getName());
+                    paymentManagement1.setStatusFlag(StatusEnum.PUR_COLLECTaLL.getFlag());
+                    paymentManagement1.setCollectionDate(paymentManagement.getCollectionDate());
+                    paymentManagement1.setCollectionScreenshot(paymentManagement2.getCollectionScreenshot() != null ? paymentManagement2.getCollectionScreenshot() + '$' + paymentManagement.getCollectionScreenshot() : paymentManagement.getCollectionScreenshot());
+                    paymentManagement1.setAmountEdCollectionable(paymentManagement1.getAmountEdCollectionable() + paymentManagement1.getAmountNotCollectable());
+                    paymentManagement1.setAmountNotCollectable(0.0f);
+                    this.updateById(paymentManagement1);
+                } else if (money > 0) {
+                    Float moneyTmp = money - paymentManagement1.getAmountNotCollectable();
+                    //部分收款
+                    paymentManagement1.setStatus(StatusEnum.PUR_COLLECT.getName());
+                    paymentManagement1.setStatusFlag(StatusEnum.PUR_COLLECT.getFlag());
+                    paymentManagement1.setCollectionDate(paymentManagement.getCollectionDate());
+                    paymentManagement1.setCollectionScreenshot(paymentManagement2.getCollectionScreenshot() != null ? paymentManagement2.getCollectionScreenshot() + '$' + paymentManagement.getCollectionScreenshot() : paymentManagement.getCollectionScreenshot());
+                    paymentManagement1.setAmountEdCollectionable(paymentManagement1.getAmountEdCollectionable() + money);
+                    paymentManagement1.setAmountNotCollectable(paymentManagement1.getAmountNotCollectable() - money);
+                    this.updateById(paymentManagement1);
+                    money = moneyTmp;
+                } else {
+                    break;
+                }
+            }
+        }
+        return "OK";
+    }
+    /**
+     * 添加备注
+     * @param paymentManagement
+     * @return
+     */
+    @Override
+    public String addRemarks(PaymentManagement paymentManagement) {
+        List<PaymentManagement> paymentManagementList = paymentManagement.getPaymentManagementList();
+        //更新多条
+        this.updateBatchById(paymentManagementList);
+        return "OK";
+    }
+    /**
+     * 编辑应收
+     * @param paymentManagement
+     * @return
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public String editCollect(PaymentManagement paymentManagement) {
+        boolean one =  this.updateById(paymentManagement);
+        if(one){
+            return "OK";
+        }
+        return "NG";
+    }
     /**
      * 删除
      * @param id

+ 3 - 3
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/WeighingManagementServiceImpl.java

@@ -126,10 +126,10 @@ public class WeighingManagementServiceImpl extends ServiceImpl<WeighingManagemen
                 paymentManagement1.setId(IdGenerator.generateUUID());
                 paymentManagement1.setRelationId(weighingManagement1.getRelationId());
                 paymentManagement1.setCompId(weighingManagement1.getCompId());
-                paymentManagement1.setPaymentNo(weighingManagement1.getNumber());
-                paymentManagement1.setCustomerName(weighingManagement1.getCustomer());
+                //paymentManagement1.setPaymentNo(weighingManagement1.getNumber());
+                //paymentManagement1.setCustomerName(weighingManagement1.getCustomer());
                 paymentManagement1.setCarNo(weighingManagement1.getCarNumber());
-                paymentManagement1.setType(weighingManagement1.getType());
+                //paymentManagement1.setType(weighingManagement1.getType());
                 paymentManagement1.setGoodsName(weighingManagement1.getGoodsName());
                 paymentManagement1.setGrossWeight(weighingManagement.getGrossWeight());
                 paymentManagement1.setTare(weighingManagement1.getTare());

+ 8 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/resources/mapper/PaymentManagementMapper.xml

@@ -58,13 +58,21 @@
         goods_name as goodsName,
         car_no as carNo,
         type,
+--         contract_no as contractNo,
         net_weight as netWeight,
+        gross_weight as grossWeight,
+        tare,
         pure_weight as pureWeight,
         tidal_grain_price as tidalGrainPrice,
         solid_grain_price as solidGrainPrice,
         amount_ing_payable as amountIngPayable,
         amount_ed_payable as amountEdPayable,
+        calculation_collectable as calculationCollectable,
+        actual_collectionment as actualCollectionment,
+        amount_ed_collectionable as amountEdCollectionable,
+        management_type as managementType,
         customer_name as customerName,
+        collection_date as collectionDate,
         status,
         approve_status as approveStatus,
         status_flag as statusFlag,