gongdecai 3 years ago
parent
commit
65e289c528

+ 6 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/constant/StatusEnum.java

@@ -79,6 +79,12 @@ public enum StatusEnum {
     //确认卸货状态
     //确认卸货状态
     NOT_CONFIRM("1", "未确认", "not_confirmed"),
     NOT_CONFIRM("1", "未确认", "not_confirmed"),
     CONFIRM("3", "已确认", "confirmed"),
     CONFIRM("3", "已确认", "confirmed"),
+
+    // 采购入库统计
+    PUR_REVIEWED("1", "待审核", ""),
+    PUR_PAY("3", "部分付款", ""),
+    PUR_PAYaLL("5", "全部付款", ""),
+    PUR_RETURN("7", "已驳回", ""),
     ;
     ;
     @Getter
     @Getter
     private String flag;
     private String flag;

+ 26 - 1
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/PurchaseReceiptReport.java

@@ -4,15 +4,18 @@ import java.util.Date;
 import com.baomidou.mybatisplus.activerecord.Model;
 import com.baomidou.mybatisplus.activerecord.Model;
 import java.io.Serializable;
 import java.io.Serializable;
 
 
+import com.baomidou.mybatisplus.annotations.TableField;
 import com.baomidou.mybatisplus.annotations.TableId;
 import com.baomidou.mybatisplus.annotations.TableId;
 import com.baomidou.mybatisplus.annotations.TableName;
 import com.baomidou.mybatisplus.annotations.TableName;
 import com.baomidou.mybatisplus.annotations.Version;
 import com.baomidou.mybatisplus.annotations.Version;
 
 
 import com.baomidou.mybatisplus.enums.IdType;
 import com.baomidou.mybatisplus.enums.IdType;
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.yh.saas.common.support.entity.BaseModel;
 import com.yh.saas.common.support.entity.BaseModel;
 import lombok.Data;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
 import lombok.experimental.Accessors;
+import org.springframework.format.annotation.DateTimeFormat;
 
 
 /**
 /**
  * <p>
  * <p>
@@ -66,6 +69,8 @@ public class PurchaseReceiptReport extends BaseModel<PurchaseReceiptReport> {
     /**
     /**
      * 入库日期
      * 入库日期
      */
      */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
     private Date warehousingDate;
     private Date warehousingDate;
     /**
     /**
      * 水分
      * 水分
@@ -104,7 +109,7 @@ public class PurchaseReceiptReport extends BaseModel<PurchaseReceiptReport> {
      */
      */
     private Float amountEdPayable;
     private Float amountEdPayable;
     /**
     /**
-     * 未付金额(元/吨)
+     * 未付金额
      */
      */
     private Float amountNotPayable;
     private Float amountNotPayable;
     /**
     /**
@@ -114,6 +119,8 @@ public class PurchaseReceiptReport extends BaseModel<PurchaseReceiptReport> {
     /**
     /**
      * 付款日期
      * 付款日期
      */
      */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @DateTimeFormat(pattern = "yyyy-MM-dd")
     private Date paymentDate;
     private Date paymentDate;
     /**
     /**
      * 已开发票(元)
      * 已开发票(元)
@@ -187,6 +194,24 @@ public class PurchaseReceiptReport extends BaseModel<PurchaseReceiptReport> {
      * 审核流id
      * 审核流id
      */
      */
     private String workflowId;
     private String workflowId;
+    /**
+     * 模糊查询
+     */
+    @TableField(exist = false)
+    private String searchKeyWord;
+
+    /**
+     *查询类型
+     */
+    @TableField(exist = false)
+    private String searchType;
+
+
+    /**
+     *补货结转对象
+     */
+    @TableField(exist = false)
+    private PurchaseReceiptReport purchaseReceiptReport;
 
 
 
 
     @Override
     @Override

+ 1 - 2
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/exception/YExceptionEnum.java

@@ -29,8 +29,7 @@ public enum YExceptionEnum {
 	FAILED_TO_EXAMINE("ERROR","该身份认证还未通过审核,无法更换手机号"),
 	FAILED_TO_EXAMINE("ERROR","该身份认证还未通过审核,无法更换手机号"),
 	AUTHENTICATION_INFORMATION_CHANGE_FAILED("ERROR","身份认证状态审核中或已通过审核,无法更改身份认证信息"),
 	AUTHENTICATION_INFORMATION_CHANGE_FAILED("ERROR","身份认证状态审核中或已通过审核,无法更改身份认证信息"),
 	PURCHASE_ORDER_ERROR("PURCHASE-001", "采购订单审核没有可以进行的工作流!"),
 	PURCHASE_ORDER_ERROR("PURCHASE-001", "采购订单审核没有可以进行的工作流!"),
-
-
+	PURCHASE_ORDER_ERROR1("PURCHASE-002", "客户未确认卸货不可结转!"),
 	;
 	;
 	@Getter
 	@Getter
 	private String value;
 	private String value;

+ 20 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/mapper/PurchaseReceiptReportMapper.java

@@ -1,8 +1,12 @@
 package com.yh.saas.plugin.yiliangyiyun.mapper;
 package com.yh.saas.plugin.yiliangyiyun.mapper;
 
 
+import com.yh.saas.plugin.yiliangyiyun.entity.PurchaseOrder;
 import com.yh.saas.plugin.yiliangyiyun.entity.PurchaseReceiptReport;
 import com.yh.saas.plugin.yiliangyiyun.entity.PurchaseReceiptReport;
 import com.baomidou.mybatisplus.mapper.BaseMapper;
 import com.baomidou.mybatisplus.mapper.BaseMapper;
 
 
+import java.util.List;
+import java.util.Map;
+
 /**
 /**
  * <p>
  * <p>
  * 采购入库报表 Mapper 接口
  * 采购入库报表 Mapper 接口
@@ -13,4 +17,20 @@ import com.baomidou.mybatisplus.mapper.BaseMapper;
  */
  */
 public interface PurchaseReceiptReportMapper extends BaseMapper<PurchaseReceiptReport> {
 public interface PurchaseReceiptReportMapper extends BaseMapper<PurchaseReceiptReport> {
 
 
+
+    /**
+     * 根据条件查询采购入库他统计总数
+     *
+     * @param pageView
+     * @return
+     */
+    Integer getCountByCondition(Map<String, Object> pageView);
+
+    /**
+     * 根据条件查询采购入库统计列表
+     *
+     * @param pageView
+     * @return
+     */
+    List<PurchaseReceiptReport> getListByCondition(Map<String, Object> pageView);
 }
 }

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

@@ -1,5 +1,6 @@
 package com.yh.saas.plugin.yiliangyiyun.service;
 package com.yh.saas.plugin.yiliangyiyun.service;
 
 
+import com.baomidou.mybatisplus.plugins.Page;
 import com.yh.saas.plugin.yiliangyiyun.entity.PurchaseReceiptReport;
 import com.yh.saas.plugin.yiliangyiyun.entity.PurchaseReceiptReport;
 import com.baomidou.mybatisplus.service.IService;
 import com.baomidou.mybatisplus.service.IService;
 
 
@@ -13,4 +14,12 @@ import com.baomidou.mybatisplus.service.IService;
  */
  */
 public interface IPurchaseReceiptReportService extends IService<PurchaseReceiptReport> {
 public interface IPurchaseReceiptReportService extends IService<PurchaseReceiptReport> {
 
 
+
+    Page<PurchaseReceiptReport> selectPurchaseOrder(PurchaseReceiptReport purchaseReceiptReport);
+
+
+    String editProcurementReceiptReport(PurchaseReceiptReport purchaseReceiptReport);
+
+
+    String replenishment(PurchaseReceiptReport purchaseReceiptReport);
 }
 }

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

@@ -1,10 +1,33 @@
 package com.yh.saas.plugin.yiliangyiyun.service.impl;
 package com.yh.saas.plugin.yiliangyiyun.service.impl;
 
 
-import com.yh.saas.plugin.yiliangyiyun.entity.PurchaseReceiptReport;
+import com.alipay.sofa.runtime.api.annotation.SofaReference;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.baomidou.mybatisplus.plugins.Page;
+import com.google.common.collect.Lists;
+import com.winsea.svc.base.base.entity.CommonRoleResource;
+import com.winsea.svc.base.base.service.ICommonRoleResourceService;
+import com.winsea.svc.base.security.entity.User;
+import com.winsea.svc.base.security.util.AuthSecurityUtils;
+import com.yh.saas.common.support.util.IdGenerator;
+import com.yh.saas.plugin.yiliangyiyun.constant.StatusEnum;
+import com.yh.saas.plugin.yiliangyiyun.entity.*;
+import com.yh.saas.plugin.yiliangyiyun.exception.YException;
+import com.yh.saas.plugin.yiliangyiyun.exception.YExceptionEnum;
 import com.yh.saas.plugin.yiliangyiyun.mapper.PurchaseReceiptReportMapper;
 import com.yh.saas.plugin.yiliangyiyun.mapper.PurchaseReceiptReportMapper;
 import com.yh.saas.plugin.yiliangyiyun.service.IPurchaseReceiptReportService;
 import com.yh.saas.plugin.yiliangyiyun.service.IPurchaseReceiptReportService;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.yh.saas.plugin.yiliangyiyun.service.ITransactionRecordService;
+import com.yh.saas.toolkit.workflow.service.IWorkflowService;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 
 /**
 /**
  * <p>
  * <p>
@@ -17,4 +40,100 @@ import org.springframework.stereotype.Service;
 @Service
 @Service
 public class PurchaseReceiptReportServiceImpl extends ServiceImpl<PurchaseReceiptReportMapper, PurchaseReceiptReport> implements IPurchaseReceiptReportService {
 public class PurchaseReceiptReportServiceImpl extends ServiceImpl<PurchaseReceiptReportMapper, PurchaseReceiptReport> implements IPurchaseReceiptReportService {
 
 
+    @Autowired
+    private IWorkflowService workflowService;
+
+    @SofaReference
+    private ICommonRoleResourceService roleResourceService;
+
+    /**
+     * 采购入库统计
+     *
+     * @param purchaseReceiptReport
+     * @return
+     */
+    @Override
+    public Page<PurchaseReceiptReport> selectPurchaseOrder(PurchaseReceiptReport purchaseReceiptReport) {
+        Map<String, Object> pageView = new HashMap<>();
+        pageView.put("startRecord", (purchaseReceiptReport.getCurrentPage() - 1)
+                * purchaseReceiptReport.getPageSize());
+        List<String> businessKeys = null;
+        businessKeys = workflowService.getTaskBusinessKeysByCode("PURCHASE-RECEIPT-REPORT");
+        List<String> statusSet = new ArrayList<>();
+        List<String> resourceIdList = this.getResourceIdList();
+        if (resourceIdList.contains("PURCHAS")) { // 填写,提交    权限做完以后替换
+            List<String> statusList = Lists.newArrayList(StatusEnum.PUR_RETURN.getFlag());
+            statusSet.addAll(statusList);
+        }
+
+        //公司id
+        pageView.put("compId", purchaseReceiptReport.getCompId());
+        pageView.put("searchKeyWord", purchaseReceiptReport.getSearchKeyWord());
+        pageView.put("searchType", purchaseReceiptReport.getSearchType());
+        pageView.put("pageSize", purchaseReceiptReport.getPageSize());
+        pageView.put("currentPage", purchaseReceiptReport.getCurrentPage());
+        pageView.put("contractNo", purchaseReceiptReport.getContractNo());
+        pageView.put("businessKeys", businessKeys);
+        pageView.put("statusSet", statusSet);
+
+
+        // 查询采购订单总数
+        Integer dataCount = baseMapper.getCountByCondition(pageView);
+        List<PurchaseReceiptReport> dataList = baseMapper.getListByCondition(pageView);
+        Page<PurchaseReceiptReport> page = new Page<>();
+        page.setRecords(dataList == null ? Lists.newArrayList() : dataList);
+        page.setTotal(dataCount == null ? 0 : dataCount);
+        page.setCurrent(purchaseReceiptReport.getCurrentPage());
+        page.setSize(purchaseReceiptReport.getPageSize());
+        return page;
+    }
+
+
+    /**
+     * 编辑采购入库统计
+     *
+     * @param purchaseReceiptReport
+     * @return
+     */
+    @Override
+    public String editProcurementReceiptReport(PurchaseReceiptReport purchaseReceiptReport) {
+        boolean one = this.updateById(purchaseReceiptReport);
+        if (one) {
+            return "OK";
+        } else {
+            return "NG";
+        }
+    }
+
+
+    /**
+     * 补货结转
+     *
+     * @param purchaseReceiptReport
+     * @return
+     */
+    @Override
+    public String replenishment(PurchaseReceiptReport purchaseReceiptReport) {
+        if ("1".equals(purchaseReceiptReport.getCustomerConfirmationStatusFlag())) {
+            // 未付金额不等0 可补货结转
+            if (purchaseReceiptReport.getAmountNotPayable() != 0) {
+                this.updateById(purchaseReceiptReport);
+                PurchaseReceiptReport receiptReport = purchaseReceiptReport.getPurchaseReceiptReport();
+                receiptReport.setId(IdGenerator.generateUUID());
+                this.insert(receiptReport);
+            }
+        } else {
+            throw new YException(YExceptionEnum.PURCHASE_ORDER_ERROR1);
+        }
+        return "OK";
+    }
+
+
+    private List<String> getResourceIdList() {
+        User currentUser = AuthSecurityUtils.getCurrentUserInfo();
+        // 当前登录人主要角色
+        return roleResourceService.getBindResourcesByUserId(currentUser.getUserId()).stream()
+                .map(CommonRoleResource::getResourceId).collect(Collectors.toList());
+
+    }
 }
 }

+ 60 - 7
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/WarehouseInOutInfoServiceImpl.java

@@ -3,6 +3,7 @@ package com.yh.saas.plugin.yiliangyiyun.service.impl;
 
 
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.mapper.EntityWrapper;
 import com.baomidou.mybatisplus.mapper.Wrapper;
 import com.baomidou.mybatisplus.mapper.Wrapper;
+import com.winsea.svc.base.security.util.AuthSecurityUtils;
 import com.yh.saas.common.support.util.IdGenerator;
 import com.yh.saas.common.support.util.IdGenerator;
 import com.yh.saas.plugin.yiliangyiyun.constant.NumberConstant;
 import com.yh.saas.plugin.yiliangyiyun.constant.NumberConstant;
 import com.yh.saas.plugin.yiliangyiyun.constant.StatusEnum;
 import com.yh.saas.plugin.yiliangyiyun.constant.StatusEnum;
@@ -51,6 +52,10 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
     private IWarehouseInOutInfoService warehouseInOutInfoService;
     private IWarehouseInOutInfoService warehouseInOutInfoService;
     @Autowired
     @Autowired
     private ITranCarInfoService tranCarInfoService;
     private ITranCarInfoService tranCarInfoService;
+    @Autowired
+    private IPurchaseReceiptReportService purchaseReceiptReportService;
+    @Autowired
+    private IPurchaseOrderService purchaseOrderService;
 
 
     /**
     /**
      * 待完成页面列表
      * 待完成页面列表
@@ -173,7 +178,7 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
             //判断出入库
             //判断出入库
             //常用库入库
             //常用库入库
             if ("2".equals(warehouseInOutInfo.getInOutFlag()) && "1".equals(warehouseBaseInfo.getWarehouseType())) {
             if ("2".equals(warehouseInOutInfo.getInOutFlag()) && "1".equals(warehouseBaseInfo.getWarehouseType())) {
-                //判断是否有
+                //判断是否有
                 if (warehouseBaseInfo != null) {
                 if (warehouseBaseInfo != null) {
                     //  查询库位
                     //  查询库位
                     WarehousePositionInfo warehousePositionInfo = warehousePositionInfoService.selectById(warehouseInOutInfo.getPositionId());
                     WarehousePositionInfo warehousePositionInfo = warehousePositionInfoService.selectById(warehouseInOutInfo.getPositionId());
@@ -201,6 +206,52 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
                             warehousePositionStorageInfoService.insert(warehousePositionStorageInfo1);
                             warehousePositionStorageInfoService.insert(warehousePositionStorageInfo1);
                         }
                         }
                     }
                     }
+
+                    // 采购入库统计
+                    PurchaseReceiptReport purchaseReceiptReport = new PurchaseReceiptReport();
+                    // 采购订单
+                    PurchaseOrder purchaseOrder = purchaseOrderService.selectOne(new EntityWrapper<PurchaseOrder>().eq("contract_no", warehouseInOutInfo.getContractNo())
+                            .eq("delete_flag", "0"));
+
+                    purchaseReceiptReport.setId(IdGenerator.generateUUID());
+                    purchaseReceiptReport.setCompId(AuthSecurityUtils.getCurrentUserInfo().getCompId());
+                    purchaseReceiptReport.setContractNo(warehouseInOutInfo.getContractNo());
+                    purchaseReceiptReport.setGoodsName(warehouseInOutInfo.getGoodsName());
+                    purchaseReceiptReport.setGoodsNameKey(warehouseInOutInfo.getGoodsNameKey());
+                    purchaseReceiptReport.setPositionNumber(warehouseInOutInfo.getBinNumber());
+                    purchaseReceiptReport.setCarNo(warehouseInOutInfo.getCarNo());
+                    purchaseReceiptReport.setWarehousingDate(warehouseInOutInfo.getInOutDate());
+                    purchaseReceiptReport.setProtein(warehouseInOutInfo.getProtein());
+                    purchaseReceiptReport.setWaterContent(warehouseInOutInfo.getWaterContent());
+                    purchaseReceiptReport.setUnitPrice(warehouseInOutInfo.getUnitPrice());
+                    purchaseReceiptReport.setDeductionAmount(Float.valueOf(warehouseInOutInfo.getDeductionAmount()));
+                    purchaseReceiptReport.setNetWeight(warehouseInOutInfo.getNetWeight());
+                    purchaseReceiptReport.setDeductionItems(warehouseInOutInfo.getDeductionItems());
+                    purchaseReceiptReport.setWarehouseName(warehouseInOutInfo.getWarehouseName());
+                    if (purchaseOrder != null) {
+                        purchaseReceiptReport.setBasisPrice(purchaseOrder.getBasis());
+                        purchaseReceiptReport.setUnloadingCharge(purchaseOrder.getUnloadingCharge());
+                        purchaseReceiptReport.setInvoiceFee(purchaseOrder.getInvoiceFee());
+                        purchaseReceiptReport.setCustomerName(purchaseOrder.getSeller());
+                        purchaseReceiptReport.setInvoiceType(purchaseOrder.getType());
+                        purchaseReceiptReport.setInvoiceTypeKey(purchaseOrder.getType());
+                    }
+                    purchaseReceiptReport.setStatusFlag(StatusEnum.PUR_REVIEWED.getFlag());
+                    purchaseReceiptReport.setStatus(StatusEnum.PUR_REVIEWED.getName());
+
+                    // 客户确认
+                    TranCarInfo tranCarInfo = tranCarInfoService.selectOne(new EntityWrapper<TranCarInfo>()
+                            .eq("contract_no", warehouseInOutInfo.getContractNo())
+                            .eq("car_no", warehouseInOutInfo.getCarNo())
+                            .eq("delete_flag", "0"));
+                    if (tranCarInfo != null&& "3".equals(tranCarInfo.getConfirmFlag())) {
+                        purchaseReceiptReport.setCustomerConfirmationStatusFlag("1");
+                        purchaseReceiptReport.setCustomerConfirmationStatus("是");
+                    } else {
+                        purchaseReceiptReport.setCustomerConfirmationStatusFlag("3");
+                        purchaseReceiptReport.setCustomerConfirmationStatus("否");
+                    }
+                    purchaseReceiptReportService.insert(purchaseReceiptReport);
                 }
                 }
             }
             }
             //常用库出库
             //常用库出库
@@ -298,12 +349,12 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
             // 编辑修改记录
             // 编辑修改记录
             else {
             else {
                 //App端入库关联派车表
                 //App端入库关联派车表
-                if("0".equals(warehouseInOutInfo.getPcFlag())){
-                    TranCarInfo tranCarInfo=tranCarInfoService.selectOne(new EntityWrapper<TranCarInfo>()
-                        .eq("contract_no", warehouseInOutInfo.getContractNo())
-                        .eq("car_no",warehouseInOutInfo.getCarNo())
-                        .eq(TranCarInfo.QueryFiles.DELETE_FLAG,NumberConstant.CONSTANT0));
-                    if (tranCarInfo!=null){
+                if ("0".equals(warehouseInOutInfo.getPcFlag())) {
+                    TranCarInfo tranCarInfo = tranCarInfoService.selectOne(new EntityWrapper<TranCarInfo>()
+                            .eq("contract_no", warehouseInOutInfo.getContractNo())
+                            .eq("car_no", warehouseInOutInfo.getCarNo())
+                            .eq(TranCarInfo.QueryFiles.DELETE_FLAG, NumberConstant.CONSTANT0));
+                    if (tranCarInfo != null) {
                         //将到货数据同步到派车表
                         //将到货数据同步到派车表
                         tranCarInfo.setUnloadNetWeight(warehouseInOutInfo.getNetWeight());
                         tranCarInfo.setUnloadNetWeight(warehouseInOutInfo.getNetWeight());
                         tranCarInfo.setUnloadPoundImg(warehouseInOutInfo.getAddressUrl());
                         tranCarInfo.setUnloadPoundImg(warehouseInOutInfo.getAddressUrl());
@@ -477,8 +528,10 @@ public class WarehouseInOutInfoServiceImpl extends ServiceImpl<WarehouseInOutInf
             return false;
             return false;
         }
         }
     }
     }
+
     /**
     /**
      * 查看
      * 查看
+     *
      * @param
      * @param
      */
      */
     @Override
     @Override

+ 121 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/resources/mapper/PurchaseReceiptReportMapper.xml

@@ -2,4 +2,125 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.yh.saas.plugin.yiliangyiyun.mapper.PurchaseReceiptReportMapper">
 <mapper namespace="com.yh.saas.plugin.yiliangyiyun.mapper.PurchaseReceiptReportMapper">
 
 
+
+    <!-- 获得采购入库统计总数 -->
+    <select id="getCountByCondition" parameterType="Map" resultType="java.lang.Integer">
+        SELECT
+
+        COUNT(id)
+        FROM purchase_receipt_report
+        WHERE
+        delete_flag = '0'
+        AND comp_id = #{compId}
+        <if test="businessKeys != null and businessKeys.size > 0">
+            and(
+            <foreach collection="businessKeys" item="businessValue" open="(" close=")" separator="or">
+                id = #{businessValue}
+            </foreach>
+            )
+        </if>
+        <if test="statusSet != null and statusSet.size > 0">
+            or (
+            <foreach collection="statusSet" item="statusId" separator="or" open="(" close=")">
+                t1.status_flag =
+                <if test="statusId != null">
+                    #{statusId}
+                </if>
+            </foreach>
+            )
+        </if>
+        <if test="searchType != null and searchType != ''">
+            <if test="searchType == 1">
+                AND status_flag = '1'
+            </if>
+            <if test="searchType == 2">
+                AND amountIngPayable-amountEdPayable>0
+            </if>
+            <if test="searchType == 3">
+                AND amountIngPayable-amountEdPayable=0
+            </if>
+        </if>
+        <if test="contractNo != null and contractNo != ''">
+            contract_no = #{contractNo}
+        </if>
+    </select>
+    <!-- 获得采购入库统计列表 -->
+    <select id="getListByCondition" parameterType="Map"
+            resultType="com.yh.saas.plugin.yiliangyiyun.entity.PurchaseReceiptReport">
+        SELECT
+        id,
+        comp_id as compId,
+        contract_no as contractNo,
+        goods_name as goodsName,
+        position_number as positionnumber,
+        tran_car_no as tranCarNo,
+        car_no as carNo,
+        warehousing_date as warehousingDate,
+        water_content as waterContent,
+        protein,
+        settlement_price as settlementPrice,
+        net_weight as netWeight,
+        carry_over_weight as carryOverWeight,
+        deduction_amount AS deductionAmount,
+        deduction_items AS deductionItems,
+        amount_ing_payable as amountIngPayable,
+        amount_ed_payable as amountEdPayable,
+        amount_not_payable as amountNotPayable,
+        payment_screenshot as paymentScreenshot,
+        payment_date as paymentDate,
+        already_invoice as alreadyInvoice,
+        customer_name as customerName,
+        invoice_type as invoiceType,
+        warehouse_name  as warehouseName,
+        unit_price as unitPrice,
+        basis_price as basisPrice,
+        unloading_charge as unloading_charge,
+        invoice_fee as invoiceFee,
+        replen,
+        carry_forward as carryForward,
+        status,
+        status_flag as statusFlag,
+        approve_status approveStatus,
+        customer_confirmation_status_flag as customerConfirmationStatusFlag,
+        workflow_id as workflowId
+        FROM purchase_receipt_report
+        WHERE
+        delete_flag = '0'
+        AND comp_id = #{compId}
+        <if test="businessKeys != null and businessKeys.size > 0">
+            and(
+            <foreach collection="businessKeys" item="businessValue" open="(" close=")" separator="or">
+                id = #{businessValue}
+            </foreach>
+            )
+        </if>
+        <if test="statusSet != null and statusSet.size > 0">
+            or (
+            <foreach collection="statusSet" item="statusId" separator="or" open="(" close=")">
+                t1.status_flag =
+                <if test="statusId != null">
+                    #{statusId}
+                </if>
+            </foreach>
+            )
+        </if>
+        <if test="searchType != null and searchType != ''">
+            <if test="searchType == 1">
+                AND status_flag = '1'
+            </if>
+            <if test="searchType == 2">
+                AND amountIngPayable-amountEdPayable>0
+            </if>
+            <if test="searchType == 3">
+                AND amountIngPayable-amountEdPayable=0
+            </if>
+        </if>
+        <if test="contractNo != null and contractNo != ''">
+            contract_no = #{contractNo}
+        </if>
+        ORDER BY update_date DESC
+        <if test="currentPage != null and currentPage != ''">
+            LIMIT ${startRecord}, ${pageSize}
+        </if>
+    </select>
 </mapper>
 </mapper>