| | |
| | | wrkMast.setAppeTime(now); |
| | | wrkMast.setModiUser(userId); |
| | | wrkMast.setModiTime(now); |
| | | locSts = ioType != 101? "R" : "P"; |
| | | locSts = ioType != 101? "P" : "R"; |
| | | // 生成工作档明细(保留原逻辑) |
| | | for (LocDetlDto detlDto : dto.getLocDetlDtos()) { |
| | | if (detlDto.getCount() == null || detlDto.getCount() <= 0.0D) { |
| | |
| | | //全板入库 |
| | | param.setIoType(1); |
| | | } |
| | | if (param.getFromPort().equals("1001") && param.getIoType()!=103 && param.getIoType() != 107) { |
| | | if (param.getFromPort().equals("101") && param.getIoType()!=103 && param.getIoType() != 107) { |
| | | |
| | | //有空板出库时禁止入库 |
| | | int wrkCount = wrkMastService.selectCount(new EntityWrapper<WrkMast>().eq("io_type", 110).eq("sta_no", 1001).notIn("wrk_sts", 7)); |
| | |
| | | subject: arydasrs |
| | | publicAlias: publicCert |
| | | storePass: public_zhongyang_123456789 |
| | | licensePath: license1.lic |
| | | licensePath: license.lic |
| | | publicKeysStorePath: publicCerts.keystore |
| | | |
| | | # 下位机配置 |
| New file |
| | |
| | | { |
| | | "status_desc": "Status Description", |
| | | "wrk_status_0": "0.Pending Receive", |
| | | "wrk_status_1": "1.Received", |
| | | "wrk_status_2": "2.Task Started", |
| | | "wrk_status_3": "3.Pickup Completed", |
| | | "wrk_status_4": "4.Inbound Completed", |
| | | "wrk_status_5": "5.Inventory Updated", |
| | | "wrk_status_6": "6.Task Interrupted", |
| | | "wrk_status_7": "7.Drop-off Completed", |
| | | "wrk_status_11": "11.Outbound ID Generated", |
| | | "wrk_status_12": "12.Crane Outbound In Progress", |
| | | "wrk_status_13": "13.Crane Empty Outbound Error", |
| | | "wrk_status_14": "14.Outbound Unconfirmed", |
| | | "wrk_status_15": "15.Outbound Update Completed", |
| | | "display_mode": "Display Mode", |
| | | "view_by_row": "View by Row", |
| | | "view_by_layer": "View by Layer", |
| | | "enable_selection": "Enable Selection", |
| | | "disable_selection": "Disable Selection", |
| | | "assign_zone": "Assign Zone", |
| | | "zone_legend": "Zone Legend", |
| | | "selection_mode_tip": "Selection mode enabled, please drag to select on the location map", |
| | | "please_select_zone": "Please select a zone", |
| | | "zone_color": "Zone Color", |
| | | "assign_zone_and_color": "Assign Zone and Color", |
| | | "confirm": "Confirm", |
| | | "cancel": "Cancel", |
| | | "cancel_selection": "Cancel Selection", |
| | | "assign_success": "Assignment successful", |
| | | "operation_failed": "Operation failed", |
| | | "fetch_zone_list_failed": "Failed to fetch zone list", |
| | | "modify_zone_color": "Modify Zone Color", |
| | | "zone_name": "Zone Name", |
| | | "select_color": "Select Color", |
| | | "save": "Save", |
| | | "color_updated": "Color updated", |
| | | "update_failed": "Update failed", |
| | | "load_failed": "Load failed", |
| | | "language": "Language", |
| | | "license_validity_prefix": "Temporary license valid for: ", |
| | | "license_validity_suffix": " days", |
| | | "basic_info": "Basic Information", |
| | | "logout": "Log Out", |
| | | "home": "Home", |
| | | "_comment_home": "Home Tab Bar", |
| | | "主页": "Home", |
| | | "控制台": "Dashboard", |
| | | "分析页": "Analytics", |
| | | "库位热点图": "Location Heatmap", |
| | | |
| | | "基础数据": "Master Data", |
| | | "商品档案": "Item Master", |
| | | "工作状态": "Task Status", |
| | | "入出库类型": "Transaction Types", |
| | | "库位状态": "Location Status", |
| | | "库位类型管理": "LocType Management", |
| | | "工作序号查询": "Task Number Query", |
| | | "库位排号分配": "Location Slot Query", |
| | | "归类管理": "Category Management", |
| | | "库区管理": "Zone Management", |
| | | "路径站点设置": "Path & Station Setup", |
| | | |
| | | "库存管理": "Inventory Management", |
| | | "库位查询": "Location Inquiry", |
| | | "库存明细管理": "Inventory Detail", |
| | | "库存调整": "Inventory Adjustment", |
| | | "库存明细统计": "Inventory Summary", |
| | | |
| | | "入出库作业": "Out & In Operations", |
| | | "入库作业": "Inbound Operations", |
| | | "出库作业": "Outbound Operations", |
| | | "盘点出库": "Cycle Count Outbound", |
| | | "库位移转": "Location Transfer", |
| | | "空板出库": "Empty Pallet Outbound", |
| | | |
| | | "工作档管理": "Work Orders", |
| | | "工作档查询维护": "Work Order Query", |
| | | "工作档明细查询": "Work Order Details", |
| | | "工作历史档查询": "Work Order History", |
| | | "工作明细历史档查询": "Work Order Detail History", |
| | | "work_order_detail_history": "Work Order Detail History", |
| | | "入库通知档": "Inbound Notice", |
| | | "入库通知历史档": "Inbound Notice History", |
| | | |
| | | "订单系统": "Order System", |
| | | "单据管理": "Order Management", |
| | | "订单出库": "Order Outbound", |
| | | "订单状态": "Order Status", |
| | | "单据类型": "Order Types", |
| | | |
| | | "设备维护": "Equipment Maintenance", |
| | | "库位管理": "Location Management", |
| | | "站点管理": "Station Management", |
| | | |
| | | "日志统计": "Logs & Stats", |
| | | "库存调整记录": "Inventory Adjustments", |
| | | "三方接口统计": "3rd-Party API Logs", |
| | | "异常工作档": "Exception Work Orders", |
| | | "库位使用率统计": "Location Utilization", |
| | | "库存在库时间统计": "Inventory Age", |
| | | "日入出库次数统计": "Daily Transactions", |
| | | "日入库明细查询": "Inbound Details", |
| | | "日出库明细查询": "Outbound Details", |
| | | "工作档维护日志": "Work Maintenance Log", |
| | | |
| | | |
| | | "开发专用": "Developer Tools", |
| | | "菜单列表": "Menu List", |
| | | "权限控制": "Permission Control", |
| | | "接口文档": "API Documentation", |
| | | "凭证记录": "Credential Records", |
| | | "系统配置": "System Configuration", |
| | | |
| | | "系统管理": "System Management", |
| | | "系统用户": "System Users", |
| | | "角色管理": "Role Management", |
| | | "操作日志": "Operation Log", |
| | | |
| | | "个人设置": "Personal Settings", |
| | | "基本资料": "Basic Information", |
| | | "可视化": "Visualization", |
| | | "侧边伸缩": "Toggle Side", |
| | | "刷新": "Refresh", |
| | | "全屏": "Full Screen", |
| | | "主题": "Theme", |
| | | "关闭当前": "Close Current", |
| | | "关闭其他": "Close Others", |
| | | "关闭所有": "Close All", |
| | | "关闭当前标签页": "Close Current Tab", |
| | | "关闭其他标签页": "Close Other Tabs", |
| | | "关闭所有标签页": "Close All Tabs", |
| | | "主页不能关闭": "Home page cannot be closed", |
| | | |
| | | "首页": "Home Page", |
| | | "库存滞留时间统计表": "Stock Retention Time Statistics", |
| | | "库位使用比例": "Location Usage Ratio", |
| | | "库位占比": "Location Percentage", |
| | | "日入出库数量": "Daily In/Out Quantity", |
| | | "入_出库数量": "In/Out Quantity", |
| | | "仓储管理系统": "WMS", |
| | | "请选择您要使用的模块": "Please select the module you want to use", |
| | | "运行任务": "Running Tasks", |
| | | "库存明细": "Inventory Details", |
| | | |
| | | "_comment_common": "Common Table Columns", |
| | | "商品编号_品号": "Item No.", |
| | | "商品名称_品名": "Item Name", |
| | | "规格": "Spec", |
| | | "代码": "Code", |
| | | "颜色": "Color", |
| | | "品牌": "Brand", |
| | | "单位": "Unit", |
| | | "单价": "Price", |
| | | "sku": "SKU", |
| | | "单位量": "Unit Qty", |
| | | "条码": "Barcode", |
| | | "产地": "Origin", |
| | | "厂家": "Manufacturer", |
| | | "生产日期": "Mfg Date", |
| | | "品项数": "Item Count", |
| | | "安全库存量": "Safety Stock", |
| | | "单箱净重": "Net Weight/Box", |
| | | "单箱毛重": "Gross Weight/Box", |
| | | "单箱体积": "Volume/Box", |
| | | "箱子尺寸": "Box Size", |
| | | "供应商": "Supplier", |
| | | "供应商编码": "Supplier Code", |
| | | "是否批次": "Batch Managed", |
| | | "保质期": "Shelf Life", |
| | | "预警天数": "Warning Days", |
| | | "制购": "Make/Buy", |
| | | "要求检验": "Inspection Reqd", |
| | | "危险品": "Hazardous", |
| | | "修改人员": "Updated By", |
| | | "修改时间": "Updated Time", |
| | | "备注": "Remark", |
| | | "单据编号": "Order No.", |
| | | "批号": "Batch No.", |
| | | "数量": "Quantity", |
| | | "托盘条码": "Pallet Barcode", |
| | | "入库时间": "Inbound Time", |
| | | "滞留天数": "Retention Days", |
| | | "库位号": "Location No.", |
| | | "托盘码": "Pallet Code", |
| | | "商品编号": "Item No.", |
| | | "商品名称": "Item Name", |
| | | "请输入": "Please enter", |
| | | "搜索": "Search", |
| | | "重置": "Reset", |
| | | "导出": "Export", |
| | | "详情": "Detail", |
| | | "库龄_天": "Age(Days)", |
| | | "no_data": "No Data", |
| | | "start_end_time": "Start / End Time", |
| | | "add": "Add", |
| | | "delete": "Delete", |
| | | "edit": "Edit", |
| | | "data_status": "Data Status", |
| | | "normal": "Normal", |
| | | "status_disabled": "Disabled", |
| | | "locked": "Locked", |
| | | "io_status": "Transaction Status", |
| | | "inbound": "Inbound", |
| | | "pending_inbound": "Pending Inbound", |
| | | "confirm_generate_task": "Confirm Task Generation", |
| | | "select_one_data": "Select One Record", |
| | | "confirm_delete_data": "Confirm Delete Record", |
| | | "confirm_delete_prefix": "Are you sure to delete ", |
| | | "confirm_delete_suffix": " record(s)?", |
| | | "this": "this", |
| | | "account": "Account", |
| | | "username": "Username", |
| | | "password": "Password", |
| | | "role": "Role", |
| | | "age_days": "Inventory Age(Days)", |
| | | "product_name": "Item Name", |
| | | "order_no": "Order No.", |
| | | "batch_no": "Batch No.", |
| | | "unit_qty": "Unit Qty", |
| | | "spec": "Spec", |
| | | "code": "Code", |
| | | "color": "Color", |
| | | "brand": "Brand", |
| | | "origin": "Origin", |
| | | "manufacturer": "Manufacturer", |
| | | "mfg_date": "Mfg Date", |
| | | "item_count": "Item Count", |
| | | "safety_stock": "Safety Stock", |
| | | "net_weight_box": "Net Weight/Box", |
| | | "gross_weight_box": "Gross Weight/Box", |
| | | "volume_box": "Volume/Box", |
| | | "box_size": "Box Size", |
| | | "supplier": "Supplier", |
| | | "supplier_code": "Supplier Code", |
| | | "batch_managed": "Batch Managed", |
| | | "shelf_life": "Shelf Life", |
| | | "warning_days": "Warning Days", |
| | | "make_buy": "Make/Buy", |
| | | "inspection_reqd": "Inspection Reqd", |
| | | "hazardous": "Hazardous", |
| | | "confirm_export_excel": "Confirm Export to Excel", |
| | | "no_data_found": "No Data Found", |
| | | "creator_detail": "Creator Details", |
| | | "modifier_detail": "Modifier Details", |
| | | "please_select_data": "please select data", |
| | | "pallet_barcode": "Pallet Code", |
| | | "product_code": "Item No.", |
| | | "location_no": "Location No.", |
| | | "search": "search", |
| | | "reset": "reset", |
| | | "export": "export", |
| | | "exporting": "Exporting...", |
| | | "detail": "Detail", |
| | | "modifier": "Modifier", |
| | | "modify_time": "Modify Time", |
| | | "prompt": "Prompt", |
| | | "info": "Info", |
| | | "id": "ID", |
| | | "material": "Material", |
| | | "material_desc": "Material Desc", |
| | | "status": "Status", |
| | | "remark": "Remark", |
| | | "add_time": "Add Time", |
| | | "creator": "Creator", |
| | | "close": "Close", |
| | | "modify": "Modify", |
| | | "warm_prompt_prefix": "Warm Prompt: Please fill in the information carefully, ", |
| | | "warm_prompt_suffix": "is mandatory.", |
| | | "total_prefix": "Total ", |
| | | "total_suffix": " items", |
| | | "jump_to": "Go to ", |
| | | "page": " page", |
| | | "items_per_page": " items/page", |
| | | "running": "Running", |
| | | "pending": "Pending", |
| | | "inbound_notice_no": "Inbound Notice No", |
| | | "input_placeholder": "Please input...", |
| | | "work_time": "Work Time", |
| | | "barcode": "Barcode", |
| | | "work_no": "Work No", |
| | | "work_status": "Work Status", |
| | | "crane_no": "Crane No", |
| | | "crane": "Crane", |
| | | "increase_priority": "Increase Priority", |
| | | "decrease_priority": "Decrease Priority", |
| | | "pre_existing": "Pre-Existing", |
| | | "empty_op": "Empty Op", |
| | | "pick": "Pick", |
| | | "count": "Count", |
| | | "complete": "Complete", |
| | | "cancel": "Cancel", |
| | | "transaction_type": "Transaction Type", |
| | | "priority": "Priority", |
| | | "source_station": "Source Station", |
| | | "target_station": "Target Station", |
| | | "source_location": "Source Location", |
| | | "target_location": "Target Location", |
| | | "picking": "Picking", |
| | | "exit": "Exit", |
| | | "warehouse_no": "Warehouse No", |
| | | "transfer_req_no": "Transfer Req No", |
| | | "item_no": "Item No", |
| | | "material_label_id": "Material Label ID", |
| | | "factory": "Factory", |
| | | "quantity": "Quantity", |
| | | "unit": "Unit", |
| | | "user_id": "User ID", |
| | | "empty_pallet": "Empty Pallet", |
| | | "work_time": "Work Time", |
| | | "crane_start_time": "Crane Start Time", |
| | | "crane_end_time": "Crane End Time", |
| | | "picking_time": "Picking Time", |
| | | "full_pallet": "Full Pallet", |
| | | "operation": "Operation", |
| | | "current_workflow_detail": "Material details for current workflow", |
| | | "confirm_cancel_work_order": "Confirm cancel this work order?", |
| | | "confirm_complete_work_order": "Confirm complete this work order?", |
| | | "confirm_pick_work_order": "Pick inbound this work order?", |
| | | "confirm_pre_existing_exception": "Pre-existing exception occurred. To re-inbound, ensure cargo is at crane outbound station!", |
| | | "confirm_cancel_erp_order": "Current task linked to ERP sales order. Cancellation will regenerate outbound task. Continue?", |
| | | "confirm_export": "Confirm export to Excel?", |
| | | "confirm_empty_op_exception": "Empty operation exception! Continue?", |
| | | "work_order_detail": "Work Order Detail", |
| | | "location_type": "Location Type", |
| | | "row": "Row", |
| | | "bay": "Bay", |
| | | "level": "Level", |
| | | "group": "Group", |
| | | "init": "Init", |
| | | "please_enter_password_reset_location": "Please enter password to reset location", |
| | | "init_location": "Initialize Location", |
| | | "password_error": "Password Error", |
| | | "location_detail": "Location Detail", |
| | | "modify_detail": "Modification Detail", |
| | | "create_detail": "Creation Detail", |
| | | "high_low_type": "High/Low Type", |
| | | "width_type": "Width Type", |
| | | "weight_type": "Weight Type", |
| | | "delete_location": "Delete Location", |
| | | "delete_keep": "Delete|Keep", |
| | | "start_end_row": "Start/End Row", |
| | | "start_end_bay": "Start/End Bay", |
| | | "start_end_level": "Start/End Level", |
| | | "crane_amount": "Crane Amount", |
| | | "start_crane": "Start Crane", |
| | | "low_location": "Low Location", |
| | | "high_location": "High Location", |
| | | "middle_location": "Middle Location", |
| | | "narrow_location": "Narrow Location", |
| | | "wide_location": "Wide Location", |
| | | "light_location": "Light Location", |
| | | "heavy_location": "Heavy Location", |
| | | "unknown": "Unknown", |
| | | "standard_crane_whs": "Standard Crane Whs", |
| | | "flat_whs": "Flat Whs", |
| | | "shuttle_board": "Shuttle Board", |
| | | "four_way_vehicle": "Four-way Vehicle", |
| | | "agv": "AGV", |
| | | "warm_prompt_clear_inventory": "Warm Prompt: Clearing inventory when modifying to empty location", |
| | | "禁用库位": "Disabled Location", |
| | | "在库库位": "Occupied Location", |
| | | "空库位": "Empty Location", |
| | | "使用库位": "Used Location", |
| | | "入库数量": "Inbound Quantity", |
| | | "出库数量": "Outbound Quantity", |
| | | "classification": "Type", |
| | | "stock_upper_limit": "Stock Max", |
| | | "stock_lower_limit": "Stock Min", |
| | | "stock_age_upper_limit_days": "Max Stock Age (Days)", |
| | | "area": "Area", |
| | | "please_select_print_data": "Please select data to print", |
| | | "batch_print_count": "Batch Print [Count: {{count}}]", |
| | | "category_cannot_be_empty": "Category cannot be empty", |
| | | "confirm_sync_file": "Confirm sync file [{{filename}}]?", |
| | | "template_1": "Template 1", |
| | | "template_2": "Template 2", |
| | | "template_3": "Template 3", |
| | | "print_preview": "Print Preview", |
| | | "please_input_item_no": "Enter Item No.", |
| | | "please_input_item_name": "Enter Item Name", |
| | | "please_input_item_spec": "Enter Item Spec", |
| | | "batch_print": "Batch Print", |
| | | "print": "Print", |
| | | "select_template": "Select Template", |
| | | "item": "Item", |
| | | "item_code": "Item Code", |
| | | "item_name": "Item Name", |
| | | "item_spec": "Item Spec", |
| | | "data_sync": "Sync Data", |
| | | |
| | | "io_type_code": "Transaction Type Code", |
| | | "io_type_desc": "Transaction Type Description", |
| | | "io_type_1": "1.Inbound", |
| | | "io_type_3": "3.Station to Station", |
| | | "io_type_6": "6.Exit on Device", |
| | | "io_type_10": "10.Empty Pallet Inbound", |
| | | "io_type_11": "11.Bin Transfer", |
| | | "io_type_53": "53.Picking Re-inbound", |
| | | "io_type_54": "54.Merge Re-inbound", |
| | | "io_type_57": "57.Cycle Count Re-inbound", |
| | | "io_type_101": "101.Outbound", |
| | | "io_type_103": "103.Picking Outbound", |
| | | "io_type_104": "104.Merge Outbound", |
| | | "io_type_107": "107.Cycle Count Outbound", |
| | | "io_type_110": "110.Empty Pallet Outbound", |
| | | "loc_status_code": "Location Status Code", |
| | | "loc_status_desc": "Location Status Description", |
| | | "location_status": "Location Status", |
| | | "loc_status_D": "D.Empty Bin/Pallet", |
| | | "loc_status_F": "F.In Stock", |
| | | "loc_status_G": "G.Aisle", |
| | | "loc_status_O": "O.Empty Location", |
| | | "loc_status_P": "P.Picking/Counting/Merging Outbound", |
| | | "loc_status_Q": "Q.Picking/Counting/Merging Re-inbound", |
| | | "loc_status_R": "R.Outbound Reserved", |
| | | "loc_status_S": "S.Inbound Reserved", |
| | | "loc_status_X": "X.Disabled", |
| | | "loc_status_Y": "Y.Merged", |
| | | "parent_menu": "Parent Menu", |
| | | "please_select_type": "Please Select Type", |
| | | "other": "Other", |
| | | "responsible_person": "Owner", |
| | | "please_enter_responsible_person": "Please enter Owner", |
| | | "classification_name": "Category Name", |
| | | "please_enter_classification_name": "Please enter Category Name", |
| | | "sort": "Sort", |
| | | "please_enter_sort": "Please enter sort", |
| | | "memo": "Memo", |
| | | "please_enter_memo": "Please enter memo", |
| | | "type": "Type", |
| | | "name": "Name", |
| | | "image": "Image", |
| | | "confirm_delete_selected_data": "Are you sure you want to delete the selected data?" |
| | | } |
| New file |
| | |
| | | { |
| | | "status_desc": "状态描述", |
| | | "wrk_status_0": "0.待接收", |
| | | "wrk_status_1": "1.已接收", |
| | | "wrk_status_2": "2.任务开始", |
| | | "wrk_status_3": "3.取货完成", |
| | | "wrk_status_4": "4.入库完成", |
| | | "wrk_status_5": "5.库存更新完成", |
| | | "wrk_status_6": "6.任务中断", |
| | | "wrk_status_7": "7.放货完成", |
| | | "wrk_status_11": "11.生成出库ID", |
| | | "wrk_status_12": "12.吊车出库中", |
| | | "wrk_status_13": "13.吊车空出库错误", |
| | | "wrk_status_14": "14.已出库未确认", |
| | | "wrk_status_15": "15.出库更新完成", |
| | | "_comment_loc_map": "=== 库位热点图 ===", |
| | | "display_mode": "显示模式", |
| | | "view_by_row": "按排显示", |
| | | "view_by_layer": "按层显示", |
| | | "enable_selection": "开启框选", |
| | | "disable_selection": "关闭框选", |
| | | "assign_zone": "分配库区", |
| | | "zone_legend": "库区图例", |
| | | "selection_mode_tip": "已开启框选模式,请在库位图上拖拽选择", |
| | | "please_select_zone": "请选择库区", |
| | | "zone_color": "库区颜色", |
| | | "assign_zone_and_color": "分配库区及颜色", |
| | | "confirm": "确定", |
| | | "cancel": "取消", |
| | | "cancel_selection": "取消选择", |
| | | "assign_success": "分配成功", |
| | | "operation_failed": "操作失败", |
| | | "fetch_zone_list_failed": "无法获取库区列表", |
| | | "modify_zone_color": "修改库区颜色", |
| | | "zone_name": "库区名称", |
| | | "select_color": "选择颜色", |
| | | "save": "保存", |
| | | "color_updated": "颜色已更新", |
| | | "update_failed": "更新失败", |
| | | "load_failed": "加载失败", |
| | | "language": "语言", |
| | | "license_validity_prefix": "临时许可证有效期:", |
| | | "license_validity_suffix": "天", |
| | | "basic_info": "基本资料", |
| | | "logout": "退出", |
| | | "home": "主页", |
| | | |
| | | "_comment_home": "主页标签栏", |
| | | "主页": "主页", |
| | | "控制台": "控制台", |
| | | "分析页": "分析页", |
| | | "库位热点图": "库位热点图", |
| | | |
| | | "基础数据": "基础数据", |
| | | "商品档案": "商品档案", |
| | | "工作状态": "工作状态", |
| | | "入出库类型": "入出库类型", |
| | | "库位状态": "库位状态", |
| | | "库位类型管理": "库位类型管理", |
| | | "工作序号查询": "工作序号查询", |
| | | "库位排号分配": "库位排号分配", |
| | | "归类管理": "归类管理", |
| | | "库区管理": "库区管理", |
| | | "路径站点设置": "路径站点设置", |
| | | |
| | | "库存管理": "库存管理", |
| | | "库位查询": "库位查询", |
| | | "库存明细管理": "库存明细管理", |
| | | "库存调整": "库存调整", |
| | | "库存明细统计": "库存明细统计", |
| | | |
| | | "入出库作业": "入出库作业", |
| | | "入库作业": "入库作业", |
| | | "出库作业": "出库作业", |
| | | "盘点出库": "盘点出库", |
| | | "库位移转": "库位移转", |
| | | "空板出库": "空板出库", |
| | | |
| | | "工作档管理": "工作档管理", |
| | | "工作档查询维护": "工作档查询维护", |
| | | "工作档明细查询": "工作档明细查询", |
| | | "工作历史档查询": "工作历史档查询", |
| | | "工作明细历史档查询": "工作明细历史档查询", |
| | | "work_order_detail_history": "工作明细历史档", |
| | | "入库通知档": "入库通知档", |
| | | "入库通知历史档": "入库通知历史档", |
| | | |
| | | "订单系统": "订单系统", |
| | | "单据管理": "单据管理", |
| | | "订单出库": "订单出库", |
| | | "订单状态": "订单状态", |
| | | "单据类型": "单据类型", |
| | | |
| | | "设备维护": "设备维护", |
| | | "库位管理": "库位管理", |
| | | "站点管理": "站点管理", |
| | | |
| | | "日志统计": "日志统计", |
| | | "库存调整记录": "库存调整记录", |
| | | "三方接口统计": "三方接口统计", |
| | | "异常工作档": "异常工作档", |
| | | "库位使用率统计": "库位使用率统计", |
| | | "库存在库时间统计": "库存在库时间统计", |
| | | "日入出库次数统计": "日入出库次数统计", |
| | | "日入库明细查询": "日入库明细查询", |
| | | "日出库明细查询": "日出库明细查询", |
| | | "工作档维护日志": "工作档维护日志", |
| | | |
| | | "开发专用": "开发专用", |
| | | "菜单列表": "菜单列表", |
| | | "权限控制": "权限控制", |
| | | "接口文档": "接口文档", |
| | | "凭证记录": "凭证记录", |
| | | "系统配置": "系统配置", |
| | | |
| | | "系统管理": "系统管理", |
| | | "系统用户": "系统用户", |
| | | "角色管理": "角色管理", |
| | | "操作日志": "操作日志", |
| | | |
| | | "个人设置": "角色管理", |
| | | "基本资料": "基本资料", |
| | | |
| | | "可视化": "可视化", |
| | | "侧边伸缩": "侧边伸缩", |
| | | "刷新": "刷新", |
| | | "全屏": "全屏", |
| | | "主题": "主题", |
| | | "关闭当前": "关闭当前", |
| | | "关闭其他": "关闭其他", |
| | | "关闭所有": "关闭所有", |
| | | "关闭当前标签页": "关闭当前标签页", |
| | | "关闭其他标签页": "关闭其他标签页", |
| | | "关闭所有标签页": "关闭所有标签页", |
| | | "主页不能关闭": "主页不能关闭", |
| | | |
| | | "首页": "首页", |
| | | "库存滞留时间统计表": "库存滞留时间统计表", |
| | | "库位使用比例": "库位使用比例", |
| | | "库位占比": "库位占比", |
| | | "日入出库数量": "日入出库数量", |
| | | "入_出库数量": "入/出库数量", |
| | | "仓储管理系统": "仓储管理系统", |
| | | "请选择您要使用的模块": "请选择您要使用的模块", |
| | | "运行任务": "运行任务", |
| | | "库存明细": "库存明细", |
| | | |
| | | "_comment_common": "Common Table Columns", |
| | | "商品编号_品号": "商品编号(品号)", |
| | | "商品名称_品名": "商品名称(品名)", |
| | | "规格": "规格", |
| | | "代码": "代码", |
| | | "颜色": "颜色", |
| | | "品牌": "品牌", |
| | | "单位": "单位", |
| | | "单价": "单价", |
| | | "sku": "sku", |
| | | "单位量": "单位量", |
| | | "条码": "条码", |
| | | "产地": "产地", |
| | | "厂家": "厂家", |
| | | "生产日期": "生产日期", |
| | | "品项数": "品项数", |
| | | "安全库存量": "安全库存量", |
| | | "单箱净重": "单箱净重", |
| | | "单箱毛重": "单箱毛重", |
| | | "单箱体积": "单箱体积", |
| | | "箱子尺寸": "箱子尺寸", |
| | | "供应商": "供应商", |
| | | "供应商编码": "供应商编码", |
| | | "是否批次": "是否批次", |
| | | "保质期": "保质期", |
| | | "预警天数": "预警天数", |
| | | "制购": "制购", |
| | | "要求检验": "要求检验", |
| | | "危险品": "危险品", |
| | | "修改人员": "修改人员", |
| | | "修改时间": "修改时间", |
| | | "备注": "备注", |
| | | "单据编号": "单据编号", |
| | | "批号": "批号", |
| | | "数量": "数量", |
| | | "托盘条码": "托盘条码", |
| | | "入库时间": "入库时间", |
| | | "滞留天数": "滞留天数", |
| | | "库位号": "库位号", |
| | | "托盘码": "托盘码", |
| | | "pallet_code": "托盘码", |
| | | |
| | | "商品编号": "商品编号", |
| | | "商品名称": "商品名称", |
| | | "请输入": "请输入", |
| | | "搜索": "搜索", |
| | | "重置": "重置", |
| | | "导出": "导出", |
| | | "详情": "详情", |
| | | "库龄_天": "库龄(天)", |
| | | "no_data": "暂无相关数据", |
| | | "start_end_time": "起始时间 - 终止时间", |
| | | "add": "新增", |
| | | "delete": "删除", |
| | | "edit": "编辑", |
| | | "data_status": "数据状态", |
| | | "normal": "正常", |
| | | "status_disabled": "禁用", |
| | | "locked": "锁定", |
| | | "io_status": "入出状态", |
| | | "inbound": "入库中", |
| | | "pending_inbound": "待入库", |
| | | "confirm_generate_task": "确定生成工作档任务吗", |
| | | "select_one_data": "请至少选择一条数据", |
| | | "confirm_delete_data": "确定删除数据吗", |
| | | "confirm_delete_prefix": "确定删除", |
| | | "confirm_delete_suffix": "条数据吗", |
| | | "this": "此", |
| | | "account": "账号", |
| | | "username": "名称", |
| | | "password": "密码", |
| | | "role": "角色", |
| | | "age_days": "库龄(天)", |
| | | "product_name": "商品名称", |
| | | "order_no": "单据编号", |
| | | "batch_no": "批号", |
| | | "unit_qty": "单位量", |
| | | "spec": "规格", |
| | | "code": "代码", |
| | | "color": "颜色", |
| | | "brand": "品牌", |
| | | "origin": "产地", |
| | | "manufacturer": "厂家", |
| | | "mfg_date": "生产日期", |
| | | "item_count": "品项数", |
| | | "safety_stock": "安全库存量", |
| | | "net_weight_box": "单箱净重", |
| | | "gross_weight_box": "单箱毛重", |
| | | "volume_box": "单箱体积", |
| | | "box_size": "箱子尺寸", |
| | | "supplier": "供应商", |
| | | "supplier_code": "供应商编码", |
| | | "batch_managed": "是否批次", |
| | | "shelf_life": "保质期", |
| | | "warning_days": "预警天数", |
| | | "make_buy": "制购", |
| | | "inspection_reqd": "要求检验", |
| | | "hazardous": "危险品", |
| | | "confirm_export_excel": "确定导出Excel吗", |
| | | "no_data_found": "无数据", |
| | | "creator_detail": "创建者详情", |
| | | "modifier_detail": "修改人员详情", |
| | | "please_select_data": "请选择数据", |
| | | "pallet_barcode": "托盘条码", |
| | | "product_code": "商品编号", |
| | | "location_no": "库位号", |
| | | "search": "搜索", |
| | | "reset": "重置", |
| | | "export": "导出", |
| | | "exporting": "正在导出...", |
| | | "detail": "详情", |
| | | "modifier": "修改人员", |
| | | "modify_time": "修改时间", |
| | | "prompt": "提示", |
| | | "info": "信息", |
| | | "id": "编号", |
| | | "material": "物料", |
| | | "material_desc": "物料描述", |
| | | "status": "状态", |
| | | "remark": "备注", |
| | | "add_time": "添加时间", |
| | | "creator": "创建者", |
| | | "close": "关闭", |
| | | "modify": "修改", |
| | | "warm_prompt_prefix": "温馨提示:请仔细填写相关信息,", |
| | | "warm_prompt_suffix": "为必填选项。", |
| | | "total_prefix": "共 ", |
| | | "total_suffix": " 条", |
| | | "jump_to": "到第", |
| | | "page": "页", |
| | | "items_per_page": " 条/页", |
| | | "running": "运行中", |
| | | "pending": "待处理", |
| | | "inbound_notice_no": "入库通知号", |
| | | "input_placeholder": "请输入...", |
| | | "work_time": "工作时间", |
| | | "barcode": "条码", |
| | | "work_no": "工作号", |
| | | "work_status": "工作状态", |
| | | "crane_no": "堆垛机号", |
| | | "crane": "堆垛机", |
| | | "increase_priority": "增加优先级", |
| | | "decrease_priority": "降低优先级", |
| | | "pre_existing": "先入品", |
| | | "empty_op": "空操作", |
| | | "pick": "拣", |
| | | "count": "盘", |
| | | "complete": "完成", |
| | | "cancel": "取消", |
| | | "transaction_type": "入出库类型", |
| | | "priority": "优先级", |
| | | "source_station": "源站", |
| | | "target_station": "目标站", |
| | | "source_location": "源库位", |
| | | "target_location": "目标库位", |
| | | "warehouse_no": "仓库号", |
| | | "transfer_req_no": "转储请求编号", |
| | | "item_no": "物料编码", |
| | | "material_label_id": "物料标签ID", |
| | | "factory": "工厂", |
| | | "quantity": "数量", |
| | | "unit": "单位", |
| | | "user_id": "用户ID", |
| | | "picking": "拣料", |
| | | "exit": "退出", |
| | | "empty_pallet": "空板", |
| | | "work_time": "工作时间", |
| | | "crane_start_time": "堆垛机启动时间", |
| | | "crane_end_time": "堆垛机停止时间", |
| | | "picking_time": "拣料时间", |
| | | "full_pallet": "满板", |
| | | "operation": "操作", |
| | | "current_workflow_detail": "以下为当前工作流的物料明细", |
| | | "confirm_cancel_work_order": "确认取消该笔工作档?", |
| | | "confirm_complete_work_order": "确认完成该笔工作档?", |
| | | "confirm_pick_work_order": "拣料入库该笔工作档?", |
| | | "confirm_pre_existing_exception": "任务发生先入品异常。如需重新入库,请确保货物已放至堆垛机出库站!", |
| | | "confirm_cancel_erp_order": "当前任务关联ERP销售单,取消将重新生成出库作业,是否继续?", |
| | | "confirm_export": "确定导出Excel吗", |
| | | "confirm_empty_op_exception": "任务发送空操作异常!是否继续?", |
| | | "work_order_detail": "工作档明细", |
| | | "location_type": "库位类型", |
| | | "row": "排", |
| | | "bay": "列", |
| | | "level": "层", |
| | | "group": "组", |
| | | "init": "初始化", |
| | | "please_enter_password_reset_location": "请输入口令,并重置库位", |
| | | "init_location": "初始化库位", |
| | | "password_error": "口令错误", |
| | | "location_detail": "库位详情", |
| | | "modify_detail": "修改详情", |
| | | "create_detail": "创建详情", |
| | | "high_low_type": "高低类型", |
| | | "width_type": "宽窄类型", |
| | | "weight_type": "轻重类型", |
| | | "delete_location": "删除库位", |
| | | "delete_keep": "删除|保留", |
| | | "start_end_row": "起止排", |
| | | "start_end_bay": "起止列", |
| | | "start_end_level": "起止层", |
| | | "crane_amount": "堆垛机数量", |
| | | "start_crane": "起始堆垛机", |
| | | "low_location": "低库位", |
| | | "high_location": "高库位", |
| | | "middle_location": "中库位", |
| | | "narrow_location": "窄库位", |
| | | "wide_location": "宽库位", |
| | | "light_location": "轻库位", |
| | | "heavy_location": "重库位", |
| | | "unknown": "未知", |
| | | "standard_crane_whs": "标准堆垛机库", |
| | | "flat_whs": "平库", |
| | | "shuttle_board": "穿梭板", |
| | | "four_way_vehicle": "四向车", |
| | | "agv": "AGV", |
| | | "warm_prompt_clear_inventory": "温馨提示:修改为空库位时会清除库存明细", |
| | | "禁用库位": "禁用库位", |
| | | "在库库位": "在库库位", |
| | | "空库位": "空库位", |
| | | "使用库位": "使用库位", |
| | | "入库数量": "入库数量", |
| | | "出库数量": "出库数量", |
| | | "classification": "归类", |
| | | "stock_upper_limit": "库存上限", |
| | | "stock_lower_limit": "库存下限", |
| | | "stock_age_upper_limit_days": "库龄上限(天)", |
| | | "area": "区域", |
| | | "please_select_print_data": "请选择打印数据", |
| | | "batch_print_count": "批量打印 [数量: {{count}}]", |
| | | "category_cannot_be_empty": "分类不能为空", |
| | | "confirm_sync_file": "确认同步 [{{filename}}] 文件吗?", |
| | | "template_1": "模板一", |
| | | "template_2": "模板二", |
| | | "template_3": "模板三", |
| | | "print_preview": "打印预览", |
| | | "please_input_item_no": "请输入商品编号", |
| | | "please_input_item_name": "请输入商品名称", |
| | | "please_input_item_spec": "请输入商品规格", |
| | | "batch_print": "批量打印", |
| | | "print": "打印", |
| | | "select_template": "选择模板", |
| | | "item": "商品", |
| | | "item_code": "商品编码", |
| | | "item_name": "商品名称", |
| | | "item_spec": "商品名称", |
| | | "data_sync": "数据同步", |
| | | |
| | | "io_type_code": "入出类型代号", |
| | | "io_type_desc": "入出类型描述", |
| | | "io_type_1": "1.入库", |
| | | "io_type_3": "3.站到站", |
| | | "io_type_6": "6.设备上退出", |
| | | "io_type_10": "10.空板入库", |
| | | "io_type_11": "11.库格移载", |
| | | "io_type_53": "53.拣料再入库", |
| | | "io_type_54": "54.并板再入库", |
| | | "io_type_57": "57.盘点再入库", |
| | | "io_type_101": "101.出库", |
| | | "io_type_103": "103.拣料出库", |
| | | "io_type_104": "104.并板出库", |
| | | "io_type_107": "107.盘点出库", |
| | | "io_type_110": "110.空板出库", |
| | | "loc_status_code": "库位状态代号", |
| | | "loc_status_desc": "库位状态描述", |
| | | "location_status": "库位状态", |
| | | "loc_status_D": "D.空桶/空栈板", |
| | | "loc_status_F": "F.在库", |
| | | "loc_status_G": "G.轨道", |
| | | "loc_status_O": "O.空库位", |
| | | "loc_status_P": "P.拣料/盘点/并板出库中", |
| | | "loc_status_Q": "Q.拣料/盘点/并板再入库", |
| | | "loc_status_R": "R.出库预约", |
| | | "loc_status_S": "S.入库预约", |
| | | "loc_status_X": "X.禁用", |
| | | "loc_status_Y": "Y.被合并", |
| | | "parent_menu": "上级菜单", |
| | | "please_select_type": "请选择类型", |
| | | "other": "其他", |
| | | "responsible_person": "负责人", |
| | | "please_enter_responsible_person": "请输入负责人", |
| | | "classification_name": "归类名称", |
| | | "please_enter_classification_name": "请输入归类名称", |
| | | "sort": "排序", |
| | | "please_enter_sort": "请输入排序", |
| | | "memo": "备注", |
| | | "please_enter_memo": "请输入备注", |
| | | "type": "类型", |
| | | "name": "名称", |
| | | "image": "图片", |
| | | "confirm_delete_selected_data": "确定要删除选中数据吗?" |
| | | } |
| | |
| | | var layDate = layui.laydate; |
| | | var form = layui.form; |
| | | |
| | | var doneCallback = function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage(); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | }; |
| | | |
| | | function getCol() { |
| | | return [[ |
| | | {type: 'checkbox', fixed: 'left'} |
| | | // ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80} |
| | | ,{field: 'locSts', align: 'center',sort:true,title: I18n.t('loc_status_code')} |
| | | ,{field: 'locDesc', align: 'center',sort: true,title: I18n.t('loc_status_desc'), templet: function(d) { |
| | | var key = 'loc_status_' + d.locSts; |
| | | var text = I18n.t(key); |
| | | return text === key ? d.locDesc : text; |
| | | }} |
| | | ,{field: 'modiUser$', align: 'center',title: I18n.t('modifier')} |
| | | ,{field: 'modiTime$', align: 'center',title: I18n.t('modify_time')} |
| | | // ,{field: 'appeUser$', align: 'center',title: '创建者',event: 'appeUser', style: 'text-decoration: underline;cursor:pointer'} |
| | | // ,{field: 'appeTime$', align: 'center',title: '添加时间'} |
| | | |
| | | ,{fixed: 'right', title: I18n.t('operation'), align: 'center', toolbar: '#operate', width:150} |
| | | ]]; |
| | | } |
| | | |
| | | $(document).on('i18n:languageChanged', function() { |
| | | tableIns.reload({ |
| | | cols: getCol(), |
| | | done: doneCallback |
| | | }); |
| | | }); |
| | | |
| | | // 数据渲染 |
| | | tableIns = table.render({ |
| | | elem: '#basLocSts', |
| | |
| | | even: true, |
| | | toolbar: '#toolbar', |
| | | cellMinWidth: 50, |
| | | cols: [[ |
| | | {type: 'checkbox', fixed: 'left'} |
| | | // ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80} |
| | | ,{field: 'locSts', align: 'center',sort:true,title: '库位状态代号'} |
| | | ,{field: 'locDesc', align: 'center',sort: true,title: '库位状态描述'} |
| | | ,{field: 'modiUser$', align: 'center',title: '修改人员'} |
| | | ,{field: 'modiTime$', align: 'center',title: '修改时间'} |
| | | // ,{field: 'appeUser$', align: 'center',title: '创建者',event: 'appeUser', style: 'text-decoration: underline;cursor:pointer'} |
| | | // ,{field: 'appeTime$', align: 'center',title: '添加时间'} |
| | | |
| | | ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width:150} |
| | | ]], |
| | | cols: getCol(), |
| | | request: { |
| | | pageName: 'curr', |
| | | pageSize: 'limit' |
| | |
| | | response: { |
| | | statusCode: 200 |
| | | }, |
| | | done: function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | } |
| | | done: doneCallback |
| | | }); |
| | | |
| | | // 监听排序事件 |
| | |
| | | page: { |
| | | curr: 1 |
| | | }, |
| | | done: function (res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | } |
| | | cols: getCol(), |
| | | done: doneCallback |
| | | }); |
| | | }); |
| | | |
| | |
| | | case 'addData': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '新增', |
| | | title: I18n.t('add'), |
| | | maxmin: true, |
| | | area: ['500px', top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | tableIns.reload({ |
| | | page: { |
| | | curr: pageCurr |
| | | } |
| | | }, |
| | | cols: getCol(), |
| | | done: doneCallback |
| | | }); |
| | | limit(); |
| | | break; |
| | | case 'deleteData': |
| | | var data = checkStatus.data; |
| | | if (data.length === 0){ |
| | | layer.msg('请选择数据'); |
| | | layer.msg(I18n.t('select_data_alert') || '请选择数据'); |
| | | } else { |
| | | layer.confirm('确定删除'+(data.length===1?'此':data.length)+'条数据吗', function(){ |
| | | layer.confirm(I18n.t('confirm_delete_alert') || '确定删除选中的数据吗', function(){ |
| | | $.ajax({ |
| | | url: baseUrl+"/basLocSts/delete/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | |
| | | success: function (res) { |
| | | if (res.code === 200){ |
| | | layer.closeAll(); |
| | | tableReload(false); |
| | | tableIns.reload({cols: getCol(), done: doneCallback}); |
| | | } else if (res.code === 403){ |
| | | top.location.href = baseUrl+"/"; |
| | | } else { |
| | |
| | | } |
| | | break; |
| | | case 'exportData': |
| | | layer.confirm('确定导出Excel吗', {shadeClose: true}, function(){ |
| | | layer.confirm(I18n.t('confirm_export') || '确定导出Excel吗', {shadeClose: true}, function(){ |
| | | var titles=[]; |
| | | var fields=[]; |
| | | obj.config.cols[0].map(function (col) { |
| | |
| | | case 'detail': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '详情', |
| | | title: I18n.t('detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | case 'edit': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '修改', |
| | | title: I18n.t('modify'), |
| | | maxmin: true, |
| | | area: ['500px', top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: '修改详情', |
| | | title: I18n.t('modify_detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: '创详情', |
| | | title: I18n.t('create_detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | |
| | | // 数据修改动作 |
| | | form.on('submit(edit)', function () { |
| | | method("update") |
| | | if (banMsg != null){ |
| | | layer.msg(banMsg); |
| | | return; |
| | | } |
| | | method("edit"); |
| | | }); |
| | | |
| | | function method(name){ |
| | | var index = layer.load(1, { |
| | | shade: [0.5,'#000'] //0.1透明度的背景 |
| | | function method(key) { |
| | | var data = {}; |
| | | $.each($('#detail [name]').serializeArray(), function() { |
| | | data[this.name] = this.value; |
| | | }); |
| | | var data = { |
| | | // id: $('#id').val(), |
| | | locSts: $('#locSts').val(), |
| | | locDesc: $('#locDesc').val(), |
| | | modiUser: $('#modiUser').val(), |
| | | modiTime: top.strToDate($('#modiTime\\$').val()), |
| | | appeUser: $('#appeUser').val(), |
| | | appeTime: top.strToDate($('#appeTime\\$').val()), |
| | | $.each($('#detail .layui-input').serializeArray(), function() { |
| | | data[this.name] = this.value; |
| | | }); |
| | | |
| | | }; |
| | | var url = ""; |
| | | if (key === "add") url = baseUrl+"/basLocSts/add/auth"; |
| | | else if (key === "edit") url = baseUrl+"/basLocSts/update/auth"; |
| | | |
| | | $.ajax({ |
| | | url: baseUrl+"/basLocSts/"+name+"/auth", |
| | | url: url, |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: top.reObject(data), |
| | | data: JSON.stringify(data), |
| | | contentType: "application/json;charset=UTF-8", |
| | | method: 'POST', |
| | | success: function (res) { |
| | | if (res.code === 200){ |
| | | parent.layer.closeAll(); |
| | | tableReload(true); |
| | | $("#data-detail :input").each(function () { |
| | | $(this).val(""); |
| | | }); |
| | | layer.msg(res.msg); |
| | | setTimeout(function () { |
| | | var index = parent.layer.getFrameIndex(window.name); |
| | | parent.layer.close(index); |
| | | parent.tableIns.reload({cols: parent.getCol(), done: parent.doneCallback}); |
| | | }, 1000) |
| | | } else if (res.code === 403){ |
| | | top.location.href = baseUrl+"/"; |
| | | }else { |
| | | } else { |
| | | layer.msg(res.msg) |
| | | } |
| | | layer.close(index); |
| | | } |
| | | }) |
| | | } |
| | | |
| | | // 搜索栏搜索事件 |
| | | form.on('submit(search)', function (data) { |
| | | pageCurr = 1; |
| | | tableReload(false); |
| | | }); |
| | | |
| | | // 搜索栏重置事件 |
| | | form.on('submit(reset)', function (data) { |
| | | pageCurr = 1; |
| | | clearFormVal($('#search-box')); |
| | | tableReload(false); |
| | | }); |
| | | |
| | | // 时间选择器 |
| | | layDate.render({ |
| | | elem: '#modiTime\\$', |
| | | type: 'datetime' |
| | | }); |
| | | layDate.render({ |
| | | elem: '#appeTime\\$', |
| | | type: 'datetime' |
| | | }); |
| | | |
| | | |
| | | }); |
| | | |
| | | // 关闭动作 |
| | | $(document).on('click','#data-detail-close', function () { |
| | | parent.layer.closeAll(); |
| | | }); |
| | | |
| | | function tableReload(child) { |
| | | var searchData = {}; |
| | | $.each($('#search-box [name]').serializeArray(), function() { |
| | | searchData[this.name] = this.value; |
| | | }); |
| | | (child ? parent.tableIns : tableIns).reload({ |
| | | where: searchData, |
| | | page: { |
| | | curr: pageCurr |
| | | }, |
| | | done: function (res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | if (res.data.length === 0 && count !== 0) { |
| | | tableIns.reload({ |
| | | where: searchData, |
| | | page: { |
| | | curr: pageCurr-1 |
| | | } |
| | | }); |
| | | pageCurr -= 1; |
| | | } |
| | | limit(child); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | function setFormVal(el, data, showImg) { |
| | | for (var val in data) { |
| | | var find = el.find(":input[id='" + val + "']"); |
| | | find.val(data[val]); |
| | | if (showImg){ |
| | | var next = find.next(); |
| | | if (next.get(0)){ |
| | | if (next.get(0).localName === "img") { |
| | | find.hide(); |
| | | next.attr("src", data[val]); |
| | | next.show(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | function clearFormVal(el) { |
| | | $(':input', el) |
| | | .val('') |
| | | .removeAttr('checked') |
| | | .removeAttr('selected'); |
| | | } |
| | | |
| | | function detailScreen(index) { |
| | | var detail = layer.getChildFrame('#data-detail', index); |
| | | var height = detail.height()+60; |
| | | if (height > ($(window).height()*0.9)) { |
| | | height = ($(window).height()*0.9); |
| | | } |
| | | layer.style(index, { |
| | | // top: (($(window).height()-height)/3)+"px", |
| | | height: height+'px' |
| | | }); |
| | | } |
| | | |
| | | $('body').keydown(function () { |
| | | if (event.keyCode === 13) { |
| | | $("#search").click(); |
| | | } |
| | | }); |
| | |
| | | var layDate = layui.laydate; |
| | | var form = layui.form; |
| | | |
| | | var doneCallback = function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | }; |
| | | |
| | | $(document).on('i18n:languageChanged', function() { |
| | | tableIns.reload({ |
| | | cols: getCol(), |
| | | done: doneCallback |
| | | }); |
| | | }); |
| | | |
| | | function getCol() { |
| | | return [[ |
| | | {type: 'checkbox', fixed: 'left'} |
| | | // ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80} |
| | | ,{field: 'ioType', align: 'center',sort:true,title: I18n.t('io_type_code')} |
| | | // ,{field: 'ioPri', align: 'center',title: '主要'} |
| | | ,{field: 'ioDesc', align: 'center',title: I18n.t('io_type_desc'), templet: function(d) { |
| | | var key = 'io_type_' + d.ioType; |
| | | var text = I18n.t(key); |
| | | return text === key ? d.ioDesc : text; |
| | | }} |
| | | ,{field: 'modiUser$', align: 'center',title: I18n.t('modifier')} |
| | | ,{field: 'modiTime$', align: 'center',title: I18n.t('modify_time')} |
| | | // ,{field: 'appeUser$', align: 'center',title: '创建者',event: 'appeUser', style: 'text-decoration: underline;cursor:pointer'} |
| | | // ,{field: 'appeTime$', align: 'center',title: '添加时间'} |
| | | |
| | | ,{fixed: 'right', title: I18n.t('operation'), align: 'center', toolbar: '#operate', width:150} |
| | | ]]; |
| | | } |
| | | |
| | | // 数据渲染 |
| | | tableIns = table.render({ |
| | | elem: '#basWrkIotype', |
| | |
| | | even: true, |
| | | toolbar: '#toolbar', |
| | | cellMinWidth: 50, |
| | | cols: [[ |
| | | {type: 'checkbox', fixed: 'left'} |
| | | // ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80} |
| | | ,{field: 'ioType', align: 'center',sort:true,title: '入出类型代号'} |
| | | // ,{field: 'ioPri', align: 'center',title: '主要'} |
| | | ,{field: 'ioDesc', align: 'center',title: '入出类型描述'} |
| | | ,{field: 'modiUser$', align: 'center',title: '修改人员'} |
| | | ,{field: 'modiTime$', align: 'center',title: '修改时间'} |
| | | // ,{field: 'appeUser$', align: 'center',title: '创建者',event: 'appeUser', style: 'text-decoration: underline;cursor:pointer'} |
| | | // ,{field: 'appeTime$', align: 'center',title: '添加时间'} |
| | | |
| | | ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width:150} |
| | | ]], |
| | | cols: getCol(), |
| | | request: { |
| | | pageName: 'curr', |
| | | pageSize: 'limit' |
| | |
| | | response: { |
| | | statusCode: 200 |
| | | }, |
| | | done: function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | } |
| | | done: doneCallback |
| | | }); |
| | | |
| | | // 监听排序事件 |
| | |
| | | page: { |
| | | curr: 1 |
| | | }, |
| | | done: function (res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | } |
| | | done: doneCallback |
| | | }); |
| | | }); |
| | | |
| | |
| | | case 'addData': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '新增', |
| | | title: I18n.t('add'), |
| | | maxmin: true, |
| | | area: ['500px', top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | tableIns.reload({ |
| | | page: { |
| | | curr: pageCurr |
| | | } |
| | | }, |
| | | done: doneCallback |
| | | }); |
| | | limit(); |
| | | break; |
| | | case 'deleteData': |
| | | var data = checkStatus.data; |
| | | if (data.length === 0){ |
| | | layer.msg('请选择数据'); |
| | | layer.msg(I18n.t('please_select_data')); |
| | | } else { |
| | | layer.confirm('确定删除'+(data.length===1?'此':data.length)+'条数据吗', function(){ |
| | | var msg = I18n.t('confirm_delete_prefix') + (data.length===1?I18n.t('this'):data.length) + I18n.t('confirm_delete_suffix'); |
| | | layer.confirm(msg, function(){ |
| | | $.ajax({ |
| | | url: baseUrl+"/basWrkIotype/delete/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | |
| | | } |
| | | break; |
| | | case 'exportData': |
| | | layer.confirm('确定导出Excel吗', {shadeClose: true}, function(){ |
| | | layer.confirm(I18n.t('confirm_export'), {shadeClose: true}, function(){ |
| | | var titles=[]; |
| | | var fields=[]; |
| | | obj.config.cols[0].map(function (col) { |
| | |
| | | var layDate = layui.laydate; |
| | | var form = layui.form; |
| | | |
| | | // 定义列生成函数 |
| | | var getCol = function() { |
| | | return [ |
| | | {type: 'checkbox', fixed: 'left'} |
| | | ,{field: 'wrkSts', align: 'center', sort: true, title: I18n.t('code')} |
| | | ,{field: 'wrkDesc', align: 'center', title: I18n.t('status_desc'), templet: function(d) { |
| | | var key = 'wrk_status_' + d.wrkSts; |
| | | var text = I18n.t(key); |
| | | return text === key ? d.wrkDesc : text; |
| | | }} |
| | | ,{field: 'modiUser$', align: 'center', title: I18n.t('modifier')} |
| | | ,{field: 'modiTime$', align: 'center', title: I18n.t('modify_time')} |
| | | ,{fixed: 'right', title: I18n.t('operation'), align: 'center', toolbar: '#operate', width: 150} |
| | | ]; |
| | | }; |
| | | |
| | | // 定义通用done回调 |
| | | var tableDone = function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl + "/"; |
| | | } |
| | | pageCurr = curr; |
| | | limit(); |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage(); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | }; |
| | | |
| | | // 数据渲染 |
| | | tableIns = table.render({ |
| | | elem: '#basWrkStatus', |
| | |
| | | page: true, |
| | | limit: 16, |
| | | limits: [16, 30, 50, 100, 200, 500], |
| | | // skin: 'line', |
| | | even: true, |
| | | toolbar: '#toolbar', |
| | | cellMinWidth: 50, |
| | | cols: [[ |
| | | {type: 'checkbox', fixed: 'left'} |
| | | // ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80} |
| | | ,{field: 'wrkSts', align: 'center',sort:true,title: '代号'} |
| | | ,{field: 'wrkDesc', align: 'center',title: '状态描述'} |
| | | ,{field: 'modiUser$', align: 'center',title: '修改人员'} |
| | | ,{field: 'modiTime$', align: 'center',title: '修改时间'} |
| | | // ,{field: 'appeUser$', align: 'center',title: '创建者',event: 'appeUser', style: 'text-decoration: underline;cursor:pointer'} |
| | | // ,{field: 'appeTime$', align: 'center',title: '添加时间'} |
| | | |
| | | ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width:150} |
| | | ]], |
| | | cols: [getCol()], |
| | | request: { |
| | | pageName: 'curr', |
| | | pageSize: 'limit' |
| | |
| | | response: { |
| | | statusCode: 200 |
| | | }, |
| | | done: function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | } |
| | | done: tableDone |
| | | }); |
| | | |
| | | // 监听排序事件 |
| | |
| | | page: { |
| | | curr: 1 |
| | | }, |
| | | done: function (res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | } |
| | | cols: [getCol()], |
| | | done: tableDone |
| | | }); |
| | | }); |
| | | |
| | | // 监听语言切换 |
| | | $(document).on('i18n:languageChanged i18n:ready', function() { |
| | | tableIns.reload({ |
| | | cols: [getCol()], |
| | | done: tableDone |
| | | }); |
| | | }); |
| | | |
| | |
| | | case 'addData': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '新增', |
| | | title: I18n.t('add'), |
| | | maxmin: true, |
| | | area: ['500px', top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | tableIns.reload({ |
| | | page: { |
| | | curr: pageCurr |
| | | } |
| | | }, |
| | | done: tableDone |
| | | }); |
| | | limit(); |
| | | break; |
| | | case 'deleteData': |
| | | var data = checkStatus.data; |
| | | if (data.length === 0){ |
| | | layer.msg('请选择数据'); |
| | | layer.msg(I18n.t('please_select_data')); |
| | | } else { |
| | | layer.confirm('确定删除'+(data.length===1?'此':data.length)+'条数据吗', function(){ |
| | | layer.confirm(I18n.t('confirm_delete_prefix')+(data.length===1?I18n.t('this'):data.length)+I18n.t('confirm_delete_suffix'), {title: I18n.t('info')}, function(){ |
| | | $.ajax({ |
| | | url: baseUrl+"/basWrkStatus/delete/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | |
| | | } |
| | | break; |
| | | case 'exportData': |
| | | layer.confirm('确定导出Excel吗', {shadeClose: true}, function(){ |
| | | layer.confirm(I18n.t('confirm_export'), {title: I18n.t('info'), shadeClose: true}, function(){ |
| | | var titles=[]; |
| | | var fields=[]; |
| | | obj.config.cols[0].map(function (col) { |
| | |
| | | case 'detail': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '详情', |
| | | title: I18n.t('detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | case 'edit': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '修改', |
| | | title: I18n.t('edit'), |
| | | maxmin: true, |
| | | area: ['500px', top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | case 'modiUser': |
| | | var param = top.reObject(data).modiUser; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | layer.msg(I18n.t('no_data')); |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: '修改详情', |
| | | title: I18n.t('modifier_detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | case 'appeUser': |
| | | var param = top.reObject(data).appeUser; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | layer.msg(I18n.t('no_data')); |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: '创详情', |
| | | title: I18n.t('creator_detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | pageCurr -= 1; |
| | | } |
| | | limit(child); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | function setFormVal(el, data, showImg) { |
| | | for (var val in data) { |
| | | var find = el.find(":input[id='" + val + "']"); |
| | | find.val(data[val]); |
| | | if (showImg){ |
| | | var next = find.next(); |
| | | if (next.get(0)){ |
| | | if (next.get(0).localName === "img") { |
| | | find.hide(); |
| | | next.attr("src", data[val]); |
| | | next.show(); |
| | | } |
| | | var i18nObj = child ? parent.I18n : I18n; |
| | | if (typeof i18nObj !== 'undefined') { |
| | | i18nObj.updateLayuiPagination(); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | function clearFormVal(el) { |
| | | $(':input', el) |
| | | .val('') |
| | | .removeAttr('checked') |
| | | .removeAttr('selected'); |
| | | } |
| | | |
| | | function detailScreen(index) { |
| | | var detail = layer.getChildFrame('#data-detail', index); |
| | | var height = detail.height()+60; |
| | | if (height > ($(window).height()*0.9)) { |
| | | height = ($(window).height()*0.9); |
| | | } |
| | | layer.style(index, { |
| | | // top: (($(window).height()-height)/3)+"px", |
| | | height: height+'px' |
| | | }); |
| | | } |
| | | |
| | | $('body').keydown(function () { |
| | | if (event.keyCode === 13) { |
| | | $("#search").click(); |
| | | } |
| | | }); |
| | | } |
| | |
| | | } |
| | | } |
| | | |
| | | var matCols = [ |
| | | {field: 'matnr', align: 'center',title: '商品编号(品号)', width: 180} |
| | | function getMatCols() { |
| | | return [ |
| | | {field: 'matnr', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('商品编号_品号') : '商品编号(品号)', width: 180} |
| | | // {field: 'id', align: 'center',title: 'ID'} |
| | | // ,{field: 'uuid', align: 'center',title: '编号'} |
| | | // ,{field: 'tagId$', align: 'center',title: '所属归类'} |
| | | ,{field: 'maktx', align: 'center',title: '商品名称(品名)', width: 200} |
| | | ,{field: 'maktx', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('商品名称_品名') : '商品名称(品名)', width: 200} |
| | | // ,{field: 'name', align: 'center',title: '别名'} |
| | | ,{field: 'specs', align: 'center',title: '规格'} |
| | | ,{field: 'model', align: 'center',title: '代码', hide: true} |
| | | ,{field: 'color', align: 'center',title: '颜色', hide: true} |
| | | ,{field: 'brand', align: 'center',title: '品牌', hide: true} |
| | | ,{field: 'unit', align: 'center',title: '单位', hide: false} |
| | | ,{field: 'price', align: 'center',title: '单价', hide: true} |
| | | ,{field: 'sku', align: 'center',title: 'sku', hide: true} |
| | | ,{field: 'units', align: 'center',title: '单位量', hide: true} |
| | | ,{field: 'barcode', align: 'center',title: '条码', hide: true} |
| | | ,{field: 'origin', align: 'center',title: '产地', hide: true} |
| | | ,{field: 'manu', align: 'center',title: '厂家', hide: true} |
| | | ,{field: 'manuDate', align: 'center',title: '生产日期', hide: true} |
| | | ,{field: 'itemNum', align: 'center',title: '品项数', hide: true} |
| | | ,{field: 'safeQty', align: 'center',title: '安全库存量', hide: true} |
| | | ,{field: 'weight', align: 'center',title: '单箱净重', hide: true} |
| | | ,{field: 'length', align: 'center',title: '单箱毛重', hide: true} |
| | | ,{field: 'volume', align: 'center',title: '单箱体积', hide: true} |
| | | ,{field: 'threeCode', align: 'center',title: '箱子尺寸', hide: true} |
| | | ,{field: 'supp', align: 'center',title: '供应商', hide: true} |
| | | ,{field: 'suppCode', align: 'center',title: '供应商编码', hide: true} |
| | | ,{field: 'beBatch$', align: 'center',title: '是否批次', hide: true} |
| | | ,{field: 'deadTime', align: 'center',title: '保质期', hide: true} |
| | | ,{field: 'deadWarn', align: 'center',title: '预警天数', hide: true} |
| | | ,{field: 'source$', align: 'center',title: '制购', hide: true} |
| | | ,{field: 'check$', align: 'center',title: '要求检验', hide: true} |
| | | ,{field: 'danger$', align: 'center',title: '危险品', hide: true} |
| | | ,{field: 'specs', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('规格') : '规格'} |
| | | ,{field: 'model', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('代码') : '代码', hide: true} |
| | | ,{field: 'color', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('颜色') : '颜色', hide: true} |
| | | ,{field: 'brand', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('品牌') : '品牌', hide: true} |
| | | ,{field: 'unit', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('单位') : '单位', hide: false} |
| | | ,{field: 'price', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('单价') : '单价', hide: true} |
| | | ,{field: 'sku', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('sku') : 'sku', hide: true} |
| | | ,{field: 'units', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('单位量') : '单位量', hide: true} |
| | | ,{field: 'barcode', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('条码') : '条码', hide: true} |
| | | ,{field: 'origin', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('产地') : '产地', hide: true} |
| | | ,{field: 'manu', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('厂家') : '厂家', hide: true} |
| | | ,{field: 'manuDate', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('生产日期') : '生产日期', hide: true} |
| | | ,{field: 'itemNum', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('品项数') : '品项数', hide: true} |
| | | ,{field: 'safeQty', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('安全库存量') : '安全库存量', hide: true} |
| | | ,{field: 'weight', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('单箱净重') : '单箱净重', hide: true} |
| | | ,{field: 'length', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('单箱毛重') : '单箱毛重', hide: true} |
| | | ,{field: 'volume', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('单箱体积') : '单箱体积', hide: true} |
| | | ,{field: 'threeCode', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('箱子尺寸') : '箱子尺寸', hide: true} |
| | | ,{field: 'supp', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('供应商') : '供应商', hide: true} |
| | | ,{field: 'suppCode', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('供应商编码') : '供应商编码', hide: true} |
| | | ,{field: 'beBatch$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('是否批次') : '是否批次', hide: true} |
| | | ,{field: 'deadTime', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('保质期') : '保质期', hide: true} |
| | | ,{field: 'deadWarn', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('预警天数') : '预警天数', hide: true} |
| | | ,{field: 'source$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('制购') : '制购', hide: true} |
| | | ,{field: 'check$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('要求检验') : '要求检验', hide: true} |
| | | ,{field: 'danger$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('危险品') : '危险品', hide: true} |
| | | // ,{field: 'status$', align: 'center',title: '状态'} |
| | | // ,{field: 'createBy$', align: 'center',title: '添加人员'} |
| | | // ,{field: 'createTime$', align: 'center',title: '添加时间'} |
| | | ,{field: 'updateBy$', align: 'center',title: '修改人员', hide: true} |
| | | ,{field: 'updateTime$', align: 'center',title: '修改时间', hide: true} |
| | | ,{field: 'memo', align: 'center',title: '备注', hide: true} |
| | | ] |
| | | ,{field: 'updateBy$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('修改人员') : '修改人员', hide: true} |
| | | ,{field: 'updateTime$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('修改时间') : '修改时间', hide: true} |
| | | ,{field: 'memo', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('备注') : '备注', hide: true} |
| | | ]; |
| | | } |
| | | var matCols = getMatCols(); |
| | | |
| | | var detlCols = [ |
| | | {field: 'matnr', align: 'center',title: '商品编号(品号)', sort:true} |
| | | ,{field: 'maktx', align: 'center',title: '商品名称(品名)', sort:true} |
| | | ,{field: 'orderNo', align: 'center',title: '单据编号', hide: false} |
| | | ,{field: 'batch', align: 'center',title: '批号', sort:true} |
| | | ,{field: 'anfme', align: 'center',title: '数量', hide: false} |
| | | ,{field: 'zpallet', align: 'center',title: '托盘条码', hide: false} |
| | | function getDetlCols() { |
| | | return [ |
| | | {field: 'matnr', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('商品编号_品号') : '商品编号(品号)', sort:true} |
| | | ,{field: 'maktx', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('商品名称_品名') : '商品名称(品名)', sort:true} |
| | | ,{field: 'orderNo', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('单据编号') : '单据编号', hide: false} |
| | | ,{field: 'batch', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('批号') : '批号', sort:true} |
| | | ,{field: 'anfme', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('数量') : '数量', hide: false} |
| | | ,{field: 'zpallet', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('托盘条码') : '托盘条码', hide: false} |
| | | |
| | | ,{field: 'specs', align: 'center',title: '规格', hide: false} |
| | | ,{field: 'model', align: 'center',title: '代码', hide: true} |
| | | ,{field: 'color', align: 'center',title: '颜色', hide: true} |
| | | ,{field: 'brand', align: 'center',title: '品牌', hide: true} |
| | | ,{field: 'unit', align: 'center',title: '单位', hide: false} |
| | | ,{field: 'price', align: 'center',title: '单价', hide: true} |
| | | ,{field: 'sku', align: 'center',title: 'sku', hide: true} |
| | | ,{field: 'units', align: 'center',title: '单位量', hide: true} |
| | | ,{field: 'barcode', align: 'center',title: '条码', hide: true} |
| | | ,{field: 'origin', align: 'center',title: '产地', hide: true} |
| | | ,{field: 'manu', align: 'center',title: '厂家', hide: true} |
| | | ,{field: 'manuDate', align: 'center',title: '生产日期', hide: true} |
| | | ,{field: 'itemNum', align: 'center',title: '品项数', hide: true} |
| | | ,{field: 'safeQty', align: 'center',title: '安全库存量', hide: true} |
| | | ,{field: 'weight', align: 'center',title: '单箱净重', hide: true} |
| | | ,{field: 'length', align: 'center',title: '单箱毛重', hide: true} |
| | | ,{field: 'volume', align: 'center',title: '单箱体积', hide: true} |
| | | ,{field: 'threeCode', align: 'center',title: '箱子尺寸', hide: true} |
| | | ,{field: 'supp', align: 'center',title: '供应商', hide: true} |
| | | ,{field: 'suppCode', align: 'center',title: '供应商编码', hide: true} |
| | | ,{field: 'beBatch$', align: 'center',title: '是否批次', hide: true} |
| | | ,{field: 'deadTime', align: 'center',title: '保质期', hide: true} |
| | | ,{field: 'deadWarn', align: 'center',title: '预警天数', hide: true} |
| | | ,{field: 'source$', align: 'center',title: '制购', hide: true} |
| | | ,{field: 'check$', align: 'center',title: '要求检验', hide: true} |
| | | ,{field: 'danger$', align: 'center',title: '危险品', hide: true} |
| | | ] |
| | | |
| | | ,{field: 'specs', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('规格') : '规格', hide: false} |
| | | ,{field: 'model', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('代码') : '代码', hide: true} |
| | | ,{field: 'color', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('颜色') : '颜色', hide: true} |
| | | ,{field: 'brand', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('品牌') : '品牌', hide: true} |
| | | ,{field: 'unit', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('单位') : '单位', hide: false} |
| | | ,{field: 'price', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('单价') : '单价', hide: true} |
| | | ,{field: 'sku', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('sku') : 'sku', hide: true} |
| | | ,{field: 'units', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('单位量') : '单位量', hide: true} |
| | | ,{field: 'barcode', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('条码') : '条码', hide: true} |
| | | ,{field: 'origin', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('产地') : '产地', hide: true} |
| | | ,{field: 'manu', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('厂家') : '厂家', hide: true} |
| | | ,{field: 'manuDate', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('生产日期') : '生产日期', hide: true} |
| | | ,{field: 'itemNum', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('品项数') : '品项数', hide: true} |
| | | ,{field: 'safeQty', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('安全库存量') : '安全库存量', hide: true} |
| | | ,{field: 'weight', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('单箱净重') : '单箱净重', hide: true} |
| | | ,{field: 'length', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('单箱毛重') : '单箱毛重', hide: true} |
| | | ,{field: 'volume', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('单箱体积') : '单箱体积', hide: true} |
| | | ,{field: 'threeCode', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('箱子尺寸') : '箱子尺寸', hide: true} |
| | | ,{field: 'supp', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('供应商') : '供应商', hide: true} |
| | | ,{field: 'suppCode', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('供应商编码') : '供应商编码', hide: true} |
| | | ,{field: 'beBatch$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('是否批次') : '是否批次', hide: true} |
| | | ,{field: 'deadTime', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('保质期') : '保质期', hide: true} |
| | | ,{field: 'deadWarn', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('预警天数') : '预警天数', hide: true} |
| | | ,{field: 'source$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('制购') : '制购', hide: true} |
| | | ,{field: 'check$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('要求检验') : '要求检验', hide: true} |
| | | ,{field: 'danger$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('危险品') : '危险品', hide: true} |
| | | ]; |
| | | } |
| | | var detlCols = getDetlCols(); |
| | |
| | | var inputDomVal = document.querySelector("input[data-key="+val+"]").value; |
| | | var selectDom = document.querySelector("select[data-key="+val+"Select]"); |
| | | selectDom.length = 0; |
| | | var defaultOption = new Option("取消选择", ""); |
| | | var defaultOption = new Option(typeof I18n !== 'undefined' ? I18n.t('cancel_selection') : "取消选择", ""); |
| | | defaultOption.title = ""; |
| | | selectDom.appendChild(defaultOption); |
| | | selectDom.style.display='none'; |
| | |
| | | if (res.code === 200){ |
| | | var list = res.data; |
| | | for (var i=0;i<list.length;i++){ |
| | | var option = new Option(list[i].value, i); |
| | | var text = list[i].value; |
| | | var id = list[i].id; |
| | | |
| | | // 尝试翻译 |
| | | if (typeof I18n !== 'undefined' && typeof window.i18nEnumMap !== 'undefined') { |
| | | var mapper = window.i18nEnumMap[val]; |
| | | if (mapper) { |
| | | var transKey = null; |
| | | if (typeof mapper === 'function') { |
| | | transKey = mapper(id); |
| | | } else { |
| | | transKey = mapper[id]; |
| | | } |
| | | |
| | | if (transKey) { |
| | | var trans = I18n.t(transKey); |
| | | if (trans !== transKey) { |
| | | text = trans; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | var option = new Option(text, i); |
| | | option.title = list[i].id; |
| | | selectDom.options[i+1] = option; |
| | | } |
| New file |
| | |
| | | /** |
| | | * Simple I18n Helper for Layui/jQuery projects |
| | | */ |
| | | var I18n = (function() { |
| | | var lang = localStorage.getItem('lang') || 'zh-cn'; // Default to zh-cn |
| | | var messages = {}; |
| | | var isReady = false; |
| | | |
| | | function loadLanguage(language, callback) { |
| | | // Auto-detect path based on script location |
| | | var path = ''; |
| | | var scripts = document.getElementsByTagName('script'); |
| | | for (var i = 0; i < scripts.length; i++) { |
| | | if (scripts[i].src && scripts[i].src.indexOf('i18n-helper.js') !== -1) { |
| | | var src = scripts[i].src; |
| | | // Assuming structure: .../static/js/i18n/i18n-helper.js |
| | | // We want: .../static/i18n/ |
| | | var jsI18nDir = src.substring(0, src.lastIndexOf('/')); // .../static/js/i18n |
| | | var jsDir = jsI18nDir.substring(0, jsI18nDir.lastIndexOf('/')); // .../static/js |
| | | var staticDir = jsDir.substring(0, jsDir.lastIndexOf('/')); // .../static |
| | | path = staticDir + '/i18n/' + language + '.json'; |
| | | break; |
| | | } |
| | | } |
| | | |
| | | // Fallback if script tag detection fails |
| | | if (!path) { |
| | | if (typeof baseUrl !== 'undefined') { |
| | | path = baseUrl + '/static/i18n/' + language + '.json'; |
| | | } else { |
| | | path = '../../static/i18n/' + language + '.json'; |
| | | } |
| | | } |
| | | |
| | | // Add timestamp to prevent caching |
| | | path += '?t=' + new Date().getTime(); |
| | | |
| | | $.getJSON(path, function(data) { |
| | | messages = data; |
| | | isReady = true; |
| | | if (callback) callback(); |
| | | updatePage(); |
| | | $(document).trigger('i18n:ready'); |
| | | $(document).trigger('i18n:updated'); |
| | | $(document).trigger('i18n:languageChanged'); |
| | | }).fail(function(jqxhr, textStatus, error) { |
| | | console.error('Failed to load language file: ' + path + ', error: ' + error); |
| | | // Even if failed, mark as ready so dependent scripts can proceed (using keys or defaults) |
| | | isReady = true; |
| | | $(document).trigger('i18n:ready'); |
| | | $(document).trigger('i18n:updated'); |
| | | }); |
| | | } |
| | | |
| | | // Listen for language changes from other tabs/frames |
| | | window.addEventListener('storage', function(e) { |
| | | if (e.key === 'lang' && e.newValue && e.newValue !== lang) { |
| | | lang = e.newValue; |
| | | loadLanguage(lang); |
| | | } |
| | | }); |
| | | |
| | | function t(key, params) { |
| | | var text = messages[key] || key; |
| | | if (params) { |
| | | for (var prop in params) { |
| | | text = text.replace(new RegExp('{{' + prop + '}}', 'g'), params[prop]); |
| | | } |
| | | } |
| | | return text; |
| | | } |
| | | |
| | | function updatePage(root) { |
| | | var $root = root ? $(root) : $('body'); |
| | | |
| | | $root.find('[data-i18n]').each(function() { |
| | | var key = $(this).attr('data-i18n'); |
| | | if (!key) return; |
| | | |
| | | var attr = $(this).attr('data-i18n-attr'); |
| | | var text = t(key); |
| | | |
| | | if (attr) { |
| | | $(this).attr(attr, text); |
| | | } else if (this.tagName === 'INPUT' || this.tagName === 'TEXTAREA') { |
| | | $(this).attr('placeholder', text); |
| | | } else { |
| | | $(this).text(text); |
| | | } |
| | | }); |
| | | |
| | | // Handle data-i18n-placeholder |
| | | $root.find('[data-i18n-placeholder]').each(function() { |
| | | var key = $(this).attr('data-i18n-placeholder'); |
| | | if (!key) return; |
| | | var text = t(key); |
| | | $(this).attr('placeholder', text); |
| | | }); |
| | | |
| | | // Trigger a custom event for JS to listen to if needed (only if full page update) |
| | | if (!root) { |
| | | $(document).trigger('i18n:updated'); |
| | | } |
| | | } |
| | | |
| | | function setLanguage(language) { |
| | | lang = language; |
| | | localStorage.setItem('lang', language); |
| | | loadLanguage(language); |
| | | } |
| | | |
| | | function getLanguage() { |
| | | return lang; |
| | | } |
| | | |
| | | // Initialize |
| | | $(document).ready(function() { |
| | | loadLanguage(lang); |
| | | }); |
| | | |
| | | // Listen for storage changes (for syncing across tabs/frames) |
| | | window.addEventListener('storage', function(e) { |
| | | if (e.key === 'lang' && e.newValue && e.newValue !== lang) { |
| | | lang = e.newValue; |
| | | loadLanguage(lang); |
| | | } |
| | | }); |
| | | |
| | | function updateLayuiPagination() { |
| | | // Update 'Total X items' |
| | | $('.layui-laypage-count').each(function() { |
| | | var text = $(this).text(); |
| | | var count = text.match(/\d+/); |
| | | if (count) { |
| | | $(this).text(t('total_prefix') + count[0] + t('total_suffix')); |
| | | } |
| | | }); |
| | | |
| | | // Update 'Go to [input] page [button]' |
| | | $('.layui-laypage-skip').each(function() { |
| | | var $this = $(this); |
| | | // Replace "到第" (First text node) |
| | | var contents = $this.contents(); |
| | | for (var i = 0; i < contents.length; i++) { |
| | | if (contents[i].nodeType === 3 && contents[i].textContent.trim() !== '') { |
| | | // Assuming the first non-empty text node is "到第" |
| | | contents[i].textContent = t('jump_to'); |
| | | break; |
| | | } |
| | | } |
| | | |
| | | // Replace "页" (Text node after input) |
| | | var input = $this.find('.layui-input'); |
| | | if (input.length) { |
| | | var nextNode = input[0].nextSibling; |
| | | if (nextNode && nextNode.nodeType === 3) { |
| | | nextNode.textContent = t('page'); |
| | | } |
| | | } |
| | | |
| | | // Replace Button text |
| | | var btn = $this.find('.layui-laypage-btn'); |
| | | if (btn.length) { |
| | | btn.text(t('confirm')); |
| | | } |
| | | }); |
| | | |
| | | // Update 'X items/page' |
| | | $('.layui-laypage-limits select option').each(function() { |
| | | var text = $(this).text(); |
| | | var limit = text.match(/\d+/); |
| | | if (limit) { |
| | | $(this).text(limit[0] + t('items_per_page')); |
| | | } |
| | | }); |
| | | // Force render of select to update displayed text if needed, |
| | | // but usually Layui re-renders select only on form.render. |
| | | // For pagination limits, it's a browser native select usually? |
| | | // No, Layui table might use native select for limits in some versions, |
| | | // but often it's native. Let's check visually or assume native for now. |
| | | } |
| | | |
| | | return { |
| | | t: t, |
| | | setLanguage: setLanguage, |
| | | getLanguage: getLanguage, |
| | | updatePage: updatePage, |
| | | updateLayuiPagination: updateLayuiPagination, |
| | | isReady: function() { return isReady; } |
| | | }; |
| | | })(); |
| | |
| | | var pageCurr; |
| | | function getCol() { |
| | | var cols = [ |
| | | {field: 'locNo$', align: 'center',title: '库位号'} |
| | | ,{field: 'storeDate', align: 'center',title: '库龄(天)', sort:true} |
| | | ,{field: 'matnr', align: 'center',title: '商品编号', sort:true} |
| | | ,{field: 'maktx', align: 'center',title: '商品名称', sort:true} |
| | | ,{field: 'orderNo', align: 'center',title: '单据编号', hide: true} |
| | | ,{field: 'batch', align: 'center',title: '批号', width: 300, sort:true} |
| | | ,{field: 'anfme', align: 'center',title: '数量'} |
| | | ,{field: 'zpallet', align: 'center',title: '托盘条码'} |
| | | ,{field: 'specs', align: 'center',title: '规格'} |
| | | ,{field: 'model', align: 'center',title: '代码', hide: true} |
| | | ,{field: 'color', align: 'center',title: '颜色', hide: true} |
| | | ,{field: 'brand', align: 'center',title: '品牌', hide: true} |
| | | ,{field: 'unit', align: 'center',title: '单位', hide: true} |
| | | ,{field: 'price', align: 'center',title: '单价', hide: true} |
| | | ,{field: 'sku', align: 'center',title: 'sku', hide: true} |
| | | ,{field: 'units', align: 'center',title: '单位量', hide: true} |
| | | ,{field: 'barcode', align: 'center',title: '条码', hide: true} |
| | | ,{field: 'origin', align: 'center',title: '产地', hide: true} |
| | | ,{field: 'manu', align: 'center',title: '厂家', hide: true} |
| | | ,{field: 'manuDate', align: 'center',title: '生产日期', hide: true} |
| | | ,{field: 'itemNum', align: 'center',title: '品项数', hide: true} |
| | | ,{field: 'safeQty', align: 'center',title: '安全库存量', hide: true} |
| | | ,{field: 'weight', align: 'center',title: '单箱净重', hide: true} |
| | | ,{field: 'length', align: 'center',title: '单箱毛重', hide: true} |
| | | ,{field: 'volume', align: 'center',title: '单箱体积', hide: true} |
| | | ,{field: 'threeCode', align: 'center',title: '箱子尺寸', hide: true} |
| | | ,{field: 'supp', align: 'center',title: '供应商', hide: true} |
| | | ,{field: 'suppCode', align: 'center',title: '供应商编码', hide: true} |
| | | ,{field: 'beBatch$', align: 'center',title: '是否批次', hide: true} |
| | | ,{field: 'deadTime', align: 'center',title: '保质期', hide: true} |
| | | ,{field: 'deadWarn', align: 'center',title: '预警天数', hide: true} |
| | | ,{field: 'source$', align: 'center',title: '制购', hide: true} |
| | | ,{field: 'check$', align: 'center',title: '要求检验', hide: true} |
| | | ,{field: 'danger$', align: 'center',title: '危险品', hide: true} |
| | | {field: 'locNo$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('location_no') : 'Location No.'} |
| | | ,{field: 'storeDate', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('age_days') : 'Age(Days)', sort:true} |
| | | ,{field: 'matnr', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('product_code') : 'Item No.', sort:true} |
| | | ,{field: 'maktx', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('product_name') : 'Item Name', sort:true} |
| | | ,{field: 'orderNo', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('order_no') : 'Order No.', hide: true} |
| | | ,{field: 'batch', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('batch_no') : 'Batch No.', width: 300, sort:true} |
| | | ,{field: 'anfme', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('quantity') : 'Quantity'} |
| | | ,{field: 'zpallet', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('pallet_barcode') : 'Pallet Code'} |
| | | ,{field: 'specs', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('spec') : 'Spec'} |
| | | ,{field: 'model', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('code') : 'Code', hide: true} |
| | | ,{field: 'color', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('color') : 'Color', hide: true} |
| | | ,{field: 'brand', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('brand') : 'Brand', hide: true} |
| | | ,{field: 'unit', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('unit') : 'Unit', hide: true} |
| | | ,{field: 'price', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('price') : 'Price', hide: true} |
| | | ,{field: 'sku', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('sku') : 'SKU', hide: true} |
| | | ,{field: 'units', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('unit_qty') : 'Unit Qty', hide: true} |
| | | ,{field: 'barcode', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('barcode') : 'Barcode', hide: true} |
| | | ,{field: 'origin', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('origin') : 'Origin', hide: true} |
| | | ,{field: 'manu', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('manufacturer') : 'Manufacturer', hide: true} |
| | | ,{field: 'manuDate', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('mfg_date') : 'Mfg Date', hide: true} |
| | | ,{field: 'itemNum', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('item_count') : 'Item Count', hide: true} |
| | | ,{field: 'safeQty', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('safety_stock') : 'Safety Stock', hide: true} |
| | | ,{field: 'weight', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('net_weight_box') : 'Net Weight/Box', hide: true} |
| | | ,{field: 'length', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('gross_weight_box') : 'Gross Weight/Box', hide: true} |
| | | ,{field: 'volume', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('volume_box') : 'Volume/Box', hide: true} |
| | | ,{field: 'threeCode', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('box_size') : 'Box Size', hide: true} |
| | | ,{field: 'supp', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('supplier') : 'Supplier', hide: true} |
| | | ,{field: 'suppCode', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('supplier_code') : 'Supplier Code', hide: true} |
| | | ,{field: 'beBatch$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('batch_managed') : 'Batch Managed', hide: true} |
| | | ,{field: 'deadTime', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('shelf_life') : 'Shelf Life', hide: true} |
| | | ,{field: 'deadWarn', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('warning_days') : 'Warning Days', hide: true} |
| | | ,{field: 'source$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('make_buy') : 'Make/Buy', hide: true} |
| | | ,{field: 'check$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('inspection_reqd') : 'Inspection Reqd', hide: true} |
| | | ,{field: 'danger$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('hazardous') : 'Hazardous', hide: true} |
| | | |
| | | ]; |
| | | |
| | | // cols.push.apply(cols, detlCols); |
| | | cols.push({field: 'modiUser$', align: 'center',title: '修改人员',hide: true} |
| | | ,{field: 'modiTime$', align: 'center',title: '修改时间'} |
| | | cols.push({field: 'modiUser$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('modifier') : 'Modifier',hide: true} |
| | | ,{field: 'modiTime$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('modify_time') : 'Modify Time'} |
| | | ) |
| | | return cols; |
| | | } |
| | |
| | | done: function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage($('.layui-table-tool')); |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | |
| | | case 'addData': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '新增', |
| | | title: I18n.t('add'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | case 'deleteData': |
| | | var data = checkStatus.data; |
| | | if (data.length === 0){ |
| | | layer.msg('请选择数据'); |
| | | layer.msg(I18n.t('please_select_data')); |
| | | } else { |
| | | layer.confirm('确定删除'+(data.length===1?'此':data.length)+'条数据吗', function(){ |
| | | layer.confirm(I18n.t('confirm_delete_prefix') + (data.length===1 ? I18n.t('this') : data.length) + I18n.t('confirm_delete_suffix'), function(){ |
| | | $.ajax({ |
| | | url: baseUrl+"/locDetl/delete/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | |
| | | } |
| | | break; |
| | | case 'exportData': |
| | | layer.confirm('确定导出Excel吗', {shadeClose: true}, function(){ |
| | | layer.confirm(I18n.t('confirm_export_excel'), {shadeClose: true}, function(){ |
| | | var titles=[]; |
| | | var fields=[]; |
| | | obj.config.cols[0].map(function (col) { |
| | |
| | | 'locDetl': exportData, |
| | | 'fields': fields |
| | | }; |
| | | var loadIndex = layer.msg('正在导出...', {icon: 16, shade: 0.01, time: false}); |
| | | var loadIndex = layer.msg(I18n.t('exporting'), {icon: 16, shade: 0.01, time: false}); |
| | | $.ajax({ |
| | | url: baseUrl+"/locDetl/export/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | |
| | | case 'detail': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '详情', |
| | | title: I18n.t('detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | case 'edit': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '修改', |
| | | title: I18n.t('modify'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | case 'locNo': |
| | | var param = top.reObject(data).locNo; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | layer.msg(I18n.t('no_data_found')); |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: '库位号详情', |
| | | title: I18n.t('location_no') + I18n.t('detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | case 'modiUser': |
| | | var param = top.reObject(data).modiUser; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | layer.msg(I18n.t('no_data_found')); |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: '修改人员详情', |
| | | title: I18n.t('modifier_detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | case 'appeUser': |
| | | var param = top.reObject(data).appeUser; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | layer.msg(I18n.t('no_data_found')); |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: '创建者详情', |
| | | title: I18n.t('creator_detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | }); |
| | | |
| | | |
| | | // 监听i18n更新事件,重新渲染表格 |
| | | $(document).on('i18n:updated', function() { |
| | | table.reload('locDetl', { |
| | | cols: [getCol()] |
| | | }); |
| | | }); |
| | | }); |
| | | |
| | | // 关闭动作 |
| | |
| | | var layDate = layui.laydate; |
| | | var form = layui.form; |
| | | |
| | | var doneCallback = function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | }; |
| | | |
| | | // 获取表头配置 |
| | | function getCols() { |
| | | return [[ |
| | | {type: 'checkbox', fixed: 'left'} |
| | | // ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80} |
| | | ,{field: 'locNo', align: 'center',title: I18n.t('location_no'),sort:true, hide:false} |
| | | ,{field: 'locSts', align: 'center',title: I18n.t('location_status'),width:200, hide:false, templet: function(d) { |
| | | var key = 'loc_status_' + d.locSts; |
| | | var text = I18n.t(key); |
| | | return text === key ? d.locSts$ : text; |
| | | }} |
| | | ,{field: 'whsType', align: 'center',title: I18n.t('location_type'),width:200, hide:false, templet: function(d) { |
| | | var map = { |
| | | '1': 'standard_crane_whs', |
| | | '2': 'flat_whs', |
| | | '3': 'shuttle_board', |
| | | '4': 'four_way_vehicle', |
| | | '5': 'agv' |
| | | }; |
| | | var key = map[d.whsType]; |
| | | return key ? I18n.t(key) : d.whsType$; |
| | | }} |
| | | // ,{field: 'pltType', align: 'center',title: ''} |
| | | // ,{field: 'ctnType', align: 'center',title: ''} |
| | | // ,{field: 'locSts', align: 'center',title: ''} |
| | | // ,{field: 'sheetNo', align: 'center',title: ''} |
| | | ,{field: 'crnNo', align: 'center',title: I18n.t('crane_no'), hide:false} |
| | | ,{field: 'row1', align: 'center',title: I18n.t('row'), sort:true, hide:false} |
| | | ,{field: 'bay1', align: 'center',title: I18n.t('bay'), sort:true, hide:false} |
| | | ,{field: 'lev1', align: 'center',title: I18n.t('level'), sort:true, hide:false} |
| | | ,{field: 'gro1', align: 'center',title: I18n.t('group'), sort:true, hide:false} |
| | | ,{field: 'fullPlt', align: 'center',title: I18n.t('full_pallet'), templet:function(row){ |
| | | var html = "<input value='fullPlt' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' disabled table-index='"+row.LAY_TABLE_INDEX+"'"; |
| | | if(row.fullPlt === 'Y'){html += " checked ";} |
| | | html += ">"; |
| | | return html; |
| | | },width:80, hide:false} |
| | | // ,{field: 'outEnable', align: 'center',title: ''} |
| | | ,{field: 'ioTime$', align: 'center',title: 'ioTime', hide:true} |
| | | // ,{field: 'firstTime$', align: 'center',title: '', hide:true} |
| | | ,{field: 'modiUser$', align: 'center',title: I18n.t('modifier'), hide:true} |
| | | ,{field: 'modiTime$', align: 'center',title: I18n.t('modify_time'), hide:true} |
| | | ,{field: 'appeUser$', align: 'center',title: I18n.t('creator'),event: 'appeUser', style: 'text-decoration: underline;cursor:pointer', hide:true} |
| | | ,{field: 'appeTime$', align: 'center',title: I18n.t('add_time'), hide:true} |
| | | // ,{field: 'errorTime$', align: 'center',title: ''} |
| | | // ,{field: 'errorMemo', align: 'center',title: ''} |
| | | // ,{field: 'ctnKind', align: 'center',title: ''} |
| | | // ,{field: 'scWeight', align: 'center',title: ''} |
| | | // ,{field: 'invWh', align: 'center',title: ''} |
| | | // ,{field: 'mk', align: 'center',title: ''} |
| | | // ,{field: 'barcode', align: 'center',title: ''} |
| | | // ,{field: 'PdcType', align: 'center',title: ''} |
| | | // ,{field: 'ctnNo', align: 'center',title: ''} |
| | | ,{field: 'locType1$', align: 'center',title: I18n.t('high_low_type'), hide:true} |
| | | ,{field: 'locType2$', align: 'center',title: I18n.t('width_type'), hide:true} |
| | | ,{field: 'locType3$', align: 'center',title: I18n.t('weight_type'), hide:true} |
| | | |
| | | ,{fixed: 'right', title: I18n.t('operation'), align: 'center', toolbar: '#operate', width:100} |
| | | ]]; |
| | | } |
| | | |
| | | // 监听语言切换事件 |
| | | $(document).on('i18n:languageChanged', function() { |
| | | tableIns.reload({ |
| | | cols: getCols(), |
| | | done: doneCallback |
| | | }); |
| | | }); |
| | | |
| | | // 数据渲染 |
| | | tableIns = table.render({ |
| | | elem: '#locMast', |
| | |
| | | // size: 'sm', |
| | | toolbar: '#toolbar', |
| | | cellMinWidth: 50, |
| | | cols: [[ |
| | | {type: 'checkbox', fixed: 'left'} |
| | | // ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80} |
| | | ,{field: 'locNo', align: 'center',title: '库位号',sort:true, hide:false} |
| | | ,{field: 'locSts$', align: 'center',title: '库位状态',width:200, hide:false} |
| | | ,{field: 'whsType$', align: 'center',title: '库位类型',width:200, hide:false} |
| | | // ,{field: 'pltType', align: 'center',title: ''} |
| | | // ,{field: 'ctnType', align: 'center',title: ''} |
| | | // ,{field: 'locSts', align: 'center',title: ''} |
| | | // ,{field: 'sheetNo', align: 'center',title: ''} |
| | | ,{field: 'crnNo', align: 'center',title: '堆垛机号', hide:false} |
| | | ,{field: 'row1', align: 'center',title: '排', sort:true, hide:false} |
| | | ,{field: 'bay1', align: 'center',title: '列', sort:true, hide:false} |
| | | ,{field: 'lev1', align: 'center',title: '层', sort:true, hide:false} |
| | | ,{field: 'gro1', align: 'center',title: '组', sort:true, hide:false} |
| | | ,{field: 'fullPlt', align: 'center',title: '满板', templet:function(row){ |
| | | var html = "<input value='fullPlt' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' disabled table-index='"+row.LAY_TABLE_INDEX+"'"; |
| | | if(row.fullPlt === 'Y'){html += " checked ";} |
| | | html += ">"; |
| | | return html; |
| | | },width:80, hide:false} |
| | | // ,{field: 'outEnable', align: 'center',title: ''} |
| | | ,{field: 'ioTime$', align: 'center',title: 'ioTime', hide:true} |
| | | // ,{field: 'firstTime$', align: 'center',title: '', hide:true} |
| | | ,{field: 'modiUser$', align: 'center',title: '修改人员', hide:true} |
| | | ,{field: 'modiTime$', align: 'center',title: '修改时间', hide:true} |
| | | ,{field: 'appeUser$', align: 'center',title: '创建者',event: 'appeUser', style: 'text-decoration: underline;cursor:pointer', hide:true} |
| | | ,{field: 'appeTime$', align: 'center',title: '添加时间', hide:true} |
| | | // ,{field: 'errorTime$', align: 'center',title: ''} |
| | | // ,{field: 'errorMemo', align: 'center',title: ''} |
| | | // ,{field: 'ctnKind', align: 'center',title: ''} |
| | | // ,{field: 'scWeight', align: 'center',title: ''} |
| | | // ,{field: 'invWh', align: 'center',title: ''} |
| | | // ,{field: 'mk', align: 'center',title: ''} |
| | | // ,{field: 'barcode', align: 'center',title: ''} |
| | | // ,{field: 'PdcType', align: 'center',title: ''} |
| | | // ,{field: 'ctnNo', align: 'center',title: ''} |
| | | ,{field: 'locType1$', align: 'center',title: '高低类型', hide:true} |
| | | ,{field: 'locType2$', align: 'center',title: '宽窄类型', hide:true} |
| | | ,{field: 'locType3$', align: 'center',title: '轻重类型', hide:true} |
| | | |
| | | ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width:100} |
| | | ]], |
| | | cols: getCols(), |
| | | request: { |
| | | pageName: 'curr', |
| | | pageSize: 'limit' |
| | |
| | | response: { |
| | | statusCode: 200 |
| | | }, |
| | | done: function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | form.on('checkbox(tableCheckbox)', function (data) { |
| | | var _index = $(data.elem).attr('table-index')||0; |
| | | if(data.elem.checked){ |
| | | res.data[_index][data.value] = 'Y'; |
| | | }else{ |
| | | res.data[_index][data.value] = 'N'; |
| | | } |
| | | }); |
| | | } |
| | | done: doneCallback |
| | | }); |
| | | |
| | | // 监听排序事件 |
| | |
| | | page: { |
| | | curr: 1 |
| | | }, |
| | | done: function (res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | } |
| | | done: doneCallback |
| | | }); |
| | | }); |
| | | |
| | |
| | | case 'addData': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '新增', |
| | | title: I18n.t('add'), |
| | | maxmin: true, |
| | | area: ['500px', top.detailHeight], |
| | | area: ['2000px', top.detailHeight], |
| | | shadeClose: false, |
| | | content: 'locMast_detail.html', |
| | | success: function(layero, index){ |
| | |
| | | case 'deleteData': |
| | | var data = checkStatus.data; |
| | | if (data.length === 0){ |
| | | layer.msg('请选择数据'); |
| | | layer.msg(I18n.t('please_select_data')); |
| | | } else { |
| | | layer.confirm('确定删除'+(data.length===1?'此':data.length)+'条数据吗', function(){ |
| | | layer.confirm(I18n.t('confirm_delete_prefix') + (data.length===1 ? I18n.t('this') : data.length) + I18n.t('confirm_delete_suffix'), function(){ |
| | | $.ajax({ |
| | | url: baseUrl+"/locMast/delete/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | |
| | | } |
| | | break; |
| | | case 'exportData': |
| | | layer.confirm('确定导出Excel吗', {shadeClose: true}, function(){ |
| | | layer.confirm(I18n.t('confirm_export_excel'), {shadeClose: true}, function(){ |
| | | var titles=[]; |
| | | var fields=[]; |
| | | obj.config.cols[0].map(function (col) { |
| | |
| | | }); |
| | | break; |
| | | case "init": |
| | | layer.prompt({title: '请输入口令,并重置库位', formType: 1, shadeClose: true}, function(pass, idx){ |
| | | layer.prompt({title: I18n.t('please_enter_password_reset_location'), formType: 1, shadeClose: true}, function(pass, idx){ |
| | | http.get(baseUrl+"/locMast/init/pwd", {pwd: pass}, function (res) { |
| | | if (res.data) { |
| | | layer.open({ |
| | | type: 1, |
| | | title: '初始化库位', |
| | | title: I18n.t('init_location'), |
| | | area: ["400px"], |
| | | maxmin: true, |
| | | shadeClose: true, |
| | |
| | | } |
| | | }) |
| | | } else { |
| | | layer.msg("口令错误"); |
| | | layer.msg(I18n.t('password_error')); |
| | | } |
| | | layer.close(idx); |
| | | }) |
| | |
| | | break; |
| | | } |
| | | }); |
| | | |
| | | // 翻译详情数据 |
| | | function translateDetailData(data) { |
| | | var newData = $.extend({}, data); |
| | | |
| | | // 翻译 locSts |
| | | if (newData.locSts) { |
| | | var key = 'loc_status_' + newData.locSts; |
| | | var text = I18n.t(key); |
| | | if (text !== key) { |
| | | newData.locSts$ = text; |
| | | } |
| | | } |
| | | |
| | | // 翻译 whsType |
| | | if (newData.whsType) { |
| | | var map = { |
| | | '1': 'standard_crane_whs', |
| | | '2': 'flat_whs', |
| | | '3': 'shuttle_board', |
| | | '4': 'four_way_vehicle', |
| | | '5': 'agv' |
| | | }; |
| | | var key = map[newData.whsType]; |
| | | if (key) { |
| | | newData.whsType$ = I18n.t(key); |
| | | } |
| | | } |
| | | return newData; |
| | | } |
| | | |
| | | // 监听行工具事件 |
| | | table.on('tool(locMast)', function(obj){ |
| | |
| | | case 'detail': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '详情', |
| | | title: I18n.t('detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | case 'edit': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '修改', |
| | | title: I18n.t('modify'), |
| | | maxmin: true, |
| | | area: ['500px', top.detailHeight], |
| | | area: ['700px', '600px'], |
| | | shadeClose: false, |
| | | content: 'locMast_detail.html', |
| | | success: function(layero, index){ |
| | |
| | | case 'whsType': |
| | | var param = top.reObject(data).whsType; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | layer.msg(I18n.t('no_data_found')); |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: '库位详情', |
| | | title: I18n.t('location_detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | case 'modiUser': |
| | | var param = top.reObject(data).modiUser; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | layer.msg(I18n.t('no_data_found')); |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: '修改详情', |
| | | title: I18n.t('modify_detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | case 'appeUser': |
| | | var param = top.reObject(data).appeUser; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | layer.msg(I18n.t('no_data_found')); |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: '创详情', |
| | | title: I18n.t('create_detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | pageCurr -= 1; |
| | | } |
| | | limit(child); |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage(); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | } |
| | | }); |
| | | } |
| | |
| | | function getCol() { |
| | | var cols = [ |
| | | {type: 'checkbox'} |
| | | ,{field: 'tagId$', align: 'center',title: '归类', templet: '#tagTpl'} |
| | | ,{field: 'store_max', align: 'center',title: '库存上限'} |
| | | ,{field: 'store_min', align: 'center',title: '库存下限'} |
| | | ,{field: 'store_max_date', align: 'center',title: '库龄上限(天)'} |
| | | ,{field: 'areaId$', align: 'center',title: '区域', templet: '#areaTpl'} |
| | | ,{field: 'tagId$', align: 'center',title: I18n.t('classification'), templet: '#tagTpl'} |
| | | ,{field: 'store_max', align: 'center',title: I18n.t('stock_upper_limit')} |
| | | ,{field: 'store_min', align: 'center',title: I18n.t('stock_lower_limit')} |
| | | ,{field: 'store_max_date', align: 'center',title: I18n.t('stock_age_upper_limit_days')} |
| | | ,{field: 'areaId$', align: 'center',title: I18n.t('area'), templet: '#areaTpl'} |
| | | |
| | | ]; |
| | | cols.push.apply(cols, matCols); |
| | | cols.push.apply(cols, getMatCols()); |
| | | cols.push( |
| | | {fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width:150} |
| | | {fixed: 'right', title: I18n.t('operation'), align: 'center', toolbar: '#operate', width:150} |
| | | ) |
| | | return cols; |
| | | } |
| | |
| | | }); |
| | | |
| | | // 数据渲染 |
| | | var tableDone = function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | form.on('checkbox(tableCheckbox)', function (data) { |
| | | var _index = $(data.elem).attr('table-index')||0; |
| | | if(data.elem.checked){ |
| | | res.data[_index][data.value] = 'Y'; |
| | | }else{ |
| | | res.data[_index][data.value] = 'N'; |
| | | } |
| | | }); |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage(); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | }; |
| | | |
| | | tableIns = table.render({ |
| | | elem: '#mat', |
| | | headers: {token: localStorage.getItem('token')}, |
| | |
| | | response: { |
| | | statusCode: 200 |
| | | }, |
| | | done: function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | form.on('checkbox(tableCheckbox)', function (data) { |
| | | var _index = $(data.elem).attr('table-index')||0; |
| | | if(data.elem.checked){ |
| | | res.data[_index][data.value] = 'Y'; |
| | | }else{ |
| | | res.data[_index][data.value] = 'N'; |
| | | } |
| | | }); |
| | | } |
| | | done: tableDone |
| | | }); |
| | | |
| | | // 监听排序事件 |
| | |
| | | page: { |
| | | curr: 1 |
| | | }, |
| | | done: function (res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | } |
| | | done: tableDone |
| | | }); |
| | | }); |
| | | |
| | | // 监听语言切换 |
| | | $(document).on('i18n:languageChanged i18n:ready', function() { |
| | | tableIns.reload({ |
| | | cols: [getCol()], |
| | | done: tableDone |
| | | }); |
| | | }); |
| | | |
| | |
| | | case 'deleteData': |
| | | var data = checkStatus.data; |
| | | if (data.length === 0){ |
| | | layer.msg('请选择数据'); |
| | | layer.msg(I18n.t('please_select_data')); |
| | | } else { |
| | | layer.confirm('确定删除'+(data.length===1?'此':data.length)+'条数据吗', function(){ |
| | | layer.confirm(I18n.t('confirm_delete_prefix') + (data.length===1?I18n.t('this'):data.length) + I18n.t('confirm_delete_suffix'), function(){ |
| | | $.ajax({ |
| | | url: baseUrl+"/mat/delete/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | |
| | | } |
| | | break; |
| | | case 'exportData': |
| | | layer.confirm('确定导出Excel吗', {shadeClose: true}, function(){ |
| | | layer.confirm(I18n.t('confirm_export_excel'), {shadeClose: true}, function(){ |
| | | var titles=[]; |
| | | var fields=[]; |
| | | obj.config.cols[0].map(function (col) { |
| | |
| | | printMatCodeNos = []; |
| | | var data = checkStatus.data; |
| | | if (data.length === 0){ |
| | | layer.msg('请选择打印数据'); |
| | | layer.msg(I18n.t('please_select_print_data')); |
| | | } else { |
| | | layer.open({ |
| | | type: 1, |
| | | title: '批量打印 [数量'+ data.length +']', |
| | | title: I18n.t('batch_print_count', {count: data.length}), |
| | | area: ['500px'], |
| | | shadeClose: true, |
| | | content: $('#printDataDiv'), |
| | |
| | | printMatCodeNos = []; |
| | | layer.open({ |
| | | type: 1, |
| | | title: data.matnr + ' [数量:1]', |
| | | title: data.matnr + ' [' + I18n.t('count') + ':1]', |
| | | area: ['500px'], |
| | | shadeClose: true, |
| | | content: $('#printDataDiv'), |
| | |
| | | admin.open({ |
| | | type: 1, |
| | | area: '600px', |
| | | title: (mData ? '修改' : '添加') + '商品', |
| | | title: (mData ? I18n.t('edit') : I18n.t('add')) + I18n.t('material'), |
| | | content: $('#editDialog').html(), |
| | | success: function (layero, dIndex) { |
| | | // 回显表单数据 |
| | |
| | | data.field.tagId = insXmSel.getValue('valueStr'); |
| | | data.field.areaId = areaXmSel.getValue('valueStr'); |
| | | if (isEmpty(data.field.tagId)) { |
| | | layer.msg('分类不能为空', {icon: 2}); |
| | | layer.msg(I18n.t('category_cannot_be_empty'), {icon: 2}); |
| | | return false; |
| | | } |
| | | var loadIndex = layer.load(2); |
| | |
| | | } |
| | | }); |
| | | // 渲染区域下拉选择 |
| | | console.log('准备渲染区域选择器,数据:', areaData); |
| | | console.log('当前商品数据:', mData); |
| | | var areaXmSel = xmSelect.render({ |
| | | el: $(layero).find('#areaSel')[0], |
| | | height: '250px', |
| | |
| | | radio: true, |
| | | clickClose: true, |
| | | on: function(data) { |
| | | console.log('区域选择器事件:', data); |
| | | } |
| | | }); |
| | | console.log('区域选择器渲染完成'); |
| | | // 弹窗不出现滚动条 |
| | | $(layero).children('.layui-layer-content').css('overflow', 'visible'); |
| | | layui.form.render('select'); |
| | |
| | | var html = template(res); |
| | | var box = $("#box"); |
| | | box.html(html);box.show(); |
| | | if (typeof I18n !== 'undefined' && I18n.updatePage) { |
| | | I18n.updatePage(box[0]); |
| | | } |
| | | box.print({mediaPrint:true}); |
| | | box.hide(); |
| | | } else if (res.code === 403){ |
| | |
| | | return; |
| | | } |
| | | var file = obj.files[0]; |
| | | admin.confirm('确认同步 [' + file.name +'] 文件吗?', function (index) { |
| | | admin.confirm(I18n.t('confirm_sync_file', {filename: file.name}), function (index) { |
| | | layer.load(1, {shade: [0.1,'#fff']}); |
| | | var url = baseUrl + "/mat/excel/import/auth"; |
| | | var form = new FormData(); |
| | |
| | | pageCurr -= 1; |
| | | } |
| | | limit(child); |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage(); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | } |
| | | }); |
| | | } |
| | |
| | | }); |
| | | |
| | | // 初始加载 |
| | | loadAreas(); // 加载库区颜色信息 |
| | | loadRowsOptions(); // 加载「排」选项(始终需要) |
| | | loadLayersOptions(); // 加载「层」选项(提前准备) |
| | | getLocTable('byRow', 1); // 默认按排 + 第1排 |
| | | function initMap() { |
| | | loadAreas(); // 加载库区颜色信息 |
| | | loadRowsOptions(); // 加载「排」选项(始终需要) |
| | | loadLayersOptions(); // 加载「层」选项(提前准备) |
| | | getLocTable('byRow', 1); // 默认按排 + 第1排 |
| | | } |
| | | |
| | | if (I18n.isReady()) { |
| | | initMap(); |
| | | } else { |
| | | $(document).on('i18n:ready', initMap); |
| | | } |
| | | |
| | | // Listen for dynamic language updates (no reload) |
| | | $(document).on('i18n:updated', function() { |
| | | // Update selection button text |
| | | if (isSelectionMode) { |
| | | $('#btnSelectMode').text(I18n.t('disable_selection')); |
| | | } else { |
| | | $('#btnSelectMode').text(I18n.t('enable_selection')); |
| | | } |
| | | |
| | | // Update assign button text if visible |
| | | if ($('.loc-selected').length > 0) { |
| | | $('#btnAssignZone').text(I18n.t('assign_zone') + ' (' + $('.loc-selected').length + ')'); |
| | | } else { |
| | | $('#btnAssignZone').text(I18n.t('assign_zone')); |
| | | } |
| | | |
| | | // Re-render legend to update text |
| | | loadAreas(); |
| | | |
| | | // Re-render select options if needed (but options usually don't have text needing translation unless hardcoded) |
| | | // Re-render form to apply changes |
| | | form.render(); |
| | | }); |
| | | |
| | | // 加载库区信息并显示图例 |
| | | function loadAreas() { |
| | |
| | | success: function(res) { |
| | | if (res.code === 200) { |
| | | areaMap = {}; |
| | | var legendHtml = '<div class="area-legend-item" style="cursor:default;font-weight:bold;">库区图例:</div>'; |
| | | var legendHtml = '<div class="area-legend-item" style="cursor:default;font-weight:bold;">' + I18n.t('zone_legend') + ':</div>'; |
| | | // 默认颜色列表,用于自动分配 |
| | | var defaultColors = ['#FF5733', '#33FF57', '#3357FF', '#FF33A1', '#A133FF', '#33FFF5', '#FFD700', '#FF8C00']; |
| | | var colorIndex = 0; |
| | |
| | | |
| | | var contentHtml = '<div style="padding: 20px;"><form class="layui-form">' + |
| | | '<div class="layui-form-item">' + |
| | | '<label class="layui-form-label" style="width: auto; padding-left: 0;">库区名称:</label>' + |
| | | '<label class="layui-form-label" style="width: auto; padding-left: 0;">' + I18n.t('zone_name') + ':</label>' + |
| | | '<div class="layui-input-inline" style="line-height: 45px;">' + areaData.name + '</div>' + |
| | | '</div>' + |
| | | '<div class="layui-form-item">' + |
| | | '<label class="layui-form-label" style="width: auto; padding-left: 0;">选择颜色</label>' + |
| | | '<label class="layui-form-label" style="width: auto; padding-left: 0;">' + I18n.t('select_color') + '</label>' + |
| | | '<div class="layui-input-inline"><input type="color" id="singleAreaColorPicker" value="' + (areaData.color || '#cccccc') + '" style="height: 38px; width: 100%;"></div>' + |
| | | '</div>' + |
| | | '</form></div>'; |
| | | |
| | | layer.open({ |
| | | type: 1, |
| | | title: '修改库区颜色', |
| | | title: I18n.t('modify_zone_color'), |
| | | area: ['350px', '250px'], |
| | | content: contentHtml, |
| | | btn: ['保存', '取消'], |
| | | btn: [I18n.t('save'), I18n.t('cancel')], |
| | | yes: function(index) { |
| | | var newColor = $('#singleAreaColorPicker').val(); |
| | | if (newColor !== areaData.color) { |
| | |
| | | data: { id: areaId, backup1: newColor }, |
| | | success: function(res) { |
| | | if (res.code === 200) { |
| | | layer.msg('颜色已更新'); |
| | | layer.msg(I18n.t('color_updated')); |
| | | layer.close(index); |
| | | loadAreas(); // 刷新图例和缓存 |
| | | // 刷新地图以应用新颜色 |
| | |
| | | if (mode === 'byRow') getLocTable('byRow', $('#rowSelect').val()); |
| | | else getLocTable('byLayer', $('#layerSelect').val()); |
| | | } else { |
| | | layer.msg(res.msg || '更新失败'); |
| | | layer.msg(res.msg || I18n.t('update_failed')); |
| | | } |
| | | } |
| | | }); |
| | |
| | | } else if (res.code === 403) { |
| | | top.location.href = baseUrl + "/"; |
| | | } else { |
| | | layer.msg(res.msg || '加载失败'); |
| | | layer.msg(res.msg || I18n.t('load_failed')); |
| | | } |
| | | } |
| | | }); |
| | |
| | | $('#btnSelectMode').click(function () { |
| | | isSelectionMode = !isSelectionMode; |
| | | if (isSelectionMode) { |
| | | $(this).text('关闭框选').addClass('layui-btn-danger').removeClass('layui-btn-normal'); |
| | | $(this).text(I18n.t('disable_selection')).addClass('layui-btn-danger').removeClass('layui-btn-normal'); |
| | | // 禁用原有点击事件,防止冲突 (通过 CSS pointer-events 或移除 onclick) |
| | | // 这里选择移除 onclick 属性 |
| | | $('.a-loc').each(function(){ |
| | | $(this).attr('data-onclick', $(this).attr('onclick')).removeAttr('onclick'); |
| | | }); |
| | | layer.msg('已开启框选模式,请在库位图上拖拽选择'); |
| | | layer.msg(I18n.t('selection_mode_tip')); |
| | | } else { |
| | | $(this).text('开启框选').addClass('layui-btn-normal').removeClass('layui-btn-danger'); |
| | | $(this).text(I18n.t('enable_selection')).addClass('layui-btn-normal').removeClass('layui-btn-danger'); |
| | | $('.loc-selected').removeClass('loc-selected'); |
| | | $('#btnAssignZone').hide(); |
| | | // 恢复点击事件 |
| | |
| | | }); |
| | | |
| | | if ($('.loc-selected').length > 0) { |
| | | $('#btnAssignZone').show().text('分配库区 (' + $('.loc-selected').length + ')'); |
| | | $('#btnAssignZone').show().text(I18n.t('assign_zone') + ' (' + $('.loc-selected').length + ')'); |
| | | } else { |
| | | $('#btnAssignZone').hide(); |
| | | } |
| | |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | success: function(listRes) { |
| | | if (listRes.code === 200) { |
| | | var optionsHtml = '<option value="">请选择库区</option>'; |
| | | var optionsHtml = '<option value="">' + I18n.t('please_select_zone') + '</option>'; |
| | | var areas = listRes.data.records; |
| | | areas.forEach(function(area) { |
| | | optionsHtml += '<option value="' + area.id + '">' + area.areaName + ' (' + area.areaId + ')</option>'; |
| | |
| | | var contentHtml = '<div style="padding: 20px;"><form class="layui-form">' + |
| | | '<div class="layui-form-item"><select id="selectArea" lay-filter="selectArea">' + optionsHtml + '</select></div>' + |
| | | '<div class="layui-form-item">' + |
| | | '<label class="layui-form-label" style="width: auto; padding-left: 0;">库区颜色</label>' + |
| | | '<label class="layui-form-label" style="width: auto; padding-left: 0;">' + I18n.t('zone_color') + '</label>' + |
| | | '<div class="layui-input-inline"><input type="color" id="areaColorPicker" value="#cccccc" style="height: 38px; width: 100%;"></div>' + |
| | | '</div>' + |
| | | '</form></div>'; |
| | | |
| | | layer.open({ |
| | | type: 1, |
| | | title: '分配库区及颜色', |
| | | title: I18n.t('assign_zone_and_color'), |
| | | area: ['400px', '350px'], |
| | | content: contentHtml, |
| | | btn: ['确定', '取消'], |
| | | btn: [I18n.t('confirm'), I18n.t('cancel')], |
| | | success: function(layero, index) { |
| | | form.render('select'); |
| | | form.on('select(selectArea)', function(data){ |
| | |
| | | var newColor = $('#areaColorPicker').val(); |
| | | |
| | | if (!areaId) { |
| | | layer.msg('请选择库区'); |
| | | layer.msg(I18n.t('please_select_zone')); |
| | | return; |
| | | } |
| | | |
| | |
| | | }), |
| | | success: function(updRes) { |
| | | if (updRes.code === 200) { |
| | | layer.msg('分配成功'); |
| | | layer.msg(I18n.t('assign_success')); |
| | | layer.close(index); |
| | | // 刷新 |
| | | var mode = $('#viewMode').val(); |
| | |
| | | }, 500); // 简单延时等待渲染 |
| | | } |
| | | } else { |
| | | layer.msg(updRes.msg || '操作失败'); |
| | | layer.msg(updRes.msg || I18n.t('operation_failed')); |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | }); |
| | | } else { |
| | | layer.msg(listRes.msg || '无法获取库区列表'); |
| | | layer.msg(listRes.msg || I18n.t('fetch_zone_list_failed')); |
| | | } |
| | | } |
| | | }); |
| | |
| | | var pageCurr; |
| | | function getCol() { |
| | | var cols = [ {type: 'checkbox'} ]; |
| | | cols.push.apply(cols, detlCols); |
| | | cols.push({field: 'locNo', align: 'center',title: '库位号'} |
| | | ,{field: 'status', align: 'center',title: '数据状态', templet:function(row){ |
| | | var html = "<input value='status' type='checkbox' lay-skin='switch' lay-text='正常|锁定'' lay-filter='tableCheckbox' disabled='disabled' table-index='"+row.LAY_TABLE_INDEX+"'"; |
| | | cols.push.apply(cols, typeof getDetlCols === 'function' ? getDetlCols() : detlCols); |
| | | cols.push({field: 'locNo', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('location_no') : '库位号'} |
| | | ,{field: 'status', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('data_status') : '数据状态', templet:function(row){ |
| | | var html = "<input value='status' type='checkbox' lay-skin='switch' lay-text='"+(typeof I18n !== 'undefined' ? I18n.t('normal') : '正常')+"|"+(typeof I18n !== 'undefined' ? I18n.t('locked') : '锁定')+"' lay-filter='tableCheckbox' disabled='disabled' table-index='"+row.LAY_TABLE_INDEX+"'"; |
| | | if(row.status === 'Y'){html += " checked ";} |
| | | html += ">"; |
| | | return html; |
| | | }, hide: true} |
| | | ,{field: 'ioStatus', align: 'center',title: '入出状态', templet:function(row){ |
| | | var html = "<input value='ioStatus' type='checkbox' lay-skin='switch' lay-text='入库中|待入库' lay-filter='tableCheckbox' disabled='disabled' table-index='"+row.LAY_TABLE_INDEX+"'"; |
| | | ,{field: 'ioStatus', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('io_status') : '入出状态', templet:function(row){ |
| | | var html = "<input value='ioStatus' type='checkbox' lay-skin='switch' lay-text='"+(typeof I18n !== 'undefined' ? I18n.t('inbound') : '入库中')+"|"+(typeof I18n !== 'undefined' ? I18n.t('pending_inbound') : '待入库')+"' lay-filter='tableCheckbox' disabled='disabled' table-index='"+row.LAY_TABLE_INDEX+"'"; |
| | | if(row.ioStatus === 'Y'){html += " checked ";} |
| | | html += ">"; |
| | | return html; |
| | | }} |
| | | ,{field: 'modiUser$', align: 'center',title: '修改人员', hide:true} |
| | | ,{field: 'modiTime$', align: 'center',title: '修改时间', hide:true}) |
| | | ,{field: 'modiUser$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('modifier') : '修改人员', hide:true} |
| | | ,{field: 'modiTime$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('modify_time') : '修改时间', hide:true}) |
| | | return cols; |
| | | } |
| | | |
| | | function updatePagination() { |
| | | if (typeof I18n === 'undefined') return; |
| | | |
| | | // Update 'Total X items' |
| | | $('.layui-laypage-count').each(function() { |
| | | var text = $(this).text(); |
| | | var count = text.match(/\d+/); |
| | | if (count) { |
| | | $(this).text(I18n.t('total_prefix') + count[0] + I18n.t('total_suffix')); |
| | | } |
| | | }); |
| | | |
| | | // Update 'Go to [input] page [button]' |
| | | $('.layui-laypage-skip').each(function() { |
| | | var $this = $(this); |
| | | // Replace "到第" (First text node) |
| | | var contents = $this.contents(); |
| | | for (var i = 0; i < contents.length; i++) { |
| | | if (contents[i].nodeType === 3 && contents[i].textContent.trim() !== '') { |
| | | // Assuming the first non-empty text node is "到第" |
| | | contents[i].textContent = I18n.t('jump_to'); |
| | | break; |
| | | } |
| | | } |
| | | |
| | | // Replace "页" (Text node after input) |
| | | var input = $this.find('.layui-input'); |
| | | if (input.length) { |
| | | var nextNode = input[0].nextSibling; |
| | | if (nextNode && nextNode.nodeType === 3) { |
| | | nextNode.textContent = I18n.t('page'); |
| | | } |
| | | } |
| | | |
| | | // Replace Button text |
| | | var btn = $this.find('.layui-laypage-btn'); |
| | | if (btn.length) { |
| | | btn.text(I18n.t('confirm')); |
| | | } |
| | | }); |
| | | |
| | | // Update 'X items/page' |
| | | $('.layui-laypage-limits select option').each(function() { |
| | | var text = $(this).text(); |
| | | var limit = text.match(/\d+/); |
| | | if (limit) { |
| | | $(this).text(limit[0] + I18n.t('items_per_page')); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | layui.config({ |
| | |
| | | toolbar: '#toolbar', |
| | | cellMinWidth: 50, |
| | | cols: [getCol()], |
| | | text: { |
| | | none: typeof I18n !== 'undefined' ? I18n.t('no_data') : '暂无相关数据' |
| | | }, |
| | | request: { |
| | | pageName: 'curr', |
| | | pageSize: 'limit' |
| | |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | updatePagination(); |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | form.on('checkbox(tableCheckbox)', function (data) { |
| | |
| | | }); |
| | | |
| | | // 监听排序事件 |
| | | table.on('sort(locMast)', function (obj) { |
| | | table.on('sort(waitPakin)', function (obj) { |
| | | var searchData = {}; |
| | | $.each($('#search-box [name]').serializeArray(), function() { |
| | | searchData[this.name] = this.value; |
| | |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | if (typeof I18n !== 'undefined') { |
| | | updatePagination(); |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | } |
| | |
| | | switch(obj.event) { |
| | | case 'addWrk': |
| | | if (checkStatus.data.length === 0){ |
| | | layer.msg('请至少选择一条数据', {icon: 2}); |
| | | layer.msg(typeof I18n !== 'undefined' ? I18n.t('select_one_data') : '请至少选择一条数据', {icon: 2}); |
| | | } else { |
| | | layer.confirm('确定生成工作档任务吗', function(){ |
| | | layer.confirm(typeof I18n !== 'undefined' ? I18n.t('confirm_generate_task') : '确定生成工作档任务吗', { |
| | | title: typeof I18n !== 'undefined' ? I18n.t('prompt') : '提示', |
| | | btn: [typeof I18n !== 'undefined' ? I18n.t('confirm') : '确定', typeof I18n !== 'undefined' ? I18n.t('cancel') : '取消'] |
| | | }, function(){ |
| | | $.ajax({ |
| | | url: baseUrl+"/create/waitPain/wrkMast/start", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | |
| | | case 'addData': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '新增', |
| | | title: typeof I18n !== 'undefined' ? I18n.t('add') : '新增', |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | content: 'waitPakin_detail.html', |
| | |
| | | case 'deleteData': |
| | | var data = checkStatus.data; |
| | | if (data.length === 0){ |
| | | layer.msg('请选择数据'); |
| | | layer.msg(typeof I18n !== 'undefined' ? I18n.t('please_select_data') : '请选择数据'); |
| | | } else { |
| | | layer.confirm('确定删除'+(data.length===1?'此':data.length)+'条数据吗', function(){ |
| | | var msg = '确定删除'+(data.length===1?'此':data.length)+'条数据吗'; |
| | | if (typeof I18n !== 'undefined') { |
| | | msg = I18n.t('confirm_delete_prefix') + " " + data.length + " " + I18n.t('confirm_delete_suffix'); |
| | | } |
| | | layer.confirm(msg, { |
| | | title: typeof I18n !== 'undefined' ? I18n.t('prompt') : '提示', |
| | | btn: [typeof I18n !== 'undefined' ? I18n.t('confirm') : '确定', typeof I18n !== 'undefined' ? I18n.t('cancel') : '取消'] |
| | | }, function(){ |
| | | $.ajax({ |
| | | url: baseUrl+"/waitPakin/delete/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | |
| | | } |
| | | break; |
| | | case 'exportData': |
| | | layer.confirm('确定导出Excel吗', {shadeClose: true}, function(){ |
| | | layer.confirm(typeof I18n !== 'undefined' ? I18n.t('confirm_export_excel') : '确定导出Excel吗', { |
| | | shadeClose: true, |
| | | title: typeof I18n !== 'undefined' ? I18n.t('prompt') : '提示', |
| | | btn: [typeof I18n !== 'undefined' ? I18n.t('confirm') : '确定', typeof I18n !== 'undefined' ? I18n.t('cancel') : '取消'] |
| | | }, function(){ |
| | | var titles=[]; |
| | | var fields=[]; |
| | | obj.config.cols[0].map(function (col) { |
| | |
| | | case 'detail': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '详情', |
| | | title: typeof I18n !== 'undefined' ? I18n.t('detail') : '详情', |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: true, |
| | |
| | | case 'edit': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '修改', |
| | | title: typeof I18n !== 'undefined' ? I18n.t('edit') : '修改', |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | content: 'waitPakin_detail.html', |
| | |
| | | case 'modiUser': |
| | | var param = top.reObject(data).modiUser; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | layer.msg(typeof I18n !== 'undefined' ? I18n.t('no_data_found') : "无数据"); |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: '修改人员详情', |
| | | title: typeof I18n !== 'undefined' ? I18n.t('modifier_detail') : '修改人员详情', |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: true, |
| | |
| | | case 'appeUser': |
| | | var param = top.reObject(data).appeUser; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | layer.msg(typeof I18n !== 'undefined' ? I18n.t('no_data_found') : "无数据"); |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: '创建者详情', |
| | | title: typeof I18n !== 'undefined' ? I18n.t('creator_detail') : '创建者详情', |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: true, |
| | |
| | | ,range: true |
| | | }); |
| | | |
| | | $(document).on('i18n:updated', function() { |
| | | table.reload('waitPakin', { |
| | | cols: [getCol()] |
| | | }); |
| | | }); |
| | | |
| | | }); |
| | | |
| | | // 关闭动作 |
| | |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | if (typeof I18n !== 'undefined') { |
| | | updatePagination(); |
| | | } |
| | | pageCurr=curr; |
| | | if (res.data.length === 0 && count !== 0) { |
| | | tableIns.reload({ |
| | |
| | | function getCol() { |
| | | var cols = [ |
| | | ]; |
| | | cols.push.apply(cols, detlCols); |
| | | cols.push({field: 'status', align: 'center',title: '数据状态', templet:function(row){ |
| | | var html = "<input value='status' type='checkbox' lay-skin='switch' lay-text='正常|锁定' lay-filter='tableCheckbox' disabled='disabled' table-index='"+row.LAY_TABLE_INDEX+"'"; |
| | | cols.push.apply(cols, typeof getDetlCols === 'function' ? getDetlCols() : detlCols); |
| | | cols.push({field: 'status', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('data_status') : '数据状态', templet:function(row){ |
| | | var normal = typeof I18n !== 'undefined' ? I18n.t('normal') : '正常'; |
| | | var locked = typeof I18n !== 'undefined' ? I18n.t('locked') : '锁定'; |
| | | var html = "<input value='status' type='checkbox' lay-skin='switch' lay-text='"+normal+"|"+locked+"' lay-filter='tableCheckbox' disabled='disabled' table-index='"+row.LAY_TABLE_INDEX+"'"; |
| | | if(row.status === 'Y'){html += " checked ";} |
| | | html += ">"; |
| | | return html; |
| | | }} |
| | | ,{field: 'ioStatus', align: 'center',title: '入出状态', templet:function(row){ |
| | | var html = "<input value='ioStatus' type='checkbox' lay-skin='switch' lay-text='运行中|待处理' lay-filter='tableCheckbox' disabled='disabled' table-index='"+row.LAY_TABLE_INDEX+"'"; |
| | | ,{field: 'ioStatus', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('io_status') : '入出状态', templet:function(row){ |
| | | var running = typeof I18n !== 'undefined' ? I18n.t('running') : '运行中'; |
| | | var pending = typeof I18n !== 'undefined' ? I18n.t('pending') : '待处理'; |
| | | var html = "<input value='ioStatus' type='checkbox' lay-skin='switch' lay-text='"+running+"|"+pending+"' lay-filter='tableCheckbox' disabled='disabled' table-index='"+row.LAY_TABLE_INDEX+"'"; |
| | | if(row.ioStatus === 'Y'){html += " checked ";} |
| | | html += ">"; |
| | | return html; |
| | | }} |
| | | ,{field: 'modiUser$', align: 'center',title: '修改人员', hide:true} |
| | | ,{field: 'modiTime$', align: 'center',title: '修改时间', hide:true}) |
| | | ,{field: 'modiUser$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('modifier') : '修改人员', hide:true} |
| | | ,{field: 'modiTime$', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('modify_time') : '修改时间', hide:true}) |
| | | return cols; |
| | | } |
| | | |
| | | function updatePagination() { |
| | | if (typeof I18n === 'undefined') return; |
| | | |
| | | // Update 'Total X items' |
| | | $('.layui-laypage-count').each(function() { |
| | | var text = $(this).text(); |
| | | var count = text.match(/\d+/); |
| | | if (count) { |
| | | $(this).text(I18n.t('total_prefix') + count[0] + I18n.t('total_suffix')); |
| | | } |
| | | }); |
| | | |
| | | // Update 'Go to [input] page [button]' |
| | | $('.layui-laypage-skip').each(function() { |
| | | var $this = $(this); |
| | | // Replace "到第" (First text node) |
| | | var contents = $this.contents(); |
| | | for (var i = 0; i < contents.length; i++) { |
| | | if (contents[i].nodeType === 3 && contents[i].textContent.trim() !== '') { |
| | | contents[i].textContent = I18n.t('jump_to'); |
| | | break; |
| | | } |
| | | } |
| | | |
| | | // Replace "页" (Text node after input) |
| | | var input = $this.find('.layui-input'); |
| | | if (input.length) { |
| | | var nextNode = input[0].nextSibling; |
| | | if (nextNode && nextNode.nodeType === 3) { |
| | | nextNode.textContent = I18n.t('page'); |
| | | } |
| | | } |
| | | |
| | | // Replace Button text |
| | | var btn = $this.find('.layui-laypage-btn'); |
| | | if (btn.length) { |
| | | btn.text(I18n.t('confirm')); |
| | | } |
| | | }); |
| | | |
| | | // Update 'X items/page' |
| | | $('.layui-laypage-limits select option').each(function() { |
| | | var text = $(this).text(); |
| | | var limit = text.match(/\d+/); |
| | | if (limit) { |
| | | $(this).text(limit[0] + I18n.t('items_per_page')); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | layui.use(['table','laydate', 'form'], function(){ |
| | | var table = layui.table; |
| | | var $ = layui.jquery; |
| | |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | updatePagination(); |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | form.on('checkbox(tableCheckbox)', function (data) { |
| | |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | updatePagination(); |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | } |
| | |
| | | case 'addData': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '新增', |
| | | title: typeof I18n !== 'undefined' ? I18n.t('add') : '新增', |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | content: 'waitPakinLog_detail.html', |
| | |
| | | case 'deleteData': |
| | | var data = checkStatus.data; |
| | | if (data.length === 0){ |
| | | layer.msg('请选择数据'); |
| | | layer.msg(typeof I18n !== 'undefined' ? I18n.t('please_select_data') : '请选择数据'); |
| | | } else { |
| | | layer.confirm('确定删除'+(data.length===1?'此':data.length)+'条数据吗', function(){ |
| | | var msg = '确定删除'+(data.length===1?'此':data.length)+'条数据吗'; |
| | | if (typeof I18n !== 'undefined') { |
| | | msg = I18n.t('confirm_delete_prefix') + " " + data.length + " " + I18n.t('confirm_delete_suffix'); |
| | | } |
| | | layer.confirm(msg, { |
| | | title: typeof I18n !== 'undefined' ? I18n.t('prompt') : '提示', |
| | | btn: [typeof I18n !== 'undefined' ? I18n.t('confirm') : '确定', typeof I18n !== 'undefined' ? I18n.t('cancel') : '取消'] |
| | | }, function(){ |
| | | $.ajax({ |
| | | url: baseUrl+"/waitPakinLog/delete/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | |
| | | } |
| | | break; |
| | | case 'exportData': |
| | | layer.confirm('确定导出Excel吗', {shadeClose: true}, function(){ |
| | | layer.confirm(typeof I18n !== 'undefined' ? I18n.t('confirm_export_excel') : '确定导出Excel吗', { |
| | | shadeClose: true, |
| | | title: typeof I18n !== 'undefined' ? I18n.t('prompt') : '提示', |
| | | btn: [typeof I18n !== 'undefined' ? I18n.t('confirm') : '确定', typeof I18n !== 'undefined' ? I18n.t('cancel') : '取消'] |
| | | }, function(){ |
| | | var titles=[]; |
| | | var fields=[]; |
| | | obj.config.cols[0].map(function (col) { |
| | |
| | | case 'detail': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '详情', |
| | | title: typeof I18n !== 'undefined' ? I18n.t('detail') : '详情', |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: true, |
| | |
| | | case 'edit': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '修改', |
| | | title: typeof I18n !== 'undefined' ? I18n.t('edit') : '修改', |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | content: 'waitPakinLog_detail.html', |
| | |
| | | case 'modiUser': |
| | | var param = top.reObject(data).modiUser; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | layer.msg(typeof I18n !== 'undefined' ? I18n.t('no_data_found') : "无数据"); |
| | | } else { |
| | | layer.open({ |
| | | layer.open({ |
| | | type: 2, |
| | | title: '修改人员详情', |
| | | title: typeof I18n !== 'undefined' ? I18n.t('modifier_detail') : '修改人员详情', |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: true, |
| | |
| | | case 'appeUser': |
| | | var param = top.reObject(data).appeUser; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | layer.msg(typeof I18n !== 'undefined' ? I18n.t('no_data_found') : "无数据"); |
| | | } else { |
| | | layer.open({ |
| | | layer.open({ |
| | | type: 2, |
| | | title: '创建者详情', |
| | | title: typeof I18n !== 'undefined' ? I18n.t('creator_detail') : '创建者详情', |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: true, |
| | |
| | | ,range: true |
| | | }); |
| | | |
| | | // Add i18n listener |
| | | $(document).on('i18n:updated', function() { |
| | | table.reload('waitPakinLog', { |
| | | cols: [getCol()], |
| | | done: function() { |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | updatePagination(); |
| | | } |
| | | } |
| | | }); |
| | | }); |
| | | |
| | | }); |
| | | |
| | | // 关闭动作 |
| | |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | updatePagination(); |
| | | } |
| | | pageCurr=curr; |
| | | if (res.data.length === 0 && count !== 0) { |
| | | tableIns.reload({ |
| | |
| | | var pageCurr; |
| | | function getCol() { |
| | | var cols = [ |
| | | {field: 'wrkNo', align: 'center',title: '工作号'} |
| | | ,{field: 'ioTime$', align: 'center',title: '工作时间', width: 160} |
| | | {field: 'wrkNo', align: 'center',title: I18n.t('work_no')} |
| | | ,{field: 'ioTime$', align: 'center',title: I18n.t('work_time'), width: 160} |
| | | ]; |
| | | cols.push.apply(cols, detlCols); |
| | | cols.push({field: 'modiUser$', align: 'center',title: '修改人员', hide:true} |
| | | ,{field: 'modiTime$', align: 'center',title: '修改时间', hide:true}) |
| | | if (typeof getDetlCols === 'function') { |
| | | cols.push.apply(cols, getDetlCols()); |
| | | } else { |
| | | cols.push.apply(cols, detlCols); |
| | | } |
| | | cols.push({field: 'modiUser$', align: 'center',title: I18n.t('modifier'), hide:true} |
| | | ,{field: 'modiTime$', align: 'center',title: I18n.t('modify_time'), hide:true}) |
| | | return cols; |
| | | } |
| | | function updatePagination() { |
| | | if (typeof I18n === 'undefined') return; |
| | | |
| | | // Update 'Total X items' |
| | | $('.layui-laypage-count').each(function() { |
| | | var text = $(this).text(); |
| | | var count = text.match(/\d+/); |
| | | if (count) { |
| | | $(this).text(I18n.t('total_prefix') + count[0] + I18n.t('total_suffix')); |
| | | } |
| | | }); |
| | | |
| | | // Update 'Go to [input] page [button]' |
| | | $('.layui-laypage-skip').each(function() { |
| | | var $this = $(this); |
| | | // Replace "到第" (First text node) |
| | | var contents = $this.contents(); |
| | | for (var i = 0; i < contents.length; i++) { |
| | | if (contents[i].nodeType === 3 && contents[i].textContent.trim() !== '') { |
| | | // Assuming the first non-empty text node is "到第" |
| | | contents[i].textContent = I18n.t('jump_to'); |
| | | break; |
| | | } |
| | | } |
| | | |
| | | // Replace "页" (Text node after input) |
| | | var input = $this.find('.layui-input'); |
| | | if (input.length) { |
| | | var nextNode = input[0].nextSibling; |
| | | if (nextNode && nextNode.nodeType === 3) { |
| | | nextNode.textContent = I18n.t('page'); |
| | | } |
| | | } |
| | | |
| | | // Replace Button text |
| | | var btn = $this.find('.layui-laypage-btn'); |
| | | if (btn.length) { |
| | | btn.text(I18n.t('confirm')); |
| | | } |
| | | }); |
| | | |
| | | // Update 'X items/page' |
| | | $('.layui-laypage-limits select option').each(function() { |
| | | var text = $(this).text(); |
| | | var limit = text.match(/\d+/); |
| | | if (limit) { |
| | | $(this).text(limit[0] + I18n.t('items_per_page')); |
| | | } |
| | | }); |
| | | } |
| | | layui.use(['table','laydate', 'form'], function(){ |
| | | var table = layui.table; |
| | | var $ = layui.jquery; |
| | | var layer = layui.layer; |
| | | var layDate = layui.laydate; |
| | | var form = layui.form; |
| | | |
| | | var doneCallback = function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | form.on('checkbox(tableCheckbox)', function (data) { |
| | | var _index = $(data.elem).attr('table-index')||0; |
| | | if(data.elem.checked){ |
| | | res.data[_index][data.value] = 'Y'; |
| | | }else{ |
| | | res.data[_index][data.value] = 'N'; |
| | | } |
| | | }); |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | updatePagination(); |
| | | } |
| | | }; |
| | | |
| | | $(document).on('i18n:updated', function() { |
| | | tableIns.reload({ |
| | | cols: [getCol()], |
| | | done: doneCallback |
| | | }); |
| | | }); |
| | | |
| | | // 数据渲染 |
| | | tableIns = table.render({ |
| | |
| | | response: { |
| | | statusCode: 200 |
| | | }, |
| | | done: function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | form.on('checkbox(tableCheckbox)', function (data) { |
| | | var _index = $(data.elem).attr('table-index')||0; |
| | | if(data.elem.checked){ |
| | | res.data[_index][data.value] = 'Y'; |
| | | }else{ |
| | | res.data[_index][data.value] = 'N'; |
| | | } |
| | | }); |
| | | } |
| | | done: doneCallback |
| | | }); |
| | | |
| | | // 监听排序事件 |
| | |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | updatePagination(); |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | } |
| | |
| | | case 'addData': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '新增', |
| | | title: I18n.t('add'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | case 'deleteData': |
| | | var data = checkStatus.data; |
| | | if (data.length === 0){ |
| | | layer.msg('请选择数据'); |
| | | layer.msg(I18n.t('please_select_data')); |
| | | } else { |
| | | layer.confirm('确定删除'+(data.length===1?'此':data.length)+'条数据吗', function(){ |
| | | layer.confirm(I18n.t('confirm_delete_prefix')+(data.length===1?I18n.t('this'):data.length)+I18n.t('confirm_delete_suffix'), function(){ |
| | | $.ajax({ |
| | | url: baseUrl+"/wrkDetl/delete/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | |
| | | } |
| | | break; |
| | | case 'exportData': |
| | | layer.confirm('确定导出Excel吗', {shadeClose: true}, function(){ |
| | | layer.confirm(I18n.t('confirm_export_excel'), {shadeClose: true, |
| | | title: typeof I18n !== 'undefined' ? I18n.t('prompt') : '提示', |
| | | btn: [typeof I18n !== 'undefined' ? I18n.t('confirm') : '确定', typeof I18n !== 'undefined' ? I18n.t('cancel') : '取消'] |
| | | }, function(){ |
| | | var titles=[]; |
| | | var fields=[]; |
| | | obj.config.cols[0].map(function (col) { |
| | |
| | | case 'detail': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '详情', |
| | | title: I18n.t('detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: true, |
| | |
| | | case 'edit': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '修改', |
| | | title: I18n.t('modify'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | case 'modiUser': |
| | | var param = top.reObject(data).modiUser; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | layer.msg(I18n.t('no_data_found')); |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: '修改人员详情', |
| | | title: I18n.t('modifier_detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | case 'appeUser': |
| | | var param = top.reObject(data).appeUser; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | layer.msg(I18n.t('no_data_found')); |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: '创建者详情', |
| | | title: I18n.t('creator_detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | updatePagination(); |
| | | } |
| | | pageCurr=curr; |
| | | if (res.data.length === 0 && count !== 0) { |
| | | tableIns.reload({ |
| | |
| | | var pageCurr; |
| | | function getCol() { |
| | | var cols = [ |
| | | {field: 'wrkNo', align: 'center',title: '工作号'} |
| | | ,{field: 'ioTime$', align: 'center',title: '工作时间'} |
| | | {field: 'wrkNo', align: 'center',title: I18n.t('work_no')} |
| | | ,{field: 'ioTime$', align: 'center',title: I18n.t('work_time')} |
| | | ]; |
| | | cols.push.apply(cols, detlCols); |
| | | cols.push({field: 'modiUser$', align: 'center',title: '修改人员',hide: true} |
| | | ,{field: 'modiTime$', align: 'center',title: '修改时间',hide: true} |
| | | cols.push.apply(cols, getDetlCols()); |
| | | cols.push({field: 'modiUser$', align: 'center',title: I18n.t('modifier'),hide: true} |
| | | ,{field: 'modiTime$', align: 'center',title: I18n.t('modify_time'),hide: true} |
| | | ,{fixed: 'right', title: I18n.t('operation'), align: 'center', toolbar: '#operate', width: 120} |
| | | ) |
| | | return cols; |
| | | } |
| | | |
| | | layui.use(['table','laydate', 'form'], function(){ |
| | | var table = layui.table; |
| | | var $ = layui.jquery; |
| | | var layer = layui.layer; |
| | | var layDate = layui.laydate; |
| | | var form = layui.form; |
| | | function initTable() { |
| | | layui.use(['table','laydate', 'form'], function(){ |
| | | var table = layui.table; |
| | | var $ = layui.jquery; |
| | | var layer = layui.layer; |
| | | var layDate = layui.laydate; |
| | | var form = layui.form; |
| | | |
| | | // 数据渲染 |
| | | tableIns = table.render({ |
| | | elem: '#wrkDetlLog', |
| | | headers: {token: localStorage.getItem('token')}, |
| | | url: baseUrl+'/wrkDetlLogs/list/auth', |
| | | page: true, |
| | | limit: 16, |
| | | limits: [16, 30, 50, 100, 200, 500], |
| | | even: true, |
| | | toolbar: '#toolbar', |
| | | cellMinWidth: 50, |
| | | cols: [getCol()], |
| | | request: { |
| | | pageName: 'curr', |
| | | pageSize: 'limit' |
| | | }, |
| | | parseData: function (res) { |
| | | return { |
| | | 'code': res.code, |
| | | 'msg': res.msg, |
| | | 'count': res.data.total, |
| | | 'data': res.data.records |
| | | } |
| | | }, |
| | | response: { |
| | | statusCode: 200 |
| | | }, |
| | | done: function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | form.on('checkbox(tableCheckbox)', function (data) { |
| | | var _index = $(data.elem).attr('table-index')||0; |
| | | if(data.elem.checked){ |
| | | res.data[_index][data.value] = 'Y'; |
| | | }else{ |
| | | res.data[_index][data.value] = 'N'; |
| | | } |
| | | }); |
| | | } |
| | | }); |
| | | |
| | | // 监听排序事件 |
| | | table.on('sort(locMast)', function (obj) { |
| | | var searchData = {}; |
| | | $.each($('#search-box [name]').serializeArray(), function() { |
| | | searchData[this.name] = this.value; |
| | | }); |
| | | searchData['orderByField'] = obj.field; |
| | | searchData['orderByType'] = obj.type; |
| | | tableIns.reload({ |
| | | where: searchData, |
| | | page: { |
| | | curr: 1 |
| | | // 数据渲染 |
| | | tableIns = table.render({ |
| | | elem: '#wrkDetlLog', |
| | | headers: {token: localStorage.getItem('token')}, |
| | | url: baseUrl+'/wrkDetlLogs/list/auth', |
| | | page: true, |
| | | limit: 16, |
| | | limits: [16, 30, 50, 100, 200, 500], |
| | | even: true, |
| | | toolbar: '#toolbar', |
| | | cellMinWidth: 50, |
| | | cols: [getCol()], |
| | | request: { |
| | | pageName: 'curr', |
| | | pageSize: 'limit' |
| | | }, |
| | | done: function (res, curr, count) { |
| | | parseData: function (res) { |
| | | return { |
| | | 'code': res.code, |
| | | 'msg': res.msg, |
| | | 'count': res.data.total, |
| | | 'data': res.data.records |
| | | } |
| | | }, |
| | | response: { |
| | | statusCode: 200 |
| | | }, |
| | | done: function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | } |
| | | }); |
| | | }); |
| | | |
| | | // 监听头工具栏事件 |
| | | table.on('toolbar(wrkDetlLog)', function (obj) { |
| | | var checkStatus = table.checkStatus(obj.config.id); |
| | | switch(obj.event) { |
| | | case 'addData': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '新增', |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | content: 'wrkDetlLog_detail.html', |
| | | success: function(layero, index){ |
| | | layer.getChildFrame('#data-detail-submit-edit', index).hide(); |
| | | clearFormVal(layer.getChildFrame('#detail', index)); |
| | | layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"}); |
| | | form.on('checkbox(tableCheckbox)', function (data) { |
| | | var _index = $(data.elem).attr('table-index')||0; |
| | | if(data.elem.checked){ |
| | | res.data[_index][data.value] = 'Y'; |
| | | }else{ |
| | | res.data[_index][data.value] = 'N'; |
| | | } |
| | | }); |
| | | break; |
| | | case 'deleteData': |
| | | var data = checkStatus.data; |
| | | if (data.length === 0){ |
| | | layer.msg('请选择数据'); |
| | | } else { |
| | | layer.confirm('确定删除'+(data.length===1?'此':data.length)+'条数据吗', function(){ |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | // 监听排序事件 |
| | | table.on('sort(locMast)', function (obj) { |
| | | var searchData = {}; |
| | | $.each($('#search-box [name]').serializeArray(), function() { |
| | | searchData[this.name] = this.value; |
| | | }); |
| | | searchData['orderByField'] = obj.field; |
| | | searchData['orderByType'] = obj.type; |
| | | tableIns.reload({ |
| | | where: searchData, |
| | | page: { |
| | | curr: 1 |
| | | }, |
| | | done: function (res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | } |
| | | }); |
| | | }); |
| | | |
| | | // 监听头工具栏事件 |
| | | table.on('toolbar(wrkDetlLog)', function (obj) { |
| | | var checkStatus = table.checkStatus(obj.config.id); |
| | | switch(obj.event) { |
| | | case 'addData': |
| | | layer.open({ |
| | | type: 2, |
| | | title: I18n.t('add'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | content: 'wrkDetlLog_detail.html', |
| | | success: function(layero, index){ |
| | | layer.getChildFrame('#data-detail-submit-edit', index).hide(); |
| | | clearFormVal(layer.getChildFrame('#detail', index)); |
| | | layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"}); |
| | | } |
| | | }); |
| | | break; |
| | | case 'deleteData': |
| | | var data = checkStatus.data; |
| | | if (data.length === 0){ |
| | | layer.msg(I18n.t('please_select_data')); |
| | | } else { |
| | | layer.confirm(I18n.t('confirm_delete_prefix')+(data.length===1?I18n.t('this'):data.length)+I18n.t('confirm_delete_suffix'), function(){ |
| | | $.ajax({ |
| | | url: baseUrl+"/wrkDetlLog/delete/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: {param: JSON.stringify(data)}, |
| | | method: 'POST', |
| | | traditional:true, |
| | | success: function (res) { |
| | | if (res.code === 200){ |
| | | layer.closeAll(); |
| | | tableReload(false); |
| | | } else if (res.code === 403){ |
| | | top.location.href = baseUrl+"/"; |
| | | } else { |
| | | layer.msg(res.msg) |
| | | } |
| | | } |
| | | }) |
| | | }); |
| | | } |
| | | break; |
| | | case 'exportData': |
| | | layer.confirm(I18n.t('confirm_export_excel'), {shadeClose: true}, function(){ |
| | | var titles=[]; |
| | | var fields=[]; |
| | | obj.config.cols[0].map(function (col) { |
| | | if (col.type === 'normal' && col.hide === false && col.toolbar == null) { |
| | | titles.push(col.title); |
| | | fields.push(col.field); |
| | | } |
| | | }); |
| | | var exportData = {}; |
| | | $.each($('#search-box [name]').serializeArray(), function() { |
| | | exportData[this.name] = this.value; |
| | | }); |
| | | var param = { |
| | | 'wrkDetlLog': exportData, |
| | | 'fields': fields |
| | | }; |
| | | $.ajax({ |
| | | url: baseUrl+"/wrkDetlLog/delete/auth", |
| | | url: baseUrl+"/wrkDetlLog/export/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: {param: JSON.stringify(data)}, |
| | | data: JSON.stringify(param), |
| | | dataType:'json', |
| | | contentType:'application/json;charset=UTF-8', |
| | | method: 'POST', |
| | | traditional:true, |
| | | success: function (res) { |
| | | if (res.code === 200){ |
| | | layer.closeAll(); |
| | | tableReload(false); |
| | | } else if (res.code === 403){ |
| | | layer.closeAll(); |
| | | if (res.code === 200) { |
| | | table.exportFile(titles,res.data,'xls'); |
| | | } else if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } else { |
| | | layer.msg(res.msg) |
| | | } |
| | | } |
| | | }) |
| | | }); |
| | | }); |
| | | } |
| | | break; |
| | | case 'exportData': |
| | | layer.confirm('确定导出Excel吗', {shadeClose: true}, function(){ |
| | | var titles=[]; |
| | | var fields=[]; |
| | | obj.config.cols[0].map(function (col) { |
| | | if (col.type === 'normal' && col.hide === false && col.toolbar == null) { |
| | | titles.push(col.title); |
| | | fields.push(col.field); |
| | | } |
| | | }); |
| | | var exportData = {}; |
| | | $.each($('#search-box [name]').serializeArray(), function() { |
| | | exportData[this.name] = this.value; |
| | | }); |
| | | var param = { |
| | | 'wrkDetlLog': exportData, |
| | | 'fields': fields |
| | | }; |
| | | $.ajax({ |
| | | url: baseUrl+"/wrkDetlLog/export/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: JSON.stringify(param), |
| | | dataType:'json', |
| | | contentType:'application/json;charset=UTF-8', |
| | | method: 'POST', |
| | | success: function (res) { |
| | | layer.closeAll(); |
| | | if (res.code === 200) { |
| | | table.exportFile(titles,res.data,'xls'); |
| | | } else if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } else { |
| | | layer.msg(res.msg) |
| | | } |
| | | } |
| | | }); |
| | | }); |
| | | break; |
| | | } |
| | | }); |
| | | |
| | | // 监听行工具事件 |
| | | table.on('tool(wrkDetlLog)', function(obj){ |
| | | var data = obj.data; |
| | | switch (obj.event) { |
| | | // 详情 |
| | | case 'detail': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '详情', |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: true, |
| | | content: 'wrkDetlLog_detail.html', |
| | | success: function(layero, index){ |
| | | setFormVal(layer.getChildFrame('#detail', index), data, true); |
| | | top.convertDisabled(layer.getChildFrame('#data-detail :input', index), true); |
| | | layer.getChildFrame('#data-detail-submit-save,#data-detail-submit-edit,#prompt', index).hide(); |
| | | layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"}); |
| | | layero.find('iframe')[0].contentWindow.layui.form.render('select'); |
| | | layero.find('iframe')[0].contentWindow.layui.form.render('checkbox'); |
| | | } |
| | | }); |
| | | break; |
| | | // 编辑 |
| | | case 'edit': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '修改', |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | content: 'wrkDetlLog_detail.html', |
| | | success: function(layero, index){ |
| | | layer.getChildFrame('#data-detail-submit-save', index).hide(); |
| | | setFormVal(layer.getChildFrame('#detail', index), data, false); |
| | | top.convertDisabled(layer.getChildFrame('#data-detail :input', index), false); |
| | | top.convertDisabled(layer.getChildFrame('', index), true); |
| | | layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"}); |
| | | layero.find('iframe')[0].contentWindow.layui.form.render('select'); |
| | | layero.find('iframe')[0].contentWindow.layui.form.render('checkbox'); |
| | | } |
| | | }); |
| | | break; |
| | | case 'modiUser': |
| | | var param = top.reObject(data).modiUser; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: '修改人员详情', |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: true, |
| | | content: '../user/user_detail.html', |
| | | success: function(layero, index){ |
| | | $.ajax({ |
| | | url: "baseUrl+/user/"+ param +"/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | method: 'GET', |
| | | success: function (res) { |
| | | if (res.code === 200){ |
| | | setFormVal(layer.getChildFrame('#detail', index), res.data, true); |
| | | top.convertDisabled(layer.getChildFrame('#data-detail :input', index), true); |
| | | layer.getChildFrame('#data-detail-submit-save,#data-detail-submit-edit,#prompt', index).hide(); |
| | | layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"}); |
| | | layero.find('iframe')[0].contentWindow.layui.form.render('select'); |
| | | layero.find('iframe')[0].contentWindow.layui.form.render('checkbox'); |
| | | } else if (res.code === 403){ |
| | | top.location.href = baseUrl+"/"; |
| | | }else { |
| | | layer.msg(res.msg) |
| | | } |
| | | } |
| | | }) |
| | | } |
| | | }); |
| | | } |
| | | break; |
| | | case 'appeUser': |
| | | var param = top.reObject(data).appeUser; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: '创建者详情', |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: true, |
| | | content: '../user/user_detail.html', |
| | | success: function(layero, index){ |
| | | $.ajax({ |
| | | url: "baseUrl+/user/"+ param +"/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | method: 'GET', |
| | | success: function (res) { |
| | | if (res.code === 200){ |
| | | setFormVal(layer.getChildFrame('#detail', index), res.data, true); |
| | | top.convertDisabled(layer.getChildFrame('#data-detail :input', index), true); |
| | | layer.getChildFrame('#data-detail-submit-save,#data-detail-submit-edit,#prompt', index).hide(); |
| | | layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"}); |
| | | layero.find('iframe')[0].contentWindow.layui.form.render('select'); |
| | | layero.find('iframe')[0].contentWindow.layui.form.render('checkbox'); |
| | | } else if (res.code === 403){ |
| | | top.location.href = baseUrl+"/"; |
| | | }else { |
| | | layer.msg(res.msg) |
| | | } |
| | | } |
| | | }) |
| | | } |
| | | }); |
| | | } |
| | | break; |
| | | |
| | | } |
| | | }); |
| | | |
| | | // 数据保存动作 |
| | | form.on('submit(save)', function () { |
| | | if (banMsg != null){ |
| | | layer.msg(banMsg); |
| | | return; |
| | | } |
| | | method("add"); |
| | | }); |
| | | |
| | | // 数据修改动作 |
| | | form.on('submit(edit)', function () { |
| | | method("update") |
| | | }); |
| | | |
| | | function method(name){ |
| | | var index = layer.load(1, { |
| | | shade: [0.5,'#000'] //0.1透明度的背景 |
| | | }); |
| | | var data = { |
| | | // id: $('#id').val(), |
| | | wrkNo: $('#wrkNo').val(), |
| | | ioTime: top.strToDate($('#ioTime\\$').val()), |
| | | matnr: $('#matnr').val(), |
| | | lgnum: $('#lgnum').val(), |
| | | tbnum: $('#tbnum').val(), |
| | | tbpos: $('#tbpos').val(), |
| | | zmatid: $('#zmatid').val(), |
| | | maktx: $('#maktx').val(), |
| | | werks: $('#werks').val(), |
| | | anfme: $('#anfme').val(), |
| | | altme: $('#altme').val(), |
| | | zpallet: $('#zpallet').val(), |
| | | bname: $('#bname').val(), |
| | | memo: $('#memo').val(), |
| | | modiUser: $('#modiUser').val(), |
| | | modiTime: top.strToDate($('#modiTime\\$').val()), |
| | | appeUser: $('#appeUser').val(), |
| | | appeTime: top.strToDate($('#appeTime\\$').val()), |
| | | nista: $('#nista').val(), |
| | | |
| | | }; |
| | | $.ajax({ |
| | | url: baseUrl+"/wrkDetlLog/"+name+"/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: top.reObject(data), |
| | | method: 'POST', |
| | | success: function (res) { |
| | | if (res.code === 200){ |
| | | parent.layer.closeAll(); |
| | | parent.$(".layui-laypage-btn")[0].click(); |
| | | $("#data-detail :input").each(function () { |
| | | $(this).val(""); |
| | | }); |
| | | } else if (res.code === 403){ |
| | | top.location.href = baseUrl+"/"; |
| | | }else { |
| | | layer.msg(res.msg) |
| | | } |
| | | layer.close(index); |
| | | break; |
| | | } |
| | | }) |
| | | } |
| | | }); |
| | | |
| | | // 复选框事件 |
| | | form.on('checkbox(detailCheckbox)', function (data) { |
| | | var el = data.elem; |
| | | if (el.checked) { |
| | | $(el).val('Y'); |
| | | } else { |
| | | $(el).val('N'); |
| | | // 监听行工具事件 |
| | | table.on('tool(wrkDetlLog)', function(obj){ |
| | | var data = obj.data; |
| | | switch (obj.event) { |
| | | // 详情 |
| | | case 'detail': |
| | | layer.open({ |
| | | type: 2, |
| | | title: I18n.t('detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: true, |
| | | content: 'wrkDetlLog_detail.html', |
| | | success: function(layero, index){ |
| | | setFormVal(layer.getChildFrame('#detail', index), data, true); |
| | | top.convertDisabled(layer.getChildFrame('#data-detail :input', index), true); |
| | | layer.getChildFrame('#data-detail-submit-save,#data-detail-submit-edit,#prompt', index).hide(); |
| | | layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"}); |
| | | layero.find('iframe')[0].contentWindow.layui.form.render('select'); |
| | | layero.find('iframe')[0].contentWindow.layui.form.render('checkbox'); |
| | | } |
| | | }); |
| | | break; |
| | | // 编辑 |
| | | case 'edit': |
| | | layer.open({ |
| | | type: 2, |
| | | title: I18n.t('edit'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | content: 'wrkDetlLog_detail.html', |
| | | success: function(layero, index){ |
| | | layer.getChildFrame('#data-detail-submit-save', index).hide(); |
| | | setFormVal(layer.getChildFrame('#detail', index), data, false); |
| | | top.convertDisabled(layer.getChildFrame('#data-detail :input', index), false); |
| | | top.convertDisabled(layer.getChildFrame('', index), true); |
| | | layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"}); |
| | | layero.find('iframe')[0].contentWindow.layui.form.render('select'); |
| | | layero.find('iframe')[0].contentWindow.layui.form.render('checkbox'); |
| | | } |
| | | }); |
| | | break; |
| | | case 'modiUser': |
| | | var param = top.reObject(data).modiUser; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: I18n.t('modifier_detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: true, |
| | | content: '../user/user_detail.html', |
| | | success: function(layero, index){ |
| | | $.ajax({ |
| | | url: "baseUrl+/user/"+ param +"/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | method: 'GET', |
| | | success: function (res) { |
| | | if (res.code === 200){ |
| | | setFormVal(layer.getChildFrame('#detail', index), res.data, true); |
| | | top.convertDisabled(layer.getChildFrame('#data-detail :input', index), true); |
| | | layer.getChildFrame('#data-detail-submit-save,#data-detail-submit-edit,#prompt', index).hide(); |
| | | layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"}); |
| | | layero.find('iframe')[0].contentWindow.layui.form.render('select'); |
| | | layero.find('iframe')[0].contentWindow.layui.form.render('checkbox'); |
| | | } else if (res.code === 403){ |
| | | top.location.href = baseUrl+"/"; |
| | | }else { |
| | | layer.msg(res.msg) |
| | | } |
| | | } |
| | | }) |
| | | } |
| | | }); |
| | | } |
| | | break; |
| | | case 'appeUser': |
| | | var param = top.reObject(data).appeUser; |
| | | if (param === undefined) { |
| | | layer.msg("无数据"); |
| | | } else { |
| | | layer.open({ |
| | | type: 2, |
| | | title: I18n.t('creator_detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: true, |
| | | content: '../user/user_detail.html', |
| | | success: function(layero, index){ |
| | | $.ajax({ |
| | | url: "baseUrl+/user/"+ param +"/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | method: 'GET', |
| | | success: function (res) { |
| | | if (res.code === 200){ |
| | | setFormVal(layer.getChildFrame('#detail', index), res.data, true); |
| | | top.convertDisabled(layer.getChildFrame('#data-detail :input', index), true); |
| | | layer.getChildFrame('#data-detail-submit-save,#data-detail-submit-edit,#prompt', index).hide(); |
| | | layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"}); |
| | | layero.find('iframe')[0].contentWindow.layui.form.render('select'); |
| | | layero.find('iframe')[0].contentWindow.layui.form.render('checkbox'); |
| | | } else if (res.code === 403){ |
| | | top.location.href = baseUrl+"/"; |
| | | }else { |
| | | layer.msg(res.msg) |
| | | } |
| | | } |
| | | }) |
| | | } |
| | | }); |
| | | } |
| | | break; |
| | | |
| | | } |
| | | }); |
| | | |
| | | // 数据保存动作 |
| | | form.on('submit(save)', function () { |
| | | if (banMsg != null){ |
| | | layer.msg(banMsg); |
| | | return; |
| | | } |
| | | method("add"); |
| | | }); |
| | | |
| | | // 数据修改动作 |
| | | form.on('submit(edit)', function () { |
| | | method("update") |
| | | }); |
| | | |
| | | function method(name){ |
| | | var index = layer.load(1, { |
| | | shade: [0.5,'#000'] //0.1透明度的背景 |
| | | }); |
| | | var data = { |
| | | // id: $('#id').val(), |
| | | wrkNo: $('#wrkNo').val(), |
| | | ioTime: top.strToDate($('#ioTime\\$').val()), |
| | | matnr: $('#matnr').val(), |
| | | lgnum: $('#lgnum').val(), |
| | | tbnum: $('#tbnum').val(), |
| | | tbpos: $('#tbpos').val(), |
| | | zmatid: $('#zmatid').val(), |
| | | maktx: $('#maktx').val(), |
| | | werks: $('#werks').val(), |
| | | anfme: $('#anfme').val(), |
| | | altme: $('#altme').val(), |
| | | zpallet: $('#zpallet').val(), |
| | | bname: $('#bname').val(), |
| | | memo: $('#memo').val(), |
| | | modiUser: $('#modiUser').val(), |
| | | modiTime: top.strToDate($('#modiTime\\$').val()), |
| | | appeUser: $('#appeUser').val(), |
| | | appeTime: top.strToDate($('#appeTime\\$').val()), |
| | | nista: $('#nista').val(), |
| | | |
| | | }; |
| | | $.ajax({ |
| | | url: baseUrl+"/wrkDetlLog/"+name+"/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | | data: top.reObject(data), |
| | | method: 'POST', |
| | | success: function (res) { |
| | | if (res.code === 200){ |
| | | parent.layer.closeAll(); |
| | | parent.$(".layui-laypage-btn")[0].click(); |
| | | $("#data-detail :input").each(function () { |
| | | $(this).val(""); |
| | | }); |
| | | } else if (res.code === 403){ |
| | | top.location.href = baseUrl+"/"; |
| | | }else { |
| | | layer.msg(res.msg) |
| | | } |
| | | layer.close(index); |
| | | } |
| | | }) |
| | | } |
| | | }); |
| | | |
| | | // 搜索栏搜索事件 |
| | | form.on('submit(search)', function (data) { |
| | | pageCurr = 1; |
| | | tableReload(false); |
| | | }); |
| | | // 复选框事件 |
| | | form.on('checkbox(detailCheckbox)', function (data) { |
| | | var el = data.elem; |
| | | if (el.checked) { |
| | | $(el).val('Y'); |
| | | } else { |
| | | $(el).val('N'); |
| | | } |
| | | }); |
| | | |
| | | // 搜索栏重置事件 |
| | | form.on('submit(reset)', function (data) { |
| | | pageCurr = 1; |
| | | clearFormVal($('#search-box')); |
| | | tableReload(false); |
| | | }); |
| | | // 搜索栏搜索事件 |
| | | form.on('submit(search)', function (data) { |
| | | pageCurr = 1; |
| | | tableReload(false); |
| | | }); |
| | | |
| | | // 时间选择器 |
| | | layDate.render({ |
| | | elem: '#ioTime\\$', |
| | | type: 'datetime' |
| | | }); |
| | | layDate.render({ |
| | | elem: '#modiTime\\$', |
| | | type: 'datetime' |
| | | }); |
| | | layDate.render({ |
| | | elem: '#appeTime\\$', |
| | | type: 'datetime' |
| | | }); |
| | | layDate.render({ |
| | | elem: '.layui-laydate-range' |
| | | ,type: 'datetime' |
| | | ,range: true |
| | | }); |
| | | // 搜索栏重置事件 |
| | | form.on('submit(reset)', function (data) { |
| | | pageCurr = 1; |
| | | clearFormVal($('#search-box')); |
| | | tableReload(false); |
| | | }); |
| | | |
| | | // 时间选择器 |
| | | layDate.render({ |
| | | elem: '#ioTime\\$', |
| | | type: 'datetime' |
| | | }); |
| | | layDate.render({ |
| | | elem: '#modiTime\\$', |
| | | type: 'datetime' |
| | | }); |
| | | layDate.render({ |
| | | elem: '#appeTime\\$', |
| | | type: 'datetime' |
| | | }); |
| | | layDate.render({ |
| | | elem: '.layui-laydate-range' |
| | | ,type: 'datetime' |
| | | ,range: true |
| | | }); |
| | | |
| | | }); |
| | | } |
| | | |
| | | if (typeof I18n !== 'undefined' && I18n.isReady()) { |
| | | initTable(); |
| | | } else { |
| | | $(document).on('i18n:ready', function() { |
| | | initTable(); |
| | | }); |
| | | } |
| | | |
| | | $(document).on('i18n:languageChanged', function() { |
| | | initTable(); |
| | | }); |
| | | |
| | | // 关闭动作 |
| | |
| | | pageCurr -= 1; |
| | | } |
| | | limit(child); |
| | | setTimeout(function() { |
| | | if (typeof I18n !== 'undefined') { |
| | | if (child) { |
| | | if (typeof parent.I18n !== 'undefined') { |
| | | parent.I18n.updatePage(parent.layui.jquery('.layui-table-view')); |
| | | parent.I18n.updateLayuiPagination(); |
| | | } |
| | | } else { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | } |
| | | }, 50); |
| | | } |
| | | }); |
| | | } |
| | |
| | | var pageCurr; |
| | | var wrkNo; |
| | | |
| | | layui.use(['table','laydate', 'form'], function(){ |
| | | var table = layui.table; |
| | | var $ = layui.jquery; |
| | | var layer = layui.layer; |
| | | var layDate = layui.laydate; |
| | | var form = layui.form; |
| | | var doneCallback = function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | form.on('checkbox(tableCheckbox)', function (data) { |
| | | var _index = $(data.elem).attr('table-index')||0; |
| | | if(data.elem.checked){ |
| | | res.data[_index][data.value] = 'Y'; |
| | | }else{ |
| | | res.data[_index][data.value] = 'N'; |
| | | } |
| | | }); |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | }; |
| | | |
| | | $(document).on('i18n:languageChanged', function() { |
| | | tableIns.reload({ |
| | | cols: getCol(), |
| | | done: doneCallback |
| | | }); |
| | | }); |
| | | function getCol() { |
| | | return [[ |
| | | {type: 'checkbox'} |
| | | ,{field: 'wrkNo', align: 'center',title: I18n.t('work_no'),sort: true, width: 85} |
| | | ,{field: 'ioTime$', align: 'center',title: I18n.t('work_time'),sort: true, width: 160} |
| | | ,{field: 'wrkSts', align: 'center',title: I18n.t('work_status'), templet: function(d) { |
| | | var key = 'wrk_status_' + d.wrkSts; |
| | | var text = I18n.t(key); |
| | | return text === key ? d.wrkSts$ : text; |
| | | }} |
| | | ,{field: 'ioType', align: 'center',title: I18n.t('transaction_type'), templet: function(d) { |
| | | var key = 'io_type_' + d.ioType; |
| | | var text = I18n.t(key); |
| | | return text === key ? d.ioType$ : text; |
| | | }} |
| | | ,{field: 'ioPri', align: 'center',title: I18n.t('priority')} |
| | | ,{field: 'crnNo$', align: 'center',title: I18n.t('crane')} |
| | | ,{field: 'sourceStaNo$', align: 'center',title: I18n.t('source_station')} |
| | | ,{field: 'staNo$', align: 'center',title: I18n.t('target_station')} |
| | | ,{field: 'sourceLocNo$', align: 'center',title: I18n.t('source_location')} |
| | | ,{field: 'locNo$', align: 'center',title: I18n.t('target_location')} |
| | | ,{field: 'barcode', align: 'center',title: I18n.t('barcode')} |
| | | ,{field: 'preHave', align: 'center',title: I18n.t('pre_existing'), hide: true} |
| | | ,{field: 'takeNone', align: 'center',title: I18n.t('empty_op'), hide: true} |
| | | ,{field: 'modiUser$', align: 'center',title: I18n.t('modifier'), hide:true} |
| | | ,{field: 'modiTime$', align: 'center',title: I18n.t('modify_time'), hide:true, width: 160} |
| | | ,{fixed: 'right', title: I18n.t('operation'), align: 'center', toolbar: '#operate', width:250} |
| | | ]]; |
| | | } |
| | | |
| | | // 数据渲染 |
| | | tableIns = table.render({ |
| | |
| | | even: true, |
| | | toolbar: '#toolbar', |
| | | cellMinWidth: 50, |
| | | cols: [[ |
| | | {type: 'checkbox'} |
| | | ,{field: 'wrkNo', align: 'center',title: '工作号',sort: true, width: 85} |
| | | ,{field: 'ioTime$', align: 'center',title: '工作时间',sort: true, width: 160} |
| | | ,{field: 'wrkSts$', align: 'center',title: '工作状态'} |
| | | ,{field: 'ioType$', align: 'center',title: '入出库类型'} |
| | | ,{field: 'ioPri', align: 'center',title: '优先级'} |
| | | ,{field: 'crnNo$', align: 'center',title: '堆垛机'} |
| | | ,{field: 'sourceStaNo$', align: 'center',title: '源站'} |
| | | ,{field: 'staNo$', align: 'center',title: '目标站'} |
| | | ,{field: 'sourceLocNo$', align: 'center',title: '源库位'} |
| | | ,{field: 'locNo$', align: 'center',title: '目标库位'} |
| | | ,{field: 'barcode', align: 'center',title: '条码'} |
| | | ,{field: 'preHave', align: 'center',title: '先入品', hide: true} |
| | | ,{field: 'takeNone', align: 'center',title: '空操作', hide: true} |
| | | // ,{field: 'picking', align: 'center',title: '拣料', templet:function(row){ |
| | | // var html = "<input value='picking' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' table-index='"+row.LAY_TABLE_INDEX+"'"; |
| | | // if(row.picking === 'Y'){html += " checked ";} |
| | | // html += ">"; |
| | | // return html; |
| | | // }} |
| | | // ,{field: 'exitMk', align: 'center',title: '退出', templet:function(row){ |
| | | // var html = "<input value='exitMk' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' table-index='"+row.LAY_TABLE_INDEX+"'"; |
| | | // if(row.exitMk === 'Y'){html += " checked ";} |
| | | // html += ">"; |
| | | // return html; |
| | | // }} |
| | | // ,{field: 'emptyMk', align: 'center',title: '空板', templet:function(row){ |
| | | // var html = "<input value='emptyMk' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' table-index='"+row.LAY_TABLE_INDEX+"'"; |
| | | // if(row.emptyMk === 'Y'){html += " checked ";} |
| | | // html += ">"; |
| | | // return html; |
| | | // }} |
| | | // |
| | | // ,{field: 'crnStrTime$', align: 'center',title: '堆垛机启动时间'} |
| | | // ,{field: 'crnEndTime$', align: 'center',title: '堆垛机停止时间'} |
| | | // ,{field: 'refIotime$', align: 'center',title: '拣料时间'} |
| | | ,{field: 'modiUser$', align: 'center',title: '修改人员', hide:true} |
| | | ,{field: 'modiTime$', align: 'center',title: '修改时间', hide:true, width: 160} |
| | | // ,{field: 'memo', align: 'center',title: '备注'} |
| | | // |
| | | // ,{field: 'fullPlt', align: 'center',title: '满板', templet:function(row){ |
| | | // var html = "<input value='fullPlt' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' table-index='"+row.LAY_TABLE_INDEX+"'"; |
| | | // if(row.fullPlt === 'Y'){html += " checked ";} |
| | | // html += ">"; |
| | | // return html; |
| | | // }} |
| | | |
| | | ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width:250} |
| | | ]], |
| | | cols: getCol(), |
| | | request: { |
| | | pageName: 'curr', |
| | | pageSize: 'limit' |
| | |
| | | response: { |
| | | statusCode: 200 |
| | | }, |
| | | done: function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | form.on('checkbox(tableCheckbox)', function (data) { |
| | | var _index = $(data.elem).attr('table-index')||0; |
| | | if(data.elem.checked){ |
| | | res.data[_index][data.value] = 'Y'; |
| | | }else{ |
| | | res.data[_index][data.value] = 'N'; |
| | | } |
| | | }); |
| | | } |
| | | done: doneCallback |
| | | }); |
| | | |
| | | // 监听排序事件 |
| | |
| | | page: { |
| | | curr: 1 |
| | | }, |
| | | done: function (res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | } |
| | | done: doneCallback |
| | | }); |
| | | }); |
| | | |
| | |
| | | case 'addData': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '新增', |
| | | title: I18n.t('add'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | case 'deleteData': |
| | | var data = checkStatus.data; |
| | | if (data.length === 0){ |
| | | layer.msg('请选择数据'); |
| | | layer.msg(I18n.t('please_select_data')); |
| | | } else { |
| | | layer.confirm('确定删除'+(data.length===1?'此':data.length)+'条数据吗', function(){ |
| | | layer.confirm(I18n.t('confirm_delete_prefix')+data.length+I18n.t('confirm_delete_suffix'), function(){ |
| | | $.ajax({ |
| | | url: baseUrl+"/wrkMast/delete/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | |
| | | } |
| | | break; |
| | | case 'exportData': |
| | | layer.confirm('确定导出Excel吗', {shadeClose: true}, function(){ |
| | | layer.confirm(I18n.t('confirm_export'), {shadeClose: true}, function(){ |
| | | var titles=[]; |
| | | var fields=[]; |
| | | obj.config.cols[0].map(function (col) { |
| | |
| | | // 弹层显示 |
| | | layer.open({ |
| | | type: 2, |
| | | title: '工作档明细', |
| | | title: I18n.t('work_order_detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: true, |
| | |
| | | break; |
| | | // 完成 |
| | | case 'complete': |
| | | layer.confirm('确认完成该笔工作档?', {title: '工作号:'+data.wrkNo, shadeClose: true}, function(){ |
| | | layer.confirm(I18n.t('confirm_complete_work_order'), {title: I18n.t('work_no')+':'+data.wrkNo, shadeClose: true}, function(){ |
| | | http.post(baseUrl+"/hand/control/wrkMast", {workNo: data.wrkNo, type:1}, function (res) { |
| | | $(".layui-laypage-btn")[0].click(); |
| | | layer.msg(data.wrkNo + res.msg); |
| | |
| | | // 取消 |
| | | case 'cancel': |
| | | if (data.pdcType === "Y") { |
| | | layer.confirm('当前任务关联ERP销售单,取消将重新生成出库作业,是否继续?', {title: '工作号:'+data.wrkNo, shadeClose: true}, function(){ |
| | | layer.confirm(I18n.t('confirm_cancel_erp_order'), {title: I18n.t('work_no')+':'+data.wrkNo, shadeClose: true}, function(){ |
| | | http.post(baseUrl+"/hand/control/wrkMast", {workNo: data.wrkNo, type:2}, function (res) { |
| | | $(".layui-laypage-btn")[0].click(); |
| | | layer.msg(data.wrkNo + res.msg); |
| | |
| | | layer.closeAll(); |
| | | }); |
| | | } else { |
| | | layer.confirm('确认取消该笔工作档?', {title: '工作号:'+data.wrkNo, shadeClose: true}, function(){ |
| | | layer.confirm(I18n.t('confirm_cancel_work_order'), {title: I18n.t('work_no')+':'+data.wrkNo, shadeClose: true}, function(){ |
| | | http.post(baseUrl+"/hand/control/wrkMast", {workNo: data.wrkNo, type:2}, function (res) { |
| | | $(".layui-laypage-btn")[0].click(); |
| | | layer.msg(data.wrkNo + res.msg); |
| | |
| | | break; |
| | | // 拣料入库 |
| | | case 'pick': |
| | | layer.confirm('拣料入库该笔工作档?', {title: '工作号:'+data.wrkNo, shadeClose: true}, function(){ |
| | | layer.confirm(I18n.t('confirm_pick_work_order'), {title: I18n.t('work_no')+':'+data.wrkNo, shadeClose: true}, function(){ |
| | | http.post(baseUrl+"/hand/control/wrkMast", {workNo: data.wrkNo, type:3}, function (res) { |
| | | $(".layui-laypage-btn")[0].click(); |
| | | layer.msg(data.wrkNo + res.msg); |
| | |
| | | break; |
| | | // 先入品 |
| | | case 'preHave': |
| | | layer.confirm('任务发生先入品异常。如需重新入库,请确保货物已放至堆垛机出库站!', {title: '工作号:'+data.wrkNo, shadeClose: true}, function(){ |
| | | layer.confirm(I18n.t('confirm_pre_existing_exception'), {title: I18n.t('work_no')+':'+data.wrkNo, shadeClose: true}, function(){ |
| | | http.post(baseUrl+"/deal/preHave/start", {wrkNo: data.wrkNo}, function (res) { |
| | | $(".layui-laypage-btn")[0].click(); |
| | | layer.msg(data.wrkNo + res.msg, {icon: 1}); |
| | |
| | | break; |
| | | // 空操作 |
| | | case 'takeNone': |
| | | layer.confirm('任务发送空操作异常!是否。。。。。。。。?', {title: '工作号:'+data.wrkNo, shadeClose: true}, function(){ |
| | | layer.confirm(I18n.t('confirm_empty_op_exception'), {title: I18n.t('work_no')+':'+data.wrkNo, shadeClose: true}, function(){ |
| | | }); |
| | | break; |
| | | } |
| | |
| | | cellMinWidth: 50, |
| | | cols: [[ |
| | | {type: 'checkbox'} |
| | | ,{field: 'wrkNo', align: 'center',title: '工作号'} |
| | | ,{field: 'ioTime$', align: 'center',title: '工作时间'} |
| | | ,{field: 'matnr', align: 'center',title: '物料'} |
| | | ,{field: 'lgnum', align: 'center',title: '仓库号'} |
| | | ,{field: 'tbnum', align: 'center',title: '转储请求编号'} |
| | | ,{field: 'tbpos', align: 'center',title: '行项目'} |
| | | ,{field: 'zmatid', align: 'center',title: '物料标签ID'} |
| | | ,{field: 'maktx', align: 'center',title: '物料描述'} |
| | | ,{field: 'werks', align: 'center',title: '工厂'} |
| | | ,{field: 'anfme', align: 'center',title: '数量'} |
| | | ,{field: 'altme', align: 'center',title: '单位'} |
| | | ,{field: 'zpallet', align: 'center',title: '托盘条码'} |
| | | ,{field: 'bname', align: 'center',title: '用户ID'} |
| | | ,{field: 'memo', align: 'center',title: '备注'} |
| | | ,{field: 'wrkNo', align: 'center',title: I18n.t('work_no')} |
| | | ,{field: 'ioTime$', align: 'center',title: I18n.t('work_time')} |
| | | ,{field: 'matnr', align: 'center',title: I18n.t('material')} |
| | | ,{field: 'lgnum', align: 'center',title: I18n.t('warehouse_no')} |
| | | ,{field: 'tbnum', align: 'center',title: I18n.t('transfer_req_no')} |
| | | ,{field: 'tbpos', align: 'center',title: I18n.t('item_no')} |
| | | ,{field: 'zmatid', align: 'center',title: I18n.t('material_label_id')} |
| | | ,{field: 'maktx', align: 'center',title: I18n.t('material_desc')} |
| | | ,{field: 'werks', align: 'center',title: I18n.t('factory')} |
| | | ,{field: 'anfme', align: 'center',title: I18n.t('quantity')} |
| | | ,{field: 'altme', align: 'center',title: I18n.t('unit')} |
| | | ,{field: 'zpallet', align: 'center',title: I18n.t('pallet_barcode')} |
| | | ,{field: 'bname', align: 'center',title: I18n.t('user_id')} |
| | | ,{field: 'memo', align: 'center',title: I18n.t('remark')} |
| | | |
| | | ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width:50} |
| | | ,{fixed: 'right', title: I18n.t('operation'), align: 'center', toolbar: '#operate', width:50} |
| | | ]], |
| | | request: { |
| | | pageName: 'curr', |
| | |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | pageCurr=curr; |
| | | if (res.data.length === 0 && count !== 0) { |
| | | tableIns.reload({ |
| | |
| | | var form = layui.form; |
| | | |
| | | // 数据渲染 |
| | | tableIns = table.render({ |
| | | elem: '#wrkMastLog', |
| | | headers: {token: localStorage.getItem('token')}, |
| | | url: baseUrl+'/wrkMastLog/list/auth', |
| | | page: true, |
| | | limit: 16, |
| | | limits: [16, 30, 50, 100, 200, 500], |
| | | even: true, |
| | | toolbar: '#toolbar', |
| | | cellMinWidth: 50, |
| | | cols: [[ |
| | | function initTable() { |
| | | tableIns = table.render({ |
| | | elem: '#wrkMastLog', |
| | | headers: {token: localStorage.getItem('token')}, |
| | | url: baseUrl+'/wrkMastLog/list/auth', |
| | | page: true, |
| | | limit: 16, |
| | | limits: [16, 30, 50, 100, 200, 500], |
| | | even: true, |
| | | toolbar: '#toolbar', |
| | | cellMinWidth: 50, |
| | | cols: getCol(), |
| | | request: { |
| | | pageName: 'curr', |
| | | pageSize: 'limit' |
| | | }, |
| | | parseData: function (res) { |
| | | return { |
| | | 'code': res.code, |
| | | 'msg': res.msg, |
| | | 'count': res.data.total, |
| | | 'data': res.data.records |
| | | } |
| | | }, |
| | | response: { |
| | | statusCode: 200 |
| | | }, |
| | | done: doneCallback |
| | | }); |
| | | } |
| | | |
| | | if (I18n.isReady()) { |
| | | initTable(); |
| | | } else { |
| | | $(document).on('i18n:ready', initTable); |
| | | } |
| | | |
| | | var doneCallback = function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | form.on('checkbox(tableCheckbox)', function (data) { |
| | | var _index = $(data.elem).attr('table-index')||0; |
| | | if(data.elem.checked){ |
| | | res.data[_index][data.value] = 'Y'; |
| | | }else{ |
| | | res.data[_index][data.value] = 'N'; |
| | | } |
| | | }); |
| | | setTimeout(function() { |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | }, 50); |
| | | }; |
| | | |
| | | $(document).on('i18n:languageChanged', function() { |
| | | tableIns.reload({ |
| | | cols: getCol(), |
| | | done: doneCallback |
| | | }); |
| | | }); |
| | | |
| | | function getCol() { |
| | | return [[ |
| | | // {type: 'checkbox'} |
| | | // ,{field: 'id', title: 'ID', sort: true,align: 'center', fixed: 'left', width: 80} |
| | | // ,{field: 'id', align: 'center',title: '编号'} |
| | | {field: 'wrkNo', align: 'center',title: '工作号',event: 'wrkNo', sort: true} |
| | | ,{field: 'ioTime$', align: 'center',title: '工作时间', width:160, sort: true} |
| | | ,{field: 'wrkSts$', align: 'center',title: '工作状态', width:160} |
| | | ,{field: 'ioType$', align: 'center',title: '入出库类型', width:160} |
| | | ,{field: 'ioPri', align: 'center',title: '优先级'} |
| | | ,{field: 'crnNo$', align: 'center',title: '堆垛机号'} |
| | | ,{field: 'sourceStaNo$', align: 'center',title: '源站'} |
| | | ,{field: 'staNo$', align: 'center',title: '目标站'} |
| | | ,{field: 'sourceLocNo$', align: 'center',title: '源库位'} |
| | | ,{field: 'locNo$', align: 'center',title: '目标库位'} |
| | | {field: 'wrkNo', align: 'center',title: I18n.t('work_no'),event: 'wrkNo', sort: true} |
| | | ,{field: 'ioTime$', align: 'center',title: I18n.t('work_time'), width:160, sort: true} |
| | | ,{field: 'wrkSts', align: 'center',title: I18n.t('work_status'), width:160, templet: function(d) { |
| | | var key = 'wrk_status_' + d.wrkSts; |
| | | var text = I18n.t(key); |
| | | return text === key ? d.wrkSts$ : text; |
| | | }} |
| | | ,{field: 'ioType', align: 'center',title: I18n.t('transaction_type'), width:160, templet: function(d) { |
| | | var key = 'io_type_' + d.ioType; |
| | | var text = I18n.t(key); |
| | | return text === key ? d.ioType$ : text; |
| | | }} |
| | | ,{field: 'ioPri', align: 'center',title: I18n.t('priority')} |
| | | ,{field: 'crnNo$', align: 'center',title: I18n.t('crane_no')} |
| | | ,{field: 'sourceStaNo$', align: 'center',title: I18n.t('source_station')} |
| | | ,{field: 'staNo$', align: 'center',title: I18n.t('target_station')} |
| | | ,{field: 'sourceLocNo$', align: 'center',title: I18n.t('source_location')} |
| | | ,{field: 'locNo$', align: 'center',title: I18n.t('target_location')} |
| | | // ,{field: 'picking', align: 'center',title: '拣料', templet:function(row){ |
| | | // var html = "<input value='picking' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' table-index='"+row.LAY_TABLE_INDEX+"'"; |
| | | // if(row.picking === 'Y'){html += " checked ";} |
| | |
| | | // ,{field: 'crnStrTime$', align: 'center',title: '堆垛机启动时间'} |
| | | // ,{field: 'crnEndTime$', align: 'center',title: '堆垛机停止时间'} |
| | | // ,{field: 'plcStrTime$', align: 'center',title: '拣料时间'} |
| | | ,{field: 'modiUser$', align: 'center',title: '修改人员', hide:true} |
| | | ,{field: 'modiTime$', align: 'center',title: '修改时间', hide:true} |
| | | ,{field: 'modiUser$', align: 'center',title: I18n.t('modifier'), hide:true} |
| | | ,{field: 'modiTime$', align: 'center',title: I18n.t('modify_time'), hide:true} |
| | | // ,{field: 'appeUser$', align: 'center',title: '创建者',event: 'appeUser', style: 'cursor:pointer'} |
| | | // ,{field: 'appeTime$', align: 'center',title: '添加时间'} |
| | | ,{field: 'barcode', align: 'center',title: '条码'} |
| | | ,{field: 'barcode', align: 'center',title: I18n.t('barcode')} |
| | | // ,{field: 'fullPlt', align: 'center',title: '满板', templet:function(row){ |
| | | // var html = "<input value='fullPlt' type='checkbox' lay-skin='primary' lay-filter='tableCheckbox' table-index='"+row.LAY_TABLE_INDEX+"'"; |
| | | // if(row.fullPlt === 'Y'){html += " checked ";} |
| | |
| | | // return html; |
| | | // }} |
| | | |
| | | ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width: 80} |
| | | ]], |
| | | request: { |
| | | pageName: 'curr', |
| | | pageSize: 'limit' |
| | | }, |
| | | parseData: function (res) { |
| | | return { |
| | | 'code': res.code, |
| | | 'msg': res.msg, |
| | | 'count': res.data.total, |
| | | 'data': res.data.records |
| | | } |
| | | }, |
| | | response: { |
| | | statusCode: 200 |
| | | }, |
| | | done: function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | form.on('checkbox(tableCheckbox)', function (data) { |
| | | var _index = $(data.elem).attr('table-index')||0; |
| | | if(data.elem.checked){ |
| | | res.data[_index][data.value] = 'Y'; |
| | | }else{ |
| | | res.data[_index][data.value] = 'N'; |
| | | } |
| | | }); |
| | | } |
| | | }); |
| | | ,{fixed: 'right', title: I18n.t('operation'), align: 'center', width: 80, templet: function(d) { |
| | | return '<a class="layui-btn layui-btn-xs btn-detlShow" lay-event="detlShow" data-i18n="detail">' + I18n.t('detail') + '</a>'; |
| | | }} |
| | | ]]; |
| | | } |
| | | |
| | | // 监听排序事件 |
| | | table.on('sort(wrkMastLog)', function (obj) { |
| | |
| | | } |
| | | pageCurr=curr; |
| | | limit(); |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | } |
| | | }); |
| | | }); |
| | |
| | | case 'addData': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '新增', |
| | | title: I18n.t('add'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | case 'deleteData': |
| | | var data = checkStatus.data; |
| | | if (data.length === 0){ |
| | | layer.msg('请选择数据'); |
| | | layer.msg(I18n.t('please_select_data')); |
| | | } else { |
| | | layer.confirm('确定删除'+(data.length===1?'此':data.length)+'条数据吗', function(){ |
| | | layer.confirm(I18n.t('confirm_delete_prefix')+(data.length===1?I18n.t('this'):data.length)+I18n.t('confirm_delete_suffix'), function(){ |
| | | $.ajax({ |
| | | url: baseUrl+"/wrkMastLog/delete/auth", |
| | | headers: {'token': localStorage.getItem('token')}, |
| | |
| | | } |
| | | break; |
| | | case 'exportData': |
| | | layer.confirm('确定导出Excel吗', {shadeClose: true}, function(){ |
| | | layer.confirm(I18n.t('confirm_export_excel'), {shadeClose: true}, function(){ |
| | | var titles=[]; |
| | | var fields=[]; |
| | | obj.config.cols[0].map(function (col) { |
| | |
| | | // 弹层显示 |
| | | layer.open({ |
| | | type: 2, |
| | | title: '工作明细历史档', |
| | | title: I18n.t('work_order_detail_history'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: true, |
| | |
| | | case 'detail': |
| | | layer.open({ |
| | | type: 2, |
| | | title: '详情', |
| | | title: I18n.t('detail'), |
| | | maxmin: true, |
| | | area: [top.detailWidth, top.detailHeight], |
| | | shadeClose: false, |
| | |
| | | pageCurr -= 1; |
| | | } |
| | | limit(child); |
| | | setTimeout(function() { |
| | | if (typeof I18n !== 'undefined') { |
| | | if (child) { |
| | | // If reloading parent table from iframe |
| | | if (typeof parent.I18n !== 'undefined') { |
| | | parent.I18n.updatePage(parent.layui.jquery('.layui-table-view')); |
| | | parent.I18n.updateLayuiPagination(); |
| | | } |
| | | } else { |
| | | I18n.updatePage($('.layui-table-view')); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | } |
| | | }, 50); |
| | | } |
| | | }); |
| | | } |
| | |
| | | /** EasyWeb iframe v3.1.8 date:2020-05-04 License By http://easyweb.vip */ |
| | | /** EasyWeb iframe v3.1.8 date:2020-05-04 License By http://easyweb.vip */ |
| | | |
| | | layui.define(['layer'], function (exports) { |
| | | var $ = layui.jquery; |
| | |
| | | admin.closeTabOperNav(); |
| | | var $title = $(tabDOM + '>.layui-tab-title'); |
| | | if (!url) { |
| | | if ($title.find('li').first().hasClass('layui-this')) return layer.msg('主页不能关闭', {icon: 2}); |
| | | if ($title.find('li').first().hasClass('layui-this')) return layer.msg(typeof I18n !== 'undefined' ? I18n.t('主页不能关闭') : '主页不能关闭', {icon: 2}); |
| | | $title.find('li.layui-this').find('.layui-tab-close').trigger('click'); |
| | | } else { |
| | | if (url === $title.find('li').first().attr('lay-id')) return layer.msg('主页不能关闭', {icon: 2}); |
| | | if (url === $title.find('li').first().attr('lay-id')) return layer.msg(typeof I18n !== 'undefined' ? I18n.t('主页不能关闭') : '主页不能关闭', {icon: 2}); |
| | | $title.find('li[lay-id="' + url + '"]').find('.layui-tab-close').trigger('click'); |
| | | } |
| | | }; |
| | |
| | | return admin.activeNav(index.mTabPosition); |
| | | } |
| | | mIsAddTab = true; |
| | | var titleHtml = param.menuName || ''; |
| | | if (!param.i18nKey && param.menuPath) { |
| | | var $menuItem = $(sideDOM).find('a[lay-href="' + param.menuPath + '"]'); |
| | | if ($menuItem.length > 0) { |
| | | param.i18nKey = $menuItem.attr('data-i18n-key'); |
| | | } |
| | | } |
| | | if (param.i18nKey && typeof I18n !== 'undefined') { |
| | | titleHtml = I18n.t(param.i18nKey); |
| | | } |
| | | if (param.i18nKey) { |
| | | titleHtml = '<span data-i18n="' + param.i18nKey + '">' + titleHtml + '</span>'; |
| | | } |
| | | element.tabAdd(tabFilter, { |
| | | id: param.menuPath, title: '<span class="title">' + (param.menuName || '') + '</span>', |
| | | id: param.menuPath, title: '<span class="title">' + titleHtml + '</span>', |
| | | content: '<iframe class="admin-iframe" lay-id="' + param.menuPath + '" src="' + param.menuPath + |
| | | '" onload="layui.index.hideLoading(this);" frameborder="0"></iframe>' |
| | | }); |
| | |
| | | index.mTabList.splice(0, index.mTabList.length); |
| | | if (param.menuPath === index.homeUrl) { |
| | | index.mTabPosition = undefined; |
| | | index.setTabTitle($(param.menuName).text() || $(sideDOM + ' [lay-href="' + index.homeUrl + '"]').text() || '主页'); |
| | | var homeTitle = $(param.menuName).text() || $(sideDOM + ' [lay-href="' + index.homeUrl + '"]').text() || '<span data-i18n="home">主页</span>'; |
| | | index.setTabTitle(homeTitle); |
| | | } else { |
| | | index.mTabPosition = param.menuPath; |
| | | index.mTabList.push(param); |
| | | index.setTabTitle(param.menuName); |
| | | var titleHtml = param.menuName || ''; |
| | | if (param.i18nKey) { |
| | | titleHtml = '<span data-i18n="' + param.i18nKey + '">' + titleHtml + '</span>'; |
| | | } |
| | | index.setTabTitle(titleHtml); |
| | | } |
| | | if (!setter.cacheTab) return; |
| | | admin.putTempData('indexTabs', index.mTabList); |
| | |
| | | index.openTab = function (param) { |
| | | if (window !== top && !admin.isTop() && top.layui && top.layui.index) return top.layui.index.openTab(param); |
| | | if (param.end) tabEndCall[param.url] = param.end; |
| | | index.loadView({menuPath: param.url, menuName: param.title}); |
| | | index.loadView({menuPath: param.url, menuName: param.title, i18nKey: param.i18nKey}); |
| | | }; |
| | | |
| | | /** 关闭tab */ |
| | |
| | | ' <ul class="layui-nav" lay-filter="admin-pagetabs-nav">', |
| | | ' <li class="layui-nav-item" lay-unselect>', |
| | | ' <dl class="layui-nav-child layui-anim-fadein">', |
| | | ' <dd ew-event="closeThisTabs" lay-unselect><a>关闭当前标签页</a></dd>', |
| | | ' <dd ew-event="closeOtherTabs" lay-unselect><a>关闭其它标签页</a></dd>', |
| | | ' <dd ew-event="closeAllTabs" lay-unselect><a>关闭全部标签页</a></dd>', |
| | | ' <dd ew-event="closeThisTabs" lay-unselect><a data-i18n="关闭当前标签页">关闭当前标签页</a></dd>', |
| | | ' <dd ew-event="closeOtherTabs" lay-unselect><a data-i18n="关闭其他标签页">关闭其它标签页</a></dd>', |
| | | ' <dd ew-event="closeAllTabs" lay-unselect><a data-i18n="关闭所有标签页">关闭全部标签页</a></dd>', |
| | | ' </dl>', |
| | | ' </li>', |
| | | ' </ul>', |
| | |
| | | if (!href || href === '#') return; |
| | | if (href.indexOf('javascript:') === 0) return new Function(href.substring(11))(); |
| | | var name = $that.attr('ew-title') || $that.text().replace(/(^\s*)|(\s*$)/g, ''); |
| | | var i18nKey = $that.attr('data-i18n-key'); |
| | | var end = $that.attr('ew-end'); |
| | | try { |
| | | if (end) end = new Function(end); |
| | |
| | | } catch (e) { |
| | | console.error(e); |
| | | } |
| | | index.openTab({url: href, title: name, end: end}); |
| | | index.openTab({url: href, title: name, end: end, i18nKey: i18nKey}); |
| | | layui.event.call(this, 'admin', 'side({*})', {href: href}); |
| | | }); |
| | | |
| | |
| | | var layId = $(this).attr('lay-id'); |
| | | layui.contextMenu.show([{ |
| | | icon: 'layui-icon layui-icon-refresh', |
| | | name: '刷新当前', |
| | | name: typeof I18n !== 'undefined' ? I18n.t('刷新') : '刷新当前', |
| | | click: function () { |
| | | element.tabChange(tabFilter, layId); |
| | | if ('true' != $(tabDOM).attr('lay-autoRefresh')) admin.refresh(layId); |
| | | } |
| | | }, { |
| | | icon: 'layui-icon layui-icon-close-fill ctx-ic-lg', |
| | | name: '关闭当前', |
| | | name: typeof I18n !== 'undefined' ? I18n.t('关闭当前') : '关闭当前', |
| | | click: function () { |
| | | admin.closeThisTabs(layId); |
| | | } |
| | | }, { |
| | | icon: 'layui-icon layui-icon-unlink', |
| | | name: '关闭其他', |
| | | name: typeof I18n !== 'undefined' ? I18n.t('关闭其他') : '关闭其他', |
| | | click: function () { |
| | | admin.closeOtherTabs(layId); |
| | | } |
| | | }, { |
| | | icon: 'layui-icon layui-icon-close ctx-ic-lg', |
| | | name: '关闭全部', |
| | | name: typeof I18n !== 'undefined' ? I18n.t('关闭所有') : '关闭全部', |
| | | click: function () { |
| | | admin.closeAllTabs(); |
| | | } |
| | |
| | | ,view = layui.view |
| | | |
| | | //打开标签页 |
| | | ,openTabsPage = function(url, text){ |
| | | ,openTabsPage = function(url, text, i18nKey){ |
| | | //遍历页签选项卡 |
| | | var matchTo |
| | | ,tabs = $('#LAY_app_tabsheader>li') |
| | |
| | | |
| | | text = text || '新标签页'; |
| | | |
| | | if(i18nKey && typeof I18n !== 'undefined'){ |
| | | text = I18n.t(i18nKey); |
| | | } |
| | | |
| | | if(setter.pageTabs){ |
| | | //如果未在选项卡中匹配到,则追加选项卡 |
| | | if(!matchTo){ |
| | |
| | | ].join('')); |
| | | tabsPage.index = tabs.length; |
| | | element.tabAdd(FILTER_TAB_TBAS, { |
| | | title: '<span>'+ text +'</span>' |
| | | title: (i18nKey ? '<span data-i18n="'+ i18nKey +'">' : '<span>') + text + '</span>' |
| | | ,id: url |
| | | ,attr: path |
| | | }); |
| | |
| | | </head> |
| | | <body background="../static/image/404.jpg" style="background-repeat:no-repeat; background-size:100% 100%; background-attachment:fixed;"> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </html> |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | </div> |
| | | </form> |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </html> |
| | | |
| | |
| | | </div> |
| | | </form> |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | </div> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | <div id="search-box" class="layui-form layui-card-header"> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="loc_sts" placeholder="库位状态代号" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="loc_sts" placeholder="库位状态代号" autocomplete="off" data-i18n-placeholder="loc_status_code"> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- 待添加 --> |
| | | <div id="data-search-btn" class="layui-btn-container layui-form-item" style="display: inline-block"> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">重置</button> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search" data-i18n="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset" data-i18n="reset">重置</button> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | <table class="layui-hide" id="basLocSts" lay-filter="basLocSts"></table> |
| | | <script type="text/html" id="toolbar"> |
| | | <div class="layui-btn-container"> |
| | | <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">新增</button> |
| | | <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData">删除</button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData">导出</button> |
| | | <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData" data-i18n="add">新增</button> |
| | | <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData" data-i18n="delete">删除</button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" data-i18n="export">导出</button> |
| | | </div> |
| | | </script> |
| | | |
| | | <script type="text/html" id="operate"> |
| | | <a class="layui-btn layui-btn-xs btn-edit" lay-event="edit">编辑</a> |
| | | <a class="layui-btn layui-btn-xs layui-btn-normal btn-edit" lay-event="edit" data-i18n="modify">修改</a> |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/basLocSts/basLocSts.js" charset="utf-8"></script> |
| | | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </html> |
| | | |
| | |
| | | <div id="data-detail" class="layer_self_wrap"> |
| | | <form id="detail" class="layui-form" style="text-align: center;"> |
| | | <div class="layui-inline" style="width:80%;"> |
| | | <label class="layui-form-label" style="font-size: x-small"><span class="not-null">*</span>库位状态代号:</label> |
| | | <label class="layui-form-label" style="font-size: x-small"><span class="not-null">*</span><span data-i18n="loc_status_code">库位状态代号</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="locSts" class="layui-input" type="text" onkeyup="check(this.id, 'basLocSts')" lay-verify="required"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:80%;"> |
| | | <label class="layui-form-label" style="font-size: x-small">库位状态描述:</label> |
| | | <label class="layui-form-label" style="font-size: x-small"><span data-i18n="loc_status_desc">库位状态描述</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="locDesc" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">修改人员:</label> |
| | | <label class="layui-form-label"><span data-i18n="modifier">修改人员</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="modiUser" class="layui-input" type="text" style="display: none"> |
| | | <input id="modiUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">添加时间:</label> |
| | | <label class="layui-form-label"><span data-i18n="add_time">添加时间</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="appeTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | |
| | | <hr class="layui-bg-gray"> |
| | | |
| | | <div id="data-detail-btn" class="layui-btn-container layui-form-item"> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close">关闭</div> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save" data-i18n="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit" data-i18n="modify">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close" data-i18n="close">关闭</div> |
| | | </div> |
| | | |
| | | <div id="prompt"> |
| | | 温馨提示:请仔细填写相关信息,<span class="extrude"><span class="not-null">*</span> 为必填选项。</span> |
| | | <span data-i18n="warm_prompt_prefix"></span><span class="extrude"><span class="not-null">*</span> <span data-i18n="warm_prompt_suffix"></span></span> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/basLocSts/basLocSts.js" charset="utf-8"></script> |
| | | </html> |
| | | |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/basWhs/basWhs.js" charset="utf-8"></script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <div id="search-box" class="layui-form layui-card-header"> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="io_type" placeholder="入出类型代号" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="io_type" placeholder="入出类型代号" autocomplete="off" data-i18n-placeholder="io_type_code"> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- 待添加 --> |
| | | <div id="data-search-btn" class="layui-btn-container layui-form-item" style="display: inline-block"> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">重置</button> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search" data-i18n="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset" data-i18n="reset">重置</button> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | <table class="layui-hide" id="basWrkIotype" lay-filter="basWrkIotype"></table> |
| | | <script type="text/html" id="toolbar"> |
| | | <div class="layui-btn-container"> |
| | | <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">新增</button> |
| | | <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData">删除</button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData">导出</button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" data-i18n="export">导出</button> |
| | | </div> |
| | | </script> |
| | | |
| | | <script type="text/html" id="operate"> |
| | | <a class="layui-btn layui-btn-xs btn-edit" lay-event="edit">编辑</a> |
| | | <a class="layui-btn layui-btn-xs btn-detlShow" lay-event="detail" data-i18n="detail">详情</a> |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/basWrkIotype/basWrkIotype.js" charset="utf-8"></script> |
| | | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </html> |
| | | |
| | |
| | | <div id="data-detail" class="layer_self_wrap"> |
| | | <form id="detail" class="layui-form" style="text-align: center"> |
| | | <div class="layui-inline" style="width:80%;"> |
| | | <label class="layui-form-label" style="font-size: x-small"><span class="not-null">*</span>入出类型代号:</label> |
| | | <label class="layui-form-label" style="font-size: x-small"><span class="not-null">*</span><span data-i18n="io_type_code">入出类型代号</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="ioType" class="layui-input" type="text" onkeyup="check(this.id, 'basWrkIotype')" lay-verify="required|number"> |
| | | </div> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:80%;"> |
| | | <label class="layui-form-label" style="font-size: x-small">入出类型描述:</label> |
| | | <label class="layui-form-label" style="font-size: x-small"><span data-i18n="io_type_desc">入出类型描述</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="ioDesc" class="layui-input" type="text"> |
| | | </div> |
| | |
| | | <hr class="layui-bg-gray"> |
| | | |
| | | <div id="data-detail-btn" class="layui-btn-container layui-form-item"> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close">关闭</div> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save" data-i18n="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit" data-i18n="edit">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close" data-i18n="close">关闭</div> |
| | | </div> |
| | | |
| | | <div id="prompt"> |
| | | 温馨提示:请仔细填写相关信息,<span class="extrude"><span class="not-null">*</span> 为必填选项。</span> |
| | | <span data-i18n="warm_prompt_prefix">温馨提示:请仔细填写相关信息,</span><span class="extrude"><span class="not-null">*</span> <span data-i18n="warm_prompt_suffix">为必填选项。</span></span> |
| | | </div> |
| | | </form> |
| | | </div> |
| | |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/basWrkIotype/basWrkIotype.js" charset="utf-8"></script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </html> |
| | | |
| | |
| | | <div id="search-box" class="layui-form layui-card-header"> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="wrk_sts" placeholder="代号" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="wrk_sts" placeholder="代号" autocomplete="off" data-i18n-placeholder="code"> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- 待添加 --> |
| | | <div id="data-search-btn" class="layui-btn-container layui-form-item" style="display: inline-block"> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">重置</button> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search" data-i18n="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset" data-i18n="reset">重置</button> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | <table class="layui-hide" id="basWrkStatus" lay-filter="basWrkStatus"></table> |
| | | <script type="text/html" id="toolbar"> |
| | | <div class="layui-btn-container"> |
| | | <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">新增</button> |
| | | <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData">删除</button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData">导出</button> |
| | | <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData" data-i18n="add">新增</button> |
| | | <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData" data-i18n="delete">删除</button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" data-i18n="export">导出</button> |
| | | </div> |
| | | </script> |
| | | |
| | | <script type="text/html" id="operate"> |
| | | <a class="layui-btn layui-btn-xs btn-edit" lay-event="edit">编辑</a> |
| | | <a class="layui-btn layui-btn-xs btn-edit" lay-event="edit" data-i18n="edit">编辑</a> |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/basWrkStatus/basWrkStatus.js" charset="utf-8"></script> |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </html> |
| | | |
| | |
| | | </div> |
| | | --> |
| | | <div class="layui-inline" style="width:80%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>代 号:</label> |
| | | <label class="layui-form-label"><span class="not-null">*</span><span data-i18n="code">代 号</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="wrkSts" class="layui-input" type="text" onkeyup="check(this.id, 'basWrkStatus')" lay-verify="required|number"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:80%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>状态描述:</label> |
| | | <label class="layui-form-label"><span class="not-null">*</span><span data-i18n="status_desc">状态描述</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="wrkDesc" class="layui-input" type="text" lay-verify="required"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">修改人员:</label> |
| | | <label class="layui-form-label"><span data-i18n="modifier">修改人员</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="modiUser" class="layui-input" type="text" style="display: none"> |
| | | <input id="modiUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | | <input id="modiUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur() data-i18n-placeholder="input_placeholder"> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="userQueryBymodiUser" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="userQueryBymodiUserSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">修改时间:</label> |
| | | <label class="layui-form-label"><span data-i18n="modify_time">修改时间</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="modiTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">创 建 者:</label> |
| | | <label class="layui-form-label"><span data-i18n="creator">创 建 者</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="appeUser" class="layui-input" type="text" style="display: none"> |
| | | <input id="appeUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | | <input id="appeUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur() data-i18n-placeholder="input_placeholder"> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="userQueryByappeUser" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="userQueryByappeUserSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">添加时间:</label> |
| | | <label class="layui-form-label"><span data-i18n="add_time">添加时间</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="appeTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | |
| | | <hr class="layui-bg-gray"> |
| | | |
| | | <div id="data-detail-btn" class="layui-btn-container layui-form-item"> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close">关闭</div> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save" data-i18n="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit" data-i18n="edit">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close" data-i18n="close">关闭</div> |
| | | </div> |
| | | |
| | | <div id="prompt"> |
| | | 温馨提示:请仔细填写相关信息,<span class="extrude"><span class="not-null">*</span> 为必填选项。</span> |
| | | <span data-i18n="warm_prompt_prefix">温馨提示:请仔细填写相关信息,</span><span class="extrude"><span class="not-null">*</span> <span data-i18n="warm_prompt_suffix">为必填选项。</span></span> |
| | | </div> |
| | | </form> |
| | | </div> |
| | |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/basWrkStatus/basWrkStatus.js" charset="utf-8"></script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script>s |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | </html> |
| | | |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/config/config.js" charset="utf-8"></script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | }); |
| | | }); |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | |
| | | </div> |
| | | </form> |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </script> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <html lang="en"> |
| | | <head> |
| | | <meta charset="UTF-8"> |
| | | <title>首页</title> |
| | | <title data-i18n="首页">首页</title> |
| | | <meta name="renderer" content="webkit"> |
| | | <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> |
| | | <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> |
| | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/js/echarts/echarts.min.js"></script> |
| | | <script type="text/javascript" src="../../static/js/echarts/highcharts.js"></script> |
| | | <script src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <style> |
| | | body { |
| | | background-color: #f1f1f1; |
| | |
| | | </div> |
| | | </div> |
| | | |
| | | <!--表格数据--> |
| | | <div class="home-elem loc-retention"> |
| | | <div class="layui-form"> |
| | | <div id="form-header">库存滞留时间统计表</div> |
| | | <table class="layui-hide" id="stayTime" lay-filter="stayTime"></table> |
| | | <!--表格数据--> |
| | | <div class="home-elem loc-retention"> |
| | | <div class="layui-form"> |
| | | <div id="form-header" data-i18n="库存滞留时间统计表">库存滞留时间统计表</div> |
| | | <table class="layui-hide" id="stayTime" lay-filter="stayTime"></table> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </body> |
| | | <script> |
| | | pieCharts(); |
| | | lineCharts(); |
| | | $(document).on('i18n:ready', function() { |
| | | pieCharts(); |
| | | lineCharts(); |
| | | }); |
| | | |
| | | // 饼图 |
| | | function pieCharts(){ |
| | | $.ajax({ |
| | |
| | | success:function(res){ |
| | | var data = res.data; |
| | | var dataPie=eval(data.rows); |
| | | if (dataPie && typeof I18n !== 'undefined') { |
| | | for(var i=0; i<dataPie.length; i++) { |
| | | if(dataPie[i].name) { |
| | | dataPie[i].name = I18n.t(dataPie[i].name); |
| | | } else if (Array.isArray(dataPie[i]) && dataPie[i].length > 0) { |
| | | dataPie[i][0] = I18n.t(dataPie[i][0]); |
| | | } |
| | | } |
| | | } |
| | | var chart = { |
| | | plotBackgroundColor: null, |
| | | plotBorderWidth: null, |
| | | plotShadow: false |
| | | }; |
| | | var title = { |
| | | text: '库位使用比例', |
| | | text: typeof I18n !== 'undefined' ? I18n.t('库位使用比例') : '库位使用比例', |
| | | margin:1, |
| | | style: {fontSize: '18px',color: '#777',fontWeight: 'bold'}, |
| | | y: 5 |
| | |
| | | }; |
| | | var series= [{ |
| | | type: 'pie', |
| | | name: '库位占比', |
| | | name: typeof I18n !== 'undefined' ? I18n.t('库位占比') : '库位占比', |
| | | data: dataPie |
| | | }]; |
| | | var loading = { |
| | |
| | | success: function (res) { |
| | | var data = res.data; |
| | | var dataPie = eval(data.rows); |
| | | if (dataPie && typeof I18n !== 'undefined') { |
| | | for(var i=0; i<dataPie.length; i++) { |
| | | if(dataPie[i].name) { |
| | | dataPie[i].name = I18n.t(dataPie[i].name); |
| | | } else if (Array.isArray(dataPie[i]) && dataPie[i].length > 0) { |
| | | dataPie[i][0] = I18n.t(dataPie[i][0]); |
| | | } |
| | | } |
| | | } |
| | | var title = { |
| | | text: '日入出库数量', |
| | | text: typeof I18n !== 'undefined' ? I18n.t('日入出库数量') : '日入出库数量', |
| | | margin: 1, |
| | | style: {fontSize: '18px',color: '#777',fontWeight: 'bold'}, |
| | | y: 5 |
| | |
| | | }; |
| | | var yAxis = { |
| | | title: { |
| | | text: '入/出库数量' |
| | | text: typeof I18n !== 'undefined' ? I18n.t('入_出库数量') : '入/出库数量' |
| | | }, |
| | | plotLines: [{ |
| | | value: 0, |
| | |
| | | |
| | | // 表格 |
| | | var pageCurr; |
| | | var tableIns; |
| | | function getCol() { |
| | | var cols = [ |
| | | {field: 'appeTime$', title: '入库时间', align: 'center', width: 200} |
| | | ,{field: 'stay_time', align: 'center',title: '滞留天数'} |
| | | ,{field: 'loc_no', align: 'center',title: '库位号'} |
| | | {field: 'appeTime$', title: typeof I18n !== 'undefined' ? I18n.t('入库时间') : '入库时间', align: 'center', width: 200} |
| | | ,{field: 'stay_time', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('滞留天数') : '滞留天数'} |
| | | ,{field: 'loc_no', align: 'center',title: typeof I18n !== 'undefined' ? I18n.t('库位号') : '库位号'} |
| | | ]; |
| | | cols.push.apply(cols, detlCols); |
| | | cols.push.apply(cols, getDetlCols()); |
| | | return cols; |
| | | } |
| | | |
| | | // 监听语言切换事件 |
| | | $(document).on('i18n:languageChanged', function() { |
| | | pieCharts(); |
| | | lineCharts(); |
| | | if (tableIns) { |
| | | tableIns.reload({ |
| | | cols: [getCol()], |
| | | text: { none: typeof I18n !== 'undefined' ? I18n.t('no_data') : 'No Data' } |
| | | }); |
| | | } |
| | | }); |
| | | layui.use(['table','laydate', 'form'], function() { |
| | | var table = layui.table; |
| | | var $ = layui.jquery; |
| | | var layer = layui.layer; |
| | | |
| | | // 数据渲染 |
| | | tableIns = table.render({ |
| | | elem: '#stayTime', |
| | | headers: {token: localStorage.getItem('token')}, |
| | | url: baseUrl+'/report/viewStayTimeList.action', |
| | | page: true, |
| | | limit: 10, |
| | | toolbar: '#toolbar', |
| | | even: true, |
| | | cellMinWidth: 50, |
| | | crossDomain: true, |
| | | cols: [getCol()], |
| | | request: { |
| | | pageName: 'curr', |
| | | pageSize: 'limit' |
| | | }, |
| | | parseData: function (res) { |
| | | return { |
| | | 'code': res.code, |
| | | 'msg': res.msg, |
| | | 'count': res.data.total, |
| | | 'data': res.data.records |
| | | } |
| | | }, |
| | | response: { |
| | | statusCode: 200 |
| | | }, |
| | | done: function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | } |
| | | }); |
| | | |
| | | // 监听排序事件 |
| | | table.on('sort(stayTime)', function (obj) { |
| | | var searchData = {}; |
| | | $.each($('#search-box [name]').serializeArray(), function() { |
| | | searchData[this.name] = this.value; |
| | | }); |
| | | searchData['orderByField'] = obj.field; |
| | | searchData['orderByType'] = obj.type; |
| | | tableIns.reload({ |
| | | where: searchData, |
| | | page: { |
| | | curr: 1 |
| | | function initTable() { |
| | | // 数据渲染 |
| | | tableIns = table.render({ |
| | | elem: '#stayTime', |
| | | headers: {token: localStorage.getItem('token')}, |
| | | url: baseUrl+'/report/viewStayTimeList.action', |
| | | page: true, |
| | | limit: 10, |
| | | toolbar: '#toolbar', |
| | | even: true, |
| | | cellMinWidth: 50, |
| | | crossDomain: true, |
| | | cols: [getCol()], |
| | | text: { none: typeof I18n !== 'undefined' ? I18n.t('no_data') : 'No Data' }, |
| | | request: { |
| | | pageName: 'curr', |
| | | pageSize: 'limit' |
| | | }, |
| | | done: function (res, curr, count) { |
| | | parseData: function (res) { |
| | | return { |
| | | 'code': res.code, |
| | | 'msg': res.msg, |
| | | 'count': res.data.total, |
| | | 'data': res.data.records |
| | | } |
| | | }, |
| | | response: { |
| | | statusCode: 200 |
| | | }, |
| | | done: function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | } |
| | | }); |
| | | }); |
| | | |
| | | // 监听排序事件 |
| | | table.on('sort(stayTime)', function (obj) { |
| | | var searchData = {}; |
| | | $.each($('#search-box [name]').serializeArray(), function() { |
| | | searchData[this.name] = this.value; |
| | | }); |
| | | searchData['orderByField'] = obj.field; |
| | | searchData['orderByType'] = obj.type; |
| | | tableIns.reload({ |
| | | where: searchData, |
| | | page: { |
| | | curr: 1 |
| | | }, |
| | | done: function (res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCurr=curr; |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | } |
| | | }); |
| | | }); |
| | | } |
| | | |
| | | if (typeof I18n !== 'undefined' && I18n.isReady()) { |
| | | initTable(); |
| | | } else { |
| | | $(document).on('i18n:ready', function() { |
| | | initTable(); |
| | | }); |
| | | } |
| | | }); |
| | | |
| | | |
| | |
| | | if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length === 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length))); |
| | | return fmt; |
| | | } |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </html> |
| | |
| | | <html lang="en"> |
| | | <head> |
| | | <meta charset="utf-8"> |
| | | <title>仓储管理系统</title> |
| | | <title data-i18n="仓储管理系统">仓储管理系统</title> |
| | | <meta name="renderer" content="webkit"> |
| | | <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> |
| | | <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> |
| | |
| | | <body> |
| | | |
| | | <div class="header"> |
| | | <p style="margin-left:20px">请选择您要使用的模块</p> |
| | | <p style="margin-left:20px" data-i18n="请选择您要使用的模块">请选择您要使用的模块</p> |
| | | </div> |
| | | |
| | | <div class="center"> |
| | | <a class="list fn_1 moveUpDownFla1" ew-href="order/order.html?resourceId=40517"> |
| | | <p>单据管理</p> |
| | | <p data-i18n="单据管理">单据管理</p> |
| | | </a> |
| | | <a class="list fn_2 moveUpDownFla2" ew-href="wrkMast/wrkMast.html?resourceId=214"> |
| | | <p>运行任务</p> |
| | | <p data-i18n="运行任务">运行任务</p> |
| | | </a> |
| | | <a class="list fn_3 moveUpDownFla1" ew-href="stoMan/stoQue.html?resourceId=10276"> |
| | | <p>库存明细</p> |
| | | <p data-i18n="库存明细">库存明细</p> |
| | | </a> |
| | | </div> |
| | | |
| | | </body> |
| | | <script type="text/javascript" src="../../static/js/common.js"></script> |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js"></script> |
| | | <script> |
| | | layui.config({ |
| | |
| | | var admin = layui.admin; |
| | | }) |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.execute(); |
| | | </script> |
| | | </html> |
| | | </html> |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/host/host.js" charset="utf-8"></script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <link rel="stylesheet" href="../static/layui/css/layui.css" media="all"> |
| | | <link rel="stylesheet" href="../static/css/admin.css?v=318" media="all"> |
| | | <link rel="stylesheet" href="../static/css/loader.css" media="all"> |
| | | <!-- 引入 AutoTranslate 模块 --> |
| | | <script src="https://cdn.jsdelivr.net/gh/Mr-vero/AutoTranslate@v.1.0.1/dist/autoTranslate.js"></script> |
| | | |
| | | |
| | | <style> |
| | | .layui-logo img { |
| | | width: 25px; |
| | |
| | | </ul> |
| | | <ul class="layui-nav layui-layout-right"> |
| | | <li class="layui-nav-item" lay-unselect> |
| | | <a><i class="layui-icon layui-icon-website"></i> <span id="currentLang">语言</span></a> |
| | | <a><i class="layui-icon layui-icon-website"></i> <span id="currentLang" data-i18n="language">语言</span></a> |
| | | <dl class="layui-nav-child"> |
| | | <dd><a href="javascript:;" class="notranslate" onclick="changeLanguage('chinese_simplified', '简体中文')">简体中文</a></dd> |
| | | <dd><a href="javascript:;" class="notranslate" onclick="changeLanguage('zh-cn')">简体中文</a></dd> |
| | | <!-- <dd><a href="javascript:;" class="notranslate" onclick="changeLanguage('chinese_traditional', '繁體中文')">繁體中文</a></dd>--> |
| | | <dd><a href="javascript:;" class="notranslate" onclick="changeLanguage('english', 'English')">English</a></dd> |
| | | <dd><a href="javascript:;" class="notranslate" onclick="changeLanguage('en')">English</a></dd> |
| | | <!-- <dd><a href="javascript:;" class="notranslate" onclick="changeLanguage('japanese', '日本語')">日本語</a></dd>--> |
| | | <!-- <dd><a href="javascript:;" class="notranslate" onclick="changeLanguage('korean', '한국어')">한국어</a></dd>--> |
| | | </dl> |
| | | </li> |
| | | <li class="layui-nav-item" lay-unselect id="licenseShow" style="display: none;user-select: none;"> |
| | | <div style="color: red;">临时许可证有效期:<span id="licenseDays">29</span>天</div> |
| | | <div style="color: red;"><span data-i18n="license_validity_prefix">临时许可证有效期:</span><span id="licenseDays">29</span><span data-i18n="license_validity_suffix">天</span></div> |
| | | </li> |
| | | <li class="layui-nav-item layui-hide-xs" lay-unselect> |
| | | <a ew-event="fullScreen" title="全屏"><i class="layui-icon layui-icon-screen-full"></i></a> |
| | |
| | | <cite id="username" style="margin-right: 5px">管理员</cite> |
| | | </a> |
| | | <dl class="layui-nav-child"> |
| | | <dd lay-unselect><a ew-href="detail.html?resourceId=8">基本资料</a></dd> |
| | | <dd lay-unselect><a ew-href="detail.html?resourceId=8" data-i18n="basic_info">基本资料</a></dd> |
| | | <hr> |
| | | <dd lay-unselect><a id="logout">退出</a></dd> |
| | | <dd lay-unselect><a id="logout" data-i18n="logout">退出</a></dd> |
| | | </dl> |
| | | </li> |
| | | <li class="layui-nav-item" lay-unselect> |
| | | <a ew-event="theme" title="主题"><i class="layui-icon layui-icon-more-vertical"></i></a> |
| | | <a ew-event="theme" title="主题" data-i18n="主题" data-i18n-attr="title"><i class="layui-icon layui-icon-more-vertical"></i></a> |
| | | </li> |
| | | </ul> |
| | | </div> |
| | |
| | | <script type="text/javascript" src="../static/layui/layui.js"></script> |
| | | <script type="text/javascript" src="../static/js/handlebars/handlebars-v4.5.3.js"></script> |
| | | <script type="text/javascript" src="../static/js/common.js"></script> |
| | | <script type="text/javascript" src="../static/js/i18n/i18n-helper.js"></script> |
| | | <script> |
| | | console.log('%c 中扬立库平台 %c 1.0.0','background-color:rgb(53,73,94);color: #fff;border-radius:2px 0 0 2px;padding:2px 4px;','background-color:rgb(25,190,107);color: #fff;border-radius:0 2px 2px 0;padding:2px 4px;font: 9pt "Apercu Regular", Georgia, "Times New Roman", Times, serif;'); |
| | | $(function () { |
| | |
| | | var admin = layui.admin; |
| | | var notice = layui.notice; |
| | | |
| | | // Register Handlebars helper for i18n |
| | | if (typeof Handlebars !== 'undefined' && typeof I18n !== 'undefined') { |
| | | Handlebars.registerHelper('t', function(key) { |
| | | return I18n.t(key); |
| | | }); |
| | | } |
| | | |
| | | var easywebIframeMsg = localStorage.getItem("easyweb-iframe"); |
| | | if (!isEmpty(easywebIframeMsg)) { |
| | | var easywebIframeObj = JSON.parse(easywebIframeMsg); |
| | |
| | | // 关闭加载动画 |
| | | $('.layuimini-loader').fadeOut(); |
| | | if (res.code === 200) { |
| | | // Register Handlebars helper for i18n |
| | | Handlebars.registerHelper('t', function(key) { |
| | | return I18n.t(key); |
| | | }); |
| | | var tpl = $('#menuTpl').html(); |
| | | var template = Handlebars.compile(tpl); |
| | | var html = template(res); |
| | | $("#menu-main").html(html); |
| | | element.init(); |
| | | |
| | | // 默认加载主页 (Move here to ensure menu is loaded for tab title translation) |
| | | index.loadHome({ |
| | | menuPath: baseUrl+'/views/home/navigation.html', |
| | | menuName: '<i class="layui-icon layui-icon-home"></i>' |
| | | }); |
| | | } else if (res.code === 403) { |
| | | top.location.href = baseUrl + "/login"; |
| | | } else { |
| | |
| | | if (days <= 30) { |
| | | $("#licenseShow").show() |
| | | $("#licenseDays").html(days) |
| | | alert("临时许可有效期:" + days + "天") |
| | | alert(I18n.t('license_validity_prefix') + days + I18n.t('license_validity_suffix')) |
| | | } |
| | | }else { |
| | | top.location.href = baseUrl + "/login"; |
| | |
| | | } |
| | | }); |
| | | |
| | | // 默认加载主页 |
| | | index.loadHome({ |
| | | menuPath: baseUrl+'/views/home/navigation.html', |
| | | menuName: '<i class="layui-icon layui-icon-home"></i>' |
| | | }); |
| | | // 默认加载主页 (Moved to menu auth success callback) |
| | | // index.loadHome({ |
| | | // menuPath: baseUrl+'/views/home/navigation.html', |
| | | // menuName: '<i class="layui-icon layui-icon-home"></i>' |
| | | // }); |
| | | |
| | | $('#username').text(localStorage.getItem('username')); |
| | | |
| | |
| | | <script type="text/html" id="menuTpl"> |
| | | {{#each data}} |
| | | <li class="layui-nav-item"> |
| | | <a><i class="layui-icon {{this.menuIcon}}"></i> <cite>{{this.menu}}</cite></a> |
| | | <a><i class="layui-icon {{this.menuIcon}}"></i> <cite data-i18n="{{this.menu}}">{{t this.menu}}</cite></a> |
| | | <dl class="layui-nav-child"> |
| | | {{#each this.subMenu}} |
| | | <dd><a lay-href="{{this.code}}?resourceId={{this.id}}">{{this.name}}</a></dd> |
| | | <dd><a lay-href="{{this.code}}?resourceId={{this.id}}" data-i18n-key="{{this.name}}"><span data-i18n="{{this.name}}">{{t this.name}}</span></a></dd> |
| | | {{/each}} |
| | | </dl> |
| | | </li> |
| | | {{/each}} |
| | | </script> |
| | | <script src="../static/js/translate.js"></script> |
| | | <!--chinese_simplified--> |
| | | <!-- 引入 layui 的 translate.js AI翻译模块,自行下载这个js放到你自己项目里。 js下载地址: https://raw.githubusercontent.com/xnx3/translate/refs/heads/master/extend/layui/layui_exts/translate/translate.js --> |
| | | <script> |
| | | translate.language.setLocal('chinese_simplified'); //设置本地语种,如果不设置会自动识别 http://translate.zvo.cn/4066.html |
| | | translate.service.use('client.edge'); //设置翻译通道 http://translate.zvo.cn/4081.html |
| | | translate.visual.webPageLoadTranslateBeforeHiddenText(); //网页打开时自动隐藏文字,翻译完成后显示译文。 参考文档 http://translate.zvo.cn/549731.html |
| | | translate.progress.api.startUITip(); //启用翻译中的遮罩层 参考文档 http://translate.zvo.cn/407105.html |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.ignore.class.push('notranslate'); //添加 notranslate 类到忽略列表,使语言下拉框不参与翻译 |
| | | window.onload = function () { //当页面DOM加载完后执行翻译操作 |
| | | translate.execute(); //进行翻译的执行 |
| | | }; |
| | | // Initialize language display |
| | | var currentLang = I18n.getLanguage(); |
| | | if (currentLang === 'en') { |
| | | $('#currentLang').text('English'); |
| | | } else { |
| | | $('#currentLang').text('简体中文'); |
| | | } |
| | | |
| | | // 切换语言函数 |
| | | function changeLanguage(lang, displayName) { |
| | | translate.changeLanguage(lang); |
| | | // Language switching function |
| | | function changeLanguage(lang) { |
| | | if (lang === I18n.getLanguage()) return; |
| | | |
| | | // Update parent page |
| | | I18n.setLanguage(lang); |
| | | |
| | | // Update display text |
| | | if (lang === 'en') { |
| | | $('#currentLang').text('English'); |
| | | } else { |
| | | $('#currentLang').text('简体中文'); |
| | | } |
| | | |
| | | // Notify all iframes |
| | | $('iframe').each(function() { |
| | | try { |
| | | if (this.contentWindow && this.contentWindow.I18n) { |
| | | this.contentWindow.I18n.setLanguage(lang); |
| | | } |
| | | } catch (e) { |
| | | console.error('Cannot access iframe:', e); |
| | | } |
| | | }); |
| | | } |
| | | </script> |
| | | </body> |
| | |
| | | .removeAttr('selected'); |
| | | } |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | .removeAttr('selected'); |
| | | } |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </script> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | {{/each}} |
| | | </script> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </div> |
| | | </form> |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <div id="search-box" class="layui-form layui-card-header"> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="loc_no" placeholder="库位号" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="loc_no" placeholder="库位号" data-i18n-placeholder="location_no" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="zpallet" placeholder="托盘码" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="zpallet" placeholder="托盘码" data-i18n-placeholder="pallet_barcode" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="matnr" placeholder="商品编号" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="matnr" placeholder="商品编号" data-i18n-placeholder="product_code" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="specs" placeholder="规格" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="specs" placeholder="规格" data-i18n-placeholder="spec" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <!-- <div class="layui-inline">--> |
| | |
| | | <!-- </div>--> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="condition" placeholder="请输入" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="condition" placeholder="请输入" data-i18n-placeholder="input_placeholder" autocomplete="off"> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | <!-- 待添加 --> |
| | | <div id="data-search-btn" class="layui-btn-container layui-form-item" style="display: inline-block"> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">重置</button> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search" data-i18n="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset" data-i18n="reset">重置</button> |
| | | <!-- <button id="unreason" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="unreason">查看异常数据</button>--> |
| | | </div> |
| | | |
| | |
| | | </div> |
| | | <script type="text/html" id="toolbar"> |
| | | <div class="layui-btn-container"> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="margin-top: 10px">导出</button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="margin-top: 10px" data-i18n="export">导出</button> |
| | | </div> |
| | | </script> |
| | | |
| | | <script type="text/html" id="operate"> |
| | | <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">详情</a> |
| | | <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail" data-i18n="detail">详情</a> |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/locDetl/locDetl.js" charset="utf-8"></script> |
| | | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </html> |
| | | |
| | |
| | | <!-- 树工具栏 --> |
| | | <div class="layui-form toolbar" id="organizationTreeBar"> |
| | | <div class="layui-inline" style="max-width: 200px;"> |
| | | <input id="condition" onkeyup="findData(this)" type="text" class="layui-input" placeholder="请输入关键字" autocomplete="off"> |
| | | <input id="condition" onkeyup="findData(this)" type="text" class="layui-input" placeholder="请输入关键字" data-i18n-placeholder="input_placeholder" autocomplete="off"> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <button class="layui-btn icon-btn layui-btn-sm" id="treeReset" style="padding: 0 10px;"> |
| | |
| | | <!-- 表格工具栏2 --> |
| | | <div id="search-box" class="layui-form toolbar" style="padding-top: 5px"> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" style="padding: 8px 15px 8px 15px">货位:</label> |
| | | <label class="layui-form-label" style="padding: 8px 15px 8px 15px" data-i18n="location_no">货位:</label> |
| | | <div class="layui-input-inline"> |
| | | <input name="loc_no" class="layui-input" placeholder="输入货位"/> |
| | | <input name="loc_no" class="layui-input" placeholder="输入货位" data-i18n-placeholder="input_placeholder"/> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" style="padding: 8px 15px 8px 15px">商品编号:</label> |
| | | <label class="layui-form-label" style="padding: 8px 15px 8px 15px" data-i18n="product_code">商品编号:</label> |
| | | <div class="layui-input-inline"> |
| | | <input name="matnr" class="layui-input" placeholder="输入商品编号"/> |
| | | <input name="matnr" class="layui-input" placeholder="输入商品编号" data-i18n-placeholder="input_placeholder"/> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" style="padding: 8px 15px 8px 15px">商品名称:</label> |
| | | <label class="layui-form-label" style="padding: 8px 15px 8px 15px" data-i18n="product_name">商品名称:</label> |
| | | <div class="layui-input-inline"> |
| | | <input name="maktx" class="layui-input" placeholder="输入商品名称"/> |
| | | <input name="maktx" class="layui-input" placeholder="输入商品名称" data-i18n-placeholder="input_placeholder"/> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline">  |
| | | <button class="layui-btn icon-btn" lay-filter="search" lay-submit> |
| | | <i class="layui-icon"></i>搜索 |
| | | <i class="layui-icon"></i><span data-i18n="search">搜索</span> |
| | | </button> |
| | | <button class="layui-btn icon-btn" lay-filter="reset" lay-submit> |
| | | <i class="layui-icon"></i>重置 |
| | | <i class="layui-icon"></i><span data-i18n="reset">重置</span> |
| | | </button> |
| | | </div> |
| | | </div> |
| | |
| | | <script type="text/html" id="toolbar"> |
| | | <div class="layui-btn-container"> |
| | | <!-- <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">新增</button>--> |
| | | <button class="layui-btn layui-btn-sm layui-btn-danger" id="btn-delete" lay-event="deleteData">删除</button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="float: right;margin-right: -10px">导出</button> |
| | | <button class="layui-btn layui-btn-sm layui-btn-danger" id="btn-delete" lay-event="deleteData" data-i18n="delete">删除</button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="float: right;margin-right: -10px" data-i18n="export">导出</button> |
| | | </div> |
| | | </script> |
| | | <script type="text/html" id="locNoTpl"> |
| | | <span name="locNo" class="layui-badge layui-badge-gray">{{d.locNo}}</span> |
| | | </script> |
| | | <script type="text/html" id="operate"> |
| | | <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">详情</a> |
| | | <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail" data-i18n="detail">详情</a> |
| | | <!-- <a class="layui-btn layui-btn-xs btn-edit" lay-event="edit">编辑</a>--> |
| | | </script> |
| | | |
| | |
| | | <script type="text/javascript" src="../../static/js/nodeTree.js" charset="utf-8"></script> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | <script src="../../static/js/i18n/i18n-helper.js"></script> |
| | | </html> |
| | | |
| | |
| | | <label class="layui-form-label"><span class="not-null">*</span>库 位 号:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="locNo" class="layui-input" type="text" onkeyup="check(this.id, 'locDetl')" lay-verify="required" style="display: none"> |
| | | <input id="locNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | | <input id="locNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." data-i18n-placeholder="input_placeholder" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="locMastQueryBylocNo" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="locMastQueryBylocNoSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>物 料:</label> |
| | | <label class="layui-form-label"><span class="not-null">*</span><span data-i18n="product_code">物 料</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="matnr" class="layui-input" type="text" onkeyup="check(this.id, 'locDetl')" lay-verify="required" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">仓 库 号:</label> |
| | | <label class="layui-form-label"><span data-i18n="warehouse_no">仓 库 号</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="lgnum" class="layui-input" type="text" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label" style="font-size: x-small">转储请求编号:</label> |
| | | <label class="layui-form-label" style="font-size: x-small"><span data-i18n="transfer_req_no">转储请求编号</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="tbnum" class="layui-input" type="text" lay-verify="number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">行 项 目:</label> |
| | | <label class="layui-form-label"><span data-i18n="item_no">行 项 目</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="tbpos" class="layui-input" type="text" lay-verify="number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label" style="font-size: x-small">物料标签ID:</label> |
| | | <label class="layui-form-label" style="font-size: x-small"><span data-i18n="material_label_id">物料标签ID</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="zmatid" class="layui-input" type="text" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">物料描述:</label> |
| | | <label class="layui-form-label"><span data-i18n="material_desc">物料描述</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="maktx" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">工 厂:</label> |
| | | <label class="layui-form-label"><span data-i18n="factory"></span>工 厂</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="werks" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">数 量:</label> |
| | | <label class="layui-form-label"><span data-i18n="quantity">数 量</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="anfme" class="layui-input" type="text" lay-verify="number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">单 位:</label> |
| | | <label class="layui-form-label"><span data-i18n="unit">单 位</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="altme" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">托盘条码:</label> |
| | | <label class="layui-form-label"><span data-i18n="pallet_barcode">托盘条码</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="zpallet" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">用户ID:</label> |
| | | <label class="layui-form-label"><span data-i18n="user_id">用户ID</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="bname" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">备 注:</label> |
| | | <label class="layui-form-label"><span data-i18n="remark">备 注</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="memo" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">修改人员:</label> |
| | | <label class="layui-form-label"><span data-i18n="modifier">修改人员</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="modiUser" class="layui-input" type="text" lay-verify="number" style="display: none"> |
| | | <input id="modiUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | | <input id="modiUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." data-i18n-placeholder="input_placeholder" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="userQueryBymodiUser" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="userQueryBymodiUserSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">修改时间:</label> |
| | | <label class="layui-form-label"><span data-i18n="modify_time">修改时间</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="modiTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">创 建 者:</label> |
| | | <label class="layui-form-label"><span data-i18n="creator">创 建 者</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="appeUser" class="layui-input" type="text" lay-verify="number" style="display: none"> |
| | | <input id="appeUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | | <input id="appeUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." data-i18n-placeholder="input_placeholder" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="userQueryByappeUser" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="userQueryByappeUserSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">添加时间:</label> |
| | | <label class="layui-form-label"><span data-i18n="add_time">添加时间</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="appeTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | |
| | | <hr class="layui-bg-gray"> |
| | | |
| | | <div id="data-detail-btn" class="layui-btn-container layui-form-item"> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close">关闭</div> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save" data-i18n="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit" data-i18n="modify">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close" data-i18n="close">关闭</div> |
| | | </div> |
| | | |
| | | <div id="prompt"> |
| | | 温馨提示:请仔细填写相关信息,<span class="extrude"><span class="not-null">*</span> 为必填选项。</span> |
| | | <span data-i18n="warm_prompt_prefix">温馨提示:请仔细填写相关信息,</span><span class="extrude"><span class="not-null">*</span> <span data-i18n="warm_prompt_suffix">为必填选项。</span></span> |
| | | </div> |
| | | </form> |
| | | </div> |
| | |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/locDetl/locDetl.js" charset="utf-8"></script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | <script type="text/javascript" src="../../static/js/i18n-helper.js"></script> |
| | | </html> |
| | | |
| | |
| | | <script type="text/javascript" src="../../static/js/locDetlStatis/locDetlStatis.js" charset="utf-8"></script> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <div id="search-box" class="layui-form layui-card-header"> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="loc_no" placeholder="库位号" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="loc_no" data-i18n-placeholder="location_no" placeholder="库位号" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="locSts" name="loc_sts" class="layui-input" type="text" style="display: none"> |
| | | <input id="locSts$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="库位状态" onfocus=this.blur()> |
| | | <input id="locSts$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" data-i18n-placeholder="location_status" placeholder="库位状态" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="basLocStsQueryBylocSts" onkeyup="autoLoad2(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="basLocStsQueryBylocStsSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="whsType" name="whs_type" class="layui-input" type="text" style="display: none"> |
| | | <input id="whsType$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="库位类型" onfocus=this.blur()> |
| | | <input id="whsType$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" data-i18n-placeholder="location_type" placeholder="库位类型" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="basWhsQueryBywhsType" onkeyup="autoLoad2(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="basWhsQueryBywhsTypeSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <select name="loc_type1" id="loc_type1" class="layui-input" type="text" placeholder="库位类型" autocomplete="off"> |
| | | <select name="loc_type1" id="loc_type1" class="layui-input" type="text" data-i18n-placeholder="location_type" placeholder="库位类型" autocomplete="off"> |
| | | <!-- <option style="display: none"></option>--> |
| | | <option value=""></option> |
| | | <option value="1">低库位</option> |
| | | <option value="2">高库位</option> |
| | | <option value="1" data-i18n="low_location">低库位</option> |
| | | <option value="2" data-i18n="high_location">高库位</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="crn_no" placeholder="堆垛机号" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="crn_no" data-i18n-placeholder="crane_no" placeholder="堆垛机号" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="row1" placeholder="排" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="row1" data-i18n="[placeholder]row" placeholder="排" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="bay1" placeholder="列" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="bay1" data-i18n="[placeholder]bay" placeholder="列" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="lev1" placeholder="层" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="lev1" data-i18n-placeholder="level" placeholder="层" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <!-- 待添加 --> |
| | | <div id="data-search-btn" class="layui-btn-container layui-form-item" style="display: inline-block"> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">重置</button> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search" data-i18n="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset" data-i18n="reset">重置</button> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | </div> |
| | | <script type="text/html" id="toolbar"> |
| | | <div class="layui-btn-container"> |
| | | <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">新增</button> |
| | | <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData">删除</button> |
| | | <button class="layui-btn layui-btn-primary" id="btn-init" lay-event="init">初始化</button> |
| | | <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData" data-i18n="add">新增</button> |
| | | <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData" data-i18n="delete">删除</button> |
| | | <button class="layui-btn layui-btn-primary" id="btn-init" lay-event="init" data-i18n="init">初始化</button> |
| | | <!-- <button class="layui-btn layui-btn-sm" id="btn-convertSize" lay-event="convertSize">大小库位转换</button>--> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData">导出</button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" data-i18n="export">导出</button> |
| | | </div> |
| | | </script> |
| | | |
| | | <script type="text/html" id="operate"> |
| | | <!-- <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">详情</a>--> |
| | | <a class="layui-btn layui-btn-xs btn-edit" lay-event="edit">编辑</a> |
| | | <a class="layui-btn layui-btn-xs btn-edit" lay-event="edit" data-i18n="edit">编辑</a> |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/locMast/locMast.js" charset="utf-8"></script> |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | |
| | | <div class="layui-form layui-form-pane"> |
| | | <div class="layui-form-item"> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">删除库位</label> |
| | | <label class="layui-form-label" data-i18n="delete_location">删除库位</label> |
| | | <div class="layui-input-inline" style="width: 100px;"> |
| | | <input type="checkbox" name="enable" lay-skin="switch" value="1" lay-text="删除|保留"> |
| | | <input type="checkbox" name="enable" lay-skin="switch" value="1" data-i18n="[lay-text]delete_keep" lay-text="删除|保留"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | */ |
| | | --> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">库位类型:</label> |
| | | <label class="layui-form-label" data-i18n="location_type">库位类型:</label> |
| | | <div class="layui-input-inline"> |
| | | <select name="identifying"> |
| | | <!-- <option style="display: none"></option>--> |
| | | <!-- <option value="0">未知</option>--> |
| | | <option value="1" style="display: none">标准堆垛机库</option> |
| | | <option value="2">平库</option> |
| | | <option value="3">穿梭板</option> |
| | | <option value="4">四向车</option> |
| | | <option value="5">AGV</option> |
| | | <option value="1" style="display: none" data-i18n="standard_crane_whs">标准堆垛机库</option> |
| | | <option value="2" data-i18n="flat_whs">平库</option> |
| | | <option value="3" data-i18n="shuttle_board">穿梭板</option> |
| | | <option value="4" data-i18n="four_way_vehicle">四向车</option> |
| | | <option value="5" data-i18n="agv">AGV</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <!-- 排 --> |
| | | <div class="layui-form-item"> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">起止排</label> |
| | | <label class="layui-form-label" data-i18n="start_end_row">起止排</label> |
| | | <div class="layui-input-inline" style="width: 100px;"> |
| | | <input type="text" name="startRow" autocomplete="off" class="layui-input" lay-verify="required|number"> |
| | | </div> |
| | |
| | | <!-- 列 --> |
| | | <div class="layui-form-item"> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">起止列</label> |
| | | <label class="layui-form-label" data-i18n="start_end_bay">起止列</label> |
| | | <div class="layui-input-inline" style="width: 100px;"> |
| | | <input type="text" name="startBay" autocomplete="off" class="layui-input" lay-verify="required|number"> |
| | | </div> |
| | |
| | | <!-- 层 --> |
| | | <div class="layui-form-item"> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">起止层</label> |
| | | <label class="layui-form-label" data-i18n="start_end_level">起止层</label> |
| | | <div class="layui-input-inline" style="width: 100px;"> |
| | | <input type="text" name="startLev" autocomplete="off" class="layui-input" lay-verify="required|number"> |
| | | </div> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">堆垛机数量</label> |
| | | <label class="layui-form-label" data-i18n="crane_amount">堆垛机数量</label> |
| | | <div class="layui-input-inline"> |
| | | <input type="text" name="crnAmount" lay-verify="required|number" autocomplete="off" class="layui-input"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-form-item"> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">起始堆垛机</label> |
| | | <label class="layui-form-label" data-i18n="start_crane">起始堆垛机</label> |
| | | <div class="layui-input-inline" > |
| | | <input type="text" name="staCrn" autocomplete="off" class="layui-input" lay-verify="number"> |
| | | </div> |
| | |
| | | </div> |
| | | <!-- 库位类型 --> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">高低类型</label> |
| | | <label class="layui-form-label" data-i18n="high_low_type">高低类型</label> |
| | | <div class="layui-input-inline"> |
| | | <select name="locType1"> |
| | | <option style="display: none"></option> |
| | | <option value="0">未知</option> |
| | | <option value="1">低库位</option> |
| | | <option value="2">高库位</option> |
| | | <option value="3">中库位</option> |
| | | <option value="0" data-i18n="unknown">未知</option> |
| | | <option value="1" data-i18n="low_location">低库位</option> |
| | | <option value="2" data-i18n="high_location">高库位</option> |
| | | <option value="3" data-i18n="middle_location">中库位</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">宽窄类型</label> |
| | | <label class="layui-form-label" data-i18n="width_type">宽窄类型</label> |
| | | <div class="layui-input-inline"> |
| | | <select name="locType2"> |
| | | <option style="display: none"></option> |
| | | <option value="0">未知</option> |
| | | <option value="1">窄库位</option> |
| | | <option value="2">宽库位</option> |
| | | <option value="0" data-i18n="unknown">未知</option> |
| | | <option value="1" data-i18n="narrow_location">窄库位</option> |
| | | <option value="2" data-i18n="wide_location">宽库位</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">轻重类型</label> |
| | | <label class="layui-form-label" data-i18n="weight_type">轻重类型</label> |
| | | <div class="layui-input-inline"> |
| | | <select name="locType3"> |
| | | <option style="display: none"></option> |
| | | <option value="0">未知</option> |
| | | <option value="1">轻库位</option> |
| | | <option value="2">重库位</option> |
| | | <option value="0" data-i18n="unknown">未知</option> |
| | | <option value="1" data-i18n="light_location">轻库位</option> |
| | | <option value="2" data-i18n="heavy_location">重库位</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | |
| | | <!-- </div>--> |
| | | <!-- 按钮 --> |
| | | <div style="text-align: center; margin-top: 20px"> |
| | | <button class="layui-btn layui-btn-radius layui-btn-normal" id="initDo" lay-submit lay-filter="initDo">确定</button> |
| | | <button class="layui-btn layui-btn-radius layui-btn-normal" id="initDo" lay-submit lay-filter="initDo" data-i18n="confirm">确定</button> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </html> |
| | | |
| | | </html> |
| | |
| | | <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all"> |
| | | <link rel="stylesheet" href="../../static/css/cool.css" media="all"> |
| | | <link rel="stylesheet" href="../../static/css/common.css" media="all"> |
| | | <style> |
| | | .layui-form-label { |
| | | width: 10px !important; |
| | | margin-right: 10px !important; |
| | | |
| | | } |
| | | .layui-input-inline { |
| | | width: 170px !important; |
| | | margin-left: 120px !important; |
| | | } |
| | | </style> |
| | | </head> |
| | | <body> |
| | | |
| | |
| | | </div> |
| | | --> |
| | | <div class="layui-inline" style="width:80%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>库 位 号:</label> |
| | | <label class="layui-form-label"><span class="not-null">*</span><span data-i18n="location_no">库 位 号</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="locNo" class="layui-input" type="text" onkeyup="check(this.id, 'locMast')"> |
| | | </div> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:80%"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>库位类型:</label> |
| | | <label class="layui-form-label"><span class="not-null">*</span><span data-i18n="location_type">库位类型</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="whsType" class="layui-input" type="text" style="display: none"> |
| | | <input id="whsType$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" onfocus=this.blur() disabled="disabled"> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:80%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>库位状态:</label> |
| | | <label class="layui-form-label"><span class="not-null">*</span><span data-i18n="location_status">库位状态</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="locSts" class="layui-input" type="text" style="display: none"> |
| | | <input id="locSts$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" onfocus=this.blur()> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:80%;"> |
| | | <label class="layui-form-label">堆垛机号:</label> |
| | | <label class="layui-form-label"><span data-i18n="crane_no">堆垛机号</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="crnNo" class="layui-input" type="text" autocomplete="off" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:80%;"> |
| | | <label class="layui-form-label">排:</label> |
| | | <label class="layui-form-label"><span data-i18n="row">排</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="row1" class="layui-input" type="text" autocomplete="off" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:80%;"> |
| | | <label class="layui-form-label">列:</label> |
| | | <label class="layui-form-label"><span data-i18n="bay">列</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="bay1" class="layui-input" type="text" autocomplete="off" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:80%;"> |
| | | <label class="layui-form-label">层:</label> |
| | | <label class="layui-form-label"><span data-i18n="level">层</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="lev1" class="layui-input" type="text" autocomplete="off" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:80%;"> |
| | | <label class="layui-form-label">组:</label> |
| | | <label class="layui-form-label"><span data-i18n="group">组</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="gro1" class="layui-input" type="text" autocomplete="off" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:80%;display: none"> |
| | | <label class="layui-form-label">满 板:</label> |
| | | <label class="layui-form-label"><span data-i18n="full_pallet">满 板</span>:</label> |
| | | <div class="layui-input-inline" style="text-align: left"> |
| | | <input id="fullPlt" class="layui-input" type="checkBox" lay-skin="primary" lay-filter='detailCheckbox'> |
| | | </div> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">修改人员:</label> |
| | | <label class="layui-form-label"><span data-i18n="modifier">修改人员</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="modiUser" class="layui-input" type="text" style="display: none"> |
| | | <input id="modiUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">修改时间:</label> |
| | | <label class="layui-form-label"><span data-i18n="modify_time">修改时间</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="modiTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">创 建 者:</label> |
| | | <label class="layui-form-label"><span data-i18n="creator">创 建 者</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="appeUser" class="layui-input" type="text" style="display: none"> |
| | | <input id="appeUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label">添加时间:</label> |
| | | <label class="layui-form-label"><span data-i18n="add_time">添加时间</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="appeTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | |
| | | |
| | | |
| | | <div id="data-detail-btn" class="layui-btn-container layui-form-item"> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close">关闭</div> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save" data-i18n="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit" data-i18n="modify">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close" data-i18n="close">关闭</div> |
| | | </div> |
| | | |
| | | <div id="prompt" style="text-indent: 30px;"> |
| | | <span class="not-null">温馨提示:修改为空库位时会清除库存明细</span> |
| | | <span class="not-null" data-i18n="warm_prompt_clear_inventory">温馨提示:修改为空库位时会清除库存明细</span> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script> |
| | | // 定义枚举翻译映射,供 cool.js 使用 |
| | | window.i18nEnumMap = { |
| | | 'basWhsQueryBywhsType': { |
| | | '1': 'standard_crane_whs', |
| | | '2': 'flat_whs', |
| | | '3': 'shuttle_board', |
| | | '4': 'four_way_vehicle', |
| | | '5': 'agv' |
| | | }, |
| | | 'basLocStsQueryBylocSts': function(id) { |
| | | return 'loc_status_' + id; |
| | | } |
| | | }; |
| | | </script> |
| | | <script type="text/javascript" src="../../static/js/locMast/locMast.js" charset="utf-8"></script> |
| | | </html> |
| | | |
| | | </html> |
| | |
| | | <script type="text/javascript" src="../../static/js/nodeTree.js" charset="utf-8"></script> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <!-- 树工具栏 --> |
| | | <div class="layui-form toolbar" id="organizationTreeBar"> |
| | | <div class="layui-inline" style="max-width: 200px;"> |
| | | <input id="condition" onkeyup="findData(this)" type="text" class="layui-input" placeholder="请输入关键字" autocomplete="off"> |
| | | <input id="condition" onkeyup="findData(this)" type="text" class="layui-input" placeholder="请输入关键字" data-i18n="input_placeholder" autocomplete="off"> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <button class="layui-btn icon-btn layui-btn-sm" id="treeReset" style="padding: 0 10px"> |
| | |
| | | <!-- 表格工具栏2 --> |
| | | <div id="search-box" class="layui-form toolbar" style="padding-top: 5px"> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" style="padding: 8px 15px 8px 15px">商品编号:</label> |
| | | <label class="layui-form-label" style="padding: 8px 15px 8px 15px" data-i18n="item_no">商品编号:</label> |
| | | <div class="layui-input-inline"> |
| | | <input name="matnr" class="layui-input" placeholder="输入商品编号"/> |
| | | <input name="matnr" class="layui-input" placeholder="输入商品编号" data-i18n="please_input_item_no"/> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" style="padding: 8px 15px 8px 15px">商品名称:</label> |
| | | <label class="layui-form-label" style="padding: 8px 15px 8px 15px" data-i18n="item_name">商品名称:</label> |
| | | <div class="layui-input-inline"> |
| | | <input name="maktx" class="layui-input" placeholder="输入商品名称"/> |
| | | <input name="maktx" class="layui-input" placeholder="输入商品名称" data-i18n="please_input_item_name"/> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label" style="padding: 8px 15px 8px 15px">商品规格:</label> |
| | | <label class="layui-form-label" style="padding: 8px 15px 8px 15px" data-i18n="item_spec">商品规格:</label> |
| | | <div class="layui-input-inline"> |
| | | <input name="specs" class="layui-input" placeholder="输入商品规格"/> |
| | | <input name="specs" class="layui-input" placeholder="输入商品规格" data-i18n="please_input_item_spec"/> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline">  |
| | | <button class="layui-btn icon-btn" lay-filter="search" lay-submit> |
| | | <i class="layui-icon"></i>搜索 |
| | | <i class="layui-icon"></i><span data-i18n="search">搜索</span> |
| | | </button> |
| | | <button class="layui-btn icon-btn" lay-filter="reset" lay-submit> |
| | | <i class="layui-icon"></i>重置 |
| | | <i class="layui-icon"></i><span data-i18n="reset">重置</span> |
| | | </button> |
| | | </div> |
| | | </div> |
| | |
| | | |
| | | <script type="text/html" id="toolbar"> |
| | | <div class="layui-btn-container"> |
| | | <button class="layui-btn layui-btn-sm" id="btn-print-batch" lay-event="btnPrintBatch">批量打印</button> |
| | | <button class="layui-btn layui-btn-sm layui-btn-normal" id="btn-add" lay-event="addData">新增</button> |
| | | <button class="layui-btn layui-btn-sm layui-btn-danger" id="btn-delete" lay-event="deleteData">删除</button> |
| | | <button class="layui-btn layui-btn-sm" id="btn-print-batch" lay-event="btnPrintBatch" data-i18n="batch_print">批量打印</button> |
| | | <button class="layui-btn layui-btn-sm layui-btn-normal" id="btn-add" lay-event="addData" data-i18n="add">新增</button> |
| | | <button class="layui-btn layui-btn-sm layui-btn-danger" id="btn-delete" lay-event="deleteData" data-i18n="delete">删除</button> |
| | | <!-- 商品/物料 数据中心 --> |
| | | <div class="dropdown-menu" style="float: right"> |
| | | <button class="layui-btn layui-btn-primary layui-border-black icon-btn layui-btn-sm"> 数据同步 <i class="layui-icon layui-icon-drop"></i></button> |
| | | <button class="layui-btn layui-btn-primary layui-border-black icon-btn layui-btn-sm"> <span data-i18n="data_sync">数据同步</span> <i class="layui-icon layui-icon-drop"></i></button> |
| | | <ul class="dropdown-menu-nav dark"> |
| | | <div class="dropdown-anchor"></div> |
| | | <li class="title">1st menu</li> |
| | | <li><a onclick="excelMouldDownload()" style="font-size: 12px"><i class="layui-icon layui-icon-template-1"></i>模板下载</a></li> |
| | | <li><a onclick="importExcel()" style="font-size: 12px"><i class="layui-icon layui-icon-upload"></i>导入 Excel</a></li> |
| | | <li><a onclick="excelMouldDownload()" style="font-size: 12px"><i class="layui-icon layui-icon-template-1"></i><span data-i18n="template_download">模板下载</span></a></li> |
| | | <li><a onclick="importExcel()" style="font-size: 12px"><i class="layui-icon layui-icon-upload"></i><span data-i18n="import_excel">导入 Excel</span></a></li> |
| | | <li style="display: none"><input id="importExcel" type="file" onchange="upload(this)" ></li> |
| | | <hr> |
| | | <li class="title">2nd menu</li> |
| | | <li><a onclick="exportExcel()" style="font-size: 12px"><i class="layui-icon layui-icon-export"></i>导出 Excel</a></li> |
| | | <li><a onclick="exportExcel()" style="font-size: 12px"><i class="layui-icon layui-icon-export"></i><span data-i18n="export_excel">导出 Excel</span></a></li> |
| | | </ul> |
| | | </div> |
| | | <!-- <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="float: right;margin-right: -10px">导出</button>--> |
| | |
| | | </script> |
| | | |
| | | <script type="text/html" id="operate"> |
| | | <a class="layui-btn layui-btn-xs btn-edit layui-btn-primary" lay-event="edit">修改</a> |
| | | <button class="layui-btn layui-btn-xs btn-print" lay-event="btnPrint">打印</button> |
| | | <a class="layui-btn layui-btn-xs btn-edit layui-btn-primary" lay-event="edit" data-i18n="edit">修改</a> |
| | | <button class="layui-btn layui-btn-xs btn-print" lay-event="btnPrint" data-i18n="print">打印</button> |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/jquery/jQuery.print.js"></script> |
| | | <script type="text/javascript" src="../../static/js/handlebars/handlebars-v4.5.3.js"></script> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/mat/mat.js" charset="utf-8"></script> |
| | |
| | | <div class="layui-col-md6"> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">分类</label> |
| | | <label class="layui-form-label" data-i18n="category">分类</label> |
| | | <div class="layui-input-block"> |
| | | <div id="tagSel" class="ew-xmselect-tree"></div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label layui-form-required">商品名称</label> |
| | | <label class="layui-form-label layui-form-required" data-i18n="item_name">商品名称</label> |
| | | <div class="layui-input-block"> |
| | | <input name="maktx" placeholder="请输入商品名称" class="layui-input" lay-vertype="tips" lay-verify="required" required=""> |
| | | <input name="maktx" placeholder="请输入商品名称" class="layui-input" lay-vertype="tips" lay-verify="required" required="" data-i18n="[placeholder]please_input_item_name"> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | <!-- </div>--> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">单箱净重</label> |
| | | <label class="layui-form-label" data-i18n="net_weight_box">单箱净重</label> |
| | | <div class="layui-input-block"> |
| | | <input name="weight" placeholder="请输入单箱净重格" class="layui-input"> |
| | | <input name="weight" placeholder="请输入单箱净重" class="layui-input" data-i18n="[placeholder]please_input_net_weight_box"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">单箱毛重</label> |
| | | <label class="layui-form-label" data-i18n="gross_weight_box">单箱毛重</label> |
| | | <div class="layui-input-block"> |
| | | <input name="length" placeholder="请输入单箱毛重" class="layui-input"> |
| | | <input name="length" placeholder="请输入单箱毛重" class="layui-input" data-i18n="[placeholder]please_input_gross_weight_box"> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | |
| | | <div class="layui-col-md6"> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">区域</label> |
| | | <label class="layui-form-label" data-i18n="area">区域</label> |
| | | <div class="layui-input-block"> |
| | | <div id="areaSel" class="ew-xmselect-tree"></div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label layui-form-required">商品编号</label> |
| | | <label class="layui-form-label layui-form-required" data-i18n="item_no">商品编号</label> |
| | | <div class="layui-input-block"> |
| | | <input id="matnr" name="matnr" placeholder="请输入商品编号" class="layui-input" lay-vertype="tips" lay-verify="required" required=""> |
| | | <input id="matnr" name="matnr" placeholder="请输入商品编号" class="layui-input" lay-vertype="tips" lay-verify="required" required="" data-i18n="[placeholder]please_input_item_no"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">规格</label> |
| | | <label class="layui-form-label" data-i18n="spec">规格</label> |
| | | <div class="layui-input-block"> |
| | | <input name="specs" placeholder="请输入代码" class="layui-input"> |
| | | <input name="specs" placeholder="请输入代码" class="layui-input" data-i18n="[placeholder]please_input_code"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">备注</label> |
| | | <label class="layui-form-label" data-i18n="remark">备注</label> |
| | | <div class="layui-input-block"> |
| | | <input name="memo" placeholder="请输入备注" class="layui-input"> |
| | | <input name="memo" placeholder="请输入备注" class="layui-input" data-i18n="[placeholder]please_input_remark"> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | </div> |
| | | <hr class="layui-bg-gray"> |
| | | <div class="layui-form-item text-right"> |
| | | <button class="layui-btn" lay-filter="editSubmit" lay-submit="">保存</button> |
| | | <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">取消</button> |
| | | <button class="layui-btn" lay-filter="editSubmit" lay-submit="" data-i18n="save">保存</button> |
| | | <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog" data-i18n="cancel">取消</button> |
| | | </div> |
| | | </form> |
| | | </script> |
| | |
| | | <hr> |
| | | <!--单选框--> |
| | | <div class="layui-form-item" style="display: inline-block; margin-bottom: 10px"> |
| | | <input type="radio" name="selectTemplate" value="1" title="模板一" lay-filter="selectTemplateRadio" checked=""> |
| | | <input type="radio" name="selectTemplate" value="2" title="模板二" lay-filter="selectTemplateRadio"> |
| | | <input type="radio" name="selectTemplate" value="3" title="模板三" lay-filter="selectTemplateRadio"> |
| | | <input type="radio" name="selectTemplate" value="1" title="模板一" lay-filter="selectTemplateRadio" checked="" data-i18n="[title]template_1"> |
| | | <input type="radio" name="selectTemplate" value="2" title="模板二" lay-filter="selectTemplateRadio" data-i18n="[title]template_2"> |
| | | <input type="radio" name="selectTemplate" value="3" title="模板三" lay-filter="selectTemplateRadio" data-i18n="[title]template_3"> |
| | | </div> |
| | | <fieldset class="layui-elem-field site-demo-button" style="margin-top: 30px;text-align: left;"> |
| | | <legend>打印预览</legend> |
| | | <legend data-i18n="print_preview">打印预览</legend> |
| | | <div id="template-container" style="margin: 20px;text-align: center"> |
| | | |
| | | <!-- 预览图 1 --> |
| | | <div id="template-preview-1" class="template-preview" style="display: inline-block"> |
| | | <table class="contain" width="280" style="overflow: hidden;font-size: xx-small;table-layout: fixed;"> |
| | | <tr style="height: 74px"> |
| | | <td colspan="3" align="center" scope="col">商品编码</td> |
| | | <td colspan="3" align="center" scope="col" data-i18n="item_code">商品编码</td> |
| | | <td class="barcode" colspan="9" align="center" scope="col"> |
| | | <img class="template-code template-barcode" src="" width="90%;"> |
| | | <div style="letter-spacing: 2px;margin-top: 1px; text-align: center;"> |
| | |
| | | </td> |
| | | </tr> |
| | | <tr style="height: 74px"> |
| | | <td align="center" colspan="3">商品</td> |
| | | <td align="center" colspan="3" data-i18n="item">商品</td> |
| | | <td align="center" colspan="5">xxxxxx-xx/xx</td> |
| | | <td align="center" colspan="2">备注</td> |
| | | <td align="center" colspan="2" data-i18n="remark">备注</td> |
| | | <td align="center" colspan="2">xx</td> |
| | | </tr> |
| | | </table> |
| | |
| | | <div id="template-preview-2" class="template-preview" style="display: none"> |
| | | <table class="contain" width="280" style="overflow: hidden;font-size: xx-small;table-layout: fixed;"> |
| | | <tr style="height: 30px"> |
| | | <td align="center" width="20%">商品</td> |
| | | <td align="center" width="20%" data-i18n="item">商品</td> |
| | | <td align="center" width="80%" style="overflow:hidden; white-space:nowrap; text-overflow:ellipsis;">xxxxxxx</td> |
| | | </tr> |
| | | <tr style="height: 30px"> |
| | | <td align="center" width="20%">备注</td> |
| | | <td align="center" width="20%" data-i18n="remark">备注</td> |
| | | <td align="center" width="80%">xxxxxxxx</td> |
| | | </tr> |
| | | <tr style="height: 75px;"> |
| | |
| | | <div id="template-preview-3" class="template-preview" style="display: none"> |
| | | <table class="contain" width="280" style="overflow: hidden;font-size: xx-small;table-layout: fixed;"> |
| | | <tr style="height: 74px"> |
| | | <td align="center" scope="col" colspan="1">商品</td> |
| | | <td align="center" scope="col" colspan="1" data-i18n="item">商品</td> |
| | | <td align="center" scope="col" colspan="1" style="">xxxxxx-xx/xx</td> |
| | | <td align="center" scope="col" colspan="2" rowspan="2"> |
| | | <img class="template-code template-qrcode" src="" width="80%"> |
| | |
| | | </td> |
| | | </tr> |
| | | <tr style="height: 74px"> |
| | | <td align="center" colspan="1">备注</td> |
| | | <td align="center" colspan="1" data-i18n="remark">备注</td> |
| | | <td align="center" colspan="1" style="overflow:hidden; white-space:nowrap; text-overflow:ellipsis;">xxxxxxx</td> |
| | | </tr> |
| | | </table> |
| | |
| | | </div> |
| | | </fieldset> |
| | | |
| | | <button class="layui-btn" id="doPrint" lay-submit lay-filter="doPrint" style="margin-top: 20px">确定</button> |
| | | <button class="layui-btn" id="doPrint" lay-submit lay-filter="doPrint" style="margin-top: 20px" data-i18n="confirm">确定</button> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | {{#each data}} |
| | | <table class="contain" width="280" style="overflow: hidden;font-size: small;table-layout: fixed;"> |
| | | <tr style="height: 74px"> |
| | | <td align="center" colspan="3" scope="col">商品编码</td> |
| | | <td align="center" colspan="3" scope="col" data-i18n="item_code">商品编码</td> |
| | | <td align="center" class="barcode" colspan="9" scope="col"> |
| | | <img class="template-code" src="{{this.barcodeUrl}}" width="90%"> |
| | | <div style="letter-spacing: 2px;margin-top: 1px; text-align: center"> |
| | |
| | | </td> |
| | | </tr> |
| | | <tr style="height: 74px"> |
| | | <td align="center" colspan="3">商品</td> |
| | | <td align="center" colspan="3" data-i18n="item">商品</td> |
| | | <td align="center" colspan="5" style="overflow: hidden; white-space: nowrap;text-overflow: ellipsis;">{{this.maktx}}</td> |
| | | <td align="center" colspan="2">备注</td> |
| | | <td align="center" colspan="2" data-i18n="remark">备注</td> |
| | | <td align="center" colspan="2">{{this.memo}}</td> |
| | | </tr> |
| | | </table> |
| | |
| | | {{#each data}} |
| | | <table class="contain" width="280" style="overflow: hidden;font-size: xx-small;table-layout: fixed;"> |
| | | <tr style="height: 35px"> |
| | | <td align="center" width="20%">商品</td> |
| | | <td align="center" width="20%" data-i18n="item">商品</td> |
| | | <td align="center" width="80%" style="overflow:hidden; white-space:nowrap; text-overflow:ellipsis;">{{this.maktx}}</td> |
| | | </tr> |
| | | <tr style="height: 35px"> |
| | | <td align="center" width="20%">备注</td> |
| | | <td align="center" width="20%" data-i18n="remark">备注</td> |
| | | <td align="center" width="80%">{{this.memo}}</td> |
| | | </tr> |
| | | <tr style="height: 79px;"> |
| | |
| | | {{#each data}} |
| | | <table class="contain" width="280" style="overflow: hidden;font-size: xx-small;table-layout: fixed;"> |
| | | <tr style="height: 74px" > |
| | | <td align="center" scope="col" colspan="1">商品</td> |
| | | <td align="center" scope="col" colspan="1" data-i18n="item">商品</td> |
| | | <td align="center" scope="col" colspan="1" style=" |
| | | display: inline-block; |
| | | line-height: 20px; |
| | |
| | | </td> |
| | | </tr> |
| | | <tr style="height: 74px"> |
| | | <td align="center" colspan="1">备注</td> |
| | | <td align="center" colspan="1" data-i18n="remark">备注</td> |
| | | <td align="center" colspan="1" style="overflow:hidden; white-space:nowrap; text-overflow:ellipsis;">{{this.memo}}</td> |
| | | </tr> |
| | | </table> |
| | |
| | | </script> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </html> |
| | | |
| | |
| | | {{/each}} |
| | | </script> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | }); |
| | | } |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | |
| | | </script> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | {{/each}} |
| | | </script> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <option value="{{this}}">{{this}}</option> |
| | | {{/each}} |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </div> |
| | | </form> |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </div> |
| | | </form> |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </div> |
| | | </form> |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </script> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | {{/each}} |
| | | </script> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <script type="text/javascript" src="../../static/js/pakStore/locCheckOut.js" charset="utf-8"></script> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | } |
| | | |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | }); |
| | | } |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </div> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | |
| | | } |
| | | |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | {{/each}} |
| | | </script> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <script type="text/javascript" src="../../static/js/pakStore/stockAdjust.js" charset="utf-8"></script> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | {{/each}} |
| | | </script> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | parent.layer.closeAll(); |
| | | }); |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | }); |
| | | }); |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | |
| | | <script type="text/html" id="operate"> |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | <!-- 搜索栏 --> |
| | | <div id="search-box" class="layui-form layui-card-header"> |
| | | <div class="layui-inline" style="margin-left: 10px"> |
| | | <label class="layui-form-label" style="width:80px">显示模式</label> |
| | | <div class="layui-input-inline" style="width:120px;"> |
| | | <label class="layui-form-label" style="width: auto; min-width: 80px;" data-i18n="display_mode">显示模式</label> |
| | | <div class="layui-input-inline" style="width: 150px;"> |
| | | <select id="viewMode" name="viewMode" lay-filter="viewMode"> |
| | | <option value="byRow">按排显示</option> |
| | | <option value="byLayer">按层显示</option> |
| | | <option value="byRow" data-i18n="view_by_row">按排显示</option> |
| | | <option value="byLayer" data-i18n="view_by_layer">按层显示</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | |
| | | </div> |
| | | |
| | | <div class="layui-inline" style="margin-left: 20px;"> |
| | | <button class="layui-btn layui-btn-normal" id="btnSelectMode">开启框选</button> |
| | | <button class="layui-btn layui-btn-warm" id="btnAssignZone" style="display:none;">分配库区</button> |
| | | <button class="layui-btn layui-btn-normal" id="btnSelectMode" data-i18n="enable_selection">开启框选</button> |
| | | <button class="layui-btn" id="btnAssignZone" style="display:none; margin-left:10px;" data-i18n="assign_zone">分配库区</button> |
| | | </div> |
| | | </div> |
| | | <div id="areaLegend" style="padding: 5px 15px; background: #fff; border-bottom: 1px solid #eee; display:none;"> |
| | |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/handlebars/handlebars-v4.5.3.js"></script> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/report/locMap.js" charset="utf-8"></script> |
| | | </body> |
| | | <script type="text/template" id="locMastRowTemplate"> |
| | |
| | | <option value="{{this}}">{{this}}</option> |
| | | {{/each}} |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/report/stayTime.js" charset="utf-8"></script> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/report/reportStockUse.js" charset="utf-8"></script> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/report/workCountIn.js" charset="utf-8"></script> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/report/workCountOut.js" charset="utf-8"></script> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/report/workIn.js" charset="utf-8"></script> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/report/workOut.js" charset="utf-8"></script> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | }); |
| | | </script> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js"></script> |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | </div> |
| | | </form> |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </div> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | |
| | | .removeAttr('selected'); |
| | | } |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <script type="text/javascript" src="../../static/js/saas/stockAdjust.js" charset="utf-8"></script> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </div> |
| | | </form> |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </div> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | |
| | | <table class="layui-hide" id="locDetlByMap" lay-filter="locDetlByMap"></table> |
| | | </div> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | </div> |
| | | |
| | | <script type="text/html" id="operate"> |
| | | <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit">修改</a> |
| | | <a class="layui-btn layui-btn-danger layui-btn-xs btn-del" lay-event="del">删除</a> |
| | | <a class="layui-btn layui-btn-primary layui-btn-xs btn-edit" lay-event="edit" data-i18n="edit">修改</a> |
| | | <a class="layui-btn layui-btn-danger layui-btn-xs btn-del" lay-event="del" data-i18n="delete">删除</a> |
| | | </script> |
| | | |
| | | <!-- 表单弹窗 --> |
| | |
| | | <div class="layui-col-md6"> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">上级菜单</label> |
| | | <label class="layui-form-label" data-i18n="parent_menu">Parent Menu</label> |
| | | <div class="layui-input-block"> |
| | | <div id="tagParentSel" class="ew-xmselect-tree"></div> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">类型</label> |
| | | <!-- <div class="layui-form-item"> |
| | | <label class="layui-form-label" data-i18n="type">类型</label> |
| | | <div class="layui-input-block"> |
| | | <select name="type" lay-vertype="tips"> |
| | | <option value="">请选择类型</option> |
| | | <option value="0">其他</option> |
| | | <option value="" data-i18n="please_select_type">请选择类型</option> |
| | | <option value="0" data-i18n="other">其他</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | </div> --> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">负责人</label> |
| | | <label class="layui-form-label" data-i18n="responsible_person">Owner</label> |
| | | <div class="layui-input-block"> |
| | | <input name="leading" placeholder="请输入负责人" class="layui-input"> |
| | | <input name="leading" placeholder="请输入负责人" class="layui-input" data-i18n="please_enter_responsible_person"> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | <div class="layui-col-md6"> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label layui-form-required">归类名称</label> |
| | | <label class="layui-form-label layui-form-required" data-i18n="classification_name">Category Name</label> |
| | | <div class="layui-input-block"> |
| | | <input name="name" placeholder="请输入归类名称" class="layui-input" lay-vertype="tips" lay-verify="required" required=""> |
| | | <input name="name" placeholder="请输入归类名称" class="layui-input" lay-vertype="tips" lay-verify="required" required="" data-i18n="please_enter_classification_name"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">排序</label> |
| | | <label class="layui-form-label" data-i18n="sort">sort</label> |
| | | <div class="layui-input-block"> |
| | | <input name="sort" placeholder="请输入排序" class="layui-input"> |
| | | <input name="sort" placeholder="请输入排序" class="layui-input" data-i18n="please_enter_sort"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-form-item"> |
| | | <label class="layui-form-label">备注</label> |
| | | <label class="layui-form-label" data-i18n="memo">memo</label> |
| | | <div class="layui-input-block"> |
| | | <input name="memo" placeholder="请输入备注" class="layui-input"> |
| | | <input name="memo" placeholder="请输入备注" class="layui-input" data-i18n="please_enter_memo"> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | </div> |
| | | <hr class="layui-bg-gray"> |
| | | <div class="layui-form-item text-right"> |
| | | <button class="layui-btn" lay-filter="editSubmit" lay-submit="">保存</button> |
| | | <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">取消</button> |
| | | <button class="layui-btn" lay-filter="editSubmit" lay-submit="" data-i18n="save">保存</button> |
| | | <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog" data-i18n="cancel">取消</button> |
| | | </div> |
| | | </form> |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | |
| | | var xmSelect = layui.xmSelect; |
| | | var tbDataList = []; |
| | | |
| | | var getCols = function() { |
| | | return [[ |
| | | {type: 'checkbox'} |
| | | ,{type: 'numbers'} |
| | | ,{field: 'name', align: 'left',title: I18n.t('name'), minWidth: 150} |
| | | // ,{field: 'uuid', align: 'center',title: '编号'} |
| | | // ,{field: 'type$', align: 'center',title: I18n.t('type')} |
| | | ,{field: 'leading', align: 'center',title: I18n.t('responsible_person')} |
| | | ,{field: 'img', align: 'center',title: I18n.t('image'), hide: true} |
| | | // ,{field: 'brief', align: 'center',title: '简要描述'} |
| | | // ,{field: 'count', align: 'center',title: '数量'} |
| | | ,{field: 'sort', align: 'center',title: I18n.t('sort')} |
| | | ,{field: 'status', align: 'center',title: I18n.t('status'), templet: function(d) { |
| | | if (d.status === 1) return '<span class="layui-badge layui-bg-green">' + I18n.t('normal') + '</span>'; |
| | | if (d.status === 0) return '<span class="layui-badge layui-bg-gray">' + I18n.t('status_disabled') + '</span>'; |
| | | return ''; |
| | | }} |
| | | ,{field: 'updateTime$', align: 'center',title: I18n.t('modify_time')} |
| | | ,{field: 'updateBy$', align: 'center',title: I18n.t('modifier'), hide: true} |
| | | ,{field: 'memo', align: 'center',title: I18n.t('memo'), hide: true} |
| | | |
| | | ,{fixed: 'right', title: I18n.t('operation'), align: 'center', toolbar: '#operate', width:150} |
| | | ]]; |
| | | }; |
| | | |
| | | var insTb = treeTable.render({ |
| | | elem: '#tag', |
| | | url: baseUrl+'/tag/list/auth', |
| | | headers: {token: localStorage.getItem('token')}, |
| | | height: 'full-200', |
| | | toolbar: ['<p>', |
| | | '<button lay-event="add" class="layui-btn layui-btn-sm icon-btn"><i class="layui-icon"></i>添加</button> ', |
| | | '<button lay-event="del" class="layui-btn layui-btn-sm layui-btn-danger icon-btn"><i class="layui-icon"></i>删除</button>', |
| | | '<button lay-event="add" class="layui-btn layui-btn-sm icon-btn" data-i18n="add"><i class="layui-icon"></i>添加</button> ', |
| | | '<button lay-event="del" class="layui-btn layui-btn-sm layui-btn-danger icon-btn" data-i18n="delete"><i class="layui-icon"></i>删除</button>', |
| | | '</p>'].join(''), |
| | | tree: { |
| | | iconIndex: 2, // 折叠图标显示在第几列 |
| | |
| | | idName: 'id', // id字段名称 |
| | | pidName: 'parentId' // pid字段名称 |
| | | }, |
| | | cols: [[ |
| | | {type: 'checkbox'} |
| | | ,{type: 'numbers'} |
| | | ,{field: 'name', align: 'left',title: '名称', minWidth: 150} |
| | | // ,{field: 'uuid', align: 'center',title: '编号'} |
| | | ,{field: 'type$', align: 'center',title: '类型'} |
| | | ,{field: 'leading', align: 'center',title: '负责人'} |
| | | ,{field: 'img', align: 'center',title: '图片', hide: true} |
| | | // ,{field: 'brief', align: 'center',title: '简要描述'} |
| | | // ,{field: 'count', align: 'center',title: '数量'} |
| | | ,{field: 'sort', align: 'center',title: '排序'} |
| | | ,{field: 'status$', align: 'center',title: '状态'} |
| | | ,{field: 'updateTime$', align: 'center',title: '修改时间'} |
| | | ,{field: 'updateBy$', align: 'center',title: '修改人员', hide: true} |
| | | ,{field: 'memo', align: 'center',title: '备注', hide: true} |
| | | |
| | | ,{fixed: 'right', title:'操作', align: 'center', toolbar: '#operate', width:150} |
| | | ]], |
| | | cols: getCols(), |
| | | done: function (data) { |
| | | $('.ew-tree-table-box').css('height', '100%'); |
| | | insTb.expandAll(); |
| | | tbDataList = data; |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage(); |
| | | } |
| | | } |
| | | }); |
| | | |
| | | $(document).on('i18n:languageChanged', function() { |
| | | insTb.reload({ |
| | | cols: getCols(), |
| | | done: function (data) { |
| | | $('.ew-tree-table-box').css('height', '100%'); |
| | | insTb.expandAll(); |
| | | tbDataList = data; |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage(); |
| | | } |
| | | } |
| | | }); |
| | | }); |
| | | |
| | | /* 表格头工具栏点击事件 */ |
| | |
| | | } else if (obj.event === 'del') { // 删除 |
| | | var checkRows = insTb.checkStatus(); |
| | | if (checkRows.length === 0) { |
| | | layer.msg('请选择要删除的数据', {icon: 2}); |
| | | layer.msg(I18n.t('please_select_data'), {icon: 2}); |
| | | return; |
| | | } |
| | | var ids = checkRows.map(function (d) { |
| | |
| | | admin.open({ |
| | | type: 1, |
| | | area: '600px', |
| | | title: (mData ? '修改' : '添加') + '归类', |
| | | title: (mData ? I18n.t('edit') : I18n.t('add')) + ' ' + I18n.t('classification'), |
| | | content: $('#editDialog').html(), |
| | | success: function (layero, dIndex) { |
| | | // 回显表单数据 |
| | |
| | | // 弹窗不出现滚动条 |
| | | $(layero).children('.layui-layer-content').css('overflow', 'visible'); |
| | | layui.form.render('select'); |
| | | if (typeof I18n !== 'undefined') { |
| | | setTimeout(function() { |
| | | I18n.updatePage($(layero)); |
| | | }, 50); |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | |
| | | /* 删除 */ |
| | | function doDel(obj) { |
| | | layer.confirm('确定要删除选中数据吗?', { |
| | | layer.confirm(I18n.t('confirm_delete_selected_data'), { |
| | | skin: 'layui-layer-admin', |
| | | shade: .1 |
| | | }, function (i) { |
| | |
| | | }); |
| | | </script> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | }); |
| | | |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | |
| | | display: inline-block; |
| | | } |
| | | </style> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | |
| | | form.render('checkbox', 'more-set-form'); |
| | | }); |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | |
| | | <style> |
| | | /* theme */ |
| | |
| | | </div> |
| | | {{/each}} |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | </form> |
| | | </script> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <div id="data-detail" class="layer_self_wrap"> |
| | | <form id="detail" class="layui-form" style="text-align: center"> |
| | | <div class="layui-inline" style="display: none"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>编 号:</label> |
| | | <label class="layui-form-label" data-i18n="id"><span class="not-null">*</span>编 号:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="id" class="layui-input" type="text" placeholder="编号"> |
| | | <input id="id" class="layui-input" type="text" placeholder="编号" data-i18n-placeholder="id"> |
| | | </div> |
| | | </div> |
| | | <!-- <div class="layui-inline" style="width:31%;display: none">--> |
| | |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | <div class="layui-inline" style="width:80%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>帐 号:</label> |
| | | <label class="layui-form-label" data-i18n="account"><span class="not-null">*</span>帐 号:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="mobile" class="layui-input" type="text" placeholder="账号" lay-verify="required" autocomplete="off"> |
| | | <input id="mobile" class="layui-input" type="text" placeholder="账号" data-i18n-placeholder="account" lay-verify="required" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:80%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>名 称:</label> |
| | | <label class="layui-form-label" data-i18n="username"><span class="not-null">*</span>名 称:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="username" class="layui-input" type="text" placeholder="名称" lay-verify="required" autocomplete="off"> |
| | | <input id="username" class="layui-input" type="text" placeholder="名称" data-i18n-placeholder="username" lay-verify="required" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:80%;"> |
| | | <label class="layui-form-label">密 码:</label> |
| | | <label class="layui-form-label" data-i18n="password">密 码:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="password" class="layui-input" type="text" placeholder="密码" autocomplete="off"> |
| | | <input id="password" class="layui-input" type="text" placeholder="密码" data-i18n-placeholder="password" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:80%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>角 色:</label> |
| | | <label class="layui-form-label" data-i18n="role"><span class="not-null">*</span>角 色:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="roleId" class="layui-input" type="text" placeholder="角色" lay-verify="required" style="display: none"> |
| | | <input id="roleName" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="角色" onfocus=this.blur()> |
| | | <input id="roleName" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="角色" data-i18n-placeholder="role" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="roleQuery" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="roleQuerySelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | <hr class="layui-bg-gray"> |
| | | |
| | | <div id="data-detail-btn" class="layui-btn-container layui-form-item"> |
| | | <div id="data-detail-submit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit">保存</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close">关闭</div> |
| | | <div id="data-detail-submit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit" data-i18n="save">保存</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close" data-i18n="close">关闭</div> |
| | | </div> |
| | | |
| | | <div id="prompt"> |
| | | 温馨提示:请仔细填写相关信息,<span class="extrude"><span class="not-null">*</span> 为必填选项。</span> |
| | | <span data-i18n="warm_prompt_prefix">温馨提示:请仔细填写相关信息,</span><span class="extrude"><span class="not-null">*</span> <span data-i18n="warm_prompt_suffix">为必填选项。</span></span> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | <div id="search-box" class="layui-form layui-card-header"> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="zpallet" placeholder="托盘条码" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="zpallet" placeholder="托盘条码" data-i18n-placeholder="pallet_barcode" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="matnr" placeholder="商品编号" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="matnr" placeholder="商品编号" data-i18n-placeholder="product_code" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <!-- 日期范围 --> |
| | | <div class="layui-inline" style="width: 300px"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input layui-laydate-range" name="modi_time" type="text" placeholder="起始时间 - 终止时间" autocomplete="off" style="width: 300px"> |
| | | <input class="layui-input layui-laydate-range" name="modi_time" type="text" placeholder="起始时间 - 终止时间" data-i18n-placeholder="start_end_time" autocomplete="off" style="width: 300px"> |
| | | </div> |
| | | </div> |
| | | <!-- 待添加 --> |
| | | <div id="data-search-btn" class="layui-btn-container layui-form-item"> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">重置</button> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search" data-i18n="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset" data-i18n="reset">重置</button> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | <script type="text/html" id="toolbar"> |
| | | <div class="layui-btn-container"> |
| | | <!-- <button class="layui-btn layui-btn-sm" id="btn-wrk" lay-event="addWrk">生成任务</button>--> |
| | | <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData">新增</button> |
| | | <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData">删除</button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="">导出</button> |
| | | <button class="layui-btn layui-btn-sm" id="btn-add" lay-event="addData" data-i18n="add">新增</button> |
| | | <button class="layui-btn layui-btn-sm" id="btn-delete" lay-event="deleteData" data-i18n="delete">删除</button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="" data-i18n="export">导出</button> |
| | | </div> |
| | | </script> |
| | | |
| | | <script type="text/html" id="operate"> |
| | | <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">详情</a> |
| | | <a class="layui-btn layui-btn-xs btn-edit" lay-event="edit">编辑</a> |
| | | <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail" data-i18n="detail">详情</a> |
| | | <a class="layui-btn layui-btn-xs btn-edit" lay-event="edit" data-i18n="edit">编辑</a> |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/waitPakin/waitPakin.js" charset="utf-8"></script> |
| | | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </html> |
| | | |
| | |
| | | </div> |
| | | --> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>编 号:</label> |
| | | <label class="layui-form-label"><span class="not-null">*</span><span data-i18n="id">编 号</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="id" class="layui-input" type="text" onkeyup="check(this.id, 'waitPakin')" lay-verify="number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">托 盘 码:</label> |
| | | <label class="layui-form-label"><span data-i18n="pallet_barcode">托 盘 码</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="barcode" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">商品编号:</label> |
| | | <label class="layui-form-label"><span data-i18n="product_code">商品编号</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="matnr" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">物料描述:</label> |
| | | <label class="layui-form-label"><span data-i18n="material_desc">物料描述</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="maktx" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">数 量:</label> |
| | | <label class="layui-form-label"><span data-i18n="quantity">数 量</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="anfme" class="layui-input" type="text" lay-verify="number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">单 位:</label> |
| | | <label class="layui-form-label"><span data-i18n="unit">单 位</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="unit" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">状 态:</label> |
| | | <label class="layui-form-label"><span data-i18n="status">状 态</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="status" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">备 注:</label> |
| | | <label class="layui-form-label"><span data-i18n="remark">备 注</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="memo" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">修改时间:</label> |
| | | <label class="layui-form-label"><span data-i18n="modify_time">修改时间</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="modiTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">修改人员:</label> |
| | | <label class="layui-form-label"><span data-i18n="modifier">修改人员</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="modiUser" class="layui-input" type="text" lay-verify="number" style="display: none"> |
| | | <input id="modiUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">添加时间:</label> |
| | | <label class="layui-form-label"><span data-i18n="add_time">添加时间</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="appeTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">创 建 者:</label> |
| | | <label class="layui-form-label"><span data-i18n="creator">创 建 者</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="appeUser" class="layui-input" type="text" lay-verify="number" style="display: none"> |
| | | <input id="appeUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | |
| | | <hr class="layui-bg-gray"> |
| | | |
| | | <div id="data-detail-btn" class="layui-btn-container layui-form-item"> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close">关闭</div> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save" data-i18n="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit" data-i18n="modify">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close" data-i18n="close">关闭</div> |
| | | </div> |
| | | |
| | | <div id="prompt"> |
| | | 温馨提示:请仔细填写相关信息,<span class="extrude"><span class="not-null">*</span> 为必填选项。</span> |
| | | <span data-i18n="warm_prompt_prefix">温馨提示:请仔细填写相关信息,</span><span class="extrude"><span class="not-null">*</span> <span data-i18n="warm_prompt_suffix">为必填选项。</span></span> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/waitPakin/waitPakin.js" charset="utf-8"></script> |
| | |
| | | <div id="search-box" class="layui-form layui-card-header"> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="zpallet" placeholder="托盘条码" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="zpallet" placeholder="托盘条码" data-i18n-placeholder="pallet_barcode" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <!-- 日期范围 --> |
| | | <div class="layui-inline" style="width: 300px"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input layui-laydate-range" name="modi_time" type="text" placeholder="起始时间 - 终止时间" autocomplete="off" style="width: 300px"> |
| | | <input class="layui-input layui-laydate-range" name="modi_time" type="text" placeholder="起始时间 - 终止时间" data-i18n-placeholder="start_end_time" autocomplete="off" style="width: 300px"> |
| | | </div> |
| | | </div> |
| | | <!-- 待添加 --> |
| | | <div id="data-search-btn" class="layui-btn-container layui-form-item"> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">重置</button> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search" data-i18n="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset" data-i18n="reset">重置</button> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | </div> |
| | | <script type="text/html" id="toolbar"> |
| | | <div class="layui-btn-container"> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="margin-top: 10px">导出</button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="margin-top: 10px" data-i18n="export">导出</button> |
| | | </div> |
| | | </script> |
| | | |
| | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/waitPakinLog/waitPakinLog.js" charset="utf-8"></script> |
| | | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </html> |
| | | |
| | |
| | | </div> |
| | | --> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>编 号:</label> |
| | | <label class="layui-form-label"><span class="not-null">*</span><span data-i18n="id">编 号</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="id" class="layui-input" type="text" onkeyup="check(this.id, 'waitPakinLog')" lay-verify="number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">入库通知号:</label> |
| | | <label class="layui-form-label" data-i18n="inbound_notice_no">入库通知号:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="pakinId" class="layui-input" type="text" lay-verify="number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">托 盘 码:</label> |
| | | <label class="layui-form-label" data-i18n="pallet_code">托 盘 码:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="barcode" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">商品编号:</label> |
| | | <label class="layui-form-label" data-i18n="product_code">商品编号:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="matnr" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">物料描述:</label> |
| | | <label class="layui-form-label" data-i18n="material_desc">物料描述:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="maktx" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">数 量:</label> |
| | | <label class="layui-form-label" data-i18n="quantity">数 量:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="anfme" class="layui-input" type="text" lay-verify="number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">单 位:</label> |
| | | <label class="layui-form-label" data-i18n="unit">单 位:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="unit" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">状 态:</label> |
| | | <label class="layui-form-label" data-i18n="status">状 态:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="status" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">备 注:</label> |
| | | <label class="layui-form-label" data-i18n="remark">备 注:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="memo" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">修改时间:</label> |
| | | <label class="layui-form-label" data-i18n="modify_time">修改时间:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="modiTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">修改人员:</label> |
| | | <label class="layui-form-label" data-i18n="modifier">修改人员:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="modiUser" class="layui-input" type="text" lay-verify="number" style="display: none"> |
| | | <input id="modiUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | | <input id="modiUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." data-i18n-placeholder="input_placeholder" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="userQueryBymodiUser" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="userQueryBymodiUserSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">添加时间:</label> |
| | | <label class="layui-form-label" data-i18n="add_time">添加时间:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="appeTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">创 建 者:</label> |
| | | <label class="layui-form-label" data-i18n="creator">创 建 者:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="appeUser" class="layui-input" type="text" lay-verify="number" style="display: none"> |
| | | <input id="appeUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | | <input id="appeUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." data-i18n-placeholder="input_placeholder" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="userQueryByappeUser" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="userQueryByappeUserSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | <hr class="layui-bg-gray"> |
| | | |
| | | <div id="data-detail-btn" class="layui-btn-container layui-form-item"> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close">关闭</div> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save" data-i18n="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit" data-i18n="edit">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close" data-i18n="close">关闭</div> |
| | | </div> |
| | | |
| | | <div id="prompt"> |
| | | 温馨提示:请仔细填写相关信息,<span class="extrude"><span class="not-null">*</span> 为必填选项。</span> |
| | | <span data-i18n="warm_prompt_prefix">温馨提示:请仔细填写相关信息,</span><span class="extrude"><span class="not-null">*</span> <span data-i18n="warm_prompt_suffix">为必填选项。</span></span> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/waitPakinLog/waitPakinLog.js" charset="utf-8"></script> |
| | | </html> |
| | | |
| | |
| | | <div id="search-box" class="layui-form layui-card-header"> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="wrk_no" placeholder="工作号" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="wrk_no" placeholder="工作号" data-i18n-placeholder="work_no" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <!-- 日期范围 --> |
| | | <div class="layui-inline" style="width: 300px"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input layui-laydate-range" name="io_time" type="text" placeholder="起始时间 - 终止时间" autocomplete="off" style="width: 300px"> |
| | | <input class="layui-input layui-laydate-range" name="io_time" type="text" placeholder="起始时间 - 终止时间" data-i18n-placeholder="start_end_time" autocomplete="off" style="width: 300px"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="condition" placeholder="请输入" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="condition" placeholder="请输入" data-i18n-placeholder="input_placeholder" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <!-- 待添加 --> |
| | | <div id="data-search-btn" class="layui-btn-container layui-form-item" style="display: inline-block"> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">重置</button> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search" data-i18n="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset" data-i18n="reset">重置</button> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | </div> |
| | | <script type="text/html" id="toolbar"> |
| | | <div class="layui-btn-container"> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData">导出</button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" data-i18n="export">导出</button> |
| | | </div> |
| | | </script> |
| | | |
| | | <script type="text/html" id="operate"> |
| | | <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">详情</a> |
| | | <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail" data-i18n="detail">详情</a> |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </html> |
| | | |
| | |
| | | <div id="data-detail" class="layer_self_wrap"> |
| | | <form id="detail" class="layui-form"> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>工 作 号:</label> |
| | | <label class="layui-form-label" data-i18n="work_no"><span class="not-null">*</span>工 作 号:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="wrkNo" class="layui-input" type="text" lay-verify="required|number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">工作时间:</label> |
| | | <label class="layui-form-label" data-i18n="work_time">工作时间:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="ioTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>物 料:</label> |
| | | <label class="layui-form-label" data-i18n="material"><span class="not-null">*</span>物 料:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="matnr" class="layui-input" type="text" lay-verify="required" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>仓 库 号:</label> |
| | | <label class="layui-form-label" data-i18n="warehouse_no"><span class="not-null">*</span>仓 库 号:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="lgnum" class="layui-input" type="text" lay-verify="required" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label" style="font-size: x-small"><span class="not-null">*</span>转储请求编号:</label> |
| | | <label class="layui-form-label" style="font-size: x-small" data-i18n="transfer_req_no"><span class="not-null">*</span>转储请求编号:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="tbnum" class="layui-input" type="text" lay-verify="required|number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>行 项 目:</label> |
| | | <label class="layui-form-label" data-i18n="item_no"><span class="not-null">*</span>行 项 目:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="tbpos" class="layui-input" type="text" lay-verify="required|number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label" style="font-size: x-small"><span class="not-null">*</span>物料标签ID:</label> |
| | | <label class="layui-form-label" style="font-size: x-small" data-i18n="material_label_id"><span class="not-null">*</span>物料标签ID:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="zmatid" class="layui-input" type="text" lay-verify="required" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">物料描述:</label> |
| | | <label class="layui-form-label" data-i18n="material_desc">物料描述:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="maktx" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">工 厂:</label> |
| | | <label class="layui-form-label" data-i18n="factory">工 厂:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="werks" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">数 量:</label> |
| | | <label class="layui-form-label" data-i18n="quantity">数 量:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="anfme" class="layui-input" type="text" lay-verify="number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">单 位:</label> |
| | | <label class="layui-form-label" data-i18n="unit">单 位:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="altme" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">托盘条码:</label> |
| | | <label class="layui-form-label" data-i18n="pallet_barcode">托盘条码:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="zpallet" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">用户ID:</label> |
| | | <label class="layui-form-label" data-i18n="user_id">用户ID:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="bname" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">备 注:</label> |
| | | <label class="layui-form-label" data-i18n="remark">备 注:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="memo" class="layui-input" type="text"> |
| | | </div> |
| | |
| | | <hr class="layui-bg-gray"> |
| | | |
| | | <div id="data-detail-btn" class="layui-btn-container layui-form-item"> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close">关闭</div> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save" data-i18n="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit" data-i18n="modify">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close" data-i18n="close">关闭</div> |
| | | </div> |
| | | |
| | | <div id="prompt"> |
| | | 温馨提示:请仔细填写相关信息,<span class="extrude"><span class="not-null">*</span> 为必填选项。</span> |
| | | <span data-i18n="warm_prompt_prefix">温馨提示:请仔细填写相关信息,</span><span class="extrude"><span class="not-null">*</span> <span data-i18n="warm_prompt_suffix">为必填选项。</span></span> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | |
| | | <div id="search-box" class="layui-form layui-card-header"> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="wrk_no" placeholder="工作号" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="wrk_no" placeholder="工作号" data-i18n-placeholder="work_no" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width: 300px"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input layui-laydate-range" name="modi_time" type="text" placeholder="起始时间 - 终止时间" autocomplete="off" style="width: 300px"> |
| | | <input class="layui-input layui-laydate-range" name="modi_time" type="text" placeholder="起始时间 - 终止时间" data-i18n-placeholder="start_end_time" autocomplete="off" style="width: 300px"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="order_no" placeholder="订单编号" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="order_no" placeholder="订单编号" data-i18n-placeholder="order_no" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="matnr" placeholder="品号" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="matnr" placeholder="品号" data-i18n-placeholder="item_no" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="specs" placeholder="规格" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="specs" placeholder="规格" data-i18n-placeholder="spec" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="zpallet" placeholder="托盘码" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="zpallet" placeholder="托盘码" data-i18n-placeholder="pallet_code" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="batch" placeholder="批号" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="batch" placeholder="批号" data-i18n-placeholder="batch_no" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="anfme" placeholder="数量" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="anfme" placeholder="数量" data-i18n-placeholder="quantity" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <!-- 待添加 --> |
| | | <div id="data-search-btn" class="layui-btn-container layui-form-item"> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">重置</button> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search" data-i18n="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset" data-i18n="reset">重置</button> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | </div> |
| | | <script type="text/html" id="toolbar"> |
| | | <div class="layui-btn-container"> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="margin-top: 10px">导出</button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="margin-top: 10px" data-i18n="export">导出</button> |
| | | </div> |
| | | </script> |
| | | |
| | | <script type="text/html" id="operate"> |
| | | <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">详情</a> |
| | | <a class="layui-btn layui-btn-xs btn-edit" lay-event="edit">编辑</a> |
| | | <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail" data-i18n="detail">详情</a> |
| | | <a class="layui-btn layui-btn-xs btn-edit" lay-event="edit" data-i18n="edit">编辑</a> |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | <!--<script src="../../static/js/translate.js"></script>--> |
| | | <!--<script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </script>--> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | </html> |
| | | |
| | |
| | | </div> |
| | | --> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>工 作 号:</label> |
| | | <label class="layui-form-label"><span class="not-null">*</span><span data-i18n="work_no">工 作 号</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="wrkNo" class="layui-input" type="text" lay-verify="required|number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">工作时间:</label> |
| | | <label class="layui-form-label"><span data-i18n="work_time">工作时间</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="ioTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>物料编号:</label> |
| | | <label class="layui-form-label"><span class="not-null">*</span><span data-i18n="material">物料编号</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="matnr" class="layui-input" type="text" lay-verify="required" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>仓 库 号:</label> |
| | | <label class="layui-form-label"><span class="not-null">*</span><span data-i18n="warehouse_no">仓 库 号</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="lgnum" class="layui-input" type="text" lay-verify="required" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label" style="font-size: x-small"><span class="not-null">*</span>转储请求编号:</label> |
| | | <label class="layui-form-label" style="font-size: x-small"><span class="not-null">*</span><span data-i18n="transfer_req_no">转储请求编号</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="tbnum" class="layui-input" type="text" lay-verify="required|number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>行 项 目:</label> |
| | | <label class="layui-form-label"><span class="not-null">*</span><span data-i18n="item_no">行 项 目</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="tbpos" class="layui-input" type="text" lay-verify="required|number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label" style="font-size: x-small">物料标签ID:</label> |
| | | <label class="layui-form-label" style="font-size: x-small"><span data-i18n="material_label_id">物料标签ID</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="zmatid" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">物料描述:</label> |
| | | <label class="layui-form-label"><span data-i18n="material_desc">物料描述</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="maktx" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">工 厂:</label> |
| | | <label class="layui-form-label"><span data-i18n="factory">工 厂</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="werks" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">数 量:</label> |
| | | <label class="layui-form-label"><span data-i18n="quantity">数 量</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="anfme" class="layui-input" type="text" lay-verify="number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">单 位:</label> |
| | | <label class="layui-form-label"><span data-i18n="unit">单 位</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="altme" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">托盘条码:</label> |
| | | <label class="layui-form-label"><span data-i18n="pallet_barcode">托盘条码</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="zpallet" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">用户ID:</label> |
| | | <label class="layui-form-label"><span data-i18n="user_id">用户ID</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="bname" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">备 注:</label> |
| | | <label class="layui-form-label"><span data-i18n="remark">备 注</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="memo" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">修改人员:</label> |
| | | <label class="layui-form-label"><span data-i18n="modifier">修改人员</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="modiUser" class="layui-input" type="text" lay-verify="number" style="display: none"> |
| | | <input id="modiUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | | <input id="modiUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." data-i18n-placeholder="input_placeholder" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="userQueryBymodiUser" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="userQueryBymodiUserSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">修改时间:</label> |
| | | <label class="layui-form-label"><span data-i18n="modify_time">修改时间</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="modiTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">创 建 者:</label> |
| | | <label class="layui-form-label"><span data-i18n="creator">创 建 者</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="appeUser" class="layui-input" type="text" lay-verify="number" style="display: none"> |
| | | <input id="appeUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | | <input id="appeUser$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." data-i18n-placeholder="input_placeholder" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="userQueryByappeUser" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="userQueryByappeUserSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">添加时间:</label> |
| | | <label class="layui-form-label"><span data-i18n="add_time">添加时间</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="appeTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | |
| | | <hr class="layui-bg-gray"> |
| | | |
| | | <div id="data-detail-btn" class="layui-btn-container layui-form-item"> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close">关闭</div> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save" data-i18n="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit" data-i18n="edit">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close" data-i18n="close">关闭</div> |
| | | </div> |
| | | |
| | | <div id="prompt"> |
| | | 温馨提示:请仔细填写相关信息,<span class="extrude"><span class="not-null">*</span> 为必填选项。</span> |
| | | <span data-i18n="warm_prompt_prefix">温馨提示:请仔细填写相关信息,</span><span class="extrude"><span class="not-null">*</span> <span data-i18n="warm_prompt_suffix">为必填选项。</span></span> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | <!--<script src="../../static/js/translate.js"></script>--> |
| | | <!--<script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </script>--> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | |
| | | </head> |
| | | <body> |
| | | <div class="layui-inline" style="width:31%;margin-top: 20px"> |
| | | <label class="layui-form-label">工 作 号:</label> |
| | | <label class="layui-form-label"><span data-i18n="work_no">工 作 号</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="wrkNo" class="layui-input" type="text" disabled="disabled"> |
| | | </div> |
| | |
| | | <table class="layui-hide" id="wrkDetlByMast" lay-filter="wrkDetlByMast"></table> |
| | | </body> |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | |
| | | var pageCur; |
| | | function getCol() { |
| | | var cols = [ |
| | | {field: 'wrkNo', align: 'center',title: '工作号'} |
| | | ,{field: 'ioTime$', align: 'center',title: '工作时间'} |
| | | {field: 'wrkNo', align: 'center',title: I18n.t('work_no')} |
| | | ,{field: 'ioTime$', align: 'center',title: I18n.t('work_time')} |
| | | ]; |
| | | cols.push.apply(cols, detlCols); |
| | | if (typeof getDetlCols === 'function') { |
| | | cols.push.apply(cols, getDetlCols()); |
| | | } else { |
| | | cols.push.apply(cols, detlCols); |
| | | } |
| | | return cols; |
| | | } |
| | | layui.use(['table','laydate', 'form'], function() { |
| | | table = layui.table; |
| | | var $ = layui.jquery; |
| | | var form = layui.form; |
| | | |
| | | $(document).on('i18n:languageChanged', function() { |
| | | table.reload('wrkDetlByMast', { |
| | | cols: [getCol()], |
| | | done: function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCur=curr; |
| | | form.on('checkbox(tableCheckbox)', function (data) { |
| | | var _index = $(data.elem).attr('table-index')||0; |
| | | if(data.elem.checked){ |
| | | res.data[_index][data.value] = 'Y'; |
| | | }else{ |
| | | res.data[_index][data.value] = 'N'; |
| | | } |
| | | }); |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage(); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | } |
| | | }); |
| | | }); |
| | | |
| | | $('#wrkNo').val(parent.wrkNo); |
| | | // 数据渲染 |
| | |
| | | res.data[_index][data.value] = 'N'; |
| | | } |
| | | }); |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage(); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | } |
| | | }); |
| | | }); |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | <div id="search-box" class="layui-form layui-card-header"> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="wrk_no" placeholder="工作号" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="wrk_no" placeholder="工作号" data-i18n-placeholder="work_no" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="wrkSts" class="layui-input" name="wrk_sts" type="text" placeholder="请输入" autocomplete="off" style="display: none"> |
| | | <input id="wrkSts$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="工作状态" onfocus=this.blur()> |
| | | <input id="wrkSts" class="layui-input" name="wrk_sts" type="text" placeholder="请输入" data-i18n-placeholder="input_placeholder" autocomplete="off" style="display: none"> |
| | | <input id="wrkSts$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="工作状态" data-i18n-placeholder="work_status" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="basWrkStatusQueryBywrkSts" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="basWrkStatusQueryBywrkStsSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="crn_no" placeholder="堆垛机号" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="crn_no" placeholder="堆垛机号" data-i18n-placeholder="crane_no" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <!-- 日期范围 --> |
| | | <div class="layui-inline" style="width: 300px"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input layui-laydate-range" name="io_time" type="text" placeholder="起始时间 - 终止时间" autocomplete="off" style="width: 300px"> |
| | | <input class="layui-input layui-laydate-range" name="io_time" type="text" placeholder="起始时间 - 终止时间" data-i18n-placeholder="start_end_time" autocomplete="off" style="width: 300px"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="condition" placeholder="请输入" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="condition" placeholder="请输入" data-i18n-placeholder="input_placeholder" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <!-- 待添加 --> |
| | | <div id="data-search-btn" class="layui-btn-container layui-form-item"> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">重置</button> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search" data-i18n="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset" data-i18n="reset">重置</button> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | </div> |
| | | <script type="text/html" id="toolbar"> |
| | | <div class="layui-btn-container"> |
| | | <button class="layui-btn layui-btn-normal" id="btn-pri-add" lay-event="priAdd"><i class="layui-icon"></i>增加优先级</button> |
| | | <button class="layui-btn layui-btn-normal" id="btn-pri-red" lay-event="priRed"><i class="layui-icon"></i>降低优先级</button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData">导出</button> |
| | | <button class="layui-btn layui-btn-normal" id="btn-pri-add" lay-event="priAdd"><i class="layui-icon"></i><span data-i18n="increase_priority">增加优先级</span></button> |
| | | <button class="layui-btn layui-btn-normal" id="btn-pri-red" lay-event="priRed"><i class="layui-icon"></i><span data-i18n="decrease_priority">降低优先级</span></button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" data-i18n="export">导出</button> |
| | | </div> |
| | | </script> |
| | | |
| | | <!--明细表--> |
| | | <div id="detlTable" style="display: none"> |
| | | <div class="layui-inline" style="width:90%;margin-top: 10px;margin-left: 20px"> |
| | | <span style=" color: indianred">以下为当前工作流的物料明细</span> |
| | | <span style=" color: indianred" data-i18n="current_workflow_detail">以下为当前工作流的物料明细</span> |
| | | </div> |
| | | |
| | | <table class="layui-hide" id="wrkDetlByMap" lay-filter="wrkDetlByMap"></table> |
| | |
| | | |
| | | <script type="text/html" id="operate"> |
| | | {{#if (d.preHave === 'Y' && d.wrkSts === 3) { }} |
| | | <a class="layui-btn layui-btn-primary layui-border-red layui-btn-xs btn-error" lay-event="preHave">先入品</a> |
| | | <a class="layui-btn layui-btn-primary layui-border-red layui-btn-xs btn-error" lay-event="preHave" data-i18n="pre_existing">先入品</a> |
| | | {{# } }} |
| | | {{#if (d.takeNone === 'Y' && d.wrkSts === 12) { }} |
| | | <a class="layui-btn layui-btn-danger layui-btn-xs btn-error" lay-event="takeNone">空操作</a> |
| | | <a class="layui-btn layui-btn-danger layui-btn-xs btn-error" lay-event="takeNone" data-i18n="empty_op">空操作</a> |
| | | {{# } }} |
| | | <a class="layui-btn layui-btn-xs btn-detlShow" lay-event="detlShow">明细</a> |
| | | <a class="layui-btn layui-btn-danger layui-btn-xs btn-complete" lay-event="complete">完成</a> |
| | | <a class="layui-btn layui-btn-primary layui-btn-xs btn-cancel" lay-event="cancel">取消</a> |
| | | <a class="layui-btn layui-btn-xs btn-detlShow" lay-event="detlShow" data-i18n="detail">明细</a> |
| | | <a class="layui-btn layui-btn-danger layui-btn-xs btn-complete" lay-event="complete" data-i18n="complete">完成</a> |
| | | <a class="layui-btn layui-btn-primary layui-btn-xs btn-cancel" lay-event="cancel" data-i18n="cancel">取消</a> |
| | | {{#if (d.ioType === 103) { }} |
| | | <a class="layui-btn layui-btn-warm layui-btn-xs btn-pick" lay-event="pick">拣</a> |
| | | <a class="layui-btn layui-btn-warm layui-btn-xs btn-pick" lay-event="pick" data-i18n="pick">拣</a> |
| | | {{# } }} |
| | | {{#if (d.ioType === 107) { }} |
| | | <a class="layui-btn layui-btn-warm layui-btn-xs btn-pick" lay-event="pick">盘</a> |
| | | <a class="layui-btn layui-btn-warm layui-btn-xs btn-pick" lay-event="pick" data-i18n="count">盘</a> |
| | | {{# } }} |
| | | </script> |
| | | |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/wrkMast/wrkMast.js" charset="utf-8"></script> |
| | | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </html> |
| | | |
| | |
| | | <div id="data-detail" class="layer_self_wrap"> |
| | | <form id="detail" class="layui-form"> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>工 作 号:</label> |
| | | <label class="layui-form-label"><span class="not-null">*</span> <span data-i18n="work_no">工 作 号</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="wrkNo" class="layui-input" type="text" onkeyup="check(this.id, 'wrkMast')"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">工作状态:</label> |
| | | <label class="layui-form-label"><span data-i18n="work_status">工作状态</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="wrkSts" class="layui-input" type="text" style="display: none"> |
| | | <input id="wrkSts$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">入出库类型:</label> |
| | | <label class="layui-form-label"><span data-i18n="transaction_type">入出库类型</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="ioType" class="layui-input" type="text" style="display: none"> |
| | | <input id="ioType$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">堆 垛 机:</label> |
| | | <label class="layui-form-label"><span data-i18n="crane">堆 垛 机</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="crnNo" class="layui-input" type="text" style="display: none"> |
| | | <input id="crnNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">优 先 级:</label> |
| | | <label class="layui-form-label"><span data-i18n="priority">优 先 级</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="ioPri" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">目标库位:</label> |
| | | <label class="layui-form-label"><span data-i18n="target_location">目标库位</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="locNo" class="layui-input" type="text" style="display: none"> |
| | | <input id="locNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">目 标 站:</label> |
| | | <label class="layui-form-label"><span data-i18n="target_station">目 标 站</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="staNo" class="layui-input" type="text" style="display: none"> |
| | | <input id="staNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">源 站:</label> |
| | | <label class="layui-form-label"><span data-i18n="source_station">源 站</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="sourceStaNo" class="layui-input" type="text" style="display: none"> |
| | | <input id="sourceStaNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">源 库 位:</label> |
| | | <label class="layui-form-label"><span data-i18n="source_location">源 库 位</span>:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="sourceLocNo" class="layui-input" type="text" style="display: none"> |
| | | <input id="sourceLocNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">拣 料:</label> |
| | | <label class="layui-form-label"><span data-i18n="picking">拣 料</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="picking" class="layui-input" type="checkBox" lay-skin="primary" lay-filter='detailCheckbox'> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">退 出:</label> |
| | | <label class="layui-form-label"><span data-i18n="exit">退 出</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="exitMk" class="layui-input" type="checkBox" lay-skin="primary" lay-filter='detailCheckbox'> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">空 板:</label> |
| | | <label class="layui-form-label"><span data-i18n="empty_pallet">空 板</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="emptyMk" class="layui-input" type="checkBox" lay-skin="primary" lay-filter='detailCheckbox'> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">工作时间:</label> |
| | | <label class="layui-form-label"><span data-i18n="work_time">工作时间</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="ioTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label" style="font-size: x-small">堆垛机启动时间:</label> |
| | | <label class="layui-form-label" style="font-size: x-small"><span data-i18n="crane_start_time">堆垛机启动时间</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="crnStrTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label" style="font-size: x-small">堆垛机停止时间:</label> |
| | | <label class="layui-form-label" style="font-size: x-small"><span data-i18n="crane_end_time">堆垛机停止时间</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="crnEndTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">拣料时间:</label> |
| | | <label class="layui-form-label"><span data-i18n="picking_time">拣料时间</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="refIotime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">备 注:</label> |
| | | <label class="layui-form-label"><span data-i18n="remark">备 注</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="memo" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">条 码:</label> |
| | | <label class="layui-form-label"><span data-i18n="barcode">条 码</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="barcode" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">满 板:</label> |
| | | <label class="layui-form-label"><span data-i18n="full_pallet">满 板</span>:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="fullPlt" class="layui-input" type="checkBox" lay-skin="primary" lay-filter='detailCheckbox'> |
| | | </div> |
| | |
| | | <hr class="layui-bg-gray"> |
| | | |
| | | <div id="data-detail-btn" class="layui-btn-container layui-form-item"> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close">关闭</div> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save" data-i18n="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit" data-i18n="modify">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close" data-i18n="close">关闭</div> |
| | | </div> |
| | | |
| | | <div id="prompt"> |
| | | 温馨提示:请仔细填写相关信息,<span class="extrude"><span class="not-null">*</span> 为必填选项。</span> |
| | | <span data-i18n="warm_prompt_prefix">温馨提示:请仔细填写相关信息,</span><span class="extrude"><span class="not-null">*</span> <span data-i18n="warm_prompt_suffix">为必填选项。</span></span> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | |
| | | </div> |
| | | </form> |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </div> |
| | | </form> |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </div> |
| | | </form> |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </div> |
| | | </form> |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | |
| | | </html> |
| | | |
| | |
| | | </head> |
| | | <body> |
| | | <div class="layui-inline" style="width:20%;margin-top: 20px"> |
| | | <label class="layui-form-label">工 作 号:</label> |
| | | <label class="layui-form-label"><span data-i18n="work_no">工 作 号:</span></label> |
| | | <div class="layui-input-inline"> |
| | | <input id="wrkNo" class="layui-input" type="text" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:20%;margin-top: 20px"> |
| | | <label class="layui-form-label">工作时间:</label> |
| | | <label class="layui-form-label"><span data-i18n="work_time">工作时间:</span></label> |
| | | <div class="layui-input-inline"> |
| | | <input id="ioTime" class="layui-input" type="text" disabled="disabled"> |
| | | </div> |
| | |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/locMast/locMast.js" charset="utf-8"></script> |
| | | <script type="text/javascript"> |
| | | var pageCur; |
| | | function getCol() { |
| | | let cols = [ |
| | | {field: 'wrkNo', align: 'center',title: '工作号'} |
| | | ,{field: 'ioTime$', align: 'center',title: '工作时间',width:160} |
| | | {field: 'wrkNo', align: 'center',title: I18n.t('work_no')} |
| | | ,{field: 'ioTime$', align: 'center',title: I18n.t('work_time'),width:160} |
| | | ]; |
| | | cols.push.apply(cols, detlCols); |
| | | // Use getDetlCols() to ensure fresh I18n values |
| | | cols.push.apply(cols, getDetlCols()); |
| | | return cols; |
| | | } |
| | | layui.use(['table','laydate', 'form'], function() { |
| | | table = layui.table; |
| | | var $ = layui.jquery; |
| | | var form = layui.form; |
| | | |
| | | $('#wrkNo').val(parent.wrkNo); |
| | | $('#ioTime').val(top.dateToStr(parent.ioTime, true)); |
| | | // 数据渲染 |
| | | tableIns1 = table.render({ |
| | | elem: '#wrkDetlLogByMast', |
| | | headers: {token: localStorage.getItem('token')}, |
| | | url: baseUrl+'/wrkDetlLogByMast/list/auth', |
| | | where: {wrk_no: parent.wrkNo,ioTime: top.dateToStr(parent.ioTime, true)}, |
| | | page: true, |
| | | limit: 16, |
| | | limits: [16, 30, 50, 100, 200, 500], |
| | | even: true, |
| | | toolbar: '#toolbar', |
| | | cellMinWidth: 50, |
| | | cols: [getCol()], |
| | | request: { |
| | | pageName: 'curr', |
| | | pageSize: 'limit' |
| | | }, |
| | | parseData: function (res) { |
| | | return { |
| | | 'code': res.code, |
| | | 'msg': res.msg, |
| | | 'count': res.data.total, |
| | | 'data': res.data.records |
| | | } |
| | | }, |
| | | response: { |
| | | statusCode: 200 |
| | | }, |
| | | done: function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCur=curr; |
| | | form.on('checkbox(tableCheckbox)', function (data) { |
| | | var _index = $(data.elem).attr('table-index')||0; |
| | | if(data.elem.checked){ |
| | | res.data[_index][data.value] = 'Y'; |
| | | }else{ |
| | | res.data[_index][data.value] = 'N'; |
| | | |
| | | function initTable() { |
| | | layui.use(['table','laydate', 'form'], function() { |
| | | table = layui.table; |
| | | var $ = layui.jquery; |
| | | var form = layui.form; |
| | | |
| | | $('#wrkNo').val(parent.wrkNo); |
| | | $('#ioTime').val(top.dateToStr(parent.ioTime, true)); |
| | | // 数据渲染 |
| | | tableIns1 = table.render({ |
| | | elem: '#wrkDetlLogByMast', |
| | | headers: {token: localStorage.getItem('token')}, |
| | | url: baseUrl+'/wrkDetlLogByMast/list/auth', |
| | | where: {wrk_no: parent.wrkNo,ioTime: top.dateToStr(parent.ioTime, true)}, |
| | | page: true, |
| | | limit: 16, |
| | | limits: [16, 30, 50, 100, 200, 500], |
| | | even: true, |
| | | toolbar: '#toolbar', |
| | | cellMinWidth: 50, |
| | | cols: [getCol()], |
| | | request: { |
| | | pageName: 'curr', |
| | | pageSize: 'limit' |
| | | }, |
| | | parseData: function (res) { |
| | | return { |
| | | 'code': res.code, |
| | | 'msg': res.msg, |
| | | 'count': res.data.total, |
| | | 'data': res.data.records |
| | | } |
| | | }); |
| | | } |
| | | }, |
| | | response: { |
| | | statusCode: 200 |
| | | }, |
| | | done: function(res, curr, count) { |
| | | if (res.code === 403) { |
| | | top.location.href = baseUrl+"/"; |
| | | } |
| | | pageCur=curr; |
| | | form.on('checkbox(tableCheckbox)', function (data) { |
| | | var _index = $(data.elem).attr('table-index')||0; |
| | | if(data.elem.checked){ |
| | | res.data[_index][data.value] = 'Y'; |
| | | }else{ |
| | | res.data[_index][data.value] = 'N'; |
| | | } |
| | | }); |
| | | if (typeof I18n !== 'undefined') { |
| | | I18n.updatePage(); |
| | | I18n.updateLayuiPagination(); |
| | | } |
| | | } |
| | | }); |
| | | }); |
| | | } |
| | | |
| | | if (typeof I18n !== 'undefined' && I18n.isReady()) { |
| | | initTable(); |
| | | } else { |
| | | $(document).on('i18n:ready', function() { |
| | | initTable(); |
| | | }); |
| | | } |
| | | |
| | | $(document).on('i18n:languageChanged', function() { |
| | | initTable(); |
| | | }); |
| | | </script> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </html> |
| | | |
| | |
| | | <div id="search-box" class="layui-form layui-card-header"> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="wrk_no" placeholder="工作号" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="wrk_no" placeholder="工作号" data-i18n-placeholder="work_no" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="wrkSts" class="layui-input" name="wrk_sts" type="text" placeholder="请输入" autocomplete="off" style="display: none"> |
| | | <input id="wrkSts$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="工作状态" onfocus=this.blur()> |
| | | <input id="wrkSts" class="layui-input" name="wrk_sts" type="text" placeholder="请输入" data-i18n-placeholder="please_enter" autocomplete="off" style="display: none"> |
| | | <input id="wrkSts$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="工作状态" data-i18n-placeholder="work_status" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="basWrkStatusQueryBywrkSts" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="basWrkStatusQueryBywrkStsSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="ioType" class="layui-input" name="io_type" type="text" placeholder="请输入" autocomplete="off" style="display: none"> |
| | | <input id="ioType$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="入出库类型" onfocus=this.blur()> |
| | | <input id="ioType" class="layui-input" name="io_type" type="text" placeholder="请输入" data-i18n-placeholder="please_enter" autocomplete="off" style="display: none"> |
| | | <input id="ioType$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="入出库类型" data-i18n-placeholder="transaction_type" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="basWrkIotypeQueryByioType" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="basWrkIotypeQueryByioTypeSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="crnNo" class="layui-input" name="crn_no" type="text" placeholder="请输入" autocomplete="off" style="display: none"> |
| | | <input id="crnNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="堆垛机号" onfocus=this.blur()> |
| | | <input id="crnNo" class="layui-input" name="crn_no" type="text" placeholder="请输入" data-i18n-placeholder="please_enter" autocomplete="off" style="display: none"> |
| | | <input id="crnNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="堆垛机号" data-i18n-placeholder="crane_no" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="basCrnpQueryBycrnNo" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="basCrnpQueryBycrnNoSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | <!-- 日期范围 --> |
| | | <div class="layui-inline" style="width: 300px"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input layui-laydate-range" name="io_time" type="text" placeholder="起始时间 - 终止时间" autocomplete="off" style="width: 300px"> |
| | | <input class="layui-input layui-laydate-range" name="io_time" type="text" placeholder="起始时间 - 终止时间" data-i18n-placeholder="start_end_time" autocomplete="off" style="width: 300px"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" type="text" name="condition" placeholder="请输入" autocomplete="off"> |
| | | <input class="layui-input" type="text" name="condition" placeholder="请输入" data-i18n-placeholder="input_placeholder" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | |
| | | <!-- 待添加 --> |
| | | <div id="data-search-btn" class="layui-btn-container layui-form-item"> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">重置</button> |
| | | <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search" data-i18n="search">搜索</button> |
| | | <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset" data-i18n="reset">重置</button> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | </div> |
| | | <script type="text/html" id="toolbar"> |
| | | <div class="layui-btn-container"> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="margin-top: 10px">导出</button> |
| | | <button class="layui-btn layui-btn-primary layui-btn-sm" id="btn-export" lay-event="exportData" style="margin-top: 10px" data-i18n="export">导出</button> |
| | | </div> |
| | | </script> |
| | | |
| | | <script type="text/html" id="operate"> |
| | | <a class="layui-btn layui-btn-xs btn-detlShow" lay-event="detlShow">明细</a> |
| | | <a class="layui-btn layui-btn-xs btn-detlShow" lay-event="detlShow" data-i18n="detail">明细</a> |
| | | <!-- <a class="layui-btn layui-btn-primary layui-btn-xs" lay-event="detail">详情</a>--> |
| | | </script> |
| | | |
| | |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/wrkMastLog/wrkMastLog.js" charset="utf-8"></script> |
| | | |
| | | <iframe id="detail-iframe" scrolling="auto" style="display:none;"></iframe> |
| | | |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </html> |
| | | |
| | |
| | | <div id="data-detail" class="layer_self_wrap"> |
| | | <form id="detail" class="layui-form"> |
| | | <div class="layui-inline" style="width:31%;display: none"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>编 号:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="id" class="layui-input" type="text" onkeyup="check(this.id, 'wrkMastLog')" lay-verify="number" > |
| | | </div> |
| | | <label class="layui-form-label"><span class="not-null">*</span><span data-i18n="id">编 号:</span></label> |
| | | <div class="layui-input-inline"> |
| | | <input id="id" class="layui-input" type="text" onkeyup="check(this.id, 'wrkMastLog')" lay-verify="number" > |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span>工 作 号:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="wrkNo" class="layui-input" type="text" onkeyup="check(this.id, 'wrkMastLog')" lay-verify="required|number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span class="not-null">*</span><span data-i18n="work_no">工 作 号:</span></label> |
| | | <div class="layui-input-inline"> |
| | | <input id="wrkNo" class="layui-input" type="text" onkeyup="check(this.id, 'wrkMastLog')" lay-verify="required|number" > |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">工作状态:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="wrkSts" class="layui-input" type="text" lay-verify="number" style="display: none"> |
| | | <input id="wrkSts$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span data-i18n="work_status">工作状态:</span></label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="wrkSts" class="layui-input" type="text" lay-verify="number" style="display: none"> |
| | | <input id="wrkSts$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." data-i18n-placeholder="input_placeholder" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="basWrkStatusQueryBywrkSts" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="basWrkStatusQueryBywrkStsSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | | </select> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">入出库类型:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="ioType" class="layui-input" type="text" lay-verify="number" style="display: none"> |
| | | <input id="ioType$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="basWrkIotypeQueryByioType" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="basWrkIotypeQueryByioTypeSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | | </select> |
| | | </div> |
| | | <label class="layui-form-label"><span data-i18n="transaction_type">入出库类型:</span></label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="ioType" class="layui-input" type="text" lay-verify="number" style="display: none"> |
| | | <input id="ioType$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." data-i18n-placeholder="input_placeholder" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="basWrkIotypeQueryByioType" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="basWrkIotypeQueryByioTypeSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">堆垛机号:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="crnNo" class="layui-input" type="text" lay-verify="number" style="display: none"> |
| | | <input id="crnNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span data-i18n="crane_no">堆垛机号:</span></label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="crnNo" class="layui-input" type="text" lay-verify="number" style="display: none"> |
| | | <input id="crnNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." data-i18n-placeholder="input_placeholder" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="basCrnpQueryBycrnNo" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="basCrnpQueryBycrnNoSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | | </select> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">优 先 级:</label> |
| | | <div class="layui-input-inline"> |
| | | <input id="ioPri" class="layui-input" type="text" lay-verify="number" > |
| | | <label class="layui-form-label"><span data-i18n="priority">优 先 级:</span></label> |
| | | <div class="layui-input-inline"> |
| | | <input id="ioPri" class="layui-input" type="text" lay-verify="number" > |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span data-i18n="target_location">目标库位:</span></label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="locNo" class="layui-input" type="text" style="display: none"> |
| | | <input id="locNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." data-i18n-placeholder="input_placeholder" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="locMastQueryBylocNo" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="locMastQueryBylocNoSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">目标库位:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="locNo" class="layui-input" type="text" style="display: none"> |
| | | <input id="locNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="locMastQueryBylocNo" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="locMastQueryBylocNoSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">目 标 站:</label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="staNo" class="layui-input" type="text" lay-verify="number" style="display: none"> |
| | | <input id="staNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label"><span data-i18n="target_station">目 标 站:</span></label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="staNo" class="layui-input" type="text" lay-verify="number" style="display: none"> |
| | | <input id="staNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." data-i18n-placeholder="input_placeholder" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="basDevpQueryBystaNo" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="basDevpQueryBystaNoSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | | </select> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">源 站:</label> |
| | | <label class="layui-form-label"><span data-i18n="source_station">源 站:</span></label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="sourceStaNo" class="layui-input" type="text" lay-verify="number" style="display: none"> |
| | | <input id="sourceStaNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | | <input id="sourceStaNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." data-i18n-placeholder="input_placeholder" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="basDevpQueryBysourceStaNo" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="basDevpQueryBysourceStaNoSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">源 库 位:</label> |
| | | <label class="layui-form-label"><span data-i18n="source_location">源 库 位:</span></label> |
| | | <div class="layui-input-inline cool-auto-complete"> |
| | | <input id="sourceLocNo" class="layui-input" type="text" style="display: none"> |
| | | <input id="sourceLocNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." onfocus=this.blur()> |
| | | <input id="sourceLocNo$" class="layui-input cool-auto-complete-div" onclick="autoShow(this.id)" type="text" placeholder="请输入..." data-i18n-placeholder="input_placeholder" onfocus=this.blur()> |
| | | <div class="cool-auto-complete-window"> |
| | | <input class="cool-auto-complete-window-input" data-key="locMastQueryBysourceLocNo" onkeyup="autoLoad(this.getAttribute('data-key'))"> |
| | | <select class="cool-auto-complete-window-select" data-key="locMastQueryBysourceLocNoSelect" onchange="confirmed(this.getAttribute('data-key'))" multiple="multiple"> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">拣 料:</label> |
| | | <label class="layui-form-label"><span data-i18n="picking">拣 料:</span></label> |
| | | <div class="layui-input-inline"> |
| | | <input id="picking" class="layui-input" type="checkBox" lay-skin="primary" lay-filter='detailCheckbox'> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">退 出:</label> |
| | | <label class="layui-form-label"><span data-i18n="exit">退 出:</span></label> |
| | | <div class="layui-input-inline"> |
| | | <input id="exitMk" class="layui-input" type="checkBox" lay-skin="primary" lay-filter='detailCheckbox'> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">空 板:</label> |
| | | <label class="layui-form-label"><span data-i18n="empty_pallet">空 板:</span></label> |
| | | <div class="layui-input-inline"> |
| | | <input id="emptyMk" class="layui-input" type="checkBox" lay-skin="primary" lay-filter='detailCheckbox'> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">工作时间:</label> |
| | | <label class="layui-form-label"><span data-i18n="work_time">工作时间:</span></label> |
| | | <div class="layui-input-inline"> |
| | | <input id="ioTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label" style="font-size: x-small">堆垛机启动时间:</label> |
| | | <label class="layui-form-label" style="font-size: x-small"><span data-i18n="crane_start_time">堆垛机启动时间:</span></label> |
| | | <div class="layui-input-inline"> |
| | | <input id="crnStrTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label" style="font-size: x-small">堆垛机停止时间:</label> |
| | | <label class="layui-form-label" style="font-size: x-small"><span data-i18n="crane_end_time">堆垛机停止时间:</span></label> |
| | | <div class="layui-input-inline"> |
| | | <input id="crnEndTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">拣料时间:</label> |
| | | <label class="layui-form-label"><span data-i18n="picking_time">拣料时间:</span></label> |
| | | <div class="layui-input-inline"> |
| | | <input id="plcStrTime$" class="layui-input" type="text" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">条 码:</label> |
| | | <label class="layui-form-label"><span data-i18n="barcode">条 码:</span></label> |
| | | <div class="layui-input-inline"> |
| | | <input id="barcode" class="layui-input" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="width:31%;"> |
| | | <label class="layui-form-label">满 板:</label> |
| | | <label class="layui-form-label"><span data-i18n="full_pallet">满 板:</span></label> |
| | | <div class="layui-input-inline"> |
| | | <input id="fullPlt" class="layui-input" type="checkBox" lay-skin="primary" lay-filter='detailCheckbox'> |
| | | </div> |
| | |
| | | <hr class="layui-bg-gray"> |
| | | |
| | | <div id="data-detail-btn" class="layui-btn-container layui-form-item"> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close">关闭</div> |
| | | <div id="data-detail-submit-save" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="save" data-i18n="save">保存</div> |
| | | <div id="data-detail-submit-edit" type="button" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit" data-i18n="modify">修改</div> |
| | | <div id="data-detail-close" type="button" class="layui-btn" lay-submit lay-filter="close" data-i18n="close">关闭</div> |
| | | </div> |
| | | |
| | | <div id="prompt"> |
| | | 温馨提示:请仔细填写相关信息,<span class="extrude"><span class="not-null">*</span> 为必填选项。</span> |
| | | <span data-i18n="warm_prompt_prefix">温馨提示:请仔细填写相关信息,</span><span class="extrude"><span class="not-null">*</span> <span data-i18n="warm_prompt_suffix">为必填选项。</span></span> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | </body> |
| | | <script src="../../static/js/translate.js"></script> |
| | | <script> |
| | | <!-- <script src="../../static/js/translate.js"></script> --> |
| | | <!-- <script> |
| | | translate.selectLanguageTag.show = false; //不出现的select的选择语言 |
| | | translate.service.use('client.edge'); //设置翻译服务 |
| | | translate.listener.start(); //开启页面元素动态监控,js改变的内容也会被翻译,参考文档: http://translate.zvo.cn/4067.html |
| | | translate.execute(); |
| | | </script> |
| | | </script> --> |
| | | <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script> |
| | | <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script> |
| | | <script type="text/javascript" src="../../static/js/i18n/i18n-helper.js"></script> |
| | | <script type="text/javascript" src="../../static/js/wrkMastLog/wrkMastLog.js" charset="utf-8"></script> |
| | | </html> |
| | | |