Browse Source

修改问题

ptos
lucky 4 years ago
parent
commit
a6fa58d43e
  1. 4
      src/main/java/com/ccsens/ptccsens/bean/vo/FinanceVo.java
  2. 8
      src/main/java/com/ccsens/ptccsens/bean/vo/OcrVo.java
  3. 12
      src/main/java/com/ccsens/ptccsens/service/OcrService.java
  4. 1
      src/main/java/com/ccsens/ptccsens/util/BasicsCodeError.java
  5. 2
      src/main/resources/application-dev.yml
  6. 2
      src/main/resources/application-prod.yml
  7. 2
      src/main/resources/application-test.yml
  8. 14
      src/main/resources/mapper_dao/FinanceDao.xml

4
src/main/java/com/ccsens/ptccsens/bean/vo/FinanceVo.java

@ -167,12 +167,16 @@ public class FinanceVo {
public static class TaskExpense {
@ApiModelProperty("任务ID")
private Long taskDetailId;
@ApiModelProperty("财务信息id")
private Long financeId;
@ApiModelProperty("任务名")
private String taskName;
@ApiModelProperty("金额,单位:分")
private Long money;
@ApiModelProperty("占比,保留两位小数")
private BigDecimal percentage;
@ApiModelProperty("追加预算,单位:分")
private Long budget;
}
@Data

8
src/main/java/com/ccsens/ptccsens/bean/vo/OcrVo.java

@ -14,13 +14,13 @@ public class OcrVo {
@ApiModelProperty("发票代码")
private String invoiceCode;
@ApiModelProperty("发票号码")
private String invoiceNum;
private String invoiceNumber;
@ApiModelProperty("金额")
private Long totalAmount;
private Long money;
@ApiModelProperty("税额")
private Long totalTax;
private Long taxMoney;
@ApiModelProperty("开票时间")
private Long invoiceDate;
private Long invoiceTime;
@ApiModelProperty("发票url")
private String url;
}

12
src/main/java/com/ccsens/ptccsens/service/OcrService.java

@ -4,12 +4,15 @@ import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.druid.sql.visitor.functions.If;
import com.ccsens.ptccsens.bean.po.Constant;
import com.ccsens.ptccsens.bean.vo.OcrVo;
import com.ccsens.ptccsens.util.BasicsCodeError;
import com.ccsens.ptccsens.util.BasicsConstant;
import com.ccsens.util.RestTemplateUtil;
import com.ccsens.util.baidu.BaiDuDto;
import com.ccsens.util.baidu.BaiDuUtil;
import com.ccsens.util.baidu.BaiDuVo;
import com.ccsens.util.exception.BaseException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
@ -31,6 +34,9 @@ public class OcrService implements IOcrService{
basic.setImage(img);
BaiDuVo.BillBasic words = BaiDuUtil.billBasic(BasicsConstant.BaiDu.INVOICE_APP_KEY, BasicsConstant.BaiDu.INVOICE_SECRET_KEY, basic);
log.info("识别结果:{}",words);
if ("1486278397695872724".equals(words.getLogId())) {
throw new BaseException(BasicsCodeError.IMG_ERROR);
}
// String token = BaiDuUtil.getToken(BasicsConstant.BaiDu.INVOICE_APP_KEY, BasicsConstant.BaiDu.INVOICE_SECRET_KEY);
// String invoiceUrl = "https://aip.baidubce.com/rest/2.0/ocr/v1/vat_invoice?access_token={}";
// String url = StrUtil.format(invoiceUrl, token);
@ -41,9 +47,9 @@ public class OcrService implements IOcrService{
if (CollectionUtil.isNotEmpty(words.getWordsResult())) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd");
BeanUtil.copyProperties(words.getWordsResult().get(0),billInfo);
billInfo.setTotalAmount(new BigDecimal(words.getWordsResult().get(0).getTotalAmount()).multiply(BigDecimal.valueOf(100)).longValue());
billInfo.setTotalTax(new BigDecimal(words.getWordsResult().get(0).getTotalTax()).multiply(BigDecimal.valueOf(100)).longValue());
billInfo.setInvoiceDate(sdf.parse(words.getWordsResult().get(0).getInvoiceDate()).getTime());
billInfo.setMoney(new BigDecimal(words.getWordsResult().get(0).getTotalAmount()).multiply(BigDecimal.valueOf(100)).longValue());
billInfo.setTaxMoney(new BigDecimal(words.getWordsResult().get(0).getTotalTax()).multiply(BigDecimal.valueOf(100)).longValue());
billInfo.setInvoiceTime(sdf.parse(words.getWordsResult().get(0).getInvoiceDate()).getTime());
billInfo.setUrl(realPath);
}
// personMsg.toMsg(words.getWordsResult());

1
src/main/java/com/ccsens/ptccsens/util/BasicsCodeError.java

@ -40,6 +40,7 @@ public class BasicsCodeError extends CodeError {
public static final Code CHECK_EXISTED = new Code(528,"您已经提交过审核结果了,无需重复提交。", true);
public static final Code TASK_DONT_EXIT = new Code(530,"任务不存在请检查后重试", true);
public static final Code FINANCE_NOT_FOUND = new Code(529,"没有找到任务对应的财务预算信息,请修改后重新提交申请。", true);
public static final Code IMG_ERROR = new Code(530,"请上传正确的发票图片", true);

2
src/main/resources/application-dev.yml

@ -47,4 +47,4 @@ mybatisCache:
file:
path: /home/ptccsens/server/uploads/
domain: https://test.tall.wiki/gateway/ptccsens
imgDomain: https://test.tall.wiki/gateway/ptccsens/uploads/
imgDomain: https://test.tall.wiki/gateway/ptccsens/v1.0/uploads/

2
src/main/resources/application-prod.yml

@ -37,4 +37,4 @@ apiUrl: https://www.tall.wiki/
file:
path: /home/ptccsens/server/uploads/
domain: https://www.tall.wiki/gateway/ptccsens
imgDomain: https://www.tall.wiki/gateway/ptccsens/uploads/
imgDomain: https://www.tall.wiki/gateway/ptccsens/v1.0/uploads/

2
src/main/resources/application-test.yml

@ -45,4 +45,4 @@ eureka:
file:
path: /home/ptccsens/server/uploads/
domain: https://test.tall.wiki/gateway/ptccsens
imgDomain: https://test.tall.wiki/gateway/ptccsens/uploads/
imgDomain: https://test.tall.wiki/gateway/ptccsens/v1.0/uploads/

14
src/main/resources/mapper_dao/FinanceDao.xml

@ -169,15 +169,19 @@
</select>
<select id="queryTaskExpense" resultType="com.ccsens.ptccsens.bean.vo.FinanceVo$TaskExpense">
SELECT
a.finance_id,
a.task_id AS taskDetailId,
if (d.id is null , "其他", d.NAME) AS taskName,
sum( a.money ) AS money
IF (d.id IS NULL, "其他", d. NAME) AS taskName,
sum(a.money) AS money,
SUM(ab.add_budget) AS budget
FROM
t_plu_finance_apply a
left join t_pro_task_detail d on a.task_id = d.id and d.rec_status = 0
LEFT JOIN t_pro_task_detail d ON a.task_id = d.id
LEFT JOIN t_plu_finance_append_budget AS ab ON ab.finance_id = a.finance_id AND ab.rec_status = 0
AND d.rec_status = 0
WHERE
a.project_id = 2
AND a.apply_type NOT IN ( 0, 2 )
a.project_id = #{projectId}
AND a.apply_type NOT IN (0, 2)
AND a.rec_status = 0
GROUP BY
a.task_id

Loading…
Cancel
Save