Commit 4dcbd491 by liuxin
parents 1b56d318 78317b48
......@@ -39,7 +39,7 @@ export default {
{pattern: /(^\d+$)|(^\.\d{1,3}$)|(^\d+\.\d{1,3}$)/, message: "小数位不能超过3位" }
],
"cptp.uetr":[
{type: "string", required: false, message: "必输项"},
{type: "string", required: true, message: "必输项"},
{max: 40,message:"长度不能超过40"}
],
......
......@@ -196,6 +196,7 @@ export default class Cptadv{
spayeename:"", // 收款人名称 .cnybop.spayeename
spayername:"", // 付款人名称 .cnybop.spayername
saddword:"", // 交易附言 .cnybop.saddword
saddwordtra:"",
sbankname:"", // 银行机构名称 .cnybop.sbankname
incscale:"", // INCSCALE .cnybop.incscale
},
......
import Api from "~/service/Api"
import Pts from "../Common/Pts"
export default class ExamRule{
constructor () {
this.data = {
ruleDesc: "", // ctx的key
ruleInfo:"",
opndatfrom:"",
opndatto:"",
opndat:"",
ruleCreater:"",
edit:{
index:"",
ruleDesc: "", // ctx的key
ruleInfo:"",
opndat:"",
ruleCreater:"",
mod:"",
field:"",
},
rows:[],
}
}
}
\ No newline at end of file
......@@ -7,6 +7,10 @@ const Status = {
mode: 'normal',
highlights: [],
highlightChanges: [],
checkRuleData:[
"1\t此证不允许保兑\t{dedgrp.rec.bdflg}==Y\t2022-02-21\tzl",
"2\t单据必须自货物装运日后15日内提交,但不能晚于信用证有效期\t{doc.crtdate} - {didgrp.rec.shpdat} <=15 && {doc.crtdate} <= {didgrp.rec.expdate}\t2022-02-20\tmbf"
],
remark: '', //复核意见
homeStatus: { // 任务列表页状态
listConfig: undefined,
......@@ -40,6 +44,9 @@ const Status = {
setHighlights(state, value) {
state.highlights = value
},
setCheckRuleData(state, value) {
state.checkRuleData = value
},
setHighlightChanges (state, value) {
state.highlightChanges = value
},
......
......@@ -111,6 +111,7 @@ import Bftset from "./Bftset"
import Detdrv from "./Detdrv"
import Bftacc from "./Bftacc"
import Bftdcr from "./Bftdcr"
import ExamRule from "./ExamRule";
/**
* 带有name的才会被添加进顶部的标签页里
*/
......@@ -233,5 +234,6 @@ const BusRouter = [
{ path: 'detdrv', component: Detdrv, name: 'Detdrv', meta: { title: '卖方信用证收单' } },
{ path: 'bftacc', component: Bftacc, name: 'Bftacc', meta: { title: '卖方信用证单据承兑' } },
{ path: 'bftdcr', component: Bftdcr, name: 'Bftdcr', meta: { title: '卖方信用证单据电提不符点/开证行拒付' } },
{ path: 'examRule', component: ExamRule, name: 'ExamRule', meta: { title: '智能审单规则设置' } },
]
export default BusRouter
......@@ -139,6 +139,7 @@
v-model="model.cpdgrp.orc.pts.adrblk"
show-word-limit
placeholder="请输入Address Block"
disabled
></c-input>
</el-form-item>
</c-col>
......
......@@ -27,7 +27,20 @@
></c-input>
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="备注">
<c-input
type="textarea"
:rows="5"
maxlength="80"
v-model="model.cnybop.saddwordtra"
show-word-limit
placeholder="请输入备注"
></c-input>
</el-form-item>
</c-col>
</c-col>
<!-- ========================右边======================= -->
<c-col :span="11" :offset="1" style="margin-top: 10px">
......
......@@ -41,7 +41,7 @@
</c-col>
<c-col :span="11" :offset="1">
<el-form-item label="Name" prop="cpdgrp.rec.nam">
<el-form-item label="摘要" prop="cpdgrp.rec.nam">
<c-input
v-model="model.cpdgrp.rec.nam"
maxlength="40"
......@@ -132,7 +132,7 @@
</el-form-item>
</c-col>
<c-col :span="24">
<el-form-item label="付款人常驻国家/地区代码" prop="cptp.draweecountcode">
<el-form-item label="付款人常驻国家/地区" prop="cptp.draweecountcode">
<c-fullbox>
<c-input
v-model="model.cptp.draweecountcode"
......
......@@ -43,10 +43,7 @@
<!--PD000000 -->
<m-coninfp :model="model" :codes="codes" />
</el-tab-pane>
<el-tab-pane label="报文及面函" name="docpan">
<!--PD000000 -->
<m-docpan :model="model" :codes="codes" />
</el-tab-pane>
<el-tab-pane label="附件" name="doctre">
<!--PD000529 -->
<m-doctre :model="model" :codes="codes" />
......@@ -64,6 +61,10 @@
<m-incp :model="model" :codes="codes"></m-incp>
</c-content>
</el-tab-pane>
<el-tab-pane label="报文及面函" name="docpan">
<!--PD000000 -->
<m-docpan :model="model" :codes="codes" />
</el-tab-pane>
</c-tabs>
</el-form>
</div>
......
<template>
<!-- OCR 单据智能识别 -->
<el-dialog
custom-class="ocr-invoices-dialog"
:visible.sync="show"
:show-close="false"
width="80%"
top="10vh"
>
<div slot="title" class="ocr-title">
<span style="font-weight: bold;">OCR智能识别</span>
<div>
<c-button type="primary" @click="save">保存</c-button>
<c-button type="primary" @click="close">关闭</c-button>
</div>
</div>
<div class="invoices-recognition">
<div class="invoices-area">
<div class="file-name">{{ fileName }}</div>
<iframe class="pdf-file" :src="fileUrl" type="application/pdf" />
</div>
<div class="recognition-area">
<el-form
v-model="invoicesData"
label-width="100px"
label-position="right"
>
<el-col :span="24">
<el-form-item label="">
<c-select v-model="invoicesData.type">
<el-option v-for="(item, idx) in invoicesTypeOptions" :key="idx" :label="item.label" :value="item.value"></el-option>
</c-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="发票日期">
<c-input type="textarea" v-model="invoicesData.date"></c-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="发票金额">
<c-input type="textarea" v-model="invoicesData.amount"></c-input>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="是否正本">
<c-select v-model="invoicesData.original" style="width: 100%;">
<el-option v-for="(item, idx) in invoicesOriginalOptions" :key="idx" :label="item.label" :value="item.value"></el-option>
</c-select>
</el-form-item>
</el-col>
</el-form>
</div>
</div>
</el-dialog>
</template>
<script>
// import invoicePdf from "~/assets/invoice.pdf";
export default {
name: "OcrInvoicesRecognition",
data() {
return {
show: false,
fileName: "KZ3500220597AA-001.pdf",
// fileUrl: "/invoice.pdf",
fileUrl: "assets/invoice.pdf",
invoicesTypeOptions: [
{ label: "商业发票", value: "SYFP" },
{ label: "个人发票", value: "GRFP" },
],
invoicesOriginalOptions: [
{ label: "是", value: 1 },
{ label: "否", value: 0 },
],
invoicesData: {
type: "SYFP",
date: "5 DEC 2021",
amount: "USD 223000.00",
original: 1
}
}
},
methods: {
save() {
this.close();
},
close() {
this.show = false
}
}
}
</script>
<style>
.ocr-invoices-dialog {
height: 85%;
display: flex;
flex-direction: column;
margin-bottom: unset;
}
.ocr-invoices-dialog .el-dialog__header, .ocr-invoices-dialog .el-dialog__body {
padding: 0;
}
.ocr-invoices-dialog .el-dialog__body {
flex: 1;
}
</style>
<style scoped>
.ocr-title {
display: flex;
justify-content: space-between;
padding: 5px 10px 5px 20px;
border-bottom: 1px solid #dadbdd;
}
.invoices-recognition {
height: 100%;
display: flex;
background-color: #f6fbff;
padding: 20px;
box-sizing: border-box;
}
.invoices-area {
width: 50%;
border-right: 1px solid #babec1;
box-sizing: border-box;
display: flex;
flex-direction: column;
padding: 0 10px;
}
.recognition-area {
width: 50%;
border-left: 1px solid #babec1;
box-sizing: border-box;
}
.invoices-area .file-name {
padding-bottom: 10px;
text-align: center;
}
.invoices-area .pdf-file {
flex: 1;
}
</style>
\ No newline at end of file
<template>
<div>
<c-button @click="click">KO</c-button>
<OcrInvoicesRecognition ref="ocrInvoices"></OcrInvoicesRecognition>
</div>
</template>
<script>
import OcrInvoicesRecognition from "./OcrInvoicesRecognition.vue";
export default {
components: { OcrInvoicesRecognition },
methods: {
click() {
this.$refs.ocrInvoices.show = true
}
}
}
</script>
<style>
</style>
\ No newline at end of file
......@@ -80,6 +80,9 @@
<el-tab-pane label="授信额度" name="limitbody">
<m-limitbody :model="model" :codes="codes" />
</el-tab-pane>
<el-tab-pane label="Test" name="Test">
<Test/>
</el-tab-pane>
</c-tabs>
</el-form>
<c-grid-ety-prompt-dialog
......@@ -106,6 +109,7 @@ import Ovwp from "./Ovwp";
import Docpre from "./Docpre";
import Shpdet from "./Shpdet";
// import Limitbody from "./Limitbody";
import Test from "./Test.vue";
import Glepan from "~/views/Public/Glepan";
import Setpan from "~/views/Public/Setpan";
......@@ -129,6 +133,7 @@ export default {
"m-limitbody": Limitbody,
"m-coninfp": Coninfp,
"m-ccvpan": Ccvpan,
Test
},
provide() {
return {
......
<template>
<div class="eContainer">
<el-form
:model="model"
ref="modelForm"
label-width="150px"
label-position="right"
size="small"
>
<m-infsea :model="model" />
</el-form>
</div>
</template>
<script>
import Utils from "~/utils/index";
import Api from "~/service/Api";
import CommonProcess from "~/mixin/CommonProcess";
import ExamRule from "~/model/ExamRule"
import Infsea from "./Infsea"
export default {
name: "exaRule",
components: {
"m-infsea": Infsea,
},
provide() {
return {
root: this,
};
},
mixins: [CommonProcess], // 里面包含了Default、Check等的公共处理
data() {
return {
model: new ExamRule().data,
};
},
methods: {},
created: async function () {
// console.log("进入ditsel交易");
// let rtnmsg = await Api.post("ditsel/init", { params: {} });
// if (rtnmsg.respCode == SUCCESS) {
// //TODO 处理数据逻辑
// Utils.copyValueFromVO(this.model, rtnmsg.data);
// } else {
// this.$notify.error({ title: "错误", message: "服务请求失败!" });
// }
},
};
</script>
<style>
.infcpdTab .el-tabs__content {
padding: 10px 0 10px 0;
}
.infcpdTab .infrow {
padding: 0 10px 0 10px;
}
.m-table-search-form {
position: flex;
flex-direction: row;
}
.m-table-search-form .el-form-item__content {
width: calc(100% - 110px);
}
</style>
......@@ -120,6 +120,8 @@ export default {
{ inifrm: "detopn", ininam: "信用证开立", pntmiu: "11" },
{ inifrm: "detame", ininam: "信用证修改", pntmiu: "11" },
{ inifrm: "detsel", ininam: "信用证查询", pntmiu: "11" },
{ inifrm: "12",ininam: "智能审单", pntmiu: "" },
{ inifrm: "examRule", ininam: "智能审单规则配置", pntmiu: "12" },
],
menus: [],
menusHeight: 0
......
......@@ -126,7 +126,6 @@
import Api from "~/service/Api"
import CommonProcess from "~/mixin/CommonProcess";
import CodeTable from "~/config/CodeTable"
import Event from "~/model/Ditopn/Event"
export default {
inject: ['root'],
......@@ -137,7 +136,18 @@ export default {
}
},
methods:{...Event},
methods:{
async onLiaallButmisamt() {
let rtnmsg = await this.executeRule("liaall_butmisamt")
if (rtnmsg.respCode == SUCCESS) {
//TODO 处理数据逻辑
}
else {
this.$notify.error({ title: '错误', message: '服务请求失败!' });
}
},
},
created:function(){
}
......
......@@ -9,7 +9,6 @@
import Api from "~/service/Api"
import CommonProcess from "~/mixin/CommonProcess";
import CodeTable from "~/config/CodeTable"
import Event from "~/model/Ditopn/Event"
export default {
inject: ['root'],
......@@ -43,7 +42,9 @@ export default {
immediate: true
}
},
methods:{...Event},
methods:{
},
created:function(){
}
......
......@@ -285,7 +285,7 @@
import Api from "~/service/Api";
import CommonProcess from "~/mixin/CommonProcess";
import CodeTable from "~/config/CodeTable";
import Event from "~/model/Ditopn/Event";
// import Event from "~/model/Ditopn/Event";
export default {
inject: ['root'],
......@@ -296,7 +296,29 @@ export default {
tableData: {},
};
},
methods: { ...Event ,
methods: {
onSeainf() {
},
async onPreperButtxmsel() {
let rtnmsg = await this.executeRule("preper_buttxmsel")
if (rtnmsg.respCode == SUCCESS) {
//TODO 处理数据逻辑
}
else {
this.$notify.error({ title: '错误', message: '服务请求失败!' });
}
},
async onLimptsGet1() {
let rtnmsg = await this.executeRule("limpts_get1")
if (rtnmsg.respCode == SUCCESS) {
//TODO 处理数据逻辑
}
else {
this.$notify.error({ title: '错误', message: '服务请求失败!' });
}
},
nonrevflg1Change(){
if (this.model.liaall.limmod.limpts.nonrevflg1 == '1'){
this.model.liaall.limmod.limpts.pfcod1 = "";
......
......@@ -1026,7 +1026,7 @@
</c-row>
</template>
<script>
import Event from "~/model/Ditopn/Event";
// import Event from "~/model/Ditopn/Event";
import CommonProcess from "~/mixin/CommonProcess";
import SetpanDialog from "./SetpanDialog.vue";
import Api from "~/service/Api"
......@@ -1075,7 +1075,6 @@ export default {
};
},
methods: {
...Event,
//第一个表格
addRow() {
let newRow = { ...dialog };
......@@ -1161,7 +1160,17 @@ export default {
},
onSetgllDetget(){
}
},
async onSetmodDet() {
let rtnmsg = await this.executeRule("setmod.det")
if (rtnmsg.respCode == SUCCESS) {
//TODO 处理数据逻辑
}
else {
this.$notify.error({ title: '错误', message: '服务请求失败!' });
}
},
},
created: function () {},
};
......
......@@ -37,6 +37,10 @@ module.exports = (options = {}) => ({
limit: 10000
}
}]
},
{
test: /\.pdf$/,
loader: 'file-loader?mimetype=application/pdf&name=[name].pdf'
}
]
},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment