Browse Source

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

master_hella_20240701
zhaoxuebing 5 months ago
parent
commit
90065a7a70
  1. 8
      .env.development
  2. 5
      src/api/mes/processroute/index.ts
  3. 35
      src/views/mes/processroute/components/configDialog.vue
  4. 47
      src/views/wms/basicDataManage/labelManage/callmaterials/index.vue
  5. 39
      src/views/wms/inventoryjobManage/packageManage/packageoverMain/packageoverRetrospect/index.vue
  6. 10
      src/views/wms/inventoryjobManage/packageManage/packageoverMain/packageoverRetrospect/packageoverRetrospect.data.ts
  7. 43
      src/views/wms/issueManage/repleinsh/repleinshJobMain/repleinshJobMain.data.ts
  8. 43
      src/views/wms/purchasereceiptManage/putaway/putawayJobMain/putawayJobMain.data.ts
  9. 6
      src/views/wms/purchasereceiptManage/supplierdeliver/purchasePlanMain/index.vue
  10. 6
      src/views/wms/purchasereceiptManage/supplierdeliver/purchasePlanMain/purchasePlanMain.data.ts

8
.env.development

@ -4,10 +4,10 @@ NODE_ENV=development
VITE_DEV=false
# 请求路径
VITE_BASE_URL='http://localhost:12080'
VITE_BASE_URL='http://192.168.0.108:12080'
# 上传路径
VITE_UPLOAD_URL='http://localhost:12080/api/admin-api/infra/file/upload'
VITE_UPLOAD_URL='http://192.168.0.108:12080/api/admin-api/infra/file/upload'
# 接口前缀
VITE_API_BASEPATH=/dev-api
@ -31,7 +31,7 @@ VITE_SOURCEMAP=false
VITE_OUT_DIR=dist
# 自定义接口路径
VITE_INTERFACE_URL='http://localhost:12080/magic/web/index.html'
VITE_INTERFACE_URL='http://192.168.0.108:12080/magic/web/index.html'
# 积木报表请求路径
VITE_JMREPORT_BASE_URL='http://localhost:12080'
VITE_JMREPORT_BASE_URL='http://192.168.0.108:12080'

5
src/api/mes/processroute/index.ts

@ -30,6 +30,11 @@ export const getProcessroutePage = async (params) => {
export const getProcessroute = async (id: number) => {
return await request.get({ url: `/mes/processroute/get?id=` + id })
}
// 查询工艺路线定义的工序列表
export const getProcessrouteNodeList = async (code:any) => {
return await request.get({ url: `/mes/processrouteNodeDetail/getRouteNodes?code=`+code })
}
// 新增工艺路线定义
export const createProcessroute = async (data: ProcessrouteVO) => {

35
src/views/mes/processroute/components/configDialog.vue

@ -145,7 +145,6 @@ import { start_node, end_node, createGraph, getNewNode } from './graphbase.data'
import {ProcessSearch} from '../../publicUtil/processSearch.data'
import * as ProcessrouteApi from '@/api/mes/processroute'
import { Graph } from '@antv/x6'
import { get } from 'http'
const graphContainer = ref<HTMLElement | null>(null)
defineOptions({ name: 'ProcessRouteConfig' })
const isShowDrawer = ref(false)
@ -234,11 +233,12 @@ const openDetail = (row: any) => {
materialData.value = []
mouldData.value = []
workStationList.value = []
graph.value.on('node:click', ({ e, x, y, node, view }) => {
graph.value.on('node:dblclick', ({ e, x, y, node, view }) => {
nodeClick(e, x, y, node, view)
})
graph.value.fromJSON(graphJson.cells)
})
getProcessList(rowData.value.processrouteCode)
getItembasicInfo(rowData.value.productCode)
getRemarkList()
getFileList()
@ -275,17 +275,24 @@ const getPatternPage = async (code) => {
const getWorkstationPage = async (code) => {
return await ProcessrouteApi.getWorkstationPage(code);
}
const processListParmas = ref({
name: '',
workshopCode: '',
productionLineCode:'',
pageNum: 1,
pageSize: 50
})
/**获取工序列表 */
const getProcessList = async () => {
const res = await ProcessrouteApi.getProcessList(processListParmas.value)
processData.value = res.list
// const processListParmas = ref({
// name: '',
// workshopCode: '',
// productionLineCode:'',
// pageNum: 1,
// pageSize: 50
// })
// /** */
// const getProcessList = async () => {
// const res = await ProcessrouteApi.getProcessList(processListParmas.value)
// processData.value = res.list
// //return res
// }
/**获取工艺路线定义的工序列表 */
const getProcessList = async (code) => {
console.log('code',code)
const res = await ProcessrouteApi.getProcessrouteNodeList(code)
processData.value = res
//return res
}
//
@ -353,7 +360,7 @@ defineExpose({ openDetail, createGraph }) // 提供 open 方法,用于打开
onMounted?.(() => {
//registerNodes()
getProcessList()
//getProcessList()
})
//
const saveResult = async () => {

47
src/views/wms/basicDataManage/labelManage/callmaterials/index.vue

@ -16,7 +16,7 @@
<!-- 列表 -->
<ContentWrap>
<Table
<Table ref="tableRef" :selection="true"
:columns="tableColumns"
:data="tableObject.tableList"
:loading="tableObject.loading"
@ -26,6 +26,7 @@
v-model:pageSize="tableObject.pageSize"
v-model:currentPage="tableObject.currentPage"
v-model:sort="tableObject.sort"
@getSelectionRows="getSelectionRows"
>
<template #itemCode="{row}">
<el-button type="primary" link @click="openDetail(row, '代码', row.itemCode)">
@ -111,6 +112,7 @@ const HeadButttondata = [
defaultButtons.defaultAddBtn({hasPermi:'wms:callmaterials:create'}), //
defaultButtons.defaultImportBtn({hasPermi:'wms:callmaterials:import'}), //
defaultButtons.defaultExportBtn({hasPermi:'wms:callmaterials:export'}), //
defaultButtons.mainLisSelectiontPointBtn(null), //
defaultButtons.defaultFreshBtn(null), //
defaultButtons.defaultFilterBtn(null), //
defaultButtons.defaultSetBtn(null), //
@ -137,7 +139,9 @@ const buttonBaseClick = (val, item) => {
} else if (val == 'refresh') { //
getList()
} else if (val == 'filtrate') { //
} else { //
} else if (val=='selection_point'){//
handleSelectionPoint()
}else { //
console.log('其他按钮', item)
}
}
@ -229,6 +233,7 @@ const handleExport = async () => {
} finally {
exportLoading.value = false
}
}
const BASE_URL = import.meta.env.VITE_JMREPORT_BASE_URL
@ -237,7 +242,14 @@ const src = ref(BASE_URL + '/jmreport/view/924811818898698240?token=' + getAcces
const handlePoint = async (row) => {
window.open(src.value+'&relateNumber='+row.id)
}
//
const handleSelectionPoint = ()=>{
let rows:any = []
selectionRows.value.forEach(item=>{
rows = [...rows,...item.selectionRows.map(item1=>item1.id)]
})
console.log('批量打印',rows)
}
/** 导入 */
const importFormRef = ref()
const handleImport = () => {
@ -262,6 +274,35 @@ const searchFormClick = (searchData) => {
getList() //
}
watch(
() => tableObject.tableList,
() => {
const currentRows = selectionRows.value.find(item=>item.currentPage==tableObject.currentPage)
if(currentRows){
nextTick(() => {
currentRows.selectionRows.forEach(item=>{
tableRef.value.toggleRowSelection(item,true)
})
})
}
}
)
const selectionRows = ref<any>([])
const tableRef = ref()
const getSelectionRows = (currentPage,currentPageSelectionRows) => {
console.log("getSelectionRows",currentPage,currentPageSelectionRows)
const currentRows = selectionRows.value.find(item=>item.currentPage==currentPage)
if(currentRows){
currentRows.selectionRows = currentPageSelectionRows
}else{
selectionRows.value.push({
currentPage,
selectionRows:currentPageSelectionRows
})
}
}
/** 初始化 **/
onMounted(async () => {
getList()

39
src/views/wms/inventoryjobManage/packageManage/packageoverMain/packageoverRetrospect/index.vue

@ -32,6 +32,9 @@
<span>{{ row.number }}</span>
</el-button>
</template>
<template #action="{ row }">
<ButtonBase :Butttondata="[defaultButtons.mainListPointBtn(null)]" @button-base-click="buttonTableClick($event,row)" />
</template>
</Table>
</ContentWrap>
@ -42,9 +45,11 @@
<script setup lang="ts">
import download from '@/utils/download'
import { getAccessToken } from '@/utils/auth'
import { PackageoverRetrospect } from './packageoverRetrospect.data'
import * as PackageoverRetrospectApi from '@/api/wms/packageoverRetrospect'
import * as defaultButtons from '@/utils/disposition/defaultButtons'
import * as PackageApi from '@/api/wms/package'
defineOptions({ name: 'PackageoverRetrospect' })
@ -77,7 +82,39 @@ const HeadButttondata = [
defaultButtons.defaultFilterBtn(null), //
defaultButtons.defaultSetBtn(null), //
]
// -
const buttonTableClick = async (val, row) => {
if (val == 'point') { //
handlePoint(row)
}
}
//
const handlePoint = async (row) => {
//
let labelType = ''
await PackageApi.getPackagePage({
requestNumber: row.number
}).then((res) => {
if(res.list.length > 0) {
if (res.list[0].productionLineCode != null) {
labelType = 'zz'
} else {
labelType = 'cg'
}
}
}).catch(err => {
console.log(err)
})
const BASE_URL = import.meta.env.VITE_JMREPORT_BASE_URL
//
if (labelType == 'cg') {
const src = ref(BASE_URL + '/jmreport/view/922729953438072832?token=' + getAccessToken())
window.open(src.value+'&request_number='+row.number)
} else {
const src = ref(BASE_URL + '/jmreport/view/922734157577715712?token=' + getAccessToken())
window.open(src.value+'&request_number='+row.number)
}
}
//
const buttonBaseClick = (val, item) => {
if (val == 'export') { //

10
src/views/wms/inventoryjobManage/packageManage/packageoverMain/packageoverRetrospect/packageoverRetrospect.data.ts

@ -405,5 +405,15 @@ export const PackageoverRetrospect = useCrudSchemas(reactive<CrudSchema[]>([
valueFormat: 'x',
}
},
},
{
label: '操作',
field: 'action',
isDetail: false,
isForm: false ,
table: {
width: 150,
fixed: 'right'
}
}
]))

43
src/views/wms/issueManage/repleinsh/repleinshJobMain/repleinshJobMain.data.ts

@ -457,6 +457,49 @@ export const RepleinshJobMain = useCrudSchemas(reactive<CrudSchema[]>([
}
},
},
{
label: '物料号',
field: 'code',
sort: 'custom',
table: {
width: 150
},
},
{
label: '来源库位',
field: 'fromLocationCode',
sort: 'custom',
table: {
width: 150
},
},
{
label: '目标库位',
field: 'toLocationCode',
sort: 'custom',
table: {
width: 150
},
},
{
label: '数量',
field: 'qty',
sort: 'custom',
table: {
width: 150
},
},
{
label: '单位',
field: 'unit',
sort: 'custom',
dictType: DICT_TYPE.PACK_UNIT,
dictClass: 'string',
isSearch: false,
table: {
width: 150
},
},
{
label: '创建者',
field: 'creator',

43
src/views/wms/purchasereceiptManage/putaway/putawayJobMain/putawayJobMain.data.ts

@ -487,6 +487,49 @@ export const PutawayJobMain = useCrudSchemas(reactive<CrudSchema[]>([
}
}
},
{
label: '物料号',
field: 'code',
sort: 'custom',
table: {
width: 150
},
},
{
label: '来源库位',
field: 'fromLocationCode',
sort: 'custom',
table: {
width: 150
},
},
{
label: '目标库位',
field: 'toLocationCode',
sort: 'custom',
table: {
width: 150
},
},
{
label: '数量',
field: 'qty',
sort: 'custom',
table: {
width: 150
},
},
{
label: '单位',
field: 'unit',
sort: 'custom',
dictType: DICT_TYPE.PACK_UNIT,
dictClass: 'string',
isSearch: false,
table: {
width: 150
},
},
{
label: '操作',
field: 'action',

6
src/views/wms/purchasereceiptManage/supplierdeliver/purchasePlanMain/index.vue

@ -75,6 +75,7 @@
import * as PurchaseDetailApi from '@/api/wms/purchaseDetail'
import { CACHE_KEY, useCache } from '@/hooks/web/useCache'
import { PurchaseDetail } from '../purchaseMain/purchaseMain.data'
import dayjs from 'dayjs'
//
defineOptions({ name: 'PurchasePlanMain' })
@ -313,6 +314,11 @@ const getSearchTableData = async (number,formField,searchField)=>{
const openForm = async (type : string, row ?: number) => {
tableData.value = [] //
formRef.value.open(type, row)
if('create'==type){
nextTick(async () => {
formRef.value.formRef.setValues({deliveryDate:dayjs().format('YYYY-MM-DD')})
})
}
}
//
const { wsCache } = useCache()

6
src/views/wms/purchasereceiptManage/supplierdeliver/purchasePlanMain/purchasePlanMain.data.ts

@ -412,7 +412,8 @@ export const PurchasePlanDetail = useCrudSchemas(reactive<CrudSchema[]>([
width: 180
},
tableForm: {
isInpuFocusShow: true,
disabled: true,
isInpuFocusShow: false,
searchListPlaceholder: '请选择订单号',
searchField: 'number',
searchTitle: '采购订单信息',
@ -490,7 +491,8 @@ export const PurchasePlanDetail = useCrudSchemas(reactive<CrudSchema[]>([
},
tableForm: {
multiple:true,
isInpuFocusShow: true,
disabled: true,
isInpuFocusShow: false,
searchListPlaceholder: '请选择订单行',
searchField: 'lineNumber',
searchTitle: '采购订单信息',

Loading…
Cancel
Save