/// <summary>
 /// 检查数据
 /// </summary>
 /// <param name="data">要检查的数据项</param>
 /// <returns>正确返回true</returns>
 bool CheckData(BASE_MaterialRequisitionPurpose data)
 {
     if (data == null || !data.IsEnd)
     {
         MessageDialog.ShowPromptMessage("必须要选择最终分类(即末节点), 而不允许选择大类");
         return(false);
     }
     else if (data.Code == "1602")
     {
         MessageDialog.ShowPromptMessage("此选项不可选择");
         return(false);
     }
     else
     {
         return(true);
     }
 }
        private void timer1_Tick(object sender, EventArgs e)
        {
            try
            {
                if (btnAdd.Enabled)
                {
                    Dictionary <CE_GoodsAttributeName, object> dic = UniversalFunction.GetGoodsInfList_Attribute_AttchedInfoList(m_barCodeInfo.GoodsID);

                    if (!dic.Keys.ToList().Contains(CE_GoodsAttributeName.流水码))
                    {
                        throw new Exception(UniversalFunction.GetGoodsMessage(m_barCodeInfo.GoodsID) + "基础属性未设置【流水码】");
                    }

                    List <F_ProductWaterCode> lstWaterCode = dic[CE_GoodsAttributeName.流水码] as List <F_ProductWaterCode>;

                    foreach (F_ProductWaterCode item in lstWaterCode)
                    {
                        if (item.SteelSealExample.Trim().Length == txtProductCode.Text.Trim().Length)
                        {
                            KeyEventArgs k = new KeyEventArgs(Keys.Enter);

                            txtProductCode_KeyDown(sender, k);
                            txtProductCode.Text = "";
                            break;
                        }
                    }
                }

                if ((txtBoxNo.Text.Length == 16 || txtBoxNo.Text.Length == 13) &&
                    btnAdd.Enabled && (m_dicMarkInfo.First().Value == CE_MarketingType.出库 ||
                                       m_dicMarkInfo.First().Value == CE_MarketingType.退货 ||
                                       m_dicMarkInfo.First().Value == CE_MarketingType.领料))
                {
                    KeyEventArgs k = new KeyEventArgs(Keys.Enter);
                    txtBoxNo_KeyDown(sender, k);
                }
            }
            catch (Exception ex)
            {
                timer1.Enabled = false;
                MessageDialog.ShowPromptMessage(ex.Message);
                timer1.Enabled = true;
                return;
            }
        }
Example #3
0
        /// <summary>
        /// 根据树节点名称定位节点
        /// </summary>
        /// <param name="name">节点名称</param>
        private void PositioningNode(string name)
        {
            if (GlobalObject.GeneralFunction.IsNullOrEmpty(name))
            {
                return;
            }

            TreeNode[] nodes = treeView1.Nodes.Find(name, true);

            if (nodes == null || nodes.Length == 0)
            {
                MessageDialog.ShowPromptMessage(string.Format("没有找到你要的信息:{0}", name));
                return;
            }

            treeView1.Focus();
            treeView1.SelectedNode = nodes[0];
        }
Example #4
0
        public void toolStripMenuItem_导入_Click(object sender, EventArgs e)
        {
            Control cltr = this.SourceControl;

            if (cltr == null)
            {
                return;
            }

            if (cltr is DataGridView)
            {
                DataGridView dgvTemp = cltr as DataGridView;

                DataTable dtTemp = ExcelHelperP.RenderFromExcel(openFileDialog1);

                if (dtTemp == null)
                {
                    return;
                }

                foreach (DataGridViewColumn cl in dgvTemp.Columns)
                {
                    if (!dtTemp.Columns.Contains(cl.HeaderText))
                    {
                        MessageDialog.ShowPromptMessage("文件无【" + cl.HeaderText + "】列名");
                        return;
                    }
                }

                if (_InputEvent != null)
                {
                    _InputEvent(dtTemp);
                }

                MessageDialog.ShowPromptMessage("导入成功");
            }
            else
            {
                if (_导入 != null)
                {
                    _导入();
                }
            }
        }
        private void btnInput_Click(object sender, EventArgs e)
        {
            try
            {
                DataTable dtTemp = ExcelHelperP.RenderFromExcel(openFileDialog1);

                if (dtTemp == null || dtTemp.Rows.Count == 0)
                {
                    throw new Exception("请填写对应列名的内容");
                }

                if (!dtTemp.Columns.Contains("出厂流水码"))
                {
                    MessageDialog.ShowPromptMessage("未找到列名为:【出厂流水码】的列");
                    return;
                }

                if (!dtTemp.Columns.Contains("箱体编码"))
                {
                    MessageDialog.ShowPromptMessage("未找到列名为:【箱体编码】的列");
                    return;
                }

                m_dtProductCodes.Rows.Clear();
                dataGridView1.DataSource = m_dtProductCodes;

                foreach (DataRow dr in dtTemp.Rows)
                {
                    if (dr["出厂流水码"].ToString().Trim().Length != 0)
                    {
                        txtProductCode.Text = dr["出厂流水码"].ToString().Trim();
                        _TempBoxNo          = dr["箱体编码"].ToString().Trim();
                        btnAdd_Click(sender, e);
                    }
                }

                _TempBoxNo = "";
            }
            catch (Exception ex)
            {
                MessageDialog.ShowPromptMessage(ex.Message);
            }
        }
        /// <summary>
        /// 提交并查询
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnFind_Click(object sender, EventArgs e)
        {
            if (panelParameter.Controls.Count == 0)
            {
                MessageDialog.ShowPromptMessage("您还没有建立查询条件无法进行此操作!");
                return;
            }

            if (!TestFilterCondition())
            {
                return;
            }

            dataGridView1.DataSource = m_queryResult.DataCollection.Tables[0];
            lblAmount.Text           = dataGridView1.Rows.Count.ToString();

            for (int i = 0; i < dataGridView1.Columns.Count; i++)
            {
                if (dataGridView1.Columns[i].Name.Contains("标志") || dataGridView1.Columns[i].Name.Contains("领料类型") ||
                    dataGridView1.Columns[i].Name.Contains("人编码") ||
                    dataGridView1.Columns[i].Name.Contains("权限控制") || dataGridView1.Columns[i].Name.Contains("序号"))
                {
                    dataGridView1.Columns[i].Visible = false;
                }
            }

            #region 隐藏不允许查看的列

            if (m_queryResult.HideFields != null && m_queryResult.HideFields.Length > 0)
            {
                for (int i = 0; i < dataGridView1.Columns.Count; i++)
                {
                    if (m_queryResult.HideFields.Contains(dataGridView1.Columns[i].Name))
                    {
                        dataGridView1.Columns[i].Visible = false;
                    }
                }
            }

            #endregion

            dataGridView1.Refresh();
        }
        /// <summary>
        /// 保存我的查询
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSave_Click(object sender, EventArgs e)
        {
            if (m_quertResultTable == null || m_quertResultTable.Columns.Count == 0 || m_quertResultTable.Rows.Count == 0)
            {
                MessageDialog.ShowPromptMessage("没有数据无法保存查询结果");
                return;
            }

            m_saveFlag = true;

            CreateExcelFile();

            //m_controlDic.Clear();

            //for (int i = 0; i < panelParameter.Controls.Count; i++)
            //{
            //    UserControlFindCondition newControl = panelParameter.Controls[i] as UserControlFindCondition;
            //    newControl.SaveFlag = true;
            //    m_controlDic.Add(newControl.Name, newControl);
            //}
        }
        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);
            }
        }
Example #9
0
        private void btnOK_Click(object sender, EventArgs e)
        {
            if (cmbDJZT.Text == "" || cmbDJZT.Text.Trim().Length == 0 || cmbDJZT.Text == null)
            {
                cmbDJZT.Focus();
                MessageDialog.ShowPromptMessage("请选择回退状态");
                return;
            }

            if (txtReason.Text.Trim() == "")
            {
                txtReason.Focus();
                MessageDialog.ShowPromptMessage("请填写回退原因");
                return;
            }

            m_strBillStatus   = cmbDJZT.Text;
            m_objValue        = cmbDJZT.SelectedValue;
            this.DialogResult = DialogResult.OK;
            this.Close();
        }
Example #10
0
 private void dataGridView1_DoubleClick(object sender, EventArgs e)
 {
     if (_KeyName != null)
     {
         if (dataGridView1.Columns.Contains(_KeyName))
         {
             if (FormShow != null)
             {
                 FormShow(dataGridView1, _KeyName);
             }
             else
             {
                 MessageDialog.ShowPromptMessage("查询功能获取失败");
             }
         }
         else
         {
             MessageDialog.ShowPromptMessage("查询结果集中无关键字段【" + _KeyName + "】");
         }
     }
 }
        /// <summary>
        /// 下载
        /// </summary>
        void FileDownLoad()
        {
            try
            {
                saveFileDialog1.Filter   = "All files (*.*)|*.*";
                saveFileDialog1.FileName = "";

                if (m_filePathExternal.Trim().Length == 0)
                {
                    if (saveFileDialog1.ShowDialog() == DialogResult.OK)
                    {
                        m_filePathExternal = saveFileDialog1.FileName;
                    }
                }


                if (m_filePathExternal.Trim().Length > 0)
                {
                    BackgroundWorker worker = BackgroundWorkerTools.GetWorker("下载文件");
                    worker.RunWorkerAsync();

                    m_serverFileFtp.Download(m_filePathInternal, m_filePathExternal);
                    worker.CancelAsync();

                    if (GetError())
                    {
                        MessageDialog.ShowPromptMessage("下载成功");
                    }
                }
            }
            catch (Exception ex)
            {
                MessageDialog.ShowErrorMessage(ex.Message);
                this.Cursor = System.Windows.Forms.Cursors.Arrow;
            }
        }
        private void btnAdd_Click(object sender, EventArgs e)
        {
            try
            {
                txtProductCode.Text = txtProductCode.Text.Trim().ToUpper();

                //if (m_blIsTCUFlag)
                //{
                //    List<string> lstTemp = txtProductCode.Text.Split(',').ToList();

                //    if (lstTemp.Count() > 1)
                //    {
                //        txtProductCode.Text = lstTemp[2] + "(" + lstTemp[3] + ")";
                //    }
                //}

                if (!m_serverProductCode.VerifyProductCodesInfo(m_barCodeInfo.GoodsID, txtProductCode.Text.Trim(),
                                                                GlobalObject.CE_BarCodeType.内部钢印码, out m_err))
                {
                    throw new Exception(m_err);
                }

                switch (m_enumBusinessType)
                {
                case CE_BusinessType.库房业务:
                    CheckBusiness(typeof(CE_MarketingType));
                    break;

                case CE_BusinessType.车间业务:
                    CheckBusiness(typeof(CE_SubsidiaryOperationType));
                    break;

                case CE_BusinessType.综合业务:
                    CheckBusiness(typeof(CE_MarketingType));
                    CheckBusiness(typeof(CE_SubsidiaryOperationType));
                    break;

                default:
                    break;
                }

                if (!CheckNumber(txtProductCode.Text))
                {
                    return;
                }

                string strBoxNo = "";

                if (_TempBoxNo.Trim().Length > 0)
                {
                    strBoxNo = _TempBoxNo;
                }
                else
                {
                    if (m_enumBusinessType == CE_BusinessType.库房业务 || m_enumBusinessType == CE_BusinessType.综合业务)
                    {
                        if (m_dicMarkInfo.First().Value == CE_MarketingType.入库)
                        {
                            SetBoxNo();
                        }
                        else
                        {
                            strBoxNo = m_findSellIn.GetHoldBoxNo(txtProductCode.Text);
                        }
                    }
                }

                m_dtProductCodes = (DataTable)dataGridView1.DataSource;

                DataRow dr = m_dtProductCodes.NewRow();

                dr["Number"]      = m_dtProductCodes.Rows.Count + 1;
                dr["ProductCode"] = txtProductCode.Text;
                dr["BoxNo"]       = strBoxNo == "" ? txtBoxNo.Text : strBoxNo;
                m_dtProductCodes.Rows.Add(dr);
                dataGridView1.DataSource = m_dtProductCodes;

                PositioningRecord(txtProductCode.Text);
                txtProductCode.Text = "";
                txtProductCode.Focus();
            }
            catch (Exception ex)
            {
                timer1.Enabled = false;
                MessageDialog.ShowPromptMessage("编号:【" + txtProductCode.Text + "】  " + ex.Message);
                txtProductCode.Text = "";
                txtProductCode.Focus();
                timer1.Enabled = true;
                return;
            }
        }
        private void btnAuditing_Click(object sender, EventArgs e)
        {
            m_dtProductCodes = (DataTable)dataGridView1.DataSource;

            //由于RDC16FB在领料时,还未有组机厂,故型号为空,所以无法在此控制, 并且在入库的自动生成时,就已经未控制 Modify by cjb on 2014.10.11
            //if (txtCode.Text == "")
            //{
            //    MessageBox.Show("请录入型号", "提示");
            //    return;
            //}

            if (Convert.ToDecimal(txtCount.Text) != (decimal)m_dtProductCodes.Rows.Count &&
                m_dicMarkInfo.First().Value != CE_MarketingType.入库)
            {
                MessageDialog.ShowPromptMessage("流水号数量与申请人填写数量不符,请重新核实!");
                return;
            }

            try
            {
                switch (m_enumBusinessType)
                {
                case CE_BusinessType.库房业务:
                    if (!m_serverProductCode.UpdateProducts(m_dtProductCodes, txtCode.Text, "",
                                                            Convert.ToInt32(txtGoodsName.Tag), m_strBillID, out m_err))
                    {
                        MessageDialog.ShowErrorMessage(m_err);
                        return;
                    }
                    break;

                case CE_BusinessType.车间业务:
                    m_serverWSProductCode.OperatorProductCodeDetail(m_dtProductCodes,
                                                                    m_strBillID, (int)txtGoodsName.Tag, m_dicWorkShopInfo);
                    break;

                case CE_BusinessType.综合业务:

                    if (!m_serverProductCode.UpdateProducts(m_dtProductCodes, txtCode.Text, "",
                                                            Convert.ToInt32(txtGoodsName.Tag), m_strBillID, out m_err))
                    {
                        MessageDialog.ShowErrorMessage(m_err);
                        return;
                    }

                    m_serverWSProductCode.OperatorProductCodeDetail(m_dtProductCodes,
                                                                    m_strBillID, (int)txtGoodsName.Tag, m_dicWorkShopInfo);
                    break;

                case CE_BusinessType.未知:

                    if (!m_serverProductCode.UpdateProducts(m_dtProductCodes, txtCode.Text, "",
                                                            Convert.ToInt32(txtGoodsName.Tag), m_strBillID, out m_err))
                    {
                        MessageDialog.ShowErrorMessage(m_err);
                        return;
                    }
                    break;

                default:
                    break;
                }

                this.DialogResult = DialogResult.OK;
            }
            catch (Exception ex)
            {
                MessageDialog.ShowErrorMessage(ex.Message);
                return;
            }

            this.Close();
        }
        /// <summary>
        /// 将整盒TCU插入表中
        /// </summary>
        private void InsertCode()
        {
            try
            {
                string storageId = null;

                foreach (KeyValuePair <string, CE_MarketingType> item in m_dicMarkInfo)
                {
                    switch (item.Value)
                    {
                    case CE_MarketingType.退库:
                    case CE_MarketingType.出库:
                    case CE_MarketingType.退货:
                    case CE_MarketingType.领料:
                    case CE_MarketingType.调出:
                    case CE_MarketingType.库房报废:
                        storageId = item.Key;
                        break;

                    default:
                        break;
                    }
                }

                if (storageId == null)
                {
                    throw new Exception("找不到出库库房");
                }

                DataTable dtCodes = m_findSellIn.GetBoxInfo(txtBoxNo.Text, storageId);

                if (dtCodes == null || dtCodes.Rows.Count == 0)
                {
                    return;
                }

                bool blInsert = false;

                m_dtProductCodes = (DataTable)dataGridView1.DataSource;
                DataTable dt = m_dtProductCodes.Copy();

                for (int i = 0; i < dtCodes.Rows.Count; i++)
                {
                    blInsert = false;

                    for (int k = 0; k < dt.Rows.Count; k++)
                    {
                        if (dt.Rows[k]["ProductCode"].ToString() ==
                            dtCodes.Rows[i]["ProductCode"].ToString())
                        {
                            blInsert = true;
                        }
                    }

                    if (!blInsert)
                    {
                        foreach (KeyValuePair <string, CE_MarketingType> item in m_dicMarkInfo)
                        {
                            if (m_findSellIn.IsProductCodeOperationStandard(item.Value.ToString(), typeof(CE_MarketingType),
                                                                            Convert.ToInt32(txtGoodsName.Tag), dtCodes.Rows[i]["ProductCode"].ToString(), item.Key, out m_err))
                            {
                                DataRow dr = m_dtProductCodes.NewRow();
                                dr["Number"]      = m_dtProductCodes.Rows.Count + 1;
                                dr["ProductCode"] = dtCodes.Rows[i]["ProductCode"].ToString();
                                dr["BoxNo"]       = dtCodes.Rows[i]["BoxNo"].ToString();
                                m_dtProductCodes.Rows.Add(dr);
                            }
                            else
                            {
                                throw new Exception(m_err);
                            }
                        }
                    }
                }

                dataGridView1.DataSource = m_dtProductCodes;
            }
            catch (Exception ex)
            {
                MessageDialog.ShowPromptMessage(ex.Message);
            }
        }
        private void btnSubmit_Click(object sender, EventArgs e)
        {
            this.Cursor            = System.Windows.Forms.Cursors.WaitCursor;
            this.btnSubmit.Enabled = false;
            this.btnHold.Enabled   = false;
            this.btnReback.Enabled = false;

            try
            {
                if (!m_customForm.GetDateInfo(CE_FlowOperationType.提交))
                {
                    return;
                }

                CheckData();
                string judge = "";

                if (rbAgree.Checked)
                {
                    judge = rbAgree.Text;
                }

                if (rbDisagree.Checked)
                {
                    DisagreeOperation();
                    return;
                }

                if (rbIsread.Checked)
                {
                    judge = rbIsread.Text;
                }

                string advise = judge + " " + textBox1.Text;
                if (CommonProcessSubmit != null && CommonProcessSubmit(m_customForm, advise))
                {
                    if (m_customForm.流程控制类型 == CE_FormFlowType.默认)
                    {
                        if (m_customForm.FlowInfo_BillNo == null || m_customForm.FlowInfo_BillNo.Trim().Length == 0)
                        {
                            throw new Exception("单据号不能为空");
                        }

                        bool isParallel = false;
                        if (m_serverFlow.IsPointPersonnel(m_customForm.FlowInfo_BillNo, out isParallel) &&
                            (m_customForm.FlowInfo_NotifyInfo.PersonnelBasicInfoList == null ||
                             m_customForm.FlowInfo_NotifyInfo.PersonnelBasicInfoList.Count() == 0))
                        {
                            if (!m_customForm.GetNotifyPersonnel(true))
                            {
                                throw new Exception("请选择指定人或者角色点【确定】");
                            }
                        }

                        m_serverFlow.FlowPass(m_customForm.FlowInfo_BillNo, advise, m_customForm.FlowInfo_StorageIDOrWorkShopCode,
                                              m_customForm.FlowInfo_NotifyInfo, m_customForm.KeyWords);
                    }

                    MessageDialog.ShowPromptMessage("提交成功");
                    this.DialogResult = DialogResult.OK;
                    this.Close();
                }
            }
            catch (Exception ex)
            {
                MessageDialog.ShowPromptMessage(ex.Message);
            }
            finally
            {
                this.btnSubmit.Enabled = true;
                this.btnHold.Enabled   = true;
                this.btnReback.Enabled = true;
                this.Cursor            = System.Windows.Forms.Cursors.Arrow;
            }
        }
Example #16
0
        private void toolStripMenuItem_取消导入项_Click(object sender, EventArgs e)
        {
            Control cltr = this.SourceControl;

            if (cltr == null)
            {
                return;
            }

            if (cltr is DataGridView)
            {
                DataGridView dgvTemp = cltr as DataGridView;

                int columnsIndex = -1;

                foreach (DataGridViewColumn cl in dgvTemp.Columns)
                {
                    if (cl.CellType == typeof(DataGridViewCheckBoxColumn) ||
                        cl.CellType == typeof(DataGridViewCheckBoxCell))
                    {
                        columnsIndex = cl.Index;
                        break;
                    }
                }

                if (columnsIndex != -1)
                {
                    DataTable dtTemp = ExcelHelperP.RenderFromExcel(openFileDialog1);

                    if (dtTemp == null)
                    {
                        return;
                    }

                    foreach (DataGridViewColumn cl in dgvTemp.Columns)
                    {
                        if (cl.Index != columnsIndex)
                        {
                            if (!dtTemp.Columns.Contains(cl.Name))
                            {
                                MessageDialog.ShowPromptMessage("文件无【" + cl.Name + "】列名");
                                return;
                            }
                        }
                    }

                    foreach (DataGridViewRow dgvr in dgvTemp.Rows)
                    {
                        foreach (DataRow dr in dtTemp.Rows)
                        {
                            foreach (DataGridViewColumn dgvc in dgvTemp.Columns)
                            {
                                if (dgvc.Index != columnsIndex)
                                {
                                    dgvr.Cells[dgvc.Name].Value = dgvr.Cells[dgvc.Name].Value == null ? "" : dgvr.Cells[dgvc.Name].Value.ToString();
                                    dr[dgvc.Name] = dr[dgvc.Name] == null ? "" : dr[dgvc.Name].ToString();

                                    if (dgvr.Cells[dgvc.Name].Value.ToString() == dr[dgvc.Name].ToString())
                                    {
                                        dgvr.Cells[columnsIndex].Value = false;
                                    }
                                }
                            }
                        }
                    }
                }
            }
            else
            {
                if (_取消导入项 != null)
                {
                    _取消导入项();
                }
            }
        }
        public static void BusinessDataSelect(CE_BillTypeEnum billType, string keyName,
                                              GlobalObject.DelegateCollection.ShowDataGirdViewInfo formShow)
        {
            try
            {
                string error = "";
                _FormShow = formShow;
                ServerModule.IReport          reportService = ServerModule.ServerModuleFactory.GetServerModule <ServerModule.IReport>();
                List <BASE_IntegrationReport> listReport    = reportService.GetBusinessSelect(billType);

                if (listReport != null && listReport.Count > 0)
                {
                    FormDataComboBox frmCombox = new FormDataComboBox((from a in listReport select a.ReportName).ToList(),
                                                                      billType.ToString() + "报表查询");

                    if (frmCombox.ShowDialog() == DialogResult.OK)
                    {
                        string reportCode = (from a in listReport
                                             where a.ReportName == frmCombox.Result
                                             select a.ReportCode).Single().ToString();

                        List <BASE_IntegrationReportList> list = reportService.GetIntegrationReportList(reportCode);
                        DataTable listInfo = null;

                        if (list != null && list.Count() > 0)
                        {
                            FormValueSet frm = new FormValueSet(list);

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

                            listInfo = new DataTable();

                            listInfo.Columns.Add("参数类型");
                            listInfo.Columns.Add("查询内容");
                            listInfo.Columns.Add("参数名");

                            for (int i = 0; i < frm.Result.Count(); i++)
                            {
                                DataRow dr = listInfo.NewRow();

                                dr["参数名"]  = list[i].ParameterName;
                                dr["参数类型"] = frm.Result[i].ParameterType;
                                dr["查询内容"] = frm.Result[i].ReportCode;

                                listInfo.Rows.Add(dr);
                            }
                        }

                        DataTable dtSoucre = reportService.QueryInfo(reportCode, listInfo, out error);

                        FormConditionDataTableFind frmShow = new FormConditionDataTableFind(dtSoucre, keyName);
                        frmShow.FormShow += new DelegateCollection.ShowDataGirdViewInfo(frmShow_FormShow);
                        frmShow.ShowDialog();
                    }
                }
            }
            catch (Exception ex)
            {
                MessageDialog.ShowPromptMessage(ex.Message);
            }
        }
Example #18
0
        /// <summary>
        /// 构建SQL查询where语句字段
        /// </summary>
        /// <param name="lastFlag">是否为最后一个条件,True表示是最后一个条件,False表示不是最后一个条件</param>
        public string BuildSQLSentence(string typeName, bool lastFlag)
        {
            string findData = txtFindData.Text;

            m_sentenceSQL = null;

            if (dateTime.Visible)
            {
                findData = string.Format("{0}-{1}-{2}", dateTime.Value.Date.Year, dateTime.Value.Month, dateTime.Value.Day);
            }
            else if (cmbFindData.Visible)
            {
                findData = cmbFindData.SelectedItem.ToString();
            }
            else if (txtFindData.Visible)
            {
                findData = txtFindData.Text;
            }
            else if (numPrice.Visible)
            {
                findData = numPrice.Value.ToString();
            }
            else if (numCount.Visible)
            {
                findData = numCount.Value.ToString();
            }

            if (!IsValidCondition(findData))
            {
                throw new Exception("请输入正确的查询条件!");
            }

            string centerString = null;

            if (cmbOperator.Text == "包含")
            {
                centerString = cmbFindField.SelectedItem.ToString() + " like '%" + findData + "%'";
            }
            else if (cmbOperator.Text == "是" || cmbOperator.Text == "不是")
            {
                if (findData.Trim().ToLower() != "空")
                {
                    string error = "当操作符选择 “是”或“不是”时查找数据值只能为“空”";

                    MessageDialog.ShowPromptMessage(error);

                    txtFindData.Text = "空";
                    throw new ArgumentException(error);
                }

                string operatorSymbol = "is";

                if (cmbOperator.Text == "不是")
                {
                    operatorSymbol = "is not";
                }

                centerString = string.Format("{0} {1} {2} ", cmbFindField.Text, operatorSymbol, "null"); //findData);
            }
            else
            {
                if (findData != "")
                {
                    if (dateTime.Visible)
                    {
                        if (cmbOperator.Text == "=")
                        {
                            if (typeName != "")
                            {
                                centerString = string.Format("({0} >= '{1} 00:00:00' " +
                                                             " and {0} <= '{1} 00:00:00')",
                                                             cmbFindField.SelectedItem.ToString(), findData);
                            }
                            else
                            {
                                centerString = string.Format("( CAST({0} as DateTime ) >= '{1} 00:00:00' " +
                                                             " and CAST({0} as DateTime) <= '{1} 00:00:00')",
                                                             cmbFindField.SelectedItem.ToString(), findData);
                            }
                        }
                        else
                        {
                            if (typeName != "")
                            {
                                centerString = string.Format("({0}{1} '{2} 00:00:00')",
                                                             cmbFindField.SelectedItem.ToString(), cmbOperator.SelectedItem.ToString(), findData);
                            }
                            else
                            {
                                centerString = string.Format("( CAST({0} as DateTime ) {1} '{2} 00:00:00')",
                                                             cmbFindField.SelectedItem.ToString(), cmbOperator.SelectedItem.ToString(), findData);
                            }
                        }
                    }
                    else
                    {
                        centerString = cmbFindField.SelectedItem.ToString() + cmbOperator.SelectedItem.ToString() + "'" + findData + "'";
                    }
                }
                else
                {
                    centerString = "(" + cmbFindField.SelectedItem.ToString() + cmbOperator.SelectedItem.ToString() + "'"
                                   + findData + "'" + " or " + cmbFindField.SelectedItem.ToString() + " is null" + ")";
                }
            }

            if (cmbLeft.SelectedItem != null)
            {
                centerString = cmbLeft.SelectedItem.ToString() + centerString;
            }

            if (cmbRight.SelectedItem != null)
            {
                centerString = centerString + cmbRight.SelectedItem.ToString();
            }

            if (!lastFlag)
            {
                m_sentenceSQL = centerString + " " + cmbRelationSymbol.SelectedItem.ToString() + " ";
            }
            else
            {
                m_sentenceSQL = centerString;
            }

            return(m_sentenceSQL);
        }
        /// <summary>
        /// 保存检索条件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSaveCondition_Click(object sender, EventArgs e)
        {
            if (panelParameter.Controls.Count == 0)
            {
                MessageDialog.ShowPromptMessage("还没有设置查询条件无法进行保存");
                return;
            }

            string searchName = InputBox.ShowDialog("保存检索条件", "检索条件名称:", cmbSearchName.Text);

            if (!GlobalObject.GeneralFunction.IsNullOrEmpty(searchName))
            {
                List <SYS_SearchParams> lstParam = new List <SYS_SearchParams>();

                int    orderNo = 0;
                string error   = null;

                foreach (var item in panelParameter.Controls)
                {
                    SYS_SearchParams param = new SYS_SearchParams();

                    param.BusinessName = m_parentTitle;
                    param.ItemName     = Business;
                    param.SearchName   = searchName;

                    UserControlFindCondition tmpControl = (UserControlFindCondition)item;

                    //if (tmpControl.LeftParentheses.Length > 0)
                    //    param.LeftParentheses = tmpControl.LeftParentheses[0].ToString();

                    //if (tmpControl.RightParentheses.Length > 0)
                    //    param.RightParentheses = tmpControl.RightParentheses[0].ToString();

                    param.LeftParentheses  = tmpControl.LeftParentheses.Trim();
                    param.RightParentheses = tmpControl.RightParentheses.Trim();
                    param.FieldName        = tmpControl.FieldName;
                    param.Operator         = tmpControl.Operator;
                    param.OrderNo          = orderNo++;
                    param.Logic            = tmpControl.LogicSymbol;
                    param.DataType         = tmpControl.DataType;
                    param.DataValue        = tmpControl.DataValue;
                    param.UserCode         = GlobalObject.BasicInfo.LoginID;

                    lstParam.Add(param);
                }

                if (!m_searchParamsServer.AddParam(lstParam, out error))
                {
                    MessageDialog.ShowErrorMessage(error);
                }
                else
                {
                    MessageDialog.ShowPromptMessage("成功保存查询条件");

                    if (!cmbSearchName.Items.Contains(searchName))
                    {
                        cmbSearchName.Items.Add("");
                        cmbSearchName.Items.Add(searchName);
                        cmbSearchName.Text = searchName;

                        if (!panelSelectSearch.Visible)
                        {
                            panelSelectSearch.Visible = true;
                        }
                    }
                }
            }
        }
        private void btnReback_Click(object sender, EventArgs e)
        {
            try
            {
                if (!m_customForm.GetDateInfo(CE_FlowOperationType.回退))
                {
                    return;
                }

                CheckData();
                if (m_customForm.流程控制类型 == CE_FormFlowType.默认)
                {
                    if (m_serverFlow.IsExist(m_customForm.FlowInfo_BillNo))
                    {
                        Flow_FlowInfo lnqFlowInfo =
                            m_serverFlow.GetNowFlowInfo(m_serverFlow.GetBusinessTypeID(m_billType, m_FlowBusinessVersion), m_customForm.FlowInfo_BillNo);

                        List <Flow_FlowInfo> listFlowInfo = (from a in m_serverFlow.GetListFlowInfo(m_customForm.FlowInfo_BillNo)
                                                             where a.FlowOrder < lnqFlowInfo.FlowOrder
                                                             orderby a.FlowOrder
                                                             select a).ToList();

                        if (listFlowInfo == null || listFlowInfo.Count == 0)
                        {
                            throw new Exception("回退流程无记录");
                        }
                        else
                        {
                            回退单据 frm = new 回退单据(m_billType, m_customForm.FlowInfo_BillNo, lnqFlowInfo.BusinessStatus, listFlowInfo);
                            if (CommonProcessSubmit != null && CommonProcessSubmit(m_customForm, frm.Reason))
                            {
                                if (frm.ShowDialog() == DialogResult.OK)
                                {
                                    string advise = "回退 " + textBox1.Text + "原因:" + frm.Reason;

                                    m_serverFlow.FlowReback(m_customForm.FlowInfo_BillNo, advise, m_customForm.FlowInfo_StorageIDOrWorkShopCode,
                                                            Convert.ToInt32(frm.ObjValue), m_customForm.KeyWords);

                                    MessageDialog.ShowPromptMessage("回退成功");
                                    this.DialogResult = DialogResult.OK;
                                    this.Close();
                                }
                            }
                        }
                    }
                    else
                    {
                        throw new Exception("新建单据无法执行回退功能");
                    }
                }
                else
                {
                    回退单据 frm = new 回退单据(m_billType, m_customForm.FlowInfo_BillNo, null, null);
                    if (CommonProcessSubmit != null && CommonProcessSubmit(m_customForm, frm.Reason))
                    {
                        if (frm.ShowDialog() == DialogResult.OK)
                        {
                            string advise = "回退 " + textBox1.Text + "原因:" + frm.Reason;

                            MessageDialog.ShowPromptMessage("回退成功");
                            this.DialogResult = DialogResult.OK;
                            this.Close();
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageDialog.ShowPromptMessage(ex.Message);
            }
        }
Example #21
0
        private void btnOK_Click(object sender, EventArgs e)
        {
            if ((DataTable)dataGridView1.DataSource == null || ((DataTable)dataGridView1.DataSource).Rows.Count == 0)
            {
                MessageDialog.ShowPromptMessage("请选择人员");
                return;
            }

            if (dataGridView1.Rows.Count > 1 && !_IsMultiSelect)
            {
                MessageDialog.ShowPromptMessage("无法选择多条记录");
                return;
            }

            m_receivedUserType =
                GlobalObject.GeneralFunction.StringConvertToEnum <BillFlowMessage_ReceivedUserType>(tabControl1.SelectedTab.Name);

            DataTable tempTable = new DataTable();

            switch (m_receivedUserType)
            {
            case BillFlowMessage_ReceivedUserType.用户:

                DataTable tempPersonnel = (DataTable)dataGridView1.DataSource;

                m_listSelectedPersonnels = new List <PersonnelBasicInfo>();

                foreach (DataRow dr in tempPersonnel.Rows)
                {
                    PersonnelBasicInfo entityInfo = new PersonnelBasicInfo();

                    entityInfo.工号 = dr["员工编号"].ToString();
                    entityInfo.姓名 = dr["员工姓名"].ToString();

                    m_listSelectedPersonnels.Add(entityInfo);
                }
                break;

            case BillFlowMessage_ReceivedUserType.角色:

                DataTable tempRole = (DataTable)dataGridView1.DataSource;

                m_listSelectedPersonnels = new List <PersonnelBasicInfo>();

                foreach (DataRow dr in tempRole.Rows)
                {
                    PersonnelBasicInfo entityInfo = new PersonnelBasicInfo();

                    entityInfo.角色 = dr["角色名称"].ToString();

                    m_listSelectedPersonnels.Add(entityInfo);
                }
                break;

            default:
                break;
            }

            m_notifyPersonnelInfo.UserType = m_receivedUserType.ToString();
            m_notifyPersonnelInfo.PersonnelBasicInfoList = m_listSelectedPersonnels;

            #region 2013-11-18 如果选择人员有问题则返回
            if (OnCheckSelectedPersonnel != null)
            {
                if (!OnCheckSelectedPersonnel(m_listSelectedPersonnels))
                {
                    return;
                }
            }
            #endregion

            this.DialogResult = DialogResult.OK;
            this.Close();
        }
        /// <summary>
        /// 测试过滤条件
        /// </summary>
        /// <returns>成功返回true</returns>
        private bool TestFilterCondition()
        {
            int leftParentheses  = 0;
            int rightParentheses = 0;

            m_sentenceSQL = "";

            try
            {
                for (int i = 0; i < panelParameter.Controls.Count; i++)
                {
                    UserControlFindCondition control = panelParameter.Controls[i] as UserControlFindCondition;

                    leftParentheses  += control.LeftParentheses.Length == 0 ? 0 : 1;
                    rightParentheses += control.RightParentheses.Length == 0 ? 0 : 1;

                    if (i != panelParameter.Controls.Count - 1)
                    {
                        m_sentenceSQL = m_sentenceSQL + control.BuildSQLSentence("", false);
                    }
                    else
                    {
                        m_sentenceSQL = m_sentenceSQL + control.BuildSQLSentence("", true);
                    }
                }

                if (leftParentheses != rightParentheses)
                {
                    MessageDialog.ShowPromptMessage("左右括号数量不匹配");
                    return(false);
                }
            }
            catch (Exception exce)
            {
                Console.WriteLine(exce.Message);
                return(false);
            }

            IAuthorization authorization = PlatformFactory.GetObject <IAuthorization>();
            string         businessID    = "";

            switch (m_findBusiness)
            {
            case "报检入库单":
                businessID = "报检入库单查询";
                break;

            case "普通入库单":
                businessID = "普通入库单查询";
                break;

            case "采购退货单":
                businessID = "采购退货单查询";
                break;

            case "领料单":
                businessID = "领料单查询";
                break;

            case "领料退库单":
                businessID = "领料退库单查询";
                break;

            case "销售退库单":
                businessID = "销售退库单查询";
                break;

            case "销售出库单":
                businessID = "销售出库单查询";
                break;

            case "产品入库单":
                businessID = "产品入库单查询";
                break;

            case "还货单":
                businessID = "还货单查询";
                break;

            case "借货单":
                businessID = "借货单查询";
                break;

            case "报废单":
                businessID = "报废单查询";
                break;

            case "合同信息管理":
                businessID = "合同信息综合查询";
                break;

            case "订单信息管理":
                businessID = "订单信息综合查询";
                break;

            case "自制件入库单":
                businessID = "自制件入库单查询";
                break;

            case "产品型号变更单":
                businessID = "产品型号变更单查询";
                break;
            }

            m_queryResult = authorization.Query(businessID, null, m_sentenceSQL);

            if (!m_queryResult.Succeeded)
            {
                MessageDialog.ShowErrorMessage(m_queryResult.Error);
                return(false);
            }
            else
            {
                return(true);
            }
        }
Example #23
0
        private void btnImport_Click(object sender, EventArgs e)
        {
            DataTable dtTemp = ExcelHelperP.RenderFromExcel(openFileDialog1);

            if (dtTemp == null)
            {
                return;
            }

            m_receivedUserType =
                GlobalObject.GeneralFunction.StringConvertToEnum <BillFlowMessage_ReceivedUserType>(tabControl1.SelectedTab.Name);

            switch (m_receivedUserType)
            {
            case BillFlowMessage_ReceivedUserType.用户:

                if (!dtTemp.Columns.Contains("员工姓名") && !dtTemp.Columns.Contains("员工编号"))
                {
                    MessageDialog.ShowPromptMessage("无【员工编号】或【员工姓名】列");
                    return;
                }

                DataTable tempTable = ((DataTable)dataGridView2.DataSource).Clone();

                foreach (DataRow dr in dtTemp.Rows)
                {
                    DataRow newRow = tempTable.NewRow();

                    View_HR_Personnel personnel = new View_HR_Personnel();

                    object obj = "";

                    if (dtTemp.Columns.Contains("员工编号"))
                    {
                        obj = dr["员工编号"];
                    }
                    else
                    {
                        obj = dr["员工姓名"];
                    }

                    if (obj == null)
                    {
                        MessageDialog.ShowPromptMessage("有一行记录为空,请重新检查");
                        return;
                    }

                    personnel = UniversalFunction.GetPersonnelInfo(obj.ToString());

                    if (personnel == null)
                    {
                        MessageDialog.ShowPromptMessage("【员工编号】/【员工姓名】: " + obj.ToString() + " 数据错误,请重新检查");
                        return;
                    }

                    newRow["员工编号"] = personnel.工号;
                    newRow["员工姓名"] = personnel.姓名;

                    tempTable.Rows.Add(newRow);
                }

                dataGridView1.DataSource = tempTable;

                break;

            case BillFlowMessage_ReceivedUserType.角色:
                break;

            default:
                break;
            }
        }
        /// <summary>
        /// 提交并查询
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnFind_Click(object sender, EventArgs e)
        {
            if (panelParameter.Controls.Count == 0)
            {
                MessageDialog.ShowPromptMessage("您还没有建立查询条件无法进行此操作!");
                return;
            }

            m_sentenceSQL = null;
            string pareTemp = "";

            try
            {
                for (int i = 0; i < panelParameter.Controls.Count; i++)
                {
                    UserControlFindCondition newControl = panelParameter.Controls[i] as UserControlFindCondition;

                    if (i != panelParameter.Controls.Count - 1)
                    {
                        m_sentenceSQL = m_sentenceSQL + newControl.BuildSQLSentence("", false);
                    }
                    else
                    {
                        m_sentenceSQL = m_sentenceSQL + newControl.BuildSQLSentence("", true);

                        if (newControl.FieldName == "单据号")
                        {
                            pareTemp = newControl.DataValue;
                        }
                    }
                }
            }
            catch (Exception exce)
            {
                Console.WriteLine(exce.Message);
                return;
            }

            IAuthorization authorization = PlatformFactory.GetObject <IAuthorization>();
            string         businessID    = "";

            switch (m_findBusiness)
            {
            case "报检入库单":
                businessID = "报检入库单查询";
                break;

            case "普通入库单":
                businessID = "普通入库单查询";
                break;

            case "采购退货单":
                businessID = "采购退货单查询";
                break;

            case "领料单":
                businessID = "领料单查询";
                break;

            case "领料退库单":
                businessID = "领料退库单查询";
                break;

            case "销售退库单":
                businessID = "销售退库单查询";
                break;

            case "销售出库单":
                businessID = "销售出库单查询";
                break;

            case "产品入库单":
                businessID = "产品入库单查询";
                break;

            case "报废单":
                businessID = "报废单查询";
                break;

            case "报废单综合查询":
                businessID = m_findBusiness;
                break;

            case "合同信息管理":
                businessID = "合同信息综合查询";
                break;

            case "订单信息管理":
                businessID = "订单信息综合查询";
                break;

            case "自制件入库单":
                businessID = "自制件入库单查询";
                break;

            case "采购退货单综合查询":
                businessID = m_findBusiness;
                break;

            case "领料单综合查询":
                businessID = m_findBusiness;
                break;

            case "样品确认申请单":
                businessID = "样品确认申请单综合查询";
                break;

            case "不合格品隔离处置单":
                businessID = "不合格品隔离处置单查询";
                break;

            case "挑选返工返修单":
                businessID = "挑选返工返修单查询";
                break;

            case "供应质量信息反馈单":
                businessID = "供应商质量信息反馈单查询";
                break;

            case "委外报检入库单":
                businessID = "委外报检入库单查询";
                break;

            case "产品型号变更单":
                businessID = "产品型号变更单查询";
                break;

            default:
                businessID = m_findBusiness;
                break;
            }

            string sql = m_sentenceSQL.ToLower();

            if (sql.LastIndexOf(" union ") != -1)
            {
                MessageDialog.ShowPromptMessage("存在非法字符,无法进行此操作!");
                return;
            }

            if (businessID == "培训综合统计查询" &&
                (m_sentenceSQL.Contains("培训开始时间") || m_sentenceSQL.Contains("培训终止时间")))
            {
                m_sentenceSQL = m_sentenceSQL + " or 培训开始时间 is null";
            }

            IQueryResult qr = authorization.Query(businessID, null, m_sentenceSQL);

            if (m_findBusiness == "零星采购申请财务综合查询")
            {
                string[] pare = { pareTemp };
                qr = authorization.QueryMultParam(businessID, m_sentenceSQL, pare);
            }

            if (m_findBusiness == "出差综合查询")
            {
                string[] pare = { BasicInfo.DeptCode };
                qr = authorization.QueryMultParam(businessID, m_sentenceSQL, pare);
            }

            if (m_findBusiness == "出差人员查看")
            {
                string[] pare = { BasicInfo.LoginID };
                qr = authorization.QueryMultParam(businessID, m_sentenceSQL, pare);
            }

            if (m_findBusiness == "订单入库单综合查询")
            {
                qr = authorization.QueryMultParam(businessID, m_sentenceSQL, m_proParameter);
            }

            if (!qr.Succeeded)
            {
                m_quertResultTable = null;
                MessageDialog.ShowErrorMessage(qr.Error);
            }
            else
            {
                m_quertResultTable = qr.DataCollection.Tables[0];
                lblAmount.Text     = m_quertResultTable.Rows.Count.ToString();
            }

            dataGridView1.DataSource = m_quertResultTable;

            for (int i = 0; i < dataGridView1.Columns.Count; i++)
            {
                if (dataGridView1.Columns[i].Name.Contains("标志") || dataGridView1.Columns[i].Name.Contains("领料类型") ||
                    dataGridView1.Columns[i].Name.Contains("人编码") || //dataGridView1.Columns[i].Name.Contains("签名")  ||
                    dataGridView1.Columns[i].Name.Contains("权限控制") || dataGridView1.Columns[i].Name.Contains("序号"))
                {
                    dataGridView1.Columns[i].Visible = false;
                }
            }

            #region 隐藏不允许查看的列

            if (qr.HideFields != null && qr.HideFields.Length > 0)
            {
                for (int i = 0; i < dataGridView1.Columns.Count; i++)
                {
                    if (qr.HideFields.Contains(dataGridView1.Columns[i].Name))
                    {
                        dataGridView1.Columns[i].Visible = false;
                    }
                }
            }

            #endregion

            if (!BasicInfo.ListRoles.Contains(CE_RoleEnum.采购账务管理员.ToString()) &&
                !BasicInfo.ListRoles.Contains(CE_RoleEnum.会计.ToString()))
            {
                for (int i = 0; i < dataGridView1.Columns.Count; i++)
                {
                    if (dataGridView1.Columns[i].Name.Contains("单价") || dataGridView1.Columns[i].Name.Contains("金额"))
                    {
                        dataGridView1.Columns[i].Visible = false;
                    }
                }
            }

            dataGridView1.Refresh();
        }