Jelajahi Sumber

Merge remote-tracking branch 'origin/master'

24282 2 tahun lalu
induk
melakukan
c8dd50294a

+ 4 - 0
hx-account/pom.xml

@@ -22,6 +22,10 @@
             <groupId>com.fjhx</groupId>
             <artifactId>hx-common</artifactId>
         </dependency>
+        <dependency>
+            <groupId>com.fjhx</groupId>
+            <artifactId>hx-item</artifactId>
+        </dependency>
 
     </dependencies>
 

+ 9 - 0
hx-account/src/main/java/com/fjhx/account/controller/account/AccountRunningWaterController.java

@@ -12,6 +12,7 @@ import com.ruoyi.common.core.domain.BaseSelectDto;
 import com.fjhx.account.service.account.AccountRunningWaterService;
 import org.springframework.beans.factory.annotation.Autowired;
 
+import javax.servlet.http.HttpServletResponse;
 import java.util.List;
 
 
@@ -79,4 +80,12 @@ public class AccountRunningWaterController {
         return accountRunningWaterService.claimStatistics(dto);
     }
 
+    /**
+     * 账户资金流水表导出excel
+     */
+    @PostMapping("/exportExcel")
+    public void exportExcel(@RequestBody AccountRunningWaterSelectDto dto,HttpServletResponse httpServletResponse) {
+        accountRunningWaterService.exportExcel(dto,httpServletResponse);
+    }
+
 }

+ 65 - 0
hx-account/src/main/java/com/fjhx/account/entity/account/bo/AccountRunningWaterBo.java

@@ -0,0 +1,65 @@
+package com.fjhx.account.entity.account.bo;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Getter
+@Setter
+public class AccountRunningWaterBo {
+
+    /**
+     * 金额
+     */
+    @ExcelProperty("交易金额")
+    private BigDecimal amount;
+
+
+    /**
+     * 币种(字典account_currency)
+     */
+    @ExcelProperty("币种")
+    private String currency;
+
+    /**
+     * 账户名
+     */
+    @ExcelProperty("账户名")
+    private String name;
+
+
+    /**
+     * 开户银行
+     */
+    @ExcelProperty("对方银行")
+    private String openingBank;
+
+    /**
+     * 开户账号
+     */
+    @ExcelProperty("对方账号")
+    private String accountOpening;
+
+    /**
+     * 交易时间
+     */
+    @ExcelProperty("交易时间")
+    private Date transactionTime;
+
+    /**
+     * 备注
+     */
+    @ExcelProperty("摘要")
+    private String remarks;
+
+    /**
+     * 资金账户名称
+     */
+    @ExcelProperty("资金账户")
+    private String accountManagementName;
+
+}

+ 7 - 0
hx-account/src/main/java/com/fjhx/account/mapper/account/AccountRunningWaterMapper.java

@@ -8,6 +8,8 @@ import com.fjhx.account.entity.account.vo.AccountRunningWaterVo;
 import com.ruoyi.common.utils.wrapper.IWrapper;
 import org.apache.ibatis.annotations.Param;
 
+import java.util.List;
+
 
 /**
  * <p>
@@ -30,4 +32,9 @@ public interface AccountRunningWaterMapper extends BaseMapper<AccountRunningWate
      * @return
      */
     AccountRunningWaterVo getDetail(Long id);
+
+    /**
+     * 账户资金流水表分页
+     */
+    List<AccountRunningWaterVo> getList(@Param("ew") QueryWrapper<Object> wrapper);
 }

+ 6 - 0
hx-account/src/main/java/com/fjhx/account/service/account/AccountRunningWaterService.java

@@ -8,6 +8,7 @@ import com.fjhx.account.entity.account.vo.AccountRunningWaterVo;
 import com.fjhx.account.entity.account.dto.AccountRunningWaterSelectDto;
 import com.fjhx.account.entity.account.dto.AccountRunningWaterDto;
 
+import javax.servlet.http.HttpServletResponse;
 import java.util.List;
 
 
@@ -50,4 +51,9 @@ public interface AccountRunningWaterService extends BaseService<AccountRunningWa
      * 到账任领统计
      */
     List<AccountRunningWater> claimStatistics(BaseSelectDto dto);
+
+    /**
+     * 账户资金流水表导出excel
+     */
+    void exportExcel(AccountRunningWaterSelectDto dto, HttpServletResponse httpServletResponse);
 }

+ 78 - 1
hx-account/src/main/java/com/fjhx/account/service/account/impl/AccountRunningWaterServiceImpl.java

@@ -1,18 +1,26 @@
 package com.fjhx.account.service.account.impl;
 
 import cn.hutool.core.util.ObjectUtil;
+import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.fjhx.account.entity.account.bo.AccountRunningWaterBo;
 import com.fjhx.account.entity.account.po.AccountRemainder;
 import com.fjhx.account.entity.account.po.AccountRunningWater;
 import com.fjhx.account.mapper.account.AccountRunningWaterMapper;
 import com.fjhx.account.service.account.AccountRemainderService;
 import com.fjhx.account.service.account.AccountRunningWaterService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fjhx.common.constant.SourceConstant;
+import com.fjhx.item.util.excel.util.ExcelUtil;
+import com.fjhx.tenant.entity.dict.dto.DictTenantDataSelectDto;
+import com.fjhx.tenant.entity.dict.vo.DictTenantDataVo;
+import com.fjhx.tenant.service.dict.DictTenantDataService;
 import com.obs.services.internal.ServiceException;
 import com.ruoyi.common.annotation.TenantIgnore;
 import com.ruoyi.common.core.domain.BaseSelectDto;
 import com.ruoyi.common.utils.StringUtils;
+import org.apache.commons.collections4.ListUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -22,8 +30,10 @@ import com.ruoyi.common.utils.wrapper.IWrapper;
 import com.fjhx.account.entity.account.dto.AccountRunningWaterDto;
 import cn.hutool.core.bean.BeanUtil;
 import org.springframework.transaction.annotation.Transactional;
-
+import javax.servlet.http.HttpServletResponse;
 import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
 
 
 /**
@@ -39,6 +49,11 @@ public class AccountRunningWaterServiceImpl extends ServiceImpl<AccountRunningWa
     @Autowired
     private AccountRemainderService accountRemainderService;
 
+    @Autowired
+    private DictTenantDataService dictTenantDataService;
+
+
+
     @Override
     public Page<AccountRunningWaterVo> getPage(AccountRunningWaterSelectDto dto) {
         QueryWrapper<Object> wrapper = Wrappers.query();
@@ -151,4 +166,66 @@ public class AccountRunningWaterServiceImpl extends ServiceImpl<AccountRunningWa
 
     }
 
+    @Override
+    public void exportExcel(AccountRunningWaterSelectDto dto, HttpServletResponse httpServletResponse) {
+        QueryWrapper<Object> wrapper = Wrappers.query();
+        //资金账户
+        wrapper.eq(ObjectUtil.isNotEmpty(dto.getAccountManagementId()), "arw.account_management_id", dto.getAccountManagementId());
+        //交易类型
+        wrapper.eq(ObjectUtil.isNotEmpty(dto.getStatus()), "arw.status", dto.getStatus());
+        //是否合同到账
+        wrapper.eq(ObjectUtil.isNotEmpty(dto.getReceived()), "arw.received", dto.getReceived());
+        //币种
+        wrapper.eq(ObjectUtil.isNotEmpty(dto.getCurrency()), "arw.currency", dto.getCurrency());
+        //是否认领
+        wrapper.eq(ObjectUtil.isNotEmpty(dto.getIsClaim()), "arw.is_claim", dto.getIsClaim());
+        //交易开始金额
+        wrapper.ge(ObjectUtil.isNotEmpty(dto.getBeginAmount()),"arw.amount",dto.getBeginAmount());
+        //交易结束金额
+        wrapper.ge(ObjectUtil.isNotEmpty(dto.getEndAmount()),"arw.amount",dto.getEndAmount());
+        //交易开始时间
+        wrapper.ge(ObjectUtil.isNotEmpty(dto.getBeginTime()),"arw.create_time",dto.getBeginTime());
+        //交易结束金额
+        wrapper.ge(ObjectUtil.isNotEmpty(dto.getEndTime()),"arw.create_time",dto.getEndTime());
+        //对方账户名称
+        wrapper.ge(ObjectUtil.isNotEmpty(dto.getName()),"arw.name",dto.getName());
+        //摘要
+        wrapper.ge(ObjectUtil.isNotEmpty(dto.getRemarks()),"arw.name",dto.getRemarks());
+        if (StringUtils.isNotEmpty(dto.getKeyword())) {
+            wrapper.and(wrapper1 -> wrapper1.like("arw.remarks", dto.getKeyword()).or().like("arw.name", dto.getKeyword()));
+        }
+        if(ObjectUtil.isNotEmpty(dto.getDataType())&&dto.getDataType()==1){//到账认领数据
+            wrapper.eq("arw.received",10);
+            wrapper.orderByAsc("arw.is_claim","arw.create_time");
+        }
+        List<AccountRunningWaterVo> records = this.baseMapper.getList(wrapper);
+
+        //赋值字典数据
+        DynamicDataSourceContextHolder.push(SourceConstant.BASE);
+        List<DictTenantDataVo> dictTenantDataVos = getDict("account_currency");
+        if (dictTenantDataVos.size() == 0){
+            throw new ServiceException("数据有误:没有配置币种字典,请先配置");
+        }
+        Map<String, List<DictTenantDataVo>> dictTenantDataVoMap = dictTenantDataVos.stream()
+                .collect(Collectors.groupingBy(DictTenantDataVo::getDictKey));
+        DynamicDataSourceContextHolder.poll();
+        for (AccountRunningWaterVo accountRunningWaterVo : records) {
+            List<DictTenantDataVo> dictTenantDataVoList = dictTenantDataVoMap.get(accountRunningWaterVo.getCurrency());
+            if (ObjectUtil.isNotEmpty(dictTenantDataVoList)){
+                accountRunningWaterVo.setCurrency(dictTenantDataVoList.get(0).getDictValue());
+            }
+        }
+        //导出Excel
+        List<AccountRunningWaterBo> accountRunningWaterBos = BeanUtil.copyToList(records, AccountRunningWaterBo.class);
+        ExcelUtil.export(httpServletResponse, accountRunningWaterBos, AccountRunningWaterBo.class);
+    }
+
+    // 根据字典编码获取字典的数据
+    private List<DictTenantDataVo> getDict(String code) {
+        DictTenantDataSelectDto dto = new DictTenantDataSelectDto();
+        dto.setDictCode(code);
+        List<DictTenantDataVo> dictTenantDataServiceList = dictTenantDataService.getList(dto);
+        return dictTenantDataServiceList;
+    }
+
 }

+ 8 - 0
hx-account/src/main/resources/mapper/account/AccountRunningWaterMapper.xml

@@ -32,5 +32,13 @@
                  left join  account_management am on arw.account_management_id = am.id
             where arw.id = #{id}
     </select>
+    <select id="getList" resultType="com.fjhx.account.entity.account.vo.AccountRunningWaterVo">
+        select
+            arw.*,
+            am.alias accountManagementName
+        from account_running_water arw
+                 left join  account_management am on arw.account_management_id = am.id
+            ${ew.customSqlSegment}
+    </select>
 
 </mapper>

+ 1 - 1
hx-purchase/src/main/java/com/fjhx/purchase/service/subscribe/impl/SubscribeDetailServiceImpl.java

@@ -73,7 +73,7 @@ public class SubscribeDetailServiceImpl extends ServiceImpl<SubscribeDetailMappe
     public Page<SubscribeDetailVo> getPage(SubscribeDetailSelectDto dto) {
         IWrapper<SubscribeDetail> wrapper = getWrapper();
         //申购单号
-        wrapper.like(StringUtils.isEmpty(dto.getCode()),"t2.code",dto.getCode());
+        wrapper.like(ObjectUtil.isNotEmpty(dto.getCode()),"t2.code",dto.getCode());
 
         //申购时间
         wrapper.ge(ObjectUtil.isNotEmpty(dto.getBeginTime()),"t2.create_time",dto.getBeginTime());

+ 1 - 1
hx-victoriatourist/src/main/java/com/fjhx/victoriatourist/service/abnormal/impl/AbnormalDetailsServiceImpl.java

@@ -68,7 +68,7 @@ public class AbnormalDetailsServiceImpl extends ServiceImpl<AbnormalDetailsMappe
         if(ObjectUtil.isEmpty(abnormalInfo)){
             throw new ServiceException("无法查询到异常记录信息");
         }
-        abnormalInfo.setLinkCode(CodeEnum.ABNORMAL.getCode());
+//        abnormalInfo.setLinkCode(CodeEnum.ABNORMAL.getCode());
         abnormalInfo.setStatus(status == 1 ? 2 : 1);//如果跟进记录为已处理修改异常状态为已处理要不然跟进中
         abnormalInfo.setHandleUser(abnormalDetailsDto.getHandleUser());
         abnormalInfo.setHandleTime(abnormalDetailsDto.getHandleTime());