/// <summary>
        /// 重新窗体消息处理函数
        /// </summary>
        /// <param name="m">窗体消息</param>
        protected override void DefWndProc(ref Message m)
        {
            switch (m.Msg)
            {
            //接收自定义消息,放弃未提交的单据号
            case WndMsgSender.CloseMsg:
                // 放弃未使用的单据号
                m_billNoControl.CancelBill();
                break;

            case WndMsgSender.PositioningMsg:
                WndMsgData msg      = new WndMsgData();     //这是创建自定义信息的结构
                Type       dataType = msg.GetType();

                msg = (WndMsgData)m.GetLParam(dataType);    //这里获取的就是作为LParam参数发送来的信息的结构

                DataTable dtMessage = UniversalFunction.PositioningOneRecord(msg.MessageContent, "挑选返工返修单");

                if (dtMessage.Rows.Count == 0)
                {
                    m_msgPromulgator.DestroyMessage(msg.MessageContent);
                    MessageDialog.ShowPromptMessage("未找到相关记录");
                }
                else
                {
                    dataGridView1.DataSource       = dtMessage;
                    dataGridView1.Rows[0].Selected = true;
                }
                break;

            default:
                base.DefWndProc(ref m);
                break;
            }
        }
        /// <summary>
        /// 重新窗体消息处理函数
        /// </summary>
        /// <param name="message">窗体消息</param>
        protected override void DefWndProc(ref Message message)
        {
            switch (message.Msg)
            {
            case WndMsgSender.CloseMsg:
                break;

            case WndMsgSender.PositioningMsg:
                WndMsgData msg      = new WndMsgData();     //这是创建自定义信息的结构
                Type       dataType = msg.GetType();

                msg = (WndMsgData)message.GetLParam(dataType);    //这里获取的就是作为LParam参数发送来的信息的结构

                DataTable dtMessage = UniversalFunction.PositioningOneRecord(msg.MessageContent, "零星采购申请单");

                if (dtMessage.Rows.Count == 0)
                {
                    m_billMessageServer.DestroyMessage(msg.MessageContent);
                    MessageDialog.ShowPromptMessage("未找到相关记录");
                }
                else
                {
                    dataGridView1.DataSource       = dtMessage;
                    dataGridView1.Rows[0].Selected = true;
                }
                break;

            default:
                base.DefWndProc(ref message);
                break;
            }
        }
Esempio n. 3
0
        /// <summary>
        /// 重新窗体消息处理函数
        /// </summary>
        /// <param name="message">窗体消息</param>
        protected override void DefWndProc(ref Message message)
        {
            switch (message.Msg)
            {
            case WndMsgSender.ShowSpecificData:     // 显示特定数据的消息

                WndMsgData msg1      = new WndMsgData();
                Type       dataType1 = msg1.GetType();

                msg1 = (WndMsgData)message.GetLParam(dataType1);

                // 人员工号
                string workID = (string)GeneralFunction.IntPtrToClass(msg1.ObjectMessage, msg1.BytesOfObjectMessage);

                PositioningRecord(workID);

                break;

            case WndMsgSender.WarningNotice:        // 系统预警消息

                WndMsgData msg2      = new WndMsgData();
                Type       dataType2 = msg2.GetType();

                msg2 = (WndMsgData)message.GetLParam(dataType2);

                // 预警数据
                List <string> lstData = (List <string>)GeneralFunction.IntPtrToClass(msg2.ObjectMessage, msg2.BytesOfObjectMessage);

                PositioningRecord(lstData[0]);

                break;

            case WndMsgSender.PositioningMsg:
                WndMsgData msg      = new WndMsgData();     //这是创建自定义信息的结构
                Type       dataType = msg.GetType();

                msg = (WndMsgData)message.GetLParam(dataType);    //这里获取的就是作为LParam参数发送来的信息的结构

                DataTable dtMessage = UniversalFunction.PositioningOneRecord(msg.MessageContent, "部门调动申请单");

                if (dtMessage.Rows.Count == 0)
                {
                    m_billMessageServer.DestroyMessage(msg.MessageContent);
                    MessageDialog.ShowPromptMessage("未找到相关记录");
                }
                else
                {
                    dataGridView1.DataSource       = dtMessage;
                    dataGridView1.Rows[0].Selected = true;
                }
                break;

            default:
                base.DefWndProc(ref message);
                break;
            }
        }
Esempio n. 4
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            GetMessage();

            if (!m_serverQualityProblem.SaveAssemblingAnalysisScheduleInfo(m_lnqAssemblingAnalysis, out m_strErr))
            {
                MessageDialog.ShowPromptMessage(m_strErr);
                return;
            }
            else
            {
                MessageDialog.ShowPromptMessage("保存成功");

                List <string> strList = new List <string>();

                string strDepartment = m_serverDepartment.GetDeptInfoFromPersonnelInfo(BasicInfo.LoginID).Rows[0]["DepartmentCode"].ToString();

                IQueryable <View_HR_Personnel> iqList = m_serverPersonnel.GetDeptDirector(strDepartment);

                foreach (var item in iqList)
                {
                    strList.Add(item.工号);
                }

                m_billMessageServer.DestroyMessage(m_lnqAssemblingAnalysis.Bill_ID);
                m_billMessageServer.SendNewFlowMessage(m_lnqAssemblingAnalysis.Bill_ID, string.Format("{0} 号搭车分析计划表,请部门主管审核", m_lnqAssemblingAnalysis.Bill_ID),
                                                       BillFlowMessage_ReceivedUserType.用户, strList);

                this.Close();
            }
        }
Esempio n. 5
0
        private void 提交toolStripButton1_Click(object sender, EventArgs e)
        {
            if (txtApplicant.Tag.ToString() == BasicInfo.LoginID)
            {
                if (cmbNewDept.SelectedIndex == -1 || cmbNewWorkPost.SelectedIndex == -1)
                {
                    MessageDialog.ShowPromptMessage("请选择调入部门和所申请的岗位!");
                    return;
                }

                if (txtChangeReason.Text.Trim() == "")
                {
                    MessageDialog.ShowPromptMessage("请选择调动原因!");
                    return;
                }

                m_billNo = m_PostChangeServer.AddPostChange(GetPostChange(), out m_error).ToString();

                if (m_billNo == "0")
                {
                    MessageDialog.ShowPromptMessage(m_error);
                    return;
                }

                m_billMessageServer.DestroyMessage(m_billNo.ToString());
                m_billMessageServer.SendNewFlowMessage(m_billNo.ToString(), string.Format("{0}号部门调动申请,请调出部门负责人审核", m_billNo),
                                                       BillFlowMessage_ReceivedUserType.角色, m_billMessageServer.GetDeptPrincipalRoleName(txtOldDept.Tag.ToString()).ToList());

                this.Close();
            }
            else
            {
                MessageDialog.ShowPromptMessage("您不是申请人本人,不能进行此操作!");
            }
        }
        /// <summary>
        /// 报废入库单单号对应的所有挑返单
        /// </summary>
        /// <param name="inDepotBillID">入库单单号</param>
        /// <param name="error">出错时返回错误信息</param>
        /// <returns>操作是否成功的标志</returns>
        public bool ScrapAllBill(string inDepotBillID, out string error)
        {
            try
            {
                error = null;

                DepotManagementDataContext dataContxt = CommentParameter.DepotDataContext;

                var varData = from a in dataContxt.S_CheckReturnRepairBill
                              where a.InDepotBillID == inDepotBillID
                              select a;

                IBillMessagePromulgatorServer msgServer = BasicServerFactory.GetServerModule <IBillMessagePromulgatorServer>();

                foreach (var item in varData)
                {
                    S_CheckReturnRepairBill lnqReturn = item;

                    lnqReturn.DJZT = "单据已报废";

                    msgServer.DestroyMessage(item.DJH);
                }

                dataContxt.SubmitChanges();
                return(true);
            }
            catch (Exception ex)
            {
                error = ex.Message;
                return(false);
            }
        }
        private void btnPropose_Click(object sender, EventArgs e)
        {
            if (!CheckData())
            {
                return;
            }

            GetInfo();

            if (!m_serverReturn.ProposeBill(m_lnqBill, m_dtList, out m_strError))
            {
                MessageDialog.ShowPromptMessage(m_strError);
            }
            else
            {
                m_billMessageServer.DestroyMessage(m_lnqBill.BillNo);
                m_billMessageServer.SendNewFlowMessage(m_lnqBill.BillNo,
                                                       string.Format("{0}号还货单已提交,请等待上级审核", m_lnqBill.BillNo),
                                                       PlatformManagement.BillFlowMessage_ReceivedUserType.角色,
                                                       m_billMessageServer.GetSuperior(CE_RoleStyleType.级领导, BasicInfo.LoginID));

                MessageDialog.ShowPromptMessage("提交成功");
                this.Close();
            }
        }
Esempio n. 8
0
        private void  除单据ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (dataGridView1.SelectedRows.Count == 1)
            {
                if (dataGridView1.CurrentRow.Cells["单据状态"].Value.ToString() == "已完成" ||
                    dataGridView1.CurrentRow.Cells["记录人"].Value.ToString() != BasicInfo.LoginName)
                {
                    MessageDialog.ShowPromptMessage("单据已经完成或记录人员非本人!不能删除");
                    return;
                }

                if (!m_tcuRepairServer.DeleteData(dataGridView1.CurrentRow.Cells["单号"].Value.ToString(), out m_error))
                {
                    MessageDialog.ShowPromptMessage(m_error);
                    return;
                }

                if (MessageBox.Show("您是否确定要删除单据号为【" + dataGridView1.CurrentRow.Cells["单号"].Value.ToString() + "】",
                                    "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    m_billMessageServer.DestroyMessage(dataGridView1.CurrentRow.Cells["单号"].Value.ToString());
                    RefreshControl();
                }
            }
        }
Esempio n. 9
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            GetData();

            if (m_lnqRevisedAbolishedBill.BillStatus == "单据已完成")
            {
                MessageDialog.ShowPromptMessage("流程状态错误");
                return;
            }

            MessageDialog.ShowPromptMessage("请选择下一步流程操作人员");

            FormSelectPersonnel2 frm = new FormSelectPersonnel2();

            if (frm.ShowDialog() != DialogResult.OK)
            {
                return;
            }

            if (!m_serverRevisedAbolishedBill.AddInfo(m_lnqRevisedAbolishedBill, out m_strErr))
            {
                MessageDialog.ShowPromptMessage(m_strErr);
            }
            else
            {
                m_strBillNo = txtBillNo.Text;

                BillFlowMessage_ReceivedUserType userType =
                    GlobalObject.GeneralFunction.StringConvertToEnum <BillFlowMessage_ReceivedUserType>(frm.SelectedNotifyPersonnelInfo.UserType);

                List <string> notifyList = new List <string>();

                foreach (PersonnelBasicInfo pbi in frm.SelectedNotifyPersonnelInfo.PersonnelBasicInfoList)
                {
                    switch (userType)
                    {
                    case BillFlowMessage_ReceivedUserType.用户:
                        notifyList.Add(pbi.工号);
                        break;

                    case BillFlowMessage_ReceivedUserType.角色:
                        notifyList.Add(pbi.角色);
                        break;

                    default:
                        break;
                    }
                }

                m_billMessageServer.DestroyMessage(m_lnqRevisedAbolishedBill.BillNo);
                m_billMessageServer.SendNewFlowMessage(m_lnqRevisedAbolishedBill.BillNo,
                                                       string.Format("{0}号文件修订废止申请单已提交,请审核", m_lnqRevisedAbolishedBill.BillNo),
                                                       userType, notifyList);

                MessageDialog.ShowPromptMessage("提交成功");
                this.Close();
            }
        }
Esempio n. 10
0
        private void btCreat_Click(object sender, EventArgs e)
        {
            if (txtReason.Text.Trim() == "")
            {
                MessageDialog.ShowPromptMessage("请填写隔离原因");
                return;
            }
            else if (txtMeansAndAsk.Text.Trim() == "")
            {
                MessageDialog.ShowPromptMessage("请填写处理方法和要求");
                return;
            }


            合格品处理部门 form = new  合格品处理部门();

            form.ShowDialog();

            if (!form.BlFlag)
            {
                MessageDialog.ShowPromptMessage("请选择要求的处理部门");
                return;
            }
            else
            {
                m_strCLBM = form.StrCLBM;
            }

            GetMessage();

            DataTable dt = (DataTable)dataGridView1.DataSource;

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                if (dt.Rows[i]["选"].ToString() != "0")
                {
                    m_lnqIslation.DJH      = m_billNoControl.GetNewBillNo();
                    m_lnqIslation.BatchNo  = dt.Rows[i]["批次号"].ToString();
                    m_lnqIslation.Amount   = Convert.ToDecimal(dt.Rows[i]["库存数量"]);
                    m_lnqIslation.Provider = dt.Rows[i]["供货单位"].ToString();

                    if (m_serverIsolation.UpdateBill(m_lnqIslation, false, out m_err))
                    {
                        m_billMessageServer.DestroyMessage(m_lnqIslation.DJH);
                        m_billMessageServer.SendNewFlowMessage(m_lnqIslation.DJH,
                                                               string.Format("{0}号不合格品隔离处置单已提交,请等待主管审核", m_lnqIslation.DJH),
                                                               BillFlowMessage_ReceivedUserType.角色, m_billMessageServer.GetSuperior(CE_RoleStyleType.级领导, BasicInfo.LoginID));
                    }
                    else
                    {
                        MessageDialog.ShowErrorMessage(m_err);
                        return;
                    }
                }
            }

            this.Close();
        }
Esempio n. 11
0
        private void btnAdd_Click(object sender, EventArgs e)
        {
            if (llbProposerDownLoad.Tag == null)
            {
                MessageDialog.ShowPromptMessage("请上传申请文件");
                return;
            }

            GetData();

            if (m_lnqReleaseProcess.SDBStatus == "流程已结束")
            {
                MessageDialog.ShowPromptMessage("流程状态错误");
                return;
            }

            MessageDialog.ShowPromptMessage("请选择下一步流程操作人员");

            FormSelectPersonnel2 frm = new FormSelectPersonnel2();

            if (frm.ShowDialog() != DialogResult.OK)
            {
                return;
            }

            if (!m_serverReleaseProcess.AddProcess(m_lnqReleaseProcess, out m_strErr))
            {
                MessageDialog.ShowPromptMessage(m_strErr);
            }
            else
            {
                m_strSDBNo = txtSDBNo.Text;

                List <string> list = new List <string>();

                foreach (PersonnelBasicInfo pbi in frm.SelectedNotifyPersonnelInfo.PersonnelBasicInfoList)
                {
                    if (pbi.工号 != null && pbi.工号.Length > 0)
                    {
                        list.Add(pbi.工号);
                    }
                }

                m_billMessageServer.DestroyMessage(m_lnqReleaseProcess.SDBNo);
                m_billMessageServer.SendNewFlowMessage(m_lnqReleaseProcess.SDBNo,
                                                       string.Format("【文件编号】:{0} 【文件名】:{1} ※※※ 等待处理", m_lnqReleaseProcess.FileNo, m_lnqReleaseProcess.FileName),
                                                       BillFlowMessage_ReceivedUserType.用户, list);

                MessageDialog.ShowPromptMessage("提交成功");
                this.Close();
            }
        }
        /// <summary>
        /// 重新窗体消息处理函数
        /// </summary>
        /// <param name="m">窗体消息</param>
        protected override void DefWndProc(ref Message m)
        {
            switch (m.Msg)
            {
            //接收自定义消息,放弃未提交的单据号
            case WndMsgSender.CloseMsg:
                // 放弃未使用的单据号
                m_billNoControl.CancelBill();
                break;

            case WndMsgSender.PositioningMsg:
                WndMsgData msg      = new WndMsgData();     //这是创建自定义信息的结构
                Type       dataType = msg.GetType();

                msg = (WndMsgData)m.GetLParam(dataType);    //这里获取的就是作为LParam参数发送来的信息的结构

                DataTable dtMessage = UniversalFunction.PositioningOneRecord(msg.MessageContent, "不合格品隔离处置单");

                if (dtMessage.Rows.Count == 0)
                {
                    m_billMessageServer.DestroyMessage(msg.MessageContent);
                    MessageDialog.ShowPromptMessage("未找到相关记录");
                }
                else
                {
                    RefreshDataGirdView(GlobalObject.DataConverter.DataTableToList <View_S_IsolationManageBill>(dtMessage));

                    dataGridView1.Rows[0].Selected = true;
                }

                break;

            default:
                base.DefWndProc(ref m);
                break;
            }
        }
Esempio n. 13
0
        /// <summary>
        /// 重新窗体消息处理函数
        /// </summary>
        /// <param name="m">窗体消息</param>
        protected override void DefWndProc(ref Message m)
        {
            switch (m.Msg)
            {
            //接收自定义消息,放弃未提交的单据号
            case WndMsgSender.CloseMsg:
                break;

            case WndMsgSender.PositioningMsg:
                WndMsgData msg      = new WndMsgData();     //这是创建自定义信息的结构
                Type       dataType = msg.GetType();

                msg = (WndMsgData)m.GetLParam(dataType);    //这里获取的就是作为LParam参数发送来的信息的结构

                DataTable dtMessage = UniversalFunction.PositioningOneRecord(msg.MessageContent, "采购计划");

                if (dtMessage.Rows.Count == 0)
                {
                    m_msgPromulgator.DestroyMessage(msg.MessageContent);
                    MessageDialog.ShowPromptMessage("未找到相关记录");
                }
                else
                {
                    cmbYear.Text  = msg.MessageContent.ToString().Substring(0, 4);
                    cmbMonth.Text = msg.MessageContent.ToString().Substring(4, 2);
                    btnFind_Click(null, null);
                    //dataGridView1.DataSource = dtMessage;
                }

                break;

            default:
                base.DefWndProc(ref m);
                break;
            }
        }
        /// <summary>
        /// 重新窗体消息处理函数
        /// </summary>
        /// <param name="m">窗体消息</param>
        protected override void DefWndProc(ref Message m)
        {
            switch (m.Msg)
            {
            //接收自定义消息,放弃未提交的单据号
            case WndMsgSender.CloseMsg:
                m_serverQualityProblem.DeleteExcessSchedule(out m_strErr);
                // 放弃未使用的单据号
                break;

            case WndMsgSender.PositioningMsg:
                WndMsgData msg      = new WndMsgData();     //这是创建自定义信息的结构
                Type       dataType = msg.GetType();

                msg = (WndMsgData)m.GetLParam(dataType);    //这里获取的就是作为LParam参数发送来的信息的结构

                DataTable dtMessage = UniversalFunction.PositioningOneRecord(msg.MessageContent, "质量问题整改处置单");

                if (dtMessage.Rows.Count == 0)
                {
                    m_billMessageServer.DestroyMessage(msg.MessageContent);
                    MessageDialog.ShowPromptMessage("未找到相关记录");
                }
                else
                {
                    dataGridView1.DataSource       = dtMessage;
                    dataGridView1.Rows[0].Selected = true;
                }

                break;

            default:
                base.DefWndProc(ref m);
                break;
            }
        }
Esempio n. 15
0
        /// <summary>
        /// 保存事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                if (m_strDJZTFlag == "已确认")
                {
                    return;
                }

                BASE_Storage storageInfo_Out = UniversalFunction.GetStorageInfo(cmbOutStorage.Text);
                BASE_Storage storageInfo_In  = UniversalFunction.GetStorageInfo(cmbInStorage.Text);

                if (storageInfo_In.StorageID == storageInfo_Out.StorageID)
                {
                    throw new Exception("【入库库房】与【出库库房】是同一库房,无法操作");
                }

                if (storageInfo_In.ZeroCostFlag != storageInfo_Out.ZeroCostFlag)
                {
                    throw new Exception("【入库库房】与【出库库房】财务结算属性不一致,不能相互调拨");
                }

                DataTable dt = (DataTable)dgv_Main.DataSource;

                m_billInfoLnq.ID           = m_intDJID;
                m_billInfoLnq.DJH          = txtSellID.Text;
                m_billInfoLnq.LRRY         = BasicInfo.LoginID;
                m_billInfoLnq.LRRQ         = ServerTime.Time;
                m_billInfoLnq.Price        = Convert.ToDecimal(txtPrice.Text);
                m_billInfoLnq.Remark       = txtRemarkAll.Text;
                m_billInfoLnq.OutStoreRoom = storageInfo_Out.StorageID;
                m_billInfoLnq.InStoreRoom  = storageInfo_In.StorageID;

                m_serverCannibalize.SaveBill(dt, m_billInfoLnq);
                m_billMessageServer.DestroyMessage(txtSellID.Text);
                m_billMessageServer.SendNewFlowMessage(txtSellID.Text, string.Format("{0} 号库房调拨单,请主管审核", txtSellID.Text),
                                                       BillFlowMessage_ReceivedUserType.角色, m_billMessageServer.GetSuperior(CE_RoleStyleType.级领导, BasicInfo.LoginID));

                MessageBox.Show("保存成功", "提示");
                txtSellID.Tag = null;
                this.Close();
            }
            catch (Exception ex)
            {
                MessageDialog.ShowErrorMessage(ex.Message);
                return;
            }
        }
        private void btnDelete_Click(object sender, EventArgs e)
        {
            try
            {
                CustomDataGridView dgv     = GetDataGridView(tabControl1.SelectedTab);
                string             tempStr = dgv.CurrentRow.Cells["业务编号"].Value.ToString();

                if (MessageDialog.ShowEnquiryMessage("您确定要删除【" + tempStr + "】号业务单据吗?") == DialogResult.Yes)
                {
                    _BusinessService.DeleteInfo(tempStr);
                    MessageDialog.ShowPromptMessage("删除成功");
                    m_billMessageServer.DestroyMessage(tempStr);
                }

                RefreshData(tabControl1.SelectedTab);
            }
            catch (Exception ex)
            {
                MessageDialog.ShowPromptMessage(ex.Message);
            }
        }
        /// <summary>
        /// 根据普通入库单号删除工装台帐与工装验证报告单
        /// </summary>
        /// <param name="ctx">数据上下文</param>
        /// <param name="billNo">普通入库单号</param>
        /// <param name="error">出错时返回错误信息,无错时返回null</param>
        /// <returns>操作成功返回True,操作失败返回False</returns>
        public bool DeleteFrockOrdinaryInDepotBill(DepotManagementDataContext ctx, string billNo, out string error)
        {
            error = null;

            try
            {
                var varData = from a in ctx.S_FrockProvingReport
                              where a.ConnectBillNumber == billNo
                              select a;

                foreach (var item in varData)
                {
                    var varStanding = from a in ctx.S_FrockStandingBook
                                      where a.GoodsID == item.GoodsID &&
                                      a.FrockNumber == item.FrockNumber
                                      select a;

                    ctx.S_FrockStandingBook.DeleteAllOnSubmit(varStanding);

                    var varAttached = from a in ctx.S_FrockProvingReportAttached
                                      where a.DJH == item.DJH
                                      select a;

                    ctx.S_FrockProvingReportAttached.DeleteAllOnSubmit(varAttached);

                    ctx.S_FrockProvingReport.DeleteOnSubmit(item);

                    m_assignBill.CancelBillNo(ctx, "工装验证报告单", item.DJH);
                    m_billMessageServer.DestroyMessage(item.DJH);
                }

                return(true);
            }
            catch (Exception ex)
            {
                error = ex.Message;
                return(false);
            }
        }
Esempio n. 18
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            GetBillMessage();

            if (!m_billServer.UpdateBill(m_masterInfo, (DataTable)dataGridView1.DataSource,
                                         AfterServiceMakePartsBillStatus.营销保存, out m_err))
            {
                MessageDialog.ShowPromptMessage(m_err);
            }
            else
            {
                MessageDialog.ShowPromptMessage("保存成功");
                m_msgPromulgator.DestroyMessage(txtSellID.Text);
                m_msgPromulgator.SendNewFlowMessage(txtSellID.Text,
                                                    string.Format("{0} 号售后服务配件制造申请单,请主管审核", txtSellID.Text), BillFlowMessage_ReceivedUserType.角色,
                                                    m_billMessageServer.GetSuperior(CE_RoleStyleType.级领导, BasicInfo.LoginID));

                txtSellID.Tag = null;
                this.Close();
            }

            RefershDataGridView(txtSellID.Text);
        }
        private void 提交单据ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (txtStatus.Text == "已完成")
            {
                MessageDialog.ShowPromptMessage("请重新确认单据状态");
            }
            else
            {
                GetMessage();

                if (!CheckData())
                {
                    return;
                }
                else
                {
                    DataTable dtTemp = (DataTable)dataGridView1.DataSource;

                    if (m_technologyServer.SubmitBill(m_lnqTechnology, dtTemp, out m_error))
                    {
                        MessageDialog.ShowPromptMessage("提交成功");

                        m_msgPromulgator.DestroyMessage(txtDJH.Text);
                        m_msgPromulgator.SendNewFlowMessage(txtDJH.Text,
                                                            string.Format("{0} 号技术变更单,请零件工程师批准", txtDJH.Text),
                                                            CE_RoleEnum.零件工程师);
                        this.Close();
                    }
                    else
                    {
                        MessageDialog.ShowPromptMessage(m_error);
                        return;
                    }
                }
            }
        }
        private void  除ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (lblStatus.Text.Trim() != DimissionBillStatus.已完成.ToString())
            {
                if (MessageBox.Show("您是否确定要删除选中行的信息?", "消息",
                                    MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    if (!m_dimiServer.DeleteDimission(txtApplicant.Tag.ToString(), dtpDate.Value, out error))
                    {
                        MessageDialog.ShowPromptMessage(error);
                        return;
                    }

                    m_billMessageServer.BillType = "员工离职申请单";
                    m_billMessageServer.DestroyMessage(billID.ToString());

                    this.Close();
                }
            }
            else
            {
                MessageDialog.ShowPromptMessage("单据已完成,不能删除!");
            }
        }
Esempio n. 21
0
        private void 提交toolStripButton_Click(object sender, EventArgs e)
        {
            if (txtStatus.Text.Trim() != "新建单据")
            {
                MessageDialog.ShowPromptMessage("请确认单据状态");
                return;
            }

            if (m_workSchedulingServer.IsExise(BasicInfo.LoginID, Convert.ToInt32(numMonth.Value.ToString())))
            {
                MessageDialog.ShowPromptMessage(numMonth.Value + "月已经存在排班!");
                return;
            }

            if (!CheckControl())
            {
                return;
            }

            List <HR_WorkSchedulingDetail> lstPersonnel = new List <HR_WorkSchedulingDetail>();

            int day1 = GlobalObject.Year.GetDays(dtpBegin.Value);
            int days = 0;

            for (int i = dtpBegin.Value.Day; i <= day1; i++)
            {
                days++;
            }

            for (int i = 0; i < dataGridView1.Rows.Count; i++)
            {
                DataGridViewCellCollection cells = dataGridView1.Rows[i].Cells;

                for (int j = 0; j < dataGridView1.Columns.Count; j++)
                {
                    HR_WorkSchedulingDetail    personnel         = new HR_WorkSchedulingDetail();
                    DataGridViewComboBoxColumn dgvComboBoxColumn = dataGridView1.Columns[j] as DataGridViewComboBoxColumn;

                    if (dataGridView1.Columns[j].CellType.Name == "DataGridViewComboBoxCell" && cells[j].Value != null)
                    {
                        personnel.WorkID = dataGridView1.Rows[i].Cells["工号"].Value.ToString();

                        if (dtpBegin.Value.Month == dtpEnd.Value.Month)
                        {
                            //personnel.Date = Convert.ToDateTime(numYear.Value + "-" + dtpBegin.Value.Month + "-" + dataGridView1.Columns[j].HeaderText);
                            if (j - 1 <= days)
                            {
                                personnel.Date = Convert.ToDateTime(numYear.Value + "-" + dtpBegin.Value.Month + "-" + dataGridView1.Columns[j].HeaderText);
                            }
                            else
                            {
                                break;
                            }
                        }
                        else
                        {
                            if (j - 1 <= days)
                            {
                                personnel.Date = Convert.ToDateTime(numYear.Value + "-" + dtpBegin.Value.Month + "-" + dataGridView1.Columns[j].HeaderText);
                            }
                            else
                            {
                                personnel.Date = Convert.ToDateTime(numYear.Value + "-" + dtpEnd.Value.Month + "-" + dataGridView1.Columns[j].HeaderText);
                            }
                        }

                        personnel.Code = cells[j].Value == DBNull.Value ? "" : cells[j].Value.ToString();
                        lstPersonnel.Add(personnel);
                    }
                }
            }

            HR_WorkScheduling workSchedule = new HR_WorkScheduling();
            bool isDeptDirector            = false;

            IQueryable <View_HR_PersonnelArchive> directorGroup = m_personnerServer.GetDeptDirector(m_personnerServer.GetPersonnelInfo(txtCreaterWorkID.Tag.ToString()).Dept, "0");
            bool flag = false;

            if (directorGroup != null && directorGroup.Count() > 0)
            {
                isDeptDirector = true;

                foreach (var item in directorGroup)
                {
                    if (BasicInfo.LoginID == item.员工编号)
                    {
                        flag = true;

                        break;
                    }
                }
            }

            IQueryable <View_HR_PersonnelArchive> directorGroup1 = m_personnerServer.GetDeptDirector(m_personnerServer.GetPersonnelInfo(txtCreaterWorkID.Tag.ToString()).Dept, "1");
            bool flagPri = false;

            if (directorGroup1 != null && directorGroup1.Count() > 0)
            {
                foreach (var item in directorGroup1)
                {
                    if (BasicInfo.LoginID == item.员工编号)
                    {
                        flagPri = true;

                        break;
                    }
                }
            }

            if (!flag && !flagPri)
            {
                if (isDeptDirector)
                {
                    workSchedule.BillStatus = OverTimeBillStatus.等待主管审核.ToString();
                }
                else
                {
                    workSchedule.BillStatus = OverTimeBillStatus.等待部门负责人审核.ToString();
                }
            }
            else if (flag && !flagPri)
            {
                workSchedule.BillStatus = OverTimeBillStatus.等待部门负责人审核.ToString();
            }

            workSchedule.ScheduleName  = txtScheduleName.Text;
            workSchedule.CreateDate    = dtpCreateDate.Value;
            workSchedule.CreaterWorkID = txtCreaterWorkID.Tag.ToString();
            workSchedule.BeginDate     = dtpBegin.Value;
            workSchedule.EndDate       = dtpEnd.Value;
            workSchedule.Remark        = txtRemark.Text;
            workSchedule.Year          = Convert.ToInt32(numYear.Value);
            workSchedule.Month         = Convert.ToInt32(numMonth.Value);
            workSchedule.PendingDate   = Convert.ToDateTime(dateTimePendingDate.Value.ToShortDateString());

            txtBillNo.Text = m_workSchedulingServer.AddWorkScheduling(workSchedule, lstPersonnel, out error).ToString();

            if (Convert.ToInt32(txtBillNo.Text) < 0)
            {
                MessageDialog.ShowPromptMessage(error);
                return;
            }
            else
            {
                MessageDialog.ShowPromptMessage("新增成功!");
                m_billMessageServer.DestroyMessage(txtBillNo.Text);

                if (workSchedule.BillStatus.Equals(OverTimeBillStatus.等待主管审核.ToString()))
                {
                    m_billMessageServer.SendNewFlowMessage(txtBillNo.Text, string.Format("{0}号请假申请单,请主管审核", txtBillNo.Text),
                                                           BillFlowMessage_ReceivedUserType.角色, m_billMessageServer.GetDeptDirectorRoleName(
                                                               m_personnerServer.GetPersonnelViewInfo(txtCreaterWorkID.Tag.ToString()).部门编号).ToList());
                }
                else if (workSchedule.BillStatus == OverTimeBillStatus.等待部门负责人审核.ToString())
                {
                    m_billMessageServer.SendNewFlowMessage(txtBillNo.Text, string.Format("{0}号请假申请单,请部门负责人审核", m_billNo),
                                                           BillFlowMessage_ReceivedUserType.角色, m_billMessageServer.GetDeptPrincipalRoleName(
                                                               m_personnerServer.GetPersonnelViewInfo(txtCreaterWorkID.Tag.ToString()).部门编号).ToList());
                }
            }

            this.Close();
        }
        /// <summary>
        /// 插入工装所有信息
        /// </summary>
        /// <param name="ordinarybill">普通入库单信息</param>
        /// <param name="error">出错时返回错误信息,无错时返回null</param>
        /// <returns>操作成功返回True,操作失败返回False</returns>
        bool CreateNewFrockMessage(S_OrdinaryInDepotBill ordinarybill, out string error)
        {
            error = null;

            FrockProvingReport serverFrockProvingReport = new FrockProvingReport();

            try
            {
                DepotManagementDataContext ctx = CommentParameter.DepotDataContext;

                var varData = from a in ctx.S_OrdinaryInDepotGoodsBill
                              where a.Bill_ID == ordinarybill.Bill_ID
                              select a;

                foreach (var item in varData)
                {
                    for (int i = 0; i < item.Amount; i++)
                    {
                        string strFrockNumber = m_serverFrockStandingBook.GetNewFrockNumber();

                        S_FrockProvingReport lnqReport = new S_FrockProvingReport();

                        lnqReport.DJH               = m_assignBill.AssignNewNo(serverFrockProvingReport, "工装验证报告单");
                        lnqReport.DJZT              = "等待检验要求";
                        lnqReport.BillType          = "入库检验";
                        lnqReport.BZRQ              = ServerTime.Time;
                        lnqReport.ConnectBillNumber = ordinarybill.Bill_ID;
                        lnqReport.FrockNumber       = strFrockNumber;
                        lnqReport.GoodsID           = item.GoodsID;

                        if (!serverFrockProvingReport.AddBill(lnqReport, null, out error))
                        {
                            return(false);
                        }

                        S_FrockStandingBook lnqBook = new S_FrockStandingBook();

                        lnqBook.GoodsID     = item.GoodsID;
                        lnqBook.FrockNumber = strFrockNumber;
                        lnqBook.Designer    = UniversalFunction.GetPersonnelName(ordinarybill.Designer);

                        if (!m_serverFrockStandingBook.UpdateFrockStandingBook(lnqBook, null, out error))
                        {
                            return(false);
                        }

                        View_F_GoodsPlanCost goodsInfo = UniversalFunction.GetGoodsInfo(lnqBook.GoodsID);

                        m_billMessageServer.DestroyMessage(lnqReport.DJH);
                        m_billMessageServer.SendNewFlowMessage(lnqReport.DJH,
                                                               string.Format("【工装编号】:{0} 【图号型号】:{1} 【物品名称】:{2},※※※ 等待【工艺人员】处理",
                                                                             lnqReport.FrockNumber, goodsInfo.图号型号, goodsInfo.物品名称),
                                                               CE_RoleEnum.工艺人员);
                    }
                }

                return(true);
            }
            catch (Exception ex)
            {
                error = ex.Message;
                return(false);
            }
        }
Esempio n. 23
0
        /// <summary>
        /// 保存事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                if (cmbStorage.Text == "售后库房" && (cmbRKFS.Text == "生产入库" || cmbRKFS.Text == "生产返修入库"))
                {
                    MessageDialog.ShowPromptMessage("入库方式错误");
                    return;
                }

                if (m_strDJZTFlag == "已确认")
                {
                    return;
                }
                else if (tbsDept.Tag == null)
                {
                    MessageBox.Show("请选择入库部门", "提示");
                    tbsDept.Focus();
                    return;
                }
                else if (cmbRKFS.Text == "")
                {
                    MessageBox.Show("请选择入库方式", "提示");
                    cmbRKFS.Focus();
                    return;
                }

                DataTable dtTemp = (DataTable)dgv_Main.DataSource;

                for (int i = 0; i < dtTemp.Rows.Count; i++)
                {
                    if (!m_serverProductCode.IsFitCount(Convert.ToInt32(dtTemp.Rows[i]["CPID"]),
                                                        (int)Convert.ToDecimal(dtTemp.Rows[i]["Count"]), m_strDJH))
                    {
                        MessageBox.Show("请对产品设置流水号,并保证产品数量与流水号数一致", "提示");
                        return;
                    }
                }

                //由于错误录入入库方式,而导致无法重新进行生产入库,经与李剑飞、财务李姝姝沟通后,禁用此功能 Modify by cjb 2019.2.21
                //if (cmbRKFS.Text == "生产入库")
                //{
                //    m_serverProductCode.IsExistProductStock(txtSellID.Text);
                //}

                DataTable dt = (DataTable)dgv_Main.DataSource;
                m_drZdRK["ID"]         = m_intDJID.ToString();
                m_drZdRK["DJH"]        = txtSellID.Text;
                m_drZdRK["ObjectDept"] = tbsDept.Tag.ToString();
                m_drZdRK["LRRY"]       = BasicInfo.LoginID;
                m_drZdRK["Date"]       = ServerTime.Time.ToString();
                m_drZdRK["KFRY"]       = "";
                m_drZdRK["Price"]      = Convert.ToDecimal(txtPrice.Text);
                m_drZdRK["SHRY"]       = "";
                m_drZdRK["Remark"]     = txtRemarkAll.Text;
                m_drZdRK["YWFS"]       = cmbRKFS.Text;
                m_drZdRK["JYRY"]       = "";
                m_drZdRK["StorageID"]  = UniversalFunction.GetStorageID(cmbStorage.Text);
                m_drZdRK["LRKS"]       = BasicInfo.DeptCode;

                if (m_findSellIn.UpdateBill(dt, m_drZdRK, CE_MarketingType.入库.ToString(), out m_err))
                {
                    MessageBox.Show("保存成功", "提示");

                    m_billMessageServer.DestroyMessage(txtSellID.Text);
                    m_billMessageServer.SendNewFlowMessage(txtSellID.Text, string.Format("【入库方式】:{0}  【库房】:{1}   ※※※ 等待【主管】处理", cmbRKFS.Text, cmbStorage.Text),
                                                           BillFlowMessage_ReceivedUserType.角色,
                                                           m_billMessageServer.GetDeptDirectorRoleName(BasicInfo.DeptCode).ToList());
                    m_intDJID = 1;
                    this.Close();
                }
                else
                {
                    MessageDialog.ShowErrorMessage(m_err);
                    return;
                }
            }
            catch (Exception ex)
            {
                MessageDialog.ShowErrorMessage(ex.Message);
                return;
            }
        }
        /// <summary>
        /// 插入数据
        /// </summary>
        /// <param name="afterService">数据集</param>
        /// <param name="listInfo">明细表</param>
        /// <param name="error">错误信息</param>
        /// <returns>成功返回True,失败返回False</returns>
        public bool InsertBill(Out_AfterServicePartsApplyBill afterService, DataTable listInfo, out string error)
        {
            error = null;

            try
            {
                DepotManagementDataContext dataContext = CommentParameter.DepotDataContext;

                var varData = from a in dataContext.Out_AfterServicePartsApplyBill
                              where a.Bill_ID == afterService.Bill_ID
                              select a;
                if (varData.Count() == 0)
                {
                    afterService.Bill_ID      = m_serverBillNo.AssignNewNo(this, "售后配件申请单");
                    afterService.BillStatus   = "等待主管审核";
                    afterService.Proposer     = BasicInfo.LoginName;
                    afterService.ProposerTime = ServerTime.Time;

                    if (!InsertListInfo(dataContext, afterService.Bill_ID, listInfo, out error))
                    {
                        return(false);
                    }

                    dataContext.Out_AfterServicePartsApplyBill.InsertOnSubmit(afterService);

                    m_billMessageServer.DestroyMessage(afterService.Bill_ID);
                    m_billMessageServer.SendNewFlowMessage(afterService.Bill_ID,
                                                           string.Format("{0}号售后配件申请单已提交,请营销主管审核", afterService.Bill_ID), CE_RoleEnum.营销主管);
                }
                else if (varData.Count() == 1)
                {
                    Out_AfterServicePartsApplyBill lnqBill = varData.Single();

                    lnqBill._4SLinkMan   = afterService._4SLinkMan;
                    lnqBill._4SPhone     = afterService._4SPhone;
                    lnqBill.Address      = afterService.Address;
                    lnqBill.ApplyState   = afterService.ApplyState;
                    lnqBill.CVTType      = afterService.CVTType;
                    lnqBill.InStorageID  = afterService.InStorageID;
                    lnqBill.OutStorageID = afterService.OutStorageID;
                    lnqBill.ProductCode  = afterService.ProductCode;
                    lnqBill.Proposer     = BasicInfo.LoginName;
                    lnqBill.ProposerTime = ServerTime.Time;
                    lnqBill.Remark       = afterService.Remark;
                    lnqBill.ServiceErea  = afterService.ServiceErea;

                    if (!DeleteListInfo(dataContext, lnqBill.Bill_ID, out error))
                    {
                        return(false);
                    }

                    if (!InsertListInfo(dataContext, lnqBill.Bill_ID, listInfo, out error))
                    {
                        return(false);
                    }


                    m_billMessageServer.DestroyMessage(afterService.Bill_ID);
                    m_billMessageServer.SendNewFlowMessage(afterService.Bill_ID,
                                                           string.Format("{0}号售后配件申请单已提交,请营销主管审核", afterService.Bill_ID), CE_RoleEnum.营销主管);
                }
                else
                {
                    error = "数据重复";
                    return(false);
                }

                dataContext.SubmitChanges();

                return(true);
            }
            catch (Exception ex)
            {
                error = ex.Message;
                return(false);
            }
        }
Esempio n. 25
0
        /// <summary>
        /// 保存事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                if (m_strDJZTFlag == "已确认")
                {
                    return;
                }

                if (tbsClient.Tag == null)
                {
                    MessageDialog.ShowPromptMessage("请选择出库部门");
                    tbsClient.Focus();
                    return;
                }

                if (cmbCKFS.Text == "")
                {
                    MessageDialog.ShowPromptMessage("请选择出库方式");
                    cmbCKFS.Focus();
                    return;
                }

                DataTable dt = (DataTable)dgv_Main.DataSource;

                m_drZdCK["ID"]         = m_intDJID.ToString();
                m_drZdCK["DJH"]        = txtSellID.Text;
                m_drZdCK["ObjectDept"] = tbsClient.Tag.ToString();
                m_drZdCK["LRRY"]       = BasicInfo.LoginID;
                m_drZdCK["Date"]       = ServerTime.Time.ToString();
                m_drZdCK["KFRY"]       = "";
                m_drZdCK["Price"]      = 0;
                m_drZdCK["SHRY"]       = "";
                m_drZdCK["Remark"]     = txtRemarkAll.Text;
                m_drZdCK["YWFS"]       = cmbCKFS.Text;
                m_drZdCK["JYRY"]       = "";
                m_drZdCK["StorageID"]  = UniversalFunction.GetStorageID(cmbStorage.Text);
                m_drZdCK["LRKS"]       = BasicInfo.DeptCode;

                if (m_findSellIn.UpdateBill(dt, m_drZdCK, CE_MarketingType.出库.ToString(), out m_err))
                {
                    MessageDialog.ShowPromptMessage("保存成功");

                    m_billMessageServer.DestroyMessage(txtSellID.Text);
                    m_billMessageServer.SendNewFlowMessage(txtSellID.Text, string.Format("【出库方式】:{0}  【库房】:{1}   ※※※ 等待【主管】处理", cmbCKFS.Text, cmbStorage.Text),
                                                           BillFlowMessage_ReceivedUserType.角色,
                                                           m_billMessageServer.GetDeptDirectorRoleName(BasicInfo.DeptCode).ToList());

                    m_intDJID = 1;
                    this.Close();
                }
                else
                {
                    MessageDialog.ShowErrorMessage(m_err);
                    return;
                }
            }
            catch (Exception ex)
            {
                MessageDialog.ShowErrorMessage(ex.Message);
                return;
            }
        }
        private void 提交单据ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (lblStatus.Text.Trim() == OverTimeBillStatus.新建单据.ToString())
            {
                if (!CheckControl())
                {
                    return;
                }

                List <HR_OvertimePersonnel> lstPersonnel = new List <HR_OvertimePersonnel>(dataGridView2.Rows.Count);

                for (int i = 0; i < dataGridView2.Rows.Count; i++)
                {
                    HR_OvertimePersonnel       personnel = new HR_OvertimePersonnel();
                    DataGridViewCellCollection cells     = dataGridView2.Rows[i].Cells;

                    personnel.WorkID = dataGridView2.Rows[i].Cells["员工编号"].Value.ToString();
                    lstPersonnel.Add(personnel);
                }

                HR_OvertimeBill overTimeBill = new HR_OvertimeBill();

                overTimeBill.Applicant         = txtApplicant.Tag.ToString();
                overTimeBill.Authorize         = false;
                overTimeBill.BeginTime         = dtpBeginTime.Value;
                overTimeBill.CompensateMode    = cmbCompensateMode.Text;
                overTimeBill.Date              = ServerTime.Time;
                overTimeBill.Errand            = txtErrand.Text;
                overTimeBill.Hours             = numHours.Value;
                overTimeBill.RealHours         = Convert.ToDouble(numHours.Value);
                overTimeBill.NumberOfPersonnel = Convert.ToInt32(txtNumOfPersonnel.Text);
                overTimeBill.VerifyFinish      = false;
                overTimeBill.EndTime           = dtpEndTime.Value;
                overTimeBill.OvertimeAddress   = cmbOvertimeAddress.Text;

                IQueryable <View_HR_PersonnelArchive> directorGroup1 = m_personnerServer.GetDeptDirector(
                    m_personnerServer.GetPersonnelInfo(txtApplicant.Tag.ToString()).Dept, "1");

                bool flagPri        = false; //判断申请人是不是负责人
                bool isDeptDirector = false; //申请部门有没有主管

                if (directorGroup1 != null && directorGroup1.Count() > 0)
                {
                    foreach (var item in directorGroup1)
                    {
                        if (BasicInfo.LoginID == item.员工编号)
                        {
                            flagPri = true;

                            break;
                        }
                    }
                }

                IQueryable <View_HR_PersonnelArchive> directorGroup = m_personnerServer.GetDeptDirector(
                    m_personnerServer.GetPersonnelInfo(txtApplicant.Tag.ToString()).Dept, "0");
                bool flag = false;//判断申请人是不是主管

                if (directorGroup != null && directorGroup.Count() > 0)
                {
                    isDeptDirector = true;

                    foreach (var item in directorGroup)
                    {
                        if (BasicInfo.LoginID == item.员工编号)
                        {
                            flag = true;

                            break;
                        }
                    }
                }

                if (!flag && !flagPri)
                {
                    if (isDeptDirector)
                    {
                        overTimeBill.BillStatus = OverTimeBillStatus.等待主管审核.ToString();
                    }
                    else
                    {
                        overTimeBill.BillStatus = OverTimeBillStatus.等待部门负责人审核.ToString();
                    }
                }
                else if (flag && !flagPri)
                {
                    overTimeBill.BillStatus = OverTimeBillStatus.等待部门负责人审核.ToString();
                }
                else
                {
                    overTimeBill.BillStatus = OverTimeBillStatus.等待分管领导审批.ToString();
                }

                m_billNo = m_overTimeServer.AddOverTimeBill(overTimeBill, lstPersonnel, out error).ToString();

                if (Convert.ToInt32(m_billNo) < 0)
                {
                    MessageDialog.ShowPromptMessage(error);
                    return;
                }
                else
                {
                    MessageDialog.ShowPromptMessage("新增成功!");

                    m_billMessageServer.DestroyMessage(m_billNo);

                    if (overTimeBill.BillStatus.Equals(OverTimeBillStatus.等待主管审核.ToString()))
                    {
                        m_billMessageServer.SendNewFlowMessage(m_billNo, string.Format("{0}号加班申请单,请主管审核", m_billNo),
                                                               BillFlowMessage_ReceivedUserType.角色,
                                                               m_billMessageServer.GetDeptDirectorRoleName(m_personnerServer.GetPersonnelViewInfo(
                                                                                                               txtApplicant.Tag.ToString()).部门编号).ToList());
                    }
                    else if (overTimeBill.BillStatus == OverTimeBillStatus.等待部门负责人审核.ToString())
                    {
                        m_billMessageServer.SendNewFlowMessage(m_billNo, string.Format("{0}号加班申请单,请部门负责人审核", m_billNo),
                                                               BillFlowMessage_ReceivedUserType.角色, m_billMessageServer.GetDeptPrincipalRoleName(
                                                                   m_personnerServer.GetPersonnelViewInfo(txtApplicant.Tag.ToString()).部门编号).ToList());
                    }
                    else
                    {
                        m_billMessageServer.SendNewFlowMessage(m_billNo, string.Format("{0}号加班申请单,请分管领导审核", m_billNo),
                                                               BillFlowMessage_ReceivedUserType.角色, m_billMessageServer.GetDeptLeaderRoleName(
                                                                   m_personnerServer.GetPersonnelViewInfo(txtApplicant.Tag.ToString()).部门编号).ToList());
                    }
                }
            }
            else
            {
                MessageDialog.ShowPromptMessage("请确认单据状态!");
                return;
            }
            this.Close();
        }
Esempio n. 27
0
        /// <summary>
        /// 添加信息
        /// </summary>
        /// <param name="institution">LINQ信息</param>
        /// <param name="deptList">部门信息</param>
        /// <param name="billEnum">单据类型</param>
        /// <param name="error">错误信息</param>
        /// <returns>成功返回True</returns>
        public bool AddInfo(FM_InstitutionProcess institution, List <string> deptList, out string error)
        {
            error = null;

            DepotManagementDataContext    ctx        = CommentParameter.DepotDataContext;
            IBillMessagePromulgatorServer serverBill = BasicServerFactory.GetServerModule <IBillMessagePromulgatorServer>();

            serverBill.BillType = serverBill.GetBillTypeEnum(institution.TypeCode).ToString();

            try
            {
                institution.Propoer     = BasicInfo.LoginName;
                institution.PropoerTime = ServerTime.Time;
                institution.BillStatus  = InstitutionBillStatus.等待科长审查.ToString();

                ctx.FM_InstitutionProcess.InsertOnSubmit(institution);

                List <FM_InstitutionProcessPointDept> listPoint = new List <FM_InstitutionProcessPointDept>();
                FM_InstitutionProcessPointDept        tempLnq   = new FM_InstitutionProcessPointDept();

                if (deptList != null)
                {
                    foreach (string item in deptList)
                    {
                        List <string> list = serverBill.GetUserCodes(serverBill.GetDeptPrincipalRoleName(item).ToList(), null);
                        foreach (string workID in list)
                        {
                            tempLnq = new FM_InstitutionProcessPointDept();

                            tempLnq.BillNo        = institution.BillNo;
                            tempLnq.PersonnelType = RoleStyle.负责人.ToString();
                            tempLnq.Personnel     = workID;

                            listPoint.Add(tempLnq);
                        }

                        if (!IsThreeTripFile(institution.SortID))
                        {
                            list = serverBill.GetUserCodes(serverBill.GetDeptLeaderRoleName(item).ToList(), null);
                            foreach (string workID in list)
                            {
                                tempLnq = new FM_InstitutionProcessPointDept();

                                tempLnq.BillNo        = institution.BillNo;
                                tempLnq.PersonnelType = RoleStyle.分管领导.ToString();
                                tempLnq.Personnel     = workID;

                                listPoint.Add(tempLnq);
                            }
                        }
                    }

                    var varData = (from a in listPoint
                                   select new { a.BillNo, a.Personnel, a.PersonnelType }).Distinct();

                    listPoint = new List <FM_InstitutionProcessPointDept>();

                    foreach (var item in varData)
                    {
                        tempLnq = new FM_InstitutionProcessPointDept();

                        tempLnq.PersonnelType = item.PersonnelType;
                        tempLnq.Personnel     = item.Personnel;
                        tempLnq.BillNo        = item.BillNo;

                        listPoint.Add(tempLnq);
                    }

                    ctx.FM_InstitutionProcessPointDept.InsertAllOnSubmit(listPoint);
                }

                ctx.SubmitChanges();

                serverBill.DestroyMessage(institution.BillNo);
                serverBill.SendNewFlowMessage(institution.BillNo,
                                              string.Format("{0}号文件审查流程已提交,请等待上级审核", institution.BillNo),
                                              BillFlowMessage_ReceivedUserType.角色, serverBill.GetSuperior(CE_RoleStyleType.级领导, BasicInfo.LoginID));

                return(true);
            }
            catch (Exception ex)
            {
                error = ex.Message;
                return(false);
            }
        }
        /// <summary>
        /// 更新普通入库单的单据状态
        /// </summary>
        /// <param name="ctx">LINQ数据上下文</param>
        /// <param name="frockProving">工装验证报告单的数据集</param>
        /// <param name="error">出错时返回错误信息,无错时返回null</param>
        /// <returns>操作成功返回True,操作失败返回False</returns>
        bool UpdateOrdinaryInDepotBillStatus(DepotManagementDataContext ctx, S_FrockProvingReport frockProving, out string error)
        {
            error = null;
            try
            {
                var varData = from a in ctx.S_FrockProvingReport
                              where a.ConnectBillNumber == frockProving.ConnectBillNumber
                              select a;

                foreach (var item in varData)
                {
                    if (item.DJZT != "单据已完成")
                    {
                        return(true);
                    }
                }

                var varOrdinary = from a in ctx.S_OrdinaryInDepotBill
                                  where a.Bill_ID == frockProving.ConnectBillNumber
                                  select a;

                if (varOrdinary.Count() != 1)
                {
                    error = "数据以空或者不唯一";
                    return(false);
                }
                else
                {
                    bool blflag = false;

                    var varOrdinaryGoods = from a in ctx.S_OrdinaryInDepotGoodsBill
                                           where a.Bill_ID == frockProving.ConnectBillNumber
                                           select a;

                    foreach (var itemGoods in varOrdinaryGoods)
                    {
                        var varFrockReport = from a in ctx.S_FrockProvingReport
                                             where a.ConnectBillNumber == frockProving.ConnectBillNumber &&
                                             a.GoodsID == itemGoods.GoodsID
                                             select a;

                        int intAmount = 0;

                        foreach (var itemReport in varFrockReport)
                        {
                            if ((bool)itemReport.IsInStock)
                            {
                                intAmount++;
                            }
                            else
                            {
                                var varFrockStandingBook = from a in ctx.S_FrockStandingBook
                                                           where a.FrockNumber == itemReport.FrockNumber &&
                                                           a.GoodsID == itemReport.GoodsID
                                                           select a;

                                ctx.S_FrockStandingBook.DeleteAllOnSubmit(varFrockStandingBook);
                            }
                        }

                        itemGoods.Amount = intAmount;
                        itemGoods.Price  = Convert.ToDecimal(intAmount) * Convert.ToDecimal(itemGoods.UnitPrice);

                        if (Convert.ToDecimal(itemGoods.Amount) > 0)
                        {
                            blflag = true;
                        }
                    }

                    if (blflag)
                    {
                        varOrdinary.Single().BillStatus = "等待入库";

                        m_billMessageServer.PassFlowMessage(varOrdinary.Single().Bill_ID,
                                                            string.Format("【订单号】:{0} 【物品申请人】:{1}   ※※※ 等待【工艺人员】处理",
                                                                          varOrdinary.Single().OrderBill_ID, UniversalFunction.GetPersonnelName(varOrdinary.Single().Proposer)),
                                                            m_billMessageServer.GetRoleStringForStorage(varOrdinary.Single().StorageID).ToString(), true);
                    }
                    else
                    {
                        varOrdinary.Single().BillStatus = "已报废";
                        m_billMessageServer.DestroyMessage(varOrdinary.Single().Bill_ID);
                    }
                }
                return(true);
            }
            catch (Exception ex)
            {
                error = ex.Message;
                return(false);
            }
        }
        /// <summary>
        /// 提交申请
        /// </summary>
        /// <param name="maneuverBill">单据信息数据集</param>
        /// <param name="listInfo">明细信息</param>
        /// <param name="error">错误信息</param>
        /// <returns>成功返回True,失败返回False</returns>
        public bool InsertBill(Out_ManeuverBill maneuverBill, DataTable listInfo, out string error)
        {
            error = null;


            DepotManagementDataContext dataContext = CommentParameter.DepotDataContext;

            try
            {
                dataContext.Connection.Open();
                dataContext.Transaction = dataContext.Connection.BeginTransaction();

                var varData = from a in dataContext.Out_ManeuverBill
                              where a.Bill_ID == maneuverBill.Bill_ID
                              select a;

                if (varData.Count() == 0)
                {
                    maneuverBill.Bill_ID    = m_serverBillNo.AssignNewNo(this, "调运单");
                    maneuverBill.BillStatus = "等待主管审核";

                    if (!InsertList(dataContext, maneuverBill.Bill_ID, listInfo, out error))
                    {
                        throw new Exception(error);
                    }

                    dataContext.Out_ManeuverBill.InsertOnSubmit(maneuverBill);

                    m_billMessageServer.DestroyMessage(maneuverBill.Bill_ID);
                    m_billMessageServer.SendNewFlowMessage(maneuverBill.Bill_ID,
                                                           string.Format("{0}号调运单已提交,请营销主管审核", maneuverBill.Bill_ID), CE_RoleEnum.营销主管);
                }
                else if (varData.Count() == 1)
                {
                    Out_ManeuverBill lnqBill = varData.Single();

                    lnqBill.BillStatus   = "等待主管审核";
                    lnqBill.Remark       = maneuverBill.Remark;
                    lnqBill.InStorageID  = maneuverBill.InStorageID;
                    lnqBill.OutStorageID = maneuverBill.OutStorageID;
                    lnqBill.ScrapBillNo  = maneuverBill.ScrapBillNo;

                    if (!DeleteList(dataContext, maneuverBill.Bill_ID, out error))
                    {
                        throw new Exception(error);
                    }

                    if (!InsertList(dataContext, maneuverBill.Bill_ID, listInfo, out error))
                    {
                        throw new Exception(error);
                    }

                    m_billMessageServer.DestroyMessage(maneuverBill.Bill_ID);
                    m_billMessageServer.SendNewFlowMessage(maneuverBill.Bill_ID,
                                                           string.Format("{0}号调运单已提交,请营销主管审核", maneuverBill.Bill_ID), CE_RoleEnum.营销主管);
                }
                else
                {
                    error = "数据重复";
                    throw new Exception(error);
                }

                dataContext.SubmitChanges();

                dataContext.Transaction.Commit();
                return(true);
            }
            catch (Exception ex)
            {
                dataContext.Transaction.Rollback();
                error = ex.Message;
                return(false);
            }
        }
        private void btnAdd_Click(object sender, EventArgs e)
        {
            if (llbProposerDownLoad.Tag == null)
            {
                MessageDialog.ShowPromptMessage("请上传申请文件");
                return;
            }

            GetData();

            if (m_lnqReviewProcess.SDBStatus == "流程已结束")
            {
                MessageDialog.ShowPromptMessage("流程状态错误");
                return;
            }

            CheckData();

            List <string> listAudit = new List <string>();

            if (BasicInfo.ListRoles.Contains(CE_RoleEnum.体系工程师.ToString()))
            {
                MessageDialog.ShowPromptMessage("请选择审核人");
                listAudit = GetChoosePepoleList();
                if (listAudit == null)
                {
                    return;
                }
            }

            MessageDialog.ShowPromptMessage("请选择相关确认人");
            List <string> list = GetChoosePepoleList();

            if (list == null)
            {
                return;
            }

            if (!m_serverReviewProcess.AddProcess(m_lnqReviewProcess, list, out m_strErr))
            {
                MessageDialog.ShowPromptMessage(m_strErr);
            }
            else
            {
                m_strSDBNo = txtSDBNo.Text;
                MessageDialog.ShowPromptMessage("提交成功");
                m_billMessageServer.DestroyMessage(m_lnqReviewProcess.SDBNo);

                if (listAudit.Count() > 0)
                {
                    m_billMessageServer.SendNewFlowMessage(m_lnqReviewProcess.SDBNo,
                                                           string.Format("【文件编号】:{0} 【文件名】:{1} ※※※ 等待处理", m_lnqReviewProcess.FileNo, m_lnqReviewProcess.FileName),
                                                           BillFlowMessage_ReceivedUserType.用户, listAudit);
                }
                else
                {
                    m_billMessageServer.SendNewFlowMessage(m_lnqReviewProcess.SDBNo,
                                                           string.Format("【文件编号】:{0} 【文件名】:{1} ※※※ 等待处理", m_lnqReviewProcess.FileNo, m_lnqReviewProcess.FileName),
                                                           BillFlowMessage_ReceivedUserType.角色, m_billMessageServer.GetSuperior(CE_RoleStyleType.级领导, BasicInfo.LoginID));
                }

                this.Close();
            }
        }