Exemplo n.º 1
0
        private void OnSave()
        {
            if (this.eventSave != null)
            {
                SaveEventArgs dataArgs = new SaveEventArgs();
                if (this.tscb_dataList.SelectedItem != null)
                {
                    EnumDataList enumDataList = (EnumDataList)Enum.Parse(typeof(EnumDataList), this.tscb_dataList.SelectedItem.ToString());
                    dataArgs.EnumDataList = enumDataList;
                    switch (enumDataList)
                    {
                    case EnumDataList.管理任务表:
                        if (this.dgv_DataDetail.SelectedRows.Count > 0)
                        {
                            long            listID        = long.Parse(this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskID"].Value.ToString());
                            ManageTaskModel manaTaskModel = new ManageTaskModel();
                            manaTaskModel.TaskID           = listID;
                            manaTaskModel.TaskCreateTime   = DateTime.Parse(this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskCreateTime"].Value.ToString());
                            manaTaskModel.TaskCode         = this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskCode"].Value.ToString();
                            manaTaskModel.TaskID           = long.Parse(this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskID"].Value.ToString());
                            manaTaskModel.TaskCreatePerson = this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskCreatePerson"].Value.ToString();
                            manaTaskModel.TaskType         = this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskType"].Value.ToString();
                            manaTaskModel.TaskStartArea    = this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskStartArea"].Value.ToString();
                            manaTaskModel.TaskStartPostion = this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskStartPostion"].Value.ToString();
                            manaTaskModel.TaskEndArea      = this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskEndArea"].Value.ToString();
                            manaTaskModel.TaskEndPostion   = this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskEndPostion"].Value.ToString();

                            manaTaskModel.TaskStatus   = this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskStatus"].Value.ToString();
                            manaTaskModel.TaskTypeName = this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskTypeName"].Value.ToString();
                            dataArgs.EditModel         = manaTaskModel;
                            this.eventSave.Invoke(this, dataArgs);
                        }


                        break;

                    case EnumDataList.控制接口表:
                        if (this.dgv_DataDetail.SelectedRows.Count > 0)
                        {
                            long listID = long.Parse(this.dgv_DataDetail.Rows[editRowIndex].Cells["ControlInterfaceID"].Value.ToString());

                            ControlInterfaceModel ctrlInterModel = new ControlInterfaceModel();
                            ctrlInterModel.ControlInterfaceID = listID;
                            ctrlInterModel.CreateTime         = DateTime.Parse(this.dgv_DataDetail.Rows[editRowIndex].Cells["CreateTime"].Value.ToString());
                            ctrlInterModel.DeviceCode         = this.dgv_DataDetail.Rows[editRowIndex].Cells["DeviceCode"].Value.ToString();
                            ctrlInterModel.InterfaceParameter = this.dgv_DataDetail.Rows[editRowIndex].Cells["InterfaceParameter"].Value.ToString();
                            ctrlInterModel.InterfaceStatus    = this.dgv_DataDetail.Rows[editRowIndex].Cells["InterfaceStatus"].Value.ToString();
                            ctrlInterModel.InterfaceType      = this.dgv_DataDetail.Rows[editRowIndex].Cells["InterfaceType"].Value.ToString();
                            ctrlInterModel.TaskCode           = this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskCode"].Value.ToString();
                            dataArgs.EditModel = ctrlInterModel;
                            this.eventSave.Invoke(this, dataArgs);
                        }

                        break;

                    case EnumDataList.控制任务表:
                        if (this.dgv_DataDetail.SelectedRows.Count > 0)
                        {
                            long             listID      = long.Parse(this.dgv_DataDetail.Rows[editRowIndex].Cells["ControlTaskID"].Value.ToString());
                            ControlTaskModel controlTask = new ControlTaskModel();
                            controlTask.ControlTaskID = listID;
                            controlTask.ControlCode   = this.dgv_DataDetail.Rows[editRowIndex].Cells["ControlCode"].Value.ToString();
                            controlTask.TaskTypeCode  = int.Parse(this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskTypeCode"].Value.ToString());
                            controlTask.TaskID        = long.Parse(this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskID"].Value.ToString());
                            controlTask.CreateMode    = this.dgv_DataDetail.Rows[editRowIndex].Cells["CreateMode"].Value.ToString();
                            controlTask.TaskType      = this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskType"].Value.ToString();
                            controlTask.StartArea     = this.dgv_DataDetail.Rows[editRowIndex].Cells["StartArea"].Value.ToString();
                            controlTask.StartDevice   = this.dgv_DataDetail.Rows[editRowIndex].Cells["StartDevice"].Value.ToString();
                            controlTask.TargetArea    = this.dgv_DataDetail.Rows[editRowIndex].Cells["TargetArea"].Value.ToString();
                            controlTask.TargetDevice  = this.dgv_DataDetail.Rows[editRowIndex].Cells["TargetDevice"].Value.ToString();
                            controlTask.TaskID        = long.Parse(this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskID"].Value.ToString());
                            controlTask.TaskStatus    = this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskStatus"].Value.ToString();
                            controlTask.TaskTypeName  = this.dgv_DataDetail.Rows[editRowIndex].Cells["TaskTypeName"].Value.ToString();
                            controlTask.CreateTime    = DateTime.Parse(this.dgv_DataDetail.Rows[editRowIndex].Cells["CreateTime"].Value.ToString());
                            dataArgs.EditModel        = controlTask;
                            this.eventSave.Invoke(this, dataArgs);
                        }
                        break;

                    case EnumDataList.库存列表:
                        if (this.dgv_DataDetail.SelectedRows.Count > 0)
                        {
                            long           listID         = long.Parse(this.dgv_DataDetail.Rows[editRowIndex].Cells["StockListID"].Value.ToString());
                            StockListModel stockListModel = new StockListModel();
                            stockListModel.StockListID      = listID;
                            stockListModel.GoodsSiteName    = this.dgv_DataDetail.Rows[editRowIndex].Cells["GoodsSiteName"].Value.ToString();
                            stockListModel.InHouseTime      = DateTime.Parse(this.dgv_DataDetail.Rows[editRowIndex].Cells["InHouseTime"].Value.ToString());
                            stockListModel.ManaTaskID       = long.Parse(this.dgv_DataDetail.Rows[editRowIndex].Cells["ManaTaskID"].Value.ToString());
                            stockListModel.ProductCode      = this.dgv_DataDetail.Rows[editRowIndex].Cells["ProductCode"].Value.ToString();
                            stockListModel.ProductName      = this.dgv_DataDetail.Rows[editRowIndex].Cells["ProductName"].Value.ToString();
                            stockListModel.ProductNum       = int.Parse(this.dgv_DataDetail.Rows[editRowIndex].Cells["ProductNum"].Value.ToString());
                            stockListModel.ProductStatus    = this.dgv_DataDetail.Rows[editRowIndex].Cells["ProductStatus"].Value.ToString();
                            stockListModel.StockID          = long.Parse(this.dgv_DataDetail.Rows[editRowIndex].Cells["StockID"].Value.ToString());
                            stockListModel.StoreHouseName   = this.dgv_DataDetail.Rows[editRowIndex].Cells["StoreHouseName"].Value.ToString();
                            stockListModel.UpdateTime       = DateTime.Parse(this.dgv_DataDetail.Rows[editRowIndex].Cells["UpdateTime"].Value.ToString());
                            stockListModel.ProductBatchNum  = this.dgv_DataDetail.Rows[editRowIndex].Cells["ProductBatchNum"].Value.ToString();
                            stockListModel.ProductFrameCode = this.dgv_DataDetail.Rows[editRowIndex].Cells["ProductFrameCode"].Value.ToString();
                            dataArgs.EditModel = stockListModel;
                            this.eventSave.Invoke(this, dataArgs);
                        }
                        break;

                    default:
                        break;
                    }
                }
            }
        }
Exemplo n.º 2
0
        private void InStoreByHandEventHandler(object sender, InStoreByHandEventArgs e)
        {
            int            taskTypeCode   = (int)(EnumTaskName)Enum.Parse(typeof(EnumTaskName), e.TaskTypeName);
            TaskTypeModel  taskType       = bllTaskType.GetModel(taskTypeCode);
            GoodsSiteModel goodsSiteModel = null;

            string[] trayIDs = SplitStringArray(e.TrayIDs);

            if (trayIDs != null)
            {
                for (int i = 0; i < trayIDs.Length; i++)
                {
                    TB_Tray_indexModel trayModel = bllTbTrayIndex.GetModel(trayIDs[i]);
                    if (trayModel == null)
                    {
                        this.View.ShowMessage("信息提示", "条码:“" + trayIDs[i] + "”不存在此条码信息,请重新输入");

                        return;
                    }
                }
            }
            int createStatus = this.View.AskMessBox("您确定要手动生成“" + e.TaskTypeName + "”任务么?");

            if (createStatus == 0)
            {
                if (taskType != null)//控制任务接口插入一个任务申请
                {
                    if (taskType.TaskTypeCode == (int)EnumTaskName.空料框出库)
                    {
                        //查询空料框
                        goodsSiteModel = bllGoodsSite.GetGoodsSite(taskType.StartLogicAreaID, EnumGSStoreStatus.空料框, EnumGSRunStatus.任务完成, EnumGSType.货位);
                        if (goodsSiteModel == null)
                        {
                            if (mainPres != null)
                            {
                                mainPres.ShowLog(ECAMSModel.EnumLogCategory.管理层日志, EnumLogType.提示, "库中没有空料框了,手动生成“"
                                                 + e.TaskTypeName + "”任务失败!");
                            }
                            return;
                        }
                        else
                        {
                            ControlInterfaceModel controlInterModel = new ControlInterfaceModel();
                            controlInterModel.CreateTime      = DateTime.Now;
                            controlInterModel.DeviceCode      = taskType.EndDevice;
                            controlInterModel.InterfaceStatus = EnumCtrlInterStatus.未生成.ToString();
                            controlInterModel.InterfaceType   = EnumTaskCategory.出库.ToString();
                            //生成控制条码 需要跟控制层
                            controlInterModel.TaskCode           = bllControlInter.GetNewTaskCode();
                            controlInterModel.InterfaceParameter = e.TrayIDs;
                            long controlInterID = bllControlInter.Add(controlInterModel);
                            if (controlInterID != 1)
                            {
                                if (mainPres != null)
                                {
                                    mainPres.ShowLog(ECAMSModel.EnumLogCategory.管理层日志, EnumLogType.提示, "用户:" + this.userNameStr + ",手动生成“"
                                                     + e.TaskTypeName + "”任务成功!");
                                    //mainPres.View.AddLog(ECAMSModel.EnumLogCategory.管理层日志, EnumLogType.提示, "手动生成“" + e.TaskTypeName + "”任务成功!");
                                }
                            }
                        }
                    }
                    else if (taskType.TaskTypeCode == (int)EnumTaskName.电芯入库_A1 || taskType.TaskTypeCode == (int)EnumTaskName.电芯入库_B1 ||
                             taskType.TaskTypeCode == (int)EnumTaskName.分容入库_A1 || taskType.TaskTypeCode == (int)EnumTaskName.空料框入库)
                    {
                        goodsSiteModel = bllGoodsSite.GetGoodsSite(taskType.EndLogicAreaID, EnumGSStoreStatus.空货位, EnumGSRunStatus.待用, EnumGSType.货位);
                        if (goodsSiteModel == null)
                        {
                            if (mainPres != null)
                            {
                                mainPres.ShowLog(ECAMSModel.EnumLogCategory.管理层日志, EnumLogType.提示, "用户:" + this.userNameStr + ",库中没有空料框了,手动生成“" + e.TaskTypeName + "”任务失败!");
                            }
                            return;
                        }
                        else
                        {
                            ControlInterfaceModel controlInterModel = new ControlInterfaceModel();
                            controlInterModel.CreateTime         = DateTime.Now;
                            controlInterModel.DeviceCode         = taskType.StartDevice;
                            controlInterModel.InterfaceStatus    = EnumCtrlInterStatus.未生成.ToString();
                            controlInterModel.InterfaceType      = EnumTaskCategory.入库.ToString();
                            controlInterModel.InterfaceParameter = e.TrayIDs;
                            controlInterModel.TaskCode           = bllControlInter.GetNewTaskCode();
                            long controlInterID = bllControlInter.Add(controlInterModel);
                            if (controlInterID != 1)
                            {
                                if (mainPres != null)
                                {
                                    mainPres.ShowLog(ECAMSModel.EnumLogCategory.管理层日志, EnumLogType.提示, "用户:" + this.userNameStr
                                                     + ",手动生成“" + e.TaskTypeName + "”任务成功!");
                                }
                            }
                        }
                    }
                }
                DataTable dtCtrlTaskList = bllControlTask.GetCtrlDatatable(this.currentEnumTaskName, this.currentEnumTaskStatus
                                                                           , this.currentHouseName, this.currentCreateMode, this.currentTaskType);
                this.View.ShowControlTaskData(dtCtrlTaskList);
            }
        }