Browse Source

列表字段配置版本暂存

noToken
安虹睿 1 year ago
parent
commit
86a13d13f0
  1. 29
      PC/InterFace.Dash/public/config.js
  2. 3
      PC/InterFace.Dash/src/api/wms-interface.js
  3. 30
      PC/InterFace.Dash/src/components/commonTabel-drawer/index.vue
  4. 7
      PC/InterFace.Dash/src/components/filterForDetailPage/index.vue
  5. 19
      PC/InterFace.Dash/src/components/rowDrop/index.vue
  6. 10
      PC/InterFace.Dash/src/components/tablePagination/index.vue
  7. 44
      PC/InterFace.Dash/src/components/umyTable/index.vue
  8. 45
      PC/InterFace.Dash/src/mixins/TableMixins.js
  9. 8
      PC/InterFace.Dash/src/mixins/mixins.js
  10. 8
      PC/InterFace.Dash/src/permission.js
  11. 9
      PC/InterFace.Dash/src/router/modules/interfaceBoard.js
  12. 9
      PC/InterFace.Dash/src/utils/baseData/urlOption.js
  13. 2
      PC/InterFace.Dash/src/utils/defaultButtons.js
  14. 27
      PC/InterFace.Dash/src/utils/detailsTableColumns_api/index.js
  15. 30
      PC/InterFace.Dash/src/utils/tableColumns_api/index.js
  16. 23
      PC/InterFace.Dash/src/utils/tabsDesTions_api/index.js
  17. 2
      PC/InterFace.Dash/src/views/dashboard/index.vue
  18. 90
      PC/InterFace.Dash/src/views/interfaceBoard/AsnMstr.vue
  19. 2
      PC/InterFace.Dash/src/views/interfaceBoard/demo_detail_addbase.vue
  20. 2
      PC/InterFace.Dash/src/views/interfaceBoard/demo_read.vue

29
PC/InterFace.Dash/public/config.js

@ -1,35 +1,10 @@
// dev_win
window.SITE_CONFIG['base'] = 'http://dev.ccwin-in.com:60068'
// window.SITE_CONFIG['base'] = 'http://192.168.0.197:60068'
window.SITE_CONFIG['columnsApiNames'] = '/api/abp/application-configuration'
window.SITE_CONFIG['columnsApiNames'] = '/api/abp/application-localization'
// window.SITE_CONFIG['columnsApiNames'] = '/api/abp/application-configuration'
window.SITE_CONFIG['columnsApiNamesZh'] = 'Z'
window.SITE_CONFIG['isAutoLogin'] = true
window.SITE_CONFIG['isSinglePage'] = false
window.SITE_CONFIG['userNameOrEmailAddress'] = 'admin'
window.SITE_CONFIG['client_secret'] = '1q2w3E*'
// window.SITE_CONFIG['user'] = 'http://dev.ccwin-in.com:60069/api'
// // window.SITE_CONFIG['print'] = 'print'21384
// window.SITE_CONFIG['print'] = 'http://dev.ccwin-in.com:60074'
// window.SITE_CONFIG['largeScreen'] = 'http://dev.ccwin-in.com:60073'
// window.SITE_CONFIG['warehouseCode'] = 'T8'
// window.SITE_CONFIG['company'] = 'DongYang'
// window.SITE_CONFIG['client_secret'] = '1q2w3E*'
// window.SITE_CONFIG['reportsUrl'] = 'http://dev.ccwin-in.com:60074/#/reports/'
// window.SITE_CONFIG['versionUrl'] = 'http://dev.ccwin-in.com:60070'
// window.SITE_CONFIG['companyName'] = '长春一汽富维东阳汽车塑料零部件(安徽)有限公司'
// 接口看板地址
// window.SITE_CONFIG['interfaceBoardUrl'] = 'http://dev.ccwin-in.com:60090/'
// window.SITE_CONFIG['interfaceBoardUrl'] = 'http://dev.ccwin-in.com:60069/'
// 接口看板表头获取地址
// window.SITE_CONFIG['interfaceBoardColumnsApi'] = 'api/abp/application-configuration'
// mock
// window.SITE_CONFIG['apifoxToken'] = 'NXHNi5mp0dnUHGt0wkCrjvfcidsFKV33'
// window.SITE_CONFIG['base'] = 'https://mock.apifox.cn/m1/1773588-0-default'
// window.SITE_CONFIG['user'] = 'http://dev.ccwin-in.com:60099/api/auth'
// window.SITE_CONFIG['print'] = 'print'
// window.SITE_CONFIG['largeScreen'] = 'http://dev.ccwin-in.com:60073'
// window.SITE_CONFIG['warehouseCode'] = 'T8'
// window.SITE_CONFIG['company'] = 'DongYang'
// window.SITE_CONFIG['client_secret'] = '1q2w3E*'
// window.SITE_CONFIG['reportsUrl'] = 'http://10.164.0.227:59091/#/reports/'

3
PC/InterFace.Dash/src/api/wms-interface.js

@ -16,7 +16,8 @@ export function getInterfaceBoard() {
return request({
method:'get',
url: base_api + colum_url,
params:{IncludeLocalizationResources:true}
params:{CultureName:'zh-Hans'}
// params:{IncludeLocalizationResources:true}
})
}

30
PC/InterFace.Dash/src/components/commonTabel-drawer/index.vue

@ -66,7 +66,20 @@
:propsData="propsData"
>
</curren-descriptions>
<rowDrop
@radio="rowDrop"
:tableColumns="tableColumns"
:visible="rowDropVisible"
@closeRowDrop="closeRowDrop"
></rowDrop>
<!-- currenTableDetails 组件 明细中带分页功能 -->
<!-- 字段设置弹窗 -->
<!-- <div
class="mx-header"
v-if="scope.value == 'mx'"
>
<el-button @click="columnsSettingHandle()">字段设置</el-button>
</div> -->
<umyTable
v-if="scope.value == 'mx'"
:tableBorder="true"
@ -175,6 +188,7 @@ import currenDescriptions from "@/components/currenDescriptions"
import currenTabs from "@/components/currenTabs"
import currenTable from "@/components/currenTable"
import pagination from "@/components/Pagination"
import rowDrop from "@/components/rowDrop/index.vue"
export default {
name: 'currenTabel-drawer',
components: {
@ -183,6 +197,7 @@ export default {
currenDescriptions,
currenTabs,
currenTable,
rowDrop
},
props: {
title: {
@ -331,6 +346,8 @@ export default {
},
data () {
return {
// -
rowDropVisible: false,
otherData:[], // tabs
zdyTableColumns:[], //
zdyValue:'', //
@ -352,7 +369,18 @@ export default {
}
},
methods: {
rowDrop(data) {
this.$emit('rowDrop',data)
// this.isUpdate = !this.isUpdate
},
//
columnsSettingHandle(){
this.rowDropVisible = !this.rowDropVisible
},
//
closeRowDrop() {
this.rowDropVisible = false
},
handleCommand (command) {
this.$emit('handleCommand', command)
},

7
PC/InterFace.Dash/src/components/filterForDetailPage/index.vue

@ -46,6 +46,7 @@
label="操作"
:align="'center'"
width="150"
fixed="right"
>
<template slot-scope="scope">
<span v-for="item in operaButtons" style="margin: 0 10px;">
@ -198,6 +199,8 @@ data () {
return {
dialogShow:true,
URLOption_detailList:allUrlOption[this.$route.name].detailListURL,//-
URLOption_masterId:allUrlOption[this.$route.name].masterId || 'masterId',//-id
URLOption_masterName:allUrlOption[this.$route.name].masterName,//-//-title
URLOption_parent:allUrlOption[this.$route.name].parentURL ? allUrlOption[this.$route.name].parentURL : allUrlOption[this.$route.name].detailURL,//-
currenButtonData: [],//
operaButtons:[],//
@ -256,10 +259,10 @@ methods: {
},
//
showParentHandleForDetail(data){
this.showParentTitle = `[${data.studentName}] 主表信息`
this.showParentTitle = `${data[this.URLOption_masterName]} 主表信息`
this.showParentDialog = true
this.showParentLoading = true
getListDesById(this.URLOption_parent,data.masterId)
getListDesById(this.URLOption_parent,data[this.URLOption_masterId])
.then(res => {
this.showParentTableData = res
this.showParentLoading = false

19
PC/InterFace.Dash/src/components/rowDrop/index.vue

@ -54,12 +54,14 @@ export default {
},
data() {
return {
historyTableColumns:null,
name: null,
oldData: null,
newData: null,
dataList: [],
// allSelect hasSelect NoSelect
allSeletType:'NoSelect',
userName:JSON.parse(localStorage.getItem('currentUserInfo')).userName
}
},
props: {
@ -77,6 +79,7 @@ export default {
},
},
mounted() {
this.historyTableColumns = JSON.parse(JSON.stringify(this.tableColumns))
this.formatData(this.tableColumns)
this.initSelectSta()
},
@ -88,10 +91,11 @@ export default {
type: 'warning',
cancelButtonClass:'rowDropNotHideItem'
}).then(() => {
// set
localStorage.setItem('tableColumns_' + this.$store.getters.name.userName + '_' + this.$route.name, JSON.stringify([]))
localStorage.removeItem('tableColumns_' + this.$store.getters.name.userName + '_' + this.$route.name)
let _resetCol = this.$isTableColumns[this.$route.name]
// set this.$store.getters.name.userName
localStorage.setItem('tableColumns_' + this.userName + '_' + this.$route.name, JSON.stringify([]))
localStorage.removeItem('tableColumns_' + this.userName + '_' + this.$route.name)
// let _resetCol = this.$isTableColumns[this.$route.name]
let _resetCol = this.historyTableColumns
_resetCol.forEach(item => {
item.istrue = true
})
@ -119,7 +123,7 @@ export default {
this.$forceUpdate()
this.$emit('radio',this.dataList)
// +
localStorage.setItem('tableColumns_' + this.$store.getters.name.userName + '_' + this.$route.name, JSON.stringify(this.dataList))
localStorage.setItem('tableColumns_' + this.userName + '_' + this.$route.name, JSON.stringify(this.dataList))
},
dragstart(value) {
this.oldData = value
@ -149,9 +153,12 @@ export default {
},
// item
rediochange(index){
this.dataList[index].istrue = !this.dataList[index].istrue
// this.dataList[index].istrue = !this.dataList[index].istrue
this.$set(this.dataList[index],'istrue', !this.dataList[index].istrue)
this.initSelectSta()
this.$nextTick(()=>{
this.save()
})
},
//
initSelectSta(){

10
PC/InterFace.Dash/src/components/tablePagination/index.vue

@ -49,6 +49,7 @@
@sortChange="sortChange"
@handleSelectionChange="handleSelectionChange"
@inlineDialog="inlineDialog"
:buttonOperationList="buttonOperationList"
@buttonOperationClick="buttonOperationClick"
:tableBorder="true"
:firstFixed="true"
@ -107,6 +108,11 @@ export default {
return []
}
},
//
buttonOperationList:{
type: Array,
default: null,
},
//
tableData: {
type: Array,
@ -322,8 +328,8 @@ export default {
this.$emit('sortChange', data)
},
//table
buttonOperationClick(row, index, label) {
this.$emit("buttonOperationClick", row, index, label);
buttonOperationClick(row, item, index) {
this.$emit("buttonOperationClick", row, item, index);
},
//
// /showSearchOverall

44
PC/InterFace.Dash/src/components/umyTable/index.vue

@ -19,6 +19,27 @@
header-row-class-name="uTableHeader"
>
<!-- :tree-props="treeProps" height 不能共存 此组件暂不支持tree的格式-->
<!-- 操作列 -->
<u-table-column
v-if="buttonOperationList"
:fixed="'left'"
:width="120"
:align="'center'"
:header-align="'center'"
>
<template #header>
<span>操作</span>
</template>
<template slot-scope="scope">
<el-button
v-for="(itemButton, indexButton) in buttonOperationList"
:key="indexButton"
type="text"
size="mini"
@click="buttonOperationClick(scope.row, itemButton, indexButton)"
>{{itemButton.label}}</el-button>
</template>
</u-table-column>
<u-table-column v-if="selectionTable" fixed="left" type="selection" :reserve-selection="true" />
<u-table-column v-if="isShowIndex" type="index" fixed="left" label="序号" width="50" />
<template v-for="(item, index) in TableSize">
@ -258,17 +279,6 @@
</div>
<!-- </el-form-item> -->
<!-- table表添加操作列 -->
<div v-if="item.type == 'buttonOperation'">
<el-button
class="buttonOperation-btn"
v-for="(itemButton, indexButton) in item.buttonText.split('|')"
:key="indexButton"
type="text"
size="mini"
@click="buttonOperationClick(scope.row, item.buttonName.split('|')[indexButton])"
>{{itemButton}}</el-button>
</div>
<span v-if="item.type == 'object'">
{{ scope.row[item.prop] ? scope.row[item.prop][item.showProp] : "" }}
</span>
@ -432,6 +442,11 @@ export default {
},
},
props: {
//
buttonOperationList:{
type: Array,
default: null,
},
//
showOverflowTooltip:{
type: Boolean,
@ -867,8 +882,8 @@ export default {
this.$emit("buttonClick", row, index, label);
},
//table
buttonOperationClick(row, label) {
this.$emit("buttonOperationClick", row, label);
buttonOperationClick(row, item, index) {
this.$emit("buttonOperationClick", row, item, index);
},
},
};
@ -911,9 +926,6 @@ export default {
.el-table__fixed-right::before {
z-index: auto !important;
}
.buttonOperation-btn{
padding: 0;
}
.spamHover {
color: #409eff;
cursor: pointer;

45
PC/InterFace.Dash/src/mixins/TableMixins.js

@ -38,6 +38,10 @@ export const tableMixins = {
tableDataDetails:[],
//默认tag
firstTabs:'xq',
// api的表头原始数据
apiColumns_Table_copy:null,
apiColumns_DesTions_copy:null,
apiColumns_DetailsTable_copy:null,
// api的表头数据
apiColumns_Table:null,
apiColumns_DesTions:null,
@ -46,9 +50,34 @@ export const tableMixins = {
URLOption_base:allUrlOption[this.$route.name].baseURL,
//主表-明细
URLOption_detail:allUrlOption[this.$route.name].detailURL,
// 主表-操作列
operationButtonsTable:[{label:'查看详情',name:'info'}]
}
},
mounted() {
// 用于api表头的字段设置监听同步
window.addEventListener('setItemEvent', (item) => {
if (item.key.indexOf('tableColumns') > -1) {
if(JSON.parse(item.newValue).length <= 0){
this.apiColumns_Table = this.apiColumns_Table_copy[this.$route.name]
}else{
this.apiColumns_Table = JSON.parse(item.newValue)
}
}
})
},
methods: {
// 获取通过api的表头数据,不可以在初始化处理,因为接口返回问题
initApiColumns(tableColumns_api,tabsDesTions_api,detailsTableColumns_api){
// 复制一份原始数据(目的:字段设置恢复)
this.apiColumns_Table_copy = JSON.parse(JSON.stringify(tableColumns_api))
this.apiColumns_DesTions_copy = JSON.parse(JSON.stringify(tabsDesTions_api))
this.apiColumns_DetailsTable_copy = JSON.parse(JSON.stringify(detailsTableColumns_api))
// 赋值表头数据
this.apiColumns_Table = this.initTableColumns(tableColumns_api[this.$route.name])
this.apiColumns_DesTions = tabsDesTions_api[this.$route.name]
this.apiColumns_DetailsTable = detailsTableColumns_api[this.$route.name]
},
//渲染数据
paging(callback) {
this.Loading.tableLoading = true;
@ -212,13 +241,18 @@ export const tableMixins = {
/**
*
* @param {*} row 当前行数据
* @param {*} label 按钮name
* @param {*} item 按钮信息
* @param {*} index 按钮索引
*/
buttonOperationClick(row, label) {
buttonOperationClick(row, item, index) {
// 获取当前行数据,赋值给 propsData
this.propsData = row
if (label == "edit") {
// 查看详情
if (item.name == "info") {
this.inlineDialog(row)
}
// 编辑
if (item.name == "edit") {
this.formTitle = this.$route.meta.title + "编辑";
this.formReveal = false
this.theEvent = "edit"
@ -234,7 +268,8 @@ export const tableMixins = {
}
this.displayDialog.editDialog = true
}
if (label == 'delete') {
// 删除
if (item.name == 'delete') {
this.$confirm('此操作将永久删除该消息, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',

8
PC/InterFace.Dash/src/mixins/mixins.js

@ -54,11 +54,11 @@ export const mixins = {
},
methods: {
// 结合默认及缓存中的列表tableColumns数据做初始化
initTableColumns(){
let _list_defalut = this.$isTableColumns[this.$route.name]
initTableColumns(columnsData){
let _list_defalut = columnsData ? columnsData : this.$isTableColumns[this.$route.name]
if(!_list_defalut)return
let _local = localStorage.getItem('tableColumns_' + this.$store.getters.name.userName + '_' + this.$route.name)
let _list_local = JSON.parse(localStorage.getItem('tableColumns_' + this.$store.getters.name.userName + '_' + this.$route.name))
let _local = localStorage.getItem('tableColumns_' + JSON.parse(localStorage.getItem('currentUserInfo')).userName + '_' + this.$route.name)
let _list_local = JSON.parse(localStorage.getItem('tableColumns_' + JSON.parse(localStorage.getItem('currentUserInfo')).userName + '_' + this.$route.name))
let _new_list = [] //格式化后的数据
// 如果没有缓存则直接为默认值
if(!_local){

8
PC/InterFace.Dash/src/permission.js

@ -39,6 +39,7 @@ router.beforeEach(async (to, from, next) => {
isAutoLogin = JSON.parse(_url_isAutoLogin)
}
let userInfo = localStorage.getItem('currentUserInfo')
let _zh = localStorage.getItem('columnsApiNamesZh')
// 是否有用户信息:
// 1、如果没有判断是否为自动登录(是自动登录则自动执行登录,账号密码为配置信息中的值,不是自动登录则跳到登录页)
// 2、如果有用户信息:则检查是否有api接口的表头数据,没有的话重新获取
@ -55,6 +56,7 @@ router.beforeEach(async (to, from, next) => {
// login(loginForm).then(()=>{
let _username = to.query.loginName ? to.query.loginName : localStorage.getItem("userNameOrEmailAddress")
getUsersByUserName(_username).then(res=>{
// todo:currentUserInfo全程需要优化
localStorage.setItem("currentUserInfo", JSON.stringify(res));
})
.catch(err => {
@ -62,7 +64,7 @@ router.beforeEach(async (to, from, next) => {
})
// 提前获取接口监控看板表头数据并存储
getInterfaceBoard().then(result => {
localStorage.setItem("interfaceBoardColumnsNames", JSON.stringify(result.localization.values.Winin));
localStorage.setItem("interfaceBoardColumnsNames", JSON.stringify(result.resources[_zh].texts));
next('/')
})
.catch(err => {
@ -85,8 +87,8 @@ router.beforeEach(async (to, from, next) => {
// const _interfaceBoardColumnsNames = localStorage.getItem("interfaceBoardColumnsNames")
// if( !_interfaceBoardColumnsNames || _interfaceBoardColumnsNames == 'undefined' || _interfaceBoardColumnsNames == 'null'){
getInterfaceBoard().then(result => {
let _zh = localStorage.getItem('columnsApiNamesZh')
localStorage.setItem("interfaceBoardColumnsNames", JSON.stringify(result.localization.values[_zh]));
// todo-new:columnsApiNamesZh配置的地址补全(evel)
localStorage.setItem("interfaceBoardColumnsNames", JSON.stringify(result.resources[_zh].texts));
setTimeout(()=>{
next()
},0)

9
PC/InterFace.Dash/src/router/modules/interfaceBoard.js

@ -11,6 +11,15 @@ const interfaceBoardRouter = {
roles:'skip'
},
children: [{
path: 'AsnMstr',
name: 'AsnMstr',
component: () => import('@/views/interfaceBoard/AsnMstr'),
meta: {
title: initFromApiColumnsLable('AsnMstr'),
icon: '用户',
roles: 'skip'
}
},{
path: 'IncomingData',
name: 'IncomingData',
component: () => import('@/views/interfaceBoard/IncomingData'),

9
PC/InterFace.Dash/src/utils/baseData/urlOption.js

@ -18,6 +18,15 @@ export const ExportCustomUserSetting = {
detailURL:'app/export-custom-user-setting',//主表-明细 + 明细-查看主表
}
// 接口看板管理-AsnMstr
export const AsnMstr = {
baseURL:'AsnMstr/base',//主表-列表
detailURL:'app/asn-mstr',//主表-明细 + 明细-查看主表
detailListURL:'AsnDet/base',//明细-列表,
masterId:'asnMstrId',//明细获取主表信息的masterId
masterName:'asnNbr'//明细获取主表信息的title名称
}
// 接口看板管理-IncomingData
export const IncomingData = {
baseURL:'IncomingData/base',//主表-列表

2
PC/InterFace.Dash/src/utils/defaultButtons.js

@ -42,7 +42,7 @@ export function defaultExportBtn(option) {
// 字段设置
export function defaultFieldSettingBtn(option) {
// todo:监听已经配置过的字段按钮更改状态特殊显示
let _local = localStorage.getItem('tableColumns_' + this.$store.getters.name.userName + '_' + this.$route.name)
let _local = localStorage.getItem('tableColumns_' + JSON.parse(localStorage.getItem('currentUserInfo')).userName + '_' + this.$route.name)
let _type = ''
let _num = 0
if(_local){

27
PC/InterFace.Dash/src/utils/detailsTableColumns_api/index.js

@ -1,7 +1,32 @@
// 此文件为【明细 - 列表】表头从接口缓存的表头
// 此文件为【列表 - 明细】+【明细 - 列表】表头从接口缓存的表头
import { initFromApiColumnsLable } from '@/utils/index'
// AsnMstr
export const AsnMstr = [
{ label: initFromApiColumnsLable('AsnDetAsnMstrId'), prop: "asnMstrId"},
{ label: initFromApiColumnsLable('AsnDetAsnNbr'), prop: "asnNbr" },
{ label: initFromApiColumnsLable('AsnDetEntireBarCode'), prop: "creationTime",type:'dateTime' },
{ label: initFromApiColumnsLable('AsnDetLabelCode'), prop: "labelCode" },
{ label: initFromApiColumnsLable('AsnDetLocUm'), prop: "locUm" },
{ label: initFromApiColumnsLable('AsnDetLot'), prop: "lot" },
{ label: initFromApiColumnsLable('AsnDetPalletLabelCode'), prop: "palletLabelCode" },
{ label: initFromApiColumnsLable('AsnDetPartCode'), prop: "partCode" },
{ label: initFromApiColumnsLable('AsnDetPartType'), prop: "partType" },
{ label: initFromApiColumnsLable('AsnDetPoLine'), prop: "poLine" },
{ label: initFromApiColumnsLable('AsnDetPoNbr'), prop: "poNbr" },
{ label: initFromApiColumnsLable('AsnDetPoUm'), prop: "poUm" },
{ label: initFromApiColumnsLable('AsnDetProductionDate'), prop: "productionDate" },
{ label: initFromApiColumnsLable('AsnDetQty'), prop: "qty" },
{ label: initFromApiColumnsLable('AsnDetRemark'), prop: "remark" },
{ label: initFromApiColumnsLable('AsnDetStatus'), prop: "status" },
{ label: initFromApiColumnsLable('AsnDetStdPackQty'), prop: "stdPackQty" },
{ label: initFromApiColumnsLable('AsnDetSupplierlot'), prop: "supplierlot" },
{ label: initFromApiColumnsLable('AsnDetUmConv'), prop: "umConv" },
{ label: initFromApiColumnsLable('AsnDetWareClass'), prop: "wareClass" },
{ label: initFromApiColumnsLable('AsnDetWareCode'), prop: "wareCode" },
]
// 测试数据
export const TestSchool = [
{ label: initFromApiColumnsLable('TestStudentDetailStudentName'), prop: "studentName" },

30
PC/InterFace.Dash/src/utils/tableColumns_api/index.js

@ -11,6 +11,36 @@ export const ExportCustomUserSetting = [
{ label: initFromApiColumnsLable('ExportCustomUserSettingExportUserName'), prop: "exportUserName",type:'dateTime' },
]
// AsnMstr
export const AsnMstr = [
{ label: initFromApiColumnsLable('AsnMstrAsnNbr'), prop: "asnNbr", fixed:'left'},
{ label: initFromApiColumnsLable('AsnMstrCompany'), prop: "company" },
{ label: initFromApiColumnsLable('AsnMstrContacts'), prop: "contacts" },
{ label: initFromApiColumnsLable('AsnMstrDock'), prop: "dock" },
{ label: initFromApiColumnsLable('AsnMstrDueDate'), prop: "dueDate",type:'dateTime' },
{ label: initFromApiColumnsLable('AsnMstrErrorCode'), prop: "errorCode" },
{ label: initFromApiColumnsLable('AsnMstrErrorMessage'), prop: "errorMessage", type:"showDetail" },
{ label: initFromApiColumnsLable('AsnMstrPhone'), prop: "phone" },
{ label: initFromApiColumnsLable('AsnMstrPoNbr'), prop: "poNbr" },
{ label: initFromApiColumnsLable('AsnMstrRemark'), prop: "remark" },
{ label: initFromApiColumnsLable('AsnMstrRpNbr'), prop: "rpNbr" },
{ label: initFromApiColumnsLable('AsnMstrShipDate'), prop: "shipDate" ,type:'dateTime' },
{ label: initFromApiColumnsLable('AsnMstrSite'), prop: "site" },
{ label: initFromApiColumnsLable('AsnMstrStatus'), prop: "status" },
{ label: initFromApiColumnsLable('AsnMstrTimeWindow'), prop: "timeWindow" },
{ label: initFromApiColumnsLable('AsnMstrTraceId'), prop: "traceId" },
{ label: initFromApiColumnsLable('AsnMstrTruckNbr'), prop: "truckNbr" },
{ label: initFromApiColumnsLable('AsnMstrVendorCode'), prop: "vendorCode" },
{ label: initFromApiColumnsLable('AsnMstrWhse'), prop: "whse" },
// {
// label: '操作',
// type:"buttonOperation",
// buttonText:'查看详情',
// buttonName:'info',
// fixed: "right",
// },
]
// IncomingData
export const IncomingData = [
{ label: initFromApiColumnsLable('IncomingDataCompany'), prop: "company" },

23
PC/InterFace.Dash/src/utils/tabsDesTions_api/index.js

@ -11,6 +11,29 @@ export const ExportCustomUserSetting = [
{ label: initFromApiColumnsLable('ExportCustomUserSettingExportUserName'), prop: "exportUserName",type:'dateTime' },
]
// AsnMstr
export const AsnMstr = [
{ label: initFromApiColumnsLable('AsnMstrAsnNbr'), prop: "asnNbr" },
{ label: initFromApiColumnsLable('AsnMstrCompany'), prop: "company" },
{ label: initFromApiColumnsLable('AsnMstrContacts'), prop: "contacts" },
{ label: initFromApiColumnsLable('AsnMstrDock'), prop: "dock" },
{ label: initFromApiColumnsLable('AsnMstrDueDate'), prop: "dueDate",type:'dateTime' },
{ label: initFromApiColumnsLable('AsnMstrErrorCode'), prop: "errorCode" },
{ label: initFromApiColumnsLable('AsnMstrErrorMessage'), prop: "errorMessage", type:"showDetail" },
{ label: initFromApiColumnsLable('AsnMstrPhone'), prop: "phone" },
{ label: initFromApiColumnsLable('AsnMstrPoNbr'), prop: "poNbr",type:'dateTime' },
{ label: initFromApiColumnsLable('AsnMstrRemark'), prop: "remark" },
{ label: initFromApiColumnsLable('AsnMstrRpNbr'), prop: "rpNbr" },
{ label: initFromApiColumnsLable('AsnMstrShipDate'), prop: "shipDate" ,type:'dateTime' },
{ label: initFromApiColumnsLable('AsnMstrSite'), prop: "site" },
{ label: initFromApiColumnsLable('AsnMstrStatus'), prop: "status" },
{ label: initFromApiColumnsLable('AsnMstrTimeWindow'), prop: "timeWindow" },
{ label: initFromApiColumnsLable('AsnMstrTraceId'), prop: "traceId" },
{ label: initFromApiColumnsLable('AsnMstrTruckNbr'), prop: "truckNbr" },
{ label: initFromApiColumnsLable('AsnMstrVendorCode'), prop: "vendorCode" },
{ label: initFromApiColumnsLable('AsnMstrWhse'), prop: "whse" },
]
// 测试数据
export const TestSchool = [
{ label: initFromApiColumnsLable('TestSchoolSchoolName'), prop: "schoolName", fixed: "left", type: "name" },

2
PC/InterFace.Dash/src/views/dashboard/index.vue

@ -178,7 +178,7 @@
display: flex;
padding-top: 10px;
.title{
width: 180px;
width: 240px;
text-align: right;
font-weight: bold;
flex-shrink: 0;

90
PC/InterFace.Dash/src/views/interfaceBoard/TestSchool.vue → PC/InterFace.Dash/src/views/interfaceBoard/AsnMstr.vue

@ -23,6 +23,8 @@
:primarySearchOption="primarySearchOption"
@overallSearchFormClick="overallSearchFormClick"
:httpOverallSearchData="httpOverallSearchData"
@buttonOperationClick="buttonOperationClick"
:buttonOperationList="operationButtonsTable"
></tablePagination>
<curren-Drawer
:title="apiColumns_DesTions"
@ -30,8 +32,8 @@
:tabsDesTions="apiColumns_DesTions"
:DrawerLoading="Loading.DrawerLoading"
:drawer="displayDialog.detailsDialog"
:dropdownData="dropdownData"
:propsData="propsData"
:Butttondata="[]"
@drawerShut="(val) => (displayDialog.detailsDialog = val)"
@drawerbutton="drawerbutton"
@handleCommand="drawerHandle"
@ -42,31 +44,12 @@
@alterResultCountDetails="alterResultCountDetails"
@alertoldSkipCountDetails="alertoldSkipCountDetails"
></curren-Drawer>
<!-- 新增与编辑 -->
<newAndEdiDialog
:loading="Loading.newAndEdiLoading"
:active="active"
:pageStatus="pageStatus"
:formReveal="formReveal"
:formTitle="formTitle"
:displayDialog="editDialog"
:FormData="formReveal ? CreateFormData : editFormData"
:Form="formReveal ? CreateForm : editForm"
:Options="editOptions"
:Handle="editHandle"
:Rules="formReveal ? editRules.cerateRule : editRules.editRule"
@FormSubmit="FormSubmit"
@close="FormClose"
@goBack="goBack"
></newAndEdiDialog>
<filterForDetailPage
v-if="filterForDetailShow"
:listColumns="apiColumns_DetailsTable"
:parentColumns="apiColumns_Table"
@closeDialog="changeFilterForDetailShow"
></filterForDetailPage>
<!-- DeleteApi="TestSchoolDetailList_delete" -->
<!-- todo: 明细查询中的parentColumns 是否需要独立表头现与列表页面一致-->
</div>
</template>
<script>
@ -74,7 +57,6 @@ import { tableMixins } from "@/mixins/TableMixins";
import { LoadingMixins } from "@/mixins/LoadingMixins";
import { drawerMixins } from "@/mixins/drawerMixins"
import { TableHeaderMixins } from "@/mixins/TableHeaderMixins";
import { newAndEdiDialogMixins } from "@/mixins/newAndEdiDialogMixins"
import { mixins } from "@/mixins/mixins";
import { filterSelectMixins } from '@/mixins/filter-Select'
import { getToken } from '@/utils/auth'
@ -84,7 +66,7 @@ import * as detailsTableColumns_api from "@/utils/detailsTableColumns_api/index
export default {
name: "TestSchool",
name: "AsnMstr",
mixins: [
tableMixins,
LoadingMixins,
@ -92,88 +74,28 @@ export default {
TableHeaderMixins,
mixins,
filterSelectMixins,
newAndEdiDialogMixins
],
computed: {
editDialog: {
get: function () {
return this.displayDialog.newDialog || this.displayDialog.editDialog;
},
},
},
data() {
return {
//
currenButtonData: [
this.defaultAddBtn(),//
this.defaultExportBtn({
isRedundance:true,
isDetailExport:true
}),//
this.defaultFieldSettingBtn(),//
this.defaultFreshBtn(),//
this.defaultFilterBtn(),//
this.defaultFilterForDetailBtn()//
],
//
filterForDetailShow:false,
//
CreateFormData: {
schoolName:null,
orderType:null,
details:null,
details: [
{
"lastModifierId": "ad731144-d789-f322-fede-327cac55dd36",
"creationTime": "1978-07-18T22:00:37.5Z",
"creatorId": "19e78d1b-6203-8d6d-b6e7-ae5b503c0824",
"id": "5926ec25-2132-ba25-6b93-e453c17f00e2",
"studentName": "张三0712",
"orderType": 712,
"masterId": "a044e2c6-3bc6-7cdd-55a6-f1a2a9682ccb",
"lastModificationTime": "1946-12-30T14:22:31.982Z"
},
],
},
//
editFormData: {
id:null,
schoolName:null,
orderType:null,
details:null,
},
//
CreateForm: [
{ type: "input", label: '名称', prop: 'schoolName', colSpan: 12 },
{ type: "input", label: 'orderType', prop: 'orderType', colSpan: 12 },
],
//
editForm: [
{ type: "input", label: '名称', prop: 'schoolName', colSpan: 12 },
{ type: "input", label: 'orderType', prop: 'orderType', colSpan: 12 },
],
editOptions: {},
editRules: {
cerateRule: {
schoolName: [{ required: true, trigger: "blur", message: "不可为空" }],
},
editRule: {
schoolName: [{ required: true, trigger: "blur", message: "不可为空" }],
}
},
};
},
mounted() {
this.initApiColumns()
this.initApiColumns(tableColumns_api,tabsDesTions_api,detailsTableColumns_api)
this.paging();
},
methods: {
// api
initApiColumns(){
this.apiColumns_Table = tableColumns_api[this.$route.name]
this.apiColumns_DesTions = tabsDesTions_api[this.$route.name]
this.apiColumns_DetailsTable = detailsTableColumns_api[this.$route.name]
},
}
}
</script>
<style lang="scss" scoped>

2
PC/InterFace.Dash/src/views/interfaceBoard/demo_detail_addbase.vue

@ -85,7 +85,7 @@ import * as detailsTableColumns_api from "@/utils/detailsTableColumns_api/index
export default {
name: "TestSchool",
name: "demo_detail_addbase",
mixins: [
tableMixins,
LoadingMixins,

2
PC/InterFace.Dash/src/views/interfaceBoard/demo_read.vue

@ -68,7 +68,7 @@ import * as detailsTableColumns_api from "@/utils/detailsTableColumns_api/index
export default {
name: "TestSchool",
name: "demo_read",
mixins: [
tableMixins,
LoadingMixins,

Loading…
Cancel
Save