Browse Source

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

hella_online_20240829
chenfang 5 months ago
parent
commit
1b7ae347ed
  1. 1
      src/components/Descriptions/src/Descriptions.vue
  2. 14
      src/components/Detail/src/Detail.vue
  3. 2
      src/components/Form/src/Form.vue
  4. 4
      src/components/RouterSearch/index.vue
  5. 8
      src/layout/components/ToolHeader.vue
  6. 12
      src/layout/components/UserInfo/src/UserInfo.vue
  7. 16
      src/utils/formatTime.ts
  8. 161
      src/views/qms/inspectionJob/index.vue
  9. 99
      src/views/qms/inspectionJob/inspectionJobMain.data.ts
  10. 30
      src/views/qms/inspectionRecord/inspectionRecordMain.data.ts
  11. 74
      src/views/qms/inspectionRequest/inspectionRequestMain.data.ts
  12. 2
      src/views/qms/inspectionScheme/addForm.vue
  13. 25
      src/views/qms/inspectionTemplate/addForm.vue
  14. 2
      src/views/wms/basicDataManage/itemManage/itemarea/index.vue
  15. 9
      src/views/wms/basicDataManage/itemManage/itempackage/index.vue
  16. 6
      src/views/wms/basicDataManage/itemManage/itempackage/itempackage.data.ts
  17. 70
      src/views/wms/basicDataManage/orderManage/shift/shift.data.ts
  18. 48
      src/views/wms/countManage/count/countJobMain/countJobMain.data.ts
  19. 1
      src/views/wms/countManage/count/countPlanMain/countPlanMain.data.ts
  20. 86
      src/views/wms/countManage/count/countPlanMain/index.vue
  21. 24
      src/views/wms/countManage/count/countRequestMain/countRequestMain.data.ts
  22. 106
      src/views/wms/countManage/countadjust/countadjustRecordMain/countadjustRecordMain.data.ts
  23. 24
      src/views/wms/countManage/countadjust/countadjustRequestMain/countadjustRequestMain.data.ts
  24. 5
      src/views/wms/deliversettlementManage/customerreceipt/customerreceiptRecordMain/customerreceiptRecordMain.data.ts
  25. 4
      src/views/wms/deliversettlementManage/customerreturn/customerreturnRecordMain/customerreturnRecordMain.data.ts
  26. 23
      src/views/wms/deliversettlementManage/deliver/deliverJobMain/deliverJobMain.data.ts
  27. 6
      src/views/wms/deliversettlementManage/deliver/deliverRecordMain/deliverRecordMain.data.ts
  28. 8
      src/views/wms/deliversettlementManage/deliverplan/deliverPlanMain/deliverPlanMain.data.ts
  29. 3
      src/views/wms/deliversettlementManage/stockup/stockupMainJob/index.vue
  30. 4
      src/views/wms/deliversettlementManage/stockup/stockupMainRecord/stockupMainRecord.data.ts
  31. 2
      src/views/wms/deliversettlementManage/stockup/stockupMainRequest/stockupMainRequest.data.ts
  32. 16
      src/views/wms/inventoryjobManage/containermanage/scrapContainerMainRequest/index.vue
  33. 1
      src/views/wms/inventoryjobManage/containermanage/scrapContainerMainRequest/scrapContainerMainRequest.data.ts
  34. 41
      src/views/wms/inventoryjobManage/scrap/scrapRequestMain/index.vue
  35. 10
      src/views/wms/inventoryjobManage/scrap/scrapRequestMain/scrapRequestMain.data.ts
  36. 8
      src/views/wms/issueManage/issue/issueRequestMain/index.vue
  37. 10
      src/views/wms/issueManage/preparetoissueplan/preparetoissueMain/index.vue
  38. 1
      src/views/wms/issueManage/preparetoissueplan/preparetoissueMain/preparetoissueMain.data.ts
  39. 10
      src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/index.vue
  40. 1
      src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/productionreturnRequestMainNo.data.ts
  41. 8
      src/views/wms/productionManage/productdismantle/productdismantleRequestMain/index.vue
  42. 1
      src/views/wms/productionManage/productdismantle/productdismantleRequestMain/productdismantleRequestMain.data.ts
  43. 19
      src/views/wms/productionManage/productionplan/productionMain/index.vue
  44. 18
      src/views/wms/productionManage/productionplan/productionMainAssemble/index.vue
  45. 18
      src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/index.vue
  46. 18
      src/views/wms/productionManage/productionplan/productionMainPredictSparePart/index.vue
  47. 16
      src/views/wms/productionManage/productreceipt/productreceiptRequestMain/index.vue
  48. 16
      src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRequestMain/index.vue
  49. 18
      src/views/wms/productionManage/productreceiptscrap/productreceiptscrapRequestMain/index.vue
  50. 12
      src/views/wms/productionManage/productrepair/productrepairRequestMain/index.vue
  51. 2
      src/views/wms/productionManage/productrepair/productrepairRequestMain/productrepairRequestMain.data.ts
  52. 16
      src/views/wms/productionManage/productscrap/productscrapRequestMain/index.vue
  53. 378
      src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptJobMain/purchasereceiptJobMain.data.ts
  54. 21
      src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMain/index.vue
  55. 1
      src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMain/purchasereturnRequestMain.data.ts
  56. 8
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRecordMain/index.vue
  57. 374
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRecordMain/supplierinvoiceRecordMain.data.ts
  58. 7
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue
  59. 378
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts

1
src/components/Descriptions/src/Descriptions.vue

@ -127,6 +127,7 @@ const showAll = () =>{
:label-align="labelAlign"
:label-class-name="labelClassName"
:width="width"
:span="item.span"
>
<template #label>
<slot

14
src/components/Detail/src/Detail.vue

@ -18,8 +18,8 @@
:data="detailData"
labelClassName="label-class-name"
label-align="left"
direction="vertical"
:column="8"
:direction="direction"
:column="column"
:schema="allSchemas.detailSchema"
:columns="2"
width="200px"
@ -408,6 +408,16 @@ const props = defineProps({
required: false,
default: null
},
direction:{
type: String,
required: false,
default: 'vertical'
},
column:{
type: Number,
required: false,
default: 8
}
})
const isShowDrawer = ref(false)
const detailLoading = ref(false)

2
src/components/Form/src/Form.vue

@ -126,7 +126,7 @@ export default defineComponent({
}
const clearSearchInput = (field) => {
emit('clearSearchInput')
emit('clearSearchInput',field)
}
expose({
setValues,

4
src/components/RouterSearch/index.vue

@ -17,7 +17,7 @@
/>
</el-select> -->
</ElDialog>
<div v-else class="custom-hover custom-hover1" @click.stop="showTopSearch = !showTopSearch">
<div v-else class="custom-hover custom-hover2" @click.stop="showTopSearch = !showTopSearch">
<Icon icon="ep:search" color="#ffffff"/>
<el-select
filterable
@ -170,7 +170,7 @@ defineExpose({
.w-220px {
width: 220px !important;
}
.custom-hover1{
.custom-hover2:hover{
background-color: transparent;
}
</style>

8
src/layout/components/ToolHeader.vue

@ -77,7 +77,7 @@ export default defineComponent({
></LocaleDropdown>
) : undefined} */}
{message.value ? (
<Message class="custom-hover" color="var(--top-header-text-color)"></Message>
<Message class="custom-hover custom-hover1" color="var(--top-header-text-color)"></Message>
) : undefined}
<UserInfo></UserInfo>
</div>
@ -93,4 +93,10 @@ $prefix-cls: #{$namespace}-tool-header;
.#{$prefix-cls} {
transition: left var(--transition-time-02);
}
.custom-hover1:hover{
opacity: 0.5;
background-color: transparent;
scale: 1.2;
transition: all 50ms;
}
</style>

12
src/layout/components/UserInfo/src/UserInfo.vue

@ -51,7 +51,7 @@ const toDocument = () => {
</script>
<template>
<ElDropdown class="custom-hover" :class="prefixCls" trigger="click">
<ElDropdown class="custom-hover custom-hover1" :class="prefixCls" trigger="click">
<div class="flex items-center">
<ElAvatar :src="avatar" alt="" class="w-[calc(var(--logo-height)-25px)] rounded-[50%]" />
<span class="pl-[5px] text-14px text-[var(--top-header-text-color)] <lg:hidden" style="color:#ffffff">
@ -76,3 +76,13 @@ const toDocument = () => {
</template>
</ElDropdown>
</template>
<style lang="scss" scoped>
.custom-hover1:hover{
opacity: 0.5;
background-color: transparent;
scale: 1.1;
transition: all 50ms;
}
</style>

16
src/utils/formatTime.ts

@ -30,7 +30,6 @@ export function addDay(date: Date | number,addDay:number) {
return dayjs(date).add(addDay, 'day')
}
/**
* +
*/
@ -163,6 +162,21 @@ export const dateFormatter = (row, column, cellValue) => {
}
return formatDate(cellValue)
}
/**
* element plus Formatter 使 YYYY-MM-DD HH:mm:ss
*
* @param row
* @param column
* @param cellValue
*/
// @ts-ignore
export const dateFormatter3 = (row, column, cellValue) => {
if (!cellValue) {
return
}
let str = formatDate(cellValue).split(' ')[1]
return str
}
// 获取时间戳
export const formatGetTime = (row, column, cellValue) => {
console.log(cellValue.getTime())

161
src/views/qms/inspectionJob/index.vue

@ -1,27 +1,46 @@
<template>
<ContentWrap>
<!-- 搜索工作栏 -->
<Search :schema="InspectionJobMain.allSchemas.searchSchema" @search="setSearchParams" @reset="setSearchParams" />
<Search
:schema="InspectionJobMain.allSchemas.searchSchema"
@search="setSearchParams"
@reset="setSearchParams"
/>
</ContentWrap>
<!-- 列表头部 -->
<TableHead :HeadButttondata="HeadButttondata" @button-base-click="buttonBaseClick" :routeName="routeName"
@updataTableColumns="updataTableColumns" @searchFormClick="searchFormClick"
:allSchemas="InspectionJobMain.allSchemas" />
<TableHead
:HeadButttondata="HeadButttondata"
@button-base-click="buttonBaseClick"
:routeName="routeName"
@updataTableColumns="updataTableColumns"
@searchFormClick="searchFormClick"
:allSchemas="InspectionJobMain.allSchemas"
/>
<!-- 列表 -->
<ContentWrap>
<Table :columns="tableColumns" :data="tableObject.tableList" :loading="tableObject.loading" :pagination="{
<Table
: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">
}"
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>
@ -41,25 +60,55 @@
/>
<!-- 详情 -->
<Detail
ref="detailRef" :isBasic="false" :allSchemas="InspectionJobMain.allSchemas"
ref="detailRef"
:isBasic="false"
:allSchemas="InspectionJobMain.allSchemas"
:detailAllSchemas="InspectionJobDetail.allSchemas"
:detailAllSchemasRules="InspectionJobDetailRules"
:apiCreate="InspectionJobDetailApi.createInspectionJobDetail"
:apiUpdate="InspectionJobDetailApi.updateInspectionJobDetail"
:apiPage="InspectionJobDetailApi.getInspectionJobDetailPage"
:apiDelete="InspectionJobDetailApi.deleteInspectionJobDetail" @searchTableSuccessDetail="searchTableSuccessDetail"
:isShowAddBtn="false" :detailButtonIsShow="true"
:apiDelete="InspectionJobDetailApi.deleteInspectionJobDetail"
@searchTableSuccessDetail="searchTableSuccessDetail"
:isShowAddBtn="false"
:detailButtonIsShow="true"
/>
<!-- 包装信息 -->
<ListTable ref="listTableRef" titleName="包装信息" :allSchemas="InspectionJobMain.allSchemas"
:detailAllSchemas="InspectionJobPackage.allSchemas" :detailAllSchemasRules="InspectionJobPackageRules"
:list="list" />
<ListTable
ref="listTableRef"
titleName="包装信息"
:allSchemas="InspectionJobMain.allSchemas"
:detailAllSchemas="InspectionJobPackage.allSchemas"
:detailAllSchemasRules="InspectionJobPackageRules"
:list="list"
/>
<el-dialog
v-model="showQualityReport"
:title="t('质检明细')"
width="90%"
append-to-body
destroy-on-close
>
<iframe height="600px" width="100%" :src="qualityReport" frameborder="0"></iframe>
</el-dialog>
</template>
<script setup lang="ts">
import download from '@/utils/download'
import { InspectionJobMain, InspectionJobMainRules, InspectionJobDetail, InspectionJobDetailRules,InspectionJobPackage,InspectionJobPackageRules} from './inspectionJobMain.data'
import { InspectionTemplateMain,InspectionTemplateProcess,InspectionTemplateFeatures,InspectionTemplateRules } from '../inspectionTemplate/inspectionTemplate.data'
import {
InspectionJobMain,
InspectionJobMainRules,
InspectionJobDetail,
InspectionJobDetailRules,
InspectionJobPackage,
InspectionJobPackageRules
} from './inspectionJobMain.data'
import {
InspectionTemplateMain,
InspectionTemplateProcess,
InspectionTemplateFeatures,
InspectionTemplateRules
} from '../inspectionTemplate/inspectionTemplate.data'
import * as InspectionJobPackageApi from '@/api/qms/inspectionJob/InspectionJobPackage/InspectionJobPackage'
import * as InspectionJobMainApi from '@/api/qms/inspectionJob/inspectionJobMain'
@ -69,6 +118,7 @@
import TableHead from '@/components/TableHead/src/TableHead.vue'
import AddForm from './addForm.vue'
import Detail from './detail.vue'
import { getReportUrl } from '@/utils/systemParam'
//
defineOptions({ name: 'InspectionJobMain' })
@ -132,21 +182,27 @@
const HeadButttondata = [
defaultButtons.defaultFreshBtn(null), //
defaultButtons.defaultFilterBtn(null), //
defaultButtons.defaultSetBtn(null), //
defaultButtons.defaultSetBtn(null) //
]
//
const buttonBaseClick = (val, item) => {
if (val == 'add') { //
if (val == 'add') {
//
openForm('create')
} else if (val == 'import') { //
} else if (val == 'import') {
//
handleImport()
} else if (val == 'export') { //
} else if (val == 'export') {
//
handleExport()
} else if (val == 'refresh') { //
} else if (val == 'refresh') {
//
getList()
} else if (val == 'filtrate') { //
} else { //
} else if (val == 'filtrate') {
//
} else {
//
console.log('其他按钮', item)
}
}
@ -172,36 +228,69 @@
// -
const butttondata = (row) => {
return [
defaultButtons.mainListJobAccBtn({hide:isShowMainButton(row,['1']),hasPermi:'qms:inspection-job-main:accept'}), //
defaultButtons.mainListJobCloBtn({hide:isShowMainButton(row,['1']),hasPermi:'qms:inspection-job-main:close'}), //
defaultButtons.mainListJobAbaBtn({hide:isShowMainButton(row,['2']),hasPermi:'qms:inspection-job-main:abandon'}), //
defaultButtons.mainListJobExeBtn({hide:isShowMainButton(row,['2']),hasPermi:'qms:inspection-job-main:execute'}), //
defaultButtons.mainListOrderPubBtn({hide:isShowMainButton2(row,['TRUE']),hasPermi:'qms:inspection-job-main:execute'}), //
defaultButtons.mainListJobAccBtn({
hide: isShowMainButton(row, ['1']),
hasPermi: 'qms:inspection-job-main:accept'
}), //
defaultButtons.mainListJobCloBtn({
hide: isShowMainButton(row, ['1']),
hasPermi: 'qms:inspection-job-main:close'
}), //
defaultButtons.mainListJobAbaBtn({
hide: isShowMainButton(row, ['2']),
hasPermi: 'qms:inspection-job-main:abandon'
}), //
defaultButtons.mainListJobExeBtn({
hide: isShowMainButton(row, ['2']),
hasPermi: 'qms:inspection-job-main:execute'
}), //
defaultButtons.mainListOrderPubBtn({
hide: isShowMainButton2(row, ['TRUE']),
hasPermi: 'qms:inspection-job-main:execute'
}), //
defaultButtons.mainListPackageBtn(null), //
defaultButtons.mainListPlanCheckQualityReportBtn({}) //
]
}
const listTableRef = ref()
const list = ref([])
// -
const buttonTableClick = async (val, row) => {
if (val == 'mainJobExe') { //
if (val == 'mainJobExe') {
//
execute('execute', row)
}else if (val == 'mainPackage') { //
} else if (val == 'mainPackage') {
//
list.value = await InspectionJobPackageApi.getInspectionJobPackageList(row.id)
// row.status = '1'
listTableRef.value.openPackage(row, '包装信息', InspectionJobPackage.allSchemas.tableColumns)
}else if (val == 'mainJobAba') { //
} else if (val == 'mainJobAba') {
//
handleAbandon(row.id)
} else if (val == 'mainJobClo') { //
} else if (val == 'mainJobClo') {
//
handleClose(row.id)
} else if (val == 'mainOrderPub') { //
} else if (val == 'mainOrderPub') {
//
handleRelease(row.id)
} else if (val == 'mainJobAcc') { //
} else if (val == 'mainPlanCheckQualityReport') {
//
checkQualityReport(row)
} else if (val == 'mainJobAcc') {
//
handleAccept(row.id)
}
}
//
const showQualityReport = ref(false)
const qualityReport = ref('')
const checkQualityReport = async (row) => {
showQualityReport.value = true
qualityReport.value = `${getReportUrl()}/purchasereceiptReport?asnNumber=${row.asnNumber}`
}
/** 添加/修改操作 */
// const formRef = ref()
// const openForm = async (type : string, row ?: number) => {
@ -289,12 +378,11 @@ const list = ref([])
* tableForm方法
*/
const tableFormKeys = {}
InspectionJobDetail.allSchemas.tableFormColumns.forEach(item => {
InspectionJobDetail.allSchemas.tableFormColumns.forEach((item) => {
tableFormKeys[item.field] = item.default ? item.default : ''
})
const tableData = ref([])
//
const submitForm = async (formType, data) => {
// return
@ -320,7 +408,6 @@ const list = ref([])
importFormRef.value.open()
}
//
const searchFormClick = (searchData) => {
tableObject.params = {

99
src/views/qms/inspectionJob/inspectionJobMain.data.ts

@ -7,18 +7,22 @@ const { t } = useI18n() // 国际化
import { DICT_TYPE, getStrDictOptions } from '@/utils/dict'
const resultEntryMethodList = getStrDictOptions(DICT_TYPE.INSPECTION_CHARACTERISTICS_RESULT_ENTRY)
const featureTypeList = getStrDictOptions(DICT_TYPE.INSPECTION_CHARACTERISTICS_FEATURE_TYPE)
const isCanUpdateList = [{
const isCanUpdateList = [
{
label: '是',
value: true
},{
},
{
label: '否',
value: false
}]
}
]
/**
* @returns {Array}
*/
export const InspectionJobMain = useCrudSchemas(reactive<CrudSchema[]>([
export const InspectionJobMain = useCrudSchemas(
reactive<CrudSchema[]>([
{
label: '编码',
field: 'number',
@ -48,6 +52,20 @@ export const InspectionJobMain = useCrudSchemas(reactive<CrudSchema[]>([
width: 200
}
},
{
label: '发货单号',
field: 'asnNumber',
sort: 'custom',
isSearch: false,
form: {
componentProps: {
disabled: true
}
},
table: {
width: 150
}
},
{
label: '供应商编码',
field: 'supplierCode',
@ -61,7 +79,8 @@ export const InspectionJobMain = useCrudSchemas(reactive<CrudSchema[]>([
table: {
width: 175
}
},{
},
{
label: '供应商名称',
field: 'supplierName',
sort: 'custom',
@ -73,7 +92,7 @@ export const InspectionJobMain = useCrudSchemas(reactive<CrudSchema[]>([
componentProps: {
disabled: true
}
},
}
},
{
label: '物料编码',
@ -87,7 +106,7 @@ export const InspectionJobMain = useCrudSchemas(reactive<CrudSchema[]>([
componentProps: {
disabled: true
}
},
}
},
{
label: '物料名称',
@ -101,7 +120,7 @@ export const InspectionJobMain = useCrudSchemas(reactive<CrudSchema[]>([
componentProps: {
disabled: true
}
},
}
},
{
label: '物料批次',
@ -429,7 +448,8 @@ export const InspectionJobMain = useCrudSchemas(reactive<CrudSchema[]>([
fixed: 'right'
}
}
]))
])
)
//表单校验
export const InspectionJobMainRules = reactive({
@ -439,24 +459,25 @@ export const InspectionJobMainRules = reactive({
/**
* @returns {Array}
*/
export const InspectionJobDetail = useCrudSchemas(reactive<CrudSchema[]>([
export const InspectionJobDetail = useCrudSchemas(
reactive<CrudSchema[]>([
{
label: '编码',
field: 'number',
sort: 'custom',
isSearch: true,
isSearch: true
},
{
label: '检验方案模板编码',
field: 'inspectionCode',
sort: 'custom',
isSearch: true,
isSearch: true
},
{
label: '描述',
field: 'processDescribe',
sort: 'custom',
isSearch: true,
isSearch: true
},
{
label: '顺序号',
@ -466,43 +487,48 @@ export const InspectionJobDetail = useCrudSchemas(reactive<CrudSchema[]>([
form: {
component: 'InputNumber',
value: 0
},
}
},
{
label: '检验特性编号',
field: 'inspectionCharCode',
sort: 'custom',
isSearch: true,
isSearch: true
},
{
label: '检验特性编码',
field: 'inspectionJobCharacteristicsRespVO.number',
sort: 'custom',
sort: 'custom'
},
{
label: '检验特性描述',
field: 'inspectionJobCharacteristicsRespVO.description',
sort: 'custom',
},{
sort: 'custom'
},
{
label: '检验方法',
field: 'inspectionJobCharacteristicsRespVO.inspectionMethodCode',
sort: 'custom',
},{
sort: 'custom'
},
{
label: '采样过程编码',
field: 'inspectionJobCharacteristicsRespVO.samplingProcessCode',
sort: 'custom',
},{
sort: 'custom'
},
{
label: '动态修改规则编码',
field: 'inspectionJobCharacteristicsRespVO.dynamicUpdateCode',
sort: 'custom',
},{
sort: 'custom'
},
{
label: '是否允许修改特征值',
field: 'inspectionJobCharacteristicsRespVO.isCanUpdate',
sort: 'custom',
formatter: (_: Recordable, __: TableColumn, cellValue: number) => {
return isCanUpdateList.find((account) => account.value == cellValue)?.label
}
},
},{
{
label: '结果录入方式',
field: 'inspectionJobCharacteristicsRespVO.resultEntryMethod',
sort: 'custom',
@ -510,28 +536,31 @@ export const InspectionJobDetail = useCrudSchemas(reactive<CrudSchema[]>([
// dictClass: 'string',
formatter: (_: Recordable, __: TableColumn, cellValue: number) => {
return resultEntryMethodList.find((account) => account.value == cellValue)?.label
}
},
},{
{
label: '特征类型',
field: 'inspectionJobCharacteristicsRespVO.featureType',
sort: 'custom',
formatter: (_: Recordable, __: TableColumn, cellValue: number) => {
return featureTypeList.find((account) => account.value == cellValue)?.label
},
}
]))
}
])
)
//表单校验
export const InspectionJobDetailRules = reactive({
taskCode: [required],
processCode: [required],
sequenceCode: [required],
available: [required],
available: [required]
})
/**
* @returns {Array}
*/
export const InspectionJobPackage = useCrudSchemas(reactive<CrudSchema[]>([
export const InspectionJobPackage = useCrudSchemas(
reactive<CrudSchema[]>([
{
label: '编码',
field: 'number',
@ -603,12 +632,12 @@ export const InspectionJobPackage = useCrudSchemas(reactive<CrudSchema[]>([
isSearch: true,
isTable: false,
table: {
width:150,
width: 150
}
},
]))
}
])
)
//表单校验
export const InspectionJobPackageRules = reactive({
sampleAmount: [required,
{ validator:validateSixNum, trigger: 'blur'}]
sampleAmount: [required, { validator: validateSixNum, trigger: 'blur' }]
})

30
src/views/qms/inspectionRecord/inspectionRecordMain.data.ts

@ -8,7 +8,8 @@ const { t } = useI18n() // 国际化
/**
* @returns {Array}
*/
export const InspectionRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
export const InspectionRecordMain = useCrudSchemas(
reactive<CrudSchema[]>([
{
label: '记录编码',
field: 'number',
@ -40,6 +41,20 @@ export const InspectionRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
width: 200
}
},
{
label: '发货单号',
field: 'asnNumber',
sort: 'custom',
isSearch: false,
form: {
componentProps: {
disabled: true
}
},
table: {
width: 150
}
},
{
label: '供应商编码',
field: 'supplierCode',
@ -49,7 +64,8 @@ export const InspectionRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
table: {
width: 200
}
},{
},
{
label: '供应商名称',
field: 'supplierName',
sort: 'custom',
@ -62,7 +78,7 @@ export const InspectionRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
componentProps: {
disabled: true
}
},
}
},
{
label: '物料编码',
@ -77,7 +93,7 @@ export const InspectionRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
componentProps: {
disabled: true
}
},
}
},
{
label: '物料名称',
@ -92,7 +108,7 @@ export const InspectionRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
componentProps: {
disabled: true
}
},
}
},
{
label: '批次',
@ -379,7 +395,6 @@ export const InspectionRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
table: {
width: 150
}
},
{
label: '创建时间',
@ -414,7 +429,8 @@ export const InspectionRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
fixed: 'right'
}
}
]))
])
)
//表单校验
export const InspectionRecordMainRules = reactive({

74
src/views/qms/inspectionRequest/inspectionRequestMain.data.ts

@ -12,13 +12,19 @@ export const InspectionMainRules = reactive({
itemCode: [required],
requestEndTime: [required],
batch: [required, { validator: validateInteger, message: '请输入正确的整数', trigger: 'blur' }],
requestInspectionNum: [required,{ validator:validateTwoNum, message: '小数点后最多2位', trigger: 'blur'}],
referenceCertificateRow: [{ validator:validateInteger, message: '请输入正确的整数', trigger: 'blur'}],
requestInspectionNum: [
required,
{ validator: validateTwoNum, message: '小数点后最多2位', trigger: 'blur' }
],
referenceCertificateRow: [
{ validator: validateInteger, message: '请输入正确的整数', trigger: 'blur' }
],
inspectionType: [required],
minPackageQty: [required],
minPackageQty: [required]
})
export const InspectionMain = useCrudSchemas(reactive<CrudSchema[]>([
export const InspectionMain = useCrudSchemas(
reactive<CrudSchema[]>([
{
label: '申请编码',
field: 'number',
@ -34,6 +40,21 @@ export const InspectionMain = useCrudSchemas(reactive<CrudSchema[]>([
}
}
},
{
label: '发货单号',
field: 'asnNumber',
sort: 'custom',
isSearch: false,
isForm: false,
form: {
componentProps: {
disabled: true
}
},
table: {
width: 150
}
},
{
label: '申请日期',
field: 'applicationDate',
@ -61,7 +82,7 @@ export const InspectionMain = useCrudSchemas(reactive<CrudSchema[]>([
},
detail: {
dateFormat: 'YYYY-MM-DD'
},
}
},
{
label: '申请时间',
@ -192,11 +213,13 @@ export const InspectionMain = useCrudSchemas(reactive<CrudSchema[]>([
searchField: 'code', // 查询弹窗赋值字段
searchPage: SupplierApi.getSupplierPage, // 查询弹窗所需分页方法
multiple: false,
searchCondition: [{
searchCondition: [
{
key: 'available',
value: 'TRUE',
isMainValue: false
}]
}
]
}
}
},
@ -230,11 +253,13 @@ export const InspectionMain = useCrudSchemas(reactive<CrudSchema[]>([
searchField: 'code', // 查询弹窗赋值字段
searchPage: ItemApi.getItembasicPage, // 查询弹窗所需分页方法
multiple: false,
searchCondition: [{
searchCondition: [
{
key: 'available',
value: 'TRUE',
isMainValue: false
}]
}
]
}
}
},
@ -322,8 +347,7 @@ export const InspectionMain = useCrudSchemas(reactive<CrudSchema[]>([
dictType: DICT_TYPE.INSPECTION_TYPE,
dictClass: 'string',
form: {
componentProps: {
}
componentProps: {}
},
table: {
width: 175
@ -341,7 +365,8 @@ export const InspectionMain = useCrudSchemas(reactive<CrudSchema[]>([
table: {
width: 150
}
}, {
},
{
label: '检验水平',
field: 'inspectionLevel',
sort: 'custom',
@ -350,8 +375,9 @@ export const InspectionMain = useCrudSchemas(reactive<CrudSchema[]>([
table: {
width: 150
},
isSearch: true,
}, {
isSearch: true
},
{
label: 'aql',
field: 'aql',
sort: 'custom',
@ -360,7 +386,8 @@ export const InspectionMain = useCrudSchemas(reactive<CrudSchema[]>([
table: {
width: 150
}
}, {
},
{
label: '操作',
field: 'action',
isForm: false,
@ -369,20 +396,22 @@ export const InspectionMain = useCrudSchemas(reactive<CrudSchema[]>([
fixed: 'right'
}
}
]))
])
)
// 表单校验
export const InspectionRequestPackageRules = reactive({
// packageCode: [required],
// packageSpecificationCode: [required],
amount: [required, { validator: validateTwoNum, message: '小数点后最多2位', trigger: 'blur' }],
measuringUnit: [required],
measuringUnit: [required]
})
/**
* @returns {Array}
*/
export const InspectionRequestPackage = useCrudSchemas(reactive<CrudSchema[]>([
export const InspectionRequestPackage = useCrudSchemas(
reactive<CrudSchema[]>([
{
label: '编码',
field: 'number',
@ -405,7 +434,7 @@ export const InspectionRequestPackage = useCrudSchemas(reactive<CrudSchema[]>([
isSearch: true,
tableForm: {
disabled: false
},
}
},
{
label: '包装规格',
@ -414,7 +443,7 @@ export const InspectionRequestPackage = useCrudSchemas(reactive<CrudSchema[]>([
isSearch: true,
tableForm: {
disabled: false
},
}
},
{
label: '数量',
@ -427,7 +456,7 @@ export const InspectionRequestPackage = useCrudSchemas(reactive<CrudSchema[]>([
},
tableForm: {
disabled: false
},
}
},
{
label: '计量单位',
@ -441,4 +470,5 @@ export const InspectionRequestPackage = useCrudSchemas(reactive<CrudSchema[]>([
width: 150
}
}
]))
])
)

2
src/views/qms/inspectionScheme/addForm.vue

@ -233,7 +233,7 @@
</el-form>
<el-tabs
v-model="editableTabsValue"
editable
closable
class="demo-tabs"
@edit="handleTabsEdit"
type="border-card"

25
src/views/qms/inspectionTemplate/addForm.vue

@ -81,6 +81,18 @@
:label="item.description"
:name="item.name"
>
<template #label>
<span class="custom-tabs-label" style="display: flex; align-items: center">
<span>{{ item.description }}</span>
<Icon
icon="ep:document-copy"
color="#67C23A"
style="margin-left: 10px"
@click.stop="copy(item)"
/>
</span>
</template>
<div class="small-title">检验工序</div>
<!-- <Form
:ref="`formRefProcess`+index"
@ -1016,6 +1028,19 @@ const changeIsTarget = (e,item) => {
rules.value['inspectionCharacteristicsBaseVO.quantifyTarget'][0].required = false
}
}
//
const copy = (item)=>{
const newItem = JSON.parse(JSON.stringify(item))
newItem.name = data.value.process[data.value.process.length-1].name + 1
newItem.code = ''
newItem.id = ''
newItem.sequenceCode =data.value?.process[data.value?.process?.length-1]?.sequenceCode? parseInt(data.value.process[data.value.process.length-1].sequenceCode) + 1 : ''
newItem.inspectionCharacteristicsBaseVO.code = ''
newItem.inspectionCharacteristicsBaseVO. id = ''
newItem.inspectionCharacteristicsBaseVO.concurrencyStamp = 1
data.value.process.push(newItem)
editableTabsValue.value = newItem.name
}
</script>
<style scoped>
.small-title {

2
src/views/wms/basicDataManage/itemManage/itemarea/index.vue

@ -52,7 +52,7 @@
:tableData="tableData"
:apiUpdate="ItemareaApi.updateItemarea"
:apiCreate="ItemareaApi.createItemarea"
:isBusiness="false"
:isBusiness="true"
@handleAddTable="handleAddTable"
@handleDeleteTable="handleDeleteTable"
:isShowReduceButtonSelection="true"

9
src/views/wms/basicDataManage/itemManage/itempackage/index.vue

@ -181,6 +181,9 @@ const openForm = (type: string, row?: any) => {
item.componentProps.disabled = true
item.componentProps.isSearchList = false
}
if (item.field == 'packType') {
item.componentProps.disabled = false
}
})
}else {
Itempackaging.allSchemas.formSchema.forEach((item) => {
@ -192,6 +195,9 @@ const openForm = (type: string, row?: any) => {
item.componentProps.disabled = false
item.componentProps.isSearchList = true
}
if (item.field == 'packType') {
item.componentProps.disabled = true
}
})
}
basicFormRef.value.open(type, row)
@ -261,6 +267,9 @@ const searchTableSuccess = (formField, searchField, val, formRef) => {
if('itemCode'==formField){
setV['uom'] = val[0]['uom']
}
if('packUnit'==formField){
setV['packType'] = val[0]['type']
}
formRef.setValues(setV)
})
}

6
src/views/wms/basicDataManage/itemManage/itempackage/itempackage.data.ts

@ -86,7 +86,7 @@ export const Itempackaging = useCrudSchemas(reactive<CrudSchema[]>([
label: '包装名称',
field: 'packName',
sort: 'custom',
isSearch: true,
isSearch: false,
table: {
width: 120
},
@ -101,7 +101,7 @@ export const Itempackaging = useCrudSchemas(reactive<CrudSchema[]>([
dictType: DICT_TYPE.PACK_UNIT_TYPE,
dictClass: 'string',
sort: 'custom',
isSearch: true,
isSearch: false,
table: {
width: 150
},
@ -110,7 +110,7 @@ export const Itempackaging = useCrudSchemas(reactive<CrudSchema[]>([
label: '包装数量',
field: 'packQty',
sort: 'custom',
isSearch: true,
isSearch: false,
table: {
width: 120
},

70
src/views/wms/basicDataManage/orderManage/shift/shift.data.ts

@ -1,5 +1,5 @@
import type { CrudSchema } from '@/hooks/web/useCrudSchemas'
import { dateFormatter } from '@/utils/formatTime'
import { dateFormatter, dateFormatter3 } from '@/utils/formatTime'
const { t } = useI18n() // 国际化
import { validateYS } from '@/utils/validator'
@ -7,7 +7,8 @@ import {validateYS} from '@/utils/validator'
/**
* @returns {Array}
*/
export const Shift = useCrudSchemas(reactive<CrudSchema[]>([
export const Shift = useCrudSchemas(
reactive<CrudSchema[]>([
{
label: '代码',
field: 'code',
@ -16,7 +17,7 @@ export const Shift = useCrudSchemas(reactive<CrudSchema[]>([
width: 150,
fixed: 'left'
},
isSearch: true,
isSearch: true
},
{
label: '名称',
@ -24,19 +25,19 @@ export const Shift = useCrudSchemas(reactive<CrudSchema[]>([
sort: 'custom',
table: {
width: 150
},
}
},
{
label: '开始时间',
field: 'beginTime',
isTable: true,
formatter: dateFormatter,
formatter: dateFormatter3,
detail: {
dateFormat: 'HH:mm:ss'
},
sort: 'custom',
table: {
width: 180,
width: 180
},
form: {
component: 'TimePicker',
@ -44,7 +45,7 @@ export const Shift = useCrudSchemas(reactive<CrudSchema[]>([
style: { width: '100%' },
type: 'time',
dateFormat: 'HH:mm:ss',
valueFormat: 'x',
valueFormat: 'x'
}
},
isSearch: false,
@ -53,7 +54,7 @@ export const Shift = useCrudSchemas(reactive<CrudSchema[]>([
component: 'TimePicker',
componentProps: {
valueFormat: 'HH:mm:ss',
type: 'timeSelect',
type: 'timeSelect'
}
}
},
@ -61,9 +62,9 @@ export const Shift = useCrudSchemas(reactive<CrudSchema[]>([
label: '结束时间',
field: 'entTime',
isTable: true,
formatter: dateFormatter,
formatter: dateFormatter3,
detail: {
dateFormat: 'HH:mm:ss',
dateFormat: 'HH:mm:ss'
},
sort: 'custom',
table: {
@ -75,7 +76,7 @@ export const Shift = useCrudSchemas(reactive<CrudSchema[]>([
style: { width: '100%' },
type: 'time',
dateFormat: 'HH:mm:ss',
valueFormat: 'x',
valueFormat: 'x'
}
},
isSearch: false,
@ -84,7 +85,7 @@ export const Shift = useCrudSchemas(reactive<CrudSchema[]>([
component: 'TimePicker',
componentProps: {
valueFormat: 'HH:mm:ss',
type: 'timeSelect',
type: 'timeSelect'
}
}
},
@ -105,7 +106,7 @@ export const Shift = useCrudSchemas(reactive<CrudSchema[]>([
inactiveValue: 'FALSE',
activeValue: 'TRUE'
}
},
}
},
{
label: '是否可用',
@ -125,7 +126,7 @@ export const Shift = useCrudSchemas(reactive<CrudSchema[]>([
inactiveValue: 'FALSE',
activeValue: 'TRUE'
}
},
}
},
{
label: '生效时间',
@ -145,9 +146,9 @@ export const Shift = useCrudSchemas(reactive<CrudSchema[]>([
style: { width: '100%' },
type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x',
valueFormat: 'x'
}
}
},
},
{
label: '失效时间',
@ -167,9 +168,9 @@ export const Shift = useCrudSchemas(reactive<CrudSchema[]>([
style: { width: '100%' },
type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x',
valueFormat: 'x'
}
}
},
},
{
label: '备注',
@ -177,7 +178,7 @@ export const Shift = useCrudSchemas(reactive<CrudSchema[]>([
sort: 'custom',
table: {
width: 150
},
}
},
{
label: '创建时间',
@ -196,7 +197,7 @@ export const Shift = useCrudSchemas(reactive<CrudSchema[]>([
style: { width: '100%' },
type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x',
valueFormat: 'x'
}
}
},
@ -229,7 +230,7 @@ export const Shift = useCrudSchemas(reactive<CrudSchema[]>([
style: { width: '100%' },
type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x',
valueFormat: 'x'
}
}
},
@ -253,7 +254,8 @@ export const Shift = useCrudSchemas(reactive<CrudSchema[]>([
fixed: 'right'
}
}
]))
])
)
//表单校验
export const ShiftRules = reactive({
@ -262,22 +264,10 @@ export const ShiftRules = reactive({
{ max: 50, message: '不得超过50个字符', trigger: 'blur' },
{ validator: validateYS, message: '请输入正确的代码', trigger: 'blur' }
],
name: [
{ max: 50, message: '不得超过50个字符', trigger: 'blur' }
],
remark: [
{ max: 50, message: '不得超过50个字符', trigger: 'blur' }
],
beginTime: [
{ required: true, message: '请输入开始时间', trigger: 'blur' }
],
entTime: [
{ required: true, message: '请输入结束时间', trigger: 'blur' }
],
endAtNextDay: [
{ required: true, message: '请选择是否跨天', trigger: 'change' }
],
available: [
{ required: true, message: '请选择是否可用', trigger: 'change' }
],
name: [{ max: 50, message: '不得超过50个字符', trigger: 'blur' }],
remark: [{ max: 50, message: '不得超过50个字符', trigger: 'blur' }],
beginTime: [{ required: true, message: '请输入开始时间', trigger: 'blur' }],
entTime: [{ required: true, message: '请输入结束时间', trigger: 'blur' }],
endAtNextDay: [{ required: true, message: '请选择是否跨天', trigger: 'change' }],
available: [{ required: true, message: '请选择是否可用', trigger: 'change' }]
})

48
src/views/wms/countManage/count/countJobMain/countJobMain.data.ts

@ -83,22 +83,6 @@ export const CountJobMain = useCrudSchemas(reactive<CrudSchema[]>([
width: 150
},
},
// {
// label: '仓库代码',
// field: 'warehouseCode',
// sort: 'custom',
// table: {
// width: 150
// },
// },
// {
// label: '库位代码',
// field: 'locationCode',
// sort: 'custom',
// table: {
// width: 150
// },
// },
{
label: '申请时间',
field: 'requestTime',
@ -655,6 +639,38 @@ export const CountJobDetail = useCrudSchemas(reactive<CrudSchema[]>([
width: 150
},
},
{
label: '仓库代码',
field: 'warehouseCode',
sort: 'custom',
table: {
width: 150
},
},
{
label: '库区代码',
field: 'areaCode',
sort: 'custom',
table: {
width: 150
},
},{
label: '库位组代码',
field: 'locationGroupCode',
sort: 'custom',
table: {
width: 150
},
},
{
label: '库位代码',
field: 'locationCode',
sort: 'custom',
table: {
width: 150
},
},
{
label: '器具号',
field: 'containerNumber',

1
src/views/wms/countManage/count/countPlanMain/countPlanMain.data.ts

@ -55,6 +55,7 @@ export const CountPlanMain = useCrudSchemas(reactive<CrudSchema[]>([
table: {
width: 150
},
isDetail:false,
isTable:false,
form:{
componentProps:{

86
src/views/wms/countManage/count/countPlanMain/index.vue

@ -111,7 +111,7 @@ import {
CountPlanDetail,
CountPlanDetailRules,
CountPlanMain,
CountPlanMainRules,
CountPlanMainRules
} from './countPlanMain.data'
import * as CountPlanMainApi from '@/api/wms/countPlanMain'
import * as CountPlanDetailApi from '@/api/wms/countPlanDetail'
@ -133,9 +133,7 @@ import * as WarehouseApi from '@/api/wms/warehouse'
import { Area } from '@/views/wms/basicDataManage/factoryModeling/areabasic/areabasic.data'
import * as AreaApi from '@/api/wms/areabasic'
import {
Locationgroup
} from '@/views/wms/basicDataManage/factoryModeling/locationgroup/locationgroup.data'
import { Locationgroup } from '@/views/wms/basicDataManage/factoryModeling/locationgroup/locationgroup.data'
import * as LocationgroupApi from '@/api/wms/locationgroup'
import { Location } from '@/views/wms/basicDataManage/factoryModeling/location/location.data'
@ -412,11 +410,28 @@ const openForm = async (type: string, row?: any) => {
] //
row = row ? row : {}
// row.dimension = 'BY_INEVNEOTY'
// CountPlanMain.allSchemas.formSchema.forEach((item) => {
// if (item.field == 'crontab') {
// item.componentProps.disabled = true
// }
// })
if (row.type == 'CYCLE') {
CountPlanMain.allSchemas.formSchema.forEach((item) => {
if (item.field == 'crontab') {
item.componentProps.disabled = false
item.label = '执行周期'
}
})
CountPlanMainRules.crontab[0].required = true
} else {
CountPlanMainRules.crontab[0].required = false
CountPlanMain.allSchemas.formSchema.forEach((item) => {
if (item.field == 'crontab') {
item.componentProps.disabled = true
item.label = ''
}
})
}
formRef.value.open(type, row)
// Promise.all([getOwnerAllList(),
@ -644,6 +659,15 @@ const tableSelectionDelete = (selection) => {
}
//
const submitForm = async (formType, data) => {
var isHave = CountPlanMain.allSchemas.formSchema.some(function (item) {
return item.field === 'beginTime' || item.field === 'endTime'
})
if (isHave) {
if (data.beginTime && data.endTime && data.beginTime >= data.endTime) {
message.error('开始时间大于结束时间')
return
}
}
data.subList = tableData.value.map((item) => {
return {
type: item.type,
@ -721,22 +745,34 @@ const selectChange = (field, val) => {
}
})
}
  formRef.value.formRef.setValues({
       crontab:''
    })
if (val == 'DYNAMIC') {
CountPlanMain.allSchemas.formSchema[3].label = '限值(%)'
CountPlanMain.allSchemas.formSchema[3].componentProps.min = 0
CountPlanMain.allSchemas.formSchema[3].componentProps.max = 100
CountPlanMain.allSchemas.formSchema[3].componentProps.disabled = false
} else if (val == 'LOW' || val == 'RANDOM') {
CountPlanMain.allSchemas.formSchema[3].label = '限值'
CountPlanMain.allSchemas.formSchema[3].componentProps.min = 0
CountPlanMain.allSchemas.formSchema[3].componentProps.max = Infinity
CountPlanMain.allSchemas.formSchema[3].componentProps.disabled = false
} else {
CountPlanMain.allSchemas.formSchema[3].componentProps.disabled = true
}
formRef.value.formRef.setValues({
crontab: ''
})
// if (val == 'DYNAMIC') {
// CountPlanMain.allSchemas.formSchema.forEach(item=>{
// if(item.field == 'limitedValue'){
// item.label = '%'
// item.componentProps.min = 0
// item.componentProps.max = 100
// item.componentProps.disabled = false
// }
// })
// } else if (val == 'LOW' || val == 'RANDOM') {
// CountPlanMain.allSchemas.formSchema.forEach(item=>{
// if(item.field == 'limitedValue'){
// item.label = '%'
// item.componentProps.min = 0
// item.componentProps.max =Infinity
// item.componentProps.disabled = false
// }
// })
// } else {
// CountPlanMain.allSchemas.formSchema.forEach(item=>{
// if(item.field == 'limitedValue'){
// item.componentProps.disabled = true
// }
// })
// }
}
}
const formTypeDetail = ref('InputString') //
@ -823,7 +859,7 @@ const selectChangeDetail = (field, val) => {
case 'ITEMS_CODE':
CountPlanDetail.allSchemas.formSchema.forEach((item) => {
if (item.field == 'value') {
item.componentProps.isInpuFocusShow = true
item.componentProps.isSearchList = true
item.componentProps.searchTitle = '物品信息'
item.componentProps.searchAllSchemas = Itembasic.allSchemas
item.componentProps.searchPage = ItembasicApi.getItembasicPage
@ -833,7 +869,7 @@ const selectChangeDetail = (field, val) => {
case 'WAREHOUSE_CODE':
CountPlanDetail.allSchemas.formSchema.forEach((item) => {
if (item.field == 'value') {
item.componentProps.isInpuFocusShow = true
item.componentProps.isSearchList = true
item.componentProps.searchTitle = '仓库信息'
item.componentProps.searchAllSchemas = Warehouse.allSchemas
item.componentProps.searchPage = WarehouseApi.getWarehousePage
@ -843,7 +879,7 @@ const selectChangeDetail = (field, val) => {
case 'AREABASIC_CODE':
CountPlanDetail.allSchemas.formSchema.forEach((item) => {
if (item.field == 'value') {
item.componentProps.isInpuFocusShow = true
item.componentProps.isSearchList = true
item.componentProps.searchTitle = '库区信息'
item.componentProps.searchAllSchemas = Area.allSchemas
item.componentProps.searchPage = AreaApi.getAreaPage
@ -853,7 +889,7 @@ const selectChangeDetail = (field, val) => {
case 'LOCATIONGROUP_CODE':
CountPlanDetail.allSchemas.formSchema.forEach((item) => {
if (item.field == 'value') {
item.componentProps.isInpuFocusShow = true
item.componentProps.isSearchList = true
item.componentProps.searchTitle = '库位组信息'
item.componentProps.searchAllSchemas = Locationgroup.allSchemas
item.componentProps.searchPage = LocationgroupApi.getLocationgroupPage
@ -863,7 +899,7 @@ const selectChangeDetail = (field, val) => {
case 'LOCATION_CODE':
CountPlanDetail.allSchemas.formSchema.forEach((item) => {
if (item.field == 'value') {
item.componentProps.isInpuFocusShow = true
item.componentProps.isSearchList = true
item.componentProps.searchTitle = '库位组信息'
item.componentProps.searchAllSchemas = Location.allSchemas
item.componentProps.searchPage = LocationApi.getLocationPage

24
src/views/wms/countManage/count/countRequestMain/countRequestMain.data.ts

@ -482,6 +482,30 @@ export const CountRequestDetail = useCrudSchemas(reactive<CrudSchema[]>([
type: 'Select'
}
},
{
label: '仓库代码',
field: 'warehouseCode',
sort: 'custom',
table: {
width: 150
},
},
{
label: '库区代码',
field: 'areaCode',
sort: 'custom',
table: {
width: 150
},
},{
label: '库位组代码',
field: 'locationGroupCode',
sort: 'custom',
table: {
width: 150
},
},
{
label: '库位代码',
field: 'locationCode',

106
src/views/wms/countManage/countadjust/countadjustRecordMain/countadjustRecordMain.data.ts

@ -51,22 +51,22 @@ export const CountadjustRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
isTable:true,
isForm: true
},
{
label: '出库事务类型',
field: 'outTransactionType',
sort: 'custom',
table: {
width: 150
},
},
{
label: '入库事务类型',
field: 'inTransactionType',
sort: 'custom',
table: {
width: 150
},
},
// {
// label: '出库事务类型',
// field: 'outTransactionType',
// sort: 'custom',
// table: {
// width: 150
// },
// },
// {
// label: '入库事务类型',
// field: 'inTransactionType',
// sort: 'custom',
// table: {
// width: 150
// },
// },
{
label: '申请时间',
field: 'requestTime',
@ -164,17 +164,17 @@ export const CountadjustRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
width: 150
},
},
{
label: '接口类型',
field: 'interfaceType',
dictType: DICT_TYPE.INTERFACE_TYPE,
dictClass: 'string',
isTable: true,
sort: 'custom',
table: {
width: 150
},
},
// {
// label: '接口类型',
// field: 'interfaceType',
// dictType: DICT_TYPE.INTERFACE_TYPE,
// dictClass: 'string',
// isTable: true,
// sort: 'custom',
// table: {
// width: 150
// },
// },
{
label: '备注',
field: 'remark',
@ -267,9 +267,9 @@ export const CountadjustRecordMainRules =reactive({
departmentCode: [
{ required: true, message: '请输入部门', trigger: 'blur' }
],
interfaceType: [
{ required: true, message: '请选择接口类型', trigger: 'change' }
],
// interfaceType: [
// { required: true, message: '请选择接口类型', trigger: 'change' }
// ],
number: [
{ required: true, message: '请输入单据号', trigger: 'blur' }
],
@ -360,6 +360,30 @@ export const CountadjustRecordDetail = useCrudSchemas(reactive<CrudSchema[]>([
width: 150
},
},
{
label: '仓库代码',
field: 'warehouseCode',
sort: 'custom',
table: {
width: 150
},
},
{
label: '库区代码',
field: 'areaCode',
sort: 'custom',
table: {
width: 150
},
},{
label: '库位组代码',
field: 'locationGroupCode',
sort: 'custom',
table: {
width: 150
},
},
{
label: '库位代码',
field: 'locationCode',
@ -455,17 +479,17 @@ export const CountadjustRecordDetail = useCrudSchemas(reactive<CrudSchema[]>([
// width: 150
// },
// },
{
label: '接口类型',
field: 'interfaceType',
dictType: DICT_TYPE.INTERFACE_TYPE,
dictClass: 'string',
isTable: true,
sort: 'custom',
table: {
width: 150
},
},
// {
// label: '接口类型',
// field: 'interfaceType',
// dictType: DICT_TYPE.INTERFACE_TYPE,
// dictClass: 'string',
// isTable: true,
// sort: 'custom',
// table: {
// width: 150
// },
// },
{
label: '备注',
field: 'remark',

24
src/views/wms/countManage/countadjust/countadjustRequestMain/countadjustRequestMain.data.ts

@ -518,6 +518,30 @@ export const CountadjustRequestDetail = useCrudSchemas(reactive<CrudSchema[]>([
precision: 6
}
},
{
label: '仓库代码',
field: 'warehouseCode',
sort: 'custom',
table: {
width: 150
},
},
{
label: '库区代码',
field: 'areaCode',
sort: 'custom',
table: {
width: 150
},
},{
label: '库位组代码',
field: 'locationGroupCode',
sort: 'custom',
table: {
width: 150
},
},
{
label: '库位代码',
field: 'locationCode',

5
src/views/wms/deliversettlementManage/customerreceipt/customerreceiptRecordMain/customerreceiptRecordMain.data.ts

@ -45,8 +45,9 @@ export const CustomerreceiptRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
field: 'status',
dictType: DICT_TYPE.REQUEST_STATUS,
dictClass: 'string',
isSearch: true,
isTable: true,
isSearch: false,
isTable: false,
isDetail: false,
isForm: false,
sort: 'custom',
table: {

4
src/views/wms/deliversettlementManage/customerreturn/customerreturnRecordMain/customerreturnRecordMain.data.ts

@ -20,7 +20,9 @@ export const CustomerreturnRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
field: 'status',
dictType: DICT_TYPE.REQUEST_STATUS,
dictClass: 'string',
isTable: true,
isSearch: false,
isTable: false,
isDetail: false,
isForm: false,
sort: 'custom',
table: {

23
src/views/wms/deliversettlementManage/deliver/deliverJobMain/deliverJobMain.data.ts

@ -44,10 +44,23 @@ export const DeliverJobMain = useCrudSchemas(reactive<CrudSchema[]>([
width: 150
},
},
{
label: '客户月台代码',
field: 'customerDockCode',
sort: 'custom',
table: {
width: 150
},
isTable: true,
},
{
label: '发货月台',
field: 'deliverDock',
sort: 'custom',
isSearch: false,
isTable: false,
isDetail: false,
isForm: false,
table: {
width: 150
},
@ -81,16 +94,6 @@ export const DeliverJobMain = useCrudSchemas(reactive<CrudSchema[]>([
isTable: false,
},
{
label: '客户月台代码',
field: 'customerDockCode',
sort: 'custom',
table: {
width: 150
},
isTable: false,
},
{
label: '承运商',
field: 'carrierCode',

6
src/views/wms/deliversettlementManage/deliver/deliverRecordMain/deliverRecordMain.data.ts

@ -40,6 +40,9 @@ export const DeliverRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
width: 150
},
isSearch: false,
isTable: false,
isForm: false,
isDetail:false,
},
// {
// label: '发货计划单号',
@ -63,8 +66,9 @@ export const DeliverRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
dictType: DICT_TYPE.REQUEST_STATUS,
dictClass: 'string',
isSearch: false,
isTable: true,
isTable: false,
isForm: false,
isDetail:false,
sort: 'custom',
table: {
width: 150

8
src/views/wms/deliversettlementManage/deliverplan/deliverPlanMain/deliverPlanMain.data.ts

@ -883,7 +883,7 @@ export const DeliverPlanDetailRequest = useCrudSchemas(reactive<CrudSchema[]>([
field: 'number',
sort: 'custom',
table: {
width: 180
width: 350
},
form: {
componentProps: {
@ -896,7 +896,7 @@ export const DeliverPlanDetailRequest = useCrudSchemas(reactive<CrudSchema[]>([
field: 'itemCode',
sort: 'custom',
table: {
width: 150
width: 350
},
tableForm:{
multiple:true,
@ -923,7 +923,7 @@ export const DeliverPlanDetailRequest = useCrudSchemas(reactive<CrudSchema[]>([
field: 'planQty',
sort: 'custom',
table: {
width: 150
width: 350
},
form: {
component: 'InputNumber',
@ -946,7 +946,7 @@ export const DeliverPlanDetailRequest = useCrudSchemas(reactive<CrudSchema[]>([
isTable: true,
sort: 'custom',
table: {
width: 150
width: 360
},
tableForm: {
disabled: true,

3
src/views/wms/deliversettlementManage/stockup/stockupMainJob/index.vue

@ -62,6 +62,9 @@
:detailAllSchemas="StockupDetailJob.allSchemas"
:detailAllSchemasRules="StockupDetailJobRules"
:searchTableParams="searchTableParams"
:detailButtonIsShowAdd="false"
:detailButtonIsShowEdit="false"
:detailButtonIsShowDelete="false"
:apiPage="StockupJobDetailApi.getStockupDetailJobPage"
/>
</template>

4
src/views/wms/deliversettlementManage/stockup/stockupMainRecord/stockupMainRecord.data.ts

@ -314,6 +314,7 @@ export const StockupMainRecord = useCrudSchemas(reactive<CrudSchema[]>([
label: '操作',
field: 'action',
isForm: false,
isTable: false,
table: {
width: 150,
fixed: 'right'
@ -557,7 +558,7 @@ export const StockupDetailRecord = useCrudSchemas(reactive<CrudSchema[]>([
field: 'interfaceType',
dictType: DICT_TYPE.INTERFACE_TYPE,
dictClass: 'string',
isTable: true,
isTable: false,
hiddenInMain: true,
sort: 'custom',
table: {
@ -618,6 +619,7 @@ export const StockupDetailRecord = useCrudSchemas(reactive<CrudSchema[]>([
label: '操作',
field: 'action',
isForm: false,
isTable: false,
hiddenInMain: true,
table: {
width: 150,

2
src/views/wms/deliversettlementManage/stockup/stockupMainRequest/stockupMainRequest.data.ts

@ -741,6 +741,8 @@ export const StockupDetailRequest = useCrudSchemas(reactive<CrudSchema[]>([
label: '从库位',
field: 'fromLocationCode',
sort: 'custom',
isTableForm: false,
isTable: false,
table: {
width: 150
},

16
src/views/wms/inventoryjobManage/containermanage/scrapContainerMainRequest/index.vue

@ -42,6 +42,8 @@
<!-- 表单弹窗添加/修改 -->
<BasicForm
ref="basicFormRef"
:isOpenSearchTable="true"
fieldTableColumn="containerNumber"
@success="getList"
:rules="ContainerMainRequestRules"
:formAllSchemas="ContainerMainRequest.allSchemas"
@ -131,11 +133,15 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row) =>
nextTick(() => {
if (type == 'tableForm') {
if(formField == 'containerNumber') {
row['containerNumber'] = val[0]['itemCode']
row['uom'] = val[0]['uom']
row['fromLocationCode'] = val[0]['locationCode']
row['fromInventoryStatus'] = val[0]['inventoryStatus']
row['toInventoryStatus'] = 'SCRAP'
val.forEach(item=>{
const newRow = JSON.parse(JSON.stringify({...tableFormKeys,...item}))
newRow['containerNumber'] = item['itemCode']
newRow['uom'] = item['uom']
newRow['fromLocationCode'] = item['locationCode']
newRow['fromInventoryStatus'] = item['inventoryStatus']
newRow['toInventoryStatus'] = 'SCRAP'
tableData.value.push(newRow)
})
}else if(formField == 'toLocationCode'){
row['toLocationCode'] = val[0]['code']
}else {

1
src/views/wms/inventoryjobManage/containermanage/scrapContainerMainRequest/scrapContainerMainRequest.data.ts

@ -357,6 +357,7 @@ export const ContainerDetailRequest = useCrudSchemas(reactive<CrudSchema[]>([
field: 'containerNumber',
sort: 'custom',
tableForm: {
multiple: true,
isInpuFocusShow: true, // 开启查询弹窗
searchListPlaceholder: '请选择器具号',
searchField: 'itemCode',

41
src/views/wms/inventoryjobManage/scrap/scrapRequestMain/index.vue

@ -42,6 +42,8 @@
<!-- 表单弹窗添加/修改 -->
<BasicForm
ref="formRef"
:isOpenSearchTable="true"
fieldTableColumn="packingNumber"
@success="getList"
:rules="ScrapRequestMainRules"
:formAllSchemas="ScrapRequestMain.allSchemas"
@ -104,6 +106,7 @@ const routeName = ref()
routeName.value = route.name
const tableColumns = ref([...ScrapRequestMain.allSchemas.tableColumns,...ScrapRequestDetail.allSchemas.tableMainColumns])
//
const updataTableColumns = (val) => {
tableColumns.value = val
@ -114,16 +117,32 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
nextTick(() => {
if (type == 'tableForm') {
//
row[formField] = val[0][searchField]
row['packingNumber'] = val[0]['packingNumber']
row['batch'] = val[0]['batch']
row['fromLocationCode'] = val[0]['locationCode']
row['itemCode'] = val[0]['itemCode']
row['uom'] = val[0]['uom']
// val.forEach(item=>{
// const newRow = JSON.parse(JSON.stringify({...tableFormKeys,...item}))
// newRow[formField] = item[searchField]
// newRow['packingNumber'] = item['packingNumber']
// newRow['batch'] = item['batch']
// newRow['fromLocationCode'] = item['locationCode']
// newRow['itemCode'] = item['itemCode']
// newRow['uom'] = item['uom']
// tableData.value.push(newRow)
// })
//
let param = {'itemCode':val[0]['itemCode'] as string}
let param = {'itemCodes':val.map(item=>item.itemCode).join(',') as string}
StdcostpriceApi.queryStdcostpriceByItemCode(param).then(res => {
row['singlePrice'] = res.price
val.forEach(item=>{
const itemCode = res.find(item1=>item1['itemCode']==item['itemCode'])
const newRow = JSON.parse(JSON.stringify({...tableFormKeys,...item}))
newRow[formField] = item[searchField]
newRow['packingNumber'] = item['packingNumber']
newRow['batch'] = item['batch']
newRow['fromLocationCode'] = item['locationCode']
newRow['itemCode'] = item['itemCode']
newRow['uom'] = item['uom']
newRow['singlePrice'] = itemCode?itemCode['price']:''
tableData.value.push(newRow)
})
// row['singlePrice'] = res.price
})
} else {
const setV = {}
@ -143,9 +162,11 @@ const searchTableSuccessDetail = (formField, searchField, val, formRef ) => {
setV['itemCode'] = val[0]['itemCode']
setV['uom'] = val[0]['uom']
//
let param = {'itemCode':val[0]['itemCode'] as string}
let param = {'itemCodes':val[0]['itemCode'] as string}
StdcostpriceApi.queryStdcostpriceByItemCode(param).then(res => {
setV['singlePrice'] = res.price
if(res&&res.length>0){
setV['singlePrice'] = res[0].price
}
})
formRef.setValues(setV)
})

10
src/views/wms/inventoryjobManage/scrap/scrapRequestMain/scrapRequestMain.data.ts

@ -396,6 +396,9 @@ export const ScrapRequestMainRules = reactive({
remark: [
{ max: 50, message: '不得超过50个字符', trigger: 'blur' }
],
fromWarehouseCode:[
{required: true,message: '请选择从仓库代码',trigger: 'change' }
]
})
/**
@ -480,6 +483,7 @@ export const ScrapRequestDetail = useCrudSchemas(reactive<CrudSchema[]>([
width: 150
},
tableForm:{
multiple:true,
isInpuFocusShow: true, // 开启查询弹窗
searchListPlaceholder: '请选择包装号',
searchField: 'packingNumber',
@ -503,6 +507,12 @@ export const ScrapRequestDetail = useCrudSchemas(reactive<CrudSchema[]>([
action: '==',
isSearch: true,
isMainValue: false
},{
key: 'inventoryStatus',
value: 'SCRAP',
action: '==',
isSearch: true,
isMainValue: false
}]
},
form: {

8
src/views/wms/issueManage/issue/issueRequestMain/index.vue

@ -61,6 +61,7 @@
@submitForm="submitForm"
@onEnter="onEnter"
@onChange="onChange"
@clearSearchInput="onChange"
/>
<!-- 详情 -->
@ -117,8 +118,15 @@ const onChange = async (field,value) => {
setV['productionLineCode'] = ''
setV['workStationCode'] = ''
formRef.value.formRef.setValues(setV)
}else if(field== 'productionLineCode'){
//线
const setV = {}
setV['workStationCode'] = ''
formRef.value.formRef.setValues(setV)
}
}
const onEnter = async (field,value) => {
if (field == 'productionLineCode') {
//线

10
src/views/wms/issueManage/preparetoissueplan/preparetoissueMain/index.vue

@ -42,6 +42,8 @@
<!-- 表单弹窗添加/修改 -->
<BasicForm
ref="formRef"
:isOpenSearchTable="true"
fieldTableColumn="workStation"
@success="getList"
:rules="PreparetoissueMainRules"
:formAllSchemas="PreparetoissueMain.allSchemas"
@ -113,8 +115,12 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
row['itemCode'] = val[0]['componentItemCode']
row['uom'] = val[0]['componentUom']
} else {
row[formField] = val[0][searchField]
row['toLocationCode'] = val[0]['rawLocationCode']
val.forEach(item=>{
const newRow = JSON.parse(JSON.stringify({...tableFormKeys,...item}))
newRow[formField] = item[searchField]
newRow['toLocationCode'] = item['rawLocationCode']
tableData.value.push(newRow)
})
}
} else {
const setV = {}

1
src/views/wms/issueManage/preparetoissueplan/preparetoissueMain/preparetoissueMain.data.ts

@ -503,6 +503,7 @@ export const PreparetoissueDetail = useCrudSchemas(reactive<CrudSchema[]>([
}
},
tableForm: {
multiple: true,
isInpuFocusShow: true,
searchListPlaceholder: '请选择工位', // 输入框占位文本
searchField: 'code', // 查询弹窗赋值字段

10
src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/index.vue

@ -42,6 +42,8 @@
<!-- 表单弹窗添加/修改 -->
<BasicForm
ref="formRef"
:isOpenSearchTable="true"
fieldTableColumn="workStationCode"
@success="getList"
:rules="ProductionreturnRequestMainRules"
:formAllSchemas="ProductionreturnRequestMain.allSchemas"
@ -193,8 +195,12 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
})
}
} else if(formField == 'workStationCode') {
row['workStationCode'] = val[0]['code']
row['fromLocationCode'] = val[0]['rawLocationCode']
val.forEach(item=>{
const newRow = JSON.parse(JSON.stringify({...tableFormKeys,...item}))
newRow['workStationCode'] = item['code']
newRow['fromLocationCode'] = item['rawLocationCode']
tableData.value.push(newRow)
})
} else if(formField == 'packUnit') {
row['packUnit'] = val[0]['packUnit']
row['packQty'] = val[0]['packQty']

1
src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/productionreturnRequestMainNo.data.ts

@ -105,6 +105,7 @@ export const ProductionreturnRequestDetail = useCrudSchemas(reactive<CrudSchema[
}
},
tableForm:{
multiple: true,
isInpuFocusShow: true,
searchListPlaceholder: '请选择工位代码', // 输入框占位文本
searchField: 'code', // 查询弹窗赋值字段

8
src/views/wms/productionManage/productdismantle/productdismantleRequestMain/index.vue

@ -42,6 +42,8 @@
<!-- 表单弹窗添加/修改 -->
<BasicForm
ref="formRef"
:isOpenSearchTable="true"
fieldTableColumn="productionLineCode"
@success="getList"
:rules="ProductdismantleRequestMainRules"
:formAllSchemas="ProductdismantleRequestMain.allSchemas"
@ -269,7 +271,11 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
row['bomVersion'] = ''
row['childList'] = []
} else {
row[formField] = val[0][searchField]
val.forEach(item=>{
const newRow = JSON.parse(JSON.stringify({...tableFormKeys,...item}))
newRow[formField] = item[searchField]
tableData.value.push(newRow)
})
}
} else {
const setV = {}

1
src/views/wms/productionManage/productdismantle/productdismantleRequestMain/productdismantleRequestMain.data.ts

@ -474,6 +474,7 @@ export const ProductdismantleRequestDetaila = useCrudSchemas(reactive<CrudSchema
width: 150
},
tableForm:{
multiple: true,
isInpuFocusShow: true,
searchListPlaceholder: '请选择生产线代码', // 输入框占位文本
searchField: 'code', // 查询弹窗赋值字段

19
src/views/wms/productionManage/productionplan/productionMain/index.vue

@ -87,6 +87,7 @@ import * as ProductionMainApi from '@/api/wms/productionMain'
import * as ProductionDetailApi from '@/api/wms/productionDetail'
import * as defaultButtons from '@/utils/disposition/defaultButtons'
import * as ItemBasicApi from '@/api/wms/itembasic'
import * as BomApi from "@/api/wms/bom";
//
//
@ -119,10 +120,26 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
// })
if(formField=='itemCode'){
// row[formField] = val[0][searchField]
val.forEach(item=>{
val.forEach(async item=>{
if(tableData.value.find(item1=>item1['id'] == item['id'])) return
const newRow = JSON.parse(JSON.stringify({...tableFormKeys,...item}))
newRow['id'] = item['id']
// BOM
console.log(22,item)
const param1 = {
productItemCode: item['itemCode'],
available: 'TRUE',
pageSize: 20,
pageNo: 1,
sort: '',
by: 'ASC',
}
await BomApi.getBomPage(param1).then(res => {
console.log(res)
if(res?.list?.length>0){
newRow['bomVersion'] = res.list[0].version
}
})
tableData.value.push(newRow)
})
} else {

18
src/views/wms/productionManage/productionplan/productionMainAssemble/index.vue

@ -87,6 +87,7 @@ import * as ProductionMainApi from '@/api/wms/productionMain'
import * as ProductionDetailApi from '@/api/wms/productionDetail'
import * as defaultButtons from '@/utils/disposition/defaultButtons'
import * as ItemBasicApi from '@/api/wms/itembasic'
import * as BomApi from "@/api/wms/bom";
//
defineOptions({ name: 'ProductionMainAssemble' })
@ -116,10 +117,25 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
// }).catch(err =>{
// console.log(err);
// })
val.forEach(item=>{
val.forEach(async item=>{
const newRow = JSON.parse(JSON.stringify({...tableFormKeys,...item}))
newRow[formField] = item[searchField]
newRow['uom'] = item['uom']
// BOM
const param1 = {
productItemCode: item['itemCode'],
available: 'TRUE',
pageSize: 20,
pageNo: 1,
sort: '',
by: 'ASC',
}
await BomApi.getBomPage(param1).then(res => {
console.log(res)
if(res?.list?.length>0){
newRow['bomVersion'] = res.list[0].version
}
})
tableData.value.push(newRow)
})
} else {

18
src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/index.vue

@ -87,6 +87,7 @@ import * as ProductionMainApi from '@/api/wms/productionMain'
import * as ProductionDetailApi from '@/api/wms/productionDetail'
import * as defaultButtons from '@/utils/disposition/defaultButtons'
import * as ItemBasicApi from '@/api/wms/itembasic'
import * as BomApi from "@/api/wms/bom";
//
defineOptions({ name: 'ProductionMainASparePart' })
@ -116,10 +117,25 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
// }).catch(err =>{
// console.log(err);
// })
val.forEach(item=>{
val.forEach(async item=>{
const newRow = JSON.parse(JSON.stringify({...tableFormKeys,...item}))
newRow[formField] = item[searchField]
newRow['uom'] = item['uom']
// BOM
const param1 = {
productItemCode: item['itemCode'],
available: 'TRUE',
pageSize: 20,
pageNo: 1,
sort: '',
by: 'ASC',
}
await BomApi.getBomPage(param1).then(res => {
console.log(res)
if(res?.list?.length>0){
newRow['bomVersion'] = res.list[0].version
}
})
tableData.value.push(newRow)
})
} else {

18
src/views/wms/productionManage/productionplan/productionMainPredictSparePart/index.vue

@ -87,6 +87,7 @@ import * as ProductionMainApi from '@/api/wms/productionMain'
import * as ProductionDetailApi from '@/api/wms/productionDetail'
import * as defaultButtons from '@/utils/disposition/defaultButtons'
import * as ItemBasicApi from '@/api/wms/itembasic'
import * as BomApi from "@/api/wms/bom";
//
defineOptions({ name: 'ProductionMainPredictSparePart' })
@ -116,10 +117,25 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
// }).catch(err =>{
// console.log(err);
// })
val.forEach(item=>{
val.forEach(async item=>{
const newRow = JSON.parse(JSON.stringify({...tableFormKeys,...item}))
newRow[formField] = item[searchField]
newRow['uom'] = item['uom']
// BOM
const param1 = {
productItemCode: item['itemCode'],
available: 'TRUE',
pageSize: 20,
pageNo: 1,
sort: '',
by: 'ASC',
}
await BomApi.getBomPage(param1).then(res => {
console.log(res)
if(res?.list?.length>0){
newRow['bomVersion'] = res.list[0].version
}
})
tableData.value.push(newRow)
})
} else {

16
src/views/wms/productionManage/productreceipt/productreceiptRequestMain/index.vue

@ -149,6 +149,7 @@ import { formatTime } from '@/utils/index'
import { getAccessToken } from '@/utils/auth'
import dayjs from 'dayjs'
import { getJmreportBaseUrl } from '@/utils/systemParam'
import * as BomApi from "@/api/wms/bom";
//
//
defineOptions({ name: 'ProductreceiptRequestMain' })
@ -212,6 +213,21 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
row['uom'] = val[0]['uom']
row['produceDate'] = dayjs().valueOf()
row[formField] = val[0][searchField]
// BOM
const param1 = {
productItemCode: val[0]['itemCode'],
available: 'TRUE',
pageSize: 20,
pageNo: 1,
sort: '',
by: 'ASC',
}
BomApi.getBomPage(param1).then(res => {
console.log(res)
if(res?.list?.length>0){
row['bomVersion'] = res.list[0].version
}
})
}else if (formField == 'workStationCode') {
//
val.forEach(item=>{

16
src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRequestMain/index.vue

@ -149,6 +149,7 @@ import * as PackageApi from '@/api/wms/package'
import { formatTime } from '@/utils/index'
import { getAccessToken } from '@/utils/auth'
import { getJmreportBaseUrl } from '@/utils/systemParam'
import * as BomApi from "@/api/wms/bom";
//
defineOptions({ name: 'ProductreceiptRequestMainA' })
@ -213,6 +214,21 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
row['uom'] = val[0]['uom']
row['produceDate'] = dayjs().valueOf()
row[formField] = val[0][searchField]
// BOM
const param1 = {
productItemCode: val[0]['itemCode'],
available: 'TRUE',
pageSize: 20,
pageNo: 1,
sort: '',
by: 'ASC',
}
BomApi.getBomPage(param1).then(res => {
console.log(res)
if(res?.list?.length>0){
row['bomVersion'] = res.list[0].version
}
})
}else if (formField == 'workStationCode') {
//
val.forEach(item=>{

18
src/views/wms/productionManage/productreceiptscrap/productreceiptscrapRequestMain/index.vue

@ -136,6 +136,7 @@ import * as ItembasicApi from '@/api/wms/itembasic'
import * as PackageApi from '@/api/wms/package'
import { formatTime } from '@/utils/index'
import { getAccessToken } from '@/utils/auth'
import * as BomApi from "@/api/wms/bom";
import {
SupplierdeliverRequestPackage
} from '../../../purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts'
@ -204,8 +205,21 @@ const searchTableSuccess = async (formField, searchField, val, formRef, type, ro
row['uom'] = res[0]['uom']
}
row[formField] = val[0][searchField]
console.log('获取计量单位',res)
// BOM
const param1 = {
productItemCode: val[0]['itemCode'],
available: 'TRUE',
pageSize: 20,
pageNo: 1,
sort: '',
by: 'ASC',
}
BomApi.getBomPage(param1).then(res => {
console.log(res)
if(res?.list?.length>0){
row['bomVersion'] = res.list[0].version
}
})
}else{
//
val.forEach(item=>{

12
src/views/wms/productionManage/productrepair/productrepairRequestMain/index.vue

@ -42,6 +42,8 @@
<!-- 表单弹窗添加/修改 -->
<BasicForm
ref="formRef"
:isOpenSearchTable="true"
fieldTableColumn="workStationCode"
@success="getList"
:rules="ProductrepairRequestMainRules"
:formAllSchemas="ProductrepairRequestMain.allSchemas"
@ -247,8 +249,14 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
} else if(formField == 'productionLineCode'){
row['productionLineCode'] = val[0]['code']
} else if(formField == 'workStationCode'){
row['fromLocationCode'] = val[0]['rawLocationCode']
row['workStationCode'] = val[0]['code']
val.forEach(item=>{
const newRow = JSON.parse(JSON.stringify({...tableFormKeys,...item}))
newRow['fromLocationCode'] = item['rawLocationCode']
newRow['workStationCode'] =item['code']
tableData.value.push(newRow)
})
} else if(formField == 'formField'){
row['workStationCode'] = val[0]['code']
} else if(formField == 'bomVersion'){

2
src/views/wms/productionManage/productrepair/productrepairRequestMain/productrepairRequestMain.data.ts

@ -553,6 +553,7 @@ export const ProductrepairRequestDetaila = useCrudSchemas(reactive<CrudSchema[]>
},
sortTableDefault:5,
tableForm:{
multiple: true,
isInpuFocusShow: true,
searchListPlaceholder: '请选择工位代码', // 输入框占位文本
searchField: 'code', // 查询弹窗赋值字段
@ -917,6 +918,7 @@ export const ProductrepairRequestDetaila = useCrudSchemas(reactive<CrudSchema[]>
},
sortTableDefault:17,
tableForm: {
disabled: true,
type: 'Select'
}
},

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

@ -85,7 +85,6 @@
<!-- BOM弹窗列表 -->
<BasicForm
ref="detailBomRef"
@success="getList"
:tableAllSchemas="ProdcutscrapBomScrap.allSchemas"
:tableFormRules="ProdcutscrapBomScrapRules"
@ -121,7 +120,7 @@ import * as defaultButtons from '@/utils/disposition/defaultButtons'
import * as BomDismantleApi from "@/api/wms/bomDismantle"
import * as BomApi from "@/api/wms/bom";
//
//
defineOptions({ name: 'ProductscrapRequestMain' })
const message = useMessage() //
@ -318,14 +317,15 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
row['bomVersion'] = ''
row['childList'] = []
//
let param = {'itemCode':val[0]['itemCode'] as string}
let param = {'itemCodes':val[0]['itemCode'] as string}
StdcostpriceApi.queryStdcostpriceByItemCode(param).then(res => {
console.log(res)
row['uom'] = res.uom
row['singlePrice'] = res.price
if(res&&res.length>0){
row['uom'] = res[0].uom
row['singlePrice'] = res[0].price
}
})
// BOM
console.log(formRef.formModel)
const param1 = {
productItemCode: val[0]['itemCode'],
available: 'TRUE',
@ -339,8 +339,6 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
if(res?.list?.length>0){
row['bomVersion'] = res.list[0].version
}
// row['singlePrice'] = res.price
})
}else if(formField == 'bomVersion'){
row['bomVersion'] = val[0]['version']
@ -370,7 +368,7 @@ const searchTableSuccessDetail = (formField, searchField, val, formRef ) => {
setV['bomVersion'] = ''
setV['childList'] = []
//
let param = {'itemCode':val[0]['itemCode'] as string}
let param = {'itemCodes':val[0]['itemCode'] as string}
StdcostpriceApi.queryStdcostpriceByItemCode(param).then(res => {
console.log(res)
})

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

File diff suppressed because it is too large

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

@ -232,8 +232,9 @@ const searchTableSuccess = async (formField, searchField, val, formRef, type, ro
nextTick(async () => {
if (type == 'tableForm') {
//
row[formField] = val[0][searchField]
if (formField == 'purchaseReceiptRecordNumber') {
row[formField] = val[0][searchField]
//--
row['supplierCode'] = val[0]['supplierCode']
row['poNumber'] = val[0]['poNumber']
@ -271,6 +272,7 @@ const searchTableSuccess = async (formField, searchField, val, formRef, type, ro
row['amount'] = val[0]['amount']
row['projectCode'] = val[0]['projectCode']
} else if (formField == 'itemCode') {
row[formField] = val[0][searchField]
row['batch'] = val[0]['toBatch']
row['containerNumber'] = val[0]['toContainerNumber']
row['containerNumber'] = val[0]['containerNumber']
@ -278,6 +280,7 @@ const searchTableSuccess = async (formField, searchField, val, formRef, type, ro
// row['fromLocationCode'] = val[0]['fromLocationCode']
row['toLocationCode'] = val[0]['toLocationCode']
} else if (formField == 'fromLocationCode') {
row[formField] = val[0][searchField]
// let params = {
// itemCode: row.itemCode,
// batch: row.batch,
@ -287,7 +290,21 @@ const searchTableSuccess = async (formField, searchField, val, formRef, type, ro
// console.log('23423423',aa);
// row['inventoryBalance'] = aa//
} else if (formField == 'packingNumber') {
row['inventoryBalance'] = val[0]['qty'] //
// row[formField] = val[0][searchField]
val.forEach((item,index)=>{
if(index==0){
row[formField] = item[searchField]
row['inventoryBalance'] = item['qty'] //
}else{
let newRow = {...row}
newRow[formField] = item[searchField]
row['inventoryBalance'] = item['qty'] //
tableData.value.push(newRow)
}
})
// row['inventoryBalance'] = val[0]['qty'] //
}else{
row[formField] = val[0][searchField]
}
} else {
const setV = {}

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

@ -982,6 +982,7 @@ export const PurchasereturnRequestDetail = useCrudSchemas(reactive<CrudSchema[]>
}
},
tableForm:{
multiple: true,
// labelMessage: '信息提示说明!!!',
isInpuFocusShow: true, // 开启查询弹窗
searchListPlaceholder: '请选择物料代码、批次、从库位代码',

8
src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRecordMain/index.vue

@ -106,7 +106,9 @@
hiddenDelete:true
}"
:isBasic="false"
:allSchemas="SupplierinvoiceRecordMain.allSchemas"
direction="horizontal"
:column="3"
:allSchemas="SupplierinvoiceRecordDetailMain.allSchemas"
:detailAllSchemas="SupplierinvoiceRecordDetail.allSchemas"
:detailAllSchemasRules="SupplierinvoiceRecordDetailRules"
:apiPage="SupplierinvoiceRecordDetailApi.getSupplierinvoiceRecordDeatilPage"
@ -119,7 +121,7 @@
<script setup lang="ts">
import download from '@/utils/download'
import { SupplierinvoiceRecordMain,SupplierinvoiceRecordMainRules,SupplierinvoiceRecordDetail,SupplierinvoiceRecordDetailRules } from './supplierinvoiceRecordMain.data'
import { SupplierinvoiceRecordMain,SupplierinvoiceRecordMainRules,SupplierinvoiceRecordDetail,SupplierinvoiceRecordDetailRules,SupplierinvoiceRecordDetailMain } from './supplierinvoiceRecordMain.data'
import * as SupplierinvoiceRecordMainApi from '@/api/wms/supplierinvoiceRecordMain'
import * as SupplierinvoiceRecordDetailApi from '@/api/wms/supplierinvoiceRecordDeatil'
import * as defaultButtons from '@/utils/disposition/defaultButtons'
@ -189,7 +191,7 @@ const buttonBaseClick = (val, item) => {
}
const BASE_URL = getJmreportBaseUrl()
const srcPoint = ref(BASE_URL + '/jmreport/view/970564557155733504?token=' + getAccessToken())
const srcPoint = ref(BASE_URL + '/jmreport/view/970966724605804544?token=' + getAccessToken())
const handleSelectionPoint = async ()=>{
let rows:any = []
selectionRows.value.forEach(item=>{

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

@ -755,7 +755,381 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
},
}
]))
/**
* @returns {Array}
*/
export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchema[]>([
{
label: '汇总信息',
field: '',
sort: 'custom',
isForm: false,
isSearch: false,
isTable: false,
isDetail: true,
},
{
label: '供应商信息',
field: '',
sort: 'custom',
isForm: false,
isSearch: false,
isTable: false,
isDetail: true,
},
{
label: 'SCP系统数据',
field: '',
sort: 'custom',
isForm: false,
isSearch: false,
isTable: false,
isDetail: true,
},
{
label: '单据号',
field: 'number',
sort: 'custom',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '供应商代码',
field: 'supplierCode',
sort: 'custom',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '系统价税合计',
field: 'afterTaxAmount',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '财务凭证号',
field: 'voucherNumber',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '供应商名称',
field: 'supplierName',
sort: 'custom',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '系统未税金额',
field: 'amount',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '供应商创建日期',
field: 'supplierDate',
sort: 'custom',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '订单类型',
field: 'orderType',
dictType: DICT_TYPE.PURCHASE_INVOICE_ORDER_TYPE,
dictClass: 'string',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '系统税额',
field: 'taxAmount',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '状态',
field: 'status',
dictType: DICT_TYPE.SUPPLIERINVOICE_REQUEST_STATUS,
dictClass: 'string',
sort: 'custom',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '发票号码',
field: 'goldenTaxInvoiceNumber',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '',
field: '',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '采购价格审批人',
field: 'procurementCreator',
sortTableDefault: 1003,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '开票日期',
field: 'invoiceTime',
formatter: dateFormatter,
detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss'
},
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '',
field: '',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '采购价格审批时间',
field: 'procurementCreateTime',
sortTableDefault: 1003,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '税率(%)',
field: 'taxRate',
dictType: DICT_TYPE.TAX_RATE_DICT,
dictClass: 'string',
sortTableDefault: 3,
isTable: true,
sort: 'custom',
table: {
width: 150
},
},
{
label: '',
field: '',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '价差通过说明',
field: 'balanceStatement',
sort: 'custom',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '价税合计金额',
field: 'adTaxAmount',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '',
field: '',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '财务审批人',
field: 'financialCreatorName',
sort: 'custom',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '未税金额',
field: 'beforeTaxAmount',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '差额',
field: '',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '财务审批时间',
field: 'financialCreateTime',
formatter: dateFormatter,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '税额',
field: 'totalTaxAmount',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '价税合计差额(价税合计-系统价税合计)',
field: 'totalTaxDiffAmount',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '财务过账日期',
field: 'postingDate',
isTable: true,
sortTableDefault: 15,
formatter: dateFormatter,
detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss'
},
},
{
label: '折扣金额',
field: 'discountAmount1',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '未税差额(未税金额-系统未税金额)',
field: 'beforeTaxDiffAmount',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '备注',
field: 'remark',
sort: 'custom',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
detail:{
span:2
}
},
{
label: '税额差异',
field: 'taxAmountDiff',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
]))
//表单校验
export const SupplierinvoiceRecordMainRules = reactive({
requestNumber: [

7
src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue

@ -146,6 +146,8 @@
:isOpenSearchTable="true"
fieldTableColumn="poLine"
:annexTable="detailAnnexTable"
direction="horizontal"
:column="3"
:annexAlias="{
hidden:true,
label:t('ts.其他附件')
@ -196,7 +198,7 @@
})
}"
:isBasic="false"
:allSchemas="SupplierinvoiceRequestMain.allSchemas"
:allSchemas="SupplierinvoiceRequestDetailMain.allSchemas"
:detailAllSchemas="SupplierinvoiceRequestDetail.allSchemas"
:detailAllSchemasRules="SupplierinvoiceRequestDetailRules"
:searchTableParams="searchTableParams"
@ -244,7 +246,8 @@ import dayjs from 'dayjs'
SupplierinvoiceRequestFinance,
SupplierinvoiceRequestFinanceRules,
PurchasePass,
PurchasePassRules
PurchasePassRules,
SupplierinvoiceRequestDetailMain
} from './supplierinvoiceRequestMain.data'
import * as SupplierinvoiceRequestMainApi from '@/api/wms/supplierinvoiceRequestMain'
import * as SupplierinvoiceRequestDetailApi from '@/api/wms/supplierinvoiceRequestDetail'

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

@ -1042,9 +1042,383 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
},
}
]))
/**
* @returns {Array}
*/
export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSchema[]>([
{
label: '汇总信息',
field: '',
sort: 'custom',
isForm: false,
isSearch: false,
isTable: false,
isDetail: true,
},
{
label: '供应商信息',
field: '',
sort: 'custom',
isForm: false,
isSearch: false,
isTable: false,
isDetail: true,
},
{
label: 'SCP系统数据',
field: '',
sort: 'custom',
isForm: false,
isSearch: false,
isTable: false,
isDetail: true,
},
{
label: '单据号',
field: 'number',
sort: 'custom',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '供应商代码',
field: 'supplierCode',
sort: 'custom',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '系统价税合计',
field: 'afterTaxAmount',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '财务凭证号',
field: 'voucherNumber',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '供应商名称',
field: 'supplierName',
sort: 'custom',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '系统未税金额',
field: 'amount',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '供应商创建日期',
field: 'supplierDate',
sort: 'custom',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '订单类型',
field: 'orderType',
dictType: DICT_TYPE.PURCHASE_INVOICE_ORDER_TYPE,
dictClass: 'string',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '系统税额',
field: 'taxAmount',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '状态',
field: 'status',
dictType: DICT_TYPE.SUPPLIERINVOICE_REQUEST_STATUS,
dictClass: 'string',
sort: 'custom',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '发票号码',
field: 'goldenTaxInvoiceNumber',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '',
field: '',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '采购价格审批人',
field: 'procurementCreator',
sortTableDefault: 1003,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '开票日期',
field: 'invoiceTime',
formatter: dateFormatter,
detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss'
},
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '',
field: '',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '采购价格审批时间',
field: 'procurementCreateTime',
sortTableDefault: 1003,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '税率(%)',
field: 'taxRate',
dictType: DICT_TYPE.TAX_RATE_DICT,
dictClass: 'string',
sortTableDefault: 3,
isTable: true,
sort: 'custom',
table: {
width: 150
},
},
{
label: '',
field: '',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '价差通过说明',
field: 'balanceStatement',
sort: 'custom',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '价税合计金额',
field: 'adTaxAmount',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '',
field: '',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '财务审批人',
field: 'financialCreatorName',
sort: 'custom',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '未税金额',
field: 'beforeTaxAmount',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '差额',
field: '',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '财务审批时间',
field: 'financialCreateTime',
formatter: dateFormatter,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '税额',
field: 'totalTaxAmount',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '价税合计差额(价税合计-系统价税合计)',
field: 'totalTaxDiffAmount',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '财务过账日期',
field: 'postingDate',
isTable: true,
sortTableDefault: 15,
formatter: dateFormatter,
detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss'
},
},
{
label: '折扣金额',
field: 'discountAmount1',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '未税差额(未税金额-系统未税金额)',
field: 'beforeTaxDiffAmount',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '备注',
field: 'remark',
sort: 'custom',
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
detail:{
span:2
}
},
{
label: '税额差异',
field: 'taxAmountDiff',
formatter: accountantFormart,
sortTableDefault: 6,
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
]))
const singlePriceFormart = (row, column, cellValue) => {
cellValue= Number(cellValue).toFixed(5)
cellValue= Number(cellValue).toFixed(2)
cellValue = cellValue + '' || ''
let x = cellValue.split('.')
@ -1281,6 +1655,7 @@ export const SupplierinvoiceRequestDetail = useCrudSchemas(reactive<CrudSchema[]
width: 150
},
form: {
component: 'InputNumber',
componentProps: {
disabled: true,
min: 0,
@ -1288,6 +1663,7 @@ export const SupplierinvoiceRequestDetail = useCrudSchemas(reactive<CrudSchema[]
}
},
tableForm:{
type: 'InputNumber',
disabled: true,
min: 0,
precision: 2,

Loading…
Cancel
Save