Browse Source

Merge branch 'master_hella' of http://dev.ccwin-in.com:3000/sfms3.0/sfms3.0-ui into master_hella

hella_online_20240829
陈薪名 2 months ago
parent
commit
f6f89043f4
  1. 5
      src/api/qms/inspectionRecord/inspectionRecordMain/index.ts
  2. 5
      src/components/Descriptions/src/Descriptions.vue
  3. 1
      src/types/descriptions.d.ts
  4. 1032
      src/views/qms/inspectionJob/addForm.vue
  5. 18
      src/views/qms/inspectionQ1/inspectionQ1.data.ts
  6. 52
      src/views/qms/inspectionQ2/inspectionQ2.data.ts
  7. 13
      src/views/qms/inspectionQ3/inspectionQ3.data.ts
  8. 1566
      src/views/qms/inspectionRecord/addForm.vue
  9. 565
      src/views/qms/inspectionRecord/index.vue
  10. 672
      src/views/qms/inspectionRecordFirst/addForm.vue
  11. 5
      src/views/wms/basicDataManage/itemManage/bom/bom.data.ts
  12. 3
      src/views/wms/basicDataManage/itemManage/bom/index.vue
  13. 173
      src/views/wms/basicDataManage/strategySetting/strategy/upShelfStrategy/AddForm.vue
  14. 7
      src/views/wms/buttMesManage/mesBarCode/index.vue
  15. 296
      src/views/wms/buttMesManage/mesBarCode/mesBarCode.data.ts
  16. 2
      src/views/wms/inventoryManage/package/index.vue
  17. 2
      src/views/wms/inventoryManage/package/package.data.ts
  18. 16
      src/views/wms/productionManage/productscrap/productscrapRequestMain/index.vue
  19. 1
      src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptJobMain/purchasereceiptJobMain.data.ts
  20. 4
      src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestMain/purchasereceiptRequestMain.data.ts
  21. 22
      src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMain/index.vue
  22. 9
      src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMain/purchasereturnRequestMain.data.ts
  23. 5
      src/views/wms/purchasereceiptManage/sparereceipt/sparereceiptRequestMain/sparereceiptRequestMain.data.ts
  24. 47
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRecordMain/supplierinvoiceRecordMain.data.ts
  25. 4
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts
  26. 47
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMainDifference/supplierinvoiceRequestMainDifference.data.ts

5
src/api/qms/inspectionRecord/inspectionRecordMain/index.ts

@ -77,3 +77,8 @@ export const publishInspectionRecordMain = async (id) => {
return await request.put({ url: `/qms/inspection-record-main/publish?id=`+id })
}
// 执行检验任务
export const executeInspectionRecordMain = async (data) => {
return await request.put({ url: `/qms/inspection-record-main/execute`, data })
}

5
src/components/Descriptions/src/Descriptions.vue

@ -145,6 +145,11 @@ const showAll = () =>{
data[item.field] !== null ? dayjs(data[item.field]).format(item.dateFormat) : ''
}}
</slot>
<slot v-if="item.valueFilter">
{{
item.valueFilter(data[item.field])
}}
</slot>
<slot v-else-if="item.dictType">
<div v-if="data[item.field]&&Array.isArray(data[item.field])" >
<DictTag :type="item.dictType" :value="cur" v-for="(cur,key) in data[item.field]" :key="key" style="margin-right: 6px;margin-bottom: 6px;"/>

1
src/types/descriptions.d.ts

@ -9,5 +9,6 @@ export interface DescriptionsSchema {
className?: string
labelClassName?: string
dateFormat?: string // add by 星语:支持时间的格式化
valueFilter?: function // 展示的过滤函数
dictType?: string // add by 星语:支持 dict 字典数据
}

1032
src/views/qms/inspectionJob/addForm.vue

File diff suppressed because it is too large

18
src/views/qms/inspectionQ1/inspectionQ1.data.ts

@ -63,8 +63,7 @@ export const Q1 = useCrudSchemas(
field: 'customerCode',
sort: 'custom',
table: {
width: 150,
fixed: 'left'
width: 150
},
form: {
// labelMessage: '信息提示说明!!!',
@ -145,7 +144,7 @@ export const Q1 = useCrudSchemas(
label: '数量',
field: 'qty',
sort: 'custom',
isTable: false,
isTable: true,
isSearch: false,
table: {
width: 150
@ -184,6 +183,9 @@ export const Q1 = useCrudSchemas(
dictClass: 'string',
isSearch: false,
isTable: true,
table: {
width: 180
},
tableForm: {
type: 'Select'
}
@ -195,7 +197,7 @@ export const Q1 = useCrudSchemas(
dictType: DICT_TYPE.QUALITY_NOTIFICATION_PRIORITY,
dictClass: 'string',
isSearch: false,
isTable: true,
isTable: false,
tableForm: {
type: 'Select'
}
@ -205,7 +207,7 @@ export const Q1 = useCrudSchemas(
field: 'responUser',
sort: 'custom',
isSearch: false,
isForm: true,
isForm: false,
form: {
componentProps: {
value: userStore.getUser.nickname,
@ -232,7 +234,7 @@ export const Q1 = useCrudSchemas(
},
{
label: '成本中心',
label: '成本中心代码',
field: 'costCode',
sort: 'custom',
isSearch: false,
@ -274,7 +276,7 @@ export const Q1 = useCrudSchemas(
dictType: DICT_TYPE.CLAIM_REASON,
dictClass: 'string',
isSearch: false,
isTable: true,
isTable: false,
tableForm: {
type: 'Select'
}
@ -283,7 +285,7 @@ export const Q1 = useCrudSchemas(
label: '索赔日期',
field: 'claimTime',
isSearch: false,
isTable: false,
isTable: true,
table: {
width: 180
},

52
src/views/qms/inspectionQ2/inspectionQ2.data.ts

@ -112,7 +112,7 @@ export const Q2 = useCrudSchemas(
}
},
{
label: '供应商码',
label: '供应商码',
field: 'supplierCode',
sort: 'custom',
isSearch: true,
@ -192,6 +192,23 @@ export const Q2 = useCrudSchemas(
}
}
},
{
label: '数量',
field: 'qty',
sort: 'custom',
isTable: true,
isSearch: false,
table: {
width: 150
},
form: {
component: 'InputNumber',
componentProps: {
min: 0,
precision: 2
}
}
},
{
label: '单位',
field: 'uom',
@ -214,6 +231,7 @@ export const Q2 = useCrudSchemas(
label: '采购收货单号',
field: 'purchaseReceiptNumber',
sort: 'custom',
isTable: false,
table: {
width: 180
},
@ -263,23 +281,7 @@ export const Q2 = useCrudSchemas(
isTable: false,
isDetail: false
},
{
label: '数量',
field: 'qty',
sort: 'custom',
isTable: false,
isSearch: false,
table: {
width: 150
},
form: {
component: 'InputNumber',
componentProps: {
min: 0,
precision: 2
}
}
},
{
label: '编码',
field: 'code',
@ -288,6 +290,9 @@ export const Q2 = useCrudSchemas(
dictClass: 'string',
isSearch: false,
isTable: true,
table: {
width: 180
},
tableForm: {
type: 'Select'
}
@ -300,7 +305,7 @@ export const Q2 = useCrudSchemas(
dictType: DICT_TYPE.QUALITY_NOTIFICATION_PRIORITY,
dictClass: 'string',
isSearch: false,
isTable: true,
isTable: false,
tableForm: {
type: 'Select'
}
@ -311,6 +316,9 @@ export const Q2 = useCrudSchemas(
sort: 'custom',
isSearch: false,
isForm: true,
table: {
width: 120
},
form: {
componentProps: {
value: userStore.getUser.nickname,
@ -340,7 +348,7 @@ export const Q2 = useCrudSchemas(
field: 'costCode',
sort: 'custom',
isSearch: false,
isTable: true,
isTable: false,
isForm: true,
form: {
// labelMessage: '信息提示说明!!!',
@ -375,7 +383,7 @@ export const Q2 = useCrudSchemas(
{
label: '索赔日期',
field: 'claimTime',
isForm: false,
isTable: true,
table: {
width: 180
},
@ -396,7 +404,7 @@ export const Q2 = useCrudSchemas(
{
label: '处理时间',
field: 'handleTime',
isForm: false,
isTable: false,
table: {
width: 180
},

13
src/views/qms/inspectionQ3/inspectionQ3.data.ts

@ -173,7 +173,7 @@ export const Q3 = useCrudSchemas(
label: '数量',
field: 'qty',
sort: 'custom',
isTable: false,
isTable: true,
isSearch: false,
table: {
width: 150
@ -223,7 +223,7 @@ export const Q3 = useCrudSchemas(
dictType: DICT_TYPE.DEFECT_LOCATION,
dictClass: 'string',
isSearch: false,
isTable: true,
isTable: false,
tableForm: {
type: 'Select'
}
@ -235,7 +235,7 @@ export const Q3 = useCrudSchemas(
dictType: DICT_TYPE.DEFECT_TYPE,
dictClass: 'string',
isSearch: false,
isTable: true,
isTable: false,
tableForm: {
type: 'Select'
}
@ -247,7 +247,7 @@ export const Q3 = useCrudSchemas(
dictType: DICT_TYPE.PROBLEM_REASON,
dictClass: 'string',
isSearch: false,
isTable: true,
isTable: false,
tableForm: {
type: 'Select'
}
@ -259,7 +259,7 @@ export const Q3 = useCrudSchemas(
dictType: DICT_TYPE.QUALITY_NOTIFICATION_PRIORITY,
dictClass: 'string',
isSearch: false,
isTable: true,
isTable: false,
tableForm: {
type: 'Select'
}
@ -270,6 +270,9 @@ export const Q3 = useCrudSchemas(
sort: 'custom',
isSearch: false,
isForm: true,
table: {
width: 120
},
form: {
componentProps: {
value: userStore.getUser.nickname,

1566
src/views/qms/inspectionRecord/addForm.vue

File diff suppressed because it is too large

565
src/views/qms/inspectionRecord/index.vue

@ -1,33 +1,53 @@
<template>
<ContentWrap>
<!-- 搜索工作栏 -->
<Search :schema="InspectionRecordMain.allSchemas.searchSchema" @search="setSearchParams" @reset="setSearchParams" />
<Search
:schema="InspectionRecordMain.allSchemas.searchSchema"
@search="setSearchParams"
@reset="setSearchParams"
/>
</ContentWrap>
<!-- 列表头部 -->
<TableHead :HeadButttondata="HeadButttondata" @button-base-click="buttonBaseClick" :routeName="routeName"
@updataTableColumns="updataTableColumns" @searchFormClick="searchFormClick"
:allSchemas="InspectionRecordMain.allSchemas" />
<TableHead
:HeadButttondata="HeadButttondata"
@button-base-click="buttonBaseClick"
:routeName="routeName"
@updataTableColumns="updataTableColumns"
@searchFormClick="searchFormClick"
:allSchemas="InspectionRecordMain.allSchemas"
/>
<!-- 列表 -->
<ContentWrap>
<Table v-clientTable :columns="tableColumns" :data="tableObject.tableList" :loading="tableObject.loading" :pagination="{
<Table
v-clientTable
:columns="tableColumns"
:data="tableObject.tableList"
:loading="tableObject.loading"
:pagination="{
total: tableObject.total
}" v-model:pageSize="tableObject.pageSize" v-model:currentPage="tableObject.currentPage"
v-model:sort="tableObject.sort">
<template #number="{row}">
}"
v-model:pageSize="tableObject.pageSize"
v-model:currentPage="tableObject.currentPage"
v-model:sort="tableObject.sort"
>
<template #number="{ row }">
<el-button type="primary" link @click="openDetail(row, '单据号', row.number)">
<span>{{ row.number }}</span>
</el-button>
</template>
<template #action="{ row }">
<ButtonBase :Butttondata="butttondata(row)" @button-base-click="buttonTableClick($event,row)" />
<ButtonBase
:Butttondata="butttondata(row)"
@button-base-click="buttonTableClick($event, row)"
/>
</template>
</Table>
</ContentWrap>
<!-- 表单弹窗添加/修改 -->
<UseAddForm
<UseAddForm
ref="formRef"
basicFormWidth="80"
:tableAllSchemas="InspectionRecordPackage.allSchemas"
@ -38,7 +58,7 @@
/>
<!-- 新增 -->
<AddForm
<AddForm
ref="basicFormRef"
basicFormWidth="80"
:formAllSchemas="InspectionRecordMain.allSchemas"
@ -46,38 +66,56 @@
:tableFormRules="InspectionJobPackageRules"
:rules="InspectionTemplateRules"
@submitForm="submitFormExecute"
/>
<Detail
ref="detailRef" :isBasic="false" :allSchemas="InspectionRecordMain.allSchemas"
:detailAllSchemas="InspectionRecordDetail.allSchemas" :detailAllSchemasRules="InspectionRecordDetailRules"
<Detail
ref="detailRef"
:isBasic="false"
:allSchemas="InspectionRecordMain.allSchemas"
:detailAllSchemas="InspectionRecordDetail.allSchemas"
:detailAllSchemasRules="InspectionRecordDetailRules"
:apiCreate="InspectionRecordDetailApi.createInspectionRecordDetail"
:apiUpdate="InspectionRecordDetailApi.updateInspectionRecordDetail"
:apiPage="InspectionRecordDetailApi.getInspectionRecordDetailPage"
:apiDelete="InspectionRecordDetailApi.deleteInspectionRecordDetail" @searchTableSuccessDetail="searchTableSuccessDetail"
:isShowAddBtn="false" :detailButtonIsShow="true"
/>
<!-- 包装信息 -->
<ListTable ref="listTableRef" titleName="包装信息" :allSchemas="InspectionRecordMain.allSchemas"
:detailAllSchemas="InspectionRecordPackage.allSchemas" :detailAllSchemasRules="InspectionRecordPackageRules"
:list="list"/>
:apiDelete="InspectionRecordDetailApi.deleteInspectionRecordDetail"
@searchTableSuccessDetail="searchTableSuccessDetail"
:isShowAddBtn="false"
:detailButtonIsShow="true"
/>
<!-- 包装信息 -->
<ListTable
ref="listTableRef"
titleName="包装信息"
:allSchemas="InspectionRecordMain.allSchemas"
:detailAllSchemas="InspectionRecordPackage.allSchemas"
:detailAllSchemasRules="InspectionRecordPackageRules"
:list="list"
/>
</template>
<script setup lang="ts">
import download from '@/utils/download'
import { InspectionRecordMain, InspectionRecordMainRules, InspectionRecordDetail, InspectionRecordDetailRules,InspectionRecordPackage, InspectionRecordPackageRules,InspectionRecordUser,InspectionRecordUserRules} from './inspectionRecordMain.data'
// import { InspectionJobPackage,InspectionJobPackageRules} from '../inspectionJob/inspectionJobMain.data'
import * as InspectionRecordPackageApi from '@/api/qms/inspectionRecord/InspectionRecordPackage/InspectionRecordPackage'
import * as InspectionRecordMainApi from '@/api/qms/inspectionRecord/inspectionRecordMain'
import * as InspectionRecordDetailApi from '@/api/qms/inspectionRecord/inspectionRecordDetail'
import * as defaultButtons from '@/utils/disposition/defaultButtons'
import ListTable from '@/components/ListTable/src/ListTable.vue'
import TableHead from '@/components/TableHead/src/TableHead.vue'
import UseAddForm from './useAddForm.vue'
import AddForm from '../inspectionJob/addForm.vue'
import Detail from './detail.vue'
import * as InspectionJobMainApi from '@/api/qms/inspectionJob/inspectionJobMain'
import download from '@/utils/download'
import {
InspectionRecordMain,
InspectionRecordMainRules,
InspectionRecordDetail,
InspectionRecordDetailRules,
InspectionRecordPackage,
InspectionRecordPackageRules,
InspectionRecordUser,
InspectionRecordUserRules
} from './inspectionRecordMain.data'
// import { InspectionJobPackage,InspectionJobPackageRules} from '../inspectionJob/inspectionJobMain.data'
import * as InspectionRecordPackageApi from '@/api/qms/inspectionRecord/InspectionRecordPackage/InspectionRecordPackage'
import * as InspectionRecordMainApi from '@/api/qms/inspectionRecord/inspectionRecordMain'
import * as InspectionRecordDetailApi from '@/api/qms/inspectionRecord/inspectionRecordDetail'
import * as defaultButtons from '@/utils/disposition/defaultButtons'
import ListTable from '@/components/ListTable/src/ListTable.vue'
import TableHead from '@/components/TableHead/src/TableHead.vue'
import UseAddForm from './useAddForm.vue'
import AddForm from './addForm.vue'
import Detail from './detail.vue'
import * as InspectionJobMainApi from '@/api/qms/inspectionJob/inspectionJobMain'
import {
InspectionJobMain,
@ -90,275 +128,300 @@ import {
import { DICT_TYPE, getStrDictOptions } from '@/utils/dict'
//
defineOptions({ name: 'InspectionRecordMain' })
//
defineOptions({ name: 'InspectionRecordMain' })
const message = useMessage() //
const { t } = useI18n() //
const route = useRoute() //
const routeName = ref()
routeName.value = route.name
const tableColumns = ref(InspectionRecordMain.allSchemas.tableColumns)
if(routeName.value=='InspectRecordMain'){
tableColumns.value = tableColumns.value.filter(item=>{
return item.label!='操作'
const message = useMessage() //
const { t } = useI18n() //
const route = useRoute() //
const routeName = ref()
routeName.value = route.name
const tableColumns = ref(InspectionRecordMain.allSchemas.tableColumns)
if (routeName.value == 'InspectRecordMain') {
tableColumns.value = tableColumns.value.filter((item) => {
return item.label != '操作'
})
}
//
const updataTableColumns = (val) => {
if (routeName.value == 'InspectRecordMain') {
tableColumns.value = val.filter((item) => {
return item.label != '操作'
})
} else {
tableColumns.value = val
}
//
const updataTableColumns = (val) => {
if(routeName.value=='InspectRecordMain'){
tableColumns.value = val.filter(item=>{
return item.label!='操作'
})
}else{
tableColumns.value = val
}
}
}
//
const { tableObject, tableMethods } = useTable({
getListApi: InspectionRecordMainApi.getInspectionRecordMainPage //
})
//
const { tableObject, tableMethods } = useTable({
getListApi: InspectionRecordMainApi.getInspectionRecordMainPage //
})
//
const { getList, setSearchParams } = tableMethods
//
const { getList, setSearchParams } = tableMethods
//
let HeadButttondata = [
// defaultButtons.defaultExportBtn(null), //
defaultButtons.defaultFreshBtn(null), //
defaultButtons.defaultFilterBtn(null), //
defaultButtons.defaultSetBtn(null), //
//
let HeadButttondata = [
// defaultButtons.defaultExportBtn(null), //
defaultButtons.defaultFreshBtn(null), //
defaultButtons.defaultFilterBtn(null), //
defaultButtons.defaultSetBtn(null) //
]
//
const buttonBaseClick = (val, item) => {
if (val == 'add') { //
openForm('create')
} else if (val == 'import') { //
handleImport()
} else if (val == 'export') { //
handleExport()
} else if (val == 'refresh') { //
getList()
} else if (val == 'filtrate') { //
} else { //
console.log('其他按钮', item)
}
if (val == 'add') {
//
openForm('create')
} else if (val == 'import') {
//
handleImport()
} else if (val == 'export') {
//
handleExport()
} else if (val == 'refresh') {
//
getList()
} else if (val == 'filtrate') {
//
} else {
//
console.log('其他按钮', item)
}
}
const isShowMainButton = (row, val) => {
if(!row.callbackRequestNumber) {//callbackRequestNumber使
return true;
}
if(row.useDecision) {
return row.isPublished
} else {
return val ? true : false
}
const isShowMainButton = (row, val) => {
if (!row.callbackRequestNumber) {
//callbackRequestNumber使
return true
}
if (row.useDecision) {
return row.isPublished
} else {
return val ? true : false
}
const isShowEditBtn = (row, val) => {
if (val.indexOf(row.inspectionType) > -1) {
return true
} else {
return row.useDecision
}
}
const isShowPackageBtn = (row, val) => {
if (val.indexOf(row.inspectionType) > -1) {
return true
} else {
return false
}
const isShowEditBtn = (row, val) => {
if (val.indexOf(row.inspectionType) > -1) {
return true
} else {
return row.useDecision
}
// -
const butttondata = (row) => {
return [
// defaultButtons.mainListOrderCOMPLETEBtn({ hide: isShowMainButton(row, ['INCOMPLETE']) }), //
defaultButtons.mainApplyDecisionBtn({ hide: isShowMainButton(row, null), hasPermi:'qms:inspection-recode-main:edit'}), // 使
// defaultButtons.mainListDeleteBtn(null), //
defaultButtons.mainListOrderPubBtn({ hide: isShowMainButton(row, 'publish'), hasPermi:'qms:inspection-recode-main:pub'}), //
defaultButtons.mainListPackageBtn({hide: isShowPackageBtn(row,['11'])}), //
// defaultButtons.mainListJobExeBtn({
// hide:row.useDecision,
// hasPermi: 'qms:inspection-recode-main:execute',
// }), //
defaultButtons.mainListEditBtn({ hide:isShowEditBtn(row,['11'])}), //
]
}
const isShowPackageBtn = (row, val) => {
if (val.indexOf(row.inspectionType) > -1) {
return true
} else {
return false
}
}
// -
const butttondata = (row) => {
return [
// defaultButtons.mainListOrderCOMPLETEBtn({ hide: isShowMainButton(row, ['INCOMPLETE']) }), //
defaultButtons.mainApplyDecisionBtn({
hide: isShowMainButton(row, null),
hasPermi: 'qms:inspection-recode-main:edit'
}), // 使
// defaultButtons.mainListDeleteBtn(null), //
defaultButtons.mainListOrderPubBtn({
hide: isShowMainButton(row, 'publish'),
hasPermi: 'qms:inspection-recode-main:pub'
}), //
defaultButtons.mainListPackageBtn({ hide: isShowPackageBtn(row, ['11']) }), //
// defaultButtons.mainListJobExeBtn({
// hide:row.useDecision,
// hasPermi: 'qms:inspection-recode-main:execute',
// }), //
defaultButtons.mainListEditBtn({ hide: isShowEditBtn(row, ['11']) }) //
]
}
const listTableRef = ref()
const list = ref([])
const useDecisionList = getStrDictOptions(DICT_TYPE.USAGE_DECISION)
// const useDecisionList = InspectionRecordMain.allSchemas.formSchema.filter(item=>item.field == "useDecision")
// -
const buttonTableClick = async (val, row) => {
if (val == 'applyDecision') { //
// 1使
if(row.estimateCode == 1){
InspectionRecordMain.allSchemas.formSchema.forEach((itemColumn) =>{
if(itemColumn.field == "useDecision"){
itemColumn.componentProps.options=useDecisionList?.filter(item=>item.value==1)
}
})
}else if(row.estimateCode == 2){
InspectionRecordMain.allSchemas.formSchema.forEach((itemColumn) =>{
if(itemColumn.field == "useDecision"){
itemColumn.componentProps.options=useDecisionList?.filter(item=>item.value!=1)
}
})
}
openUseForm('update', row)
}else if (val == 'mainPackage') { //
list.value = await InspectionRecordPackageApi.getInspectionRecordPackageList(row.id)
list.value.forEach(item=>{
item.qualifiedAmount = item.qualifiedAmount ?item.qualifiedAmount :0
item.noQualifiedAmount = item.noQualifiedAmount ?item.noQualifiedAmount :0
item.destroyAmount = item.destroyAmount ?item.destroyAmount :0
item.frozenAmount = item.frozenAmount ?item.frozenAmount :0
const listTableRef = ref()
const list = ref([])
const useDecisionList = getStrDictOptions(DICT_TYPE.USAGE_DECISION)
// const useDecisionList = InspectionRecordMain.allSchemas.formSchema.filter(item=>item.field == "useDecision")
// -
const buttonTableClick = async (val, row) => {
if (val == 'applyDecision') {
//
// 1使
if (row.estimateCode == 1) {
InspectionRecordMain.allSchemas.formSchema.forEach((itemColumn) => {
if (itemColumn.field == 'useDecision') {
itemColumn.componentProps.options = useDecisionList?.filter((item) => item.value == 1)
}
})
} else if (row.estimateCode == 2) {
InspectionRecordMain.allSchemas.formSchema.forEach((itemColumn) => {
if (itemColumn.field == 'useDecision') {
itemColumn.componentProps.options = useDecisionList?.filter((item) => item.value != 1)
}
})
// row.status = '1'
listTableRef.value.openPackage(row,'包装信息',InspectionRecordPackage.allSchemas.tableColumns)
}else if (val == 'delete') { //
handleDelete(row.id)
}else if (val == 'mainOrderPub') { //
handleOrderPub(row)
}else if (val == 'edit') { //
//
execute('execute', row)
}
openUseForm('update', row)
} else if (val == 'mainPackage') {
//
list.value = await InspectionRecordPackageApi.getInspectionRecordPackageList(row.id)
list.value.forEach((item) => {
item.qualifiedAmount = item.qualifiedAmount ? item.qualifiedAmount : 0
item.noQualifiedAmount = item.noQualifiedAmount ? item.noQualifiedAmount : 0
item.destroyAmount = item.destroyAmount ? item.destroyAmount : 0
item.frozenAmount = item.frozenAmount ? item.frozenAmount : 0
})
// row.status = '1'
listTableRef.value.openPackage(row, '包装信息', InspectionRecordPackage.allSchemas.tableColumns)
} else if (val == 'delete') {
//
handleDelete(row.id)
} else if (val == 'mainOrderPub') {
//
handleOrderPub(row)
} else if (val == 'edit') {
//
//
execute('execute', row)
}
/** 添加/修改操作 */
const basicFormRef = ref()
// const openForm = async (type : string, row ?: number) => {
// tableData.value = [] //
// basicFormRef.value.open(type, row)
// }
/** 使用决策操作操作 */
const formRef = ref()
const openUseForm = async (type : string, row ?: number) => {
tableData.value = [] //
formRef.value.open(type, row)
}
}
/** 添加/修改操作 */
const basicFormRef = ref()
// const openForm = async (type : string, row ?: number) => {
// tableData.value = [] //
// basicFormRef.value.open(type, row)
// }
/** 使用决策操作操作 */
const formRef = ref()
const openUseForm = async (type: string, row?: number) => {
tableData.value = [] //
formRef.value.open(type, row)
}
/** 详情操作 */
const detailRef = ref()
const openDetail = (row : any, titleName : any, titleValue : any) => {
detailRef.value.openDetail(row, titleName, titleValue, 'basicInspectionRecordMain')
}
/** 详情操作 */
const detailRef = ref()
const openDetail = (row: any, titleName: any, titleValue: any) => {
detailRef.value.openDetail(row, titleName, titleValue, 'basicInspectionRecordMain')
}
/** 删除按钮操作 */
const handleDelete = async (id : number) => {
try {
//
await message.delConfirm()
//
await InspectionRecordMainApi.deleteInspectionRecordMain(id)
message.success(t('common.delSuccess'))
//
await getList()
} catch { }
}
/** 发布按钮操作 */
const handleOrderPub = async (row : object) => {
try {
//
await message.confirm(t('common.confirmPublish'))
//
await InspectionRecordMainApi.publishInspectionRecordMain(row.id)
message.success(t('common.publishSuccess'))
//
await getList()
} catch { }
}
/** 删除按钮操作 */
const handleDelete = async (id: number) => {
try {
//
await message.delConfirm()
//
await InspectionRecordMainApi.deleteInspectionRecordMain(id)
message.success(t('common.delSuccess'))
//
await getList()
} catch {}
}
/** 发布按钮操作 */
const handleOrderPub = async (row: object) => {
try {
//
await message.confirm(t('common.confirmPublish'))
//
await InspectionRecordMainApi.publishInspectionRecordMain(row.id)
message.success(t('common.publishSuccess'))
//
await getList()
} catch {}
}
//
const execute = async (type: string, row?: number) => {
basicFormRef.value.open(type, row)
}
/** 导出按钮操作 */
const exportLoading = ref(false) //
const handleExport = async () => {
try {
//
await message.exportConfirm()
//
exportLoading.value = true
const data = await InspectionRecordMainApi.exportInspectionRecordMain(tableObject.params)
download.excel(data, '备件申领记录主.xlsx')
} catch {
} finally {
exportLoading.value = false
}
/** 导出按钮操作 */
const exportLoading = ref(false) //
const handleExport = async () => {
try {
//
await message.exportConfirm()
//
exportLoading.value = true
const data = await InspectionRecordMainApi.exportInspectionRecordMain(tableObject.params)
download.excel(data, '备件申领记录主.xlsx')
} catch {
} finally {
exportLoading.value = false
}
}
/**
* tableForm方法
*/
const tableFormKeys = {}
InspectionRecordDetail.allSchemas.tableFormColumns.forEach(item => {
tableFormKeys[item.field] = item.default ? item.default : ''
})
const tableData = ref([])
/**
* tableForm方法
*/
const tableFormKeys = {}
InspectionRecordDetail.allSchemas.tableFormColumns.forEach((item) => {
tableFormKeys[item.field] = item.default ? item.default : ''
})
const tableData = ref([])
// //
const submitForm = async (formType, data) => {
// data.subList = tableData.value //
try {
if (formType === 'create') {
await InspectionRecordMainApi.createInspectionRecordMain(data)
message.success(t('common.createSuccess'))
}else {
await InspectionRecordMainApi.updateInspectionRecordMain(data)
message.success(t('common.updateSuccess'))
}
formRef.value.dialogVisible = false
//
getList()
} finally {
formRef.value.formLoading = false
const submitForm = async (formType, data) => {
// data.subList = tableData.value //
try {
if (formType === 'create') {
await InspectionRecordMainApi.createInspectionRecordMain(data)
message.success(t('common.createSuccess'))
} else {
await InspectionRecordMainApi.updateInspectionRecordMain(data)
message.success(t('common.updateSuccess'))
}
formRef.value.dialogVisible = false
//
getList()
} finally {
formRef.value.formLoading = false
}
}
//
//
const submitFormExecute = async (formType, data) => {
// return
console.log(formType, data)
data.status = '2'
try {
basicFormRef.value.formLoading = true
if (formType === 'create') {
await InspectionJobMainApi.createInspectionJobMain(data)
message.success(t('common.createSuccess'))
} else if (formType === 'execute') {
await InspectionJobMainApi.executeInspectionJobMain(data)
await InspectionRecordMainApi.executeInspectionRecordMain(data)
message.success(t('common.updateSuccess'))
}
basicFormRef.value.dialogVisible = false
basicFormRef.value.formLoading = false
//
getList()
} finally {
basicFormRef.value.formLoading = false
}
}
}
//
const searchFormClick = (searchData) => {
tableObject.params = {
isSearch: true,
filters: searchData.filters
}
getList() //
//
const searchFormClick = (searchData) => {
let isHave = searchData?.filters?.some((item) => item.column == 'inspectionType')
if (!isHave) {
searchData.filters.push({
action: '!=',
column: 'inspectionType',
value: '11'
})
}
tableObject.params = {
isSearch: true,
filters: searchData.filters
}
getList() //
}
/** 初始化 **/
/** 初始化 **/
onMounted(async () => {
tableObject.params = {
available: true
}
getList()
})
tableObject.params = {
available: true,
excludeInspectionType: '11'
}
getList()
})
</script>

672
src/views/qms/inspectionRecordFirst/addForm.vue

@ -139,322 +139,353 @@
</span>
</template>
<div class="tabs-box">
<div class="small-title">检验工序</div>
<el-form :model="item" label-width="auto" :rules="rules" ref="formProcessRef">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="编码" prop="processCode">
<el-input
v-model="item.processCode"
placeholder="根据系统生成"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="检验特性编号">
<el-input
v-model="item.inspectionFeatureCode"
placeholder="根据系统生成"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="描述" prop="processDescribe">
<el-input v-model="item.processDescribe" :disabled="true" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="顺序号" prop="sequenceCode">
<el-input v-model="item.sequenceCode" :disabled="true" />
</el-form-item>
</el-col>
</el-row>
</el-form>
<div class="small-title">检验特性</div>
<el-form :model="item" label-width="auto" :rules="rules" ref="formFeaturesRef">
<div>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="编码">
<el-input
v-model="item.inspectionJobCharacteristicsUpdateReqVO.number"
placeholder="根据系统生成"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="描述"
prop="inspectionJobCharacteristicsUpdateReqVO.description"
>
<el-input
v-model="item.inspectionJobCharacteristicsUpdateReqVO.description"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="检验方法"
prop="inspectionJobCharacteristicsUpdateReqVO.inspectionMethodCode"
>
<div style="display: flex; width: 100%">
<el-collapse v-model="collapseShow">
<el-collapse-item name="1">
<template #title>
<div class="small-title">检验工序</div>
</template>
<el-form :model="item" label-width="auto" :rules="rules" ref="formProcessRef">
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="编码" prop="processCode">
<el-input
v-model="
item.inspectionJobCharacteristicsUpdateReqVO.inspectionMethodName
"
disabled
placeholder="请选择检验方法"
v-model="item.processCode"
placeholder="根据系统生成"
:disabled="true"
/>
</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="采样过程编码"
prop="inspectionJobCharacteristicsUpdateReqVO.samplingProcessCode"
>
<div style="display: flex; width: 100%">
<el-input
v-model="
item.inspectionJobCharacteristicsUpdateReqVO.samplingProcessName
"
disabled
placeholder="请选择采样过程编码"
/>
</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="样品份数" prop="samplingProcessRespVO.sampleQty">
<div style="display: flex; width: 100%">
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="检验特性编号">
<el-input
v-model="item.samplingProcessRespVO.sampleQty"
disabled
placeholder="请输入样品份数"
v-model="item.inspectionFeatureCode"
placeholder="根据系统生成"
:disabled="true"
/>
</div>
</el-form-item>
</el-col>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="描述" prop="processDescribe">
<el-input v-model="item.processDescribe" :disabled="true" />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="顺序号" prop="sequenceCode">
<el-input v-model="item.sequenceCode" :disabled="true" />
</el-form-item>
</el-col>
</el-row>
</el-form>
</el-collapse-item>
<el-collapse-item name="2">
<template #title>
<div class="small-title">检验特性</div>
</template>
<el-form :model="item" label-width="auto" :rules="rules" ref="formFeaturesRef">
<div>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="编码">
<el-input
v-model="item.inspectionJobCharacteristicsUpdateReqVO.number"
placeholder="根据系统生成"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="描述"
prop="inspectionJobCharacteristicsUpdateReqVO.description"
>
<el-input
v-model="item.inspectionJobCharacteristicsUpdateReqVO.description"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="检验方法"
prop="inspectionJobCharacteristicsUpdateReqVO.inspectionMethodCode"
>
<div style="display: flex; width: 100%">
<el-input
v-model="
item.inspectionJobCharacteristicsUpdateReqVO.inspectionMethodName
"
disabled
placeholder="请选择检验方法"
/>
</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="采样过程编码"
prop="inspectionJobCharacteristicsUpdateReqVO.samplingProcessCode"
>
<div style="display: flex; width: 100%">
<el-input
v-model="
item.inspectionJobCharacteristicsUpdateReqVO.samplingProcessName
"
disabled
placeholder="请选择采样过程编码"
/>
</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="样品份数" prop="samplingProcessRespVO.sampleQty">
<div style="display: flex; width: 100%">
<el-input
v-model="item.samplingProcessRespVO.sampleQty"
disabled
placeholder="请输入样品份数"
/>
</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="每份样品量"
prop="inspectionJobCharacteristicsUpdateReqVO.samplePieceSize"
>
<div style="display: flex; width: 100%">
<el-input
v-model="data.samplePieceSize"
disabled
placeholder="请输入样品份数"
/>
</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="是否允许修改特征值"
prop="inspectionJobCharacteristicsUpdateReqVO.isCanUpdate"
>
<el-switch
v-model="item.inspectionJobCharacteristicsUpdateReqVO.isCanUpdate"
disabled
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="结果录入方式"
prop="inspectionJobCharacteristicsUpdateReqVO.resultEntryMethod"
>
<el-select
v-model="item.inspectionJobCharacteristicsUpdateReqVO.resultEntryMethod"
placeholder="请选择结果录入方式"
@change="resultEntryMethodChange($event, item)"
disabled
<el-col :span="12">
<el-form-item
label="每份样品量"
prop="inspectionJobCharacteristicsUpdateReqVO.samplePieceSize"
>
<div style="display: flex; width: 100%">
<el-input
v-model="data.samplePieceSize"
disabled
placeholder="请输入样品份数"
/>
</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="是否允许修改特征值"
prop="inspectionJobCharacteristicsUpdateReqVO.isCanUpdate"
>
<el-switch
v-model="item.inspectionJobCharacteristicsUpdateReqVO.isCanUpdate"
disabled
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="结果录入方式"
prop="inspectionJobCharacteristicsUpdateReqVO.resultEntryMethod"
>
<el-select
v-model="
item.inspectionJobCharacteristicsUpdateReqVO.resultEntryMethod
"
placeholder="请选择结果录入方式"
@change="resultEntryMethodChange($event, item)"
disabled
>
<el-option
v-for="dict in getStrDictOptions(
DICT_TYPE.INSPECTION_CHARACTERISTICS_RESULT_ENTRY
)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="特征类型"
prop="inspectionJobCharacteristicsUpdateReqVO.featureType"
>
<el-select
v-model="item.inspectionJobCharacteristicsUpdateReqVO.featureType"
placeholder="请选择特征类型"
@change="changeFeatureType"
disabled
>
<el-option
v-for="dict in getStrDictOptions(
DICT_TYPE.INSPECTION_CHARACTERISTICS_FEATURE_TYPE
)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col
:span="12"
v-if="item.inspectionJobCharacteristicsUpdateReqVO.featureType == 0"
>
<el-option
v-for="dict in getStrDictOptions(
DICT_TYPE.INSPECTION_CHARACTERISTICS_RESULT_ENTRY
)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="特征类型"
prop="inspectionJobCharacteristicsUpdateReqVO.featureType"
>
<el-select
v-model="item.inspectionJobCharacteristicsUpdateReqVO.featureType"
placeholder="请选择特征类型"
@change="changeFeatureType"
disabled
<el-form-item
label="是否设定上限"
prop="inspectionCharacteristicsBaseVO.quantifyIsCapping"
>
<el-switch
v-model="
item.inspectionJobCharacteristicsUpdateReqVO.quantifyIsCapping
"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col
:span="12"
v-if="
item.inspectionJobCharacteristicsUpdateReqVO.featureType == 0 &&
item.inspectionJobCharacteristicsUpdateReqVO.quantifyIsCapping
"
>
<el-option
v-for="dict in getStrDictOptions(
DICT_TYPE.INSPECTION_CHARACTERISTICS_FEATURE_TYPE
)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-col
:span="12"
v-if="item.inspectionJobCharacteristicsUpdateReqVO.featureType == 0"
>
<el-form-item
label="是否设定上限"
prop="inspectionCharacteristicsBaseVO.quantifyIsCapping"
>
<el-switch
v-model="item.inspectionJobCharacteristicsUpdateReqVO.quantifyIsCapping"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col
:span="12"
v-if="
item.inspectionJobCharacteristicsUpdateReqVO.featureType == 0 &&
item.inspectionJobCharacteristicsUpdateReqVO.quantifyIsCapping
"
>
<el-form-item
label="上限值"
prop="inspectionCharacteristicsBaseVO.quantifyCapping"
>
<el-input
v-model="item.inspectionJobCharacteristicsUpdateReqVO.quantifyCapping"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col
:span="12"
v-if="item.inspectionJobCharacteristicsUpdateReqVO.featureType == 0"
>
<el-form-item
label="是否设定下限"
prop="inspectionCharacteristicsBaseVO.quantifyIsCapping"
>
<el-switch
v-model="item.inspectionJobCharacteristicsUpdateReqVO.quantifyIsLowlimit"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col
:span="12"
v-if="
item.inspectionJobCharacteristicsUpdateReqVO.featureType == 0 &&
item.inspectionJobCharacteristicsUpdateReqVO.quantifyIsLowlimit
"
>
<el-form-item
label="下限值"
prop="inspectionCharacteristicsBaseVO.quantifyCapping"
>
<el-input
v-model="item.inspectionJobCharacteristicsUpdateReqVO.quantifyLowlimit"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-form-item
label="上限值"
prop="inspectionCharacteristicsBaseVO.quantifyCapping"
>
<el-input
v-model="item.inspectionJobCharacteristicsUpdateReqVO.quantifyCapping"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col
:span="12"
v-if="item.inspectionJobCharacteristicsUpdateReqVO.featureType == 0"
>
<el-form-item
label="是否设定目标值"
prop="inspectionCharacteristicsBaseVO.quantifyIsCapping"
>
<el-switch
v-model="item.inspectionJobCharacteristicsUpdateReqVO.quantifyIsTarget"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col
:span="12"
v-if="
item.inspectionJobCharacteristicsUpdateReqVO.featureType == 0 &&
item.inspectionJobCharacteristicsUpdateReqVO.quantifyIsTarget
"
>
<el-form-item
label="目标值"
prop="inspectionCharacteristicsBaseVO.quantifyCapping"
>
<el-input
v-model="item.inspectionJobCharacteristicsUpdateReqVO.quantifyTarget"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col
:span="12"
v-if="item.inspectionJobCharacteristicsUpdateReqVO.featureType == 0"
>
<el-form-item
label="是否设定下限"
prop="inspectionCharacteristicsBaseVO.quantifyIsCapping"
>
<el-switch
v-model="
item.inspectionJobCharacteristicsUpdateReqVO.quantifyIsLowlimit
"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col
:span="12"
v-if="
item.inspectionJobCharacteristicsUpdateReqVO.featureType == 0 &&
item.inspectionJobCharacteristicsUpdateReqVO.quantifyIsLowlimit
"
>
<el-form-item
label="下限值"
prop="inspectionCharacteristicsBaseVO.quantifyCapping"
>
<el-input
v-model="
item.inspectionJobCharacteristicsUpdateReqVO.quantifyLowlimit
"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="开始时间"
prop="inspectionJobCharacteristicsUpdateReqVO.inspectionStartTime"
>
<el-date-picker
v-model="item.inspectionJobCharacteristicsUpdateReqVO.inspectionStartTime"
type="datetime"
placeholder="请选择开始时间"
style="width: 100%"
value-format="x"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="结束时间"
prop="inspectionJobCharacteristicsUpdateReqVO.inspectionEndTime"
>
<el-date-picker
v-model="item.inspectionJobCharacteristicsUpdateReqVO.inspectionEndTime"
type="datetime"
placeholder="请选择结束时间"
style="width: 100%"
value-format="x"
/>
</el-form-item>
</el-col>
<!-- 手动评估的时候显示 -->
<el-col :span="12" v-if="item.samplingProcessRespVO.evaluationMode == 1">
<el-form-item
label="评估代码"
required
prop="inspectionJobCharacteristicsUpdateReqVO.estimateCode"
>
<el-select
v-model="item.inspectionJobCharacteristicsUpdateReqVO.estimateCode"
placeholder="请选择评估代码"
@change="changeFeatureType"
<el-col
:span="12"
v-if="item.inspectionJobCharacteristicsUpdateReqVO.featureType == 0"
>
<el-option
v-for="dict in getStrDictOptions(DICT_TYPE.EVALUATION_CODE)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
<el-form-item
label="是否设定目标值"
prop="inspectionCharacteristicsBaseVO.quantifyIsCapping"
>
<el-switch
v-model="
item.inspectionJobCharacteristicsUpdateReqVO.quantifyIsTarget
"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col
:span="12"
v-if="
item.inspectionJobCharacteristicsUpdateReqVO.featureType == 0 &&
item.inspectionJobCharacteristicsUpdateReqVO.quantifyIsTarget
"
>
<el-form-item
label="目标值"
prop="inspectionCharacteristicsBaseVO.quantifyCapping"
>
<el-input
v-model="item.inspectionJobCharacteristicsUpdateReqVO.quantifyTarget"
:disabled="true"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="开始时间"
prop="inspectionJobCharacteristicsUpdateReqVO.inspectionStartTime"
>
<el-date-picker
v-model="
item.inspectionJobCharacteristicsUpdateReqVO.inspectionStartTime
"
type="datetime"
placeholder="请选择开始时间"
style="width: 100%"
value-format="x"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="结束时间"
prop="inspectionJobCharacteristicsUpdateReqVO.inspectionEndTime"
>
<el-date-picker
v-model="
item.inspectionJobCharacteristicsUpdateReqVO.inspectionEndTime
"
type="datetime"
placeholder="请选择结束时间"
style="width: 100%"
value-format="x"
/>
</el-form-item>
</el-col>
<!-- 手动评估的时候显示 -->
<el-col :span="12" v-if="item.samplingProcessRespVO.evaluationMode == 1">
<el-form-item
label="评估代码"
required
prop="inspectionJobCharacteristicsUpdateReqVO.estimateCode"
>
<el-select
v-model="item.inspectionJobCharacteristicsUpdateReqVO.estimateCode"
placeholder="请选择评估代码"
@change="changeFeatureType"
>
<el-option
v-for="dict in getStrDictOptions(DICT_TYPE.EVALUATION_CODE)"
:key="dict.value"
:label="dict.label"
:value="dict.value"
/>
</el-select>
</el-form-item>
</el-col>
</el-row>
</div>
</el-form>
</el-collapse-item>
<el-collapse-item name="3">
<template #title>
<div class="small-title">检验结果</div>
</template>
<el-form :model="item" label-width="auto" :rules="rules" ref="formFeaturesRef">
<el-col
:span="24"
v-for="(cur, i) in item.inspectionJobCharacteristicsUpdateReqVO
@ -551,9 +582,9 @@
</el-row>
</div>
</el-col>
</el-row>
</div>
</el-form>
</el-form>
</el-collapse-item>
</el-collapse>
</div>
</el-tab-pane>
</el-tabs>
@ -662,6 +693,7 @@ const formMainRef = ref()
const formFeaturesRef = ref()
const formProcessRef = ref()
const formSchema = ref(props.formAllSchemas?.formSchema)
const collapseShow = ref(['1','2','3'])
const data = ref({
code: '',
@ -1081,12 +1113,12 @@ const opensearchItemsTable = () => {
column: 'type',
action: 'in',
value: 'BCP,CCP'
},
{
column: 'status',
action: 'in',
value: 'ENABLE'
}
// {
// column: 'status',
// action: 'in',
// value: 'ENABLE'
// }
)
//
_searchCondition.isSearch = true
@ -1178,7 +1210,7 @@ const searchTableSuccess = async (formField, searchField, val, type, row) => {
data.value.inspectionSchemeCode = InspectionSchemeObj?.code || ''
if (!data.value.inspectionSchemeCode) {
data.value.subList = []
return;
return
}
let list = await InspectionJobDetailApi.getBySchemeCode(data.value.inspectionSchemeCode)
editableTabsValue.value = 1
@ -1551,15 +1583,15 @@ const onItemBlur = async (field, pageApi) => {
if (obj) {
// data.value['itemName'] = obj.name
// data.value['desc1'] = obj.desc1
// const searchTableSuccess = async(formField, searchField, val, type, row)
searchTableSuccess(field,'code',array.list,'main')
// const searchTableSuccess = async(formField, searchField, val, type, row)
searchTableSuccess(field, 'code', array.list, 'main')
} else {
message.alert('暂无数据')
data.value[field] = ''
data.value['itemName'] = ''
data.value['desc1'] = ''
data.value['inspectionSchemeCode'] = ''
data.value.subList =[]
data.value.subList = []
}
} else {
data.value[field] = ''
@ -1611,12 +1643,12 @@ const onInspectionSchemeBlur = async (field, pageApi) => {
count.value++
const obj = array.list[0]
if (obj) {
searchTableSuccess(field,'code',array.list,'main')
searchTableSuccess(field, 'code', array.list, 'main')
} else {
message.alert('暂无数据')
data.value[field] = ''
data.value['inspectionSchemeName'] = ''
data.value.subList =[]
data.value.subList = []
}
} else {
data.value['inspectionSchemeName'] = ''

5
src/views/wms/basicDataManage/itemManage/bom/bom.data.ts

@ -82,6 +82,11 @@ export const Bom = useCrudSchemas(reactive<CrudSchema[]>([
isTable: true,
table: {
width: 150
},
form:{
componentProps:{
disabled: true,
}
}
},
{

3
src/views/wms/basicDataManage/itemManage/bom/index.vue

@ -216,6 +216,9 @@ const searchTableSuccess = (formField, searchField, val, formRef) => {
nextTick(() => {
const setV = {}
setV[formField] = val[0][searchField]
if('componentItemCode'==formField){
setV['componentUom'] = val[0]['uom']
}
formRef.setValues(setV)
})
}

173
src/views/wms/basicDataManage/strategySetting/strategy/upShelfStrategy/AddForm.vue

@ -310,7 +310,6 @@
v-model="warehouseType"
placeholder=""
style="width: 110px; margin-right: 10px"
@change="changeWarehouse"
>
<el-option
:label="cur.label"
@ -318,8 +317,57 @@
v-for="(cur, index) in options.warehouseTypeOptions"
:key="'仓库'+cur.value"
/>
</el-select>
<el-select
</el-select>
<!-- <el-row class="border-row" style="flex:1;display: flex; flex-direction: row;align-items: center;">
<el-tag class="mr-5px mb-5px"
v-for="tag in formData.configuration.WarehouseCodes"
:key="tag"
closable
:disable-transitions="false"
@close="tagHandleClose(tag,formData.configuration.WarehouseCodes)"
>
{{ tag }}
</el-tag> -->
<!-- 仓库 -->
<el-input style="flex:1" v-show="warehouseType == 'WarehouseCode'" placeholder="请选择仓库" v-model="formData.configuration.WarehouseCode">
<template #suffix>
<el-button type="text" plain style="color:var(--el-button-text-color)" @click="searchWarehouse">
<Icon icon="ep:search" class="mr-5px" />
</el-button>
</template>
</el-input>
<!-- 库区 -->
<el-input style="flex:1" v-show="warehouseType == 'AreaCode'" placeholder="请选择库区" v-model="formData.configuration.AreaCode">
<template #suffix>
<el-button type="text" plain style="color:var(--el-button-text-color)" @click="searchWarehouse">
<Icon icon="ep:search" class="mr-5px" />
</el-button>
</template>
</el-input>
<!-- 库位组 -->
<el-input style="flex:1" v-show="warehouseType == 'LocationGroupCode'" placeholder="请选择库位组" v-model="formData.configuration.LocationGroupCode">
<template #suffix>
<el-button type="text" plain style="color:var(--el-button-text-color)" @click="searchWarehouse">
<Icon icon="ep:search" class="mr-5px" />
</el-button>
</template>
</el-input>
<!-- 库位 -->
<el-input style="flex:1" v-show="warehouseType == 'LocationCode'" placeholder="请选择库位" v-model="formData.configuration.LocationCode">
<template #suffix>
<el-button type="text" plain style="color:var(--el-button-text-color)" @click="searchWarehouse">
<Icon icon="ep:search" class="mr-5px" />
</el-button>
</template>
</el-input>
<!-- </el-row> -->
<!-- <el-select
v-model="formData.configuration.WarehouseCode"
v-if="warehouseType == 'WarehouseCode'"
placeholder="请选择仓库"
@ -335,8 +383,8 @@
:label="cur.code"
:value="cur.code"
/>
</el-select>
<el-select
</el-select> -->
<!-- <el-select
v-model="formData.configuration.AreaCode"
v-if="warehouseType == 'AreaCode'"
placeholder="请选择库区"
@ -387,7 +435,7 @@
:label="cur.code"
:value="cur.code"
/>
</el-select>
</el-select> -->
</el-form-item>
</el-col>
<!-- 优先空位库 -->
@ -509,6 +557,10 @@
<TableHead :HeadButttondata="Butttondata" @buttonBaseClick="buttonBaseClick" />
</template>
</Dialog>
<SearchTable
ref="searchTableRef"
@searchTableSuccess="searchTableSuccess"
/>
</template>
<script setup lang="ts">
import * as defaultButtons from '@/utils/disposition/defaultButtons'
@ -520,7 +572,15 @@ import { getAreaList } from '@/api/wms/areabasic'
import { getLocationgroupList } from '@/api/wms/locationgroup'
import { getLocationList } from '@/api/wms/location'
import * as RuleApi from '@/api/wms/rule'
import * as WarehouseApi from '@/api/wms/warehouse'
import { Warehouse } from '@/views/wms/basicDataManage/factoryModeling/warehouse/warehouse.data'
import * as AreaApi from '@/api/wms/areabasic'
import { Area } from '@/views/wms/basicDataManage/factoryModeling/areabasic/areabasic.data'
import * as LocationgroupApi from '@/api/wms/locationgroup'
import { Locationgroup } from '@/views/wms/basicDataManage/factoryModeling/locationgroup/locationgroup.data'
import * as LocationApi from '@/api/wms/location'
import { Location } from '@/views/wms/basicDataManage/factoryModeling/location/location.data'
import { DICT_TYPE, getStrDictOptions } from '@/utils/dict'
import { isString } from '@/utils/is'
@ -564,6 +624,7 @@ const formData = ref({
configuration: {
//
WarehouseCode: '',
WarehouseCodes: ['Tag 1', 'Tag 2', 'Tag 3', 'Tag 2', 'Tag 3', 'Tag 2', 'Tag 3', 'Tag 2', 'Tag 3', 'Tag 2', 'Tag 3'],
//
AreaCode: '',
//
@ -674,6 +735,10 @@ const buttonBaseClick = (val, item) => {
dialogVisible.value = false
}
}
const tagHandleClose = (tag: string, list) => {
list.splice(list.indexOf(tag), 1)
}
//
const getFormSupplierList = async () => {
@ -756,6 +821,80 @@ const filterMethodWarehouseList = (query: string) => {
options.warehouseList = options.originWarehouseList
}
}
const searchTableRef = ref()
const searchWarehouse = ()=>{
if(warehouseType.value == 'WarehouseCode'){
//
searchTableRef.value.open(
'请选择仓库',
Warehouse.allSchemas,
WarehouseApi.getWarehousePage,
'WarehouseCode',
'code',
true,
undefined,
undefined,
undefined
)
}else if(warehouseType.value == 'AreaCode'){
searchTableRef.value.open(
'请选择库区',
Area.allSchemas,
AreaApi.getAreaPage,
'WarehouseCode',
'code',
true,
undefined,
undefined,
undefined
)
}else if(warehouseType.value == 'LocationGroupCode'){
searchTableRef.value.open(
'请选择库位组',
Locationgroup.allSchemas,
LocationgroupApi.getLocationgroupPage,
'WarehouseCode',
'code',
true,
undefined,
undefined,
undefined
)
}else if(warehouseType.value == 'LocationCode'){
searchTableRef.value.open(
'请选择库位',
Location.allSchemas,
LocationApi.getLocationPage,
'WarehouseCode',
'code',
true,
undefined,
undefined,
undefined
)
}
}
const searchTableSuccess = (formField, searchField, val, type, row) => {
// let searchTableTitle = warehouseType.value == 'WarehouseCode'?'':warehouseType.value == 'AreaCode'?'':warehouseType.value == 'LocationGroupCode'?'':warehouseType.value == 'LocationCode'?'':''
console.log('searchTableSuccess',formField, searchField, val, type, row)
console.log(val.map(item=>(item['code'])).join(','))
formData.value.configuration[warehouseType.value] = val.map(item=>(item['code'])).join(',')
let fields = ['WarehouseCode','AreaCode','LocationGroupCode','LocationCode']
fields.forEach(item=>{
if(item!=warehouseType.value){
formData.value.configuration[item] = ''
}
})
}
// ///
const changeWarehouse = (e) => {
formData.value.configuration.WarehouseCode = ''
@ -772,6 +911,7 @@ const changeWarehouse = (e) => {
getFormLocationList()
}
}
/** 打开弹窗 */
const open = async (type: string, strategyCode: string, id?: number) => {
@ -780,7 +920,7 @@ const open = async (type: string, strategyCode: string, id?: number) => {
dialogTitle.value = t('action.' + type)
formType.value = type
warehouseType.value = 'WarehouseCode'
getFormWarehouseList()
// getFormWarehouseList()
resetForm()
//
@ -817,6 +957,7 @@ const open = async (type: string, strategyCode: string, id?: number) => {
if (data.configuration) {
formData.value.configuration = JSON.parse(data.configuration)
}
//
if (formData.value.condition[0].ParamCode == 'SupplierCode') {
getFormSupplierList()
@ -829,25 +970,25 @@ const open = async (type: string, strategyCode: string, id?: number) => {
formData.value.configuration.WarehouseCode
) {
warehouseType.value = 'WarehouseCode'
getFormWarehouseList()
// getFormWarehouseList()
} else if (
'AreaCode' in formData.value.configuration &&
formData.value.configuration.AreaCode
) {
warehouseType.value = 'AreaCode'
getFormAreaList()
// getFormAreaList()
} else if (
'LocationGroupCode' in formData.value.configuration &&
formData.value.configuration.LocationGroupCode
) {
warehouseType.value = 'LocationGroupCode'
getFormLocationgrouList()
// getFormLocationgrouList()
} else if (
'LocationCode' in formData.value.configuration &&
formData.value.configuration.LocationCode
) {
warehouseType.value = 'LocationCode'
getFormLocationList()
// getFormLocationList()
}
} finally {
formLoading.value = false
@ -858,6 +999,7 @@ const open = async (type: string, strategyCode: string, id?: number) => {
defaultButtons.formCloseBtn(null) //
]
}
}
@ -965,6 +1107,7 @@ const resetForm = () => {
configuration: {
//
WarehouseCode: '',
// WarehouseCodes: ['Tag 1', 'Tag 2', 'Tag 3', 'Tag 2', 'Tag 3', 'Tag 2', 'Tag 3', 'Tag 2', 'Tag 3', 'Tag 2', 'Tag 3'],
//
AreaCode: '',
//
@ -1036,4 +1179,12 @@ const resetForm = () => {
color: var(--el-color-danger);
margin-right:4px;
}
.border-row{
padding:5px;
border:var(--el-border);
border-radius: var(--el-border-radius-base);
}
</style>

7
src/views/wms/buttMesManage/mesBarCode/index.vue

@ -27,6 +27,13 @@
v-model:currentPage="tableObject.currentPage"
v-model:sort="tableObject.sort"
>
<template #type="{row}">
<span v-if="row.type == 'P'||row.type == 'Q'">
{{ row.type == 'P'?'未加密标签':'加密标签'}}
</span>
<span v-else>{{ row.type }}</span>
</template>
<template #plnt="{row}">
<el-button type="primary" link @click="openDetail(row, '代码', row.plnt)">
<span>{{ row.plnt }}</span>

296
src/views/wms/buttMesManage/mesBarCode/mesBarCode.data.ts

@ -1,6 +1,8 @@
import type { CrudSchema } from '@/hooks/web/useCrudSchemas'
import { dateFormatter } from '@/utils/formatTime'
import { getTenantId } from '@/utils/auth'
let names =[{"text":"1379","value":1},{"text":"1397","value":2},{"text":"2379","value":3}]
let tenant = names.find(item=>item.value == getTenantId())
// 表单校验
export const MesBarCodeRules = reactive({
available: [required],
@ -11,79 +13,106 @@ export const MesBarCodeRules = reactive({
export const MesBarCode = useCrudSchemas(reactive<CrudSchema[]>([
{
label: 'Plnt',
label: '租户',
field: 'plnt',
sort: 'custom',
table: {
width: 120
},
form: {
component: 'InputNumber',
value: 0
},
},
{
label: 'Counter',
field: 'counter',
sort: 'custom',
table: {
width: 150
},
isSearch:true
},
{
label: 'SIGN',
field: 'sign',
sort: 'custom',
table: {
width: 120
},
},
{
label: 'Option',
field: 'option',
sort: 'custom',
table: {
width: 120
componentProps: {
disabled:true,
value: tenant?.text
},
},
},
// {
// label: 'Counter',
// field: 'counter',
// sort: 'custom',
// table: {
// width: 150
// },
// isSearch:true
// },
// {
// label: 'SIGN',
// field: 'sign',
// sort: 'custom',
// table: {
// width: 120
// },
// },
// {
// label: 'Option',
// field: 'option',
// sort: 'custom',
// table: {
// width: 120
// },
// },
{
label: 'Lower Lim.',
label: 'WMS物料代码',
field: 'lowerLim',
sort: 'custom',
table: {
width: 150
},
},
{
label: 'UpperLimit',
field: 'upperLimit',
sort: 'custom',
table: {
isSearch: true,
table: {
width: 150
},
},
// {
// label: 'UpperLimit',
// field: 'upperLimit',
// sort: 'custom',
// table: {
// width: 150
// },
// },
// {
// label: 'ITAC',
// field: 'itac',
// sort: 'custom',
// table: {
// width: 120
// },
// },
{
label: 'ITAC',
field: 'itac',
sort: 'custom',
table: {
width: 120
},
},
{
label: 'Type',
label: '灯码标签类型',
field: 'type',
sort: 'custom',
table: {
table: {
width: 120
},
form: {
component: 'Select',
componentProps: {
options: [{
label:'未加密标签',
value:'P'
},{
label:'加密标签',
value:'Q'
}],
}
},
detail:{
valueFilter:(value)=>{
if(value=='P'){
return `未加密标签`
}else if(value=='Q'){
return '加密标签'
}else{
return value
}
}
}
},
{
label: 'Length BC',
label: '灯码标签字符总长度',
field: 'lengthBc',
sort: 'custom',
table: {
table: {
width: 150
},
form: {
@ -91,19 +120,19 @@ export const MesBarCode = useCrudSchemas(reactive<CrudSchema[]>([
value: 0
},
},
// {
// label: 'Pos. mat',
// field: 'posMat',
// sort: 'custom',
// table: {
// width: 150
// },
// },
{
label: 'Pos. mat',
field: 'posMat',
sort: 'custom',
table: {
width: 150
},
},
{
label: 'Length mat',
label: '客户物料代码字符长度',
field: 'lengthMat',
sort: 'custom',
table: {
table: {
width: 150
},
form: {
@ -111,76 +140,77 @@ export const MesBarCode = useCrudSchemas(reactive<CrudSchema[]>([
value: 0
},
},
// {
// label: 'Pos. revlv',
// field: 'posRevlv',
// sort: 'custom',
// table: {
// width: 150
// },
// },
{
label: 'Pos. revlv',
field: 'posRevlv',
sort: 'custom',
table: {
width: 150
},
},
{
label: 'Part number',
label: '客户物料代码',
field: 'partNumber',
sort: 'custom',
table: {
width: 150
},
},
{
label: 'Pack Label',
field: 'packLabel',
sort: 'custom',
table: {
width: 150
},
},
{
label: 'OES-Label',
field: 'oesLabel',
sort: 'custom',
table: {
width: 150
},
},
{
label: 'Check Rvl',
field: 'checkRvl',
sort: 'custom',
table: {
width: 150
},
},
{
label: 'Days',
field: 'days',
sort: 'custom',
table: {
width: 120
},
form: {
component: 'InputNumber',
value: 0
},
},
{
label: '是否可用',
field: 'available',
sort: 'custom',
dictType: DICT_TYPE.TRUE_FALSE,
dictClass: 'string',
isSearch: true,
table: {
width: 120
width: 150
},
form: {
component: 'Switch',
value: 'TRUE',
componentProps: {
inactiveValue: 'FALSE',
activeValue: 'TRUE'
}
}
},
// {
// label: 'Pack Label',
// field: 'packLabel',
// sort: 'custom',
// table: {
// width: 150
// },
// },
// {
// label: 'OES-Label',
// field: 'oesLabel',
// sort: 'custom',
// table: {
// width: 150
// },
// },
// {
// label: 'Check Rvl',
// field: 'checkRvl',
// sort: 'custom',
// table: {
// width: 150
// },
// },
// {
// label: 'Days',
// field: 'days',
// sort: 'custom',
// table: {
// width: 120
// },
// form: {
// component: 'InputNumber',
// value: 0
// },
// },
// {
// label: '是否可用',
// field: 'available',
// sort: 'custom',
// dictType: DICT_TYPE.TRUE_FALSE,
// dictClass: 'string',
// table: {
// width: 120
// },
// form: {
// component: 'Switch',
// value: 'TRUE',
// componentProps: {
// inactiveValue: 'FALSE',
// activeValue: 'TRUE'
// }
// }
// },
{
label: '创建时间',
field: 'createTime',
@ -245,14 +275,14 @@ export const MesBarCode = useCrudSchemas(reactive<CrudSchema[]>([
width: 150
}
},
{
label: '备注',
field: 'remark',
sort: 'custom',
table: {
width: 120
},
},
// {
// label: '备注',
// field: 'remark',
// sort: 'custom',
// table: {
// width: 120
// },
// },
{
label: '操作',
field: 'action',

2
src/views/wms/inventoryManage/package/index.vue

@ -155,7 +155,7 @@ const buttonBaseClick = (val, item) => {
// -
const butttondata = [
defaultButtons.mainListEditBtn({hasPermi:'wms:package:update'}), //
// defaultButtons.mainListEditBtn({hasPermi:'wms:package:update'}), //
// defaultButtons.mainListDeleteBtn({hasPermi:'wms:package:delete'}), //
defaultButtons.mainListPointBtn(null), //
]

2
src/views/wms/inventoryManage/package/package.data.ts

@ -458,7 +458,7 @@ export const Package = useCrudSchemas(reactive<CrudSchema[]>([
field: 'action',
isForm: false,
table: {
width: 150,
width: 120,
fixed: 'right'
}
}

16
src/views/wms/productionManage/productscrap/productscrapRequestMain/index.vue

@ -272,15 +272,15 @@ const buttonOperationClick = async (row, label, index,isSave = false)=> {
}
})
item.rowId = index
if(tableData.value[index].childList.length > 0) {
tableData.value[index].childList.forEach(itemChild => {
if (itemChild.itemCode == item.itemCode) {
item.qty = itemChild.qty
}
})
}else {
// if(tableData.value[index].childList.length > 0) {
// tableData.value[index].childList.forEach(itemChild => {
// if (itemChild.itemCode == item.itemCode) {
// item.qty = itemChild.qty
// }
// })
// }else {
item.qty = item.bomQty * row.qty
}
// }
const obj = await banchBomPage(row.fromLocationCode, item)
item.batch = obj.batch
})

1
src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptJobMain/purchasereceiptJobMain.data.ts

@ -96,6 +96,7 @@ export const PurchasereceiptJobMain = useCrudSchemas(
{
label: '运输方式',
field: 'transferMode',
dictType: DICT_TYPE.TRANSFER_MODE,
sort: 'custom',
table: {
width: 150

4
src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestMain/purchasereceiptRequestMain.data.ts

@ -572,8 +572,8 @@ export const PurchasereceiptRequestMainRules = reactive({
ppNumber: [
{ required: true, message: '请输入采购订单', trigger: 'blur' }
],
supplierCode: [
{ required: true, message: '请输入供应商代码', trigger: 'blur' }
poNumber: [
{ required: true, message: '请选择采购订单号', trigger: 'blur' }
],
toWarehouseCode: [
{ required: true, message: '请输入到仓库代码', trigger: 'blur' }

22
src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMain/index.vue

@ -233,9 +233,11 @@ const searchTableSuccess = async (formField, searchField, val, formRef, type, ro
if (type == 'tableForm') {
//
if (formField == 'purchaseReceiptRecordNumber') {
if (formField == 'asnNumber') {
row[formField] = val[0][searchField]
//--
row['purchaseReceiptRecordNumber'] = val[0]['number']
row['asnNumber'] = val[0]['asnNumber']
row['supplierCode'] = val[0]['supplierCode']
row['poNumber'] = val[0]['poNumber']
row['poLine'] = val[0]['poLine']
@ -308,18 +310,24 @@ const searchTableSuccess = async (formField, searchField, val, formRef, type, ro
}
} else {
const setV = {}
if (formField == 'supplierCode') {
if (formField == 'supplierCode') {
console.log('formModelformModel',formRef.formModel)
if( formRef.formModel['supplierCode'] != val[0]['code']){
setV['purchaseReceiptRecordNumber'] = ''
setV['asnNumber'] = ''
setV['q2Number'] = ''
tableData.value = []
}
}
if (formField == 'asnNumber') {
if( formRef.formModel['asnNumber'] != val[0]['asnNumber']){
setV['q2Number'] = ''
tableData.value = []
}
}
if (formField == 'q2Number') {
setV['q2Number'] = val[0]['number']
}
if (formField == 'purchaseReceiptRecordNumber') {
if (formField == 'asnNumber') {
// isShowButton.value = false
setV[formField] = val[0][searchField]
setV['purchaseReceiptRecordNumber'] = val[0]['number']
@ -611,7 +619,7 @@ const openForm = async (type: string, row?: number) => {
item.componentProps.disabled = true
item.componentProps.isSearchList = true
}
if (item.field == 'purchaseReceiptRecordNumber') {
if (item.field == 'asnNumber') {
item.componentProps.disabled = true
item.componentProps.isSearchList = true
}
@ -623,7 +631,7 @@ const openForm = async (type: string, row?: number) => {
item.componentProps.disabled = true
item.componentProps.isSearchList = false
}
if (item.field == 'purchaseReceiptRecordNumber') {
if (item.field == 'asnNumber') {
item.componentProps.disabled = true
item.componentProps.isSearchList = false
}
@ -891,7 +899,7 @@ const tableSelectionDelete = (selection) => {
})
nextTick(() => {
const setV = {}
setV['purchaseReceiptRecordNumber'] = ''
setV['asnNumber'] = ''
setV['supplierCode'] = ''
formRef.setValues(setV)
})

9
src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMain/purchasereturnRequestMain.data.ts

@ -213,9 +213,12 @@ export const PurchasereturnRequestMain = useCrudSchemas(
}
}
},
{
label: '采购收货记录单号',
field: 'purchaseReceiptRecordNumber',
// label: '采购收货记录单号',
// field: 'purchaseReceiptRecordNumber',
label: '发货单号',
field: 'asnNumber',
sort: 'custom',
table: {
width: 180
@ -226,7 +229,7 @@ export const PurchasereturnRequestMain = useCrudSchemas(
enterSearch: true,
disabled: true,
isSearchList: true, // 开启查询弹窗
searchListPlaceholder: '请选择采购收货记录单号', // 输入框占位文本
searchListPlaceholder: '请选择发货单号', // 输入框占位文本
searchField: 'number', // 查询弹窗赋值字段
searchTitle: '采购收货记录', // 查询弹窗标题
searchAllSchemas: PurchasereceiptRecordMain1.allSchemas, // 查询弹窗所需类

5
src/views/wms/purchasereceiptManage/sparereceipt/sparereceiptRequestMain/sparereceiptRequestMain.data.ts

@ -575,7 +575,7 @@ export const PurchasereceiptRequestMainRules = reactive({
ppNumber: [
{ required: true, message: '请输入采购订单', trigger: 'blur' }
],
supplierCode: [
poNumber: [
{ required: true, message: '请输入供应商代码', trigger: 'blur' }
],
toWarehouseCode: [
@ -1376,6 +1376,9 @@ export const PurchasereceiptRequestDetailRules = reactive({
itemCode: [
{ required: true, message: '请输入物料代码', trigger: 'change' }
],
qty: [
{ required: true, message: '请输入收货数量', trigger: 'change' }
],
defaultToLocationCode: [
{ required: true, message: '请选择到库位代码', trigger: 'blur' }
],

47
src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRecordMain/supplierinvoiceRecordMain.data.ts

@ -935,8 +935,9 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isDetail: true,
},
{
label: '',
field: '',
label: '系统采购价格',
field: 'purchaseAmountTotalMain',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
@ -966,8 +967,9 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isDetail: true,
},
{
label: '',
field: '',
label: '总价差',
field: 'differencePriceTotalMain',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
@ -1062,8 +1064,8 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isDetail: true,
},
{
label: '差',
field: '',
label: '差',
field: 'totalDifference',
sortTableDefault: 6,
isForm: false,
isTable: false,
@ -1400,6 +1402,39 @@ export const SupplierinvoiceRecordDetail = useCrudSchemas(reactive<CrudSchema[]>
component: 'InputNumber',
}
},
{
label: '合同金额',
field: 'contractAmountTotal',
table: {
width: 150
},
isForm:false,
tableForm:{
disabled: true
}
},
{
label: '采购金额',
field: 'purchaseAmontTotal',
table: {
width: 150
},
isForm:false,
tableForm:{
disabled: true
}
},
{
label: '总差额',
field: 'differencePriceTotal',
table: {
width: 150
},
isForm:false,
tableForm:{
disabled: true
}
},
{
label: '差额',
field: 'differencePrice',

4
src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts

@ -1369,8 +1369,8 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true,
},
{
label: '尾',
field: '',
label: '尾',
field: 'totalDifference',
sortTableDefault: 6,
isForm: false,
isTable: false,

47
src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMainDifference/supplierinvoiceRequestMainDifference.data.ts

@ -1256,8 +1256,9 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true,
},
{
label: '',
field: '',
label: '系统采购价格',
field: 'purchaseAmountTotalMain',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
@ -1287,8 +1288,9 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true,
},
{
label: '',
field: '',
label: '总价差',
field: 'differencePriceTotalMain',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
@ -1383,8 +1385,8 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true,
},
{
label: '差',
field: '',
label: '差',
field: 'totalDifference',
sortTableDefault: 6,
isForm: false,
isTable: false,
@ -1752,6 +1754,39 @@ export const SupplierinvoiceRequestDetail = useCrudSchemas(reactive<CrudSchema[]
precision: 4,
}
},
{
label: '合同金额',
field: 'contractAmountTotal',
table: {
width: 150
},
isForm:false,
tableForm:{
disabled: true
}
},
{
label: '采购金额',
field: 'purchaseAmontTotal',
table: {
width: 150
},
isForm:false,
tableForm:{
disabled: true
}
},
{
label: '总差额',
field: 'differencePriceTotal',
table: {
width: 150
},
isForm:false,
tableForm:{
disabled: true
}
},
{
label: '单价差额',
field: 'differencePrice',

Loading…
Cancel
Save