Browse Source

Merge branch 'hella_online_20240803' into master_hella

hella_online_20240829
陈薪名 2 months ago
parent
commit
dbf3f9885e
  1. 1
      README.md
  2. 15
      src/api/wms/location/index.ts
  3. 21
      src/api/wms/productionreturnJobDetail/index.ts
  4. 21
      src/api/wms/productionreturnJobMain/index.ts
  5. 18
      src/api/wms/productionreturnRecordMain/index.ts
  6. 4
      src/api/wms/productputawayRecordMain/index.ts
  7. 5
      src/api/wms/productscrapRecordMain/index.ts
  8. 12
      src/api/wms/purchasePlanDetail/index.ts
  9. 11
      src/api/wms/purchasereceiptRequestMain/index.ts
  10. 6
      src/api/wms/supplierinvoiceRecordMain/index.ts
  11. 5
      src/api/wms/unplannedissueRecordMain/index.ts
  12. 5
      src/api/wms/unplannedreceiptRecordMain/index.ts
  13. 19
      src/components/BasicForm/src/BasicForm.vue
  14. 5
      src/components/Descriptions/src/Descriptions.vue
  15. 27
      src/components/Detail/src/Detail.vue
  16. 4
      src/locales/en-US.ts
  17. 4
      src/locales/zh-CN.ts
  18. 17
      src/views/login/components/QRCodePDA.vue
  19. 3
      src/views/login/components/index.ts
  20. 7
      src/views/login/login.vue
  21. 91
      src/views/qms/inspectionQ2/index.vue
  22. 38
      src/views/qms/inspectionQ2/inspectionQ2.data.ts
  23. 1
      src/views/qms/inspectionQ3/inspectionQ3.data.ts
  24. 10
      src/views/qms/inspectionRecord/index.vue
  25. 2
      src/views/qms/inspectionRecord/useAddForm.vue
  26. 960
      src/views/qms/inspectionScheme/addForm.vue
  27. 928
      src/views/qms/inspectionTemplate/addForm.vue
  28. 17
      src/views/wms/basicDataManage/itemManage/bom/index.vue
  29. 4
      src/views/wms/basicDataManage/labelManage/callmaterials/callmaterials.data.ts
  30. 52
      src/views/wms/basicDataManage/strategySetting/strategy/upShelfStrategy/AddForm.vue
  31. 1
      src/views/wms/basicDataManage/subject/qadCostcentre/qadCostcentre.data.ts
  32. 22
      src/views/wms/deliversettlementManage/saleShipmentMainRequest/index.vue
  33. 9
      src/views/wms/deliversettlementManage/saleShipmentMainRequest/saleShipmentMain.data.ts
  34. 2
      src/views/wms/inventoryManage/balance/balance.data.ts
  35. 30
      src/views/wms/inventoryjobManage/containermanage/containerMainRequest/containerMainRequest.data.ts
  36. 34
      src/views/wms/inventoryjobManage/containermanage/containerRecordMain/containerRecordMain.data.ts
  37. 24
      src/views/wms/inventoryjobManage/containermanage/initialContainerMainRequest/initialContainerMainRequest.data.ts
  38. 9
      src/views/wms/inventoryjobManage/packageManage/packageoverMain/packageoverRecordMain/packageoverRecordMain.data.ts
  39. 24
      src/views/wms/inventoryjobManage/packageManage/packageoverMain/packageoverRequestMain/packageoverRequestMain.data.ts
  40. 6
      src/views/wms/inventoryjobManage/packageManage/packagesplitMain/packagesplitMain.data.ts
  41. 32
      src/views/wms/inventoryjobManage/scrap/scrapJobMain/scrapJobMain.data.ts
  42. 32
      src/views/wms/inventoryjobManage/scrap/scrapRecordMain/scrapRecordMain.data.ts
  43. 12
      src/views/wms/inventoryjobManage/scrap/scrapRequestMain/index.vue
  44. 9
      src/views/wms/inventoryjobManage/scrap/scrapRequestMain/scrapRequestMain.data.ts
  45. 20
      src/views/wms/inventoryjobManage/unplannedissue/unplannedissueRecordMain/index.vue
  46. 10
      src/views/wms/inventoryjobManage/unplannedissue/unplannedissueRecordMain/unplannedissueRecordMain.data.ts
  47. 20
      src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRecordMain/index.vue
  48. 10
      src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRecordMain/unplannedreceiptRecordMain.data.ts
  49. 1
      src/views/wms/issueManage/issue/issueJobMain/issueJobMain.data.ts
  50. 11
      src/views/wms/issueManage/issue/issueRecordMain/issueRecordMain.data.ts
  51. 1
      src/views/wms/issueManage/issue/issueRequestMain/issueRequestMain.data.ts
  52. 1
      src/views/wms/issueManage/productionreceipt/productionreceiptRecordMain/productionreceiptRecordMain.data.ts
  53. 15
      src/views/wms/issueManage/productionreturn/productionreturnJobMain/index.vue
  54. 12
      src/views/wms/issueManage/productionreturn/productionreturnRecordMain/index.vue
  55. 20
      src/views/wms/issueManage/productionreturn/productionreturnRequestMain/index.vue
  56. 202
      src/views/wms/issueManage/productionreturn/productionreturnRequestMain/productionreturnRequestMain.data.ts
  57. 127
      src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/index.vue
  58. 162
      src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/productionreturnRequestMainNo.data.ts
  59. 1
      src/views/wms/issueManage/repleinsh/repleinshRequestMain/repleinshRequestMain.data.ts
  60. 24
      src/views/wms/moveManage/inventorymove/inventorymoveRecordMainNew/inventorymoveRecordRequestMain.data.ts
  61. 1
      src/views/wms/productionManage/productputaway/productputawayRecordMain/index.vue
  62. 1
      src/views/wms/productionManage/productputawayAssemble/productputawayAssembleRecordMain/index.vue
  63. 5
      src/views/wms/productionManage/productreceipt/productreceiptRecordMain/index.vue
  64. 18
      src/views/wms/productionManage/productreceipt/productreceiptRecordMain/productreceiptRecordMain.data.ts
  65. 71
      src/views/wms/productionManage/productreceipt/productreceiptRequestMain/productreceiptRequestMain.data.ts
  66. 5
      src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRecordMain/index.vue
  67. 19
      src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRecordMain/productreceiptAssembleRecordMain.data.ts
  68. 76
      src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRequestMain/productreceiptAssembleRequestMain.data.ts
  69. 8
      src/views/wms/productionManage/productredress/productredressJobMain/productredressJobMain.data.ts
  70. 8
      src/views/wms/productionManage/productredress/productredressRecordMain/productredressRecordMain.data.ts
  71. 80
      src/views/wms/productionManage/productredress/productredressRequestMain/productredressRequestMain.data.ts
  72. 20
      src/views/wms/productionManage/productscrap/productscrapRecordMain/index.vue
  73. 10
      src/views/wms/productionManage/productscrap/productscrapRecordMain/productscrapRecordMain.data.ts
  74. 4
      src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRecordMain/index.vue
  75. 2
      src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestOrderMTypeMain/index.vue
  76. 6
      src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRecordMain/index.vue
  77. 2
      src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRecordMain/purchasereturnRecordMain.data.ts
  78. 18
      src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMain/index.vue
  79. 18
      src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMainNew/index.vue
  80. 2
      src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMainNew/purchasereturnRequestMainNew.data.ts
  81. 2
      src/views/wms/purchasereceiptManage/supplierdeliver/purchaseMainWms/index.vue
  82. 3
      src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRecordMain/index.vue
  83. 2
      src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue
  84. 30
      src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverBasicForm.vue
  85. 4
      src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts
  86. 65
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRecordMain/index.vue
  87. 410
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRecordMain/supplierinvoiceRecordMain.data.ts
  88. 80
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue
  89. 112
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts
  90. 130
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMainDifference/supplierinvoiceRequestMainDifference.data.ts

1
README.md

@ -1,5 +1,6 @@
## dev发布2024-06-01-002 ## dev发布2024-06-01-002
**xxxx.data.ts 文件配置说明** **xxxx.data.ts 文件配置说明**
dictType: DICT_TYPE.INVENTORY_STATUS, dictType: DICT_TYPE.INVENTORY_STATUS,
dictClass: 'string', dictClass: 'string',
dictAllOption:true,// true 字典中--下拉框中展示全选按钮 dictAllOption:true,// true 字典中--下拉框中展示全选按钮

15
src/api/wms/location/index.ts

@ -128,6 +128,15 @@ export const selectBusinessTypeOutLocation = async (params) => {
return request.get({ url: `/wms/location/pageBusinessTypeOutLocation`, params }) return request.get({ url: `/wms/location/pageBusinessTypeOutLocation`, params })
} }
} }
export const selectBusinessTypeOutLocationAll = async (params) => {
if (params.isSearch) {
delete params.isSearch
const data = {...params}
return await request.post({ url: '/wms/location/pageBusinessTypeOutLocationSeniorAll', data })
} else {
return request.get({ url: `/wms/location/pageBusinessTypeOutLocationAll`, params })
}
}
export const selectPageItemAreaToLocation = async (params) => { export const selectPageItemAreaToLocation = async (params) => {
@ -154,3 +163,9 @@ export const selectConfigToLocation = async (params) => {
export const getLocationByCodes = async (params) => { export const getLocationByCodes = async (params) => {
return await request.get({ url: `/wms/location/listByCodes`, params }) return await request.get({ url: `/wms/location/listByCodes`, params })
} }
// 查询库位组列表
export const getLocationByOverflowAreaTypeByConfig = async (params) => {
return await request.get({ url: `/wms/location/queryLocationByOverflowAreaTypeByConfig`, params })
}

21
src/api/wms/productionreturnJobDetail/index.ts

@ -34,6 +34,27 @@ export const getProductionreturnJobDetailPage = async (params) => {
return await request.get({ url: `/wms/productionreturn-job-detail/page`, params }) return await request.get({ url: `/wms/productionreturn-job-detail/page`, params })
} }
} }
// 查询生产退料任务子列表
export const getProductionreturnJobDetailPageStore = async (params) => {
if (params.isSearch) {
delete params.isSearch
const data = {...params}
return await request.post({ url: '/wms/productionreturn-job-detail-store/senior', data })
} else {
return await request.get({ url: `/wms/productionreturn-job-detail-store/page`, params })
}
}
// 查询隔离退料任务子列表
export const getProductionreturnJobDetailPageHold = async (params) => {
if (params.isSearch) {
delete params.isSearch
const data = {...params}
return await request.post({ url: '/wms/productionreturn-job-detail-hold/senior', data })
} else {
return await request.get({ url: `/wms/productionreturn-job-detail-hold/page`, params })
}
}
// 查询生产退料任务子详情 // 查询生产退料任务子详情
export const getProductionreturnJobDetail = async (id: number) => { export const getProductionreturnJobDetail = async (id: number) => {

21
src/api/wms/productionreturnJobMain/index.ts

@ -81,6 +81,27 @@ export const exportProductionreturnJobMain = async (params) => {
} }
} }
// 导出生产退料任务主 Excel -store
export const exportProductionreturnJobMainStore = async (params) => {
if (params.isSearch) {
const data = {...params}
return await request.downloadPost({ url: `/wms/productionreturn-job-detail-store/export-excel-senior`, data })
} else {
return await request.download({ url: `/wms/productionreturn-job-detail-store/export-excel`, params })
}
}
// 导出隔离退料任务主 Excel -hold
export const exportProductionreturnJobMainHold = async (params) => {
if (params.isSearch) {
const data = {...params}
return await request.downloadPost({ url: `/wms/productionreturn-job-detail-hold/export-excel-senior`, data })
} else {
return await request.download({ url: `/wms/productionreturn-job-detail-hold/export-excel`, params })
}
}
// 下载用户导入模板 // 下载用户导入模板
export const importTemplate = () => { export const importTemplate = () => {
return request.download({ url: '/wms/productionreturn-job-main/get-import-template' }) return request.download({ url: '/wms/productionreturn-job-main/get-import-template' })

18
src/api/wms/productionreturnRecordMain/index.ts

@ -67,6 +67,24 @@ export const exportProductionreturnRecordMain = async (params) => {
return await request.download({ url: `/wms/productionreturn-record-main/export-excel`, params }) return await request.download({ url: `/wms/productionreturn-record-main/export-excel`, params })
} }
} }
// 导出生产退料记录主 Excel -store
export const exportProductionreturnRecordMainStore = async (params) => {
if (params.isSearch){
const data = {...params}
return await request.downloadPost({ url: `/wms/productionreturn-job-detail-store/export-excel-senior`, data })
}else {
return await request.download({ url: `/wms/productionreturn-job-detail-store/export-excel`, params })
}
}
// 导出隔离退料记录主 Excel -hold
export const exportProductionreturnRecordMainHold = async (params) => {
if (params.isSearch){
const data = {...params}
return await request.downloadPost({ url: `/wms/productionreturn-job-detail-hold/export-excel-senior`, data })
}else {
return await request.download({ url: `/wms/productionreturn-job-detail-hold/export-excel`, params })
}
}
// 下载用户导入模板 // 下载用户导入模板
export const importTemplate = () => { export const importTemplate = () => {

4
src/api/wms/productputawayRecordMain/index.ts

@ -74,12 +74,12 @@ export const deleteProductputawayRecordMain = async (id: number) => {
// 导出制品上架记录主 Excel // 导出制品上架记录主 Excel
export const exportProductputawayRecordMain = async (params) => { export const exportProductputawayRecordMain = async (params) => {
params.type = 'assemble'
if (params.isSearch) { if (params.isSearch) {
const cmd = { const cmd = {
'column':'type', 'column':'type',
'action':'==', 'action':'==',
'value':'assemble' 'value':params.type
} }
params.filters.push(cmd) params.filters.push(cmd)
delete params.isSearch delete params.isSearch

5
src/api/wms/productscrapRecordMain/index.ts

@ -69,4 +69,9 @@ export const exportProductscrapRecordMain = async (params) => {
// 下载用户导入模板 // 下载用户导入模板
export const importTemplate = () => { export const importTemplate = () => {
return request.download({ url: '/wms/productscrap-record-main/get-import-template' }) return request.download({ url: '/wms/productscrap-record-main/get-import-template' })
}
// 撤销
export const revoke = async (requestNumber: number, number: number) => {
return await request.get({ url: `/wms/productscrap-record-main/revoke?requestNumber=` + requestNumber + '&number=' + number})
} }

12
src/api/wms/purchasePlanDetail/index.ts

@ -40,6 +40,18 @@ export const getPurchasePlanDetailPage = async (params) => {
} }
} }
// 查询要货计划子列表 -- 供应商发货申请添加明细
export const getPurchasePlanDetailPageClcik = async (params) => {
if (params.isSearch) {
delete params.isSearch
const data = {...params}
return await request.post({ url: '/wms/purchase-plan-detail/clickDetailsSenior', data })
} else {
params = getPageParams(params)
return await request.get({ url: `/wms/purchase-plan-detail/clickDetailsPage`, params })
}
}
// 查询采购收货记录子列表 // 查询采购收货记录子列表
export const getPurchasePlanDetailList = async (params) => { export const getPurchasePlanDetailList = async (params) => {
return await request.get({ url: `/wms/purchase-plan-detail/allList`, params }) return await request.get({ url: `/wms/purchase-plan-detail/allList`, params })

11
src/api/wms/purchasereceiptRequestMain/index.ts

@ -88,6 +88,17 @@ export const exportPurchasereceiptRequestMain = async (params) => {
} }
} }
// 导出采购M型收货申请主 Excel
export const exportPurchasereceiptRequestMainOrderTypeM = async (params) => {
if (params.isSearch) {
const data = {...params}
return await request.downloadPost({ url: `/wms/purchasereceipt-request-main/export-excel-senior-orderTypeM`, data })
} else {
return await request.download({ url: `/wms/purchasereceipt-request-main/export-excel-orderTypeM`, params })
}
}
// 导出备件收货申请 // 导出备件收货申请
export const exportSparereceiptRequestMain = async (params) => { export const exportSparereceiptRequestMain = async (params) => {
if (params.isSearch) { if (params.isSearch) {

6
src/api/wms/supplierinvoiceRecordMain/index.ts

@ -52,6 +52,12 @@ export const deleteSupplierinvoiceRecordMain = async (id: number) => {
return await request.delete({ url: `/wms/supplierinvoice-record-main/delete?id=` + id }) return await request.delete({ url: `/wms/supplierinvoice-record-main/delete?id=` + id })
} }
// 发票回转
export const reverseSupplierinvoiceRecordMain = async (data: SupplierinvoiceRecordMainVO) => {
return await request.post({ url: `/wms/supplierinvoice-record-main/reverse`, data })
}
// 导出供应商发票记录主 Excel // 导出供应商发票记录主 Excel
export const exportSupplierinvoiceRecordMain = async (params) => { export const exportSupplierinvoiceRecordMain = async (params) => {
console.log(params) console.log(params)

5
src/api/wms/unplannedissueRecordMain/index.ts

@ -59,3 +59,8 @@ export const exportUnplannedissueRecordMain = async (params) => {
export const importTemplate = () => { export const importTemplate = () => {
return request.download({ url: '/wms/unplannedissue-record-main/get-import-template' }) return request.download({ url: '/wms/unplannedissue-record-main/get-import-template' })
} }
// 撤销
export const revoke = async (id: number) => {
return await request.get({ url: `/wms/unplannedissue-record-main/revoke?id=` + id })
}

5
src/api/wms/unplannedreceiptRecordMain/index.ts

@ -68,4 +68,9 @@ export const exportUnplannedreceiptRecordMain = async (params) => {
// 下载用户导入模板 // 下载用户导入模板
export const importTemplate = () => { export const importTemplate = () => {
return request.download({ url: '/wms/unplannedreceipt-record-main/get-import-template' }) return request.download({ url: '/wms/unplannedreceipt-record-main/get-import-template' })
}
// 撤销
export const revoke = async (id: number) => {
return await request.get({ url: `/wms/unplannedreceipt-record-main/revoke?id=` + id })
} }

19
src/components/BasicForm/src/BasicForm.vue

@ -150,6 +150,7 @@
<SearchTable <SearchTable
ref="searchTableRef" ref="searchTableRef"
:showSearchTableQueryFields="showSearchTableQueryFields" :showSearchTableQueryFields="showSearchTableQueryFields"
:hiddenFilterBtnFields="hiddenFilterBtnFields"
:isCheckStrictly="isCheckStrictly" :isCheckStrictly="isCheckStrictly"
@searchTableSuccess="searchTableSuccess" @searchTableSuccess="searchTableSuccess"
> >
@ -359,6 +360,11 @@ const props = defineProps({
required: false, required: false,
default: [] default: []
}, },
hiddenFilterBtnFields:{
type: Array,
required: false,
default: []
},
// //
isJiaoyan: { isJiaoyan: {
type: Boolean, type: Boolean,
@ -537,11 +543,14 @@ const opensearchTable = (
return return
} }
} }
filters.push({ if(formRef.value.formModel[searchCondition[i].value]){
action: searchCondition[i].action, filters.push({
column: searchCondition[i].key, action: searchCondition[i].action,
value: formRef.value.formModel[searchCondition[i].value] column: searchCondition[i].key,
}) value: formRef.value.formModel[searchCondition[i].value]
})
}
} else { } else {
filters.push({ filters.push({
action: searchCondition[i].action, action: searchCondition[i].action,

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

@ -146,9 +146,10 @@ const showAll = () =>{
}} }}
</slot> </slot>
<slot v-else-if="item.valueFilter"> <slot v-else-if="item.valueFilter">
{{ <el-tag v-if="item.dictType" :type="item.dictType">{{ item.valueFilter(data[item.field]) }}</el-tag>
<span v-else>{{
item.valueFilter(data[item.field]) item.valueFilter(data[item.field])
}} }}</span>
</slot> </slot>
<slot v-else-if="item.dictType"> <slot v-else-if="item.dictType">
<div v-if="data[item.field]&&Array.isArray(data[item.field])" > <div v-if="data[item.field]&&Array.isArray(data[item.field])" >

27
src/components/Detail/src/Detail.vue

@ -209,6 +209,7 @@ import BasicForm from '@/components/BasicForm/src/BasicForm.vue'
import TableHead from '@/components/TableHead/src/TableHead.vue' import TableHead from '@/components/TableHead/src/TableHead.vue'
import DetailTable from '@/components/DetailTable/src/DetailTable.vue' import DetailTable from '@/components/DetailTable/src/DetailTable.vue'
import { SearchTable } from '@/components/SearchTable' import { SearchTable } from '@/components/SearchTable'
import { CACHE_KEY, useCache } from '@/hooks/web/useCache'
defineOptions({ name: 'Detail' }) defineOptions({ name: 'Detail' })
@ -443,6 +444,23 @@ const props = defineProps({
default: 8 default: 8
} }
}) })
const filterPermissionAnnexTable = ()=>{
return props.annexTable.filter(item=>{
const { wsCache } = useCache()
const permissions = wsCache.get(CACHE_KEY.USER).permissions
const all_permission = '*:*:*'
if(item?.hasPermi&&item?.hasPermi.length > 0){
const hasPermissions = permissions.find((permission: string) => {
return all_permission === permission || item?.hasPermi === permission
})
if(!hasPermissions){
console.log('hasPermi',item)
return false
}
}
return true
})
}
const isShowDrawer = ref(false) const isShowDrawer = ref(false)
const detailLoading = ref(false) const detailLoading = ref(false)
const tabsList = ref(JSON.parse(JSON.stringify(props.tabs ? props.tabs : ''))) const tabsList = ref(JSON.parse(JSON.stringify(props.tabs ? props.tabs : '')))
@ -471,7 +489,7 @@ if(props.slotDetailTabList){
} }
let otherList = [...props.annexTable,{ let otherList = [...filterPermissionAnnexTable(),{
label:props.annexAlias.label, label:props.annexAlias.label,
prop:'Annex' prop:'Annex'
},{ },{
@ -482,7 +500,7 @@ let otherList = [...props.annexTable,{
prop:'ChangeRecord' prop:'ChangeRecord'
}] }]
if(props.annexAlias.hidden){ if(props.annexAlias.hidden){
otherList = [...props.annexTable,{ otherList = [...filterPermissionAnnexTable(),{
label:'备注', label:'备注',
prop:'Remarks' prop:'Remarks'
},{ },{
@ -548,9 +566,12 @@ const getFileList = async () => {
detailLoading.value = false detailLoading.value = false
} }
} }
// //
const getAnnexFileList = async (row) => { const getAnnexFileList = async (row) => {
props.annexTable?.forEach(async (item) => { let annexTable = filterPermissionAnnexTable()
annexTable?.forEach(async (item) => {
let requstData = {...remarksData.data,tableName: item?.tableName} let requstData = {...remarksData.data,tableName: item?.tableName}
if(item?.queryParams){ if(item?.queryParams){
item?.queryParams?.forEach(queryItem => { item?.queryParams?.forEach(queryItem => {

4
src/locales/en-US.ts

@ -1283,6 +1283,10 @@ export default {
'确认撤销报工吗?': 'Are you sure to cancel the job application?', '确认撤销报工吗?': 'Are you sure to cancel the job application?',
'收货数量不可以大于订单数量!': 'The received quantity cannot exceed the order quantity', '收货数量不可以大于订单数量!': 'The received quantity cannot exceed the order quantity',
:'Revocation of work report successful', :'Revocation of work report successful',
:'The date of production cannot be less than',
:'The production date cannot be greater than the current system date',
:'Return of invoice',
:'The invoice has been successfully forwarded'
}, },

4
src/locales/zh-CN.ts

@ -1280,6 +1280,10 @@ export default {
'确认撤销报工吗?': "确认撤销报工吗?", '确认撤销报工吗?': "确认撤销报工吗?",
'收货数量不可以大于订单数量!':'收货数量不可以大于订单数量', '收货数量不可以大于订单数量!':'收货数量不可以大于订单数量',
:'撤销报工成功', :'撤销报工成功',
:'生产日期不能小于',
:'生产日期不能大于当前系统日期',
:'发票回转',
:'发票回转成功'
}, },
} }

17
src/views/login/components/QRCodePDA.vue

@ -0,0 +1,17 @@
<template>
<div style="position: absolute; bottom: 50px;right:0;display: flex; flex-direction: column;align-items: flex-end;">
<div style="position: relative;" v-show="showCode">
<Icon icon="ep:close" style="position: absolute;right: 5px;top: 5px" @click="handleClose"/>
<img alt="" style="margin-bottom: 10px;" width="120" height="120"/>
</div>
<el-button type="primary" link @click="handleClose">PDA按照程序下载链接</el-button>
</div>
</template>
<script setup lang="ts">
const showCode = ref(false)
const handleClose = ()=>{
showCode.value = !showCode.value
}
</script>
<style lang="scss" scoped></style>

3
src/views/login/components/index.ts

@ -4,5 +4,6 @@ import LoginFormTitle from './LoginFormTitle.vue'
import RegisterForm from './RegisterForm.vue' import RegisterForm from './RegisterForm.vue'
import QrCodeForm from './QrCodeForm.vue' import QrCodeForm from './QrCodeForm.vue'
import SSOLoginVue from './SSOLogin.vue' import SSOLoginVue from './SSOLogin.vue'
import QRCodePDA from './QRCodePDA.vue'
export { LoginForm, MobileForm, LoginFormTitle, RegisterForm, QrCodeForm, SSOLoginVue } export { LoginForm, MobileForm, LoginFormTitle, RegisterForm, QrCodeForm, SSOLoginVue,QRCodePDA }

7
src/views/login/login.vue

@ -43,7 +43,7 @@
</div> </div>
<!-- 右边的登录界面 --> <!-- 右边的登录界面 -->
<Transition appear enter-active-class="animate__animated animate__bounceInRight"> <Transition appear enter-active-class="animate__animated animate__bounceInRight">
<div <div style="position: relative"
class="m-auto h-full w-[100%] flex items-center at-2xl:max-w-500px at-lg:max-w-500px at-md:max-w-500px at-xl:max-w-500px" class="m-auto h-full w-[100%] flex items-center at-2xl:max-w-500px at-lg:max-w-500px at-md:max-w-500px at-xl:max-w-500px"
> >
<!-- 账号登录 --> <!-- 账号登录 -->
@ -56,7 +56,10 @@
<RegisterForm class="m-auto h-auto p-20px lt-xl:(rounded-3xl light:bg-white)" /> <RegisterForm class="m-auto h-auto p-20px lt-xl:(rounded-3xl light:bg-white)" />
<!-- 三方登录 --> <!-- 三方登录 -->
<SSOLoginVue class="m-auto h-auto p-20px lt-xl:(rounded-3xl light:bg-white)" /> <SSOLoginVue class="m-auto h-auto p-20px lt-xl:(rounded-3xl light:bg-white)" />
<!-- PDA端APK程序下载的二维码 -->
<!-- <QRCodePDA class="m-auto h-auto p-20px lt-xl:(rounded-3xl light:bg-white)"/> -->
</div> </div>
</Transition> </Transition>
</div> </div>
</div> </div>
@ -70,7 +73,7 @@ import { useAppStore } from '@/store/modules/app'
import { ThemeSwitch } from '@/layout/components/ThemeSwitch' import { ThemeSwitch } from '@/layout/components/ThemeSwitch'
import { LocaleDropdown } from '@/layout/components/LocaleDropdown' import { LocaleDropdown } from '@/layout/components/LocaleDropdown'
import { LoginForm, MobileForm, QrCodeForm, RegisterForm, SSOLoginVue } from './components' import { LoginForm, MobileForm, QrCodeForm, RegisterForm, SSOLoginVue,QRCodePDA } from './components'
defineOptions({ name: 'Login' }) defineOptions({ name: 'Login' })

91
src/views/qms/inspectionQ2/index.vue

@ -49,6 +49,15 @@
<BasicForm <BasicForm
ref="basicFormRef" ref="basicFormRef"
@success="formsSuccess" @success="formsSuccess"
:sumFormDataByForm="
(formRef, formModel) => {
const { claimAddress } = formModel
formRef.value.setValues({
installPackageUrl: claimAddress
})
}
"
:hiddenFilterBtnFields="['purchaseReceiptNumber']"
:rules="Q2Rules" :rules="Q2Rules"
:formAllSchemas="Q2.allSchemas" :formAllSchemas="Q2.allSchemas"
:apiUpdate="Q2Api.updateQ2" :apiUpdate="Q2Api.updateQ2"
@ -150,6 +159,14 @@ const searchTableSuccess = (formField, searchField, val, formRef) => {
if (formField == 'lightItemCode') { if (formField == 'lightItemCode') {
setV['lightItemCode'] = val[0].code setV['lightItemCode'] = val[0].code
setV['lightItemName'] = val[0].name setV['lightItemName'] = val[0].name
setV['standardCostPrice'] = ''
setV['lightQty'] = 0
setV['claimAmount'] = ''
setV['otherClaimAmount'] = 0
setV['summaryAmount'] = 0
setV['disbursementAmount'] = 0
setV['remainingAmount'] = 0
 const params2 = {  const params2 = {
        by: 'ASC',         by: 'ASC',
        filters: [{ column: 'itemCode', action: '==', value: val[0].code }],         filters: [{ column: 'itemCode', action: '==', value: val[0].code }],
@ -186,14 +203,6 @@ const searchTableSuccess = (formField, searchField, val, formRef) => {
setV['SupplierCode'] = '' setV['SupplierCode'] = ''
setV['SupplierName'] = '' setV['SupplierName'] = ''
setV['itemName'] = '' setV['itemName'] = ''
setV['standardCostPrice'] = ''
setV['lightQty'] = 0
setV['claimAmount'] = ''
setV['otherclaimAmount'] = 0
setV['summaryAmount'] = 0
setV['disbursementAmount'] = 0
setV['remainingAmount'] = 0
setV['purchaseReceiptNumber'] = ''
setV['uom'] = val[0].supplierUom setV['uom'] = val[0].supplierUom
Q2Api.getEmail().then((res) => { Q2Api.getEmail().then((res) => {
@ -239,24 +248,6 @@ const searchTableSuccess = (formField, searchField, val, formRef) => {
}) })
} }
}) })
// const params2 = {
// by: 'ASC',
// filters: [{ column: 'itemCode', action: '==', value: val[0].itemCode }],
// pageNo: 1,
// pageSize: 500,
// sort: ''
// }
// params2.isSearch = true
// StdcostpriceApi.getStdcostpricePage(params2).then((res) => {
// if (res.list?.length > 0) {
// priceObj.value = res.list[0]
// formRef.setValues({
// standardCostPrice: priceObj.value.price
// })
// }
// })
setV[formField] = val[0][searchField] setV[formField] = val[0][searchField]
formRef.setValues(setV) formRef.setValues(setV)
} }
@ -264,6 +255,8 @@ const searchTableSuccess = (formField, searchField, val, formRef) => {
} }
const onChange = (field, e) => { const onChange = (field, e) => {
console.log('onChange',field)
console.log(basicFormRef.value.formRef.formModel)
if (field == 'lightQty') { if (field == 'lightQty') {
basicFormRef.value.formRef.formModel.claimAmount = ( basicFormRef.value.formRef.formModel.claimAmount = (
parseFloat(basicFormRef.value.formRef.formModel.lightQty) * parseFloat(basicFormRef.value.formRef.formModel.lightQty) *
@ -272,7 +265,7 @@ const onChange = (field, e) => {
).toFixed(6) ).toFixed(6)
basicFormRef.value.formRef.formModel.summaryAmount = ( basicFormRef.value.formRef.formModel.summaryAmount = (
parseFloat(basicFormRef.value.formRef.formModel.claimAmount) + parseFloat(basicFormRef.value.formRef.formModel.claimAmount) +
parseFloat(basicFormRef.value.formRef.formModel.otherclaimAmount) parseFloat(basicFormRef.value.formRef.formModel.otherClaimAmount||0)
).toFixed(6) ).toFixed(6)
basicFormRef.value.formRef.formModel.remainingAmount = ( basicFormRef.value.formRef.formModel.remainingAmount = (
parseFloat(basicFormRef.value.formRef.formModel.summaryAmount) - parseFloat(basicFormRef.value.formRef.formModel.summaryAmount) -
@ -287,17 +280,17 @@ const onChange = (field, e) => {
).toFixed(6) ).toFixed(6)
basicFormRef.value.formRef.formModel.summaryAmount = ( basicFormRef.value.formRef.formModel.summaryAmount = (
parseFloat(basicFormRef.value.formRef.formModel.claimAmount) + parseFloat(basicFormRef.value.formRef.formModel.claimAmount) +
parseFloat(basicFormRef.value.formRef.formModel.otherclaimAmount) parseFloat(basicFormRef.value.formRef.formModel.otherClaimAmount)
).toFixed(6) ).toFixed(6)
basicFormRef.value.formRef.formModel.remainingAmount = ( basicFormRef.value.formRef.formModel.remainingAmount = (
parseFloat(basicFormRef.value.formRef.formModel.summaryAmount) - parseFloat(basicFormRef.value.formRef.formModel.summaryAmount) -
parseFloat(basicFormRef.value.formRef.formModel.disbursementAmount) parseFloat(basicFormRef.value.formRef.formModel.disbursementAmount)
).toFixed(6) ).toFixed(6)
} }
if (field == 'otherclaimAmount') { if (field == 'otherClaimAmount') {
basicFormRef.value.formRef.formModel.summaryAmount = ( basicFormRef.value.formRef.formModel.summaryAmount = (
parseFloat(basicFormRef.value.formRef.formModel.claimAmount) + parseFloat(basicFormRef.value.formRef.formModel.claimAmount) +
parseFloat(basicFormRef.value.formRef.formModel.otherclaimAmount) parseFloat(basicFormRef.value.formRef.formModel.otherClaimAmount)
).toFixed(6) ).toFixed(6)
basicFormRef.value.formRef.formModel.remainingAmount = ( basicFormRef.value.formRef.formModel.remainingAmount = (
parseFloat(basicFormRef.value.formRef.formModel.summaryAmount) - parseFloat(basicFormRef.value.formRef.formModel.summaryAmount) -
@ -307,7 +300,7 @@ const onChange = (field, e) => {
if (field == 'claimAmount') { if (field == 'claimAmount') {
basicFormRef.value.formRef.formModel.summaryAmount = ( basicFormRef.value.formRef.formModel.summaryAmount = (
parseFloat(basicFormRef.value.formRef.formModel.claimAmount) + parseFloat(basicFormRef.value.formRef.formModel.claimAmount) +
parseFloat(basicFormRef.value.formRef.formModel.otherclaimAmount) parseFloat(basicFormRef.value.formRef.formModel.otherClaimAmount)
).toFixed(6) ).toFixed(6)
basicFormRef.value.formRef.formModel.remainingAmount = ( basicFormRef.value.formRef.formModel.remainingAmount = (
parseFloat(basicFormRef.value.formRef.formModel.summaryAmount) - parseFloat(basicFormRef.value.formRef.formModel.summaryAmount) -
@ -324,6 +317,7 @@ const onChange = (field, e) => {
if (field == 'supplierCode') { if (field == 'supplierCode') {
basicFormRef.value.formRef.formModel.supplierName = '' basicFormRef.value.formRef.formModel.supplierName = ''
basicFormRef.value.formRef.formModel.purchaseReceiptNumber = ''
const paramsCustomer = { const paramsCustomer = {
by: 'ASC', by: 'ASC',
filters: [ filters: [
@ -446,6 +440,19 @@ const handleFinish = async (id: number) => {
/** 添加/修改操作 */ /** 添加/修改操作 */
const basicFormRef = ref() const basicFormRef = ref()
const openForm = (type: string, row?: any) => { const openForm = (type: string, row?: any) => {
if (row && row.claimAddress?.trim()) {
row.filePathList = row.claimAddress.split(',')
}
if (row && row.filePathList && row.filePathList.length > 0) {
row.filePathListView = row.filePathList.map((item) => {
return {
name: item,
url: item
}
})
}
basicFormRef.value.open(type, row) basicFormRef.value.open(type, row)
if(!row || !row.claimAmount){ if(!row || !row.claimAmount){
nextTick(() => { nextTick(() => {
@ -463,6 +470,24 @@ const openForm = (type: string, row?: any) => {
disbursementAmount: 0 disbursementAmount: 0
}) })
}) })
const currentTime = new Date().getTime()
const fileId = Q2.allSchemas.formSchema.find((item) => item.field == 'fileId')
const uploadFile = Q2.allSchemas.formSchema.find(
(item) => item.field == 'claimAddress'
)
if (fileId) {
fileId['value'] = currentTime
}
if (uploadFile) {
uploadFile['componentProps']['upData']['tableId'] = currentTime
uploadFile['componentProps']['modelValue'] = []
}
}
else if (type == 'update') {
const uploadFile = Q2.allSchemas.formSchema.find(
(item) => item.field == 'claimAddress'
)
uploadFile['componentProps']['modelValue'] = row.filePathListView
} }
} }
@ -482,6 +507,10 @@ const formsSuccess = async (formType, data) => {
message.error('整灯数量不能为0') message.error('整灯数量不能为0')
return return
} }
if (!data.standardCostPrice) {
message.error('标准成本价格不能为0或空')
return
}
if (data.activeTime == 0) data.activeTime = null if (data.activeTime == 0) data.activeTime = null
if (data.expireTime == 0) data.expireTime = null if (data.expireTime == 0) data.expireTime = null

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

@ -25,7 +25,7 @@ export const Q2Rules = reactive({
supplierCode: [{ required: true, message: '请选择供应商代码', trigger: 'change' }], supplierCode: [{ required: true, message: '请选择供应商代码', trigger: 'change' }],
purchaseReceiptNumber: [ purchaseReceiptNumber: [
{ required: true, message: '请选择采购收货单号', trigger: 'change' }, { required: true, message: '请选择采购收货单号', trigger: 'change' },
{ max: 50, message: '不得超过50个字符', trigger: 'blur' } { max: 255, message: '不得超过255个字符', trigger: 'blur' }
], ],
claimTime: [{ required: true, message: '请选择索赔日期', trigger: 'change' }], claimTime: [{ required: true, message: '请选择索赔日期', trigger: 'change' }],
lightItemCode: [{ required: true, message: '请选择整灯物料代码', trigger: 'change' }], lightItemCode: [{ required: true, message: '请选择整灯物料代码', trigger: 'change' }],
@ -390,7 +390,7 @@ export const Q2 = useCrudSchemas(
}, },
{ {
label: '其他索赔金额', label: '其他索赔金额',
field: 'otherclaimAmount', field: 'otherClaimAmount',
sort: 'custom', sort: 'custom',
isSearch: false, isSearch: false,
isTable: true, isTable: true,
@ -470,7 +470,6 @@ export const Q2 = useCrudSchemas(
// labelMessage: '信息提示说明!!!', // labelMessage: '信息提示说明!!!',
componentProps: { componentProps: {
enterSearch: true, enterSearch: true,
multiple: true,
isSearchList: true, // 开启查询弹窗 isSearchList: true, // 开启查询弹窗
searchListPlaceholder: '请选择Q1通知单', // 输入框占位文本 searchListPlaceholder: '请选择Q1通知单', // 输入框占位文本
searchField: 'number', // 查询弹窗赋值字段 searchField: 'number', // 查询弹窗赋值字段
@ -597,6 +596,39 @@ export const Q2 = useCrudSchemas(
} }
}, },
{
label: '索赔单附件',
field: 'claimAddressName',
sort: 'custom',
isSearch: false,
isForm: false,
isTable: true,
isDetail: false,
table: {
width: 150
}
},
{
label: '索赔单附件',
field: 'claimAddress',
sort: 'custom',
isTable: false,
table: {
width: 150
},
form: {
component: 'UploadFile',
componentProps: {
upData: {
tableName: 'basicInspectionQ2',
tableId: ''
},
fileType: ['doc', 'xls', 'ppt', 'txt'],
modelValue: []
}
}
},
{ {
label: '状态', label: '状态',
field: 'status', field: 'status',

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

@ -126,7 +126,6 @@ export const InspectionQ3Main = useCrudSchemas(
// labelMessage: '信息提示说明!!!', // labelMessage: '信息提示说明!!!',
componentProps: { componentProps: {
enterSearch: true, enterSearch: true,
multiple: true,
isSearchList: true, // 开启查询弹窗 isSearchList: true, // 开启查询弹窗
searchListPlaceholder: '请选择Q1通知单', // 输入框占位文本 searchListPlaceholder: '请选择Q1通知单', // 输入框占位文本
searchField: 'number', // 查询弹窗赋值字段 searchField: 'number', // 查询弹窗赋值字段

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

@ -247,7 +247,7 @@ const butttondata = (row) => {
// defaultButtons.mainListOrderCOMPLETEBtn({ hide: isShowMainButton(row, ['INCOMPLETE']) }), // // defaultButtons.mainListOrderCOMPLETEBtn({ hide: isShowMainButton(row, ['INCOMPLETE']) }), //
defaultButtons.mainApplyDecisionBtn({ defaultButtons.mainApplyDecisionBtn({
hide: isShowMainButton(row, null), // hide: isShowMainButton(row, null),
hasPermi: 'qms:inspection-recode-main:edit' hasPermi: 'qms:inspection-recode-main:edit'
}), // 使 }), // 使
// defaultButtons.mainListDeleteBtn(null), // // defaultButtons.mainListDeleteBtn(null), //
@ -281,13 +281,13 @@ const buttonTableClick = async (val, row) => {
// //
// 1使 // 1使
if (row.estimateCode == 1) { if (row.estimateCode == 1) {
InspectionRecordMain.allSchemas.formSchema.forEach((itemColumn) => { InspectionRecordUser.allSchemas.formSchema.forEach((itemColumn) => {
if (itemColumn.field == 'useDecision') { if (itemColumn.field == 'useDecision') {
itemColumn.componentProps.options = useDecisionList?.filter((item) => item.value == 1) itemColumn.componentProps.options = useDecisionList?.filter((item) => item.value == 1)
} }
}) })
} else if (row.estimateCode == 2) { } else if (row.estimateCode == 2) {
InspectionRecordMain.allSchemas.formSchema.forEach((itemColumn) => { InspectionRecordUser.allSchemas.formSchema.forEach((itemColumn) => {
if (itemColumn.field == 'useDecision') { if (itemColumn.field == 'useDecision') {
itemColumn.componentProps.options = useDecisionList?.filter((item) => item.value != 1) itemColumn.componentProps.options = useDecisionList?.filter((item) => item.value != 1)
} }
@ -338,7 +338,7 @@ const basicFormRef = ref()
/** 使用决策操作操作 */ /** 使用决策操作操作 */
const formRef = ref() const formRef = ref()
const rowData = ref() const rowData = ref()
const openUseForm = async (type: string, row?: number) => { const openUseForm = async (type: string, row?: any) => {
tableData.value = [] // tableData.value = [] //
rowData.value = row rowData.value = row
formRef.value.open(type, row) formRef.value.open(type, row)
@ -430,7 +430,9 @@ const submitForm = async (formType, data) => {
message.success(t('common.updateSuccess')) message.success(t('common.updateSuccess'))
} }
formRef.value.dialogVisible = false formRef.value.dialogVisible = false
if (!data.isPublished) {
handleOrderPub(rowData.value) handleOrderPub(rowData.value)
}
// //
getList() getList()
} finally { } finally {

2
src/views/qms/inspectionRecord/useAddForm.vue

@ -140,7 +140,7 @@ const open = async (type: string, row?: any, masterParmas?: any, titleName?: any
if(row.estimateCode == 1){ if(row.estimateCode == 1){
data.value.useDecision = '1' data.value.useDecision = '1'
}else{ }else{
data.value.useDecision ='' data.value.useDecision =row.useDecision||''
} }
// == // ==
if(data.value.useDecision == 1){ if(data.value.useDecision == 1){

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

File diff suppressed because it is too large

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

File diff suppressed because it is too large

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

@ -199,14 +199,17 @@ const formsSuccess = async (formType,data) => {
return return
} }
basicFormRef.value.formLoading = true basicFormRef.value.formLoading = true
if (formType === 'create') { try {
await BomApi.createBom(data) if (formType === 'create') {
message.success(t('common.createSuccess')) await BomApi.createBom(data)
} else { message.success(t('common.createSuccess'))
await BomApi.updateBom(data) } else {
message.success(t('common.updateSuccess')) await BomApi.updateBom(data)
message.success(t('common.updateSuccess'))
}
} finally {
basicFormRef.value.formLoading = false
} }
basicFormRef.value.formLoading = false
basicFormRef.value.dialogVisible = false basicFormRef.value.dialogVisible = false
if (formType === 'create') { if (formType === 'create') {
getList() getList()

4
src/views/wms/basicDataManage/labelManage/callmaterials/callmaterials.data.ts

@ -383,7 +383,7 @@ export const Callmaterials = useCrudSchemas(reactive<CrudSchema[]>([
} }
}, },
}, },
{ // {
// label: '库位', // label: '库位',
// field: 'location', // field: 'location',
// sort: 'custom', // sort: 'custom',
@ -418,7 +418,7 @@ export const Callmaterials = useCrudSchemas(reactive<CrudSchema[]>([
// } // }
// }, // },
// isSearch: true // isSearch: true
}, // },
// { // {
// label: '是否确认接收', // label: '是否确认接收',
// field: 'isRecive', // field: 'isRecive',

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

@ -445,6 +445,26 @@
</el-select> --> </el-select> -->
</el-form-item> </el-form-item>
</el-col> </el-col>
<!-- 溢出库位 -->
<el-col key="溢出库位col" :span="24">
<el-form-item key="溢出库位formItem" label="溢出库位" prop="warehouse" >
<el-select key="溢出库位Value"
v-model="formData.configuration.overflowLocationCode"
placeholder="请选择溢出库位"
style="flex: 1;margin-left: 10px;"
clearable
multiple
collapse-tags
>
<el-option
v-for="cur in options.overflowLocationCodes"
:key="'溢出库位Value'+cur.code"
:label="cur.code"
:value="cur.code"
/>
</el-select>
</el-form-item>
</el-col>
<!-- 优先空位库 --> <!-- 优先空位库 -->
<el-col key="优先空位库col" :span="24"> <el-col key="优先空位库col" :span="24">
<el-form-item key="优先空位库formItem" label="优先空位库"> <el-form-item key="优先空位库formItem" label="优先空位库">
@ -577,7 +597,7 @@ import { getCustomerList } from '@/api/wms/customer'
import { getWarehouseList } from '@/api/wms/warehouse' import { getWarehouseList } from '@/api/wms/warehouse'
import { getAreaList } from '@/api/wms/areabasic' import { getAreaList } from '@/api/wms/areabasic'
import { getLocationgroupList } from '@/api/wms/locationgroup' import { getLocationgroupList } from '@/api/wms/locationgroup'
import { getLocationList } from '@/api/wms/location' import { getLocationList,getLocationByOverflowAreaTypeByConfig } from '@/api/wms/location'
import * as RuleApi from '@/api/wms/rule' import * as RuleApi from '@/api/wms/rule'
import * as WarehouseApi from '@/api/wms/warehouse' import * as WarehouseApi from '@/api/wms/warehouse'
import { Warehouse } from '@/views/wms/basicDataManage/factoryModeling/warehouse/warehouse.data' import { Warehouse } from '@/views/wms/basicDataManage/factoryModeling/warehouse/warehouse.data'
@ -657,7 +677,9 @@ const formData = ref({
// //
RowOrder: 'ASC', RowOrder: 'ASC',
// //
ColumOrder: 'ASC' ColumOrder: 'ASC',
//
overflowLocationCode:''
} }
}) })
// //
@ -726,7 +748,8 @@ const options = reactive({
], ],
// //
warehouseList: [], warehouseList: [],
originWarehouseList: [] originWarehouseList: [],
overflowLocationCodes:[]
}) })
// //
const Butttondata = ref([ const Butttondata = ref([
@ -1074,6 +1097,9 @@ const open = async (type: string, strategyCode: string, id?: number) => {
} }
if (data.configuration) { if (data.configuration) {
formData.value.configuration = JSON.parse(data.configuration) formData.value.configuration = JSON.parse(data.configuration)
if(!Array.isArray(formData.value.configuration.overflowLocationCode)&&formData.value.configuration.overflowLocationCode.length>0){
formData.value.configuration.overflowLocationCode = formData.value.configuration.overflowLocationCode.split(',')
}
} }
// //
@ -1175,6 +1201,10 @@ const submitForm = async () => {
Value:str Value:str
} }
}) })
let configuration = {...formData.value.configuration}
if(Array.isArray(configuration.overflowLocationCode)){
configuration.overflowLocationCode = configuration.overflowLocationCode.join(',')
}
let data = { let data = {
id: formData.value.id, id: formData.value.id,
strategyCode: formData.value.strategyCode, // strategyCode: formData.value.strategyCode, //
@ -1184,7 +1214,7 @@ const submitForm = async () => {
status: formData.value.status ? 0 : 1, // status: formData.value.status ? 0 : 1, //
// //
condition: JSON.stringify(arr), condition: JSON.stringify(arr),
configuration: JSON.stringify(formData.value.configuration) configuration:JSON.stringify(configuration)
} }
if (formType.value === 'create') { if (formType.value === 'create') {
await RuleApi.createRule(data) await RuleApi.createRule(data)
@ -1252,11 +1282,23 @@ const resetForm = () => {
// //
RowOrder: 'ASC', RowOrder: 'ASC',
// //
ColumOrder: 'ASC' ColumOrder: 'ASC',
//
overflowLocationCode:''
} }
} }
} }
//
const getOverflowLocationCodes = async ()=>{
let overflowLocationCodes = await getLocationByOverflowAreaTypeByConfig({})
options.overflowLocationCodes = overflowLocationCodes || []
}
getOverflowLocationCodes()
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
.item { .item {

1
src/views/wms/basicDataManage/subject/qadCostcentre/qadCostcentre.data.ts

@ -88,7 +88,6 @@ export const QadCostcentre = useCrudSchemas(reactive<CrudSchema[]>([
field: 'createTime', field: 'createTime',
sort: 'custom', sort: 'custom',
formatter: dateFormatter, formatter: dateFormatter,
isSearch: false,
isSearch: true, isSearch: true,
search: { search: {
component: 'DatePicker', component: 'DatePicker',

22
src/views/wms/deliversettlementManage/saleShipmentMainRequest/index.vue

@ -61,6 +61,7 @@
@searchTableSuccess="searchTableSuccess" @searchTableSuccess="searchTableSuccess"
@submitForm="submitForm" @submitForm="submitForm"
:isShowButton = isShowButton :isShowButton = isShowButton
@inputNumberChange="inputNumberChange"
/> />
<!-- 详情 --> <!-- 详情 -->
<Detail <Detail
@ -128,6 +129,7 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
newRow['itemCode'] = item['itemCode'] newRow['itemCode'] = item['itemCode']
newRow['projectCode'] = item['projectCode'] newRow['projectCode'] = item['projectCode']
newRow['uom'] = item['uom'] newRow['uom'] = item['uom']
newRow['subSettleQty'] = item['subSettleQty']
tableData.value.push(newRow) tableData.value.push(newRow)
}) })
@ -355,13 +357,31 @@ const openForm = (type: string, row?: any) => {
basicFormRef.value.open(type, row) basicFormRef.value.open(type, row)
} }
const inputNumberChange = (field, val,row, index) => {
if(field=='qty'){
if(row['subSettleQty']!=null&&row['qty']>row['subSettleQty']){
message.error(`物料${row['itemCode']}最大数量为${row['subSettleQty']}`)
}
}
console.log('inputNumberChange',field, val,row, index)
}
// //
const submitForm = async (formType, submitData) => { const submitForm = async (formType, submitData) => {
let data = {...submitData} let data = {...submitData}
if(data.masterId){ if(data.masterId){
data.id = data.masterId data.id = data.masterId
} }
let flag = true
tableData.value.forEach(item=>{
if(item['subSettleQty']!=null&&item['qty']>item['subSettleQty']){
flag = false
message.error(`物料${item['itemCode']}最大数量为${item['subSettleQty']}`)
}
})
if(!flag){
return
}
data.subList = tableData.value // data.subList = tableData.value //
let isExist = false let isExist = false
tableData.value.forEach(item => { tableData.value.forEach(item => {

9
src/views/wms/deliversettlementManage/saleShipmentMainRequest/saleShipmentMain.data.ts

@ -335,6 +335,9 @@ export const SaleShipmentDetail = useCrudSchemas(reactive<CrudSchema[]>([
disabled: true disabled: true
} }
}, },
tableForm:{
disabled: true
}
}, },
{ {
label: '销售订单行', label: '销售订单行',
@ -344,8 +347,9 @@ export const SaleShipmentDetail = useCrudSchemas(reactive<CrudSchema[]>([
width: 150 width: 150
}, },
tableForm:{ tableForm:{
disabled:true,
multiple: true, multiple: true,
isInpuFocusShow: true, // 开启查询弹窗 // isInpuFocusShow: true, // 开启查询弹窗
searchListPlaceholder: '请选择销售订单行', searchListPlaceholder: '请选择销售订单行',
searchField: 'lineNumber', searchField: 'lineNumber',
searchTitle: '销售订单信息', searchTitle: '销售订单信息',
@ -527,6 +531,9 @@ export const SaleShipmentDetail = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: 150 width: 150
}, },
tableForm:{
type:'InputNumber'
}
}, },
{ {
label: '计量单位', label: '计量单位',

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

@ -412,7 +412,7 @@ export const Balance = useCrudSchemas(
component: 'DatePicker', component: 'DatePicker',
componentProps: { componentProps: {
valueFormat: 'YYYY-MM-DD HH:mm:ss', valueFormat: 'YYYY-MM-DD HH:mm:ss',
type: 'daterange', type: 'datetimerange',
defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')]
} }
} }

30
src/views/wms/inventoryjobManage/containermanage/containerMainRequest/containerMainRequest.data.ts

@ -224,7 +224,7 @@ export const ContainerMainRequest = useCrudSchemas(reactive<CrudSchema[]>([
defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')]
} }
}, },
isTable: true, isTable: false,
isForm: false, isForm: false,
}, },
{ {
@ -234,7 +234,7 @@ export const ContainerMainRequest = useCrudSchemas(reactive<CrudSchema[]>([
width: 130 width: 130
}, },
isForm: false, isForm: false,
isTable: true isTable: false
}, },
{ {
label: '最后更新时间', label: '最后更新时间',
@ -511,6 +511,9 @@ export const ContainerDetailRequest = useCrudSchemas(reactive<CrudSchema[]>([
field: 'createTime', field: 'createTime',
sort: 'custom', sort: 'custom',
formatter: dateFormatter, formatter: dateFormatter,
detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss'
},
search: { search: {
component: 'DatePicker', component: 'DatePicker',
componentProps: { componentProps: {
@ -519,10 +522,31 @@ export const ContainerDetailRequest = useCrudSchemas(reactive<CrudSchema[]>([
defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')]
} }
}, },
isTable: false, form: {
component: 'DatePicker',
componentProps: {
style: {width:'100%'},
type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x',
}
},
table: {
width: 150
},
isTable: true,
isForm: false, isForm: false,
isTableForm: false isTableForm: false
}, },
{
label: '创建者',
field: 'creator',
table: {
width: 130
},
isForm: false,
isTable: true
},
{ {
label: '地点ID', label: '地点ID',
field: 'siteId', field: 'siteId',

34
src/views/wms/inventoryjobManage/containermanage/containerRecordMain/containerRecordMain.data.ts

@ -126,7 +126,7 @@ export const ContainerRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: 180 width: 180
}, },
isSearch: true, isSearch: false,
search: { search: {
component: 'DatePicker', component: 'DatePicker',
componentProps: { componentProps: {
@ -135,7 +135,7 @@ export const ContainerRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')]
} }
}, },
isTable: true, isTable: false,
isForm: false, isForm: false,
}, },
{ {
@ -145,7 +145,7 @@ export const ContainerRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
width: 130 width: 130
}, },
isForm: false, isForm: false,
isTable: true isTable: false
}, },
{ {
label: '最后更新时间', label: '最后更新时间',
@ -274,6 +274,20 @@ export const ContainerRecordDetail = useCrudSchemas(reactive<CrudSchema[]>([
field: 'createTime', field: 'createTime',
sort: 'custom', sort: 'custom',
formatter: dateFormatter, formatter: dateFormatter,
detail: {
dateFormat : 'YYYY-MM-DD HH:mm:ss'
},
table: {
width: 180
},
form: {
component: 'DatePicker',
componentProps: {
type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x',
}
},
search: { search: {
component: 'DatePicker', component: 'DatePicker',
componentProps: { componentProps: {
@ -282,9 +296,19 @@ export const ContainerRecordDetail = useCrudSchemas(reactive<CrudSchema[]>([
defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')]
} }
}, },
isTable: false, isTable: true,
isForm: false,
isTableForm: false,
isSearch: true,
},
{
label: '创建者',
field: 'creator',
table: {
width: 130
},
isForm: false, isForm: false,
isTableForm: false isTable: true
}, },
{ {
label: '地点ID', label: '地点ID',

24
src/views/wms/inventoryjobManage/containermanage/initialContainerMainRequest/initialContainerMainRequest.data.ts

@ -228,7 +228,7 @@ export const ContainerMainRequest = useCrudSchemas(reactive<CrudSchema[]>([
defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')]
} }
}, },
isTable: true, isTable: false,
table: { table: {
width: 180 width: 180
}, },
@ -241,7 +241,7 @@ export const ContainerMainRequest = useCrudSchemas(reactive<CrudSchema[]>([
width: 130 width: 130
}, },
isForm: false, isForm: false,
isTable: true isTable: false
}, },
{ {
label: '最后更新时间', label: '最后更新时间',
@ -489,13 +489,31 @@ export const ContainerDetailRequest = useCrudSchemas(reactive<CrudSchema[]>([
defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')]
} }
}, },
isTable: false, form: {
component: 'DatePicker',
componentProps: {
style: {width:'100%'},
type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x',
}
},
isTable: true,
table: { table: {
width: 180 width: 180
}, },
isForm: false, isForm: false,
isTableForm: false isTableForm: false
}, },
{
label: '创建者',
field: 'creator',
table: {
width: 130
},
isForm: false,
isTable: true
},
{ {
label: '地点ID', label: '地点ID',
field: 'siteId', field: 'siteId',

9
src/views/wms/inventoryjobManage/packageManage/packageoverMain/packageoverRecordMain/packageoverRecordMain.data.ts

@ -518,6 +518,15 @@ export const PackageoverDetail = useCrudSchemas(reactive<CrudSchema[]>([
} }
}, },
}, },
{
label: '创建者',
field: 'creator',
sort: 'custom',
isTable: true,
table: {
width: 150
},
},
// { // {
// label: '创建时间', // label: '创建时间',
// field: 'createTime', // field: 'createTime',

24
src/views/wms/inventoryjobManage/packageManage/packageoverMain/packageoverRequestMain/packageoverRequestMain.data.ts

@ -470,12 +470,12 @@ export const PackageoverRequestDetail = useCrudSchemas(reactive<CrudSchema[]>([
searchAllSchemas: Balance.allSchemas, // 查询弹窗所需类 searchAllSchemas: Balance.allSchemas, // 查询弹窗所需类
searchPage: BalanceApi.getBalancePage, // 查询弹窗所需分页方法 searchPage: BalanceApi.getBalancePage, // 查询弹窗所需分页方法
searchCondition:[ searchCondition:[
// { {
// key: 'locationCode', key: 'warehouseCode',
// value: 'fromLocationCode', value: 'fromWarehouseCode',
// message: '请填写从库位代码!', message: '请填写从仓库代码!',
// isMainValue: true isMainValue: true
// }, },
{ {
key: 'inventoryStatus', key: 'inventoryStatus',
value: 'OK', value: 'OK',
@ -492,12 +492,12 @@ export const PackageoverRequestDetail = useCrudSchemas(reactive<CrudSchema[]>([
searchAllSchemas: Balance.allSchemas, // 查询弹窗所需类 searchAllSchemas: Balance.allSchemas, // 查询弹窗所需类
searchPage: BalanceApi.getBalancePage, // 查询弹窗所需分页方法 searchPage: BalanceApi.getBalancePage, // 查询弹窗所需分页方法
searchCondition:[ searchCondition:[
// { {
// key: 'locationCode', key: 'warehouseCode',
// value: 'fromLocationCode', value: 'fromWarehouseCode',
// message: '请填写从库位代码!', message: '请填写从仓库代码!',
// isMainValue: true isMainValue: true
// }, },
{ {
key: 'inventoryStatus', key: 'inventoryStatus',
value: 'OK', value: 'OK',

6
src/views/wms/inventoryjobManage/packageManage/packagesplitMain/packagesplitMain.data.ts

@ -44,9 +44,6 @@ export const PackagesplitMain = useCrudSchemas(reactive<CrudSchema[]>([
detail: { detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss' dateFormat: 'YYYY-MM-DD HH:mm:ss'
}, },
table: {
width: 180
},
form: { form: {
component: 'DatePicker', component: 'DatePicker',
componentProps: { componentProps: {
@ -183,9 +180,6 @@ export const PackagesplitMain = useCrudSchemas(reactive<CrudSchema[]>([
detail: { detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss' dateFormat: 'YYYY-MM-DD HH:mm:ss'
}, },
table: {
width: 180
},
form: { form: {
component: 'DatePicker', component: 'DatePicker',
componentProps: { componentProps: {

32
src/views/wms/inventoryjobManage/scrap/scrapJobMain/scrapJobMain.data.ts

@ -169,6 +169,14 @@ export const ScrapJobMain = useCrudSchemas(
width: 150 width: 150
}, },
}, },
{
label: '订单号',
field: 'orderNumber',
sort: 'custom',
table: {
width: 150
},
},
{ {
label: 'Q1通知单号', label: 'Q1通知单号',
field: 'q1Number', field: 'q1Number',
@ -353,6 +361,14 @@ export const ScrapJobMain = useCrudSchemas(
width: 150 width: 150
} }
}, },
{
label: '通知单描述',
field: 'noticeRemark',
sort: 'custom',
table: {
width: 150
}
},
{ {
label: '备注', label: '备注',
field: 'remark', field: 'remark',
@ -879,14 +895,14 @@ export const ScrapJobDetail = useCrudSchemas(reactive<CrudSchema[]>([
width: 150 width: 150
}, },
}, },
{ // {
label: '项目代码', // label: '项目代码',
field: 'projectCode', // field: 'projectCode',
sort: 'custom', // sort: 'custom',
table: { // table: {
width: 150 // width: 150
}, // },
}, // },
{ {
label: '备注', label: '备注',
field: 'remark', field: 'remark',

32
src/views/wms/inventoryjobManage/scrap/scrapRecordMain/scrapRecordMain.data.ts

@ -178,6 +178,14 @@ export const ScrapRecordMain = useCrudSchemas(
width: 150 width: 150
}, },
}, },
{
label: '订单号',
field: 'orderNumber',
sort: 'custom',
table: {
width: 150
},
},
{ {
label: 'Q1通知单号', label: 'Q1通知单号',
field: 'q1Number', field: 'q1Number',
@ -356,6 +364,14 @@ export const ScrapRecordMain = useCrudSchemas(
width: 150 width: 150
} }
}, },
{
label: '通知单描述',
field: 'noticeRemark',
sort: 'custom',
table: {
width: 150
}
},
{ {
label: '备注', label: '备注',
field: 'remark', field: 'remark',
@ -690,14 +706,14 @@ export const ScrapRecordDetail = useCrudSchemas(reactive<CrudSchema[]>([
width: 150 width: 150
}, },
}, },
{ // {
label: '项目代码', // label: '项目代码',
field: 'projectCode', // field: 'projectCode',
sort: 'custom', // sort: 'custom',
table: { // table: {
width: 150 // width: 150
}, // },
}, // },
{ {
label: '备注', label: '备注',
field: 'remark', field: 'remark',

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

@ -190,6 +190,7 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row) =>
console.log("报废出库主表") console.log("报废出库主表")
const setV = {} const setV = {}
if (formField == 'q1Number') { if (formField == 'q1Number') {
setV['noticeRemark'] = val[0]['desc']
ScrapRequestMain.allSchemas.formSchema.forEach((item) => { ScrapRequestMain.allSchemas.formSchema.forEach((item) => {
if (item.field == 'q2Number' || item.field == 'q3Number') { if (item.field == 'q2Number' || item.field == 'q3Number') {
item.componentProps.enterSearch = false item.componentProps.enterSearch = false
@ -199,6 +200,7 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row) =>
}) })
} }
if (formField == 'q2Number') { if (formField == 'q2Number') {
setV['noticeRemark'] = val[0]['desc']
ScrapRequestMain.allSchemas.formSchema.forEach((item) => { ScrapRequestMain.allSchemas.formSchema.forEach((item) => {
if (item.field == 'q1Number' || item.field == 'q3Number') { if (item.field == 'q1Number' || item.field == 'q3Number') {
item.componentProps.enterSearch = false item.componentProps.enterSearch = false
@ -208,6 +210,7 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row) =>
}) })
} }
if (formField == 'q3Number') { if (formField == 'q3Number') {
setV['noticeRemark'] = val[0]['desc']
ScrapRequestMain.allSchemas.formSchema.forEach((item) => { ScrapRequestMain.allSchemas.formSchema.forEach((item) => {
if (item.field == 'q1Number' || item.field == 'q2Number') { if (item.field == 'q1Number' || item.field == 'q2Number') {
item.componentProps.enterSearch = false item.componentProps.enterSearch = false
@ -245,6 +248,9 @@ const clearSearchInput = (field) => {
item.componentProps.disabled = false item.componentProps.disabled = false
} }
}) })
formRef.value.formRef.setValues({
noticeRemark:''
})
} }
if (field == 'q2Number') { if (field == 'q2Number') {
ScrapRequestMain.allSchemas.formSchema.forEach((item) => { ScrapRequestMain.allSchemas.formSchema.forEach((item) => {
@ -254,6 +260,9 @@ const clearSearchInput = (field) => {
item.componentProps.disabled = false item.componentProps.disabled = false
} }
}) })
formRef.value.formRef.setValues({
noticeRemark:''
})
} }
if (field == 'q3Number') { if (field == 'q3Number') {
ScrapRequestMain.allSchemas.formSchema.forEach((item) => { ScrapRequestMain.allSchemas.formSchema.forEach((item) => {
@ -263,6 +272,9 @@ const clearSearchInput = (field) => {
item.componentProps.disabled = false item.componentProps.disabled = false
} }
}) })
formRef.value.formRef.setValues({
noticeRemark:''
})
} }
} }
// //

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

@ -616,11 +616,18 @@ export const ScrapRequestMain = useCrudSchemas(
} }
} }
}, },
{
label: '通知单描述',
field: 'noticeRemark',
sort: 'custom',
table: {
width: 150
}
},
{ {
label: '备注', label: '备注',
field: 'remark', field: 'remark',
sort: 'custom', sort: 'custom',
isTable: false,
table: { table: {
width: 150 width: 150
} }

20
src/views/wms/inventoryjobManage/unplannedissue/unplannedissueRecordMain/index.vue

@ -128,17 +128,33 @@ const buttonBaseClick = (val, item) => {
} }
} }
const isShowRevokeButton = (row,val) => {
if (val.indexOf(row.revokeFlag) > -1) {
return false
} else {
return true
}
}
// - // -
const butttondata = (row,$index) => { const butttondata = (row,$index) => {
const findIndex = row['masterId']?tableObject.tableList.findIndex(item=>item['masterId'] == row['masterId']):-1 const findIndex = row['masterId']?tableObject.tableList.findIndex(item=>item['masterId'] == row['masterId']):-1
if(findIndex>-1&&findIndex<$index){ if(findIndex>-1&&findIndex<$index){
return [] return [
defaultButtons.backoutBtn({hide:isShowRevokeButton(row,['FALSE'])}) //
]
} }
return [] return [
defaultButtons.backoutBtn({hide:isShowRevokeButton(row,['FALSE'])}) //
]
} }
// - // -
const buttonTableClick = async (val, row) => { const buttonTableClick = async (val, row) => {
if (val == 'backout') { //
await UnplannedissueRecordMainApi.revoke(row.masterId)
buttonBaseClick('refresh',null)
}
} }
// //
const { wsCache } = useCache() const { wsCache } = useCache()

10
src/views/wms/inventoryjobManage/unplannedissue/unplannedissueRecordMain/unplannedissueRecordMain.data.ts

@ -481,6 +481,16 @@ export const UnplannedissueRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
} }
} }
}, },
{
label: '操作',
field: 'action',
isDetail: false,
isForm: false,
table: {
width: 120,
fixed: 'right'
},
}
])) ]))
//表单校验 //表单校验

20
src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRecordMain/index.vue

@ -128,17 +128,33 @@ const buttonBaseClick = (val, item) => {
} }
} }
const isShowRevokeButton = (row,val) => {
if (val.indexOf(row.revokeFlag) > -1) {
return false
} else {
return true
}
}
// - // -
const butttondata = (row,$index) => { const butttondata = (row,$index) => {
const findIndex = row['masterId']?tableObject.tableList.findIndex(item=>item['masterId'] == row['masterId']):-1 const findIndex = row['masterId']?tableObject.tableList.findIndex(item=>item['masterId'] == row['masterId']):-1
if(findIndex>-1&&findIndex<$index){ if(findIndex>-1&&findIndex<$index){
return [] return [
defaultButtons.backoutBtn({hide:isShowRevokeButton(row,['FALSE'])}) //
]
} }
return [] return [
defaultButtons.backoutBtn({hide:isShowRevokeButton(row,['FALSE'])}) //
]
} }
// - // -
const buttonTableClick = async (val, row) => { const buttonTableClick = async (val, row) => {
if (val == 'backout') { //
await UnplannedreceiptRecordMainApi.revoke(row.masterId)
buttonBaseClick('refresh',null)
}
} }
// //
const { wsCache } = useCache() const { wsCache } = useCache()

10
src/views/wms/inventoryjobManage/unplannedreceipt/unplannedreceiptRecordMain/unplannedreceiptRecordMain.data.ts

@ -467,6 +467,16 @@ export const UnplannedreceiptRecordMain = useCrudSchemas(reactive<CrudSchema[]>(
} }
} }
}, },
{
label: '操作',
field: 'action',
isDetail: false,
isForm: false,
table: {
width: 120,
fixed: 'right'
},
}
])) ]))
//表单校验 //表单校验

1
src/views/wms/issueManage/issue/issueJobMain/issueJobMain.data.ts

@ -24,6 +24,7 @@ export const IssueJobMain = useCrudSchemas(
table: { table: {
width: 180 width: 180
}, },
isSearch: true,
sortTableDefault: 1 sortTableDefault: 1
}, },
{ {

11
src/views/wms/issueManage/issue/issueRecordMain/issueRecordMain.data.ts

@ -24,6 +24,7 @@ export const IssueRecordMain = useCrudSchemas(
table: { table: {
width: 180 width: 180
}, },
isSearch:true,
sortTableDefault: 1 sortTableDefault: 1
}, },
{ {
@ -33,6 +34,7 @@ export const IssueRecordMain = useCrudSchemas(
table: { table: {
width: 180 width: 180
}, },
isSearch:true,
sortTableDefault: 1 sortTableDefault: 1
}, },
{ {
@ -356,6 +358,15 @@ export const IssueRecordMain = useCrudSchemas(
}, },
sortTableDefault: 6 sortTableDefault: 6
}, },
{
label: '发料数量', // 子表数据 只是为了展示
field: 'qty',
sort: 'custom',
table: {
width: 150
},
sortTableDefault: 6
},
{ {
label: '批次', // 子表数据 只是为了展示 label: '批次', // 子表数据 只是为了展示
field: 'fromBatch', field: 'fromBatch',

1
src/views/wms/issueManage/issue/issueRequestMain/issueRequestMain.data.ts

@ -246,6 +246,7 @@ export const IssueRequestMain = useCrudSchemas(
dictClass: 'string', dictClass: 'string',
isForm: false, isForm: false,
isTable: true, isTable: true,
isSearch: true,
sort: 'custom', sort: 'custom',
table: { table: {
width: 150 width: 150

1
src/views/wms/issueManage/productionreceipt/productionreceiptRecordMain/productionreceiptRecordMain.data.ts

@ -471,6 +471,7 @@ export const ProductionreceiptRecordDetail = useCrudSchemas(reactive<CrudSchema[
width: 150 width: 150
}, },
isSearch: false, isSearch: false,
isTable:false,
hiddenInMain: true hiddenInMain: true
}, },
{ {

15
src/views/wms/issueManage/productionreturn/productionreturnJobMain/index.vue

@ -117,7 +117,10 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
} }
const { tableObject, tableMethods } = useTable({ const { tableObject, tableMethods } = useTable({
getListApi: ProductionreturnJobDetailApi.getProductionreturnJobDetailPage // getListApi: 'ProductionreturnJobMain'==routeName.value?ProductionreturnJobDetailApi.getProductionreturnJobDetailPageStore:ProductionreturnJobDetailApi.getProductionreturnJobDetailPageHold //
//getListApi: ProductionreturnJobDetailApi.getProductionreturnJobDetailPage //
}) })
// //
@ -274,8 +277,18 @@ const handleExport = async () => {
// //
loadStart() loadStart()
const excelTitle = ref(route.meta.title) const excelTitle = ref(route.meta.title)
// if('ProductionreturnJobMain'==routeName.value){
// //退
// const data = await ProductionreturnJobMainApi.exportProductionreturnJobMainStore(tableObject.params)
// download.excel(data, `${excelTitle.value}${formatDate(new Date())}.xlsx`)
// }else{
// // 退
// const data = await ProductionreturnJobMainApi.exportProductionreturnJobMainHold(tableObject.params)
// download.excel(data, `${excelTitle.value}${formatDate(new Date())}.xlsx`)
// }
const data = await ProductionreturnJobMainApi.exportProductionreturnJobMain(tableObject.params) const data = await ProductionreturnJobMainApi.exportProductionreturnJobMain(tableObject.params)
download.excel(data, `${excelTitle.value}】【${formatDate(new Date())}】.xlsx`) download.excel(data, `${excelTitle.value}】【${formatDate(new Date())}】.xlsx`)
} catch { } catch {
} finally { } finally {
loadDone() loadDone()

12
src/views/wms/issueManage/productionreturn/productionreturnRecordMain/index.vue

@ -159,8 +159,16 @@ const handleExport = async () => {
// //
loadStart() loadStart()
const excelTitle = ref(route.meta.title) const excelTitle = ref(route.meta.title)
const data = await ProductionreturnRecordMainApi.exportProductionreturnRecordMain(tableObject.params) if('ProductionreturnRecordMain'==routeName.value){
download.excel(data, `${excelTitle.value}】【${formatDate(new Date())}】.xlsx`) //退
const data = await ProductionreturnRecordMainApi.exportProductionreturnRecordMainStore(tableObject.params)
download.excel(data, `${excelTitle.value}】【${formatDate(new Date())}】.xlsx`)
}else{
// 退
const data = await ProductionreturnRecordMainApi.exportProductionreturnRecordMainHold(tableObject.params)
download.excel(data, `${excelTitle.value}】【${formatDate(new Date())}】.xlsx`)
}
} catch { } catch {
} finally { } finally {
loadDone() loadDone()

20
src/views/wms/issueManage/productionreturn/productionreturnRequestMain/index.vue

@ -209,6 +209,8 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
} else { } else {
row['batch'] = '000000' row['batch'] = '000000'
} }
row['packUnit'] = val[0]['packUnit']
row['packQty'] = val[0]['packQty']
// HL-4885 @ @ // HL-4885 @ @
// tableform // tableform
// TODO: tableFormColumns 10 20 20 // TODO: tableFormColumns 10 20 20
@ -226,10 +228,12 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
newRow['fromLocationCode'] = item['rawLocationCode'] newRow['fromLocationCode'] = item['rawLocationCode']
tableData.value.push(newRow) tableData.value.push(newRow)
}) })
} else if(formField == 'packUnit') { }
row['packUnit'] = val[0]['packUnit'] // else if(formField == 'packUnit') {
row['packQty'] = val[0]['packQty'] // row['packUnit'] = val[0]['packUnit']
} else { // row['packQty'] = val[0]['packQty']
// }
else {
row[formField] = val[0][searchField] row[formField] = val[0][searchField]
} }
} else { } else {
@ -453,8 +457,8 @@ const buttonTableClick = async (val, row) => {
// tableform // tableform
detailListTableColumns.tableFormColumns.map(itemColumns => { detailListTableColumns.tableFormColumns.map(itemColumns => {
if(itemColumns.field == 'productionLineCodePackage') { if(itemColumns.field == 'productionLineCodePackage') {
// itemColumns.tableForm.isInpuFocusShow = false itemColumns.tableForm.isInpuFocusShow = false
// itemColumns.tableForm.disabled = true itemColumns.tableForm.disabled = true
ProductionreturnRequestDetailLabelRules.productionLineCodePackage[0].required = false ProductionreturnRequestDetailLabelRules.productionLineCodePackage[0].required = false
} }
if(itemColumns.field == 'supplierItemCode') { if(itemColumns.field == 'supplierItemCode') {
@ -473,8 +477,8 @@ const buttonTableClick = async (val, row) => {
} }
if(itemColumns.field == 'productionLineCodePackage') { if(itemColumns.field == 'productionLineCodePackage') {
item.productionLineCodePackage = item.productionLineCode item.productionLineCodePackage = item.productionLineCode
// itemColumns.tableForm.isInpuFocusShow = true itemColumns.tableForm.isInpuFocusShow = true
// itemColumns.tableForm.disabled = false itemColumns.tableForm.disabled = true
ProductionreturnRequestDetailLabelRules.productionLineCodePackage[0].required = true ProductionreturnRequestDetailLabelRules.productionLineCodePackage[0].required = true
} }
}) })

202
src/views/wms/issueManage/productionreturn/productionreturnRequestMain/productionreturnRequestMain.data.ts

@ -521,9 +521,9 @@ export const ProductionreturnRequestMainRules = reactive({
workshopCode: [ workshopCode: [
{ required: true, message: '请选择车间', trigger: 'change' } { required: true, message: '请选择车间', trigger: 'change' }
], ],
productionLineCode: [ // productionLineCode: [
{ required: true, message: '请选择生产线代码', trigger: 'change' } // { required: true, message: '请选择生产线代码', trigger: 'change' }
], // ],
}) })
/** /**
@ -623,21 +623,34 @@ export const ProductionreturnRequestDetail = useCrudSchemas(reactive<CrudSchema[
searchTitle: '工位信息', // 查询弹窗标题 searchTitle: '工位信息', // 查询弹窗标题
searchAllSchemas: Workstation.allSchemas, // 查询弹窗所需类 searchAllSchemas: Workstation.allSchemas, // 查询弹窗所需类
searchPage: WorkstationApi.getWorkstationPage, // 查询弹窗所需分页方法 searchPage: WorkstationApi.getWorkstationPage, // 查询弹窗所需分页方法
searchCondition:[{ searchCondition: [
key: 'available', {
value: 'TRUE', key: 'available',
isMainValue: false value: 'TRUE',
},{ action: '==', // 查询拼接条件
key: 'workshopCode', isSearch: true, // 使用自定义拼接条件
value: 'workshopCode', isMainValue: false
message: '请选择车间信息!', },
isMainValue: true {
},{ key: 'workshopCode',
key: 'productionLineCode', value: 'workshopCode',
value: 'productionLineCode', message: '请选择车间信息!',
message: '请选择生产线信息!', action: '==', // 查询拼接条件
isMainValue: true isSearch: true, // 使用自定义拼接条件
}], isMainValue: false, // 拼接条件必须要 false 同时不能与 isMainValue: true 同用
isFormModel:true, // filters中添加筛选的数据--取于formModel
required:true, // 前置添加必有,和isFormModel结合使用
},
{
key: 'productionLineCode', // 查询列表中字段
value: 'productionLineCode', // 指查询具体值
action: '==', // 查询拼接条件
isSearch: true, // 使用自定义拼接条件
isMainValue: false, // 拼接条件必须要 false 同时不能与 isMainValue: true 同用
isFormModel:true, // filters中添加筛选的数据--取于formModel
required:false, // 前置添加必有,和isFormModel结合使用
},
],
verificationPage: WorkstationApi.getWorkstationByCodes, // 校验数去焦点输入是否正确的方法 verificationPage: WorkstationApi.getWorkstationByCodes, // 校验数去焦点输入是否正确的方法
isShowTableFormSearch: true, isShowTableFormSearch: true,
isRepeat: true,//是否可以重复添加该条数据 isRepeat: true,//是否可以重复添加该条数据
@ -651,10 +664,33 @@ export const ProductionreturnRequestDetail = useCrudSchemas(reactive<CrudSchema[
}], // 失去焦点校验参数 }], // 失去焦点校验参数
}, },
}, },
{
label: '来源库位',
field: 'fromLocationCode',
sort: 'custom',
table: {
width: 150
},
tableForm: {
disabled: true
},
form: {
componentProps: {
disabled: true
}
},
isDetail:false,
isTable:true,
isTableForm: true,
isForm: false,
},
{ {
label: '目标库位', label: '目标库位',
field: 'toLocationCode', field: 'toLocationCode',
sort: 'custom', sort: 'custom',
table: {
width: 150
},
tableForm: { tableForm: {
multiple: true,//多选 multiple: true,//多选
isInpuFocusShow: true, // 开启查询弹窗 isInpuFocusShow: true, // 开启查询弹窗
@ -698,26 +734,6 @@ export const ProductionreturnRequestDetail = useCrudSchemas(reactive<CrudSchema[
} }
} }
}, },
{
label: '原料库位',
field: 'fromLocationCode',
sort: 'custom',
table: {
width: 150
},
tableForm: {
disabled: true
},
form: {
componentProps: {
disabled: true
}
},
isDetail:false,
isTable:false,
isTableForm: true,
isForm: false,
},
{ {
label: '物料代码', label: '物料代码',
field: 'itemCode', field: 'itemCode',
@ -914,23 +930,6 @@ export const ProductionreturnRequestDetail = useCrudSchemas(reactive<CrudSchema[
} }
} }
}, },
{
label: '来源库位',
field: 'fromLocationCode',
sort: 'custom',
table: {
width: 150
},
isTableForm: false,
tableForm: {
disabled: true
},
form: {
componentProps: {
disabled: true
}
}
},
{ {
label: '从货主', label: '从货主',
field: 'fromOwnerCode', field: 'fromOwnerCode',
@ -1035,32 +1034,33 @@ export const ProductionreturnRequestDetail = useCrudSchemas(reactive<CrudSchema[
isTable:true, isTable:true,
isTableForm: true, isTableForm: true,
tableForm: { tableForm: {
enterSearch:true, disabled: true
isInpuFocusShow: true, // enterSearch:true,
isSearchList: true, // 开启查询弹窗 // isInpuFocusShow: true,
searchListPlaceholder: '请选择包装规格', // 输入框占位文本 // isSearchList: true, // 开启查询弹窗
searchField: 'packUnit', // 查询弹窗赋值字段 // searchListPlaceholder: '请选择包装规格', // 输入框占位文本
searchTitle: '物料包装信息', // 查询弹窗标题 // searchField: 'packUnit', // 查询弹窗赋值字段
searchAllSchemas: Itempackaging.allSchemas, // 查询弹窗所需类 // searchTitle: '物料包装信息', // 查询弹窗标题
searchPage: ItempackagingApi.getItempackagingPage, // 查询弹窗所需分页方法 // searchAllSchemas: Itempackaging.allSchemas, // 查询弹窗所需类
searchCondition: [{ // searchPage: ItempackagingApi.getItempackagingPage, // 查询弹窗所需分页方法
key: 'available', // searchCondition: [{
value: 'TRUE', // key: 'available',
isMainValue: false // value: 'TRUE',
},{ // isMainValue: false
key: 'itemCode', // },{
value: 'itemCode', // key: 'itemCode',
message: '请先选择物料代码!', // value: 'itemCode',
isMainValue: true // message: '请先选择物料代码!',
}], // isMainValue: true
verificationParams: [{ // }],
key: 'packUnit', // verificationParams: [{
action: '==', // key: 'packUnit',
value: '', // action: '==',
isMainValue: false, // value: '',
isSearch: true, // isMainValue: false,
isFormModel: true, // isSearch: true,
}], // 失去焦点校验参数 // isFormModel: true,
// }], // 失去焦点校验参数
}, },
form: { form: {
// labelMessage: '信息提示说明!!!', // labelMessage: '信息提示说明!!!',
@ -1169,6 +1169,15 @@ export const ProductionreturnRequestDetail = useCrudSchemas(reactive<CrudSchema[
} }
])) ]))
const validateQty = (rule: any, value: any, callback: any,a,b) => {
if (!value) {
callback(new Error('包装数量必须大于0'));
} else {
callback();
}
}
//表单校验 //表单校验
export const ProductionreturnRequestDetailRules = reactive({ export const ProductionreturnRequestDetailRules = reactive({
workStationCode: [ workStationCode: [
@ -1183,9 +1192,12 @@ export const ProductionreturnRequestDetailRules = reactive({
// packingNumber: [ // packingNumber: [
// { required: true, message: '请选择包装号', trigger: 'change' } // { required: true, message: '请选择包装号', trigger: 'change' }
// ], // ],
// batch: [ qty:[
// { required: true, message: '请输入批次', trigger: 'blur' } { validator:validateQty, message: '数量必须大于0', trigger: 'change'}
// ], ],
batch: [
{ required: true, message: '请输入批次', trigger: 'blur' }
],
inventoryStatus: [ inventoryStatus: [
{ required: true, message: '请选择库存状态', trigger: 'change' } { required: true, message: '请选择库存状态', trigger: 'change' }
], ],
@ -1195,6 +1207,12 @@ export const ProductionreturnRequestDetailRules = reactive({
itemCode: [ itemCode: [
{ required: true, message: '请输入物料代码', trigger: 'blur' } { required: true, message: '请输入物料代码', trigger: 'blur' }
], ],
packUnit: [
{ required: true, message: '请输入包装规格', trigger: 'blur' }
],
packQty: [
{ required: true, message: '请输入标包数量', trigger: 'blur' }
],
remark: [ remark: [
{ max: 50, message: '不得超过50个字符', trigger: 'blur' } { max: 50, message: '不得超过50个字符', trigger: 'blur' }
], ],
@ -1355,22 +1373,6 @@ export const ProductionreturnRequestDetailLabel = useCrudSchemas(reactive<CrudSc
} }
} }
}, },
{
label: '来源生产线代码',
field: 'productionLineCode',
sort: 'custom',
table: {
width: 150
},
tableForm: {
disabled: true
},
form: {
componentProps: {
disabled: true
}
}
},
{ {
label: '来源工位代码', label: '来源工位代码',
field: 'workStationCode', field: 'workStationCode',

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

@ -57,7 +57,7 @@
:isBusiness="true" :isBusiness="true"
@handleAddTable="handleAddTable" @handleAddTable="handleAddTable"
@handleDeleteTable="handleDeleteTable" @handleDeleteTable="handleDeleteTable"
@searchTableSuccess="searchTableSuccess" @searchTableSuccess="searchTableSuccessAdd"
@submitForm="submitForm" @submitForm="submitForm"
/> />
@ -172,7 +172,87 @@ const isItemType = async (itemCode, labelTypeParams) => {
if (!isType) labelType.value = labelTypeOld if (!isType) labelType.value = labelTypeOld
return isType return isType
} }
//
const searchTableSuccessAdd = (formField, searchField, val, formRef, type, row ) => {
nextTick(async () => {
if (type == 'tableForm') {
//
if(formField == 'itemCode') {
if(tableData.value.find(item1=>item1['itemCode'] == val[0]['itemCode'])){
message.warning(`物料${val[0]['itemCode']}已经存在`)
return
}
let itemRes = await ItembasicApi.getItembasicPage({
pageSize: 10,
pageNo: 1,
code: val[0]['itemCode'],
sort: '',
by: 'ASC',
})
let rowType = ''
if (itemRes.list.length > 0) {
//
if (itemRes.list[0].enableMake == "FALSE") {
rowType = 'cg'
} else {
rowType = 'zz'
}
}
console.log('rowType',rowType)
console.log('tableData',tableData.value)
let currentLabelType = row['labelType']
row['labelType'] = ''
if(tableData.value.find(item=>item['labelType']&&item['labelType']!=rowType)){
if(currentLabelType){
row['labelType'] = currentLabelType
}
message.warning('当前物料可制造与其他数据不一致,请重新选择!')
}else {
row['labelType'] = rowType
row['batch'] = val[0]['batch']==''?formatTime(new Date(), 'yyyyMMdd'):val[0]['batch']
row['itemCode'] = val[0]['itemCode']
row['uom'] = val[0]['uom']
row['inventoryStatus'] = val[0]['inventoryStatus']
row['qty'] = Number(val[0]['qty'])
row['packUnit'] = val[0]['packUnit']
row['packQty'] = val[0]['packQty']
// HL-4885 @ @
// tableform
// ProductionreturnRequestDetail.allSchemas.tableFormColumns.forEach(item => {
// if(item.field == 'qty' && Number(val[0]['qty'])>item.tableForm.min) {
// item.tableForm.max = Number(val[0]['qty'])
// }
// // if(item.field == 'batch') {
// // item.tableForm.disabled = false
// // }
// })
}
} else if(formField == 'workStationCode') {
val.forEach(item=>{
const newRow = JSON.parse(JSON.stringify({...tableFormKeys,...item}))
newRow['workStationCode'] = item['code']
newRow['fromLocationCode'] = item['rawLocationCode']
newRow['checkId'] = item['id']
tableData.value.push(newRow)
})
}
// else if(formField == 'packUnit') {
// row['packUnit'] = val[0]['packUnit']
// row['packQty'] = val[0]['packQty']
// }
else {
row[formField] = val[0][searchField]
}
} else {
const setV = {}
setV[formField] = val[0][searchField]
tableData.value = [] //
formRef.setValues(setV)
}
})
}
// //
const searchTableSuccess = (formField, searchField, val, formRef, type, row ) => { const searchTableSuccess = (formField, searchField, val, formRef, type, row ) => {
nextTick(async () => { nextTick(async () => {
@ -194,6 +274,8 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
row['uom'] = val[0]['uom'] row['uom'] = val[0]['uom']
row['inventoryStatus'] = val[0]['inventoryStatus'] row['inventoryStatus'] = val[0]['inventoryStatus']
row['qty'] = Number(val[0]['qty']) row['qty'] = Number(val[0]['qty'])
row['packUnit'] = val[0]['packUnit']
row['packQty'] = val[0]['packQty']
// HL-4885 @ @ // HL-4885 @ @
// tableform // tableform
// ProductionreturnRequestDetail.allSchemas.tableFormColumns.forEach(item => { // ProductionreturnRequestDetail.allSchemas.tableFormColumns.forEach(item => {
@ -212,10 +294,12 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) =>
newRow['fromLocationCode'] = item['rawLocationCode'] newRow['fromLocationCode'] = item['rawLocationCode']
tableData.value.push(newRow) tableData.value.push(newRow)
}) })
} else if(formField == 'packUnit') { }
row['packUnit'] = val[0]['packUnit'] // else if(formField == 'packUnit') {
row['packQty'] = val[0]['packQty'] // row['packUnit'] = val[0]['packUnit']
} else { // row['packQty'] = val[0]['packQty']
// }
else {
row[formField] = val[0][searchField] row[formField] = val[0][searchField]
} }
} else { } else {
@ -434,8 +518,8 @@ const buttonTableClick = async (val, row) => {
// tableform // tableform
detailListTableColumns.tableFormColumns.map(itemColumns => { detailListTableColumns.tableFormColumns.map(itemColumns => {
if(itemColumns.field == 'productionLineCodePackage') { if(itemColumns.field == 'productionLineCodePackage') {
// itemColumns.tableForm.isInpuFocusShow = false itemColumns.tableForm.isInpuFocusShow = false
// itemColumns.tableForm.disabled = true itemColumns.tableForm.disabled = true
ProductionreturnRequestDetailNoLabelRules.productionLineCodePackage[0].required = false ProductionreturnRequestDetailNoLabelRules.productionLineCodePackage[0].required = false
} }
if(itemColumns.field == 'supplierItemCode') { if(itemColumns.field == 'supplierItemCode') {
@ -454,8 +538,8 @@ const buttonTableClick = async (val, row) => {
} }
if(itemColumns.field == 'productionLineCodePackage') { if(itemColumns.field == 'productionLineCodePackage') {
item.productionLineCodePackage = item.productionLineCode item.productionLineCodePackage = item.productionLineCode
// itemColumns.tableForm.isInpuFocusShow = true itemColumns.tableForm.isInpuFocusShow = true
// itemColumns.tableForm.disabled = false itemColumns.tableForm.disabled = true
ProductionreturnRequestDetailNoLabelRules.productionLineCodePackage[0].required = true ProductionreturnRequestDetailNoLabelRules.productionLineCodePackage[0].required = true
} }
}) })
@ -469,18 +553,18 @@ const buttonTableClick = async (val, row) => {
} else if (val == 'mainHandle') { // } else if (val == 'mainHandle') { //
// //
// let isCreateLabel = false let isCreateLabel = false
// await PackageApi.getPackagePage({ await PackageApi.getPackagePage({
// requestNumber: row.number requestNumber: row.number
// }).then(res => { }).then(res => {
// if (res) { if (res) {
// if (res.list.length > 0) isCreateLabel = true if (res.list.length > 0) isCreateLabel = true
// } }
// }) })
// if (!isCreateLabel) { if (!isCreateLabel) {
// message.warning('') message.warning('请先创建标签')
// return return
// } }
tableObject.loading = true tableObject.loading = true
ProductionreturnRequestMainNoApi.handle(row.masterId).then(() => { ProductionreturnRequestMainNoApi.handle(row.masterId).then(() => {
message.success(t('common.updateSuccess')) message.success(t('common.updateSuccess'))
@ -504,6 +588,7 @@ const buttonTableClick = async (val, row) => {
const formRef = ref() const formRef = ref()
const openForm =async (type: string, row?: number) => { const openForm =async (type: string, row?: number) => {
tableData.value = [] // tableData.value = [] //
labelType.value = ''
// //
if (type == 'update') { if (type == 'update') {
// tableform // tableform

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

@ -17,6 +17,9 @@ import * as ItempackagingApi from '@/api/wms/itempackage'
import { Itempackaging } from '@/views/wms/basicDataManage/itemManage/itempackage/itempackage.data' import { Itempackaging } from '@/views/wms/basicDataManage/itemManage/itempackage/itempackage.data'
import * as LocationApi from '@/api/wms/location' import * as LocationApi from '@/api/wms/location'
import { Location } from '@/views/wms/basicDataManage/factoryModeling/location/location.data' import { Location } from '@/views/wms/basicDataManage/factoryModeling/location/location.data'
import * as ProductionlineitemApi from '@/api/wms/productionlineitem'
import { Productionlineitem } from '@/views/wms/basicDataManage/itemManage/productionlineitem/productionlineitem.data'
const { t } = useI18n() // 国际化 const { t } = useI18n() // 国际化
/** /**
@ -129,20 +132,29 @@ export const ProductionreturnRequestDetail = useCrudSchemas(
{ {
key: 'available', key: 'available',
value: 'TRUE', value: 'TRUE',
action: '==', // 查询拼接条件
isSearch: true, // 使用自定义拼接条件
isMainValue: false isMainValue: false
}, },
{ {
key: 'workshopCode', key: 'workshopCode',
value: 'workshopCode', value: 'workshopCode',
message: '请选择车间信息!', message: '请选择车间信息!',
isMainValue: true action: '==', // 查询拼接条件
isSearch: true, // 使用自定义拼接条件
isMainValue: false, // 拼接条件必须要 false 同时不能与 isMainValue: true 同用
isFormModel:true, // filters中添加筛选的数据--取于formModel
required:true, // 前置添加必有,和isFormModel结合使用
}, },
{ {
key: 'productionLineCode', key: 'productionLineCode', // 查询列表中字段
value: 'productionLineCode', value: 'productionLineCode', // 指查询具体值
message: '请选择生产线信息!', action: '==', // 查询拼接条件
isMainValue: true isSearch: true, // 使用自定义拼接条件
} isMainValue: false, // 拼接条件必须要 false 同时不能与 isMainValue: true 同用
isFormModel:true, // filters中添加筛选的数据--取于formModel
required:false, // 前置添加必有,和isFormModel结合使用
},
], ],
verificationPage: WorkstationApi.getWorkstationByCodes, // 校验数去焦点输入是否正确的方法 verificationPage: WorkstationApi.getWorkstationByCodes, // 校验数去焦点输入是否正确的方法
isShowTableFormSearch: true, isShowTableFormSearch: true,
@ -159,10 +171,30 @@ export const ProductionreturnRequestDetail = useCrudSchemas(
] // 失去焦点校验参数 ] // 失去焦点校验参数
} }
}, },
{
label: '来源库位',
field: 'fromLocationCode',
sort: 'custom',
table: {
width: 150
},
isTableForm: true,
tableForm: {
disabled: true
},
form: {
componentProps: {
disabled: true
}
}
},
{ {
label: '目标库位', label: '目标库位',
field: 'toLocationCode', field: 'toLocationCode',
sort: 'custom', sort: 'custom',
table: {
width: 150
},
tableForm: { tableForm: {
multiple: true,//多选 multiple: true,//多选
isInpuFocusShow: true, // 开启查询弹窗 isInpuFocusShow: true, // 开启查询弹窗
@ -405,23 +437,6 @@ export const ProductionreturnRequestDetail = useCrudSchemas(
} }
} }
}, },
{
label: '来源库位',
field: 'fromLocationCode',
sort: 'custom',
table: {
width: 150
},
isTableForm: false,
tableForm: {
disabled: true
},
form: {
componentProps: {
disabled: true
}
}
},
{ {
label: '从货主', label: '从货主',
field: 'fromOwnerCode', field: 'fromOwnerCode',
@ -533,29 +548,30 @@ export const ProductionreturnRequestDetail = useCrudSchemas(
table: { table: {
width: 120 width: 120
}, },
isTable:false, isTable:true,
isTableForm:true, isTableForm:true,
tableForm: { tableForm: {
isInpuFocusShow: true, disabled: true
isSearchList: true, // 开启查询弹窗 // isInpuFocusShow: true,
searchListPlaceholder: '请选择包装规格', // 输入框占位文本 // isSearchList: true, // 开启查询弹窗
searchField: 'packUnit', // 查询弹窗赋值字段 // searchListPlaceholder: '请选择包装规格', // 输入框占位文本
searchTitle: '物料包装信息', // 查询弹窗标题 // searchField: 'packUnit', // 查询弹窗赋值字段
searchAllSchemas: Itempackaging.allSchemas, // 查询弹窗所需类 // searchTitle: '物料包装信息', // 查询弹窗标题
searchPage: ItempackagingApi.getItempackagingPage, // 查询弹窗所需分页方法 // searchAllSchemas: Itempackaging.allSchemas, // 查询弹窗所需类
searchCondition: [ // searchPage: ItempackagingApi.getItempackagingPage, // 查询弹窗所需分页方法
{ // searchCondition: [
key: 'available', // {
value: 'TRUE', // key: 'available',
isMainValue: false // value: 'TRUE',
}, // isMainValue: false
{ // },
key: 'itemCode', // {
value: 'itemCode', // key: 'itemCode',
message: '请先选择物料代码!', // value: 'itemCode',
isMainValue: true // message: '请先选择物料代码!',
} // isMainValue: true
] // }
// ]
}, },
form: { form: {
// labelMessage: '信息提示说明!!!', // labelMessage: '信息提示说明!!!',
@ -589,7 +605,7 @@ export const ProductionreturnRequestDetail = useCrudSchemas(
table: { table: {
width: 120 width: 120
}, },
isTable: false, isTable: true,
isTableForm: true, isTableForm: true,
tableForm: { tableForm: {
disabled: true disabled: true
@ -667,6 +683,14 @@ export const ProductionreturnRequestDetail = useCrudSchemas(
]) ])
) )
const validateQty = (rule: any, value: any, callback: any,a,b) => {
if (!value) {
callback(new Error('包装数量必须大于0'));
} else {
callback();
}
}
//表单校验 //表单校验
export const ProductionreturnRequestDetailRules = reactive({ export const ProductionreturnRequestDetailRules = reactive({
workStationCode: [ workStationCode: [
@ -681,6 +705,9 @@ export const ProductionreturnRequestDetailRules = reactive({
// packingNumber: [ // packingNumber: [
// { required: true, message: '请选择包装号', trigger: 'change' } // { required: true, message: '请选择包装号', trigger: 'change' }
// ], // ],
qty:[
{ validator:validateQty, message: '数量必须大于0', trigger: 'change'}
],
batch: [ batch: [
{ required: true, message: '请输入批次', trigger: 'blur' } { required: true, message: '请输入批次', trigger: 'blur' }
], ],
@ -693,11 +720,19 @@ export const ProductionreturnRequestDetailRules = reactive({
itemCode: [ itemCode: [
{ required: true, message: '请输入物料代码', trigger: 'blur' } { required: true, message: '请输入物料代码', trigger: 'blur' }
], ],
packUnit: [
{ required: true, message: '请输入包装规格', trigger: 'blur' }
],
packQty: [
{ required: true, message: '请输入标包数量', trigger: 'blur' }
],
remark: [ remark: [
{ max: 50, message: '不得超过50个字符', trigger: 'blur' } { max: 50, message: '不得超过50个字符', trigger: 'blur' }
], ],
}) })
/** /**
* @returns {Array} 退 * @returns {Array} 退
*/ */
@ -710,8 +745,25 @@ export const ProductionreturnRequestDetailNoLabel = useCrudSchemas(reactive<Crud
width: 150 width: 150
}, },
tableForm:{ tableForm:{
disabled: true multiple:true,
} disabled:true,
// isInpuFocusShow: true,
searchListPlaceholder: '请选择物料代码', // 输入框占位文本
searchField: 'itemCode', // 查询弹窗赋值字段
searchTitle: '生产线物料关系信息', // 查询弹窗标题
searchAllSchemas: Productionlineitem.allSchemas, // 查询弹窗所需类
searchPage: ProductionlineitemApi.getProductionlineitemPage, // 查询弹窗所需分页方法
searchCondition: [{
key:'itemCode',
value:'itemCode',
message: '请填写物料代码!',
isMainValue: true
},{
key: 'available',
value: 'TRUE',
isMainValue: false
}],
},
}, },
{ {
label: '供应商代码', label: '供应商代码',
@ -843,22 +895,6 @@ export const ProductionreturnRequestDetailNoLabel = useCrudSchemas(reactive<Crud
} }
} }
}, },
{
label: '来源生产线代码',
field: 'productionLineCode',
sort: 'custom',
table: {
width: 150
},
tableForm: {
disabled: true
},
form: {
componentProps: {
disabled: true
}
}
},
{ {
label: '来源工位代码', label: '来源工位代码',
field: 'workStationCode', field: 'workStationCode',

1
src/views/wms/issueManage/repleinsh/repleinshRequestMain/repleinshRequestMain.data.ts

@ -56,6 +56,7 @@ export const RepleinshRequestMain = useCrudSchemas(reactive<CrudSchema[]>([
dictClass: 'string', dictClass: 'string',
isForm:false, isForm:false,
isTable: true, isTable: true,
isSearch: true,
sort: 'custom', sort: 'custom',
sortTableDefault:1, sortTableDefault:1,
table: { table: {

24
src/views/wms/moveManage/inventorymove/inventorymoveRecordMainNew/inventorymoveRecordRequestMain.data.ts

@ -59,8 +59,13 @@ export const InventorymoveRequestMain = useCrudSchemas(reactive<CrudSchema[]>([
isMainValue: false isMainValue: false
},{ },{
key: 'isIn', key: 'isIn',
value: 'in', value: 'out',
isMainValue: false isMainValue: false
},
{
key:'available', // 查询列表中字段
value:'TRUE', // 指查询具体值
isMainValue: false // 表示查询条件不是主表的字段的值
}], }],
isRepeat:true, isRepeat:true,
verificationParams: [{ verificationParams: [{
@ -89,8 +94,13 @@ export const InventorymoveRequestMain = useCrudSchemas(reactive<CrudSchema[]>([
isMainValue: false isMainValue: false
},{ },{
key: 'isIn', key: 'isIn',
value: 'in', value: 'out',
isMainValue: false isMainValue: false
},
{
key:'available', // 查询列表中字段
value:'TRUE', // 指查询具体值
isMainValue: false // 表示查询条件不是主表的字段的值
}], }],
verificationParams: [{ verificationParams: [{
key: 'code', key: 'code',
@ -127,6 +137,11 @@ export const InventorymoveRequestMain = useCrudSchemas(reactive<CrudSchema[]>([
key: 'isIn', key: 'isIn',
value: 'in', value: 'in',
isMainValue: false isMainValue: false
},
{
key:'available', // 查询列表中字段
value:'TRUE', // 指查询具体值
isMainValue: false // 表示查询条件不是主表的字段的值
}], }],
isRepeat:true, isRepeat:true,
verificationParams: [{ verificationParams: [{
@ -157,6 +172,11 @@ export const InventorymoveRequestMain = useCrudSchemas(reactive<CrudSchema[]>([
key: 'isIn', key: 'isIn',
value: 'in', value: 'in',
isMainValue: false isMainValue: false
},
{
key:'available', // 查询列表中字段
value:'TRUE', // 指查询具体值
isMainValue: false // 表示查询条件不是主表的字段的值
}], }],
verificationParams: [{ verificationParams: [{
key: 'code', key: 'code',

1
src/views/wms/productionManage/productputaway/productputawayRecordMain/index.vue

@ -158,6 +158,7 @@ const handleExport = async () => {
// //
loadStart() loadStart()
const excelTitle = ref(route.meta.title) const excelTitle = ref(route.meta.title)
tableObject.params.type = 'predict'
const data = await ProductputawayRecordMainApi.exportProductputawayRecordMain(tableObject.params) const data = await ProductputawayRecordMainApi.exportProductputawayRecordMain(tableObject.params)
download.excel(data, `${excelTitle.value}】【${formatDate(new Date())}】.xlsx`) download.excel(data, `${excelTitle.value}】【${formatDate(new Date())}】.xlsx`)
} catch { } catch {

1
src/views/wms/productionManage/productputawayAssemble/productputawayAssembleRecordMain/index.vue

@ -158,6 +158,7 @@ const handleExport = async () => {
// //
loadStart() loadStart()
const excelTitle = ref(route.meta.title) const excelTitle = ref(route.meta.title)
tableObject.params.type = 'assemble'
const data = await ProductputawayRecordMainApi.exportProductputawayRecordMain(tableObject.params) const data = await ProductputawayRecordMainApi.exportProductputawayRecordMain(tableObject.params)
download.excel(data, `${excelTitle.value}】【${formatDate(new Date())}】.xlsx`) download.excel(data, `${excelTitle.value}】【${formatDate(new Date())}】.xlsx`)
} catch { } catch {

5
src/views/wms/productionManage/productreceipt/productreceiptRecordMain/index.vue

@ -28,6 +28,9 @@
v-model:currentPage="tableObject.currentPage" v-model:currentPage="tableObject.currentPage"
v-model:sort="tableObject.sort" v-model:sort="tableObject.sort"
> >
<template #recoveryRequestFlag="{row}">
<el-tag>{{ row.recoveryRequestFlag=='TRUE'?'是':'否' }}</el-tag>
</template>
<template #number="{row}"> <template #number="{row}">
<el-button type="primary" link @click="openDetail(row, '单据号', row.number)"> <el-button type="primary" link @click="openDetail(row, '单据号', row.number)">
<span>{{ row.number }}</span> <span>{{ row.number }}</span>
@ -200,7 +203,7 @@ const butttondata = (row,$index) => {
// defaultButtons.mainInspectRequestBtn({hasPermi:'wms:productreceipt-record-main:createInspectRequest',hide:row.inspectRequestFlag == "FALSE" }),// // defaultButtons.mainInspectRequestBtn({hasPermi:'wms:productreceipt-record-main:createInspectRequest',hide:row.inspectRequestFlag == "FALSE" }),//
defaultButtons.mainInspectRequestBtn({hide:row.inspectRequestFlag == "FALSE" }),// defaultButtons.mainInspectRequestBtn({hide:row.inspectRequestFlag == "FALSE" }),//
defaultButtons.mainListPointBtn(null), // defaultButtons.mainListPointBtn(null), //
defaultButtons.mainListRecoveryBtn({hide:row.recoveryRequestFlag == "TRUE" }), // //recoveryRequestFlag==TRUE // defaultButtons.mainListRecoveryBtn({hide:row.recoveryRequestFlag == "TRUE" }), // //recoveryRequestFlag==TRUE
] ]
} }

18
src/views/wms/productionManage/productreceipt/productreceiptRecordMain/productreceiptRecordMain.data.ts

@ -569,6 +569,24 @@ export const ProductreceiptRecordDetail = useCrudSchemas(reactive<CrudSchema[]>(
width: 150 width: 150
}, },
}, },
{
label: '是否已撤销',
field: 'recoveryRequestFlag',
sort: 'custom',
table: {
width: 150
},
detail:{
dictType:'primary',
valueFilter:(value)=>{
if(value=='TRUE'){
return ``
}else{
return '否'
}
}
}
},
{ {
label: '单据号', label: '单据号',
field: 'number', field: 'number',

71
src/views/wms/productionManage/productreceipt/productreceiptRequestMain/productreceiptRequestMain.data.ts

@ -42,7 +42,8 @@ const queryParams = {
} }
const data = await getRequestsettingApi.getRequestsettingPage(queryParams) const data = await getRequestsettingApi.getRequestsettingPage(queryParams)
const requestsettingData = data?.list[0] || {} const requestsettingData = data?.list[0] || {}
const shiftList = await ShiftApi.getShiftPage({available:'TRUE',pageSize: 500,pageNo: 1,sort:'',by: 'ASC'})
console.log('shiftList',shiftList)
// 获取当前操作人的部门 // 获取当前操作人的部门
import { useUserStore } from '@/store/modules/user' import { useUserStore } from '@/store/modules/user'
import { TableColumn } from '@/types/table' import { TableColumn } from '@/types/table'
@ -232,30 +233,48 @@ export const ProductreceiptRequestMain = useCrudSchemas(reactive<CrudSchema[]>([
}, },
sortTableDefault: 1001, sortTableDefault: 1001,
form: { form: {
// labelMessage: '信息提示说明!!!', component:'Select',
componentProps: { componentProps:{
enterSearch: true, options:shiftList.list,
isSearchList: true, optionsAlias: {
searchListPlaceholder: '请选择班次', labelField: 'code',
searchField: 'code', valueField: 'code'
searchTitle: '班次信息', },
searchAllSchemas: Shift.allSchemas, verificationParams: [{
searchPage: ShiftApi.getShiftPage, key: 'code',
searchCondition: [{ action: '==',
key: 'available', value: '',
value: 'TRUE', isMainValue: false,
isMainValue: false isSearch: true,
}], isFormModel: true,
verificationParams: [{ }], // 失去焦点校验参数
key: 'code',
action: '==',
value: '',
isMainValue: false,
isSearch: true,
isFormModel: true,
}], // 失去焦点校验参数
} }
} }
// form: {
// // labelMessage: '信息提示说明!!!',
// componentProps: {
// enterSearch: true,
// isSearchList: true,
// searchListPlaceholder: '请选择班次',
// searchField: 'code',
// searchTitle: '班次信息',
// searchAllSchemas: Shift.allSchemas,
// searchPage: ShiftApi.getShiftPage,
// searchCondition: [{
// key: 'available',
// value: 'TRUE',
// isMainValue: false
// }],
// verificationParams: [{
// key: 'code',
// action: '==',
// value: '',
// isMainValue: false,
// isSearch: true,
// isFormModel: true,
// }], // 失去焦点校验参数
// }
// }
}, },
{ {
label: '收货类型', label: '收货类型',
@ -575,9 +594,9 @@ export const ProductreceiptRequestMainRules = reactive({
// team: [ // team: [
// { required: true, message: '请选择班组代码', trigger: 'change' } // { required: true, message: '请选择班组代码', trigger: 'change' }
// ], // ],
// shift: [ shift: [
// { required: true, message: '请选择班次代码', trigger: 'change' } { required: true, message: '请选择班次代码', trigger: 'change' }
// ], ],
// departmentCode: [ // departmentCode: [
// { required: true, message: '请输入部门', trigger: 'blur' } // { required: true, message: '请输入部门', trigger: 'blur' }
// ], // ],

5
src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRecordMain/index.vue

@ -28,6 +28,9 @@
v-model:currentPage="tableObject.currentPage" v-model:currentPage="tableObject.currentPage"
v-model:sort="tableObject.sort" v-model:sort="tableObject.sort"
> >
<template #recoveryRequestFlag="{row}">
<el-tag>{{ row.recoveryRequestFlag=='TRUE'?'是':'否' }}</el-tag>
</template>
<template #number="{row}"> <template #number="{row}">
<el-button type="primary" link @click="openDetail(row, '单据号', row.number)"> <el-button type="primary" link @click="openDetail(row, '单据号', row.number)">
<span>{{ row.number }}</span> <span>{{ row.number }}</span>
@ -237,7 +240,7 @@ const butttondata = (row,$index) => {
defaultButtons.mainInspectRequestBtn({hasPermi:'wms:purchasereceipt-record-main:createInspectRequest',hide:row.inspectRequestFlag == "FALSE" }),// defaultButtons.mainInspectRequestBtn({hasPermi:'wms:purchasereceipt-record-main:createInspectRequest',hide:row.inspectRequestFlag == "FALSE" }),//
defaultButtons.mainPutawayRequestCpBtn({hasPermi:'wms:purchasereceipt-record-main:createPutawayRequest',hide:row.putawayRequestFlag == "FALSE" }),// defaultButtons.mainPutawayRequestCpBtn({hasPermi:'wms:purchasereceipt-record-main:createPutawayRequest',hide:row.putawayRequestFlag == "FALSE" }),//
defaultButtons.mainListPointBtn(null), // defaultButtons.mainListPointBtn(null), //
defaultButtons.mainListRecoveryBtn({hide:row.recoveryRequestFlag == "TRUE" }), // //recoveryRequestFlag==TRUE // defaultButtons.mainListRecoveryBtn({hide:row.recoveryRequestFlag == "TRUE" }), // //recoveryRequestFlag==TRUE
] ]
} }

19
src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRecordMain/productreceiptAssembleRecordMain.data.ts

@ -42,6 +42,25 @@ export const ProductreceiptRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
}, },
isSearch: false isSearch: false
}, },
{
label: '是否已撤销',
field: 'recoveryRequestFlag',
sort: 'custom',
table: {
width: 150
},
detail:{
dictType:'primary',
valueFilter:(value)=>{
if(value=='TRUE'){
return ``
}else{
return '否'
}
}
}
},
{ {
label: '生产计划单号', label: '生产计划单号',
field: 'productionPlanNumber', field: 'productionPlanNumber',

76
src/views/wms/productionManage/productreceiptAssemble/productreceiptAssembleRequestMain/productreceiptAssembleRequestMain.data.ts

@ -43,6 +43,8 @@ const queryParams = {
const data = await getRequestsettingApi.getRequestsettingPage(queryParams) const data = await getRequestsettingApi.getRequestsettingPage(queryParams)
const requestsettingData =data?.list[0]||{} const requestsettingData =data?.list[0]||{}
const shiftList = await ShiftApi.getShiftPage({available:'TRUE',pageSize: 500,pageNo: 1,sort:'',by: 'ASC'})
console.log('shiftList',shiftList)
// 获取当前操作人的部门 // 获取当前操作人的部门
import { useUserStore } from '@/store/modules/user' import { useUserStore } from '@/store/modules/user'
import { TableColumn } from '@/types/table' import { TableColumn } from '@/types/table'
@ -240,30 +242,48 @@ export const ProductreceiptRequestMain = useCrudSchemas(reactive<CrudSchema[]>([
}, },
sortTableDefault: 1001, sortTableDefault: 1001,
form: { form: {
// labelMessage: '信息提示说明!!!', component:'Select',
componentProps: { componentProps:{
enterSearch: true, options:shiftList.list,
isSearchList: true, optionsAlias: {
searchListPlaceholder: '请选择班次', labelField: 'code',
searchField: 'code', valueField: 'code'
searchTitle: '班次信息', },
searchAllSchemas: Shift.allSchemas, verificationParams: [{
searchPage: ShiftApi.getShiftPage, key: 'code',
searchCondition: [{ action: '==',
key: 'available', value: '',
value: 'TRUE', isMainValue: false,
isMainValue: false isSearch: true,
}], isFormModel: true,
verificationParams: [{ }], // 失去焦点校验参数
key: 'code',
action: '==',
value: '',
isMainValue: false,
isSearch: true,
isFormModel: true,
}], // 失去焦点校验参数
} }
} }
// form: {
// // labelMessage: '信息提示说明!!!',
// componentProps: {
// enterSearch: true,
// isSearchList: true,
// searchListPlaceholder: '请选择班次',
// searchField: 'code',
// searchTitle: '班次信息',
// searchAllSchemas: Shift.allSchemas,
// searchPage: ShiftApi.getShiftPage,
// searchCondition: [{
// key: 'available',
// value: 'TRUE',
// isMainValue: false
// }],
// verificationParams: [{
// key: 'code',
// action: '==',
// value: '',
// isMainValue: false,
// isSearch: true,
// isFormModel: true,
// }], // 失去焦点校验参数
// }
// }
}, },
{ {
label: '收货类型', label: '收货类型',
@ -585,9 +605,9 @@ export const ProductreceiptRequestMainRules = reactive({
// team: [ // team: [
// { required: true, message: '请选择班组代码', trigger: 'change' } // { required: true, message: '请选择班组代码', trigger: 'change' }
// ], // ],
// shift: [ shift: [
// { required: true, message: '请选择班次代码', trigger: 'change' } { required: true, message: '请选择班次代码', trigger: 'change' }
// ], ],
// departmentCode: [ // departmentCode: [
// { required: true, message: '请输入部门', trigger: 'blur' } // { required: true, message: '请输入部门', trigger: 'blur' }
// ], // ],
@ -1096,13 +1116,15 @@ export const ProductreceiptRequestDetail = useCrudSchemas(reactive<CrudSchema[]>
component: 'InputNumber', component: 'InputNumber',
componentProps: { componentProps: {
min: 0, min: 0,
precision: 6 max:9999,
// precision: 6
}, },
}, },
tableForm: { tableForm: {
type: 'InputNumber', type: 'InputNumber',
min: 0, min: 0,
precision: 6 max:9999,
// precision: 6
} }
}, },
{ {

8
src/views/wms/productionManage/productredress/productredressJobMain/productredressJobMain.data.ts

@ -521,6 +521,14 @@ export const ProductredressJobDetail = useCrudSchemas(reactive<CrudSchema[]>([
width: 150 width: 150
}, },
}, },
{
label: '工位代码',
field: 'workStationCode',
sort: 'custom',
table: {
width: 150
},
},
{ {
label: '包装号', label: '包装号',
field: 'packingNumber', field: 'packingNumber',

8
src/views/wms/productionManage/productredress/productredressRecordMain/productredressRecordMain.data.ts

@ -406,6 +406,14 @@ export const ProductredressRecordDetail = useCrudSchemas(reactive<CrudSchema[]>(
width: 150 width: 150
}, },
}, },
{
label: '工位代码',
field: 'workStationCode',
sort: 'custom',
table: {
width: 150
},
},
{ {
label: '包装号', label: '包装号',
field: 'packingNumber', field: 'packingNumber',

80
src/views/wms/productionManage/productredress/productredressRequestMain/productredressRequestMain.data.ts

@ -7,6 +7,10 @@ import * as WorkshopApi from '@/api/wms/workshop'
import * as BalanceApi from '@/api/wms/balance' import * as BalanceApi from '@/api/wms/balance'
import { Balance } from '@/views/wms/inventoryManage/balance/balance.data' import { Balance } from '@/views/wms/inventoryManage/balance/balance.data'
import * as getBusinessTypeApi from '@/api/wms/businesstype/index' import * as getBusinessTypeApi from '@/api/wms/businesstype/index'
import * as WorkstationApi from '@/api/wms/workstation'
import { Workstation } from '@/views/wms/basicDataManage/factoryModeling/workstation/workstation.data'
const businessTypeQueryParams = { const businessTypeQueryParams = {
pageSize:10, pageSize:10,
pageNo:1, pageNo:1,
@ -418,6 +422,9 @@ export const ProductredressRequestMain = useCrudSchemas(reactive<CrudSchema[]>([
// 表单校验 // 表单校验
export const ProductredressRequestDetailRules = reactive({ export const ProductredressRequestDetailRules = reactive({
workStationCode: [
{ required: true, message: '请选择工位代码', trigger: 'change' }
],
}) })
export const ProductredressRequestDetail = useCrudSchemas(reactive<CrudSchema[]>([ export const ProductredressRequestDetail = useCrudSchemas(reactive<CrudSchema[]>([
@ -495,7 +502,7 @@ export const ProductredressRequestDetail = useCrudSchemas(reactive<CrudSchema[]>
isMainValue: false, // 拼接条件必须要 false 同时不能与 isMainValue: true 同用 isMainValue: false, // 拼接条件必须要 false 同时不能与 isMainValue: true 同用
isFormModel:true, // filters中添加筛选的数据--取于formModel isFormModel:true, // filters中添加筛选的数据--取于formModel
required:true, // 前置添加必有,和isFormModel结合使用 required:true, // 前置添加必有,和isFormModel结合使用
message: '请选择客户代码!', // 前置添加没填的提示语 message: '请选择生产线代码!', // 前置添加没填的提示语
} }
] ]
@ -566,6 +573,77 @@ export const ProductredressRequestDetail = useCrudSchemas(reactive<CrudSchema[]>
} }
} }
}, },
{
label: '工位代码',
field: 'workStationCode',
sort: 'custom',
table: {
width: 150
},
isTable: true,
tableForm: {
isInpuFocusShow: true,
searchListPlaceholder: '请选择工位代码', // 输入框占位文本
searchField: 'code', // 查询弹窗赋值字段
searchTitle: '工位信息', // 查询弹窗标题
searchAllSchemas: Workstation.allSchemas, // 查询弹窗所需类
searchPage: WorkstationApi.getWorkstationPage, // 查询弹窗所需分页方法
searchCondition: [
{
key: 'productionLineCode',
value: 'productionLineCode',
message: '请填写生产线代码!',
isMainValue: true
},
{
key: 'available',
value: 'TRUE',
isMainValue: false
}
],
verificationParams: [{
key: 'code',
action: '==',
value: '',
isMainValue: false,
isSearch: true,
isFormModel: true,
}], // 失去焦点校验参数
},
form: {
// labelMessage: '信息提示说明!!!',
componentProps: {
enterSearch: true,
isSearchList: true, // 开启查询弹窗
searchListPlaceholder: '请选择工位代码', // 输入框占位文本
searchField: 'code', // 查询弹窗赋值字段
searchTitle: '工位信息', // 查询弹窗标题
searchAllSchemas: Workstation.allSchemas, // 查询弹窗所需类
searchPage: WorkstationApi.getWorkstationPage, // 查询弹窗所需分页方法
searchCondition: [
{
key: 'productionLineCode',
value: 'productionLineCode',
message: '请填写生产线代码!',
isMainValue: true
},
{
key: 'available',
value: 'TRUE',
isMainValue: false
}
],
verificationParams: [{
key: 'code',
action: '==',
value: '',
isMainValue: false,
isSearch: true,
isFormModel: true,
}], // 失去焦点校验参数
}
}
},
{ {
label: '包装号', label: '包装号',
field: 'packingNumber', field: 'packingNumber',

20
src/views/wms/productionManage/productscrap/productscrapRecordMain/index.vue

@ -238,17 +238,33 @@ const buttonBaseClick = (val, item) => {
} }
} }
const isShowRevokeButton = (row,val) => {
if (val.indexOf(row.revokeFlag) > -1) {
return false
} else {
return true
}
}
// - // -
const butttondata = (row,$index) => { const butttondata = (row,$index) => {
const findIndex = row['masterId']?tableObject.tableList.findIndex(item=>item['masterId'] == row['masterId']):-1 const findIndex = row['masterId']?tableObject.tableList.findIndex(item=>item['masterId'] == row['masterId']):-1
if(findIndex>-1&&findIndex<$index){ if(findIndex>-1&&findIndex<$index){
return [] return [
defaultButtons.backoutBtn({hide:isShowRevokeButton(row,['FALSE'])}) //
]
} }
return [] return [
defaultButtons.backoutBtn({hide:isShowRevokeButton(row,['FALSE'])}) //
]
} }
// - // -
const buttonTableClick = async (val, row) => { const buttonTableClick = async (val, row) => {
if (val == 'backout') { //
await ProductscrapRecordMainApi.revoke(row.requestNumber, row.number)
buttonBaseClick('refresh',null)
}
} }
// //
const { wsCache } = useCache() const { wsCache } = useCache()

10
src/views/wms/productionManage/productscrap/productscrapRecordMain/productscrapRecordMain.data.ts

@ -409,6 +409,16 @@ export const ProductscrapRecordMain = useCrudSchemas(
activeValue: 'TRUE' activeValue: 'TRUE'
} }
} }
},
{
label: '操作',
field: 'action',
isDetail: false,
isForm: false,
table: {
width: 120,
fixed: 'right'
},
} }
]) ])
) )

4
src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRecordMain/index.vue

@ -183,14 +183,14 @@ const isShowSourceTypeButton = (row) => {
const butttondata = (row,$index) => { const butttondata = (row,$index) => {
const findIndex = row['masterId']?tableObject.tableList.findIndex(item=>item['masterId'] == row['masterId']):-1 const findIndex = row['masterId']?tableObject.tableList.findIndex(item=>item['masterId'] == row['masterId']):-1
if(findIndex>-1&&findIndex<$index){ if(findIndex>-1&&findIndex<$index){
return [defaultButtons.mainListPrintInspectionBtn(null)] return [defaultButtons.mainListPrintInspectionBtn({hide:routeName.value.includes('SCP')})]
} }
return [ return [
defaultButtons.mainInspectRequestBtn({hasPermi:'wms:purchasereceipt-record-main:createInspectRequest',hide:row.inspectRequestFlag == "FALSE" }),// defaultButtons.mainInspectRequestBtn({hasPermi:'wms:purchasereceipt-record-main:createInspectRequest',hide:row.inspectRequestFlag == "FALSE" }),//
defaultButtons.mainPutawayRequestBtn({hasPermi:'wms:purchasereceipt-record-main:createPutawayRequest',hide:row.putawayRequestFlag == "FALSE" }),// defaultButtons.mainPutawayRequestBtn({hasPermi:'wms:purchasereceipt-record-main:createPutawayRequest',hide:row.putawayRequestFlag == "FALSE" }),//
//defaultButtons.mainListPlanCheckQualityReportBtn({hide:row.orderTypeM == "2"}), // //defaultButtons.mainListPlanCheckQualityReportBtn({hide:row.orderTypeM == "2"}), //
defaultButtons.mainListPlanCheckQualityReportBtn({hide:isShowSourceTypeButton(row)}), // defaultButtons.mainListPlanCheckQualityReportBtn({hide:isShowSourceTypeButton(row)}), //
defaultButtons.mainListPrintInspectionBtn(null), defaultButtons.mainListPrintInspectionBtn({hide:routeName.value.includes('SCP')})
] ]
} }

2
src/views/wms/purchasereceiptManage/purchasereceipt/purchasereceiptRequestOrderMTypeMain/index.vue

@ -701,7 +701,7 @@ const handleExport = async () => {
// //
loadStart() loadStart()
const excelTitle = ref(route.meta.title) const excelTitle = ref(route.meta.title)
const data = await PurchasereceiptRequestMainApi.exportPurchasereceiptRequestMain(tableObject.params) const data = await PurchasereceiptRequestMainApi.exportPurchasereceiptRequestMainOrderTypeM(tableObject.params)
download.excel(data, `${excelTitle.value}】【${formatDate(new Date())}】.xlsx`) download.excel(data, `${excelTitle.value}】【${formatDate(new Date())}】.xlsx`)
} catch { } catch {
} finally { } finally {

6
src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRecordMain/index.vue

@ -143,15 +143,15 @@ const butttondata = (row,$index) => {
const buttonTableClick = async (val, row) => { const buttonTableClick = async (val, row) => {
if (val == 'documentPrint') { if (val == 'documentPrint') {
// //
handleDocumentPrint(row.id) handleDocumentPrint(row.requestNumber,row.itemCode)
} }
} }
// //
const BASE_URL = getJmreportBaseUrl() const BASE_URL = getJmreportBaseUrl()
const documentSrc = ref(BASE_URL + '/jmreport/view/920874172025987072?token=' + getAccessToken()) const documentSrc = ref(BASE_URL + '/jmreport/view/920874172025987072?token=' + getAccessToken())
const handleDocumentPrint = async (id) => { const handleDocumentPrint = async (requestNumber,itemCode) => {
window.open(documentSrc.value + '&id=' + id) window.open(documentSrc.value + '&requestNumber=' + requestNumber +'&itemCode=' + itemCode)
} }
// //
const { wsCache } = useCache() const { wsCache } = useCache()

2
src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRecordMain/purchasereturnRecordMain.data.ts

@ -562,7 +562,7 @@ export const PurchasereturnRecordDetail = useCrudSchemas(reactive<CrudSchema[]>(
} }
}, },
sortTableDefault: 1004, sortTableDefault: 1004,
hiddenInMain:true, hiddenInMain:false,
isForm:false, isForm:false,
tableForm:{ tableForm:{
type:'InputNumber', type:'InputNumber',

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

@ -562,7 +562,10 @@ const butttondata = (row, $index) => {
defaultButtons.mainListEditBtn({ defaultButtons.mainListEditBtn({
hide: isShowMainButton(row, ['1']), hide: isShowMainButton(row, ['1']),
hasPermi: 'wms:purchasereturn-request-main:update' hasPermi: 'wms:purchasereturn-request-main:update'
}) // }), //
defaultButtons.mainListDocumentPrintBtn({
hide: isShowMainButton(row, ['8'])
})//
// { // {
// label: '', // label: '',
// name: 'ssbq', // name: 'ssbq',
@ -608,12 +611,23 @@ const buttonTableClick = async (val, row) => {
genLabelId.value = row.masterId genLabelId.value = row.masterId
await getDetailList() await getDetailList()
formLabelRef.value.open('create', row, null, 'createLabel') // createLabel formLabelRef.value.open('create', row, null, 'createLabel') // createLabel
} else if (val == 'point') { }
else if (val == 'documentPrint') {
//
handleDocumentPrint(row.number,row.itemCode)
}else if (val == 'point') {
// //
labelPrint(row) labelPrint(row)
} }
} }
//
const BASE_URL2 = getJmreportBaseUrl()
const documentSrc = ref(BASE_URL2 + '/jmreport/view/920874172025987072?token=' + getAccessToken())
const handleDocumentPrint = async (number,itemCode) => {
window.open(documentSrc.value + '&requestNumber=' + number +'&itemCode=' + itemCode)
}
/** 添加/修改操作 */ /** 添加/修改操作 */
const formRef = ref() const formRef = ref()
const openForm = async (type: string, row?: number) => { const openForm = async (type: string, row?: number) => {

18
src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMainNew/index.vue

@ -465,7 +465,10 @@ const butttondata = (row, $index) => {
defaultButtons.mainListEditBtn({ defaultButtons.mainListEditBtn({
hide: isShowMainButton(row, ['1']), hide: isShowMainButton(row, ['1']),
hasPermi: 'wms:purchasereturn-request-main:update' hasPermi: 'wms:purchasereturn-request-main:update'
}) // }),//
defaultButtons.mainListDocumentPrintBtn({
hide: isShowMainButton(row, ['8'])
})//
// { // {
// label: '', // label: '',
// name: 'ssbq', // name: 'ssbq',
@ -511,12 +514,23 @@ const buttonTableClick = async (val, row) => {
genLabelId.value = row.masterId genLabelId.value = row.masterId
await getDetailList() await getDetailList()
formLabelRef.value.open('create', row, null, 'createLabel') // createLabel formLabelRef.value.open('create', row, null, 'createLabel') // createLabel
} else if (val == 'point') { }
else if (val == 'documentPrint') {
//
handleDocumentPrint(row.number,row.itemCode)
}else if (val == 'point') {
// //
labelPrint(row) labelPrint(row)
} }
} }
//
const BASE_URL2 = getJmreportBaseUrl()
const documentSrc = ref(BASE_URL2 + '/jmreport/view/920874172025987072?token=' + getAccessToken())
const handleDocumentPrint = async (number,itemCode) => {
window.open(documentSrc.value + '&requestNumber=' + number +'&itemCode=' + itemCode)
}
/** 添加/修改操作 */ /** 添加/修改操作 */
const formRef = ref() const formRef = ref()
const openForm = async (type: string, row?: Object) => { const openForm = async (type: string, row?: Object) => {

2
src/views/wms/purchasereceiptManage/purchasereturn/purchasereturnRequestMainNew/purchasereturnRequestMainNew.data.ts

@ -22,7 +22,7 @@ import { Q2 } from '@/views/qms/inspectionQ2/inspectionQ2.data'
import * as ItembasicApi from '@/api/wms/itembasic' import * as ItembasicApi from '@/api/wms/itembasic'
import { Itembasic } from '@/views/wms/basicDataManage/itemManage/itembasic/itembasic.data' import { Itembasic } from '@/views/wms/basicDataManage/itemManage/itembasic/itembasic.data'
let locationList = await LocationApi.selectBusinessTypeOutLocation({ let locationList = await LocationApi.selectBusinessTypeOutLocationAll({
businessType:'PurchaseReturn', businessType:'PurchaseReturn',
isIn:'out' isIn:'out'
}) })

2
src/views/wms/purchasereceiptManage/supplierdeliver/purchaseMainWms/index.vue

@ -231,7 +231,7 @@ console.log('PurchaseMain.allSchemas.searchSchema',PurchaseMain.allSchemas.searc
const HeadButttondata = [ const HeadButttondata = [
// defaultButtons.defaultAddBtn({ hasPermi: 'wms:purchase-main:create' }), // // defaultButtons.defaultAddBtn({ hasPermi: 'wms:purchase-main:create' }), //
// defaultButtons.defaultImportBtn({ hasPermi: 'wms:purchase-main:import' }), // // defaultButtons.defaultImportBtn({ hasPermi: 'wms:purchase-main:import' }), //
defaultButtons.defaultExportBtn({ hasPermi: 'wms:purchase-main-wms:export' }), // defaultButtons.defaultExportBtn({ hasPermi: 'wms:purchase-main:export' }), //
// defaultButtons.mainListSelectionOrderPubBtn(null), // // defaultButtons.mainListSelectionOrderPubBtn(null), //
defaultButtons.defaultFreshBtn(null), // defaultButtons.defaultFreshBtn(null), //
defaultButtons.defaultFilterBtn(null), // defaultButtons.defaultFilterBtn(null), //

3
src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRecordMain/index.vue

@ -56,6 +56,7 @@
:annexTable="[{ :annexTable="[{
label: '质检明细', label: '质检明细',
prop: 'uploadFile', prop: 'uploadFile',
hasPermi:'wms:supplierdeliver-request-main:uploadCheck',
tableName:'SupplierdeliverInspectionDetail', tableName:'SupplierdeliverInspectionDetail',
hasSubDetail:true, // hasSubDetail:true, //
showPreview:true, // showPreview:true, //
@ -240,7 +241,7 @@ const openDetail = async (row: any, titleName: any, titleValue: any) => {
getListApi: SupplierdeliverRequestDetailApi.getSupplierdeliverRequestDetailPage // getListApi: SupplierdeliverRequestDetailApi.getSupplierdeliverRequestDetailPage //
}) })
const { getList:requestGetList } = requestTableMethods const { getList:requestGetList } = requestTableMethods
requestTableObject.params.requestNumber = row.requestNumber requestTableObject.params.number = row.requestNumber
await requestGetList() await requestGetList()
if(requestTableObject.tableList.length>0){ if(requestTableObject.tableList.length>0){
row.annexMasterId = requestTableObject.tableList[0].masterId row.annexMasterId = requestTableObject.tableList[0].masterId

2
src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue

@ -106,6 +106,8 @@
tableName: 'SupplierdeliverInspectionDetail', tableName: 'SupplierdeliverInspectionDetail',
hasSubDetail: true, // hasSubDetail: true, //
showPreview: true, // showPreview: true, //
hiddenUpload:false,
hiddenDelete:false,
fileType: ['pdf', 'jpg', 'png', 'jpeg'], fileType: ['pdf', 'jpg', 'png', 'jpeg'],
align: 'left', align: 'left',
// //

30
src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverBasicForm.vue

@ -208,7 +208,8 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row) =>
newRow['planQty'] = item['planQty'] newRow['planQty'] = item['planQty']
newRow['shippedQty'] = item['shippedQty'] newRow['shippedQty'] = item['shippedQty']
newRow['qty'] = item['planQty'] - item['shippedQty'] newRow['qty'] = item['planQty'] - item['shippedQty']
newRow['produceDate'] = dayjs().valueOf() // newRow['minProduceDate'] = item['minProduceDate'] //
newRow['produceDate'] = dayjs().valueOf() //
let produceDateStr = formatDate(newRow['produceDate'],'YYYYMMDD'); let produceDateStr = formatDate(newRow['produceDate'],'YYYYMMDD');
newRow['batch'] = produceDateStr newRow['batch'] = produceDateStr
newRow['supplierBatch'] = produceDateStr newRow['supplierBatch'] = produceDateStr
@ -289,6 +290,7 @@ const getSearchTableData = async (number,formField,searchField,isAll)=>{
newRow['planQty'] = row['planQty'] newRow['planQty'] = row['planQty']
newRow['shippedQty'] = row['shippedQty'] newRow['shippedQty'] = row['shippedQty']
newRow['qty'] = row['planQty'] - row['shippedQty'] newRow['qty'] = row['planQty'] - row['shippedQty']
newRow['minProduceDate'] = row['minProduceDate'] //
newRow['produceDate'] = dayjs().valueOf() // newRow['produceDate'] = dayjs().valueOf() //
let produceDateStr = formatDate(newRow['produceDate'],'YYYYMMDD'); let produceDateStr = formatDate(newRow['produceDate'],'YYYYMMDD');
newRow['batch'] = produceDateStr newRow['batch'] = produceDateStr
@ -319,6 +321,21 @@ const submitForm = async (formType, submitData) => {
if(data.masterId){ if(data.masterId){
data.id = data.masterId data.id = data.masterId
} }
let flag = true
let currentTime = dayjs().valueOf()
tableData.value.forEach(item=>{
if(item['minProduceDate']&&item['produceDate']<item['minProduceDate']){
flag = false
message.error(`${item['itemCode']}${t('ts.生产日期不能小于')}${formatDate(item['minProduceDate'],'YYYY-MM-DD')}`)
}
if(item['produceDate']>currentTime){
flag = false
message.error(`${item['itemCode']}${t('ts.生产日期不能大于当前系统日期')}`)
}
})
if(!flag){
return
}
data.subList = tableData.value // data.subList = tableData.value //
let isHave = data.subList.some((item) => { let isHave = data.subList.some((item) => {
console.log("CCCCC",item.expireDate) console.log("CCCCC",item.expireDate)
@ -415,6 +432,17 @@ const inputNumberChange = (field, val,row, index) => {
const formFormDateChange = (field, val,row, index) => { const formFormDateChange = (field, val,row, index) => {
console.log('formFormDateChange',field, val,row, index) console.log('formFormDateChange',field, val,row, index)
if(field == 'produceDate'){ if(field == 'produceDate'){
if(row['minProduceDate']&&val<row['minProduceDate']){
message.error(`${row['itemCode']}${t('ts.生产日期不能小于')}${formatDate(row['minProduceDate'],'YYYY-MM-DD')}`)
// row['produceDate'] = row['minProduceDate']
}
let currentTime = dayjs().valueOf()
if(val>currentTime){
val = currentTime
message.error(`${row['itemCode']}${t('ts.生产日期不能大于当前系统日期')}`)
// row['produceDate'] = currentTime
}
let produceDateStr = formatDate(val,'YYYYMMDD'); let produceDateStr = formatDate(val,'YYYYMMDD');
row.batch = produceDateStr row.batch = produceDateStr
row.supplierBatch = produceDateStr row.supplierBatch = produceDateStr

4
src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts

@ -1036,7 +1036,7 @@ export const SupplierdeliverRequestDetail = useCrudSchemas(reactive<CrudSchema[]
searchField: 'number', searchField: 'number',
searchTitle: '要货计划信息', searchTitle: '要货计划信息',
searchAllSchemas: PurchasePlanDetail.allSchemas, searchAllSchemas: PurchasePlanDetail.allSchemas,
searchPage: PurchasePlanDetailApi.getPurchasePlanDetailPage, searchPage: PurchasePlanDetailApi.getPurchasePlanDetailPageClcik,
searchCondition: [ searchCondition: [
{ {
key: 'number', key: 'number',
@ -1070,7 +1070,7 @@ export const SupplierdeliverRequestDetail = useCrudSchemas(reactive<CrudSchema[]
searchField: 'number', searchField: 'number',
searchTitle: '要货计划信息', searchTitle: '要货计划信息',
searchAllSchemas: PurchasePlanDetail.allSchemas, searchAllSchemas: PurchasePlanDetail.allSchemas,
searchPage: PurchasePlanDetailApi.getPurchasePlanDetailPage, searchPage: PurchasePlanDetailApi.getPurchasePlanDetailPageClcik,
searchCondition: [ searchCondition: [
{ {
key: 'number', key: 'number',

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

@ -44,17 +44,20 @@
</Table> </Table>
</ContentWrap> </ContentWrap>
<!-- 表单弹窗添加/修改 --> <!-- 表单弹窗发票回转 -->
<!--
:apiUpdate="BasicEamProductionlineApi.updateBasicEamProductionline"
:apiCreate="BasicEamProductionlineApi.createBasicEamProductionline"
@searchTableSuccess="searchTableSuccess" -->
<BasicForm <BasicForm
ref="formRef" ref="basicFormRef"
@success="getList" @success="submitForm"
:rules="SupplierinvoiceRecordMainRules" :rules="SupplierinvoiceRecordMainTransferRules"
:formAllSchemas="SupplierinvoiceRecordMain.allSchemas" :formAllSchemas="SupplierinvoiceRecordMainTransfer.allSchemas"
:tableAllSchemas="SupplierinvoiceRecordDetail.allSchemas" :isBusiness="false"
:tableFormRules="SupplierinvoiceRecordDetailRules"
:isBusiness="true"
/> />
<!-- 详情 --> <!-- 详情 -->
<Detail <Detail
ref="detailRef" ref="detailRef"
@ -143,7 +146,7 @@
<script setup lang="ts"> <script setup lang="ts">
import download from '@/utils/download' import download from '@/utils/download'
import { SupplierinvoiceRecordMain,SupplierinvoiceRecordMainRules,SupplierinvoiceRecordDetail,SupplierinvoiceRecordDetailRules,SupplierinvoiceRecordDetailMain } from './supplierinvoiceRecordMain.data' import { SupplierinvoiceRecordMain,SupplierinvoiceRecordMainRules,SupplierinvoiceRecordDetail,SupplierinvoiceRecordDetailRules,SupplierinvoiceRecordDetailMain,SupplierinvoiceRecordMainTransfer,SupplierinvoiceRecordMainTransferRules } from './supplierinvoiceRecordMain.data'
import * as SupplierinvoiceRecordMainApi from '@/api/wms/supplierinvoiceRecordMain' import * as SupplierinvoiceRecordMainApi from '@/api/wms/supplierinvoiceRecordMain'
import * as SupplierinvoiceRecordDetailApi from '@/api/wms/supplierinvoiceRecordDeatil' import * as SupplierinvoiceRecordDetailApi from '@/api/wms/supplierinvoiceRecordDeatil'
import * as defaultButtons from '@/utils/disposition/defaultButtons' import * as defaultButtons from '@/utils/disposition/defaultButtons'
@ -154,6 +157,8 @@ import {getAccessToken} from "@/utils/auth";
import {getJmreportBaseUrl} from "@/utils/systemParam"; import {getJmreportBaseUrl} from "@/utils/systemParam";
import { formatDate } from '@/utils/formatTime' import { formatDate } from '@/utils/formatTime'
import { usePageLoading } from '@/hooks/web/usePageLoading' import { usePageLoading } from '@/hooks/web/usePageLoading'
import dayjs from 'dayjs'
const { loadStart, loadDone } = usePageLoading() const { loadStart, loadDone } = usePageLoading()
// //
defineOptions({ name: 'SupplierinvoiceRecordMain' }) defineOptions({ name: 'SupplierinvoiceRecordMain' })
@ -234,7 +239,7 @@ const handleSelectionPoint = async ()=>{
// - // -
const butttondata = (row,$index) => { const butttondata = (row,$index) => {
return [ return [
{ {
label: t('ts.查看明细'), label: t('ts.查看明细'),
name: 'open_detail', name: 'open_detail',
type: 'primary', type: 'primary',
@ -242,16 +247,54 @@ const butttondata = (row,$index) => {
color: '', color: '',
hasPermi: '', hasPermi: '',
link: true, // link: true, //
},
{
label: t('ts.发票回转'),
name: 'transfer',
type: 'primary',
icon: '',
color: '',
hasPermi: 'wms:supplierinvoice-record-main:reverse',
hide:!(row['status']==5&&!!row['voucherNumber']),
link: true, //
} }
] ]
} }
/** 添加/修改操作 */
const basicFormRef = ref()
// - // -
const buttonTableClick = async (val, row) => { const buttonTableClick = async (val, row) => {
if (val == 'open_detail') { // if (val == 'open_detail') { //
openDetail(row, '单据号', row.number) openDetail(row, '单据号', row.number)
}else if(val == 'transfer'){
//
basicFormRef.value.open('create', row)
nextTick(()=>{
basicFormRef.value.formRef.setValues({
reversepostingdate:dayjs().valueOf(),
tcCInvoiceRemark:`回转${row['supplierName']}发票 ${row['goldenTaxInvoiceNumber']}`
})
})
} }
} }
//
const submitForm = async (formType, data) => {
data.reverseInvoiceJournal = 'APINVCOR'
data.adjustmentJournal = 'APADJ'
console.log('发票回转',formType, data)
loadStart()
try{
await SupplierinvoiceRecordMainApi.reverseSupplierinvoiceRecordMain(data)
message.success(t('ts.发票回转成功'))
basicFormRef.value.dialogVisible = false
buttonBaseClick('refresh', null)
} finally {
loadDone()
}
}
// //
const { wsCache } = useCache() const { wsCache } = useCache()
/** 详情操作 */ /** 详情操作 */

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

@ -45,7 +45,8 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
width: 180, width: 180,
}, },
sortTableDefault:2, sortTableDefault:2,
isForm: false isForm: false,
isSearch:true
}, },
{ {
label: '税率', label: '税率',
@ -119,7 +120,7 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
isSearch: true isSearch: true
}, },
{ {
label: '未税差', label: '未税差',
field: 'beforeTaxDiffAmount', field: 'beforeTaxDiffAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -130,7 +131,7 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
isTableForm:false isTableForm:false
}, },
{ {
label: '税额差', label: '税额差',
field: 'taxAmountDiff', field: 'taxAmountDiff',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -141,7 +142,7 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
isTableForm:false isTableForm:false
}, },
{ {
label: '价税合计差', label: '价税合计差',
field: 'totalTaxDiffAmount', field: 'totalTaxDiffAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -153,7 +154,7 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
}, },
{ {
label: '系统税额', label: '供应商维护税额',
field: 'taxAmount', field: 'taxAmount',
formatter: accountantFormart, formatter: accountantFormart,
sort: 'custom', sort: 'custom',
@ -166,7 +167,7 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
} }
}, },
{ {
label: '未税金额', label: '发票未税金额',
field: 'beforeTaxAmount', field: 'beforeTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -177,7 +178,7 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
isTableForm:false isTableForm:false
}, },
{ {
label: '税额', label: '发票税额',
field: 'totalTaxAmount', field: 'totalTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -188,7 +189,7 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
isTableForm:false isTableForm:false
}, },
{ {
label: '价税合计金额', label: '发票价税合计',
field: 'adTaxAmount', field: 'adTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -225,12 +226,12 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
sortTableDefault:5, sortTableDefault:5,
}, },
{ {
label: '系统价税合计',//税后金额 label: '供应商维护价税合计',//税后金额
field: 'afterTaxAmount', field: 'afterTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
sort: 'custom', sort: 'custom',
table: { table: {
width: 150 width: 160
}, },
sortTableDefault:9, sortTableDefault:9,
form: { form: {
@ -260,12 +261,12 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
}, },
{ {
label: '系统未税金额', label: '供应商维护未税金额',
field: 'amount', field: 'amount',
formatter: accountantFormart, formatter: accountantFormart,
sort: 'custom', sort: 'custom',
table: { table: {
width: 150 width: 160
}, },
sortTableDefault:8, sortTableDefault:8,
form: { form: {
@ -467,6 +468,7 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
sortTableDefault:6, sortTableDefault:6,
isForm: false isForm: false
}, },
{ {
label: '业务类型', label: '业务类型',
field:'businessType', field:'businessType',
@ -672,6 +674,56 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
// isTable: false, // isTable: false,
// isForm: false, // isForm: false,
// }, // },
{
label: '回转时间',
field: 'reversepostingdate',
formatter: dateFormatter2,
detail: {
dateFormat: 'YYYY-MM-DD'
},
sort: 'custom',
table: {
width: 150
},
sortTableDefault:11,
},
{
label: '说明',//回转说明
field: 'tcCInvoiceRemark',
sortTableDefault:11,
table: {
width: 150
},
},
{
label: '回转凭证号',
field: 'transferNumber',
sort: 'custom',
table: {
width: 200,
},
sortTableDefault:11,
isTable:true,
isForm: false
},
// {
// label: '冲销日记帐',
// field: 'reverseInvoiceJournal',
// sortTableDefault:11,
// table: {
// width: 150
// },
// },
// {
// label: '调整账代码',
// field: 'adjustmentJournal',
// sortTableDefault:11,
// table: {
// width: 150
// },
// },
{ {
label: '采购审批时间', label: '采购审批时间',
field: 'procurementCreateTime', field: 'procurementCreateTime',
@ -808,7 +860,7 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
isDetail: false, isDetail: false,
isForm: false, isForm: false,
table: { table: {
width: 150, width: 200,
fixed: 'right' fixed: 'right'
}, },
} }
@ -835,6 +887,14 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isTable: false, isTable: false,
isDetail: true, isDetail: true,
}, },
{
label: '价差',
field: '',
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{ {
label: 'SCP系统数据', label: 'SCP系统数据',
field: '', field: '',
@ -842,9 +902,9 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isForm: false, isForm: false,
isSearch: false, isSearch: false,
isTable: false, isTable: false,
isDetail: true, isDetail: false,
}, },
{ {
label: '单据号', label: '单据号',
field: 'number', field: 'number',
@ -868,10 +928,9 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isDetail: true, isDetail: true,
}, },
{ {
label: '系统价税合计', label: '系统未税金额',
field: 'afterTaxAmount', field: 'purchaseAmountTotalMain',
formatter: accountantFormart, formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -881,7 +940,6 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
{ {
label: '财务凭证号', label: '财务凭证号',
field: 'voucherNumber', field: 'voucherNumber',
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -900,10 +958,9 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isDetail: true, isDetail: true,
}, },
{ {
label: '系统未税金额', label: '价差合计',
field: 'amount', field: 'differencePriceTotalMain',
formatter: accountantFormart, formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -936,9 +993,8 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isDetail: true, isDetail: true,
}, },
{ {
label: '系统税额', label: '',
field: 'taxAmount', field: '',
formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -966,16 +1022,25 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isSearch: false, isSearch: false,
isDetail: true, isDetail: true,
}, },
// {
// label: '尾差',
// field: 'totalDifference',
// sortTableDefault: 6,
// isForm: false,
// isTable: false,
// isSearch: false,
// isDetail: false,
// },
{ {
label: '系统采购价格', label: '尾差',
field: 'purchaseAmountTotalMain', field: '',
formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: true, isDetail: true,
}, },
{ {
label: '采购价格审批人', label: '采购价格审批人',
field: 'procurementCreatorName', field: 'procurementCreatorName',
@ -999,9 +1064,10 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isDetail: true, isDetail: true,
}, },
{ {
label: '总价差', label: '供应商维护价税合计',
field: 'differencePriceTotalMain', field: 'afterTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1011,14 +1077,14 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
{ {
label: '采购价格审批时间', label: '采购价格审批时间',
field: 'procurementCreateTime', field: 'procurementCreateTime',
detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss'
},
sortTableDefault: 1003, sortTableDefault: 1003,
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: true, isDetail: true,
detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss'
},
}, },
{ {
label: '税率(%)', label: '税率(%)',
@ -1033,8 +1099,10 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
}, },
}, },
{ {
label: '', label: '供应商维护未税金额',
field: '', field: 'amount',
formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1053,7 +1121,7 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isDetail: true, isDetail: true,
}, },
{ {
label: '价税合计', label: '发票价税合计',
field: 'adTaxAmount', field: 'adTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
@ -1064,15 +1132,15 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isDetail: true, isDetail: true,
}, },
{ {
label: '', label: '供应商维护税额',
field: '', field: 'taxAmount',
formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: true, isDetail: true,
}, },
{ {
label: '财务审批人', label: '财务审批人',
field: 'financialCreatorName', field: 'financialCreatorName',
@ -1085,7 +1153,7 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isDetail: true, isDetail: true,
}, },
{ {
label: '未税金额', label: '发票未税金额',
field: 'beforeTaxAmount', field: 'beforeTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
@ -1096,29 +1164,29 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isDetail: true, isDetail: true,
}, },
{ {
label: '尾差', label: '',
field: 'totalDifference', field: '',
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: false, isDetail: true,
}, },
{ {
label: '财务审批时间', label: '财务审批时间',
field: 'financialCreateTime', field: 'financialCreateTime',
formatter: dateFormatter, formatter: dateFormatter,
detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss'
},
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: true, isDetail: true,
detail: {
dateFormat: 'YYYY-MM-DD HH:mm:ss'
},
}, },
{ {
label: '税额', label: '发票税额',
field: 'totalTaxAmount', field: 'totalTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
@ -1129,15 +1197,14 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isDetail: true, isDetail: true,
}, },
{ {
label: '价税合计差额(价税合计-系统价税合计)', label: '价税合计差',
field: 'totalTaxDiffAmount', field: 'totalTaxDiffAmount',
formatter: accountantFormart, formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: false, isDetail: true,
}, },
{ {
label: '财务过账日期', label: '财务过账日期',
@ -1162,7 +1229,7 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isDetail: true, isDetail: true,
}, },
{ {
label: '未税差额(未税金额-系统未税金额)', label: '未税差',
field: 'beforeTaxDiffAmount', field: 'beforeTaxDiffAmount',
formatter: accountantFormart, formatter: accountantFormart,
@ -1170,13 +1237,77 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: false, isDetail: true,
},
{
label: '回转凭证号',
field: 'transferNumber',
sort: 'custom',
},
{
label: '',
field: '',
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '',
field: '',
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '回转时间',
field: 'reversepostingdate',
detail: {
dateFormat: 'YYYY-MM-DD'
},
sort: 'custom',
},
{
label: '',
field: '',
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '',
field: '',
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '说明', //回转说明
field: 'tcCInvoiceRemark',
},
{
label: '',
field: '',
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
},
{
label: '',
field: '',
isForm: false,
isTable: false,
isSearch: false,
isDetail: true,
}, },
{ {
label: '备注', label: '备注',
field: 'remark', field: 'remark',
sort: 'custom', sort: 'custom',
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1197,7 +1328,7 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isDetail: true, isDetail: true,
}, },
{ {
label: '税额差异(税额-系统税额)', label: '税额差',
field: 'taxAmountDiff', field: 'taxAmountDiff',
formatter: accountantFormart, formatter: accountantFormart,
@ -1205,21 +1336,10 @@ export const SupplierinvoiceRecordDetailMain = useCrudSchemas(reactive<CrudSchem
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: false, isDetail: true,
}, },
// {
// label: '创建时间',
// field: 'createTime',
// formatter: dateFormatter,
// sortTableDefault:1000,
// detail: {
// dateFormat: 'YYYY-MM-DD HH:mm:ss'
// },
// isForm: false,
// isTable: false,
// isSearch: false,
// isDetail: true,
// }
])) ]))
//表单校验 //表单校验
export const SupplierinvoiceRecordMainRules = reactive({ export const SupplierinvoiceRecordMainRules = reactive({
@ -1478,7 +1598,7 @@ export const SupplierinvoiceRecordDetail = useCrudSchemas(reactive<CrudSchema[]>
} }
}, },
{ {
label: '差额', label: '单价差额',
field: 'differencePrice', field: 'differencePrice',
table: { table: {
width: 150 width: 150
@ -1493,46 +1613,46 @@ export const SupplierinvoiceRecordDetail = useCrudSchemas(reactive<CrudSchema[]>
disabled: true disabled: true
} }
}, },
{ // {
label: '未税差额', // label: '未税差额',
field: 'untaxedDifference', // field: 'untaxedDifference',
formatter: accountantFormart, // formatter: accountantFormart,
table: { // table: {
width: 150 // width: 150
}, // },
form: { // form: {
component: 'InputNumber', // component: 'InputNumber',
componentProps: { // componentProps: {
min: 0, // min: 0,
precision: 6, // precision: 6,
} // }
}, // },
tableForm: { // tableForm: {
type: 'InputNumber', // type: 'InputNumber',
min: 0, // min: 0,
precision: 6, // precision: 6,
} // }
}, // },
{ // {
label: '含税差额', // label: '含税差额',
field: 'taxInclusiveDifference', // field: 'taxInclusiveDifference',
formatter: accountantFormart, // formatter: accountantFormart,
table: { // table: {
width: 150 // width: 150
}, // },
form: { // form: {
component: 'InputNumber', // component: 'InputNumber',
componentProps: { // componentProps: {
min: 0, // min: 0,
precision: 6, // precision: 6,
} // }
}, // },
tableForm: { // tableForm: {
type: 'InputNumber', // type: 'InputNumber',
min: 0, // min: 0,
precision: 6, // precision: 6,
} // }
}, // },
{ {
label: '收货日期', label: '收货日期',
field: 'deliveryDate', field: 'deliveryDate',
@ -1620,3 +1740,75 @@ export const SupplierinvoiceRecordDetailRules = reactive({
{ required: true, message: '请输入创建者', trigger: 'blur' } { required: true, message: '请输入创建者', trigger: 'blur' }
], ],
}) })
// 发票回转
export const SupplierinvoiceRecordMainTransfer = useCrudSchemas(reactive<CrudSchema[]>([
{
label: '冲销日记帐',
field: 'reverseInvoiceJournal',
form: {
componentProps: {
value:'APINVCOR',
disabled: true,
}
},
},
{
label: '调整账代码',
field: 'adjustmentJournal',
form: {
componentProps: {
value:'APADJ',
disabled: true,
}
},
},
{
label: '过账日期',
field: 'reversepostingdate',
formatter: dateFormatter,
detail: {
dateFormat: 'YYYY-MM-DD'
},
sort: 'custom',
table: {
width: 180
},
sortTableDefault:11,
form: {
component: 'DatePicker',
componentProps: {
style: {width:'100%'},
type: 'date',
dateFormat: 'YYYY-MM-DD',
valueFormat: 'x',
}
},
},
{
label: '说明',
field: 'tcCInvoiceRemark',
sort: 'custom',
isSearch: false,
isTable: false,
isForm: true,
isDetail:false,
form: {
componentProps: {
type:"textarea",
maxlength:50,
showWordLimit:true
}
}
}
]))
//表单校验
export const SupplierinvoiceRecordMainTransferRules = reactive({
reversepostingdate: [
{ required: true, message: '请选择过账日期', trigger: 'change' }
]
})

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

@ -172,6 +172,7 @@
@searchTableSuccess="searchTableSuccess" @searchTableSuccess="searchTableSuccess"
@submitForm="submitForm" @submitForm="submitForm"
@sumFormDataHandle="sumFormDataHandle" @sumFormDataHandle="sumFormDataHandle"
@onChange="onChange"
> >
<template #selectionsActionspoLine="{ selections }"> <template #selectionsActionspoLine="{ selections }">
<div style="text-align: left; margin-right: 10px"> <div style="text-align: left; margin-right: 10px">
@ -382,7 +383,7 @@ const searchList = (model) => {
selectionRows.value = [] selectionRows.value = []
let model1 = { let model1 = {
...model, ...model,
statuss: model.status.join(',')?model.status.join(','):'' statuss: model.status.join(',') ? model.status.join(',') : ''
} }
delete model1.status delete model1.status
setSearchParams(model1) setSearchParams(model1)
@ -436,6 +437,13 @@ const searchTableSuccessDetail = async (
// }) // })
const onChange = (field, cur) => {
console.log('onChange',field)
if(field=='orderType'){
tableData.value = []
}
}
// //
const searchTableSuccess = (formField, searchField, val, searchFormRef, type, row) => { const searchTableSuccess = (formField, searchField, val, searchFormRef, type, row) => {
nextTick(() => { nextTick(() => {
@ -673,6 +681,12 @@ const buttonTableClick = async (val, row) => {
} else if (val == 'purchase_mainPlanSub') { } else if (val == 'purchase_mainPlanSub') {
// //
// handleApp(row.id) // handleApp(row.id)
//
const res = await checkInvoicingCalendar()
if (res?.flag) {
message.alertWarning(res.msg)
return
}
if (row.balanceStatementStatus) { if (row.balanceStatementStatus) {
formPurchasePassRef.value.open('update', row, null, '采购审批通过', '采购审批通过') formPurchasePassRef.value.open('update', row, null, '采购审批通过', '采购审批通过')
} else { } else {
@ -796,7 +810,7 @@ const openForm = async (type: string, row?: any) => {
// if (item.field == 'procurementCreator') { // if (item.field == 'procurementCreator') {
// item.componentProps.options = procurementCreators.value // item.componentProps.options = procurementCreators.value
// } // }
}) })
} }
@ -813,21 +827,21 @@ const openForm = async (type: string, row?: any) => {
} }
if (row && row.procurementCreator) row.procurementCreator = Number(row.procurementCreator) if (row && row.procurementCreator) row.procurementCreator = Number(row.procurementCreator)
// //
SupplierinvoiceRequestMainApi.checkInvoicingCalendar({}).then((res) => { const res = await checkInvoicingCalendar()
if (res.flag) { if (res?.flag) {
message.alertWarning(res.msg) message.alertWarning(res.msg)
return return
} }
tableData.value = [] // tableData.value = [] //
formRef.value.open(type, row) formRef.value.open(type, row)
// if(type=='create'){ }
// nextTick(() => { //
// formRef.value.formRef.setValues({ const checkInvoicingCalendar = async () => {
// procurementCreator:procurementCreators.value[0].id let resData = ''
// }) await SupplierinvoiceRequestMainApi.checkInvoicingCalendar({}).then((res) => {
// }) resData = res
// }
}) })
return resData
} }
const defaultSupplierCode = ref('') const defaultSupplierCode = ref('')
const getDefaultSupplier = async () => { const getDefaultSupplier = async () => {
@ -860,7 +874,8 @@ const detailAnnexTable = ref([
tableName: 'invoice', tableName: 'invoice',
hiddenDelete: false, hiddenDelete: false,
hiddenUpload: false, hiddenUpload: false,
fileSize: 20 fileSize: 20,
fileType:['pdf']
}, },
{ {
label: t('ts.货运单附件'), label: t('ts.货运单附件'),
@ -983,6 +998,12 @@ const handleOpe = async (id: number) => {
/** 提交审批按钮操作 */ /** 提交审批按钮操作 */
const handleSub = async (id: number) => { const handleSub = async (id: number) => {
try { try {
//
const res = await checkInvoicingCalendar()
if (res?.flag) {
message.alertWarning(res.msg)
return
}
// //
await message.confirm(t('ts.是否提交审批所选中数据?')) await message.confirm(t('ts.是否提交审批所选中数据?'))
tableObject.loading = true tableObject.loading = true
@ -1081,6 +1102,12 @@ const handleTur = async (id: number, cause: string) => {
/** 发票寄出确认按钮操作 */ /** 发票寄出确认按钮操作 */
const handleInvoiceSentOut = async (id: number) => { const handleInvoiceSentOut = async (id: number) => {
try { try {
//
const res = await checkInvoicingCalendar()
if (res?.flag) {
message.alertWarning(res.msg)
return
}
// //
await message.confirm(t('ts.是否确认发票寄出选中数据?')) await message.confirm(t('ts.是否确认发票寄出选中数据?'))
tableObject.loading = true tableObject.loading = true
@ -1165,7 +1192,7 @@ const genRecords = async (id: number) => {
/** 导出按钮操作 */ /** 导出按钮操作 */
const handleExport = async () => { const handleExport = async () => {
console.log(111) console.log(111)
let rows: any = [] let rows: any = []
selectionRows.value.forEach((item) => { selectionRows.value.forEach((item) => {
rows = [...rows, ...item.selectionRows.map((item1) => item1.number)] rows = [...rows, ...item.selectionRows.map((item1) => item1.number)]
@ -1181,8 +1208,8 @@ const handleExport = async () => {
} else { } else {
paramsData = { ...paramsData, checkNums: rows } paramsData = { ...paramsData, checkNums: rows }
} }
if (!paramsData.createTime || paramsData.createTime && paramsData.createTime.length == 0) { if (!paramsData.createTime || (paramsData.createTime && paramsData.createTime.length == 0)) {
delete paramsData.createTime delete paramsData.createTime
} }
try { try {
// //
@ -1410,11 +1437,16 @@ const getLoginUserRoleList = async () => {
/** 初始化 **/ /** 初始化 **/
onMounted(async () => { onMounted(async () => {
SupplierinvoiceRequestMain.allSchemas.formSchema.forEach(async (item) => {
SupplierinvoiceRequestMain.allSchemas.formSchema.forEach(async item=>{ if (item.field == 'procurementCreator') {
if(item.field == 'procurementCreator'){
// //
const procurementCreators = await SupplierinvoiceRequestMainApi.queryUserInfoByRoleCode({ roleCode: 'purchase',pageSize: 1000,pageNo: 1,sort: '',by: 'ASC' }) const procurementCreators = await SupplierinvoiceRequestMainApi.queryUserInfoByRoleCode({
roleCode: 'purchase',
pageSize: 1000,
pageNo: 1,
sort: '',
by: 'ASC'
})
item.componentProps.options = procurementCreators.list item.componentProps.options = procurementCreators.list
} }
}) })

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

@ -201,6 +201,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
label: '供应商名称', label: '供应商名称',
field: 'supplierName', field: 'supplierName',
sort: 'custom', sort: 'custom',
isSearch:true,
table: { table: {
width: 180, width: 180,
}, },
@ -250,11 +251,11 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
isForm: false, isForm: false,
}, },
{ {
label: '系统未税金额', label: '供应商维护未税金额',
field: 'amount', field: 'amount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
width: 150 width: 160
}, },
sortTableDefault:8, sortTableDefault:8,
form: { form: {
@ -305,7 +306,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
// isTableForm:false // isTableForm:false
// }, // },
// { // {
// label: '价税合计金额', // label: '发票价税合计',
// field: 'adTaxAmount', // field: 'adTaxAmount',
// formatter: accountantFormart, // formatter: accountantFormart,
// table: { // table: {
@ -316,7 +317,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
// isTableForm:false // isTableForm:false
// }, // },
{ {
label: '系统税额', label: '供应商维护税额',
field: 'taxAmount', field: 'taxAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -336,11 +337,11 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
} }
}, },
{ {
label: '系统价税合计', label: '供应商维护价税合计',
field: 'afterTaxAmount', field: 'afterTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
width: 150 width: 160
}, },
sortTableDefault:7, sortTableDefault:7,
form: { form: {
@ -441,7 +442,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
} }
}, },
{ {
label: '未税金额', label: '发票未税金额',
field: 'beforeTaxAmount', field: 'beforeTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -458,7 +459,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
isTableForm:false, isTableForm:false,
}, },
{ {
label: '税额', label: '发票税额',
field: 'totalTaxAmount', field: 'totalTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -475,7 +476,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
isTableForm:false, isTableForm:false,
}, },
{ {
label: '价税合计金额', label: '发票价税合计',
field: 'adTaxAmount', field: 'adTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -518,7 +519,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
sortTableDefault:5, sortTableDefault:5,
}, },
{ {
label: '未税差', label: '未税差',
field: 'beforeTaxDiffAmount', field: 'beforeTaxDiffAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -535,7 +536,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
isTableForm:false, isTableForm:false,
}, },
{ {
label: '税额差', label: '税额差',
field: 'taxAmountDiff', field: 'taxAmountDiff',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -552,7 +553,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
isTableForm:false, isTableForm:false,
}, },
{ {
label: '价税合计差', label: '价税合计差',
field: 'totalTaxDiffAmount', field: 'totalTaxDiffAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -598,7 +599,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
sortTableDefault:10, sortTableDefault:10,
form:{ form:{
componentProps: { componentProps: {
maxlength:23, maxlength:20,
showWordLimit:true showWordLimit:true
} }
} }
@ -1143,7 +1144,7 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: 'SCP系统数据', label: '价差',
field: '', field: '',
sort: 'custom', sort: 'custom',
isForm: false, isForm: false,
@ -1151,7 +1152,16 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isTable: false, isTable: false,
isDetail: true, isDetail: true,
}, },
{
label: 'SCP系统数据',
field: '',
sort: 'custom',
isForm: false,
isSearch: false,
isTable: false,
isDetail: false,
},
{ {
label: '单据号', label: '单据号',
field: 'number', field: 'number',
@ -1175,10 +1185,9 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '系统价税合计', label: '系统未税金额',
field: 'afterTaxAmount', field: 'purchaseAmountTotalMain',
formatter: accountantFormart, formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1206,10 +1215,9 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '系统未税金额', label: '价差合计',
field: 'amount', field: 'differencePriceTotalMain',
formatter: accountantFormart, formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1242,9 +1250,8 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '系统税额', label: '',
field: 'taxAmount', field: '',
formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1273,15 +1280,23 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '系统采购价格', label: '尾差',
field: 'purchaseAmountTotalMain', field: '',
formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: true, isDetail: true,
}, },
// {
// label: '尾差',
// field: 'totalDifference',
// sortTableDefault: 6,
// isForm: false,
// isTable: false,
// isSearch: false,
// isDetail: false,
// },
{ {
label: '采购价格审批人', label: '采购价格审批人',
field: 'procurementCreatorName', field: 'procurementCreatorName',
@ -1305,9 +1320,10 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '总价差', label: '供应商维护价税合计',
field: 'differencePriceTotalMain', field: 'afterTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1339,8 +1355,10 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
}, },
}, },
{ {
label: '', label: '供应商维护未税金额',
field: '', field: 'amount',
formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1359,7 +1377,7 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '价税合计', label: '发票价税合计',
field: 'adTaxAmount', field: 'adTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
@ -1370,15 +1388,15 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '', label: '供应商维护税额',
field: '', field: 'taxAmount',
formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: true, isDetail: true,
}, },
{ {
label: '财务审批人', label: '财务审批人',
field: 'financialCreatorName', field: 'financialCreatorName',
@ -1391,7 +1409,7 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '未税金额', label: '发票未税金额',
field: 'beforeTaxAmount', field: 'beforeTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
@ -1402,13 +1420,13 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '尾差', label: '',
field: 'totalDifference', field: '',
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: false, isDetail: true,
}, },
{ {
label: '财务审批时间', label: '财务审批时间',
@ -1424,7 +1442,7 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '税额', label: '发票税额',
field: 'totalTaxAmount', field: 'totalTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
@ -1435,15 +1453,14 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '价税合计差额(价税合计-系统价税合计)', label: '价税合计差',
field: 'totalTaxDiffAmount', field: 'totalTaxDiffAmount',
formatter: accountantFormart, formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: false, isDetail: true,
}, },
{ {
label: '财务过账日期', label: '财务过账日期',
@ -1468,7 +1485,7 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '未税差额(未税金额-系统未税金额)', label: '未税差',
field: 'beforeTaxDiffAmount', field: 'beforeTaxDiffAmount',
formatter: accountantFormart, formatter: accountantFormart,
@ -1476,8 +1493,9 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: false, isDetail: true,
}, },
{ {
label: '备注', label: '备注',
field: 'remark', field: 'remark',
@ -1502,7 +1520,7 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '税额差异(税额-系统税额)', label: '税额差',
field: 'taxAmountDiff', field: 'taxAmountDiff',
formatter: accountantFormart, formatter: accountantFormart,
@ -1510,7 +1528,7 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: false, isDetail: true,
}, },

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

@ -242,11 +242,11 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
isForm: false, isForm: false,
}, },
{ {
label: '系统未税金额', label: '供应商维护未税金额',
field: 'amount', field: 'amount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
width: 150 width: 160
}, },
sortTableDefault:8, sortTableDefault:8,
form: { form: {
@ -286,7 +286,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
// isTableForm:false // isTableForm:false
// }, // },
// { // {
// label: '税额', // label: '发票税额',
// field: 'totalTaxAmount', // field: 'totalTaxAmount',
// formatter: accountantFormart, // formatter: accountantFormart,
// table: { // table: {
@ -297,7 +297,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
// isTableForm:false // isTableForm:false
// }, // },
// { // {
// label: '价税合计金额', // label: '发票价税合计',
// field: 'adTaxAmount', // field: 'adTaxAmount',
// formatter: accountantFormart, // formatter: accountantFormart,
// table: { // table: {
@ -308,7 +308,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
// isTableForm:false // isTableForm:false
// }, // },
{ {
label: '系统税额', label: '供应商维护税额',
field: 'taxAmount', field: 'taxAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -328,11 +328,11 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
} }
}, },
{ {
label: '系统价税合计', label: '供应商维护价税合计',
field: 'afterTaxAmount', field: 'afterTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
width: 150 width: 160
}, },
sortTableDefault:7, sortTableDefault:7,
form: { form: {
@ -433,7 +433,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
} }
}, },
{ {
label: '未税金额', label: '发票未税金额',
field: 'beforeTaxAmount', field: 'beforeTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -450,7 +450,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
isTableForm:false, isTableForm:false,
}, },
{ {
label: '税额', label: '发票税额',
field: 'totalTaxAmount', field: 'totalTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -467,7 +467,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
isTableForm:false, isTableForm:false,
}, },
{ {
label: '价税合计金额', label: '发票价税合计',
field: 'adTaxAmount', field: 'adTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -510,7 +510,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
sortTableDefault:5, sortTableDefault:5,
}, },
{ {
label: '未税差', label: '未税差',
field: 'beforeTaxDiffAmount', field: 'beforeTaxDiffAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -527,7 +527,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
isTableForm:false, isTableForm:false,
}, },
{ {
label: '税额差', label: '税额差',
field: 'taxAmountDiff', field: 'taxAmountDiff',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -544,7 +544,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
isTableForm:false, isTableForm:false,
}, },
{ {
label: '价税合计差', label: '价税合计差',
field: 'totalTaxDiffAmount', field: 'totalTaxDiffAmount',
formatter: accountantFormart, formatter: accountantFormart,
table: { table: {
@ -590,7 +590,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive<CrudSchema[]>(
sortTableDefault:10, sortTableDefault:10,
form:{ form:{
componentProps: { componentProps: {
maxlength:23, maxlength:20,
showWordLimit:true showWordLimit:true
} }
} }
@ -1158,7 +1158,7 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: 'SCP系统数据', label: '价差',
field: '', field: '',
sort: 'custom', sort: 'custom',
isForm: false, isForm: false,
@ -1166,7 +1166,16 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isTable: false, isTable: false,
isDetail: true, isDetail: true,
}, },
{
label: 'SCP系统数据',
field: '',
sort: 'custom',
isForm: false,
isSearch: false,
isTable: false,
isDetail: false,
},
{ {
label: '单据号', label: '单据号',
field: 'number', field: 'number',
@ -1190,10 +1199,9 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '系统价税合计', label: '系统未税金额',
field: 'afterTaxAmount', field: 'purchaseAmountTotalMain',
formatter: accountantFormart, formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1203,7 +1211,6 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
{ {
label: '财务凭证号', label: '财务凭证号',
field: 'voucherNumber', field: 'voucherNumber',
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1214,6 +1221,7 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
label: '供应商名称', label: '供应商名称',
field: 'supplierName', field: 'supplierName',
sort: 'custom', sort: 'custom',
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1221,10 +1229,9 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '系统未税金额', label: '价差合计',
field: 'amount', field: 'differencePriceTotalMain',
formatter: accountantFormart, formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1257,9 +1264,8 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '系统税额', label: '',
field: 'taxAmount', field: '',
formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1288,15 +1294,23 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '系统采购价格', label: '尾差',
field: 'purchaseAmountTotalMain', field: '',
formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: true, isDetail: true,
}, },
// {
// label: '尾差',
// field: 'totalDifference',
// sortTableDefault: 6,
// isForm: false,
// isTable: false,
// isSearch: false,
// isDetail: false,
// },
{ {
label: '采购价格审批人', label: '采购价格审批人',
field: 'procurementCreatorName', field: 'procurementCreatorName',
@ -1320,9 +1334,10 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '总价差', label: '供应商维护价税合计',
field: 'differencePriceTotalMain', field: 'afterTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1354,8 +1369,10 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
}, },
}, },
{ {
label: '', label: '供应商维护未税金额',
field: '', field: 'amount',
formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1374,7 +1391,7 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '价税合计', label: '发票价税合计',
field: 'adTaxAmount', field: 'adTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
@ -1385,15 +1402,15 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '', label: '供应商维护税额',
field: '', field: 'taxAmount',
formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: true, isDetail: true,
}, },
{ {
label: '财务审批人', label: '财务审批人',
field: 'financialCreatorName', field: 'financialCreatorName',
@ -1406,7 +1423,7 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '未税金额', label: '发票未税金额',
field: 'beforeTaxAmount', field: 'beforeTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
@ -1417,13 +1434,13 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '尾差', label: '',
field: 'totalDifference', field: '',
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: false, isDetail: true,
}, },
{ {
label: '财务审批时间', label: '财务审批时间',
@ -1439,7 +1456,7 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '税额', label: '发票税额',
field: 'totalTaxAmount', field: 'totalTaxAmount',
formatter: accountantFormart, formatter: accountantFormart,
@ -1450,15 +1467,14 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '价税合计差额(价税合计-系统价税合计)', label: '价税合计差',
field: 'totalTaxDiffAmount', field: 'totalTaxDiffAmount',
formatter: accountantFormart, formatter: accountantFormart,
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: false, isDetail: true,
}, },
{ {
label: '财务过账日期', label: '财务过账日期',
@ -1483,7 +1499,7 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '未税差额(未税金额-系统未税金额)', label: '未税差',
field: 'beforeTaxDiffAmount', field: 'beforeTaxDiffAmount',
formatter: accountantFormart, formatter: accountantFormart,
@ -1491,13 +1507,13 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: false, isDetail: true,
}, },
{ {
label: '备注', label: '备注',
field: 'remark', field: 'remark',
sort: 'custom', sort: 'custom',
sortTableDefault: 6, sortTableDefault: 6,
isForm: false, isForm: false,
isTable: false, isTable: false,
@ -1518,7 +1534,7 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isDetail: true, isDetail: true,
}, },
{ {
label: '税额差异(税额-系统税额)', label: '税额差',
field: 'taxAmountDiff', field: 'taxAmountDiff',
formatter: accountantFormart, formatter: accountantFormart,
@ -1526,21 +1542,9 @@ export const SupplierinvoiceRequestDetailMain = useCrudSchemas(reactive<CrudSche
isForm: false, isForm: false,
isTable: false, isTable: false,
isSearch: false, isSearch: false,
isDetail: false, isDetail: true,
}, },
// {
// label: '创建时间',
// field: 'createTime',
// formatter: dateFormatter,
// sortTableDefault:1000,
// detail: {
// dateFormat: 'YYYY-MM-DD HH:mm:ss'
// },
// isForm: false,
// isTable: false,
// isSearch: false,
// isDetail: true,
// },
])) ]))
const singlePriceFormart = (row, column, cellValue) => { const singlePriceFormart = (row, column, cellValue) => {

Loading…
Cancel
Save