Compare commits

..

No commits in common. "huyt" and "zhangpc" have entirely different histories.

36 changed files with 622 additions and 4079 deletions

BIN
dist.zip

Binary file not shown.

View File

@ -15,14 +15,6 @@ export function coreGenerateAPI(data) {
data,
});
}
//收回
export function backVoucherAPI(data) {
return request({
url: "/kangarooDataCenterV3/ae/core/backVoucher",
method: "post",
data,
});
}
// 凭证明细查询
export function queryDetailsByBillCodeAPI(data) {
return request({
@ -31,25 +23,3 @@ export function queryDetailsByBillCodeAPI(data) {
data,
});
}
export function queryBillFiledsAPI(data) {
return request({
url: "/kangarooDataCenterV3/ae/push/log/queryBillFileds",
method: "post",
data,
});
}
export function queryBillPagedAPI(data) {
return request({
url: "/kangarooDataCenterV3/ae/push/log/queryBillPaged",
method: "post",
data,
});
}
export function queryDetailsByBillCodeAndMdmIdAPI(data) {
return request({
url: "/kangarooDataCenterV3/ae/push/log/queryDetailsByBillCodeAndMdmId",
method: "post",
data,
});
}

View File

@ -1,9 +1,8 @@
import request from "@/utils/request";
import baseTree from '@/components/base/BaseMenuTree/index.vue'
import basePage from '@/components/base/basePage/index.vue'
export default {
components: { basePage, baseTree }
components: { baseTree }
}
//业务模块

Binary file not shown.

Before

Width:  |  Height:  |  Size: 172 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 394 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

View File

@ -7,7 +7,7 @@
<el-form validate-on-rule-change :model="ruleForm" :rules="rules" label-position="top" ref="ruleForm"
label-width="100px"
>
<el-row :gutter="24" v-for="(item, index) in formRow" :key="index" :style="{marginBottom: isSence ?'0': '17px'}">
<el-row :gutter="24" v-for="(item, index) in formRow" :key="index" style="margin-bottom: 17px;">
<el-col v-for="(row, indexRow) in item.elCol" :span="row.span ? row.span : spanNumber" :key="indexRow">
<el-form-item :prop="row.prop" :style="`display: flex;margin-bottom: ${marginBottom}px;`"
v-if="row.show != false" :class="(rules[row.prop] ? 'ruleFormClass ' : '')"
@ -16,7 +16,7 @@
<div class="single label" v-if="row.label" slot="label"
:style="`width: ${spanWidth};` + `justify-content: ${justifyContent};`" flex
>
<span class="label" :style="{color: isSence ? '#999':'#333',fontSize: isSence ? '14px':'13px'}">{{ row.label }}</span>
<span class="label">{{ row.label }}</span>
</div>
<el-input v-model="ruleForm[row.prop]" v-if="row.tag === 'password'" type="password" show-password clearable
auto-complete="off" placeholder="密码" @keyup.enter.native="handleLogin"
@ -204,10 +204,6 @@ export default {
type: Boolean,
default: true
},
isSence: {
type: Boolean,
default: false
},
formdata: {
type: Object
},

View File

@ -35,14 +35,12 @@ export default {
sizeChange(val) {
let pageModel = this.pageModel
pageModel.pageSize = val
pageModel.limit = val
this.$emit('update:pageModel', pageModel)
this.$emit('onPageChange')
},
currentChange(val) {
let pageModel = this.pageModel
pageModel.pageIndex = val
pageModel.page = val
this.$emit('update:pageModel', pageModel)
this.$emit('onPageChange')
}

View File

@ -47,11 +47,7 @@ export default {
return data[4];
}else if (url.includes("businessMatter")) {
return data[5];
}else if (url.includes("accountantMatter")) {
return data[6];
}
else {
} else {
return empty;
}
} else {

View File

@ -115,8 +115,7 @@ export default {
this.currentPath.includes("IntegrationTaskCenter") ||
this.currentPath.includes("businessCenter") ||
this.currentPath.includes("ApplicationCenter")||
this.currentPath.includes("businessMatter") ||
this.currentPath.includes("accountantMatter")
this.currentPath.includes("businessMatter")
) {
route.meta.affix = true;
@ -142,12 +141,12 @@ export default {
icon: "icon-shouye",
show: true,
},
// {
// title: "",
// path: "/message",
// icon: "el-icon-chat-dot-square",
// show: true,
// },
{
title: "消息",
path: "/message",
icon: "el-icon-chat-dot-square",
show: true,
},
{
title: "工作台",
path: "/Workbench",
@ -187,12 +186,6 @@ export default {
icon: "el-icon-postcard",
show: false,
},
{
title: "财资事项平台",
path: "/accountantMatter",
icon: "el-icon-postcard",
show: false,
},
],
};
},
@ -205,8 +198,7 @@ export default {
url.includes("IntegrationTaskCenter") ||
url.includes("businessCenter") ||
url.includes("ApplicationCenter") ||
url.includes("businessMatter") ||
url.includes("accountantMatter")
url.includes("businessMatter")
) {
this.$store.dispatch("settings/changeSetting", {
key: "showTagsView",
@ -285,8 +277,7 @@ export default {
item.path.includes("IntegrationTaskCenter") ||
item.path.includes("businessCenter") ||
item.path.includes("ApplicationCenter") ||
item.path.includes("businessMatter") ||
item.path.includes("accountantMatter")
item.path.includes("businessMatter")
) {
this.$store.dispatch("settings/changeSetting", {
key: "showTagsView",

View File

@ -135,11 +135,7 @@ export default {
currentData = data[4]
} else if (url.includes('businessMatter')) {
currentData = data[5]
} else if (url.includes('accountantMatter')) {
currentData = data[6]
}
else {
} else {
currentData = []
}
} else {
@ -270,8 +266,6 @@ export default {
currentData = data[4]
} else if (url.includes('businessMatter')) {
currentData = data[5]
}else if (url.includes('accountantMatter')) {
currentData = data[6]
}
}
if (this.isActive(view)) {
@ -296,8 +290,6 @@ export default {
INDEX = 4
} else if (url.includes('businessMatter')) {
INDEX = 5
} else if (url.includes('accountantMatter')) {
INDEX = 6
}
}
@ -330,8 +322,6 @@ export default {
INDEX = 4
} else if (url.includes('businessMatter')) {
INDEX = 5
}else if (url.includes('accountantMatter')) {
INDEX = 6
}
}
if (INDEX != null) {
@ -371,8 +361,6 @@ export default {
INDEX = 4
} else if (url.includes('businessMatter')) {
INDEX = 5
} else if (url.includes('accountantMatter')) {
INDEX = 6
}
}
if (INDEX != null) {

View File

@ -172,15 +172,6 @@ export const constantRoutes = [{
title: '会计事项平台',
icon: 'dashboard'
}
},
{
path: 'accountantMatter',
component: () => import('@/views/newVersionView/accountantMatter/index'),
name: 'accountantMatter',
meta: {
title: '财资事项平台',
icon: 'dashboard'
}
}
]
},

View File

@ -7,7 +7,6 @@ const state = {
[],
[],
[],
[]
],
cachedViews: [
[],
@ -16,7 +15,6 @@ const state = {
[],
[],
[],
[]
],
iframeViews: [
[],
@ -24,7 +22,6 @@ const state = {
[],
[],
[],
[],
[]
],
@ -49,8 +46,6 @@ const mutations = {
Index = 4
}else if (url.includes("businessMatter")) {
Index = 5;
}else if (url.includes("accountantMatter")) {
Index = 6;
}
}
if (Index != null) {
@ -78,8 +73,6 @@ const mutations = {
Index = 4
}else if (url.includes("businessMatter")) {
Index = 5;
}else if (url.includes("accountantMatter")) {
Index = 6;
}
}
if (Index != null) {
@ -116,8 +109,6 @@ const mutations = {
Index = 4
}else if (url.includes("businessMatter")) {
Index = 5;
}else if (url.includes("accountantMatter")) {
Index = 6;
}
}
if (Index != null) {
@ -143,8 +134,6 @@ const mutations = {
Index = 4
}else if (url.includes("businessMatter")) {
Index = 5;
}else if (url.includes("accountantMatter")) {
Index = 6;
}
}
if (Index != null) {
@ -173,8 +162,6 @@ const mutations = {
Index = 4
}else if (url.includes("businessMatter")) {
Index = 5;
}else if (url.includes("accountantMatter")) {
Index = 6;
}
}
if (Index != null) {
@ -198,8 +185,6 @@ const mutations = {
Index = 4
}else if (url.includes("businessMatter")) {
Index = 5;
}else if (url.includes("accountantMatter")) {
Index = 6;
}
}
if (Index != null) {
@ -224,8 +209,6 @@ const mutations = {
Index = 4
}else if (url.includes("businessMatter")) {
Index = 5;
}else if (url.includes("accountantMatter")) {
Index = 6;
}
}
if (Index != null) {
@ -250,9 +233,7 @@ const mutations = {
} else if (url.includes("ApplicationCenter")) {
INDEX = 4
}else if (url.includes("businessMatter")) {
INDEX = 5;
}else if (url.includes("accountantMatter")) {
INDEX = 6;
Index = 5;
}
}
if (INDEX != null) {
@ -282,8 +263,6 @@ const mutations = {
INDEX = 4
}else if (url.includes("businessMatter")) {
INDEX = 5;
}else if (url.includes("accountantMatter")) {
INDEX = 6;
}
}
if (INDEX != null) {
@ -308,8 +287,6 @@ const mutations = {
INDEX = 4
}else if (url.includes("businessMatter")) {
INDEX = 5;
}else if (url.includes("accountantMatter")) {
INDEX = 6;
}
}
if (INDEX != null) {
@ -332,8 +309,6 @@ const mutations = {
INDEX = 4
}else if (url.includes("businessMatter")) {
INDEX = 5;
}else if (url.includes("accountantMatter")) {
INDEX = 6;
}
}
if (INDEX != null) {
@ -356,8 +331,6 @@ const mutations = {
INDEX = 4
}else if (url.includes("businessMatter")) {
INDEX = 5;
}else if (url.includes("accountantMatter")) {
INDEX = 6;
}
}
if (INDEX != null) {
@ -385,8 +358,6 @@ const mutations = {
INDEX = 4
}else if (url.includes("businessMatter")) {
INDEX = 5;
}else if (url.includes("accountantMatter")) {
INDEX = 6;
}
}
if (INDEX != null) {
@ -427,8 +398,6 @@ const mutations = {
INDEX = 4
}else if (url.includes("businessMatter")) {
INDEX = 5;
}else if (url.includes("accountantMatter")) {
INDEX = 6;
}
}
if (INDEX != null) {

View File

@ -1,4 +1,4 @@
import { login, logout, getInfo } from '@/api/login'
import { login, logout, getInfo } from "@/api/login";
import {
getToken,
setToken,
@ -6,77 +6,77 @@ import {
removeInfo,
setInfo,
setCompanyId,
removeCompanyId
} from '@/utils/auth'
removeCompanyId,
} from "@/utils/auth";
const user = {
state: {
token: getToken(),
name: '',
avatar: '',
name: "",
avatar: "",
roles: [],
permissions: [],
info: {},
companyID: '',
companyID: "",
companyListAll: [],
messageCount: 0,
currentMenuNode: ''//目的是 结合cokkie 实时监听当前导航栏的变化
messageCount:0,
currentMenuNode:"",//目的是 结合cokkie 实时监听当前导航栏的变化
},
mutations: {
SET_TOKEN: (state, token) => {
state.token = token
state.token = token;
},
SET_NAME: (state, name) => {
state.name = name
state.name = name;
},
SET_AVATAR: (state, avatar) => {
state.avatar = avatar
state.avatar = avatar;
},
SET_ROLES: (state, roles) => {
state.roles = roles
state.roles = roles;
},
SET_PERMISSIONS: (state, permissions) => {
state.permissions = permissions
state.permissions = permissions;
},
SET_INFO: (state, info) => {
state.info = info
state.info = info;
},
SET_COMPANYID: (state, companyID) => {
state.companyID = companyID
state.companyID = companyID;
},
SET_COMPANYID_LIST_All: (state, companyListAll) => {
state.companyListAll = companyListAll
state.companyListAll = companyListAll;
},
SET_MESSAGE_COUNT: (state, messageCount) => {
state.messageCount = messageCount
},
SET_CURRENT_MENU_NODE: (state, currentMenuNode) => {
state.currentMenuNode = currentMenuNode
}
},
},
actions: {
// 登录
Login({ commit }, userInfo) {
const login_name = userInfo.login_name.trim()
const password = userInfo.password
const login_name = userInfo.login_name.trim();
const password = userInfo.password;
// const companyID = userInfo.companyID;
return new Promise((resolve, reject) => {
login(login_name, password)
.then((res) => {
setToken(res.attribute['zt-token'])
setInfo(JSON.stringify(res.attribute.userInfo))
commit('SET_TOKEN', res.attribute.token)
commit('SET_INFO', res.attribute.userInfo)
resolve()
setToken(res.attribute['zt-token']);
setInfo(JSON.stringify(res.attribute.userInfo));
commit("SET_TOKEN", res.attribute.token);
commit("SET_INFO", res.attribute.userInfo);
resolve();
})
.catch((error) => {
commit('LogOut')
reject(error)
commit("LogOut")
reject(error);
})
})
});
});
},
// 获取用户信息
@ -84,53 +84,53 @@ const user = {
return new Promise((resolve, reject) => {
getInfo()
.then((res) => {
const user = res.user
const user = res.user;
const avatar =
user.avatar == '' || user.avatar == null
? require('@/assets/images/profile.jpg')
: process.env.VUE_APP_BASE_API + user.avatar
user.avatar == "" || user.avatar == null
? require("@/assets/images/profile.jpg")
: process.env.VUE_APP_BASE_API + user.avatar;
if (res.roles && res.roles.length > 0) {
// 验证返回的roles是否是一个非空数组
commit('SET_ROLES', res.roles)
commit('SET_PERMISSIONS', res.permissions)
commit("SET_ROLES", res.roles);
commit("SET_PERMISSIONS", res.permissions);
} else {
commit('SET_ROLES', ['ROLE_DEFAULT'])
commit("SET_ROLES", ["ROLE_DEFAULT"]);
}
commit('SET_NAME', user.userName)
commit('SET_AVATAR', avatar)
resolve(res)
commit("SET_NAME", user.userName);
commit("SET_AVATAR", avatar);
resolve(res);
})
.catch((error) => {
reject(error)
})
})
reject(error);
});
});
},
// 退出系统
LogOut({ commit, state }) {
console.log('触发推出')
console.log("触发推出")
return new Promise((resolve, reject) => {
commit('SET_TOKEN', '')
commit('SET_ROLES', [])
commit('SET_PERMISSIONS', [])
commit('SET_COMPANYID_LIST_All', [])
removeToken()
removeInfo()
removeCompanyId()
resolve()
})
commit("SET_TOKEN", "");
commit("SET_ROLES", []);
commit("SET_PERMISSIONS", []);
commit("SET_COMPANYID_LIST_All", []);
removeToken();
removeInfo();
removeCompanyId();
resolve();
});
},
// 前端 登出
FedLogOut({ commit }) {
return new Promise((resolve) => {
commit('SET_TOKEN', '')
removeToken()
removeInfo()
resolve()
})
}
}
}
commit("SET_TOKEN", "");
removeToken();
removeInfo();
resolve();
});
},
},
};
export default user
export default user;

View File

@ -19,9 +19,9 @@
</div>
<div class="showList">
<div class="showItem" v-for="(item,index) in voucherList" :key="index"
:class="{active:item.id === voucherClickId}" @click="voucherCliclHandle(item.id,item.name,item.def1)"
:class="{active:item.id === voucherClickId}" @click="voucherCliclHandle(item.id,item.name)"
>
<div class="name">{{ item.name }}{{ item.def1 === 'Y' ? '①' : '' }}</div>
<div class="name">{{ item.name }}</div>
<div class="icon">
<i class="el-icon-edit" @click.stop="voucherDialogEditHandle(item)" style="margin-right: 10px"></i>
<i class="el-icon-delete" style="color: red" @click.stop="voucherDialogDelHandle(item)"></i>
@ -73,16 +73,16 @@
</div>
<div style="margin-left: 10px;display: flex;align-items: center">
凭证类别
<p v-if="!editFlag">{{ typeMerge == 'Y' ? '合并' : typeMerge == 'N' ? '拆分' : '' }}</p>
<el-switch
v-else
v-model="typeMerge"
active-value="Y"
active-text="合并"
inactive-text="拆分"
inactive-value="N"
>
</el-switch>
<p v-if="!editFlag">{{typeMerge == 'Y'?'合并':typeMerge == 'N'?'拆分':''}}</p>
<el-switch
v-else
v-model="typeMerge"
active-value="Y"
active-text="合并"
inactive-text="拆分"
inactive-value="N"
>
</el-switch>
</div>
</div>
<div style="display: flex;align-items: center;justify-content: flex-end;">
@ -119,13 +119,6 @@
type="primary"
>保存
</el-button>
<el-button
size="small"
icon="el-icon-check"
@click="copyOperate"
type="primary"
>复制
</el-button>
<el-button
size="small"
icon="el-icon-delete"
@ -425,28 +418,6 @@
{{ row.row.pkCashflow }}
</div>
</template>
<template #def1="{row}">
<div v-if="editFlag">
<el-select
class="w-100"
v-model="row.row.def1"
filterable
:clearable="true"
placeholder="请选择"
>
<el-option
v-for="(el, index) in [{label:'是',value:'Y'},{label:'否',value:'N'}]"
:key="el.value"
:label="el.label"
:value="el.value"
>
</el-option>
</el-select>
</div>
<div v-else>
{{ row.row.def1 === 'Y' ? '是' : '否' }}
</div>
</template>
<!-- 备注-->
<template #remark="{row}">
<div v-if="editFlag">
@ -731,29 +702,6 @@
></baseChoice>
</div>
</base-dialog>
<!-- 20250704新增凭证-->
<base-dialog
:dialogVisible.sync="voucherDialogShow"
:closeModal="false"
:footerShow="true"
:title="passwordDialogTitle+'凭证类型'"
width="400px"
top="20vh"
@handleConfirmClick="voucherDialogClickHandle"
>
<div class="rightDialogClass_main"
style="background-color: #fff;display: flex;align-content: flex-start;justify-content: flex-start;flex-direction: column"
>
<div class="addDialog">
<div class="nameTitle">凭证类型名称</div>
<el-input v-model="billTypeADDName"></el-input>
</div>
<div class="addDialog" style="align-items: center;display: flex;margin-top: 10px;justify-content: flex-start">
<div class="nameTitle">单笔生成</div>
<el-switch v-model="def1" active-value="Y" inactive-value="N"></el-switch>
</div>
</div>
</base-dialog>
</div>
</template>
@ -807,7 +755,6 @@ export default {
//
voucherClickId: '',
voucherClickName: '',
voucherClickdef1: '',
voucherDialogShow: false,
voucherList: [],
subClassOptions: [],//
@ -836,7 +783,6 @@ export default {
width: '100'
}
],
def1: 'N',
pkglbookOptions: [],
treePropsproperty: {
children: 'sublistMdmModuleDbFileds',
@ -854,7 +800,7 @@ export default {
clickRowKey: '',
activeTabs: '元数据属性',
tabItem: ['元数据属性', '固定值'],
arithmeticArr: ['+', '-', '*', '/', '->', '==', '(', ')', '<', '>', '<=', '>=', 'substr(,,)','if(*?:)'],
arithmeticArr: ['+', '-', '*', '/', '->', '==', '(', ')', '<', '>', '<=', '>=', 'substr(,,)'],
//text
textarea: '',
textareaEn: '',
@ -1055,28 +1001,28 @@ export default {
],
exchangeRate: [
{ required: true, message: '请输入汇率', trigger: 'change' }
],
jNumField: [
{ required: true, message: '请选择借方数量字段', trigger: 'change' }
],
jYbSumField: [
{ required: true, message: '请选择借方原币金额字段', trigger: 'change' }
],
jBbSumField: [
{ required: true, message: '请选择借方本币金额字段', trigger: 'change' }
],
dNumField: [
{ required: true, message: '请选择贷方数量字段', trigger: 'change' }
],
dYbSumField: [
{ required: true, message: '请选择贷方原币金额字段', trigger: 'change' }
],
dBbSumField: [
{ required: true, message: '请选择贷方本币金额字段', trigger: 'change' }
],
pkCashflow: [
{ required: true, message: '请选择现金流量项目主键', trigger: 'change' }
]
// jNumField: [
// { required: true, message: '', trigger: 'change' }
// ],
// jYbSumField: [
// { required: true, message: '', trigger: 'change' }
// ],
// jBbSumField: [
// { required: true, message: '', trigger: 'change' }
// ],
// dNumField: [
// { required: true, message: '', trigger: 'change' }
// ],
// dYbSumField: [
// { required: true, message: '', trigger: 'change' }
// ],
// dBbSumField: [
// { required: true, message: '', trigger: 'change' }
// ],
// pkCashflow: [
// { required: true, message: '', trigger: 'change' }
// ]
},
fixedValueForm: [
@ -1133,7 +1079,7 @@ export default {
searchObj: {},
pageModel: {
page: 1, //
limit: 10, //
limit: 20, //
prop7: '',
propValue7: '',
prop8: '',
@ -1198,11 +1144,6 @@ export default {
prop: 'pkCashflow',
width: 150
},
{
label: '是否计算科目余额',
prop: 'def1',
width: 150
},
{
label: '备注',
prop: 'remark',
@ -1241,7 +1182,7 @@ export default {
children: 'sublistMdmModuleDbFileds',
label: 'name'
},
typeMerge: ''
typeMerge:''
}
},
methods: {
@ -1274,8 +1215,8 @@ export default {
this.getAddTableData()
}
},
getTableAddList(val) {
console.log(val, 'val', this.fixedValueClickRow)
getTableAddList(val){
console.log(val,'val',this.fixedValueClickRow)
this.pageModel.propValue7 = val
this.pageModel.propValue8 = val
this.pageModel.prop7 = this.fixedValueClickRow.codefieldname
@ -1287,10 +1228,9 @@ export default {
this.$vmNews('请选择一条数据')
return
}
let obj = this.$refs.baseChoice2.optionData
let obj =this.$refs.baseChoice2.optionData
this.$set(this.$refs.fixedValueFormRefsName.ruleForm, 'recordData', obj[this.fixedValueClickRow.namefieldname])
console.log(this.fixedValueClickRow, 'this.fixedValueClickRow')
this.textarea += `@@$${this.fixedValueClickRow.dbName}:id=${obj.id}`
this.textarea += `@@$${this.fixedValueClickRow.dbName}:${this.fixedValueClickRow.tablepkname}=${obj[this.fixedValueClickRow.tablepkname]}`
// this.$set(this.clickRow, `factorid${this.clickNum}`, this.$refs.baseChoice.optionData[this.clickObj.key])
// this.$set(this.clickRow, `factorname${this.clickNum}`, this.$refs.baseChoice.optionData[this.clickObj.labelKey])
// this.$set(this.clickRow, `factorpk${this.clickNum}`, this.$refs.baseChoice.optionData['id'])
@ -1340,10 +1280,9 @@ export default {
this.selected[0].assistEntityList.push({})
},
//
voucherCliclHandle(id, name, def1) {
voucherCliclHandle(id, name) {
this.voucherClickId = id
this.voucherClickName = name
this.voucherClickdef1 = def1
this.resetTable()
},
voucherDialogDelHandle(item) {
@ -1362,7 +1301,6 @@ export default {
voucherDialogEditHandle(item) {
this.billTypeADDID = item.id
this.billTypeADDName = item.name
this.def1 = item.def1
this.voucherDialogShow = true
this.passwordDialogTitle = '编辑'
},
@ -1385,8 +1323,7 @@ export default {
if (this.passwordDialogTitle === '新增') {
const res = await typeSaveAPI({
name: this.billTypeADDName,
mdmId: this.billTypeClickID,
def1: this.def1
mdmId: this.billTypeClickID
})
this.$vmNews('保存成功', 'success')
this.getVoucherListHandle()
@ -1394,8 +1331,7 @@ export default {
const res = await typeUpdateAPI({
id: this.billTypeADDID,
name: this.billTypeADDName,
mdmId: this.billTypeClickID,
def1: this.def1
mdmId: this.billTypeClickID
})
this.$vmNews('保存成功', 'success')
this.getVoucherListHandle()
@ -1406,7 +1342,6 @@ export default {
this.voucherDialogShow = true
this.passwordDialogTitle = '新增'
this.billTypeADDName = ''
this.def1 = 'N'
this.billTypeADDID = ''
},
//
@ -1419,33 +1354,18 @@ export default {
}
})
})
let tableData = this.tableData.map(el => {
return {
...el,
typeMerge: this.typeMerge
}
})
let tableData = this.tableData.map(el=>{
return{
...el,
typeMerge:this.typeMerge
}
})
console.log(this.tableData, 'this.tableData')
const res = await confTempSaveAPI(tableData)
this.$vmNews('保存成功', 'success')
this.editFlag = false
this.getTableData()
},
//
async copyOperate() {
if (!this.selected.length) {
this.$vmNews('请至少选择一条数据')
return
}
let copyTarget = JSON.parse(JSON.stringify(this.selected[0]))
console.log(copyTarget.assistEntityList, 'copyTarget')
//id
delete copyTarget.id
copyTarget.assistEntityList.forEach(item => {
delete item.id
})
this.tableData.push(copyTarget)
},
//
closeOperate() {
this.editFlag = false
@ -2064,7 +1984,7 @@ export default {
templateTypeId: this.voucherClickId//20250704
})
this.tableData = res.attribute
this.typeMerge = this.tableData[0].typeMerge
this.typeMerge = this.tableData[0].typeMerge
this.$nextTick(() => {
this.$refs.customtable.clearRadioIndex()
this.$refs.customtable.clearSelection()
@ -2199,7 +2119,7 @@ export default {
currencyFieArr: [],
assistEntityList: [],
templateTypeId: this.voucherClickId,
typeMerge: this.typeMerge
typeMerge:this.typeMerge
}
this.tableData.push(obj)
return
@ -2303,7 +2223,7 @@ export default {
'nameEn': 'delOperate',
'menuId': '936df6d1cd7e4f9ba4c972e0f84b5ab4',
'iconName': 'el-icon-delete',
'style': 'danger',
'styles': 'danger',
'btnFunction': 'delOperate',
'remark': null,
'userId': null,
@ -2404,7 +2324,7 @@ export default {
'nameEn': 'delOperateAssist',
'menuId': '936df6d1cd7e4f9ba4c972e0f84b5ab4',
'iconName': 'el-icon-delete',
'style': 'danger',
'styles': 'danger',
'btnFunction': 'delOperate',
'remark': null,
'userId': null,

View File

@ -1779,7 +1779,7 @@ export default {
'nameEn': 'delOperate',
'menuId': '936df6d1cd7e4f9ba4c972e0f84b5ab4',
'iconName': 'el-icon-delete',
'style': 'danger',
'styles': 'danger',
'btnFunction': 'delOperate',
'remark': null,
'userId': null,
@ -1880,7 +1880,7 @@ export default {
'nameEn': 'delOperateAssist',
'menuId': '936df6d1cd7e4f9ba4c972e0f84b5ab4',
'iconName': 'el-icon-delete',
'style': 'danger',
'styles': 'danger',
'btnFunction': 'delOperate',
'remark': null,
'userId': null,

View File

@ -1567,7 +1567,7 @@ export default {
'nameEn': 'delOperate',
'menuId': '936df6d1cd7e4f9ba4c972e0f84b5ab4',
'iconName': 'el-icon-delete',
'style': 'danger',
'styles': 'danger',
'btnFunction': 'delOperate',
'remark': null,
'userId': null,
@ -1668,7 +1668,7 @@ export default {
'nameEn': 'delOperateAssist',
'menuId': '936df6d1cd7e4f9ba4c972e0f84b5ab4',
'iconName': 'el-icon-delete',
'style': 'danger',
'styles': 'danger',
'btnFunction': 'delOperate',
'remark': null,
'userId': null,

View File

@ -1,415 +0,0 @@
<template>
<div class="editorItem">
<el-form-item>
<div class="editor-header" :style="indentStyle">
<span
v-if="row.children && row.children.length > 0"
class="toggle-btn"
@click="toggleCollapse"
>
<i
:class="
isCollapsed ? 'el-icon-caret-right' : 'el-icon-caret-bottom'
"
></i>
</span>
<span class="column-title"
>{{ row.column_name }}
<span style="font-size: 12px; margin-left: 5px; font-weight: bold">{{
row.column_comment
}}</span></span
>
</div>
<div class="editor-container" :style="indentStyle">
<div
class="content-editor"
:ref="'contentEditor' + row.column_name + rowIndex"
:contenteditable="!viewFlag"
@keydown="handleKeyDown($event, row.column_name, rowIndex)"
@input="handleInput($event, row.column_name, rowIndex)"
@click="handleEditorClick($event, row.column_name, rowIndex)"
@paste="handlePaste($event, row.column_name, rowIndex)"
@focus="handleEditorFocus($event, row.column_name, rowIndex)"
@blur="handleEditorBlur($event, row.column_name, rowIndex)"
></div>
<div
v-if="!viewFlag"
class="editorIcon"
@click.stop="handleAddNodeToEditor(row.column_name, rowIndex)"
>
<i class="el-icon-circle-plus"></i>
</div>
<div
v-if="!viewFlag"
class="clearIcon"
@click.stop="handleClearNodeToEditor(row.column_name, rowIndex)"
>
<i class="el-icon-circle-close"></i>
</div>
</div>
</el-form-item>
<!-- 子项只有在展开时才显示 -->
<EditorItem
v-if="!isCollapsed"
v-for="(child, index) in row.children"
:key="index"
:row="child"
:row-index="`${rowIndex}-${index}`"
v-bind="$attrs"
v-on="$listeners"
ref="childEditors"
ref-in-for
:viewFlag="viewFlag"
/>
</div>
</template>
<script>
export default {
name: "EditorItem",
props: {
row: Object,
rowIndex: [String, Number],
viewFlag: {
type: Boolean,
default: false,
},
},
data() {
return {
isCollapsed: false,
};
},
computed: {
indentLevel() {
return String(this.rowIndex).split("-").length - 1;
},
indentStyle() {
return {
paddingLeft: this.indentLevel * 20 + "px",
};
},
},
mounted() {
this.$nextTick(() => {
const refName = "contentEditor" + this.row.column_name + this.rowIndex;
const editor = this.$refs[refName];
// editor DOM undefined/
if (Array.isArray(editor)) {
if (editor.length > 0) {
this.$emit("register-editor", refName, editor[0]);
}
} else if (editor) {
this.$emit("register-editor", refName, editor);
}
});
},
methods: {
//
getEditorContent() {
// DOM
const refName = "contentEditor" + this.row.column_name + this.rowIndex;
const editor = this.$refs[refName];
//
let html_label = "";
let whereCondition = "";
if (editor) {
html_label = editor.innerHTML.trim();
editor.childNodes.forEach((node) => {
if (node.nodeType === Node.TEXT_NODE) {
whereCondition += node.textContent;
} else if (node.nodeType === Node.ELEMENT_NODE) {
whereCondition += node.getAttribute("data-token-text") || "";
}
});
//
whereCondition = whereCondition
.replace(//g, ",")
.replace(//g, "(")
.replace(//g, ")");
}
//
let children = [];
if (this.$refs.childEditors && this.$refs.childEditors.length > 0) {
children = this.$refs.childEditors.map((childComp) =>
childComp.getEditorContent()
);
}
return {
character_maximum_length: this.row.character_maximum_length,
column_comment: this.row.column_comment,
column_name: this.row.column_name,
data_type: this.row.data_type,
html_label: this.row.html_label,
is_nullable: this.row.is_nullable,
fieldName: this.row.column_name,
whereCondition,
html_label,
children,
};
},
toggleCollapse() {
this.isCollapsed = !this.isCollapsed;
},
//
handleKeyDown(e, columnName, rowIndex) {
this.$emit("handle-keydown", e, columnName, rowIndex);
},
handleInput(e, columnName, rowIndex) {
this.$emit("handle-input", e, columnName, rowIndex);
},
handleEditorClick(e, columnName, rowIndex) {
this.$emit("handle-editor-click", e, columnName, rowIndex);
},
handlePaste(e, columnName, rowIndex) {
this.$emit("handle-paste", e, columnName, rowIndex);
},
handleEditorFocus(e, columnName, rowIndex) {
this.$emit("handle-editor-focus", e, columnName, rowIndex);
},
handleEditorBlur(e, columnName, rowIndex) {
this.$emit("handle-editor-blur", e, columnName, rowIndex);
},
handleAddNodeToEditor(columnName, rowIndex) {
this.$emit("handle-add-node", columnName, rowIndex);
},
handleClearNodeToEditor(columnName, rowIndex) {
this.$emit("handle-clear-node", columnName, rowIndex);
},
},
components: {
EditorItem: () => import("./EditorItem.vue"),
},
};
</script>
<style lang="scss" scoped>
// ------------------------
.editor-container {
flex: 1;
overflow: hidden;
position: relative;
}
.editorIcon {
position: absolute;
right: 10px;
top: 0;
font-size: 20px;
color: #999999;
}
.clearIcon {
display: none;
position: absolute;
top: 0;
right: 35px;
font-size: 20px;
color: #999999;
}
.editor-container:hover .clearIcon {
display: block;
}
/* hover 时显示 close-icon */
.editor-container:hover .close-icon {
display: inline-flex; /* 或 block根据你的布局 */
}
.content-editor {
border: 1px solid #e5e7eb;
border-radius: 4px;
min-height: 40px;
padding: 0 50px 0 10px;
background: #fff;
position: relative;
font-size: 12px;
// line-height: 1.6;
overflow-y: auto;
outline: none;
word-wrap: break-word;
}
.content-editor:focus {
border-color: #409eff;
}
.content-editor:empty:before {
content: attr(data-placeholder);
color: #9ca3af;
font-style: italic;
pointer-events: none;
}
.content-editor:focus:empty:before {
content: "";
}
/* 确保空编辑器也能显示光标 */
.content-editor:empty {
min-height: 40px;
}
.content-editor:focus {
outline: none;
}
// --------------------------------
::v-deep .content-token {
display: unset !important;
padding: 3px 4px !important;
border-radius: 3px;
margin: 0 2px !important;
cursor: pointer;
transition: all 0.2s ease;
vertical-align: middle;
font-size: 12px;
font-weight: 500;
user-select: none;
}
::v-deep .token-function {
background: #ecfdf5;
color: #047857;
border: 1px solid #10b981;
}
::v-deep .repContainer {
width: 100%;
height: 100%;
background: #f5f5f5;
padding: 10px;
position: relative;
}
.treeNodeBox {
height: calc(100% - 50px);
overflow-y: auto;
}
.closeRepContainer {
position: absolute;
top: 20px;
right: 12px;
font-size: 14px;
cursor: pointer;
display: flex;
align-items: center;
i {
margin-right: 5px;
}
}
.closeRepContainer:hover {
color: #409eff;
}
.repItem {
display: flex;
align-items: center;
margin-bottom: 8px;
cursor: pointer;
}
.repItem:hover .repItemValue {
color: #409eff;
}
.repItemValue {
color: #6b7280;
font-size: 13px;
margin-left: 10px;
}
.token-editable-content {
display: inline-block;
min-width: 1em;
padding: 0 2px;
border-bottom: 1px dashed #aaa;
cursor: text;
outline: none;
}
::v-deep .content-token.token-edit {
display: inline-flex !important;
color: #5b21b6;
font-weight: bold;
padding: 0;
}
.Columnsbtn {
margin: 10px 0;
display: flex;
justify-content: flex-end;
}
.fixedChildTable {
height: calc(100vh - 360px);
overflow: auto;
}
.drawParent {
position: relative;
}
.TestResultDisplayArea {
width: 400px;
height: calc(100% - 10px);
position: absolute;
right: 10px;
top: 5px;
background-color: #fff;
box-sizing: border-box;
box-shadow: 0 0 8px #0000001a;
border-radius: 4px;
z-index: 100;
overflow: hidden;
}
.testResultBoxTitle {
display: flex;
padding: 15px 10px;
background: #333333;
font-size: 14px;
font-weight: bold;
color: #fff;
justify-content: space-between;
border-radius: 4px 4px 0 0;
.closeTextBox {
cursor: pointer;
}
}
.jsonTestResultBox {
height: calc(100% - 90px);
overflow: auto;
}
::v-deep .el-alert {
padding: 10px !important;
}
.editor-header {
display: flex;
align-items: center;
margin-bottom: 5px;
font-weight: 500;
}
.toggle-btn {
cursor: pointer;
margin-right: 8px;
color: #606266;
font-size: 14px;
}
.column-title {
font-size: 14px;
color: #333;
display: flex;
font-weight: bold;
}
</style>

View File

@ -12,16 +12,16 @@
title="新增账号"
>
<template #addButton>
<el-button type="primary" v-if="!submitShow" @click="VerifyAccount">验证账号</el-button>
<el-button type="primary" @click="VerifyAccount">验证账号</el-button>
</template>
<div class="rightDialogClass_main" style="background: #fff; padding: 10px">
<base-form
style="padding-top: 0 !important"
spanWidth="80px"
ref="customForm"
:formRow="currentForm"
:formRow="accountFormRow"
:isFunBtn="false"
:rules="currentRules"
:rules="accountRules"
alignAt="block"
:span="24"
>
@ -62,8 +62,6 @@ export default {
data() {
return {
dialogVisible: false,
currentForm: [],
currentRules: {},
accountFormRow: [
{
elCol: [
@ -190,160 +188,25 @@ export default {
},
],
},
accountOtherFormRow: [
{
elCol: [
{
label: "账号名称",
prop: "name",
tag: "elInput",
span: 24,
},
],
},
{
elCol: [
{
label: "ip地址",
prop: "ipAddress",
tag: "elInput",
span: 24,
},
],
},
{
elCol: [
{
label: "端口",
prop: "port",
tag: "elInput",
span: 24,
},
],
},
{
elCol: [
{
label: "应用Key",
prop: "appKey",
tag: "elInput",
span: 24,
},
],
},
{
elCol: [
{
label: "应用密钥",
prop: "appSecret",
tag: "elInput",
span: 24,
},
],
},
{
elCol: [
{
label: "企业ID",
prop: "corpid",
tag: "elInput",
span: 24,
},
],
},
{
elCol: [
{
label: "应用ID",
prop: "agentid",
tag: "elInput",
span: 24,
},
],
},
],
accountOtherRules: {
name: [
{
required: true,
message: "请输入",
trigger: "change, blur",
},
],
ipAddress: [
{
required: true,
message: "请输入",
trigger: "change, blur",
},
],
port: [
{
required: true,
message: "请输入",
trigger: "change, blur",
},
],
appKey: [
{
required: true,
message: "请输入",
trigger: "change, blur",
},
],
appSecret: [
{
required: true,
message: "请输入",
trigger: "change, blur",
},
],
corpid: [
{
required: true,
message: "请输入",
trigger: "change, blur",
},
],
agentid: [
{
required: true,
message: "请输入",
trigger: "change, blur",
},
],
},
appID: "",
sceneID: "",
stepID: "",
accountType: "",
submitShow: false, //
message: "",
appType: "",
};
},
methods: {
openDialog(appID, sceneID, stepID, appType) {
this.appType = appType;
openDialog(appID, sceneID, stepID) {
this.submitShow = false;
this.message = "";
this.queryDictionaryList();
this.appID = appID;
this.sceneID = sceneID;
this.stepID = stepID;
this.submitShow = false;
if (appType == "9") {
this.currentForm = this.accountFormRow;
this.currentRules = this.accountRules;
this.queryDictionaryList();
} else {
this.submitShow = true;
this.currentForm = this.accountOtherFormRow;
this.currentRules = this.accountOtherRules;
}
this.dialogVisible = true;
this.$nextTick(() => {
this.dialogVisible = true;
this.$nextTick(() => {
this.$refs.customForm?.resetFields("ruleForm");
});
this.$refs.customForm?.resetFields("ruleForm");
});
},
async queryDictionaryList() {
@ -367,7 +230,6 @@ export default {
if (valid) {
let params = {
...this.$refs.customForm.ruleForm,
appType: this.appType,
};
this.verifyDataBase(params);
} else {
@ -395,7 +257,6 @@ export default {
}
},
handleConfirmClick() {
this.openLoading("保存")
this.$refs.customForm.$refs["ruleForm"].validate((valid) => {
if (valid) {
let params = {
@ -404,7 +265,6 @@ export default {
status: 1,
flowId: this.sceneID,
stepId: this.stepID,
appType: this.appType,
};
this.SaveAccountData(params);
} else {

File diff suppressed because it is too large Load Diff

View File

@ -170,8 +170,8 @@ export default {
params
);
if (res.status == "200") {
this.$refs.senceForm.choiceAssignment(res.attribute[0]);
this.triggerModeId = res.attribute[0].triggerMode;
this.$refs.senceForm.choiceAssignment(res.data[0]);
this.triggerModeId = res.data[0].triggerMode;
}
},
choseType(row) {

View File

@ -44,17 +44,23 @@
</div>
</div>
</base-dialog>
<!-- <addDialogChunk
ref="addDialogChunk"
@examineHandleClose="examineHandleClose"
></addDialogChunk> -->
</div>
</template>
<script>
import baseDialog from "@/components/base/BaseNewDialog/index.vue";
// import addDialogChunk from "./addDialogChunk";
import { authApi } from "@/api/apis/auth";
import baseForm from "@/components/base/baseNewForm";
export default {
components: {
baseDialog,
baseForm,
// addDialogChunk,
},
data() {
return {
@ -69,7 +75,6 @@ export default {
options: [],
optionValue: "id",
optionLabel: "name",
disabled:true
},
],
},
@ -164,8 +169,8 @@ export default {
params
);
if (res.status == "200") {
this.$refs.senceForm.choiceAssignment(res.attribute[0]);
this.triggerModeId = res.attribute[0].triggerMode;
this.$refs.senceForm.choiceAssignment(res.data[0]);
this.triggerModeId = res.data[0].triggerMode;
}
},
handleConfirmClick() {

File diff suppressed because it is too large Load Diff

View File

@ -358,10 +358,6 @@
ref="addDialogChunk"
@examineHandleClose="resetTable"
></addDialogChunk>
<viewDialogChunk
ref="viewDialogChunk"
@examineHandleClose="resetTable"
></viewDialogChunk>
</div>
</template>
@ -376,7 +372,6 @@ import addSence from "@/views/LinkUp/compoment/addSence.vue";
import projectClassificationRightDialog from "@/views/projectClassification/rightDialog.vue";
import authorizationDialog from "@/views/projectClassification/authorizationDialog.vue";
import addDialogChunk from "./compoment/addDialogChunk.vue";
import viewDialogChunk from "./compoment/viewDialogChunk.vue";
export default {
components: {
baseLayout,
@ -386,7 +381,6 @@ export default {
projectClassificationRightDialog,
authorizationDialog,
addDialogChunk,
viewDialogChunk
},
data() {
return {
@ -530,9 +524,17 @@ export default {
//
getFuncBtn(btnEven) {
if (btnEven.menuName == "新增") {
// this.$refs.addDialogChunk.openDialog(
// "-4252471217359269890",
// "3-33003",
// "add",
// 3
// );
this.$refs.addSence.openDialog("", "add", this.projectClassificationID);
}
},
//hyt 2024/08/14
onFixedBtn(flag) {
this.$refs.layoutNew.pageClear();
this.pageModel.page = 1;

View File

@ -466,7 +466,7 @@ export default {
let res = await queryDataByMapAPI(params)
this.addTableData = []
this.addTableData = res.attribute.list
},
handleNodeClick(node) {
console.log(node, '?')
@ -1025,7 +1025,7 @@ export default {
'nameEn': 'delOperate',
'menuId': '936df6d1cd7e4f9ba4c972e0f84b5ab4',
'iconName': 'el-icon-delete',
'style': 'danger',
'styles': 'danger',
'btnFunction': 'delOperate',
'remark': null,
'userId': null,

View File

@ -1,9 +1,9 @@
<template>
<div>
<base-dialog :dialogVisible.sync="dialogVisible" :closeModal="false" :footerShow="true" :title="'查看分录信息'"
width="90%" top="10vh">
width="800px" top="15vh">
<div class="rightDialogClass_main" style="background-color: #fff;">
<base-table ref="assistTable" :showIndex="false" :slotrow="false" tableHeight="calc(75vh - 80px)"
<base-table ref="assistTable" :showIndex="false" :slotrow="false" tableHeight="calc(60vh - 80px)"
:tableData="tableData" :tableColumn="tableColumn" id="printMe">
</base-table>

View File

@ -1,86 +0,0 @@
<template>
<div>
<base-dialog :dialogVisible.sync="dialogVisible" :closeModal="false" :footerShow="true" :title="'选择生成日期'"
width="300px" top="10vh"
@handleConfirmClick="handleConfirmClick"
>
<div class="rightDialogClass_main" style="background-color: #fff;">
<el-date-picker v-model="date" align="right" type="date" placeholder="选择日期"
value-format="yyyy-MM-dd"
>
</el-date-picker>
</div>
</base-dialog>
</div>
</template>
<script>
import baseDialog from '@/components/base/BaseNewDialog/index.vue'
import baseTable from '@/components/base/baseTable/index.vue'
import { queryDetailsByBillCodeAPI } from '@/api/apis/businessVoucher'
export default {
components: {
baseDialog,
baseTable
},
data() {
return {
date: '',
dialogVisible: false,
tableData: [],
tableColumn: [{
label: '摘要',
prop: 'abstractStr'
},
{
label: '会计科目',
prop: 'subjdispname'
},
{
label: '辅助核算',
prop: 'assist'
},
{
label: '币种编码',
prop: 'currencyCode'
},
{
label: '币种名称',
prop: 'currencyName'
},
{
label: '借方原币',
prop: 'jybSum'
},
{
label: '借方本币',
prop: 'jbbSum'
},
{
label: '贷方原币',
prop: 'dybSum'
},
{
label: '贷方本币',
prop: 'dbbSum'
}
]
}
},
methods: {
async openDialog() {
this.dialogVisible = true
this.date = ''
},
handleConfirmClick() {
this.$emit('pickDateHandle', this.date)
this.dialogVisible = false
}
}
}
</script>
<style>
</style>

View File

@ -1,42 +1,33 @@
<script src="../../api/apis/operationalModule.js"></script>
<template>
<div class="recordContrast">
<!-- <div class="left">-->
<!-- <div class="leftTitle" style="display: flex;align-items: center;justify-content: space-between">-->
<!-- <div>单据列表</div>-->
<!-- </div>-->
<!-- <div class="showList">-->
<!-- <base-tree ref="baseTree" :isCenter="false" :isSaveBtn="false" :Allshow="false" :showCheckbox="false"-->
<!-- :menuData="billTypeList" @handleNodeClick="billTypeClickHandle" :treeProps="treeProps"-->
<!-- ></base-tree>-->
<!-- </div>-->
<!-- </div>-->
<div class="left">
<div class="leftTitle" style="display: flex;align-items: center;justify-content: space-between">
<div>单据列表</div>
</div>
<div class="showList">
<base-tree ref="baseTree" :isCenter="false" :isSaveBtn="false" :Allshow="false" :showCheckbox="false"
:menuData="billTypeList" @handleNodeClick="billTypeClickHandle" :treeProps="treeProps"
></base-tree>
</div>
</div>
<div class="right" v-loading="tableLoading">
<div class="topBox" style="margin-bottom: 5px">
<div class="topBox" style="margin-bottom: 10px">
<div class="searchBox">
<div style="margin-left: 5px;display: flex;align-items: center;">
<div style="width: 80px">单据列表</div>
<el-cascader
v-model="searchObjTable.billTypeClickID"
:options="billTypeList"
:props="treeProps"
@change="billTypeListChangeHandle"
></el-cascader>
<div style="width: 100px">单据号</div>
<el-input v-model="searchObjTable.billCode" clearable></el-input>
</div>
<div style="margin-left: 3px;display: flex;align-items: center;">
<div style="width: 80px">单据号</div>
<el-input v-model="searchObjTable.bill_code" clearable></el-input>
</div>
<div style="margin-left: 3px;display: flex;align-items: center">
<div style="width: 140px">单据日期起</div>
<div style="margin-left: 5px;display: flex;align-items: center">
<div>单据日期起</div>
<el-date-picker v-model="searchObjTable.timeStart" value-format="yyyy-MM-dd" type="date"></el-date-picker>
</div>
<div style="margin-left: 3px;display: flex;align-items: center">
<div style="width: 140px">单据日期止</div>
<div style="margin-left: 5px;display: flex;align-items: center">
<div>单据日期止</div>
<el-date-picker v-model="searchObjTable.timeEnd" value-format="yyyy-MM-dd" type="date"></el-date-picker>
</div>
<div style="margin-left: 3px;display: flex;align-items: center">
<div style="width: 80px">生成状态</div>
<div style="margin-left: 5px;display: flex;align-items: center">
<div style="width: 100px">生成状态</div>
<el-select
class="w-100"
v-model="searchObjTable.billStatus"
@ -53,100 +44,56 @@
</el-option>
</el-select>
</div>
<div style="margin-left: 3px;display: flex;align-items: center;">
<div style="width: 80px">项目编码</div>
<el-input v-model="searchObjTable.project_code" clearable></el-input>
<div>
<el-button type="primary" size="small" @click="getTableData">查询</el-button>
</div>
</div>
</div>
<div class="topBox" style="margin-bottom: 5px">
<div class="searchBox">
<div style="margin-left: 3px;display: flex;align-items: center;">
<div style="width: 100px">一级项目类型</div>
<el-input v-model="searchObjTable.one_project_type" clearable></el-input>
</div>
<div style="margin-left: 3px;display: flex;align-items: center">
<div style="width: 80px">审核状态</div>
<el-select
class="w-100"
v-model="searchObjTable.examine_status"
filterable
:clearable="true"
placeholder="请选择"
>
<el-option
v-for="(el, index) in [{label:'已审核',value:'Y'},{label:'未审核',value:'N'}]"
:key="el.value"
:label="el.label"
:value="el.value"
>
</el-option>
</el-select>
</div>
<div>
<el-button type="primary" size="small" @click="resetTable">查询</el-button>
</div>
<div>
<el-button type="primary" size="small" @click="coreDataOpenDialog">生成凭证</el-button>
</div>
<div>
<el-button type="danger" size="small" @click="closeCreate">收回凭证</el-button>
</div>
<div style="display: flex;align-items: center;justify-content: flex-end;">
</div>
</div>
<div class="leftTitle" style="display: flex;align-items: center;justify-content: space-between">
<div>{{ billTypeClickName }}</div>
<div>分录信息</div>
</div>
<div class="table">
<base-table ref="customtable" :showIndex="false" :slotrow="false" :showSelect="true"
:tableData="tableData" :tableColumn="tableColumn"
@radioChange="radioChange" id="printMe" @onSelectionChange="onSelectionChange"
<base-table ref="customtable" :showIndex="false" :slotrow="true"
tableHeight="calc(50vh - 100px)" :tableData="tableData" :tableColumn="tableColumn"
@radioChange="radioChange" id="printMe"
>
<template #billStatus="{row}">
<div>{{ row.billStatus === 'Y' ? '已生成' : '未生成' }}</div>
</template>
<template #billstatus="{row}">
<div>{{ row.billstatus === 'Y' ? '已生成' : '未生成' }}</div>
<div>{{ row.row.billStatus === 'Y' ? '已生成' : '未生成' }}</div>
</template>
<template #operation="{row}">
<div @click="generateHandle(row)" style="cursor: pointer;color: #4876ed">
{{ row.billStatus === 'Y' ? '查看' : '生成' }}
<div @click="generateHandle(row.row)" style="cursor: pointer">
{{row.row.billStatus === 'Y' ? '查看' : '生成'}}
</div>
</template>
</base-table>
<base-page :pageModel.sync="pageModel" @onPageChange="pageChange"></base-page>
</div>
<!-- 辅助核算-->
<template>
<div>分录信息</div>
<template v-if="this.selected.length">
<div class="table">
<base-table ref="assistTable" :showIndex="false" :slotrow="false"
tableHeight="calc(50vh - 110px)" :tableData="assistTableData"
tableHeight="calc(50vh - 100px)" :tableData="assistTableData"
:tableColumn="assistTableColumn"
id="printMe"
:border="true"
>
<template #operate="{row}">
<div @click="expandOperate(row)" style="cursor: pointer;color: #4876ed">
查看凭证明细
</div>
</template>
<template #operate="{row}">
<div @click="expandOperate(row)" style="cursor: pointer">
查看凭证明细
</div>
</template>
</base-table>
</div>
</template>
</div>
<customFormDialog ref="customFormDialog"></customFormDialog>
<assistTableDialog ref="assistTableDialog"></assistTableDialog>
<datePickDialog ref="datePickDialog" @pickDateHandle="coreData"></datePickDialog>
<customFormDialog ref="customFormDialog"></customFormDialog>
<assistTableDialog ref="assistTableDialog"></assistTableDialog>
</div>
</template>
<script>
import datePickDialog from '@/views/businessVoucher/compoments/datePickDialog.vue'
import baseTree from '@/components/base/BaseMenuTree/index.vue'
import basePage from '@/components/base/basePage/index.vue'
import baseChoice from '@/components/base/baseChoice/index.vue'
@ -182,32 +129,14 @@ import {
tempupdateAPI, typeDeleteAPI, typeSaveAPI, typeUpdateAPI
} from '@/api/apis/ItemEntryTemplate'
import { subjectClassificationqueryAllAPI } from '@/api/apis/classifyDefinition'
import {
logqueryBillAPI,
coreGenerateAPI,
queryDetailsByBillCodeAPI,
queryBillFiledsAPI, queryBillPageddsAPI, queryBillPagedAPI, queryDetailsByBillCodeAndMdmIdAPI, backVoucherAPI
} from '@/api/apis/businessVoucher'
import { logqueryBillAPI,coreGenerateAPI,queryDetailsByBillCodeAPI } from '@/api/apis/businessVoucher'
import customFormDialog from './compoments/customFormDialog'
import assistTableDialog from './compoments/assistTableDialog'
export default {
name: 'recordContrast',
components: {
baseDialog,
baseChoice,
basePage,
baseTable,
baseRightDialog,
baseForm,
baseTree,
customFormDialog,
assistTableDialog,
datePickDialog
},
components: { baseDialog, baseChoice, basePage, baseTable, baseRightDialog, baseForm, baseTree,customFormDialog,assistTableDialog },
data() {
return {
checkBoxList: [],
searchObjTable: {},
addTableColumn2: [],
addTableData2: [],
@ -261,7 +190,7 @@ export default {
clickRowKey: '',
activeTabs: '元数据属性',
tabItem: ['元数据属性', '固定值'],
arithmeticArr: ['+', '-', '*', '/', '->', '==', '(', ')', '<', '>', '<=', '>=', 'substr(,,)', 'if(*?:)'],
arithmeticArr: ['+', '-', '*', '/', '->', '==', '(', ')', '<', '>', '<=', '>=', 'substr(,,)'],
//text
textarea: '',
textareaEn: '',
@ -276,54 +205,38 @@ export default {
{
label: '单据日期',
prop: 'billDate',
width: 120
width: 120
},
{
label: '凭证类别',
prop: 'voucherTypeName',
width: 120
width: 120
},
{
label: '凭证号',
prop: 'voucherNo',
width: 100
},
{
label: '会计科目',
prop: 'subjdispname',
width: 300
},
{
label: '辅助核算',
prop: 'assist',
width: 100
},
{
label: '摘要',
prop: 'abstractStr',
width: 180
width: 160
},
{
label: '借方本币金额',
prop: 'jbbSum',
width: 180
label: '借方',
prop: 'jYbSum',
width: 120
},
{
label: '借方原币金额',
prop: 'jybSum',
width: 180
label: '贷方',
prop: 'dYbSum',
width: 120
},
{
label: '贷方本币金额',
prop: 'dbbSum',
width: 180
label: '操作',
prop: 'operate',
width: 160
},
{
label: '贷方原币金额',
prop: 'dybSum',
width: 180
}
],
billTypeClickCode: '',
masterTableData: [],
@ -578,15 +491,18 @@ export default {
searchObj: {},
pageModel: {
page: 1, //
limit: 10, //
total: 0
limit: 20, //
prop7: '',
propValue7: '',
prop8: '',
propValue8: ''
},
selected: [],
treeSelect: [],
tableColumn: [
{
label: '单据号',
prop: 'bill_code'
prop: 'billCode'
},
{
label: '单据日期',
@ -597,17 +513,17 @@ export default {
label: '生成状态',
prop: 'billStatus',
width: 120
},
{
label: '推送信息',
prop: 'pushInfo',
width: 250
},
{
label: '操作',
prop: 'operation',
width: '100'
}
// {
// label: '',
// prop: 'pushInfo',
// width: 250
// },
// {
// label: '',
// prop: 'operation',
// width: '100'
// }
],
tableData: [],
tableLoading: false,
@ -635,8 +551,7 @@ export default {
billTreeActiveFather: {},
treeProps: {
children: 'mdmModuleEntity',
label: 'name',
value: 'id'
label: 'name'
},
billTreeProps: {
children: 'sublistMdmModuleDbFileds',
@ -646,105 +561,66 @@ export default {
}
},
methods: {
closeCreate() {
if (this.checkBoxList.length === 0) {
this.$vmNews('请选择单据')
return
}
this.$confirm('是否收回凭证?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(async() => {
let flag = this.checkBoxList.some((item, index) => {
if (item.billstatus !== 'Y') {
this.$vmNews('未生成的单据不能收回')
return true
}
})
if (flag) {
return
}
let arr = []
this.checkBoxList.forEach(item => {
arr.push(item.bill_code)
})
let params = {
mdmId: this.billTypeClickID,
bill_code: arr.join(','),
targetDate: ''
}
const res = await backVoucherAPI(params)
if (res.status == '200') {
this.$vmNews('收回成功', 'success')
this.resetTable()
}
})
},
coreDataOpenDialog() {
if (this.checkBoxList.length === 0) {
this.$vmNews('请选择单据')
returnt
}
let flag = this.checkBoxList.some((item, index) => {
if (item.billStatus == 'Y' || item.billstatus == 'Y') {
this.$vmNews('已生成的单据不能生成')
return true
}
})
if (flag) {
return
}
this.$refs.datePickDialog.openDialog()
},
billTypeListChangeHandle(val, obj) {
console.log(val, obj, '?')
if (this.searchObjTable.billTypeClickID) {
console.log(this.searchObjTable.billTypeClickID, '?')
this.billTypeClickID = this.searchObjTable.billTypeClickID[this.searchObjTable.billTypeClickID.length - 1]
let obj = this.billTypeList.find(item => {
return item.mdmModuleEntity.some(ele => {
if (ele.id == this.billTypeClickID) {
this.billTypeClickName = ele.name
}
return ele.id == this.billTypeClickID
})
})
console.log(obj, '?')
}
},
onSelectionChange(val) {
this.checkBoxList = val
},
//
async generateHandle(row) {
if (row.billStatus == 'Y' || row.billstatus == 'Y') {
this.$refs.customFormDialog.openDialog(row)
if(row.billStatus == 'Y'){
this.$refs.customFormDialog.openDialog(row)
}else{
this.coreData(row)
}
},
async expandOperate(row){
this.$refs.assistTableDialog.openDialog(row)
// let res= await queryDetailsByBillCodeAPI({id:row.id})
// console.log(res)
},
async coreData(row){
let params = {
mdmId: this.billTypeClickID,
billCode:row.billCode
}
let res = await coreGenerateAPI(params)
if(res.status == '200'){
this.$vmNews('生成成功', 'success')
this.resetTable()
}
},
async ixedValueFormelDialogClick(row) {
if (row.label === '参照') {
this.fixedValuelDialogClick(false)
} else {
this.coreData(row)
if (!this.fixedValueClickRow.namefieldname) {
this.$vmNews('请选择参照值')
return
}
this.addTableColumn2 = [
{
label: '名称',
prop: this.fixedValueClickRow.namefieldname
},
{
label: '编码',
prop: this.fixedValueClickRow.codefieldname
}
]
this.addDialog = true
this.addTiTle = this.fixedValueClickRow.dbName
this.pageModel.propValue7 = ''
this.pageModel.propValue8 = ''
this.pageModel.prop7 = ''
this.pageModel.prop8 = ''
this.getAddTableData()
}
},
async expandOperate(row) {
this.$refs.assistTableDialog.openDialog(row)
// let res= await queryDetailsByBillCodeAPI({id:row.id})
// console.log(res)
},
async coreData(date) {
let arr = []
this.checkBoxList.forEach(item => {
arr.push(item.bill_code)
})
let params = {
mdmId: this.billTypeClickID,
bill_code: arr.join(','),
targetDate: date
}
this.openLoading()
let res = await coreGenerateAPI(params)
if (res.status == '200') {
this.$vmNews('生成成功', 'success')
this.resetTable()
}
getTableAddList(val) {
// console.log(val, 'val', this.fixedValueClickRow)
this.pageModel.propValue7 = val
this.pageModel.propValue8 = val
this.pageModel.prop7 = this.fixedValueClickRow.codefieldname
this.pageModel.prop8 = this.fixedValueClickRow.namefieldname
this.getAddTableData()
},
addPickDialog() {
if (!this.$refs.baseChoice2.optionData[this.fixedValueClickRow.namefieldname]) {
@ -760,6 +636,21 @@ export default {
// console.log(this.clickRow, 'this.clickRow')
this.addDialog = false
},
async getAddTableData() {
const res = await queryDataPagedByMapAPI({
...this.pageModel,
pageNum: this.pageModel.page,
pageSize: this.pageModel.limit,
tablename: this.fixedValueClickRow.tablename,
pkentityorg: this.pkglbookClickObj.pkentityorg
})
this.$refs.baseChoice2.pageModel.total = res.attribute.total
this.addTableData2 = res.attribute.list
},
addonQuery(res, pageModel) {
this.pageModel = pageModel
this.getAddTableData()
},
//
transitionRowHandle(item) {
let obj = item
@ -1463,76 +1354,41 @@ export default {
if (res.status == 200) {
this.$vmNews('保存成功', 'success')
this.examineOperateDialog = false
this.resetTable(true)
this.resetTable()
}
}
},
pageChange(model) {
console.log(model, 'model')
// this.pageModel.page = model.page
// this.pageModel.limit = model.limit
this.pageModel.page = model.page
this.pageModel.limit = model.limit
this.getTableData()
},
async getTableData(flag = false) {
async getTableData() {
this.assistTableData = []
if (!this.billTypeClickID) return
const res2 = await queryBillFiledsAPI({
const res = await logqueryBillAPI({
...this.searchObjTable,
mdmId: this.billTypeClickID
})
this.tableColumn = []
res2.attribute.listList.forEach(item => {
item.label = item.chName
item['prop'] = item.enName
item.ruleList.forEach(ele => {
item[ele.ruleCode] = ele.ruleValue
})
})
this.tableColumn = res2.attribute.listList
console.log(this.tableColumn, 'this.tableColumn')
const res = await queryBillPagedAPI({
...this.searchObjTable,
mdmId: this.billTypeClickID,
pageNum: this.pageModel.page,
pageSize: this.pageModel.limit
})
console.log(res, '?')
this.tableData = res.attribute.list
this.pageModel.total = res.attribute.total
this.tableData = res.attribute
this.$nextTick(() => {
this.$refs.customtable.clearRadioIndex()
this.$refs.customtable.clearSelect()
// this.$refs.customtable.clearSelection()
this.selected = []
this.checkBoxList = []
if (flag && this.tableData.length) {
this.radioChange(flag)
}
})
},
resetTable(flag = false) {
resetTable() {
this.tableData = []
this.pageModel.page = 1
this.selected = []
let obj = this.checkBoxList[0]
this.checkBoxList = []
this.getTableData(obj)
this.getTableData()
},
//
async radioChange(val) {
console.log(val, '?')
this.openLoading()
const res = await queryDetailsByBillCodeAndMdmIdAPI({
mdmId: this.billTypeClickID,
bill_code: val.bill_code
})
this.$set(val, 'logList', res.attribute)
// console.log(res, '?')
radioChange(val) {
this.selected = []
this.selected.push(val)
console.log(val.logList, '?val.assistEntityList')
let row = {
props: {
children: 'sublistMdmModuleDbFileds',
@ -1753,7 +1609,7 @@ export default {
'nameEn': 'delOperate',
'menuId': '936df6d1cd7e4f9ba4c972e0f84b5ab4',
'iconName': 'el-icon-delete',
'style': 'danger',
'styles': 'danger',
'btnFunction': 'delOperate',
'remark': null,
'userId': null,
@ -1854,7 +1710,7 @@ export default {
'nameEn': 'delOperateAssist',
'menuId': '936df6d1cd7e4f9ba4c972e0f84b5ab4',
'iconName': 'el-icon-delete',
'style': 'danger',
'styles': 'danger',
'btnFunction': 'delOperate',
'remark': null,
'userId': null,
@ -1917,10 +1773,6 @@ export default {
<style scoped lang="scss">
::v-deep .el-table__body-wrapper {
height: 100% !important;
}
.tabs {
width: 200px;
display: flex;
@ -2037,8 +1889,7 @@ export default {
margin-right: 5px;
display: flex;
align-items: center;
> div {
>div{
width: 140px;
text-align: right;
}
@ -2137,8 +1988,4 @@ export default {
color: #c0c4cc
}
}
::v-deep .el-table__body-wrapper {
height: calc(50vh - 180px) !important;
}
</style>

View File

@ -806,7 +806,7 @@ export default {
options: []
}
arr.push(obj)
}
}
@ -987,7 +987,7 @@ export default {
'nameEn': 'delOperate',
'menuId': '936df6d1cd7e4f9ba4c972e0f84b5ab4',
'iconName': 'el-icon-delete',
'style': 'danger',
'styles': 'danger',
'btnFunction': 'delOperate',
'remark': null,
'userId': null,

View File

@ -387,7 +387,6 @@ export default {
})
})
this.tableColumn = res.attribute.listList
console.log(this.tableColumn,'this.tableColumn')
this.initTableData(this.mainTableName)
this.mainLoading = false
},

View File

@ -3,80 +3,63 @@
<div class="loginBg">
<main>
<div class="left">
<img src="../assets/images/login1.png" alt="" />
<img src="../assets/images/login-page.png" alt="" />
</div>
<div class="right">
<div
style="
width: 60%;
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
"
>
<div class="imgBox">
<img src="../assets/images/left1.png" alt="" />
<img
src="../assets/images/right1.png"
style="border-left: 1px solid #eee; width: 200px;"
alt=""
/>
</div>
<div class="login">
<el-form
:hide-required-asterisk="true"
label-position="top"
ref="loginFormNew"
:model="loginForm"
:rules="loginRulesNew"
class="login-form"
>
<el-form-item prop="login_name" label="手机号/用户名">
<el-input
v-model="loginForm.login_name"
type="text"
auto-complete="off"
placeholder="请输入账号"
>
</el-input>
</el-form-item>
<el-form-item prop="password" label="密码">
<el-input
v-model="loginForm.password"
@keyup.enter.native="handleLogin"
show-password
type="password"
auto-complete="off"
placeholder="请输入密码"
>
</el-input>
</el-form-item>
<el-checkbox
v-model="loginForm.rememberMe"
style="margin: 0px 0px 25px 0px"
<div class="title">您好!欢迎来到 用安数智中台</div>
<div class="login">
<el-form
:hide-required-asterisk="true"
label-position="top"
ref="loginFormNew"
:model="loginForm"
:rules="loginRulesNew"
class="login-form"
>
<el-form-item prop="login_name" label="手机号/用户名">
<el-input
v-model="loginForm.login_name"
type="text"
auto-complete="off"
placeholder="请输入账号"
>
</el-input>
</el-form-item>
<el-form-item prop="password" label="密码">
<el-input
v-model="loginForm.password"
@keyup.enter.native="handleLogin"
show-password
type="password"
auto-complete="off"
placeholder="请输入密码"
>
</el-input>
</el-form-item>
<el-checkbox
v-model="loginForm.rememberMe"
style="margin: 0px 0px 25px 0px"
>记住密码</el-checkbox
>
<el-checkbox
v-model="loginForm.automaticLogin"
style="margin: 0px 0px 25px 20px"
>
<el-checkbox
v-model="loginForm.automaticLogin"
style="margin: 0px 0px 25px 20px"
>自动登录</el-checkbox
>
<!-- <a class="forgetPwd">忘记密码</a> -->
<el-form-item style="width: 100%">
<el-button
:loading="loading"
size="medium"
type="primary"
style="width: 100%"
@click.native.prevent="handleLogin"
>
<!-- <a class="forgetPwd">忘记密码</a> -->
<el-form-item style="width: 100%">
<el-button
:loading="loading"
size="medium"
type="primary"
style="width: 100%"
@click.native.prevent="handleLogin"
>
<span v-if="!loading"> </span>
<span v-else> 中...</span>
</el-button>
</el-form-item>
</el-form>
</div>
<span v-if="!loading"> </span>
<span v-else> 中...</span>
</el-button>
</el-form-item>
</el-form>
</div>
</div>
</main>
@ -276,6 +259,7 @@ export default {
this.$store
.dispatch("Login", this.loginForm)
.then(() => {
console.log(123,'123')
this.loading = false;
this.$router
.push({
@ -334,7 +318,7 @@ export default {
<style lang="scss" scoped>
.loginBg {
background: linear-gradient(to bottom right, #519af6, #84d3e5);
background: url("../assets/images/login.png") no-repeat;
width: 100vw;
height: 100vh;
main {
@ -351,30 +335,28 @@ export default {
border-radius: 3vw;
margin: auto;
> .left {
width: 55%;
background-size: cover;
background-position: center center;
width: 38vw;
height: 56vh;
min-height: 450px;
margin: 7vh 6.8vw 0 4.2vw;
> img {
width: 100%;
height: 100%;
}
}
> .right {
width: 45%;
display: flex;
align-items: center;
justify-content: center;
.imgBox {
display: flex;
margin-bottom: 10px;
img {
width: 160px;
height: 100px;
}
margin-top: 158px;
> .title {
width: 228px;
height: 9vh;
font-size: 36px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #1478f6;
line-height: 50px;
}
> .login {
// width: 60%;
margin-top: 6vh;
}
}
}

View File

@ -1,172 +0,0 @@
/**
desc 业务中心
*/
<template>
<div class="workbench">
<h3 class="workbench-title">全部应用</h3>
<el-tabs>
<el-tab-pane
v-for="(item, index) in routeData"
:key="index"
:label="item.meta ? item.meta.title : ''"
v-if="item.meta"
>
<div class="menuContainer">
<div
v-for="(list, listIndex) in item.children"
class="menuBox"
@click="goRoute(item, list)"
v-if="!list.meta.hidden"
>
<img class="menuIcon" :src="list.meta.icon" v-if="list.meta.icon" />
<img class="menuIcon" src="../logo1.png" v-else />
<p class="menuContent">{{ list.meta.title }}</p>
</div>
</div>
</el-tab-pane>
</el-tabs>
</div>
</template>
<script>
import { TagsView } from "@/layout/components";
import request from "@/utils/request";
export default {
name: "ApplicationCenter",
components: {
TagsView,
},
created() {
this.$store.dispatch("settings/changeSetting", {
key: "showTagsView",
value: true,
});
},
data() {
return {
routeData: [], //
};
},
mounted() {
let routeList = localStorage.getItem("routeList")
? JSON.parse(localStorage.getItem("routeList"))
: [];
this.routeData = this.OrganizeMenus(routeList);
},
methods: {
goRoute(val, item) {
let routeData = this.$router.resolve({
path: item.path,
name: item.name,
query: { mdmCode: item.meta.mdmCode, viewType: item.meta.viewType },
});
window.open(routeData.href, "_self");
},
// icon
handlerIcon(item) {
let str = "";
if (item.includes("?")) {
str = item.split("?")[1];
} else {
str = item;
}
return str;
},
handlerIconColor(item) {
let color = "";
if (item.includes("?")) {
color = item.split("?")[0];
} else {
color = "#1478F6";
}
return color;
},
//
OrganizeMenus(data) {
let arrData = [];
//
let arrID = ["688293d5d76e432487f7516bf969a822"];
arrID.forEach((a) => {
data.forEach((b) => {
if (a === b.id) {
arrData.push(b);
}
});
});
arrData.forEach((bItem) => {
if (bItem.children && bItem.children.length > 0) {
bItem.children.forEach((cItem) => {
if (cItem.meta.icon) {
this.getLogoUrl(cItem.meta.icon).then((res) => {
let imageUrl =
"data:image/png/jpg;base64," +
btoa(
new Uint8Array(res).reduce(
(el, byte) => el + String.fromCharCode(byte),
""
)
);
this.$set(cItem.meta, "icon", imageUrl);
});
}
});
}
});
return arrData;
},
getLogoUrl(id) {
return request({
url:
"/kangarooDataCenterV3/entranceController/fileDownloadNew?id=" + id,
method: "get",
responseType: "arraybuffer",
}).then((res) => {
return res;
});
},
},
};
</script>
<style lang="scss" scoped>
.workbench {
background: #fff;
padding: 15px;
//margin: 0 10px;
}
.workbench-title {
margin: 15px 0;
}
.menuContainer {
display: flex;
flex-wrap: wrap;
background-color: #fff;
}
.menuBox {
display: flex;
align-items: center;
background: #fafafa;
padding: 10px 15px;
border-radius: 10px;
width: 200px;
margin: 10px;
cursor: pointer;
}
.menuIcon {
width: 36px;
height: 36px;
line-height: 36px;
border-radius: 12px;
margin-right: 10px;
}
.menuContent {
font-size: 14px;
color: #333333;
}
</style>

View File

@ -551,7 +551,7 @@ export default {
'nameEn': 'delOperate',
'menuId': '936df6d1cd7e4f9ba4c972e0f84b5ab4',
'iconName': 'el-icon-delete',
'style': 'danger',
'styles': 'danger',
'btnFunction': 'delOperate',
'remark': null,
'userId': null,

View File

@ -274,7 +274,7 @@ export default {
},
{
label: '映射档案',
prop: 'mappingFileName'
prop: ''
},
{
label: '备注',
@ -421,7 +421,7 @@ export default {
clickRowKey: '',
activeTabs: '元数据属性',
tabItem: ['元数据属性', '固定值'],
arithmeticArr: ['+', '-', '*', '/', '->', '==', '(', ')', '<', '>', '<=', '>=', 'substr(,,)','if(*?:)'],
arithmeticArr: ['+', '-', '*', '/', '->', '==', '(', ')', '<', '>', '<=', '>=', 'substr(,,)'],
fixedValueForm: [
{
elCol: [
@ -579,7 +579,7 @@ export default {
}
let obj = this.$refs.baseChoice2.optionData
this.$set(this.$refs.fixedValueFormRefsName.ruleForm, 'recordData', obj[this.fixedValueClickRow.namefieldname])
this.textarea += `@@$${this.fixedValueClickRow.dbName}:id=${obj.id}`
this.textarea += `@@$${this.fixedValueClickRow.dbName}:${this.fixedValueClickRow.tablepkname}=${obj[this.fixedValueClickRow.tablepkname]}`
// this.$set(this.clickRow, `factorid${this.clickNum}`, this.$refs.baseChoice.optionData[this.clickObj.key])
// this.$set(this.clickRow, `factorname${this.clickNum}`, this.$refs.baseChoice.optionData[this.clickObj.labelKey])
// this.$set(this.clickRow, `factorpk${this.clickNum}`, this.$refs.baseChoice.optionData['id'])
@ -985,7 +985,7 @@ export default {
'nameEn': 'delOperate',
'menuId': '936df6d1cd7e4f9ba4c972e0f84b5ab4',
'iconName': 'el-icon-delete',
'style': 'danger',
'styles': 'danger',
'btnFunction': 'delOperate',
'remark': null,
'userId': null,

View File

@ -595,7 +595,7 @@ export default {
'nameEn': 'delOperate',
'menuId': '936df6d1cd7e4f9ba4c972e0f84b5ab4',
'iconName': 'el-icon-delete',
'style': 'danger',
'styles': 'danger',
'btnFunction': 'delOperate',
'remark': null,
'userId': null,

View File

@ -41,10 +41,8 @@ module.exports = {
[process.env.VUE_APP_BASE_API]: {
// target: `http://hzya.ufyct.com:9067/`,
// target: `http://127.0.0.1:9081/`,
target: `http://192.168.2.189:10087`,//一凡
// target: `http://8.136.10.42:10086`,//一凡
target: `http://192.168.2.189:10086`,//一凡
// target: `http://192.168.2.78:8080`,
// target: `http://b8bc6e8e.natappfree.cc`,
changeOrigin: true,
pathRewrite: {
['^' + process.env.VUE_APP_BASE_API]: ''