
16 changed files with 375 additions and 10 deletions
@ -1,4 +1,8 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="com.yxt.supervise.gf.biz.orderindex.OrderIndexMapper"> |
|||
<select id="sumallpower" resultType="java.lang.Double"> |
|||
select sum(all_power) from sh_order_index |
|||
<where> ${ew.sqlSegment} </where> |
|||
</select> |
|||
</mapper> |
@ -0,0 +1,115 @@ |
|||
package com.yxt.supervise.gf.report; |
|||
|
|||
import cn.hutool.core.util.IdUtil; |
|||
import cn.hutool.core.util.NumberUtil; |
|||
import com.baomidou.mybatisplus.annotation.TableField; |
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.yxt.common.core.domain.EntityWithId; |
|||
import lombok.Data; |
|||
|
|||
import java.math.BigDecimal; |
|||
import java.util.Date; |
|||
|
|||
@Data |
|||
@TableName("supervise_report.project_daily") |
|||
public class ProjectDaily extends EntityWithId { |
|||
private String sid = IdUtil.fastSimpleUUID(); // sid
|
|||
@JsonFormat( |
|||
pattern = "yyyy-MM-dd HH:mm:ss", |
|||
timezone = "GMT+8" |
|||
) |
|||
private Date createTime = new Date(); // 记录创建时间
|
|||
private String remarks; // 备注说明',
|
|||
private String orderDate; // 单据日期',
|
|||
|
|||
private String reportTime; // 汇总时间',
|
|||
|
|||
private String projectSid; // 项目Sid',
|
|||
private String projectName; // 项目名称',
|
|||
|
|||
private double totalLoan = 0; // 贷款总额',
|
|||
private double accountsBalance = 0; // 帐户余额',
|
|||
private double accountsReceivable = 0; // 应收账款',
|
|||
private double stockAmount = 0; // 库存货值',
|
|||
private double transitAmount = 0; // 在途货值',
|
|||
private double advancePayment = 0; // 预付款',
|
|||
// private double pledgeRate = 0; // 质押率=(贷款金额-帐户余额)/(库存总价值+应收帐款+在途商品+预付款)',
|
|||
private double pledgeRate = 0; // 质押率=(贷款金额)/(库存总价值+应收帐款+在途商品+预付款+帐户余额)',
|
|||
|
|||
private int messState = 0; // 消息发送状态: 0=未发送;1=已发送',
|
|||
private int messNum = 0; // 消息发送次数',
|
|||
|
|||
|
|||
private String userSid; // 用户(报告人)Sid',
|
|||
private String userMobile; // 用户(报告人)手机号',
|
|||
private String userName; // 用户(报告人)姓名',
|
|||
private int userType = 1; // 用户(报告人)类型:1监管、2客户、3银行',
|
|||
private String userStaffSid; // 关联人员的Sid',
|
|||
@TableField(exist = false) |
|||
private double bankPledgeRate;//银行规定质押率
|
|||
@TableField(exist = false) |
|||
private String state="2";//质押状态
|
|||
@TableField(exist = false) |
|||
private double creditLimit;//授信额度
|
|||
|
|||
private double useLimit;//用信额度
|
|||
|
|||
|
|||
/** |
|||
* 计算出的质押率 |
|||
* |
|||
* @return |
|||
*/ |
|||
public String getPledgeRateNormal() { |
|||
// double a = totalLoan - accountsBalance;
|
|||
// double b = stockAmount + accountsReceivable + transitAmount + advancePayment;
|
|||
double a=this.useLimit; |
|||
double b=stockAmount+accountsReceivable+transitAmount+advancePayment+accountsBalance; |
|||
if (b == 0) |
|||
return "0"; |
|||
double v = a / b; |
|||
return NumberUtil.roundStr(v, 2); |
|||
} |
|||
|
|||
/** |
|||
* 计算出的质押率(百分数值) |
|||
* |
|||
* @return |
|||
*/ |
|||
public String getPledgeRatePercent() { |
|||
// double a = totalLoan - accountsBalance;
|
|||
// double b = stockAmount + accountsReceivable + transitAmount + advancePayment;
|
|||
double a=this.useLimit; |
|||
double b=stockAmount+accountsReceivable+transitAmount+advancePayment+accountsBalance; |
|||
if (b == 0) |
|||
return "0"; |
|||
double v = (a / b) * 100; |
|||
return NumberUtil.roundStr(v, 2); |
|||
} |
|||
|
|||
public String getTotalLoanWan() { |
|||
return NumberUtil.roundStr(this.totalLoan / 10000, 2); |
|||
} |
|||
|
|||
public String getAccountsBalanceWan() { |
|||
return NumberUtil.roundStr(this.accountsBalance / 10000, 2); |
|||
} |
|||
|
|||
public String getAccountsReceivableWan() { |
|||
return NumberUtil.roundStr(this.accountsReceivable / 10000, 2); |
|||
} |
|||
|
|||
public String getStockAmountWan() { |
|||
return NumberUtil.roundStr(this.stockAmount / 10000, 2); |
|||
} |
|||
|
|||
public String getTransitAmountWan() { |
|||
return NumberUtil.roundStr(this.transitAmount / 10000, 2); |
|||
} |
|||
|
|||
public String getAdvancePaymentWan() { |
|||
return NumberUtil.roundStr(this.advancePayment / 10000, 2); |
|||
} |
|||
|
|||
} |
@ -0,0 +1,8 @@ |
|||
package com.yxt.supervise.gf.report; |
|||
|
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
|
|||
@Mapper |
|||
public interface ProjectDailyMapper extends BaseMapper<ProjectDaily> { |
|||
} |
@ -0,0 +1,29 @@ |
|||
package com.yxt.supervise.gf.report; |
|||
|
|||
import com.yxt.common.core.query.Query; |
|||
import lombok.Data; |
|||
|
|||
@Data |
|||
public class ProjectDailyQuery implements Query { |
|||
private String sid; |
|||
private String orderDate; // 单据日期',
|
|||
|
|||
private String reportTime; // 汇总时间',
|
|||
|
|||
private String projectSid; // 项目Sid',
|
|||
private String projectName; // 项目名称',
|
|||
|
|||
private double totalLoan = 0; // 贷款总额',
|
|||
private double accountsBalance = 0; // 帐户余额',
|
|||
private double accountsReceivable = 0; // 应收账款',
|
|||
private double stockAmount = 0; // 库存货值',
|
|||
private double transitAmount = 0; // 在途货值',
|
|||
private double advancePayment = 0; // 预付款',
|
|||
private double pledgeRate = 0; // 质押率=(贷款金额-帐户余额)/(库存总价值+应收帐款+在途商品+预付款)',
|
|||
|
|||
private String dataDateStart; // 数据日期
|
|||
private String dataDateEnd; // 数据日期
|
|||
private String userSid; |
|||
//时间间隔
|
|||
private String intervalTime; |
|||
} |
@ -0,0 +1,29 @@ |
|||
package com.yxt.supervise.gf.report; |
|||
|
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.PostMapping; |
|||
import org.springframework.web.bind.annotation.RequestBody; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
@RestController("com.yxt.supervise.gf.report.ProjectDailyRest") |
|||
@RequestMapping("/gf/projectdaily") |
|||
public class ProjectDailyRest { |
|||
|
|||
@Autowired |
|||
private ProjectDailyService projectDailyService; |
|||
|
|||
|
|||
@ApiOperation("查询项目监管报表信息") |
|||
@PostMapping("/listPage") |
|||
public ResultBean<IPage<ProjectDaily>> selectListPage(@RequestBody PagerQuery<ProjectDailyQuery> pq) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
// PagerVo<ProjectDailyVo> projectDailyVoPagerVo = projectDailyService.selectListPage(pq);
|
|||
IPage<ProjectDaily> iPage = projectDailyService.listPage(pq); |
|||
return rb.success().setData(iPage); |
|||
} |
|||
} |
@ -0,0 +1,36 @@ |
|||
package com.yxt.supervise.gf.report; |
|||
|
|||
import cn.hutool.core.util.StrUtil; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|||
import com.yxt.common.base.utils.PagerUtil; |
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.List; |
|||
|
|||
@Service |
|||
public class ProjectDailyService extends ServiceImpl<ProjectDailyMapper, ProjectDaily> { |
|||
|
|||
public IPage<ProjectDaily> listPage(PagerQuery<ProjectDailyQuery> pq) { |
|||
ProjectDailyQuery params = pq.getParams(); |
|||
|
|||
QueryWrapper<ProjectDaily> qw = new QueryWrapper<>(); |
|||
qw.gt("id", 0); |
|||
if (StrUtil.isNotBlank(params.getDataDateStart())) { |
|||
qw.ge("orderDate", params.getDataDateStart()); |
|||
} |
|||
if (StrUtil.isNotBlank(params.getDataDateEnd())) { |
|||
qw.le("orderDate", params.getDataDateEnd()); |
|||
} |
|||
|
|||
qw.eq("projectSid", "d8bf7556-6db4-46b1-87eb-f3e9f93d330f"); // 山海项目Sid
|
|||
|
|||
qw.orderByDesc("orderDate", "createTime"); |
|||
|
|||
IPage<ProjectDaily> iPage = PagerUtil.queryToPage(pq); |
|||
IPage<ProjectDaily> page = baseMapper.selectPage(iPage, qw); |
|||
return page; |
|||
} |
|||
} |
Loading…
Reference in new issue