From 943ad8a44c863cc155d28210e460a5aaa034e700 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=96=AA=E5=90=8D?= <942005050@qq.com> Date: Sat, 4 May 2024 13:14:21 +0800 Subject: [PATCH 01/14] =?UTF-8?q?=E9=A2=84=E7=94=9F=E4=BA=A7=E8=AE=A1?= =?UTF-8?q?=E5=88=92=E4=BF=AE=E6=94=B9=20bom=E7=89=88=E6=9C=AC=E8=B5=8B?= =?UTF-8?q?=E5=80=BC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../productionManage/productionplan/productionMain/index.vue | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/views/wms/productionManage/productionplan/productionMain/index.vue b/src/views/wms/productionManage/productionplan/productionMain/index.vue index 27bf09a11..b26b59df8 100644 --- a/src/views/wms/productionManage/productionplan/productionMain/index.vue +++ b/src/views/wms/productionManage/productionplan/productionMain/index.vue @@ -122,6 +122,8 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) => const newRow = JSON.parse(JSON.stringify({...tableFormKeys,...item})) tableData.value.push(newRow) }) + } else { + row[formField] = val[0][searchField] } } else { const setV = {} From f3090f60f07df511d1027fd06e76be1722cad99f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=96=AA=E5=90=8D?= <942005050@qq.com> Date: Sat, 4 May 2024 14:16:24 +0800 Subject: [PATCH 02/14] =?UTF-8?q?=E5=8C=85=E8=A3=85=E8=A7=84=E6=A0=BC?= =?UTF-8?q?=E5=8D=95=E4=BD=8D=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../itemManage/packageunit/packageunit.data.ts | 2 +- .../labelManage/callmaterials/callmaterials.data.ts | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/views/wms/basicDataManage/itemManage/packageunit/packageunit.data.ts b/src/views/wms/basicDataManage/itemManage/packageunit/packageunit.data.ts index 398fba678..711c13d61 100644 --- a/src/views/wms/basicDataManage/itemManage/packageunit/packageunit.data.ts +++ b/src/views/wms/basicDataManage/itemManage/packageunit/packageunit.data.ts @@ -82,7 +82,7 @@ export const Packageunit = useCrudSchemas(reactive([ label: '单位', field: 'unit', sort: 'custom', - dictType: DICT_TYPE.PACK_UNIT, + dictType: DICT_TYPE.UOM, dictClass: 'string', isSearch: false, table: { diff --git a/src/views/wms/basicDataManage/labelManage/callmaterials/callmaterials.data.ts b/src/views/wms/basicDataManage/labelManage/callmaterials/callmaterials.data.ts index c80e3011a..eb1e78e45 100644 --- a/src/views/wms/basicDataManage/labelManage/callmaterials/callmaterials.data.ts +++ b/src/views/wms/basicDataManage/labelManage/callmaterials/callmaterials.data.ts @@ -94,9 +94,9 @@ export const Callmaterials = useCrudSchemas(reactive([ } }, { - label: '包装单位', + label: '计量单位', // 发料申请 与当前物料计量单位做匹配 : 原PACK_UNIT 修改:UOM field: 'uom', - dictType: DICT_TYPE.PACK_UNIT, + dictType: DICT_TYPE.UOM, dictClass: 'string', isTable: true, sort: 'custom', From e77199fd213126856b66cf42c4419fe6680a0b89 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=96=AA=E5=90=8D?= <942005050@qq.com> Date: Mon, 6 May 2024 07:52:54 +0800 Subject: [PATCH 03/14] =?UTF-8?q?=E6=B7=BB=E5=8A=A0scp=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.test-scp | 37 +++++++++++++++++++++++++++++++++++ nginx-scp.conf | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 90 insertions(+) create mode 100644 .env.test-scp create mode 100644 nginx-scp.conf diff --git a/.env.test-scp b/.env.test-scp new file mode 100644 index 000000000..0cc655e62 --- /dev/null +++ b/.env.test-scp @@ -0,0 +1,37 @@ +# 生产环境 +NODE_ENV=test + +VITE_DEV=false + +# 请求路径 +VITE_BASE_URL='http://dev.ccwin-in.com:25400/api' + +# 上传路径 +VITE_UPLOAD_URL='http://dev.ccwin-in.com:25400/api/admin-api/infra/file/upload' + +# 接口前缀 +VITE_API_BASEPATH= + +# 接口地址 +VITE_API_URL=/admin-api + +# 是否删除debugger +VITE_DROP_DEBUGGER=true + +# 是否删除console.log +VITE_DROP_CONSOLE=true + +# 是否sourcemap +VITE_SOURCEMAP=false + +# 打包路径 +VITE_BASE_PATH=/ + +# 输出路径 +VITE_OUT_DIR=sfms3.0 + +# 自定义接口路径 +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/nginx-scp.conf b/nginx-scp.conf new file mode 100644 index 000000000..00a1a93ea --- /dev/null +++ b/nginx-scp.conf @@ -0,0 +1,53 @@ +user root; +worker_processes 2; + +events { + worker_connections 1024; +} + +http { + include mime.types; + charset utf-8,gbk; + default_type application/octet-stream; + log_format main '$remote_addr - $remote_user [$time_local] "$request" ' + '$status $body_bytes_sent "$http_referer" ' + '"$http_user_agent" "$http_x_forwarded_for" "$request_time $upstream_response_time"'; + access_log logs/access.log main; + sendfile on; + #tcp_nopush on; + keepalive_timeout 600s; + client_max_body_size 200m; + gzip on; + gzip_min_length 10k; + gzip_comp_level 9; + gzip_buffers 4 16k; + gzip_types text/plain application/javascript text/css application/xml text/javascript image/jpeg image/gif image/png; + gzip_vary on; + gzip_disable "MSIE [1-6]\."; + upstream sfms3.0 { + server localhost:25311 weight=10 max_fails=3 fail_timeout=10s; + } + server { + listen 25400; + server_name_in_redirect off; + server_name _; + location /api/ { + proxy_pass http://sfms3.0/; + proxy_next_upstream http_500 http_502 http_503 http_504 error timeout invalid_header; + proxy_set_header X-Forwared-For $proxy_add_x_forwarded_for; + proxy_set_header Host $http_host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $http_x_forwarded_for; + } + location /profile/ { + alias /opt/profile/; + index index.html index.htm; + } + location / { + try_files $uri $uri/ /index.html; + root /opt/sfms3.0; + index index.html index.htm; + } + } +} + From c8b3cd170e25560d6dbf6bd58b451a790b55fc9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=96=AA=E5=90=8D?= <942005050@qq.com> Date: Mon, 6 May 2024 08:13:39 +0800 Subject: [PATCH 04/14] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index 304bc3f61..be89b1319 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,7 @@ "dev": "vite", "wyf": "vite --mode wyf", "test": "vite build --mode test", + "test-scp": "vite build --mode test-scp", "hella8": "vite build --mode hella8", "hella9": "vite build --mode hella9", "hella13": "vite build --mode hella13", From 74f2e5a4b3774e49ebb071af6ec13739c5760416 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=96=AA=E5=90=8D?= <942005050@qq.com> Date: Mon, 6 May 2024 08:24:01 +0800 Subject: [PATCH 05/14] =?UTF-8?q?scp=20=E9=85=8D=E7=BD=AE=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile_scp | 7 +++++++ nginx-scp.conf => nginx_scp.conf | 0 2 files changed, 7 insertions(+) create mode 100644 Dockerfile_scp rename nginx-scp.conf => nginx_scp.conf (100%) diff --git a/Dockerfile_scp b/Dockerfile_scp new file mode 100644 index 000000000..700cdf9a9 --- /dev/null +++ b/Dockerfile_scp @@ -0,0 +1,7 @@ +# 设置基础镜像 +FROM win-nginx + +WORKDIR /opt/sfms3.0 +COPY nginx_scp.conf /usr/local/nginx/conf/nginx.conf +# 将dist文件中的内容复制到 /opt/sfms3.0 这个目录下面 +COPY sfms3.0/ /opt/sfms3.0 diff --git a/nginx-scp.conf b/nginx_scp.conf similarity index 100% rename from nginx-scp.conf rename to nginx_scp.conf From 5e83608f89b91c07a3b9bbd302a06dad075944a4 Mon Sep 17 00:00:00 2001 From: yufei0306 <13417315+yufei0306@user.noreply.gitee.com> Date: Mon, 6 May 2024 08:53:45 +0800 Subject: [PATCH 06/14] =?UTF-8?q?=E4=B8=AD=E8=8B=B1=E6=96=87=E9=83=A8?= =?UTF-8?q?=E5=88=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/Form/src/Form.vue | 10 +- src/components/Form/src/helper.ts | 15 +- src/components/Table/src/Table.vue | 10 +- src/locales/en-US.ts | 261 +++++++++++++++++++ src/locales/zh-CN.ts | 269 ++++++++++++++++++++ src/utils/disposition/defaultButtons.ts | 133 +++++----- src/views/home/components/material.vue | 162 ++++++------ src/views/home/components/produce.vue | 116 ++++----- src/views/home/components/product.vue | 146 +++++------ src/views/home/components/supplierIndex.vue | 156 ++++++------ 10 files changed, 920 insertions(+), 358 deletions(-) diff --git a/src/components/Form/src/Form.vue b/src/components/Form/src/Form.vue index 8ecd0fe2b..fdfc8441c 100644 --- a/src/components/Form/src/Form.vue +++ b/src/components/Form/src/Form.vue @@ -22,6 +22,7 @@ import { FormProps } from './types' import { Icon } from '@/components/Icon' import { FormSchema, FormSetPropsType } from '@/types/form' import { Search,CircleClose } from '@element-plus/icons-vue' +const { t } = useI18n() const { getPrefixCls } = useDesign() @@ -321,8 +322,15 @@ export default defineComponent({ } } } + let labelName = item.label || '' + if(item.label){ + labelName = t(`ts.${item.label}`) + if(labelName === 'ts.' + item.label){ + labelName = item.label + } + } return ( - + {{ ...formItemSlots, default: () => { diff --git a/src/components/Form/src/helper.ts b/src/components/Form/src/helper.ts index cdfc8caac..fa01be3fe 100644 --- a/src/components/Form/src/helper.ts +++ b/src/components/Form/src/helper.ts @@ -14,9 +14,20 @@ export const setTextPlaceholder = (schema: FormSchema): PlaceholderModel => { const { t } = useI18n() const textMap = ['Input', 'Autocomplete', 'InputNumber', 'InputPassword'] const selectMap = ['Select', 'SelectV2', 'TimePicker', 'DatePicker', 'TimeSelect', 'TimeSelect'] + + let labelName = schema.label || '' + if(schema.label){ + labelName = t(`ts.${schema.label}`) + if(labelName === 'ts.' + schema.label){ + labelName = ' '+schema.label + }else{ + labelName = ' ' + labelName + } + } + if (textMap.includes(schema?.component as string)) { return { - placeholder: t('common.inputText') + schema.label + placeholder: t('common.inputText') + labelName } } if (selectMap.includes(schema?.component as string)) { @@ -34,7 +45,7 @@ export const setTextPlaceholder = (schema: FormSchema): PlaceholderModel => { } } else { return { - placeholder: t('common.selectText') + schema.label + placeholder: t('common.selectText') + labelName } } } diff --git a/src/components/Table/src/Table.vue b/src/components/Table/src/Table.vue index 97a05b433..24aa4d5dd 100644 --- a/src/components/Table/src/Table.vue +++ b/src/components/Table/src/Table.vue @@ -6,6 +6,7 @@ import { setIndex } from './helper' import { getSlot } from '@/utils/tsxHelper' import type { TableProps } from './types' import { set } from 'lodash-es' +const { t } = useI18n() import { Pagination, TableColumn, TableSetPropsType, TableSlotDefault } from '@/types/table' import { useCache } from '@/hooks/web/useCache' const { wsCache } = useCache() @@ -281,6 +282,11 @@ export default defineComponent({ updateSort(columns) return [...[renderTableExpand()], ...[renderTableSelection()]].concat( (columnsChildren || columns).map((v) => { + const zhName = v.label || '';//中文名称 + let labelName = t(`ts.${v.label}`) + if(labelName === 'ts.' + zhName){ + labelName = zhName + } // 自定生成序号 if (v.type === 'index') { return ( @@ -294,7 +300,7 @@ export default defineComponent({ align={v.align || align} border={v.border || border} headerAlign={v.headerAlign || headerAlign} - label={v.label} + label={labelName} width="65px" > ) @@ -320,7 +326,7 @@ export default defineComponent({ v?.formatter?.(data.row, data.column, data.row[v.field], data.$index) || data.row[v.field], // @ts-ignore - header: () => getSlot(slots, `${v.field}-header`) || v.label + header: () => getSlot(slots, `${v.field}-header`) || labelName }} ) diff --git a/src/locales/en-US.ts b/src/locales/en-US.ts index ae7a3c109..a9cac12c6 100644 --- a/src/locales/en-US.ts +++ b/src/locales/en-US.ts @@ -467,5 +467,266 @@ export default { btn_zoom_in: 'Zoom in', btn_zoom_out: 'Zoom out', preview: 'Preivew' + }, + home:{ + number_orders: 'Number of orders', + number_planned_shipments: 'Number of planned shipments', + number_invoices: 'Number of invoices', + invoice_trend_month: 'Invoice trend for this month', + TOP10_parts_shipped_month: 'TOP10 parts shipped this month', + number_open: 'Nmuber of open', + number_open_plans: 'Number of Open Plans', + number_unreceived_orders: 'Number of Unreceived Orders', + number_total_order: 'Total Order Number', + number_all_plans: 'Number of All Plans', + number_orders_received: 'Number of Orders Received', + single: 'Single', + latest_news : 'Latest News', + number : 'Number', + user_type : 'User Type', + user_number : 'User Number', + template_coding : 'Template Coding', + sender_number : 'Sender Number', + template_content : 'Template Content', + template_parameters : 'Template Parameters', + template_type : 'Template Type', + read : 'Read', + read_time : 'Read Time', + create_time : 'Create Time', + latest_deduction_details: 'Latest Deduction Details', + title: 'Title', + publisher: 'Publisher', + publish_date: 'Publish Date', + month_return_detials:'This month\'s return detials', + document_number:'Document number', + source_package_number:'Source Package Number', + destination_package_number:'Destination Package Number', + source_appliance_number:'Source Appliance Number', + destination_appliance_number:'Destination Appliance Number', + source_batch:'Source Batch', + destination_batch:'Destination Batch', + replace_batch:'Replace batch', + source_location_code:'Source Location Code', + destination_location_code:'Destination Location Code', + source_location_group_code:'Source Location Group Code', + destination_location_group_code:'Destination Location Group Code', + source_location_area_code:'Source Location Area Code', + destination_location_area_code:'Destination Location Area Code', + source_shipper_code:'Source Shipper Code', + destination_shipper_code:'Destination Shipper Code', + inventory_state:'Inventory State', + order_number:'Order Number', + order_line:'Order Line', + cause:'Cause', + unit_price:'Unit Price', + money:'Money', + material_code:'Material Code', + material_name:'Material Name', + material_description1:'Material Description1', + material_description2:'Material Description2', + amount:'Amount', + measuring_unit:'Measuring Unit', + item_cde:'Item Code', + comment:'Comment', + creater:'Creater', + claim_details_month:'Claim Details for This Month', + batch:'Batch', + today_arrival_plan_shipped : 'Today\'s arrival plan(Shipped)', + material_preparation_plan_today_issued: 'Material preparation plan today(Issued)', + call_material_today_issued : 'Call for material today(Issued)', + pcs : 'pcs', + free_library_bits_or_total_library_bits : 'Free library bits/Total library bits', + slack_stock_warning : 'Slack stock warning', + package_number : 'Package Number', + appliance_code : 'Appliance Code', + location_code : 'Location Code', + warehouse_code : 'Warehouse Code', + location_group_code : 'Location Group Code', + location_area_code : 'Location Area Code', + erp_location_code : 'ERP Location Code', + arrival_date : 'Arrival Date', + production_date : 'Production Date', + expiry_date : 'Expiry Date', + shipper_code : 'Shipper Code', + lock_quantity : 'Lock Quantity', + available_quantity : 'Available Quantity', + warehouse_entry_time : 'Warehouse Entry Time', + overstock_warning : 'Overstock warning', + high_and_low_storage_warning : 'High and low storage warning', + waiting_tasks : 'Waiting Tasks', + purchase_return_tasks : 'Purchase Return Tasks', + product_putway_tasks : 'Product Putway Tasks', + purchase_and_receive_tasks : 'Purchase and Receive Tasks', + production_receipt_tasks : 'Production Receipt Tasks', + production_return_tasks : 'Production Return Tasks', + supplement_materials_tasks : 'Supplement Materials Tasks', + product_receiving_tasks : 'Product Receiving Tasks', + send_materials_tasks : 'Send Materials Tasks', + today_production_plan : 'Today\'s production plan', + sequence : 'Sequence', + workshop : 'Workshop', + prouduction_line : 'Prouduction Line', + schedule : 'Schedule', + teams_and_groups : 'Teams and Groups', + intended_date : 'Intended Date', + start_date : 'Start Date', + ending_date : 'Ending Date', + business_type : 'Business Type', + line_side_safety_stock : 'Line side safety stock', + type : 'Type', + laneway : 'Laneway', + goods_shelf : 'Goods Shelf', + line : 'Line', + column : 'Column', + stock_priority : 'Stock Priority', + maximum_load_bearing : 'Maximum Load Bearing', + maximum_area : 'Maximum Area', + maximum_volume : 'Maximum Volume', + user_group_code : 'User Group Code', + inventory_of_finished_products_waiting_to_be_putway : 'Inventory of finished products waiting to be putway', + source_warehouse_code : 'Source Warehouse Code', + apply_time : 'Apply Time', + request_cut_off_time : 'Request cut-off Time', + state : 'State', + department : 'Department', + undertaker_user_name : 'Undertaker User Name', + undertake_time : 'Undertake Time', + source_location_type_range : 'Source Location Type Range', + destination_location_type_range : 'Destination Location Type Range', + destination_warehouse_code : 'Destination Warehouse Code', + source_location_area_code_range : 'Source Location Area Code Range', + destination_location_area_code_range : 'Destination Location Area Code Range', + auto_ccomplete : 'Auto-complete', + modifiable_location : 'Modifiable Location', + modifiable_amount : 'Modifiable Amount', + allow_greater_than_recommended : 'Allow greater than recommended', + allow_less_than_recommended : 'Allow less than recommended', + allow_modify_location_state : 'Allow modify Location state', + allow_continuous_scanning : 'Allow continuous scanning', + allow_partly_completed : 'Allow partly completed', + modifiable_batch : 'Modifiable Batch', + modifiable_casecode : 'Modifiable Casecode', + expiration_time: 'Expiration Time', + effective_time : 'Effective Time', + code : 'Code', + name : 'Name', + }, + ts: { + 代码:'Code', + 全部:'All', + 标准:'Standard', + 委外:'Out-source', + 其它:'Others', + 其他:'Others', + 是否可用:'Available', + 类型:'Type', + 名称:'Name', + 是:'Yes', + 否:'No', + 供应商代码:'Supplier Code', + 物料代码:'Material Code', + 单据号:'Document Number', + 订单类型:'Order Type', + 状态:'State', + 采购订单号:'Purchase Order Number', + 日程:'Schedule', + 离散:'Discrete', + 准备:'Get ready', + 发布:'Punblish', + 关闭:'Close', + 已完成:'Finished', + 发货单号:'Invoice number', + 从批次:'Source Batch', + 到批次:'Destination Batch', + 从包装号:'Source Package Number', + 到包装号:'Destination Package Number', + 从器具号:'Source Appliance Number', + 到器具号:'Destination Appliance Number', + 简称: 'Abbreviation', + 地址:'Address', + 国家:'Country', + 城市:'City', + 电话:'Phone', + 传真:'Fax', + 邮编:'Postcode', + 联系人:'Contact', + 联系人邮件:'Contact Email', + 银行:'Bank', + 币种:'Currency Kind', + 税率:'Tax rate', + 生效时间:'Effective Time', + 失效时间:'Expiration Time', + 供应商物料代码:'Supplier material code', + 供应商计量单位:'Supplier measuring Unit', + 转换率:'Conversion Rate', + 默认收货库位:'Default receiving warehouse location', + 创建人:'Creater', + 创建者:'Creater', + 创建时间:'Create Time', + 备注:'Comment', + 货币:'Currency', + 价格:'Price', + 订单日期:'Order Date', + 行号:'Line Number', + 操作:'Operations', + 计量单位:'Measuring Unit', + // ------ + // 客户代码:'Customer Code', + + }, + btn:{ + 查询:'Query', + 重置:'Reset', + 新增:'Add', + 导入:'Import', + 导出:'Export', + 刷新:'Refresh', + 筛选:'Filter', + 设置:'Settings', + 确定:'Confirm', + 取消:'Cancel', + 操作:'Operations', + 编辑:'Edit', + 删除:'Delete', + 添加附件:'Add Attachment', + 添加筛选条件:'Add Filter', + 关闭:'Close', + 打开:'Open', + 保存:'Save', + 发布:'Punblish', + //-------- + // 单据打印:'Document Print', + // 上传质量报告:'Upload Quality Report', + // 打印标签:'Print Label', + // 发货:'Delivery', + // 生成标签:'Generate Label', + // 发送到货检验申请:'Send Arrival Inspection Application', + // 生成采购上架申请:'Generate Purchase Putaway Application', + // 生成生产计划单:'Generate Production Plan', + // 提交审批:'Submit Approval', + // 审核通过:'Approve', + // 作废:'Invalid', + //-------- + // 生成采购收货申请:'Generate Purchase Receiving Application', + // 生成采购退货申请:'Generate Purchase Return Application', + // 生成生产收货申请:'Generate Production Receiving Application', + // 生成生产退货申请:'Generate Production Return Application', + // 生成生产计划:'Generate Production Plan', + // 上传:'Upload', + // 打印:'Print', + // 打印预览:'Print Preview', + // 打印设置:'Print Settings', + // 打印预览设置:'Print Preview + // 上传图片:'Upload Image', + // 上传文件:'Upload File', + // 上传视频:'Upload Video', + // 上传音频:'Upload Audio', + // 上传其他:'Upload Other', + // 上传图片:'Upload Image', + // 上传文件:'Upload File', + // 上传视频:'Upload Video', + // 上传音频:'Upload Audio', + // 上传其他:'Upload Other', + } } diff --git a/src/locales/zh-CN.ts b/src/locales/zh-CN.ts index 7ae071d67..252664561 100644 --- a/src/locales/zh-CN.ts +++ b/src/locales/zh-CN.ts @@ -460,5 +460,274 @@ export default { btn_zoom_in: '放大', btn_zoom_out: '缩小', preview: '预览' + }, + home:{ + number_orders: '订单数', + number_planned_shipments: '要货计划数', + number_invoices: '发货单数', + invoice_trend_month: '本月发货单趋势', + TOP10_parts_shipped_month: '本月发货零件Top10', + number_open: '开放订单数', + number_open_plans: '开放计划数', + number_unreceived_orders: '未收货订单数', + number_total_order: '全部订单数', + number_all_plans: '全部计划数', + number_orders_received: '已收货订单数', + single: '单', + latest_news : '最新消息', + number : '编号', + user_type : '用户类型', + user_number : '用户编号', + template_coding : '模板编码', + sender_number : '发送人名称', + template_content : '模板内容', + template_parameters : '模板参数', + template_type : '模板类型', + read : '是否已读', + read_time : '阅读时间', + create_time : '创建时间', + + latest_deduction_details: '最新扣分明细', + title: '标题', + publisher: '发布人', + publish_date: '发布日期', + + + month_return_detials:'本月退货明细', + document_number:'单据号', + source_package_number:'从包装号', + destination_package_number:'到包装号', + source_appliance_number:'从器具号', + destination_appliance_number:'到器具号', + source_batch:'从批次', + destination_batch:'到批次', + replace_batch:'替代批次', + source_location_code:'从库位代码', + destination_location_code:'到库位代码', + source_location_group_code:'从库位组代码', + destination_location_group_code:'到库位组代码', + source_location_area_code:'从库区代码', + destination_location_area_code:'到库区代码', + source_shipper_code:'从货主代码', + destination_shipper_code:'到货主代码', + inventory_state:'库存状态', + order_number:'订单号', + order_line:'订单行', + cause:'原因', + unit_price:'单价', + money:'金额', + material_code:'物料代码', + material_name:'物料名称', + material_description1:'物料描述1', + material_description2:'物料描述2', + amount:'数量', + measuring_unit:'计量单位', + item_code:'项目代码', + comment:'备注', + creater:'创建者', + claim_details_month:'本月索赔明细', + batch:'批次', + + today_arrival_plan_shipped : '今日到货计划(已发货)', + material_preparation_plan_today_issued:'今日备料计划(已发料)', + call_material_today_issued:'今日叫料请求(已发料)', + 'pcs' : '个', + free_library_bits_or_total_library_bits : '空闲库位数/总库位数', + + + + slack_stock_warning : '呆滞库存预警', + package_number : '包装号', + appliance_code : '器具代码', + location_code : '库位代码', + warehouse_code : '仓库代码', + location_group_code : '库位组代码', + location_area_code : '库区代码', + erp_location_code : 'ERP库位代码', + arrival_date : '到货日期', + production_date : '生产日期', + expiry_date : '失效日期', + shipper_code : '货主代码', + lock_quantity : '锁定数量', + available_quantity : '可用数量', + warehouse_entry_time : '入库时间', + + + overstock_warning : '超期库存预警', + high_and_low_storage_warning : '高低储预警', + waiting_tasks : '待处理任务', + purchase_return_tasks : '采购退货任务', + product_putway_tasks : '制品上架任务', + purchase_and_receive_tasks : '采购收货任务', + production_receipt_tasks : '生产收料任务', + production_return_tasks : '生产退料', + supplement_materials_tasks : '补料任务', + product_receiving_tasks : '制品收货任务', + send_materials_tasks : '发料任务', + + + today_production_plan : '今日生产计划', + sequence : '顺序', + workshop : '车间', + prouduction_line : '生产线', + schedule : '班次', + teams_and_groups : '班组', + intended_date : '计划日期', + start_date : '开始日期', + ending_date : '结束日期', + business_type : '业务类型', + line_side_safety_stock : '线边安全库存', + + type : '类型', + laneway : '巷道', + goods_shelf : '货架', + line : '行', + column : '列', + stock_priority : '备货优先级', + maximum_load_bearing : '最大承重', + maximum_area : '最大面积', + maximum_volume : '最大体积', + user_group_code : '用户组代码', + inventory_of_finished_products_waiting_to_be_putway : '待上架成品库存', + source_warehouse_code : '从仓库代码', + apply_time : '申请时间', + request_cut_off_time : '要求截止时间', + state : '状态', + department : '部门', + undertaker_user_name : '承接人用户名', + undertake_time : '承接时间', + source_location_type_range : '从库位类型范围', + destination_location_type_range : '到库位类型范围', + destination_warehouse_code : '到仓库代码', + source_location_area_code_range : '从库区代码范围', + destination_location_area_code_range : '到库区代码范围', + auto_complete : '自动完成', + modifiable_location : '允许修改库位', + modifiable_amount : '允许修改数量', + allow_greater_than_recommended : '允许大于推荐数量', + allow_less_than_recommended : '允许小于推荐数量', + allow_modify_location_state : '允许修改库存状态', + allow_continuous_scanning : '允许连续扫描', + allow_partly_completed : '允许部分完成', + modifiable_batch : '允许修改批次', + modifiable_casecode : '允许修改箱码', + expiration_time: '失效时间', + effective_time : '生效时间', + code : '代码', + name : '名称', + }, + ts: { + 代码 : '代码', + 全部 : 'All', + 标准 : '标准', + 委外 : '委外', + 其它 :'其它', + 其他 :'其他', + 是否可用: '是否可用', + 类型 : '类型', + 名称 : '名称', + 是 : '是', + 否 : '否', + 供应商代码: '供应商代码', + 物料代码:'物料代码', + 单据号:'单据号', + 订单类型:'订单类型', + 状态:'状态', + 采购订单号:'采购订单号', + 日程:'日程', + 离散:'离散', + 准备:'准备', + 发布:'发布', + 关闭:'关闭', + 已完成:'已完成', + 发货单号:'发货单号', + 从批次:'从批次', + 到批次:'到批次', + 从包装号:'从包装号', + 到包装号:'到包装号', + 从器具号:'从器具号', + 到器具号:'到器具号', + 简称: '简称', + 地址:'地址', + 国家:'国家', + 城市:'城市', + 电话:'电话', + 传真:'传真', + 邮编:'邮编', + 联系人:'联系人', + 联系人邮件:'联系人邮件', + 银行:'银行', + 币种:'币种', + 税率:'税率', + 生效时间:'生效时间', + 失效时间:'失效时间', + 供应商物料代码:'供应商物料代码', + 供应商计量单位:'供应商计量单位', + 转换率:'转换率', + 默认收货库位:'默认收货库位', + 创建人:'创建人', + 创建者:'创建者', + 创建时间:'创建时间', + 备注:'备注', + 货币:'货币', + 价格:'价格', + 订单日期:'订单日期', + 行号:'行号', + 操作:'操作', + 计量单位:'计量单位', + + }, + btn:{ + 查询:'查询', + 重置:'重置', + 新增:'新增', + 导入:'导入', + 导出:'导出', + 刷新:'刷新', + 筛选:'筛选', + 设置:'设置', + 确定:'确定', + 取消:'取消', + 操作:'操作', + 编辑:'编辑', + 删除:'删除', + 添加附件:'添加附件', + 添加筛选条件:'添加筛选条件', + 关闭:'关闭', + 打开:'关闭', + 保存:'关闭', + 发布:'发布', + ////// + 启用:'启用', + 禁用:'禁用', + 中止:'中止', + 领取:'领取', + 完成:'完成', + 绑定:'绑定', + 重新添加:'重新添加', + 下架:'下架', + 修改:'修改', + 不接受:'不接受', + 接受:'接受', + 承接:'承接', + 放弃:'放弃', + 收货:'收货', + 包装:'包装', + 打印标签:'打印标签', + 批量打印:'批量打印', + 生成采购收货申请:'生成采购收货申请', + 单据打印:'单据打印', + 发送到货检验申请:'发送到货检验申请', + 生成采购上架申请:'生成采购上架申请', + 生成盘点调整申请:'生成盘点调整申请', + 重盘:'重盘', + 监盘:'监盘', + 解冻:'解冻', + 更新检验记录:'更新检验记录', + 使用决策:'使用决策' + + } } + + diff --git a/src/utils/disposition/defaultButtons.ts b/src/utils/disposition/defaultButtons.ts index 0893325bb..0d150fc98 100644 --- a/src/utils/disposition/defaultButtons.ts +++ b/src/utils/disposition/defaultButtons.ts @@ -4,11 +4,12 @@ * @param {*} option * @returns */ +const { t } = useI18n() // 新增按钮 export function defaultAddBtn(option:any) { return __defaultBtnOption(option,{ - label: '新增', + label: t(`btn.新增`).replace('btn.', ''), name: 'add', hide: false, type: 'primary', @@ -21,7 +22,7 @@ export function defaultAddBtn(option:any) { // 导入按钮 export function defaultImportBtn(option:any) { return __defaultBtnOption(option,{ - label: '导入', + label: t(`btn.导入`).replace('btn.', ''), name: 'import', hide: false, type: 'warning', @@ -34,7 +35,7 @@ export function defaultImportBtn(option:any) { // 导出按钮 export function defaultExportBtn(option:any) { return __defaultBtnOption(option,{ - label: '导出', + label: t(`btn.导出`).replace('btn.', ''), name: 'export', hide: false, type: 'success', @@ -78,7 +79,7 @@ export function defaultExportBtn(option:any) { // 刷新按钮 export function defaultFreshBtn(option:any) { return __defaultBtnOption(option,{ - label: '刷新', + label: t(`btn.刷新`).replace('btn.', ''), name: 'refresh', hide: false, type: 'primary', @@ -92,7 +93,7 @@ export function defaultFreshBtn(option:any) { // 重置按钮 export function defaultResetBtn(option:any) { return __defaultBtnOption(option,{ - label: '重置', + label: t(`btn.重置`).replace('btn.', ''), name: 'reset', hide: false, type: 'info', @@ -106,7 +107,7 @@ export function defaultResetBtn(option:any) { // 字段设置 export function defaultSetBtn(option:any) { return __defaultBtnOption(option,{ - label: '设置', + label: t(`btn.设置`).replace('btn.', ''), name: 'set', hide: false, type: 'info', @@ -120,7 +121,7 @@ export function defaultSetBtn(option:any) { // 筛选按钮 export function defaultFilterBtn(option:any) { return __defaultBtnOption(option,{ - label: '筛选', + label: t(`btn.筛选`).replace('btn.', ''), name: 'filtrate', hide: false, type: 'info', @@ -134,7 +135,7 @@ export function defaultFilterBtn(option:any) { // 筛选——查询按钮 export function defaultSearchBtn(option:any) { return __defaultBtnOption(option,{ - label: '搜索', + label: t(`btn.搜索`).replace('btn.', ''), name: 'search', hide: false, type: 'primary', @@ -148,7 +149,7 @@ export function defaultSearchBtn(option:any) { // 筛选——重置按钮 export function defaultSearchResetBtn(option:any) { return __defaultBtnOption(option,{ - label: '重置', + label: t(`btn.重置`).replace('btn.', ''), name: 'searchReset', hide: false, type: 'info', @@ -162,7 +163,7 @@ export function defaultSearchResetBtn(option:any) { // form表单-保存按钮 export function formSaveBtn(option:any) { return __defaultBtnOption(option,{ - label: '保存', + label: t(`btn.保存`).replace('btn.', ''), name: 'save', hide: false, type: 'primary', @@ -176,7 +177,7 @@ export function formSaveBtn(option:any) { // form表单-关闭按钮 export function formCloseBtn(option:any) { return __defaultBtnOption(option,{ - label: '关闭', + label: t(`btn.关闭`).replace('btn.', ''), name: 'close', hide: false, icon: 'ep:close', @@ -189,7 +190,7 @@ export function formCloseBtn(option:any) { // drawer抽屉头部-编辑按钮 export function drawerEditBtn(option:any) { return __defaultBtnOption(option,{ - label: '编辑', + label: t(`btn.编辑`).replace('btn.', ''), name: 'edit', hide: false, type: 'warning', @@ -202,7 +203,7 @@ export function drawerEditBtn(option:any) { // drawer抽屉头部-删除按钮 export function drawerDeleteBtn(option:any) { return __defaultBtnOption(option,{ - label: '删除', + label: t(`btn.删除`).replace('btn.', ''), name: 'delete', hide: false, type: 'danger', @@ -228,7 +229,7 @@ export function drawerDeleteBtn(option:any) { // 主列表-编辑按钮 export function mainListEditBtn(option:any) { return __defaultBtnOption(option,{ - label: '编辑', + label: t(`btn.编辑`).replace('btn.', ''), name: 'edit', hide: false, type: 'warning', @@ -241,7 +242,7 @@ export function mainListEditBtn(option:any) { // 主列表-删除按钮 export function mainListDeleteBtn(option:any) { return __defaultBtnOption(option,{ - label: '删除', + label: t(`btn.删除`).replace('btn.', ''), name: 'delete', hide: false, type: 'danger', @@ -252,7 +253,7 @@ export function mainListDeleteBtn(option:any) { } export function mainListEnableBtn(option:any) { return __defaultBtnOption(option,{ - label: '启用', + label: t(`btn.启用`).replace('btn.', ''), name: 'enable', hide: false, type: 'danger', @@ -263,7 +264,7 @@ export function mainListEnableBtn(option:any) { } export function mainListDisableBtn(option:any) { return __defaultBtnOption(option,{ - label: '禁用', + label: t(`btn.禁用`).replace('btn.', ''), name: 'disable', hide: false, type: 'danger', @@ -275,7 +276,7 @@ export function mainListDisableBtn(option:any) { // 主列表-中止按钮1 export function mainListSuspend1Btn(option:any) { return __defaultBtnOption(option,{ - label: '中止', + label: t(`btn.中止`), name: 'suspend', hide: false, type: 'danger', @@ -288,7 +289,7 @@ export function mainListSuspend1Btn(option:any) { // 主列表-中止按钮2 export function mainListSuspend2Btn(option:any) { return __defaultBtnOption(option,{ - label: '中止', + label: t(`btn.中止`).replace('btn.', ''), name: 'suspend', hide: false, type: 'danger', @@ -301,7 +302,7 @@ export function mainListSuspend2Btn(option:any) { // 主列表-领取按钮 export function mainListReceiveBtn(option:any) { return __defaultBtnOption(option,{ - label: '领取', + label: t(`btn.领取`).replace('btn.', ''), name: 'receive', hide: false, type: 'primary', @@ -314,7 +315,7 @@ export function mainListReceiveBtn(option:any) { // 主列表-完成按钮 export function mainListFinishBtn(option:any) { return __defaultBtnOption(option,{ - label: '完成', + label: t(`btn.完成`).replace('btn.', ''), name: 'finish', hide: false, type: 'primary', @@ -327,7 +328,7 @@ export function mainListFinishBtn(option:any) { // 主列表-绑定 export function mainListBindBtn(option:any) { return __defaultBtnOption(option,{ - label: '绑定', + label: t(`btn.绑定`).replace('btn.', ''), name: 'bind', hide: false, type: 'primary', @@ -339,7 +340,7 @@ export function mainListBindBtn(option:any) { // 主列表-申请流程-关闭按钮 export function mainListCloseBtn(option:any) { return __defaultBtnOption(option,{ - label: '关闭', + label: t(`btn.关闭`).replace('btn.', ''), name: 'mainClose', hide: false, type: 'danger', @@ -352,7 +353,7 @@ export function mainListCloseBtn(option:any) { // 主列表-申请流程-重新添加按钮 export function mainListReAddBtn(option:any) { return __defaultBtnOption(option,{ - label: '重新添加', + label: t(`btn.重新添加`).replace('btn.', ''), name: 'mainReAdd', hide: false, type: 'warning', @@ -365,7 +366,7 @@ export function mainListReAddBtn(option:any) { // 主列表-申请流程-提交审批按钮 export function mainListSubmitBtn(option:any) { return __defaultBtnOption(option,{ - label: '提交审批', + label: t(`btn.提交审批`).replace('btn.', ''), name: 'mainSubmit', hide: false, type: 'primary', @@ -378,7 +379,7 @@ export function mainListSubmitBtn(option:any) { // 主列表-申请流程-驳回按钮 export function mainListTurnDownBtn(option:any) { return __defaultBtnOption(option,{ - label: '驳回', + label: t(`btn.驳回`).replace('btn.', ''), name: 'mainTurnDown', hide: false, type: 'danger', @@ -391,7 +392,7 @@ export function mainListTurnDownBtn(option:any) { // 主列表-申请流程-审批通过按钮 export function mainListApproveBtn(option:any) { return __defaultBtnOption(option,{ - label: '审批通过', + label: t(`btn.审批通过`).replace('btn.', ''), name: 'mainApprove', hide: false, type: 'primary', @@ -404,7 +405,7 @@ export function mainListApproveBtn(option:any) { // 主列表-申请流程-处理按钮 export function mainListHandleBtn(option:any) { return __defaultBtnOption(option,{ - label: '处理', + label: t(`btn.处理`).replace('btn.', ''), name: 'mainHandle', hide: false, type: 'primary', @@ -417,7 +418,7 @@ export function mainListHandleBtn(option:any) { // 主列表-订单流程-发布按钮 export function mainListOrderPubBtn(option:any) { return __defaultBtnOption(option,{ - label: '发布', + label: t(`btn.发布`).replace('btn.', ''), name: 'mainOrderPub', hide: false, type: 'success', @@ -430,7 +431,7 @@ export function mainListOrderPubBtn(option:any) { // 主列表-订单流程-关闭按钮 export function mainListOrderCloBtn(option:any) { return __defaultBtnOption(option,{ - label: '关闭', + label: t(`btn.关闭`).replace('btn.', ''), name: 'mainOrderClo', hide: false, type: 'danger', @@ -443,7 +444,7 @@ export function mainListOrderCloBtn(option:any) { // 主列表-订单流程-打开按钮 export function mainListOrderOpeBtn(option:any) { return __defaultBtnOption(option,{ - label: '打开', + label: t(`btn.打开`).replace('btn.', ''), name: 'mainOrderOpe', hide: false, type: 'warning', @@ -456,7 +457,7 @@ export function mainListOrderOpeBtn(option:any) { // 主列表-订单流程-下架按钮 export function mainListOrderWitBtn(option:any) { return __defaultBtnOption(option,{ - label: '下架', + label: t(`btn.下架`).replace('btn.', ''), name: 'mainOrderWit', hide: false, type: 'danger', @@ -469,7 +470,7 @@ export function mainListOrderWitBtn(option:any) { // 主列表-计划流程-打开按钮 export function mainListPlanOpeBtn(option:any) { return __defaultBtnOption(option,{ - label: '打开', + label: t(`btn.打开`).replace('btn.', ''), name: 'mainPlanOpe', hide: false, type: 'warning', @@ -482,7 +483,7 @@ export function mainListPlanOpeBtn(option:any) { // 主列表-计划流程-关闭按钮 export function mainListPlanCloBtn(option:any) { return __defaultBtnOption(option,{ - label: '关闭', + label: t(`btn.关闭`).replace('btn.', ''), name: 'mainPlanClo', hide: false, type: 'danger', @@ -495,7 +496,7 @@ export function mainListPlanCloBtn(option:any) { // 主列表-上传质量报告 export function mainListPlanUploadQualityReportBtn(option:any) { return __defaultBtnOption(option,{ - label: '上传质量报告', + label: t(`btn.上传质量报告`).replace('btn.', ''), name: 'mainPlanUploadQualityReport', hide: false, type: 'primary', @@ -508,7 +509,7 @@ export function mainListPlanUploadQualityReportBtn(option:any) { // 主列表-计划流程-提交审批按钮 export function mainListPlanSubBtn(option:any) { return __defaultBtnOption(option,{ - label: '提交审批', + label: t(`btn.提交审批`).replace('btn.', ''), name: 'mainPlanSub', hide: false, type: 'primary', @@ -521,7 +522,7 @@ export function mainListPlanSubBtn(option:any) { // 主列表-计划流程-驳回按钮 export function mainListPlanTurBtn(option:any) { return __defaultBtnOption(option,{ - label: '驳回', + label: t(`btn.驳回`).replace('btn.', ''), name: 'mainPlanTur', hide: false, type: 'danger', @@ -534,7 +535,7 @@ export function mainListPlanTurBtn(option:any) { // 主列表-计划流程-重置按钮 export function mainListPlanResBtn(option:any) { return __defaultBtnOption(option,{ - label: '重置', + label: t(`btn.重置`).replace('btn.', ''), name: 'mainPlanRes', hide: false, type: 'danger', @@ -547,7 +548,7 @@ export function mainListPlanResBtn(option:any) { // 主列表-计划流程-审批通过按钮 export function mainListPlanAppBtn(option:any) { return __defaultBtnOption(option,{ - label: '审批通过', + label: t(`btn.审批通过`).replace('btn.', ''), name: 'mainPlanApp', hide: false, type: 'primary', @@ -560,7 +561,7 @@ export function mainListPlanAppBtn(option:any) { // 主列表-计划流程-发布按钮 export function mainListPlanPubBtn(option:any) { return __defaultBtnOption(option,{ - label: '发布', + label: t(`btn.发布`).replace('btn.', ''), name: 'mainPlanPub', hide: false, type: 'success', @@ -573,7 +574,7 @@ export function mainListPlanPubBtn(option:any) { // 主列表-计划流程-执行按钮 export function mainListPlanComBtn(option:any) { return __defaultBtnOption(option,{ - label: '执行', + label: t(`btn.执行`).replace('btn.', ''), name: 'mainPlanCom', hide: false, type: 'danger', @@ -586,7 +587,7 @@ export function mainListPlanComBtn(option:any) { // 主列表-要货计划流程-修改按钮 export function mainListPurchasePlanModBtn(option:any) { return __defaultBtnOption(option,{ - label: '修改', + label: t(`btn.修改`).replace('btn.', ''), name: 'mainPurPlanMod', hide: false, type: 'danger', @@ -599,7 +600,7 @@ export function mainListPurchasePlanModBtn(option:any) { // 主列表-要货计划流程-下架按钮 export function mainListPurchasePlanWitBtn(option:any) { return __defaultBtnOption(option,{ - label: '下架', + label: t(`btn.下架`), name: 'mainPurPlanWit', hide: false, type: 'danger', @@ -612,7 +613,7 @@ export function mainListPurchasePlanWitBtn(option:any) { // 主列表-要货计划流程-不接受按钮 export function mainListPurchasePlanRejBtn(option:any) { return __defaultBtnOption(option,{ - label: '不接受', + label: t(`btn.不接受`).replace('btn.', ''), name: 'mainPurPlanRej', hide: false, type: 'danger', @@ -625,7 +626,7 @@ export function mainListPurchasePlanRejBtn(option:any) { // 主列表-要货计划流程-接受按钮 export function mainListPurchasePlanAccBtn(option:any) { return __defaultBtnOption(option,{ - label: '接受', + label: t(`btn.接受`).replace('btn.', ''), name: 'mainPurPlanAcc', hide: false, type: 'primary', @@ -638,7 +639,7 @@ export function mainListPurchasePlanAccBtn(option:any) { // 主列表-要货计划流程-发布按钮 export function mainListPurchasePlanPubBtn(option:any) { return __defaultBtnOption(option,{ - label: '发布', + label: t(`btn.发布`).replace('btn.', ''), name: 'mainPurPlanPub', hide: false, type: 'success', @@ -651,7 +652,7 @@ export function mainListPurchasePlanPubBtn(option:any) { // 主列表-要货计划流程-关闭按钮 export function mainListPurchasePlanCloBtn(option:any) { return __defaultBtnOption(option,{ - label: '关闭', + label: t(`btn.关闭`).replace('btn.', ''), name: 'mainPurPlanClo', hide: false, type: 'danger', @@ -664,7 +665,7 @@ export function mainListPurchasePlanCloBtn(option:any) { // 主列表-要货计划流程-打开按钮 export function mainListPurchasePlanOpeBtn(option:any) { return __defaultBtnOption(option,{ - label: '打开', + label: t(`btn.打开`).replace('btn.', ''), name: 'mainPurPlanOpe', hide: false, type: 'warning', @@ -677,7 +678,7 @@ export function mainListPurchasePlanOpeBtn(option:any) { // 主列表-任务流程-承接按钮 export function mainListJobAccBtn(option:any) { return __defaultBtnOption(option,{ - label: '承接', + label: t(`btn.承接`).replace('btn.', ''), name: 'mainJobAcc', hide: false, type: 'success', @@ -690,7 +691,7 @@ export function mainListJobAccBtn(option:any) { // 主列表-任务流程-关闭按钮 export function mainListJobCloBtn(option:any) { return __defaultBtnOption(option,{ - label: '关闭', + label: t(`btn.关闭`).replace('btn.', ''), name: 'mainJobClo', hide: false, type: 'danger', @@ -703,7 +704,7 @@ export function mainListJobCloBtn(option:any) { // 主列表-任务流程-放弃按钮 export function mainListJobAbaBtn(option:any) { return __defaultBtnOption(option,{ - label: '放弃', + label: t(`btn.放弃`).replace('btn.', ''), name: 'mainJobAba', hide: false, type: 'danger', @@ -716,7 +717,7 @@ export function mainListJobAbaBtn(option:any) { // 主列表-任务流程-执行按钮 export function mainListJobExeBtn(option:any) { return __defaultBtnOption(option,{ - label: '执行', + label: t(`btn.执行`).replace('btn.', ''), name: 'mainJobExe', hide: false, type: 'primary', @@ -729,7 +730,7 @@ export function mainListJobExeBtn(option:any) { // 主列表-任务流程-执行按钮(与执行按钮一致 只是名改叫'收货'而已) export function mainListJobRecBtn(option:any) { return __defaultBtnOption(option,{ - label: '收货', + label: t(`btn.收货`).replace('btn.', ''), name: 'mainJobExe', hide: false, type: 'primary', @@ -741,7 +742,7 @@ export function mainListJobRecBtn(option:any) { // 主列表-包装按钮 export function mainListPackageBtn(option:any) { return __defaultBtnOption(option,{ - label: '包装', + label: t(`btn.包装`).replace('btn.', ''), name: 'mainPackage', hide: false, type: 'primary', @@ -753,7 +754,7 @@ export function mainListPackageBtn(option:any) { // 主列表-打印 export function mainListPointBtn(option:any) { return __defaultBtnOption(option,{ - label: '打印标签', + label: t(`btn.打印标签`).replace('btn.', ''), name: 'point', hide: false, type: 'primary', @@ -765,7 +766,7 @@ export function mainListPointBtn(option:any) { // 主列表-批量打印 export function mainLisSelectiontPointBtn(option:any) { return __defaultBtnOption(option,{ - label: '批量打印', + label: t(`btn.批量打印`).replace('btn.', ''), name: 'selection_point', hide: false, type: 'primary', @@ -778,7 +779,7 @@ export function mainLisSelectiontPointBtn(option:any) { // 主列表-生成采购收货申请 export function mainListGenerateApplicationBtn(option:any) { return __defaultBtnOption(option,{ - label: '生成采购收货申请', + label: t(`btn.生成采购收货申请`).replace('btn.', ''), name: 'generateApplication', hide: false, type: 'primary', @@ -790,7 +791,7 @@ export function mainListGenerateApplicationBtn(option:any) { // 主列表-打印 export function mainListDocumentPrintBtn(option:any) { return __defaultBtnOption(option,{ - label: '单据打印', + label: t(`btn.单据打印`).replace('btn.', ''), name: 'documentPrint', hide: false, type: 'primary', @@ -802,7 +803,7 @@ export function mainListDocumentPrintBtn(option:any) { // 主列表-生成到货检验申请 export function mainInspectRequestBtn(option:any) { return __defaultBtnOption(option,{ - label: '发送到货检验申请', + label: t(`btn.发送到货检验申请`).replace('btn.', ''), name: 'inspectRequest', hide: false, type: 'primary', @@ -814,7 +815,7 @@ export function mainInspectRequestBtn(option:any) { // 主列表-生成采购上架申请 export function mainPutawayRequestBtn(option:any) { return __defaultBtnOption(option,{ - label: '生成采购上架申请', + label: t(`btn.生成采购上架申请`).replace('btn.', ''), name: 'putawayRequest', hide: false, type: 'primary', @@ -826,7 +827,7 @@ export function mainPutawayRequestBtn(option:any) { // 主列表-生成盘点调整申请 export function mainCountAdjustRequesttBtn(option:any) { return __defaultBtnOption(option,{ - label: '生成盘点调整申请', + label: t(`btn.生成盘点调整申请`).replace('btn.', ''), name: 'countAdjustRequest', hide: false, type: 'primary', @@ -838,7 +839,7 @@ export function mainCountAdjustRequesttBtn(option:any) { // 主列表-重盘 export function mainReCountBtn(option:any) { return __defaultBtnOption(option,{ - label: '重盘', + label: t(`btn.重盘`).replace('btn.', ''), name: 'mainReCount', hide: false, type: 'primary', @@ -850,7 +851,7 @@ export function mainReCountBtn(option:any) { // 主列表-监盘 export function mainSuperviseCountBtn(option:any) { return __defaultBtnOption(option,{ - label: '监盘', + label: t(`btn.监盘`).replace('btn.', ''), name: 'mainSuperviseCount', hide: false, type: 'primary', @@ -862,7 +863,7 @@ export function mainSuperviseCountBtn(option:any) { // 主列表-解冻 export function mainThawRequesttBtn(option:any) { return __defaultBtnOption(option,{ - label: '解冻', + label: t(`btn.解冻`).replace('btn.', ''), name: 'mainThaw', hide: false, type: 'primary', @@ -874,7 +875,7 @@ export function mainThawRequesttBtn(option:any) { // 主列表-更新检验记录 export function mainUpdataRecodeBtn(option:any) { return __defaultBtnOption(option,{ - label: '更新检验记录', + label: t(`btn.更新检验记录`).replace('btn.', ''), name: 'updataRecode', hide: false, type: 'primary', @@ -886,7 +887,7 @@ export function mainUpdataRecodeBtn(option:any) { // 主列表-使用决策 export function mainApplyDecisionBtn(option:any) { return __defaultBtnOption(option,{ - label: '使用决策', + label: t(`btn.使用决策`).replace('btn.', ''), name: 'applyDecision', hide: false, type: 'primary', diff --git a/src/views/home/components/material.vue b/src/views/home/components/material.vue index 83aadaa35..841bab035 100644 --- a/src/views/home/components/material.vue +++ b/src/views/home/components/material.vue @@ -4,84 +4,84 @@
-
今日到货计划(已发货)
-
{{materialData?.preparetoissueTodayCount}}
+
{{ t('home.today_arrival_plan_shipped') }}
+
{{materialData?.preparetoissueTodayCount}}{{ t('home.single') }}
-
今日备料计划(已发料)
-
{{materialData?.preparetoissueTodayCount}}
+
{{ t('home.material_preparation_plan_today_issued') }}
+
{{materialData?.preparetoissueTodayCount}}{{ t('home.single') }}
-
今日叫料请求(已发料)
-
{{materialData?.issueRequestTodayCount}}
+
{{ t('home.call_material_today_issued') }}
+
{{materialData?.issueRequestTodayCount}}{{ t('home.single') }}
-
空闲库位数/总库位数
-
{{materialData?.freeLocationCount}}/{{materialData?.totalLocationCount}}
+
{{ t('home.free_library_bits_or_total_library_bits') }}
+
{{materialData?.freeLocationCount}}{{ t('home.pcs') }}/{{materialData?.totalLocationCount}}{{ t('home.pcs') }}
-
呆滞库存预警
+
{{ t('home.slack_stock_warning')}}
- - - - - - + + + + + + - - - + + + - - - - - + + + + + - + - + - - - - - - + + + + + + @@ -89,55 +89,55 @@
-
超期库存预警
+
{{ t('home.overstock_warning') }}
- - - - - - + + + + + + - - - + + + - - - - - + + + + + - + - + - - - - - - + + + + + + @@ -147,55 +147,55 @@
-
高低储预警
+
{{ t('home.high_and_low_storage_warning') }}
- - - - - - + + + + + + - - - + + + - - - - - + + + + + - + - + - - - - - - + + + + + + @@ -203,7 +203,7 @@
-
待处理任务
+
{{ t('home.waiting_tasks') }}
@@ -216,6 +216,8 @@ import { DICT_TYPE, getStrDictOptions } from '@/utils/dict' import { set } from 'lodash-es' import { EChartsOption } from 'echarts' import { barOptions } from '../echarts-data' +const { t } = useI18n() + const lineIndex = ref(0) const materialData = ref() @@ -237,10 +239,10 @@ const getJobCharts = async () => { 'xAxis.data', Object.keys( materialData.value.jobCount) ) - set(barOptionsData, 'legend.data', ['待处理任务']) + set(barOptionsData, 'legend.data', [t('home.waiting_tasks')]) set(barOptionsData, 'series', [ { - name:'待处理任务', + name: t('home.waiting_tasks'), data: Object.values( materialData.value.jobCount), type: 'bar', barMaxWidth:30 diff --git a/src/views/home/components/produce.vue b/src/views/home/components/produce.vue index b3615be8a..527bd8877 100644 --- a/src/views/home/components/produce.vue +++ b/src/views/home/components/produce.vue @@ -3,62 +3,62 @@
-
今日生产计划
+
{{ t('home.today_production_plan')}}
- - - - - - - + + + + + + - - - +
-
线边安全库存
+
{{ t('home.line_side_safety_stock') }}
- - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - + @@ -68,86 +68,86 @@
-
待上架成品库存
+
{{t('home.inventory_of_finished_products_waiting_to_be_putway')}}
- - - + + + - + - - - - + + + + - - - - - - + + + + + + - + - + - + - + - + - + - + - + - + @@ -155,7 +155,7 @@
-
待处理任务
+
{{t('home.waiting_tasks')}}
@@ -168,6 +168,8 @@ import { DICT_TYPE, getStrDictOptions } from '@/utils/dict' import { set } from 'lodash-es' import { EChartsOption } from 'echarts' import { barOptions } from '../echarts-data' +const { t } = useI18n() + const lineIndex = ref(0) const produceData = ref() // 获取生产管理员首页数据 @@ -188,10 +190,10 @@ const getJobCharts = async () => { 'xAxis.data', Object.keys( produceData.value.jobCount) ) - set(barOptionsData, 'legend.data', ['待处理任务']) + set(barOptionsData, 'legend.data', [t('home.waiting_tasks')]) set(barOptionsData, 'series', [ { - name:'待处理任务', + name:t('home.waiting_tasks'), data: Object.values( produceData.value.jobCount), type: 'bar', barMaxWidth:30 diff --git a/src/views/home/components/product.vue b/src/views/home/components/product.vue index 5124d9c11..5896907ca 100644 --- a/src/views/home/components/product.vue +++ b/src/views/home/components/product.vue @@ -4,63 +4,63 @@
-
今日到货计划(已发货)
-
{{ productData?.deliverPlanTodayCount || 0 }}
+
{{ t('home.today_arrival_plan_shipped') }}
+
{{ productData?.deliverPlanTodayCount || 0 }}{{t('home.single')}}
-
呆滞库存预警
+
{{ t('home.slack_stock_warning') }}
- - - - - - + + + + + + - - - + + + - - - - - + + + + + - + - + - - - - - - + + + + + + @@ -68,55 +68,55 @@
-
超期库存预警
+
{{ t('home.overstock_warning') }}
- - - - - - + + + + + + - - - + + + - - - - - + + + + + - + - + - - - - - - + + + + + + @@ -126,55 +126,55 @@
-
高低储预警
+
{{ t('home.high_and_low_storage_warning') }}
- - - - - - + + + + + + - - + + - - - + + + - + - + - + - - - - - - + + + + + + @@ -182,7 +182,7 @@
-
待处理任务
+
{{ t('home.waiting_tasks') }}
@@ -195,6 +195,8 @@ import { DICT_TYPE, getStrDictOptions } from '@/utils/dict' import { set } from 'lodash-es' import { EChartsOption } from 'echarts' import { barOptions } from '../echarts-data' +const { t } = useI18n() + const lineIndex = ref(0) // 获取成品管理员首页首页数据 const productData = ref() @@ -215,10 +217,10 @@ const getJobCharts = async () => { 'xAxis.data', Object.keys( productData.value.jobCount) ) - set(barOptionsData, 'legend.data', ['待处理任务']) + set(barOptionsData, 'legend.data', [t('home.waiting_tasks')]) set(barOptionsData, 'series', [ { - name:'待处理任务', + name:t('home.waiting_tasks'), data: Object.values( productData.value.jobCount), type: 'bar', barMaxWidth:30 diff --git a/src/views/home/components/supplierIndex.vue b/src/views/home/components/supplierIndex.vue index c665f9867..5e8a679c1 100644 --- a/src/views/home/components/supplierIndex.vue +++ b/src/views/home/components/supplierIndex.vue @@ -3,57 +3,57 @@
-
订单数
+
{{ t('home.number_orders') }}
-
{{ supplierData?.openPurchaseCount || 0 }}
-
开放订单数
+
{{ supplierData?.openPurchaseCount || 0 }}{{ t('home.single') }}
+
{{ t('home.number_open') }}
-
{{ supplierData?.allPurchaseCount || 0 }}
-
全部订单数
+
{{ supplierData?.allPurchaseCount || 0 }}{{ t('home.single') }}
+
{{ t('home.number_total_order') }}
-
要货计划数
+
{{t('home.number_planned_shipments')}}
-
{{ supplierData?.openPurchasePlanCount || 0 }}
-
开放计划数
+
{{ supplierData?.openPurchasePlanCount || 0 }}{{ t('home.single') }}
+
{{t('home.number_open_plans')}}
-
{{ supplierData?.allPurchasePlanCount || 0 }}
-
全部计划数
+
{{ supplierData?.allPurchasePlanCount || 0 }}{{ t('home.single') }}
+
{{t('home.number_all_plans')}}
-
发货单数
+
{{t('home.number_invoices')}}
-
{{ supplierData?.notTakeSupplierdeliverCount || 0 }}
-
未收货订单数
+
{{ supplierData?.notTakeSupplierdeliverCount || 0 }}{{ t('home.single') }}
+
{{t('home.number_unreceived_orders')}}
-
{{ supplierData?.takeSupplierdeliverCount || 0 }}
-
已收货订单数
+
{{ supplierData?.takeSupplierdeliverCount || 0 }}{{ t('home.single') }}
+
{{t('home.number_orders_received')}}
@@ -62,36 +62,36 @@
-
本月发货单趋势
+
{{t('home.invoice_trend_month')}}
-
本月发货零件TOP10
+
{{t('home.TOP10_parts_shipped_month')}}
-
最新消息
+
{{t('home.latest_news')}}
- - + + - - - + + + - + - +
-
最新扣分明细
+
{{ t('home.latest_deduction_details')}}
- - - + + +
-
本月退货明细
+
{{t('home.month_return_detials')}}
- - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - - - - - - - - + + + + + + + + + + + - - - + + + - +
-
本月索赔明细
+
{{t('home.claim_details_month')}}
- - - - - - - + + + + + + + - + - +
@@ -284,10 +284,10 @@ const getInvoiceCharts = async () => { 'xAxis.data', supplierData.value.supplierdeliverMonthCount.map((v) => v.date) ) - set(lineOptionsData, 'legend.data', ['本月发货单趋势']) + set(lineOptionsData, 'legend.data', [t('home.invoice_trend_month')]) set(lineOptionsData, 'series', [ { - name: '本月发货单趋势', + name: t('home.invoice_trend_month'), smooth: true, type: 'line', itemStyle: {}, From 34fdf2cfe504dc3cd921edd0d9133544c4009cd7 Mon Sep 17 00:00:00 2001 From: yufei0306 <13417315+yufei0306@user.noreply.gitee.com> Date: Mon, 6 May 2024 09:27:27 +0800 Subject: [PATCH 07/14] =?UTF-8?q?=E8=A7=A3=E5=86=B35.4=E6=B5=8B=E8=AF=95?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../supplierdeliver/supplierdeliverRequestMain/index.vue | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue index 142997274..a643936bb 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue @@ -712,6 +712,7 @@ const handleTur = async (id: number) => { /** 处理按钮操作 */ const genRecords = async (id: number) => { + let getLoading = null try { await SupplierdeliverRequestMainApi.selfCheckReport(id).then(async res => { if(!res){ @@ -720,7 +721,11 @@ const genRecords = async (id: number) => { }else{ // 处理的二次确认 await message.confirm('是否处理所选中数据?') - tableObject.loading = true + getLoading = ElLoading.service({ + lock: true, + text: 'loading...', + background: 'rgba(0, 0, 0, 0.7)' + }) // 发起处理 SupplierdeliverRequestMainApi.genRecordsSupplierdeliverRequestMain(id).then(res => { message.success(t('处理成功!')) @@ -734,7 +739,7 @@ const genRecords = async (id: number) => { console.log("自检报告校验异常",err) }) } catch {}finally{ - tableObject.loading = false + getLoading?.close() } } From 23b36da1ed6ff2b4c145915a0c5254fb3501222d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=96=AA=E5=90=8D?= <942005050@qq.com> Date: Mon, 6 May 2024 09:27:54 +0800 Subject: [PATCH 08/14] =?UTF-8?q?=E5=88=A0=E9=99=A4=20scp=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile_scp | 7 ------- 1 file changed, 7 deletions(-) delete mode 100644 Dockerfile_scp diff --git a/Dockerfile_scp b/Dockerfile_scp deleted file mode 100644 index 700cdf9a9..000000000 --- a/Dockerfile_scp +++ /dev/null @@ -1,7 +0,0 @@ -# 设置基础镜像 -FROM win-nginx - -WORKDIR /opt/sfms3.0 -COPY nginx_scp.conf /usr/local/nginx/conf/nginx.conf -# 将dist文件中的内容复制到 /opt/sfms3.0 这个目录下面 -COPY sfms3.0/ /opt/sfms3.0 From a6241468d4db09f412b0237baf594225b9398095 Mon Sep 17 00:00:00 2001 From: zhaoxuebing <1291173720@qq.com> Date: Mon, 6 May 2024 09:37:43 +0800 Subject: [PATCH 09/14] =?UTF-8?q?=E5=88=B6=E5=93=81=E5=9B=9E=E6=94=B6?= =?UTF-8?q?=E7=94=B3=E8=AF=B7=EF=BC=8C=E7=89=A9=E6=96=99=E7=AD=9B=E9=80=89?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E6=9C=89=E9=97=AE=E9=A2=98=EF=BC=8C=E6=97=A0?= =?UTF-8?q?=E6=B3=95=E5=88=9B=E5=BB=BA=E6=95=B0=E6=8D=AE=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/wms/balance/index.ts | 11 ++++++++ .../productredressRequestMain.data.ts | 28 +++++++++---------- .../supplierdeliverRequestMain/index.vue | 1 + 3 files changed, 26 insertions(+), 14 deletions(-) diff --git a/src/api/wms/balance/index.ts b/src/api/wms/balance/index.ts index 432b14a1a..4b21cda4d 100644 --- a/src/api/wms/balance/index.ts +++ b/src/api/wms/balance/index.ts @@ -83,6 +83,17 @@ export const getBalancePageByBusinessType = async (params) => { } +// 查询库存余额列表根据业务类型 +export const getBalancePageByBusinessTypeByItemType = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/wms/balance/seniorBusinessTypeByItemType', data }) + } else { + return await request.get({ url: `/wms/balance/pageBusinessTypeByItemType`, params }) + } +} + // 备件出库查询库存余额列表 export const getBalancePageSpare = async (params) => { if (params.isSearch) { diff --git a/src/views/wms/productionManage/productredress/productredressRequestMain/productredressRequestMain.data.ts b/src/views/wms/productionManage/productredress/productredressRequestMain/productredressRequestMain.data.ts index dcc05b9a8..4afaf03c7 100644 --- a/src/views/wms/productionManage/productredress/productredressRequestMain/productredressRequestMain.data.ts +++ b/src/views/wms/productionManage/productredress/productredressRequestMain/productredressRequestMain.data.ts @@ -323,14 +323,14 @@ export const ProductredressRequestDetail = useCrudSchemas(reactive searchField: 'itemCode', // 查询弹窗赋值字段 searchTitle: '库存余额信息', // 查询弹窗标题 searchAllSchemas: Balance.allSchemas, // 查询弹窗所需类 -  searchPage: BalanceApi.getBalancePageByBusinessType, // 查询弹窗所需分页方法 -        searchCondition: [{ -          key: 'businessType', -          value: businessTypeData.code, - action: '==', // 查询拼接条件 - isSearch: true, // 使用自定义拼接条件 - isMainValue: false // 拼接条件必须要 false 同时不能与 isMainValue: true 同用 -        },{ + searchPage: BalanceApi.getBalancePageByBusinessTypeByItemType, // 查询弹窗所需分页方法 + searchCondition: [{ + key: 'businessType', + value: businessTypeData.code, + action: '==', // 查询拼接条件 + isSearch: true, // 使用自定义拼接条件 + isMainValue: false // 拼接条件必须要 false 同时不能与 isMainValue: true 同用 + },{ key: 'packingNumber', // 查询列表中字段 value: '', // 指查询具体值 action: 'isNotStr', // 查询拼接条件 @@ -346,13 +346,13 @@ export const ProductredressRequestDetail = useCrudSchemas(reactive searchField: 'itemCode', // 查询弹窗赋值字段 searchTitle: '库存余额信息', // 查询弹窗标题 searchAllSchemas: Balance.allSchemas, // 查询弹窗所需类 - searchPage: BalanceApi.getBalancePageByBusinessType, // 查询弹窗所需分页方法 + searchPage: BalanceApi.getBalancePageByBusinessTypeByItemType, // 查询弹窗所需分页方法 searchCondition: [{ - key: 'businessType', - value: businessTypeData.code, - action: '==', // 查询拼接条件 - isSearch: true, // 使用自定义拼接条件 - isMainValue: false // 拼接条件必须要 false 同时不能与 isMainValue: true 同用 + key: 'businessType', + value: businessTypeData.code, + action: '==', // 查询拼接条件 + isSearch: true, // 使用自定义拼接条件 + isMainValue: false // 拼接条件必须要 false 同时不能与 isMainValue: true 同用 },{ key: 'packingNumber', // 查询列表中字段 value: '', // 指查询具体值 diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue index 142997274..db79961d9 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue @@ -645,6 +645,7 @@ const handleUploadQualityReport = async (row) => { SupplierdeliverInspectionDetail.allSchemas.tableFormColumns.forEach((item) => { tableFormKeys[item.field] = item.default ? item.default : '' }) + uploadQualityReportTableData.value = [tableFormKeys] } From 51d41bb537f6e8f7941aa1ef0818e0c0b395e0e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E8=96=AA=E5=90=8D?= <942005050@qq.com> Date: Mon, 6 May 2024 10:01:18 +0800 Subject: [PATCH 10/14] =?UTF-8?q?=E5=88=A0=E9=99=A4scp=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.test-scp | 37 ----------------------------------- nginx_scp.conf | 53 -------------------------------------------------- 2 files changed, 90 deletions(-) delete mode 100644 .env.test-scp delete mode 100644 nginx_scp.conf diff --git a/.env.test-scp b/.env.test-scp deleted file mode 100644 index 0cc655e62..000000000 --- a/.env.test-scp +++ /dev/null @@ -1,37 +0,0 @@ -# 生产环境 -NODE_ENV=test - -VITE_DEV=false - -# 请求路径 -VITE_BASE_URL='http://dev.ccwin-in.com:25400/api' - -# 上传路径 -VITE_UPLOAD_URL='http://dev.ccwin-in.com:25400/api/admin-api/infra/file/upload' - -# 接口前缀 -VITE_API_BASEPATH= - -# 接口地址 -VITE_API_URL=/admin-api - -# 是否删除debugger -VITE_DROP_DEBUGGER=true - -# 是否删除console.log -VITE_DROP_CONSOLE=true - -# 是否sourcemap -VITE_SOURCEMAP=false - -# 打包路径 -VITE_BASE_PATH=/ - -# 输出路径 -VITE_OUT_DIR=sfms3.0 - -# 自定义接口路径 -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/nginx_scp.conf b/nginx_scp.conf deleted file mode 100644 index 00a1a93ea..000000000 --- a/nginx_scp.conf +++ /dev/null @@ -1,53 +0,0 @@ -user root; -worker_processes 2; - -events { - worker_connections 1024; -} - -http { - include mime.types; - charset utf-8,gbk; - default_type application/octet-stream; - log_format main '$remote_addr - $remote_user [$time_local] "$request" ' - '$status $body_bytes_sent "$http_referer" ' - '"$http_user_agent" "$http_x_forwarded_for" "$request_time $upstream_response_time"'; - access_log logs/access.log main; - sendfile on; - #tcp_nopush on; - keepalive_timeout 600s; - client_max_body_size 200m; - gzip on; - gzip_min_length 10k; - gzip_comp_level 9; - gzip_buffers 4 16k; - gzip_types text/plain application/javascript text/css application/xml text/javascript image/jpeg image/gif image/png; - gzip_vary on; - gzip_disable "MSIE [1-6]\."; - upstream sfms3.0 { - server localhost:25311 weight=10 max_fails=3 fail_timeout=10s; - } - server { - listen 25400; - server_name_in_redirect off; - server_name _; - location /api/ { - proxy_pass http://sfms3.0/; - proxy_next_upstream http_500 http_502 http_503 http_504 error timeout invalid_header; - proxy_set_header X-Forwared-For $proxy_add_x_forwarded_for; - proxy_set_header Host $http_host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $http_x_forwarded_for; - } - location /profile/ { - alias /opt/profile/; - index index.html index.htm; - } - location / { - try_files $uri $uri/ /index.html; - root /opt/sfms3.0; - index index.html index.htm; - } - } -} - From aeb3eb3060896736185ac00c1df04f119962b032 Mon Sep 17 00:00:00 2001 From: zhaoxuebing <1291173720@qq.com> Date: Mon, 6 May 2024 10:21:45 +0800 Subject: [PATCH 11/14] =?UTF-8?q?=E5=8C=85=E8=A3=85=E6=95=B0=E9=87=8F?= =?UTF-8?q?=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../productionreturnRequestMain/index.vue | 1 + .../productionreturnRequestMain.data.ts | 8 ++++---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/index.vue b/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/index.vue index e818cd7bb..299e34fef 100644 --- a/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/index.vue +++ b/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/index.vue @@ -581,6 +581,7 @@ const submitForm = async (formType, data) => { data.subList = tableData.value // 拼接子表数据参数 let isZC = true // 数量和标包数量 是否整除 data.subList.forEach(item => { + item.productionLineCode = data.productionLineCode if (item.qty % item.packQty !== 0) { isZC = false } diff --git a/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/productionreturnRequestMain.data.ts b/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/productionreturnRequestMain.data.ts index 38323fcd0..99843afc2 100644 --- a/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/productionreturnRequestMain.data.ts +++ b/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/productionreturnRequestMain.data.ts @@ -914,8 +914,8 @@ export const ProductionreturnRequestDetail = useCrudSchemas(reactive Date: Mon, 6 May 2024 11:07:45 +0800 Subject: [PATCH 12/14] =?UTF-8?q?MES=E2=80=94=E2=80=94>=20=E5=8F=AB?= =?UTF-8?q?=E6=96=99=E8=A1=A5=E6=96=99=E5=89=8D=E5=90=8E=E7=AB=AF=E7=94=9F?= =?UTF-8?q?=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/mes/itemRequestMain/index.ts | 60 +++++ src/views/mes/itemRequestMain/index.vue | 244 ++++++++++++++++++ .../itemRequestMain/itemRequestMain.data.ts | 170 ++++++++++++ 3 files changed, 474 insertions(+) create mode 100644 src/api/mes/itemRequestMain/index.ts create mode 100644 src/views/mes/itemRequestMain/index.vue create mode 100644 src/views/mes/itemRequestMain/itemRequestMain.data.ts diff --git a/src/api/mes/itemRequestMain/index.ts b/src/api/mes/itemRequestMain/index.ts new file mode 100644 index 000000000..9cc8e205f --- /dev/null +++ b/src/api/mes/itemRequestMain/index.ts @@ -0,0 +1,60 @@ +import request from '@/config/axios' + +export interface ItemRequestMainVO { + deleteTime: Date + id: number + status: string + concurrencyStamp: number + remark: string + deleter: string + siteId: number + planDayCode: string + workBillNo: string + batchCode: string + requestBillNo: string + workstationCode: string + productCode: string + processCode: string + requestType: string +} + +// 查询叫料申请单主列表 +export const getItemRequestMainPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/mes/item-request-main/senior', data }) + } else { + return await request.get({ url: `/mes/item-request-main/page`, params }) + } +} + +// 查询叫料申请单主详情 +export const getItemRequestMain = async (id: number) => { + return await request.get({ url: `/mes/item-request-main/get?id=` + id }) +} + +// 新增叫料申请单主 +export const createItemRequestMain = async (data: ItemRequestMainVO) => { + return await request.post({ url: `/mes/item-request-main/create`, data }) +} + +// 修改叫料申请单主 +export const updateItemRequestMain = async (data: ItemRequestMainVO) => { + return await request.put({ url: `/mes/item-request-main/update`, data }) +} + +// 删除叫料申请单主 +export const deleteItemRequestMain = async (id: number) => { + return await request.delete({ url: `/mes/item-request-main/delete?id=` + id }) +} + +// 导出叫料申请单主 Excel +export const exportItemRequestMain = async (params) => { + return await request.download({ url: `/mes/item-request-main/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/mes/item-request-main/get-import-template' }) +} \ No newline at end of file diff --git a/src/views/mes/itemRequestMain/index.vue b/src/views/mes/itemRequestMain/index.vue new file mode 100644 index 000000000..6db2e2d19 --- /dev/null +++ b/src/views/mes/itemRequestMain/index.vue @@ -0,0 +1,244 @@ + + + diff --git a/src/views/mes/itemRequestMain/itemRequestMain.data.ts b/src/views/mes/itemRequestMain/itemRequestMain.data.ts new file mode 100644 index 000000000..602571af5 --- /dev/null +++ b/src/views/mes/itemRequestMain/itemRequestMain.data.ts @@ -0,0 +1,170 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const ItemRequestMainRules = reactive({ + concurrencyStamp: [required], +}) + +export const ItemRequestMain = useCrudSchemas(reactive([ + { + label: '删除时间', + field: 'deleteTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '主键', + field: 'id', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '状态', + field: 'status', + sort: 'custom', + isSearch: true, + form: { + component: 'Radio' + }, + }, + { + label: '并发乐观锁', + field: 'concurrencyStamp', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + isSearch: true, + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: true, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + }, + isForm: false, + }, + { + label: '删除用户名', + field: 'deleter', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '位置ID', + field: 'siteId', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '计划编码', + field: 'planDayCode', + sort: 'custom', + isSearch: true, + }, + { + label: '工单编码', + field: 'workBillNo', + sort: 'custom', + isSearch: true, + }, + { + label: '批次编码', + field: 'batchCode', + sort: 'custom', + isSearch: true, + }, + { + label: '申请单号', + field: 'requestBillNo', + sort: 'custom', + isSearch: true, + }, + { + label: '工位编码', + field: 'workstationCode', + sort: 'custom', + isSearch: true, + }, + { + label: '产品编码', + field: 'productCode', + sort: 'custom', + isSearch: true, + }, + { + label: '工序编码', + field: 'processCode', + sort: 'custom', + isSearch: true, + }, + { + label: '类型(1:叫料、2:补料)', + field: 'requestType', + sort: 'custom', + isSearch: true, + form: { + component: 'SelectV2' + }, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) From 69d184c49e96067ed60b1872a40e760d167487bf Mon Sep 17 00:00:00 2001 From: zhaoxuebing <1291173720@qq.com> Date: Mon, 6 May 2024 11:11:37 +0800 Subject: [PATCH 13/14] =?UTF-8?q?=E8=B4=A8=E9=87=8F=E6=8A=A5=E5=91=8A?= =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E7=95=8C=E9=9D=A2=E6=94=B9=E4=B8=BA=E5=B8=A6?= =?UTF-8?q?=E5=87=BA=E5=8F=91=E8=B4=A7=E7=94=B3=E8=AF=B7=E4=B8=AD=E7=9A=84?= =?UTF-8?q?=E6=98=8E=E7=BB=86=E4=BF=A1=E6=81=AF=EF=BC=88=E7=89=A9=E6=96=99?= =?UTF-8?q?=E5=8F=B7=E3=80=81=E4=BE=9B=E5=BA=94=E5=95=86=E6=89=B9=E6=AC=A1?= =?UTF-8?q?=E3=80=81=E6=95=B0=E9=87=8F=E3=80=81=E5=8D=95=E4=BD=8D=EF=BC=89?= =?UTF-8?q?=E4=B8=94=E4=B8=8D=E5=8F=AF=E7=BC=96=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../supplierdeliverInspectionDetail/index.ts | 5 +++ .../supplierdeliverInspectionDetail.data.ts | 36 +++++++++++++++++-- .../supplierdeliverRequestMain/index.vue | 13 +++++-- 3 files changed, 48 insertions(+), 6 deletions(-) diff --git a/src/api/wms/supplierdeliverInspectionDetail/index.ts b/src/api/wms/supplierdeliverInspectionDetail/index.ts index cd689c6f7..c17a4d8f5 100644 --- a/src/api/wms/supplierdeliverInspectionDetail/index.ts +++ b/src/api/wms/supplierdeliverInspectionDetail/index.ts @@ -28,6 +28,11 @@ export const getSupplierdeliverInspectionDetail = async (id: number) => { return await request.get({ url: `/wms/supplierdeliver-inspection-detail/get?id=` + id }) } +// 查询供应商发货申请质子列表 +export const getSupplierdeliverDetailInfo = async (id: number) => { + return await request.get({ url: `/wms/supplierdeliver-inspection-detail/queryByMasterId?masterId=` + id }) +} + // 新增供应商发货申请质检信息子 export const createSupplierdeliverInspectionDetail = async (data: SupplierdeliverInspectionDetailVO) => { return await request.post({ url: `/wms/supplierdeliver-inspection-detail/create`, data }) diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverInspectionDetail/supplierdeliverInspectionDetail.data.ts b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverInspectionDetail/supplierdeliverInspectionDetail.data.ts index 3fee7b3d7..e125b7976 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverInspectionDetail/supplierdeliverInspectionDetail.data.ts +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverInspectionDetail/supplierdeliverInspectionDetail.data.ts @@ -26,6 +26,14 @@ export const SupplierdeliverInspectionDetail = useCrudSchemas(reactive