diff --git a/.env.wyf b/.env.wyf index 77639491b..ee1d6eb3a 100644 --- a/.env.wyf +++ b/.env.wyf @@ -6,7 +6,7 @@ VITE_DEV=false # 请求路径 VITE_BASE_URL='http://192.168.0.108:12080' # 上传路径 -VITE_UPLOAD_URL='http://192.168.0.108:12080/api/admin-api/infra/file/upload' +VITE_UPLOAD_URL='http://192.168.0.108:12080/admin-api/infra/file/upload' # # 请求路径 # VITE_BASE_URL='http://dev.ccwin-in.com:25300/api' @@ -40,3 +40,9 @@ VITE_INTERFACE_URL='http://192.168.0.108:12080/magic/web/index.html' # 积木报表请求路径 VITE_JMREPORT_BASE_URL='http://192.168.0.108:12080' + +# # 自定义接口路径 +# VITE_INTERFACE_URL='http://dev.ccwin-in.com:25310/magic/web/index.html' + +# # 积木报表请求路径 +# VITE_JMREPORT_BASE_URL='http://dev.ccwin-in.com:25310' diff --git a/src/api/qms/inspectionJob/InspectionJobPackage/InspectionJobPackage.ts b/src/api/qms/inspectionJob/InspectionJobPackage/InspectionJobPackage.ts new file mode 100644 index 000000000..ff82af696 --- /dev/null +++ b/src/api/qms/inspectionJob/InspectionJobPackage/InspectionJobPackage.ts @@ -0,0 +1,13 @@ +import request from '@/config/axios' +export interface InspectionRequestPackageVO { + number: string + packageCode: string + packageSpecificationCode: string + amount: string + measuringUnit: string +} + +//查询包装列表 +export const getInspectionJobPackageList = async (id: number) => { + return await request.get({ url: `/qms/inspection-job-package/list?masterId=` + id }) +} diff --git a/src/api/qms/inspectionJob/inspectionJobMain/index.ts b/src/api/qms/inspectionJob/inspectionJobMain/index.ts index 372fef2dc..2b59a7401 100644 --- a/src/api/qms/inspectionJob/inspectionJobMain/index.ts +++ b/src/api/qms/inspectionJob/inspectionJobMain/index.ts @@ -55,8 +55,5 @@ export const exportInspectionJobMain = async (params) => { export const importTemplate = () => { return request.download({ url: '/qms/inspection-job-main/get-import-template' }) } -//查询包装列表 -export const getInspectionJobPackageList = async (id: number) => { -   return await request.get({ url: `/qms/inspection-job-package/list?masterId=` + id }) -} + \ No newline at end of file diff --git a/src/api/qms/inspectionRecord/InspectionRecordPackage/InspectionRecordPackage.ts b/src/api/qms/inspectionRecord/InspectionRecordPackage/InspectionRecordPackage.ts new file mode 100644 index 000000000..cb0c2e6aa --- /dev/null +++ b/src/api/qms/inspectionRecord/InspectionRecordPackage/InspectionRecordPackage.ts @@ -0,0 +1,13 @@ +import request from '@/config/axios' +export interface InspectionRequestPackageVO { + number: string + packageCode: string + packageSpecificationCode: string + amount: string + measuringUnit: string +} + +//查询包装列表 +export const getInspectionRecordPackageList = async (id: number) => { + return await request.get({ url: `/qms/inspection-record-package/list?masterId=` + id }) +} diff --git a/src/api/qms/inspectionRecord/inspectionRecordMain/index.ts b/src/api/qms/inspectionRecord/inspectionRecordMain/index.ts index 8214ed279..2f5215b03 100644 --- a/src/api/qms/inspectionRecord/inspectionRecordMain/index.ts +++ b/src/api/qms/inspectionRecord/inspectionRecordMain/index.ts @@ -67,7 +67,3 @@ export const importTemplate = () => { export const publishInspectionRecordMain = async (id) => { return await request.put({ url: `/qms/inspection-record-main/publish?id=`+id }) } -//查询包装列表 -export const getInspectionRecordPackageList = async (id: number) => { - return await request.get({ url: `/qms/inspection-record-package/list?masterId=` + id }) -} \ No newline at end of file diff --git a/src/api/qms/inspectionTemplate/index.ts b/src/api/qms/inspectionTemplate/index.ts index 9fe18afcd..f3bf638d2 100644 --- a/src/api/qms/inspectionTemplate/index.ts +++ b/src/api/qms/inspectionTemplate/index.ts @@ -2,7 +2,7 @@ import request from '@/config/axios' -// 查询采样过程列表 +// 列表 export const getListByTempleteCode = async (code) => { return await request.get({ url: `/qms/inspection-process/getListByTempleteCode?code=`+code}) } diff --git a/src/api/wms/demandforecastingMain/index.ts b/src/api/wms/demandforecastingMain/index.ts index 38b2e1f9e..68b471769 100644 --- a/src/api/wms/demandforecastingMain/index.ts +++ b/src/api/wms/demandforecastingMain/index.ts @@ -48,6 +48,24 @@ export const deleteDemandforecastingMain = async (id: number) => { return await request.delete({ url: `/wms/demandforecasting-main/delete?id=` + id }) } + +// 关闭要货预测 +export const closePurchaseMain = async (id: number) => { + return await request.post({ url: `/wms/demandforecasting-main/close?id=` + id }) +} +// 打开要货预测 +export const openPurchaseMain = async (id: number) => { + return await request.post({ url: `/wms/demandforecasting-main/open?id=` + id }) +} +// 发布要货预测 +export const publishPurchaseMain = async (id: number) => { + return await request.post({ url: `/wms/demandforecasting-main/publish?id=` + id }) +} +// 下架要货预测 +export const witPurchaseMain = async (id: number) => { + return await request.post({ url: `/wms/demandforecasting-main/wit?id=` + id }) +} + // 导出要货预测主 Excel export const exportDemandforecastingMain = async (params) => { if (params.isSearch) { diff --git a/src/api/wms/productputawayJobMain/index.ts b/src/api/wms/productputawayJobMain/index.ts index 9789444e8..d9379684f 100644 --- a/src/api/wms/productputawayJobMain/index.ts +++ b/src/api/wms/productputawayJobMain/index.ts @@ -42,6 +42,7 @@ export interface ProductputawayJobMainVO { // 查询制品上架任务主列表 export const getProductputawayJobMainPage = async (params) => { + params.type = 'predict' if (params.isSearch) { delete params.isSearch const data = {...params} @@ -51,6 +52,17 @@ export const getProductputawayJobMainPage = async (params) => { } } +// 查询制品上架任务主列表 +export const getProductputawayJobMainAssemblePage = async (params) => { + params.type = 'assemble' + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/wms/productputaway-job-main/senior', data }) + } else { + return await request.get({ url: `/wms/productputaway-job-main/page`, params }) + } +} // 查询制品上架任务主详情 export const getProductputawayJobMain = async (id: number) => { return await request.get({ url: `/wms/productputaway-job-main/get?id=` + id }) @@ -73,6 +85,19 @@ export const deleteProductputawayJobMain = async (id: number) => { // 导出制品上架任务主 Excel export const exportProductputawayJobMain = async (params) => { + params.type = 'predict' + if (params.isSearch) { + const data = {...params} + return await request.downloadPost({ url: `/wms/productputaway-job-main/export-excel-senior`, data }) + } else { + return await request.download({ url: `/wms/productputaway-job-main/export-excel`, params }) + } +} + + +// 导出制品上架任务主 Excel +export const exportProductputawayJobMainAssemble = async (params) => { + params.type = 'assemble' if (params.isSearch) { const data = {...params} return await request.downloadPost({ url: `/wms/productputaway-job-main/export-excel-senior`, data }) diff --git a/src/api/wms/productputawayRecordMain/index.ts b/src/api/wms/productputawayRecordMain/index.ts index ef29d16f6..716646115 100644 --- a/src/api/wms/productputawayRecordMain/index.ts +++ b/src/api/wms/productputawayRecordMain/index.ts @@ -30,6 +30,19 @@ export interface ProductputawayRecordMainVO { // 查询制品上架记录主列表 export const getProductputawayRecordMainPage = async (params) => { + params.type = 'predict' + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/wms/productputaway-record-main/senior', data }) + } else { + return await request.get({ url: `/wms/productputaway-record-main/page`, params }) + } +} + +// 查询制品上架记录主列表 +export const getProductputawayRecordMainAssemblePage = async (params) => { + params.type = 'assemble' if (params.isSearch) { delete params.isSearch const data = {...params} @@ -61,6 +74,19 @@ export const deleteProductputawayRecordMain = async (id: number) => { // 导出制品上架记录主 Excel export const exportProductputawayRecordMain = async (params) => { + params.type = 'predict' + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/wms/productputaway-record-main/export-excel-senior', data }) + } else { + return await request.download({ url: `/wms/productputaway-record-main/export-excel`, params }) + } +} + +// 导出制品上架记录主 Excel +export const exportProductputawayRecordMainAssemble = async (params) => { + params.type = 'assemble' if (params.isSearch) { delete params.isSearch const data = {...params} diff --git a/src/api/wms/productputawayRequestMain/index.ts b/src/api/wms/productputawayRequestMain/index.ts index 7975d1ea5..6696beea6 100644 --- a/src/api/wms/productputawayRequestMain/index.ts +++ b/src/api/wms/productputawayRequestMain/index.ts @@ -28,6 +28,19 @@ export interface ProductputawayRequestMainVO { // 查询制品上架申请主列表 export const getProductputawayRequestMainPage = async (params) => { + params.type = 'predict' + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/wms/productputaway-request-main/senior', data }) + } else { + return await request.get({ url: `/wms/productputaway-request-main/page`, params }) + } +} + +// 查询制品上架申请主列表 +export const getProductputawayRequestMainAssemblePage = async (params) => { + params.type = 'assemble' if (params.isSearch) { delete params.isSearch const data = {...params} @@ -59,6 +72,18 @@ export const deleteProductputawayRequestMain = async (id: number) => { // 导出制品上架申请主 Excel export const exportProductputawayRequestMain = async (params) => { + params.type = 'predict' + if (params.isSearch) { + const data = {...params} + return await request.downloadPost({ url: `/wms/productputaway-request-main/export-excel-senior`, data }) + } else { + return await request.download({ url: `/wms/productputaway-request-main/export-excel`, params }) + } +} + +// 导出制品上架申请主 Excel +export const exportProductputawayRequestMainAssemble = async (params) => { + params.type = 'assemble' if (params.isSearch) { const data = {...params} return await request.downloadPost({ url: `/wms/productputaway-request-main/export-excel-senior`, data }) diff --git a/src/api/wms/purchasereceiptRecordDetail/index.ts b/src/api/wms/purchasereceiptRecordDetail/index.ts index 04699eb06..a7e5c8426 100644 --- a/src/api/wms/purchasereceiptRecordDetail/index.ts +++ b/src/api/wms/purchasereceiptRecordDetail/index.ts @@ -60,6 +60,15 @@ export const getPurchasereceiptRecordDetailPage = async (params) => { return await request.get({ url: `/wms/purchasereceipt-record-detail/page`, params }) } } +export const getPurchasereceiptRecordDetailPageSCP = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/wms/purchasereceipt-record-detail/seniorSCP', data }) + } else { + return await request.get({ url: `/wms/purchasereceipt-record-detail/pageSCP`, params }) + } +} // 查询采购收货记录子列表 export const getPurchasereceiptRecordDetailPageBySupplierCode = async (params) => { diff --git a/src/api/wms/purchasereturnRecordDetail/index.ts b/src/api/wms/purchasereturnRecordDetail/index.ts index f1366853a..99f783649 100644 --- a/src/api/wms/purchasereturnRecordDetail/index.ts +++ b/src/api/wms/purchasereturnRecordDetail/index.ts @@ -48,6 +48,15 @@ export const getPurchasereturnRecordDetailPage = async (params) => { return await request.get({ url: `/wms/purchasereturn-record-detail/page`, params }) } } +export const getPurchasereturnRecordDetailPageSCP = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/wms/purchasereturn-record-detail/seniorSCP', data }) + } else { + return await request.get({ url: `/wms/purchasereturn-record-detail/pageSCP`, params }) + } +} // 查询采购退货记录子详情 export const getPurchasereturnRecordDetail = async (id: number) => { diff --git a/src/api/wms/supplierinvoiceRequestMain/index.ts b/src/api/wms/supplierinvoiceRequestMain/index.ts index e5e1d5e8c..ced9da32c 100644 --- a/src/api/wms/supplierinvoiceRequestMain/index.ts +++ b/src/api/wms/supplierinvoiceRequestMain/index.ts @@ -101,6 +101,11 @@ export const printSupplierRecord = async (asnBillNum:string) => { return await request.post({ url: `/wms/supplierinvoice-request-main/querySupplierRecord?asnBillNum=`+asnBillNum }) } +// 打印单挑供应商发货记录 +export const printSupplierRecordByMasterId = async (masterId:number) => { + return await request.post({ url: `/wms/supplierinvoice-request-main/querySupplierRecordByMasterId?masterId=`+masterId }) +} + // 导出供应商发票申请主 Excel export const exportSupplierinvoiceRequestMain = async (params) => { if(params.isSearch){ diff --git a/src/api/wms/unplannedissueRequestMain/index.ts b/src/api/wms/unplannedissueRequestMain/index.ts index be6d7eb07..4796b2cb7 100644 --- a/src/api/wms/unplannedissueRequestMain/index.ts +++ b/src/api/wms/unplannedissueRequestMain/index.ts @@ -40,26 +40,6 @@ export const getUnplannedissueRequestMainPage = async (params) => { } } - -// 查询计划外出库申请主列表 -export const getUnplannedissueRequestMainPageSpare = async (params) => { - if (params.isSearch) { - delete params.isSearch - const data = {...params} - const dataTypeCondition = { - 'column':'dataType', - 'action':'==', - 'value':'2' - } - data.filters.push(dataTypeCondition) - return await request.post({ url: '/wms/unplannedissue-request-main/senior', data }) - } else { - params.dataType='2' - return await request.get({ url: `/wms/unplannedissue-request-main/page`, params }) - } -} - - // 查询计划外出库申请主详情 export const getUnplannedissueRequestMain = async (id: number) => { return await request.get({ url: `/wms/unplannedissue-request-main/get?id=` + id }) @@ -95,6 +75,8 @@ export const importTemplate = () => { return request.download({ url: '/wms/unplannedissue-request-main/get-import-template' }) } + + // 关闭-计划外出库申请 export const closeUnplannedissueRequestMain = async (id) => { return await request.put({ url: `/wms/unplannedissue-request-main/close?id=` + id }) @@ -124,3 +106,28 @@ export const agreeUnplannedissueRequestMain = async (id) => { export const handleUnplannedissueRequestMain = async (id) => { return await request.put({ url: `/wms/unplannedissue-request-main/handle?id=` + id }) } + + +// 查询备件领用主列表 +export const getUnplannedissueRequestMainPageSpare = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + const dataTypeCondition = { + 'column':'dataType', + 'action':'==', + 'value':'2' + } + data.filters.push(dataTypeCondition) + return await request.post({ url: '/wms/unplannedissue-request-main/senior', data }) + } else { + params.dataType='2' + return await request.get({ url: `/wms/unplannedissue-request-main/page`, params }) + } +} + + +// 备件领用下载用户导入模板 +export const spareImportTemplate = () => { + return request.download({ url: '/wms/unplannedissue-request-main/get-import-template-spare' }) +} diff --git a/src/components/Annex/src/Annex.vue b/src/components/Annex/src/Annex.vue index 7acc34996..ef289c6a8 100644 --- a/src/components/Annex/src/Annex.vue +++ b/src/components/Annex/src/Annex.vue @@ -16,7 +16,8 @@
{{ item.size }}KB
来自 {{ item.nickname }}
- + +
{{ formatDate(item.createTime) }}
@@ -44,6 +45,14 @@ const props = defineProps({ type: Object, required: true }, + showDownload: { + type: Boolean, + required: false + }, + hiddenDelete: { + type: Boolean, + required: false + }, }) // 子传父的时候需要先定义好emit这个方法 const emit = defineEmits(['handleAnnexSuccess', 'deleteAnnexSuccess']) diff --git a/src/components/BasicForm/src/BasicForm.vue b/src/components/BasicForm/src/BasicForm.vue index 9da0725be..0c54a52f8 100644 --- a/src/components/BasicForm/src/BasicForm.vue +++ b/src/components/BasicForm/src/BasicForm.vue @@ -15,6 +15,7 @@ :schema="formSchema" :is-col="true" @opensearchTable="opensearchTable" + @clearSearchInput="clearSearchInput" @onChange="onChange" @onBlur="onBlur" @onEnter="onEnter" @@ -376,6 +377,9 @@ const opensearchTable = ( message.warning(searchCondition[i].message?searchCondition[i].message:'前置条件未选择!') return } + }else if(searchCondition[i].isTableRowValue){ + //查询当前table表数据的值 + _searchCondition[searchCondition[i].key] = row[searchCondition[i].value] } else { // 扩展 转换为筛选条件进行查询 if (searchCondition[i].isSearch) { @@ -410,7 +414,9 @@ const opensearchTable = ( ) } - +const clearSearchInput = (field)=>{ + emit('clearSearchInput',field) +} const sumFormDataByTable = () => { if(props.sumFormDataField){ const sumObject = {} @@ -600,7 +606,8 @@ const emit = defineEmits([ 'onEnter', 'inputNumberChange', 'formFormDateChange', - 'footButtonClick' + 'footButtonClick', + 'clearSearchInput' ]) //普通下拉改变事件 const formSelectChange = (field, val, row) => { diff --git a/src/components/Detail/src/Detail.vue b/src/components/Detail/src/Detail.vue index 27d53e1c1..d3308ecf0 100644 --- a/src/components/Detail/src/Detail.vue +++ b/src/components/Detail/src/Detail.vue @@ -27,7 +27,7 @@
- + - - + - [] - }, + }, //展示附件组件的tab标签 - annexAliasLabel: { - type: String, + annexAlias: { + type: Object, required: false, - default: '附件' + default: ()=>({ + label: '附件', + showDownload:false, + hiddenDelete:false + }) }, + // 是否是基础数据 展现详情顶部表单 isBasic: { type: Boolean, @@ -383,7 +392,7 @@ if (props.isBasic == true) { } const otherList = [...props.annexTable,{ - label:props.annexAliasLabel, + label:props.annexAlias.label, prop:'Annex' },{ label:'备注', @@ -400,10 +409,13 @@ if (!tabsList.value || tabsList.value && tabsList.value.length == otherList.leng prop: 'Detail' }) } -tabsList.value.unshift({ +if(!props.isBasic){ + tabsList.value.unshift({ label: '主数据', prop: 'Descriptions' -}) + }) +} + // Tabs const tabRef = ref() @@ -463,7 +475,9 @@ const getAnnexFileList = async (row:id) => { tableName: item?.tableName || '', annexList, hasSubDetail:item.hasSubDetail||false, - subDetailTableData:item.subDetailTableData + subDetailTableData:item.subDetailTableData, + showDownload:item.showDownload||false, // 是否展示下载按钮 + hiddenDelete:item.hiddenDelete || false, // 是否展示删除按钮 }) if(item?.subDetailTableData){ const { tableObject:subTableObject, tableMethods:subTableMethods } = useTable({ diff --git a/src/components/Form/src/Form.vue b/src/components/Form/src/Form.vue index 7aa98c2a1..2c031b91e 100644 --- a/src/components/Form/src/Form.vue +++ b/src/components/Form/src/Form.vue @@ -54,7 +54,7 @@ export default defineComponent({ vLoading: propTypes.bool.def(false), labelPosition: propTypes.string.def('left'), }, - emits: ['register','opensearchTable', 'onChange', 'onBlur','onEnter'], + emits: ['register','opensearchTable','clearSearchInput', 'onChange', 'onBlur','onEnter'], setup(props, { slots, expose, emit }) { // element form 实例 const elFormRef = ref>() @@ -124,6 +124,9 @@ export default defineComponent({ emit('opensearchTable',field, searchField, searchTitle, searchAllSchemas, searchPage, searchCondition,multiple) } + const clearSearchInput = (field) => { + emit('clearSearchInput') + } expose({ setValues, formModel, @@ -258,6 +261,7 @@ export default defineComponent({ }else{ formModel.value[item.field] = '' } + clearSearchInput(item.field) }}> ) @@ -292,6 +296,7 @@ export default defineComponent({ }else{ formModel.value[item.field] = '' } + clearSearchInput(item.field) }}> ) diff --git a/src/components/Search/src/Search.vue b/src/components/Search/src/Search.vue index 78865acf7..3dd5b5ff3 100644 --- a/src/components/Search/src/Search.vue +++ b/src/components/Search/src/Search.vue @@ -66,8 +66,23 @@ const newSchema = computed(() => { } ]) } + updateSort(schema) return schema }) +const updateSort= (val)=>{ + val.forEach(item=>{ + if(!item.sortSearchDefault){ + if(item.field=="action"){ + item.sortSearchDefault = 9999 // 查询重置等操作按钮 + }else{ + item.sortSearchDefault = 999 // 默认999 + } + } + }) + val.sort((column1,column2)=>{ + return column1.sortSearchDefault - column2.sortSearchDefault + }) +} const { register, elFormRef, methods } = useForm({ model: props.model || {} diff --git a/src/components/Table/src/Table.vue b/src/components/Table/src/Table.vue index a7a988359..97a05b433 100644 --- a/src/components/Table/src/Table.vue +++ b/src/components/Table/src/Table.vue @@ -250,18 +250,18 @@ export default defineComponent({ // 默认排序 const updateSort= (val)=>{ val.forEach(item=>{ - if(!item.sortDefault){ + if(!item.sortTableDefault){ if(item.fixed=='left'){ - item.sortDefault = 0 + item.sortTableDefault = 0 }else if(item.fixed=='right'){ - item.sortDefault = 9999 + item.sortTableDefault = 9999 }else{ - item.sortDefault = 999 // 默认999 + item.sortTableDefault = 999 // 默认999 } } }) val.sort((column1,column2)=>{ - return column1.sortDefault - column2.sortDefault + return column1.sortTableDefault - column2.sortTableDefault }) } diff --git a/src/components/TableForm/src/TableForm.vue b/src/components/TableForm/src/TableForm.vue index 131269e58..07d517be8 100644 --- a/src/components/TableForm/src/TableForm.vue +++ b/src/components/TableForm/src/TableForm.vue @@ -65,7 +65,7 @@ :placeholder="headerItem?.tableForm?.placeholder || '请输入' + headerItem.label" :disabled="headerItem?.tableForm?.disabled ? true: headerItem?.tableForm?.isInpuFocusShow ? true : false" style="flex:1" - @blur="inputStringBlur(headerItem.field, $event, row)" + @blur="inputStringBlur(headerItem.field, row[headerItem.field], row)" /> diff --git a/src/components/rowDrop/index.vue b/src/components/rowDrop/index.vue index a8333f833..20eecf240 100644 --- a/src/components/rowDrop/index.vue +++ b/src/components/rowDrop/index.vue @@ -202,18 +202,18 @@ const initSelectSta = () => { } const updateSort= (val)=>{ val.forEach(item=>{ - if(!item.sortDefault){ + if(!item.sortTableDefault){ if(item.fixed=='left'){ - item.sortDefault = 0 + item.sortTableDefault = 0 }else if(item.fixed=='right'){ - item.sortDefault = 9999 + item.sortTableDefault = 9999 }else{ - item.sortDefault = 999 // 默认999 + item.sortTableDefault = 999 // 默认999 } } }) val.sort((column1,column2)=>{ - return column1.sortDefault - column2.sortDefault + return column1.sortTableDefault - column2.sortTableDefault }) } // 更新主列表字段 diff --git a/src/hooks/web/useCrudSchemas.ts b/src/hooks/web/useCrudSchemas.ts index 1028821e3..f74c14467 100644 --- a/src/hooks/web/useCrudSchemas.ts +++ b/src/hooks/web/useCrudSchemas.ts @@ -140,7 +140,8 @@ const filterSearchSchema = (crudSchema: CrudSchema[], allSchemas: AllSchemas): F component, ...schemaItem.search, field: schemaItem.field, - label: schemaItem.search?.label || schemaItem.label + label: schemaItem.search?.label || schemaItem.label, + sortSearchDefault: schemaItem.sortSearchDefault || 999, }, { componentProps: comonentProps } ) diff --git a/src/layout/components/CategoryHeader.vue b/src/layout/components/CategoryHeader.vue index ef257e4d2..824731f8b 100644 --- a/src/layout/components/CategoryHeader.vue +++ b/src/layout/components/CategoryHeader.vue @@ -60,9 +60,9 @@ export default defineComponent({ return appStore.getCategoryRoutePath }) return () => ( -
+
- .el-sub-menu__title:hover{ + background-color: rgb(241,243,244) !important; +} +.v-menu .el-menu .el-sub-menu.is-active>.el-sub-menu__title{ + background-color: #fff !important; + color:#666 !important; +} + diff --git a/src/store/modules/app.ts b/src/store/modules/app.ts index 269f51189..8aeea337e 100644 --- a/src/store/modules/app.ts +++ b/src/store/modules/app.ts @@ -77,9 +77,9 @@ export const useAppStore = defineStore('app', { // 左侧菜单边框颜色 leftMenuBorderColor: 'inherit', // 左侧菜单背景颜色 - leftMenuBgColor: 'rgb(241,243,244)', + leftMenuBgColor: '#fff', // 左侧菜单浅色背景颜色 - leftMenuBgLightColor: 'rgb(241,243,244)', + leftMenuBgLightColor: '#fff', // 左侧菜单选中背景颜色 leftMenuBgActiveColor: 'rgb(241,243,244)', // 左侧菜单收起选中背景颜色 diff --git a/src/utils/dict.ts b/src/utils/dict.ts index 3d446fbaf..cfc559706 100644 --- a/src/utils/dict.ts +++ b/src/utils/dict.ts @@ -326,5 +326,5 @@ export enum DICT_TYPE { SUPPLIERINVOICE_STATUS = 'supplierinvoice_status', //待开票审核状态 BASIC_TEAM_TYPE='basic_team_type',//班组类型 TAX_RATE_DICT='tax_rate_dict', //税率 - + INTERFACE_STATUS = 'interfaceStatus', // 接口调用信息 接口状态 } diff --git a/src/utils/validator.ts b/src/utils/validator.ts index 4bb0e51d0..7d981354b 100644 --- a/src/utils/validator.ts +++ b/src/utils/validator.ts @@ -21,7 +21,7 @@ export function validateCode(rule, value, callback) { //校验邮箱 export function validateEmail(rule, value, callback) { if (value) { - const mailReg = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/ + const mailReg = /^([a-zA-Z0-9_-]+.)+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-]+.)+/ if (mailReg.test(value)) { callback() } else { @@ -315,7 +315,18 @@ export function validateTwoNum(rule, value, callback) { } callback() } +// 小数点前位数不得大于6位 +export function validateNumSix(rule, value, callback) { + if (value) { + if (value.split('.')[0].length > 6) {// 校验value值不能大于10000 + callback(new Error('版本号小数点前位数不得大于6')) + }else{ + callback() + } + } + callback() +} // 数字格式 小数点后两位 小数点前保留五位 export function validateTwoNumThree(rule, value, callback) { @@ -792,5 +803,6 @@ export default { validateChargeperson, validateYS, validateMaxNumber5, - validatePercent + validatePercent, + validateNumSix } diff --git a/src/views/mes/orderDay/components/orderDetail.vue b/src/views/mes/orderDay/components/orderDetail.vue index b2901483c..486efad04 100644 --- a/src/views/mes/orderDay/components/orderDetail.vue +++ b/src/views/mes/orderDay/components/orderDetail.vue @@ -199,7 +199,7 @@ const emit = defineEmits([ ]) //监视属性 -watch() +//watch() \ No newline at end of file diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts index 92b0517ce..4541e64ad 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverRequestMain.data.ts @@ -58,6 +58,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( form: { // labelMessage: '信息提示说明!!!', componentProps: { + enterSearch: true, isSearchList: true, // 开启查询弹窗 searchListPlaceholder: '请选择供应商代码', // 输入框占位文本 searchField: 'code', // 查询弹窗赋值字段 @@ -81,6 +82,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( label: '要货计划单号', field: 'ppNumber', sort: 'custom', + isTable:false, table: { width: 150 }, @@ -117,6 +119,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( label: '联系人姓名', field: 'contactName', sort: 'custom', + isTable:false, table: { width: 150 }, @@ -125,6 +128,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( label: '联系人电话', field: 'contactPhone', sort: 'custom', + isTable:false, table: { width: 150 }, @@ -133,6 +137,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( label: '联系人电子邮件', field: 'contactEmail', sort: 'custom', + isTable:false, table: { width: 150 }, @@ -141,6 +146,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( label: '供应商发货仓库代码', field: 'fromWarehouseCode', sort: 'custom', + isTable:false, table: { width: 150 }, @@ -155,6 +161,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( label: '到仓库代码', field: 'toWarehouseCode', sort: 'custom', + isTable:false, table: { width: 150 }, @@ -164,6 +171,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( label: '到月台代码', field: 'toDockCode', sort: 'custom', + isTable:false, table: { width: 150 }, @@ -173,6 +181,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( label: '时间窗口', field: 'timeWindow', sort: 'custom', + isTable:false, table: { width: 150 }, @@ -189,6 +198,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( table: { width: 180 }, + isTable:false, form: { component: 'DatePicker', componentProps: { @@ -203,6 +213,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( label: '承运商', field: 'carrierCode', sort: 'custom', + isTable:false, table: { width: 150 }, @@ -212,6 +223,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( field: 'transferMode', dictType: DICT_TYPE.TRANSFER_MODE, sort: 'custom', + isTable:false, table: { width: 150 }, @@ -220,6 +232,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( label: '车牌号', field: 'vehiclePlateNumber', sort: 'custom', + isTable:false, table: { width: 150 }, @@ -255,6 +268,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( dateFormat: 'YYYY-MM-DD HH:mm:ss' }, sort: 'custom', + isTable:false, table: { width: 180 }, @@ -273,6 +287,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( label: '创建者', field: 'creator', sort: 'custom', + isTable:false, table: { width: 150 }, @@ -286,6 +301,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( dateFormat: 'YYYY-MM-DD HH:mm:ss' }, sort: 'custom', + isTable:false, table: { width: 180 }, @@ -308,6 +324,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( dateFormat: 'YYYY-MM-DD HH:mm:ss' }, sort: 'custom', + isTable:false, table: { width: 180 }, @@ -352,7 +369,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( dictClass: 'string', isTable: true, isForm:false, - isSearch: true, + isSearch: false, sort: 'custom', table: { width: 150 @@ -372,6 +389,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( dateFormat: 'YYYY-MM-DD HH:mm:ss' }, sort: 'custom', + isTable:false, table: { width: 180 }, @@ -393,6 +411,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( table: { width: 150 }, + isTable:false, isForm: false }, { @@ -400,7 +419,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( field: 'autoCommit', dictType: DICT_TYPE.TRUE_FALSE, dictClass: 'string', - isTable: true, + isTable:false, sort: 'custom', isForm:false, table: { @@ -421,7 +440,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( field: 'autoAgree', dictType: DICT_TYPE.TRUE_FALSE, dictClass: 'string', - isTable: true, + isTable: false, sort: 'custom', table: { width: 150 @@ -442,7 +461,7 @@ export const SupplierdeliverRequestMain = useCrudSchemas(reactive( field: 'autoExecute', dictType: DICT_TYPE.TRUE_FALSE, dictClass: 'string', - isTable: true, + isTable: false, sort: 'custom', table: { width: 150 @@ -553,12 +572,13 @@ export const SupplierdeliverRequestMainRules = reactive({ */ export const SupplierdeliverRequestDetail = useCrudSchemas(reactive([ { - label: '订单号', + label: '采购订单号', field: 'poNumber', sort: 'custom', table: { width: 150 }, + isSearch:true, form: { // labelMessage: '信息提示说明!!!', componentProps: { @@ -625,6 +645,7 @@ export const SupplierdeliverRequestDetail = useCrudSchemas(reactive([ label: '创建者', field: 'creator', sort: 'custom', - sortDefault:1000, + sortTableDefault:1000, table: { width: 150 }, @@ -374,7 +374,7 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive([ label: '创建时间', field: 'createTime', isTable: true, - sortDefault:1001, + sortTableDefault:1001, formatter: dateFormatter, detail: { dateFormat: 'YYYY-MM-DD HH:mm:ss' @@ -387,7 +387,7 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive([ { label: '采购审批人', field: 'procurementCreator', - sortDefault:1002, + sortTableDefault:1002, sort: 'custom', table: { width: 150 @@ -397,7 +397,7 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive([ { label: '采购审批时间', field: 'procurementCreateTime', - sortDefault:1003, + sortTableDefault:1003, isTable: true, formatter: dateFormatter, detail: { @@ -412,7 +412,7 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive([ { label: '财务审批用户名', field: 'financialCreator', - sortDefault:1004, + sortTableDefault:1004, sort: 'custom', table: { width: 150 @@ -422,7 +422,7 @@ export const SupplierinvoiceRecordMain = useCrudSchemas(reactive([ { label: '财务审批时间', field: 'financialCreateTime', - sortDefault:1005, + sortTableDefault:1005, isTable: true, formatter: dateFormatter, detail: { diff --git a/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue b/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue index a6b533ffa..8c1efe249 100644 --- a/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue +++ b/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue @@ -88,7 +88,9 @@ prop: 'Annex', tableName:'waybill' }]" - annexAliasLabel="其他附件" + :annexAlias="{ + label:'其他附件' + }" :otherHeadButttonData="[{ label: '打印明细', name: 'printing', @@ -238,8 +240,8 @@ // 列表头部按钮 const HeadButttondata = [ defaultButtons.defaultAddBtn({ hasPermi: 'wms:supplierinvoice-request-main:create' }), // 新增 - defaultButtons.defaultImportBtn(null), // 导入 - defaultButtons.defaultExportBtn(null), // 导出 + defaultButtons.defaultImportBtn({hasPermi: 'wms:supplierinvoice-request-main:import'}), // 导入 + defaultButtons.defaultExportBtn({hasPermi: 'wms:supplierinvoice-request-main:export'}), // 导出 defaultButtons.defaultFreshBtn(null), // 刷新 defaultButtons.defaultFilterBtn(null), // 筛选 defaultButtons.defaultSetBtn(null), // 设置 @@ -291,8 +293,8 @@ return [] } return [ - defaultButtons.mainListPurchasePlanOpeBtn({ hide: isShowMainButton(row, ['1','6']) }), // 打开 - defaultButtons.mainListPlanSubBtn({ hide: isShowMainButton(row, ['1','6']) }), // 提交审批 + defaultButtons.mainListPurchasePlanOpeBtn({ hide: isShowMainButton(row, ['1','6']) ,hasPermi: 'wms:supplierinvoice-request-main:open'}), // 打开 + defaultButtons.mainListPlanSubBtn({ hide: isShowMainButton(row, ['1','6']),hasPermi: 'wms:supplierinvoice-request-main:sub' }), // 提交审批 { label: '采购通过', name: 'purchase_mainPlanSub', @@ -300,7 +302,7 @@ type: 'primary', icon: '', color: '', - hasPermi: '', + hasPermi: 'wms:supplierinvoice-request-main:app', link: true, // 文本展现按钮 },{ label: '采购驳回', @@ -309,7 +311,7 @@ type: 'danger', color: '', link: true, // 文本展现按钮 - hasPermi: '' + hasPermi: 'wms:supplierinvoice-request-main:rej' }, { label: '供应商确认', @@ -318,7 +320,7 @@ type: 'danger', color: '', link: true, // 文本展现按钮 - hasPermi: '' + hasPermi: 'wms:supplierinvoice-request-main:invoiceSentOut' }, { label: '财务通过', @@ -327,7 +329,7 @@ type: 'primary', icon: '', color: '', - hasPermi: '', + hasPermi: 'wms:supplierinvoice-request-main:financeApp', link: true, // 文本展现按钮 },{ label: '财务驳回', @@ -336,23 +338,10 @@ type: 'danger', color: '', link: true, // 文本展现按钮 - hasPermi: '' + hasPermi: 'wms:supplierinvoice-request-main:financeRej' }, - // defaultButtons.mainListPlanAppBtn({ hide: isShowMainButton(row, ['2']) }), // 审批通过 - //defaultButtons.mainListPlanTurBtn({ hide: isShowMainButton(row, ['2']) }), // 驳回按钮 defaultButtons.mainListEditBtn({ hasPermi: 'wms:supplierinvoice-request-main:update' , hide: isShowMainButton(row, ['1','8','6'])}), // 编辑 - defaultButtons.mainListPurchasePlanCloBtn({ hide: isShowMainButton(row, ['1','8','6']) }), // 关闭 - // 生成记录 - // { - // label: '处理', - // name: 'genRecords', - // hide: isShowMainButton(row, ['3']), - // type: 'primary', - // icon: '', - // color: '', - // hasPermi: '', - // link: true, // 文本展现按钮 - // }, + defaultButtons.mainListPurchasePlanCloBtn({ hasPermi: 'wms:supplierinvoice-request-main:close' ,hide: isShowMainButton(row, ['1','8','6']) }), // 关闭 // defaultButtons.mainListDeleteBtn({hasPermi:'wms:supplierinvoice-request-main:delete'}), // 删除 ] } @@ -666,10 +655,10 @@ const importSuccess = () => { handleDocumentPrint(clicKRowId.value) }else if(val === 'printing-all'){ //打印全部发货单 - + handlePrintAll(clicKRowId.value) }else if(val === 'export-detail'){ console.log("导出明细:",clicKRowId.value) - handleDetailExport() + handleDetailExport(clicKRowId.value) } } @@ -693,7 +682,10 @@ const importSuccess = () => { await message.exportConfirm() // 发起导出导出明细 exportLoadingDetail.value = true - const data = await SupplierinvoiceRequestMainApi.exportSupplierinvoiceRequestDetail(masterId) + let params = { + masterId: masterId + } + const data = await SupplierinvoiceRequestMainApi.exportSupplierinvoiceRequestDetail(params) download.excel(data, '供应商发票申请明细.xlsx') } catch { } finally { @@ -715,6 +707,18 @@ const importSuccess = () => { window.open(documentSrc.value + '&id=' + id) } + const handlePrintAll = async (masterId) => { + // 打印 + SupplierinvoiceRequestMainApi.printSupplierRecordByMasterId(masterId).then(res =>{ + if(res && res.length > 0){ + for(let i=0;i { getList() diff --git a/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts b/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts index 76534660f..fd31f58fb 100644 --- a/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts +++ b/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/supplierinvoiceRequestMain.data.ts @@ -414,7 +414,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive( table: { width: 150 }, - sortDefault:1001, + sortTableDefault:1001, isForm: false, }, { @@ -422,7 +422,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive( field: 'createTime', isTable: true, formatter: dateFormatter, - sortDefault:1000, + sortTableDefault:1000, detail: { dateFormat: 'YYYY-MM-DD HH:mm:ss' }, @@ -468,7 +468,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive( label: '采购审批人', field: 'procurementCreator', sort: 'custom', - sortDefault:1003, + sortTableDefault:1003, table: { width: 150 }, @@ -478,7 +478,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive( label: '采购审批时间', field: 'procurementCreateTime', isTable: true, - sortDefault:1004, + sortTableDefault:1004, formatter: dateFormatter, detail: { dateFormat: 'YYYY-MM-DD HH:mm:ss' @@ -502,7 +502,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive( label: '财务审批时间', field: 'financialCreateTime', isTable: true, - sortDefault:1005, + sortTableDefault:1005, formatter: dateFormatter, detail: { dateFormat: 'YYYY-MM-DD HH:mm:ss' @@ -518,7 +518,7 @@ export const SupplierinvoiceRequestMain = useCrudSchemas(reactive( field: 'supplierCreator', sort: 'custom', isTable:false, - sortDefault:1006, + sortTableDefault:1006, table: { width: 180 }, diff --git a/src/views/wms/supplierManage/supplierinvoiceInvoiced/index.vue b/src/views/wms/supplierManage/supplierinvoiceInvoiced/index.vue index 813a084f4..d96f5c0be 100644 --- a/src/views/wms/supplierManage/supplierinvoiceInvoiced/index.vue +++ b/src/views/wms/supplierManage/supplierinvoiceInvoiced/index.vue @@ -152,16 +152,16 @@ const butttondata = (row) =>{ type: 'primary', color: '', link: true, // 文本展现按钮 - hasPermi: '' + hasPermi: 'wms:supplierinvoice-invoiced:agree' }, { - label: '审核拒绝', + label: '作废', name: 'refuse', hide: isShowMainButton(row, ['1']), type: 'danger', color: '', link: true, // 文本展现按钮 - hasPermi: '' + hasPermi: 'wms:supplierinvoice-invoiced:refuse' } ] } @@ -172,8 +172,10 @@ const buttonTableClick = async (val, row) => { openForm('update', row) } else if (val == 'delete') { // 删除 handleDelete(row.id) - } else if(val == 'agree'){ + } else if(val == 'agree'){//审核通过 handleAgree(row.id) + } else if(val == 'refuse'){//作废 + handleRefuse(row.id) } }