/// <summary>
        /// 上传
        /// </summary>
        void FileUpLoad()
        {
            try
            {
                if (m_filePathExternal.Trim().Length == 0)
                {
                    if (openFileDialog1.ShowDialog() == DialogResult.OK)
                    {
                        m_filePathExternal = openFileDialog1.FileName;
                    }
                }

                if (m_filePathExternal.Trim().Length > 0)
                {
                    CursorControl.SetWaitCursor(this);
                    m_serverFileFtp.Upload(m_filePathExternal, m_filePathInternal);

                    this.Cursor = System.Windows.Forms.Cursors.Arrow;

                    if (GetError())
                    {
                        MessageDialog.ShowPromptMessage("上传成功");
                    }
                }
            }
            catch (Exception ex)
            {
                MessageDialog.ShowErrorMessage(ex.Message);
                this.Cursor = System.Windows.Forms.Cursors.Arrow;
            }
        }
Пример #2
0
        /// <summary>
        /// 获取供应商信息对话框
        /// </summary>
        /// <returns>成功则返回获取到的对话框,失败返回null</returns>
        static public FormQueryInfo GetProviderInfoDialog(string strType)
        {
            IProviderServer            m_providerServer = ServerModuleFactory.GetServerModule <IProviderServer>();
            IQueryable <View_Provider> queryResult;

            if (!m_providerServer.GetAllProvider(out queryResult, out m_err))
            {
                MessageDialog.ShowErrorMessage(m_err);
                return(null);
            }
            queryResult = from r in queryResult
                          where r.是否在用 == true
                          select r;

            switch (strType)
            {
            case "零件合格供应商":
                queryResult = from r in queryResult
                              where r.零星采购供应商 == false
                              select r;
                break;

            default:
                break;
            }
            System.Data.DataTable dataTable = GlobalObject.GeneralFunction.ConvertToDataTable <View_Provider>(queryResult);
            FormQueryInfo         form      = new FormQueryInfo(dataTable);

            return(form);
        }
        /// <summary>
        /// 刷新数据
        /// </summary>
        public void RefreshData(TabPage tp)
        {
            try
            {
                DataGridView dgv = GetDataGridView(tp);

                dgv.DataSource = _ServiceFlow.ShowBusinessAllInfo(_Enum_BillType, cmbVersion.Text,
                                                                  checkBillDateAndStatus1.ListBillStatus == null || checkBillDateAndStatus1.ListBillStatus.Count() == 0 ?
                                                                  new string[] { "全部" } : checkBillDateAndStatus1.ListBillStatus.ToArray(),
                                                                  checkBillDateAndStatus1.dtpStartTime.Value, checkBillDateAndStatus1.dtpEndTime.Value, tp.Text, null);

                Flow_BusinessInfo bussinessInfo = _ServiceFlow.GetBusinessInfo(_Enum_BillType, cmbVersion.Text);

                foreach (DataGridViewColumn dgvc in dgv.Columns)
                {
                    if (dgvc.HeaderText == bussinessInfo.KeysName)
                    {
                        dgvc.Visible = false;
                    }
                }

                userControlDataLocalizer1.Init(dgv, this.Name,
                                               UniversalFunction.SelectHideFields(this.Name, dgv.Name, BasicInfo.LoginID));
            }
            catch (Exception ex)
            {
                MessageDialog.ShowErrorMessage(ex.Message);
            }
        }
        /// <summary>
        /// 删除我的查询
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnDeleteSearch_Click(object sender, EventArgs e)
        {
            if (cmbSearchName.Text == "")
            {
                MessageDialog.ShowPromptMessage("不允许删除空查询");
                return;
            }
            else
            {
                if (MessageDialog.ShowEnquiryMessage("您真的要删除我的查询“" + cmbSearchName.Text + "”?") == DialogResult.Yes)
                {
                    string error = null;

                    if (!m_searchParamsServer.DeleteParam(m_parentTitle, Business, cmbSearchName.Text, out error))
                    {
                        MessageDialog.ShowErrorMessage(error);
                    }
                    else
                    {
                        MessageDialog.ShowPromptMessage("操作成功");

                        cmbSearchName.Items.Remove(cmbSearchName.Text);

                        if (cmbSearchName.Items.Count <= 1)
                        {
                            panelSelectSearch.Visible = false;
                        }
                    }
                }
            }
        }
        /// <summary>
        /// 文件阅读
        /// </summary>
        void FileRead()
        {
            try
            {
                string winFilePath = Path.Combine(GlobalObject.GlobalParameter.FileTempPath, m_fileName + m_fileNameSuffix);

                CursorControl.SetWaitCursor(this);
                m_serverFileFtp.Download(m_filePathInternal, winFilePath);

                this.Cursor = System.Windows.Forms.Cursors.Arrow;

                if (GetError())
                {
                    switch (m_fileType)
                    {
                    case CE_SystemFileType.Word:
                    case CE_SystemFileType.Excel:
                        Office文件显示 frmOffice = new Office文件显示(winFilePath, m_fileType);
                        frmOffice.Show();
                        break;

                    default:
                        其他文件显示 frmNormal = new 其他文件显示(winFilePath);
                        frmNormal.Show();
                        break;
                    }
                }
            }
            catch (Exception ex)
            {
                MessageDialog.ShowErrorMessage(ex.Message);
                this.Cursor = System.Windows.Forms.Cursors.Arrow;
            }
        }
Пример #6
0
        /// <summary>
        /// 获取供应商信息对话框
        /// </summary>
        /// <returns>成功则返回获取到的对话框,失败返回null</returns>
        static public FormQueryInfo GetProviderInfoDialog()
        {
            IProviderServer            m_providerServer = ServerModuleFactory.GetServerModule <IProviderServer>();
            IQueryable <View_Provider> queryResult;

            DepotManagementDataContext ctx = CommentParameter.DepotDataContext;

            if (!m_providerServer.GetAllProvider(out queryResult, out m_err))
            {
                MessageDialog.ShowErrorMessage(m_err);
                return(null);
            }
            queryResult = from r in queryResult
                          where r.是否在用 == true
                          select r;

            if (!BasicInfo.ListRoles.Contains(CE_RoleEnum.采购账务管理员.ToString()) &&
                BasicInfo.ListRoles.Contains(CE_RoleEnum.采购员.ToString()))
            {
                var varData = (from r in ctx.View_Provider
                               join f in ctx.ProviderPrincipal
                               on r.供应商编码 equals f.Provider
                               where f.PrincipalWorkId == BasicInfo.LoginID &&
                               r.是否在用 == true
                               select r).Distinct();

                List <View_Provider> lstProvider = new List <View_Provider>();

                foreach (var item in varData)
                {
                    View_Provider lnqProvider = new View_Provider();

                    lnqProvider.供应商编码   = item.供应商编码;
                    lnqProvider.供应商名称   = item.供应商名称;
                    lnqProvider.简称      = item.简称;
                    lnqProvider.拼音码     = item.拼音码;
                    lnqProvider.零星采购供应商 = item.零星采购供应商;
                    lnqProvider.是否在用    = item.是否在用;
                    lnqProvider.五笔码     = item.五笔码;

                    lstProvider.Add(lnqProvider);
                }

                queryResult = lstProvider.AsQueryable();
            }

            System.Data.DataTable dataTable = GlobalObject.GeneralFunction.ConvertToDataTable <View_Provider>(queryResult);
            FormQueryInfo         form      = new FormQueryInfo(dataTable);

            return(form);
        }
        /// <summary>
        /// 保存我的查询
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                if (!TestFilterCondition())
                {
                    return;
                }

                List <FilterInfo> lstFilter = new List <FilterInfo>();

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

                    FilterInfo info = new FilterInfo();

                    info.OrderNo   = i;
                    info.FieldName = control.FieldName;
                    info.DataValue = control.DataValue;

                    if (m_queryResult != null)
                    {
                        info.DataType = m_queryResult.DataCollection.Tables[0].Columns[info.FieldName].DataType.Name;
                    }
                    else
                    {
                        info.DataType = control.DataType;
                    }

                    info.Logic           = control.LogicSymbol;
                    info._operator1      = control.Operator;
                    info.LeftParentheses = control.LeftParentheses;
                    info.RghtParentheses = control.RightParentheses;

                    lstFilter.Add(info);
                }

                QueryFilterControl.SaveFilter(m_title, lstFilter);
                QueryFilterControl.Save();

                MessageDialog.ShowPromptMessage("成功保存查询过滤条件!");
            }
            catch (Exception exce)
            {
                MessageDialog.ShowErrorMessage(exce.Message);
            }
        }
Пример #8
0
        /// <summary>
        /// 为领料而获取领料退库单信息对话框
        /// </summary>
        /// <returns>成功则返回获取到的对话框,失败返回null</returns>
        static public FormQueryInfo GetReturnedInDepotBillDialogForFetchGoods()
        {
            IMaterialReturnedInTheDepot billServer = ServerModuleFactory.GetServerModule <IMaterialReturnedInTheDepot>();

            PlatformManagement.IQueryResult queryInfo;

            if (!billServer.GetAllBillForFetchGoods(out queryInfo, out m_err))
            {
                MessageDialog.ShowErrorMessage(m_err);
                return(null);
            }

            FormQueryInfo form = new FormQueryInfo(queryInfo);

            form.ShowColumns = new string[] { "退库单号", "退库时间", "申请部门", "申请人", "初始用途", "退库原因", "备注" };
            return(form);
        }
Пример #9
0
        /// <summary>
        /// 为领料而获取报废单信息对话框
        /// </summary>
        /// <returns>成功则返回获取到的对话框,失败返回null</returns>
        static public FormQueryInfo GetScrapBillDialogForFetchGoods()
        {
            IScrapBillServer scrapBillServer = ServerModuleFactory.GetServerModule <IScrapBillServer>();

            PlatformManagement.IQueryResult queryInfo;

            if (!scrapBillServer.GetAllBillForFetchGoods(out queryInfo, out m_err))
            {
                MessageDialog.ShowErrorMessage(m_err);
                return(null);
            }

            FormQueryInfo form = new FormQueryInfo(queryInfo);

            form.ShowColumns = new string[] { "报废单号", "报废时间", "报废类别", "报废原因", "是否冲抵领料单", "申请人签名", "仓管签名" };
            return(form);
        }
        /// <summary>
        /// 选择原来保存了的检索名称
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void cmbSearchName_SelectedIndexChanged(object sender, EventArgs e)
        {
            panelParameter.Controls.Clear();
            panelTop.Height = 120;

            if (cmbSearchName.Text != "")
            {
                string error = null;

                IQueryable <SYS_SearchParams> searchParams = m_searchParamsServer.GetParams(
                    m_parentTitle, Business, cmbSearchName.Text, out error);

                if (searchParams == null)
                {
                    return;
                }

                if (!GlobalObject.GeneralFunction.IsNullOrEmpty(error))
                {
                    MessageDialog.ShowErrorMessage(error);
                    return;
                }

                m_count = 0;

                foreach (var item in searchParams)
                {
                    UserControlFindCondition tmpControl = new UserControlFindCondition(m_arrayFindFild, this);

                    tmpControl.LeftParentheses  = item.LeftParentheses.ToString();
                    tmpControl.FieldName        = item.FieldName;
                    tmpControl.Operator         = item.Operator;
                    tmpControl.DataType         = item.DataType;
                    tmpControl.DataValue        = item.DataValue;
                    tmpControl.RightParentheses = item.RightParentheses.ToString();
                    tmpControl.LogicSymbol      = item.Logic;

                    tmpControl.Parent = panelParameter;
                    tmpControl.Dock   = DockStyle.Bottom;
                    panelTop.Height   = panelTop.Height + tmpControl.Height;
                    m_count++;
                    tmpControl.Name = m_count.ToString();
                }
            }
        }
        /// <summary>
        /// 文件编辑
        /// </summary>
        void FileEdit()
        {
            try
            {
                string winFilePath = Path.Combine(GlobalObject.GlobalParameter.FileTempPath, m_fileName + m_fileNameSuffix);
                m_serverFileFtp.Download(m_filePathInternal, winFilePath);

                Thread thread = new Thread(new ThreadStart(ProcessMethod));

                thread.IsBackground = true;
                thread.Start();
            }
            catch (Exception ex)
            {
                MessageDialog.ShowErrorMessage(ex.Message);
                this.Cursor = System.Windows.Forms.Cursors.Arrow;
            }
        }
Пример #12
0
        /// <summary>
        /// 获取库存中指定物品的供应商信息对话框
        /// </summary>
        /// <param name="goodsID">物品ID</param>
        /// <param name="providerType">供应商类型</param>
        /// <returns>成功则返回获取到的对话框,失败返回null</returns>
        static public FormQueryInfo GetDistinctProviderInfoDialog(int goodsID, CE_ScrapProviderType providerType)
        {
            IProviderServer            m_providerServer = ServerModuleFactory.GetServerModule <IProviderServer>();
            IQueryable <View_Provider> queryResult;

            System.Data.DataTable dataTable = new DataTable();

            switch (providerType)
            {
            case CE_ScrapProviderType.责任供应商:

                if (!m_providerServer.GetDistinctProvider(out queryResult, out m_err))
                {
                    MessageDialog.ShowErrorMessage(m_err);
                    return(null);
                }

                dataTable = GlobalObject.GeneralFunction.ConvertToDataTable <View_Provider>(queryResult);

                break;

            case CE_ScrapProviderType.供应商:

                View_F_GoodsPlanCost viewGoods = UniversalFunction.GetGoodsInfo(goodsID);

                string strSql = " select distinct a.* from View_Provider as a inner join ( " +
                                " select distinct GoodsID, Provider from S_InDepotDetailBill as a " +
                                " union all select distinct GoodsID, Provider from S_Stock) as b  " +
                                " on a.供应商编码 = b.Provider inner join F_GoodsPlanCost as c on b.GoodsID = c.ID " +
                                " where GoodsName = '" + viewGoods.物品名称 + "'";

                dataTable = GlobalObject.DatabaseServer.QueryInfo(strSql);

                break;

            default:
                break;
            }

            FormQueryInfo form = new FormQueryInfo(dataTable);

            form.ShowColumns = new string[] { "供应商编码" };
            return(form);
        }
Пример #13
0
        /// <summary>
        /// 获取订单信息对话框
        /// </summary>
        /// <param name="billType">单据类型</param>
        /// <returns>成功则返回获取到的对话框,失败返回null</returns>
        static public FormQueryInfo GetOrderFormInfoDialog(CE_BillTypeEnum billType)
        {
            DepotManagementDataContext dataContext = CommentParameter.DepotDataContext;

            IOrderFormInfoServer orderFormInfoServer = ServerModuleFactory.GetServerModule <IOrderFormInfoServer>();
            IQueryable <View_B_OrderFormInfo> queryResult;

            if (!orderFormInfoServer.GetAllOrderFormInfo(BasicInfo.ListRoles, BasicInfo.LoginID, billType, out queryResult, out m_err))
            {
                MessageDialog.ShowErrorMessage(m_err);
                return(null);
            }

            System.Data.DataTable dataTable = GlobalObject.GeneralFunction.ConvertToDataTable <View_B_OrderFormInfo>(queryResult);
            FormQueryInfo         form      = new FormQueryInfo(dataTable);

            form.HideColumns = new string[] { "供应商联系人", "供应商联系电话", "供应商传真号", "供应商电子邮件", "权限控制用登录名", "录入人员" };
            return(form);
        }
Пример #14
0
        /// <summary>
        /// 获取指定订单的物品信息对话框
        /// </summary>
        /// <param name="orderFormNumber">订单号</param>
        /// <param name="simpleMode">是否是简单模式的标志, 是则只显示最基本的物品信息列(图号、名称、规格)</param>
        /// <returns>成功则返回获取到的对话框,失败返回null</returns>
        static public FormQueryInfo GetOrderFormGoodsDialog(string orderFormNumber, bool simpleMode)
        {
            IOrderFormGoodsServer orderFormGoodsServer = ServerModuleFactory.GetServerModule <IOrderFormGoodsServer>();
            IQueryable <View_B_OrderFormGoods> queryResult;

            if (!orderFormGoodsServer.GetOrderFormGoods(BasicInfo.ListRoles, BasicInfo.LoginID, orderFormNumber, out queryResult, out m_err))
            {
                MessageDialog.ShowErrorMessage(m_err);
                return(null);
            }

            //FormQueryInfo form = new FormQueryInfo(queryInfo);
            System.Data.DataTable dataTable = GlobalObject.GeneralFunction.ConvertToDataTable <View_B_OrderFormGoods>(queryResult);
            FormQueryInfo         form      = new FormQueryInfo(dataTable);

            if (simpleMode)
            {
                form.ShowColumns = new string[] { "物品ID", "图号型号", "物品名称", "规格" };
            }

            return(form);
        }
Пример #15
0
        /// <summary>
        /// 获取指定合同的物品信息对话框
        /// </summary>
        /// <param name="bargainNumber">合同号</param>
        /// <param name="simpleMode">是否是简单模式的标志, 是则只显示最基本的物品信息列(图号、名称、规格)</param>
        /// <returns>成功则返回获取到的对话框,失败返回null</returns>
        static public FormQueryInfo GetBargainGoodsDialog(string bargainNumber, bool simpleMode)
        {
            IBargainGoodsServer infoServer = ServerModuleFactory.GetServerModule <IBargainGoodsServer>();
            IQueryable <View_B_BargainGoods> queryResult;

            if (!infoServer.GetBargainGoods(bargainNumber, out queryResult, out m_err))
            {
                MessageDialog.ShowErrorMessage(m_err);
                return(null);
            }

            //FormQueryInfo form = new FormQueryInfo(queryInfo);
            System.Data.DataTable dataTable = GlobalObject.GeneralFunction.ConvertToDataTable <View_B_BargainGoods>(queryResult);
            FormQueryInfo         form      = new FormQueryInfo(dataTable);

            if (simpleMode)
            {
                form.ShowColumns = new string[] { "图号型号", "物品名称", "规格" };
            }

            return(form);
        }
Пример #16
0
        /// <summary>
        /// 显示帮助
        /// </summary>
        /// <param name="keyword">要显示帮助的关键字</param>
        static void Show(string keyword)
        {
            if (m_hp == null)
            {
                m_hp = new HelpProvider();
                m_hp.HelpNamespace = "进销存信息化系统操作手册.chm";
            }

            if (m_helpControl == null)
            {
                MessageDialog.ShowErrorMessage("用于触发帮助的控件为NULL,操作失败");
                return;
            }

            if (GlobalObject.GeneralFunction.IsNullOrEmpty(keyword))
            {
                MessageDialog.ShowErrorMessage("帮助关键字为空,操作失败");
                return;
            }

            Help.ShowHelp(m_helpControl, m_hp.HelpNamespace, HelpNavigator.KeywordIndex, keyword);
        }
        /// <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;
            }
        }
        /// <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();
        }
        /// <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;
                        }
                    }
                }
            }
        }
        /// <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);
            }
        }
Пример #21
0
        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();
        }
Пример #22
0
        /// <summary>
        /// 获取库存中的物品信息对话框
        /// </summary>
        /// <param name="billType">单据类型</param>
        /// <param name="showZeroStoreGoods">是否显示零库存物品</param>
        /// <returns>成功则返回获取到的对话框,失败返回null</returns>
        static public FormQueryInfo GetStoreGoodsInfoDialog(CE_BillTypeEnum billType, bool showZeroStoreGoods, string strStorageID)
        {
            IStoreServer server = ServerModuleFactory.GetServerModule <IStoreServer>();
            IQueryable <View_S_Stock> queryResult;

            System.Data.DataTable dataTable = null;

            if (!server.GetAllStore(null, true, out queryResult, out m_err))
            {
                MessageDialog.ShowErrorMessage(m_err);
                return(null);
            }

            // 仅显示状态为正常且不在隔离库中的物品
            if (billType == CE_BillTypeEnum.领料单)
            {
                List <string> listTempStockStatus = new List <string>();
                listTempStockStatus.Add("正常");

                foreach (int statusID in _lstStockStatus)
                {
                    switch (statusID)
                    {
                    case 1:
                        listTempStockStatus.Add("仅限于返修箱用");
                        break;

                    case 2:
                        listTempStockStatus.Add("样品");
                        break;

                    case 3:
                        listTempStockStatus.Add("仅限于返修箱用");
                        listTempStockStatus.Add("仅限于售后备件");
                        break;

                    case 4:
                        listTempStockStatus.Add("隔离");
                        break;

                    default:
                        break;
                    }
                }

                queryResult = from r in queryResult
                              where listTempStockStatus.Contains(r.物品状态) &&
                              r.库房代码 == strStorageID
                              select r;
            }
            else if (billType == CE_BillTypeEnum.领料退库单)
            {
                queryResult = from r in queryResult
                              where r.物品状态 != "隔离"
                              select r;
            }

            ////TCU 采购部领用委外装配 Modify by cjb on 2014.5.28
            //if (!GlobalObject.GeneralFunction.IsNullOrEmpty(prefixDepotType) && strStorageID != "03")
            //{
            //    int len = prefixDepotType.Length;
            //    queryResult = from r in queryResult where r.材料类别编码.Substring(0, len) == prefixDepotType select r;
            //}

            if (!showZeroStoreGoods)
            {
                queryResult = from r in queryResult where r.库存数量 > 0 select r;
            }

            FormQueryInfo form = null;

            if (!BasicInfo.ListRoles.Exists(r => r.Contains("库管理员")))
            {
                if (billType == CE_BillTypeEnum.领料单 && !_lstStockStatus.Contains(2) && !_lstStockStatus.Contains(4))
                {
                    var result = (from r in queryResult select r).ToList().Distinct(new StockGoodsComparer());
                    dataTable = GlobalObject.GeneralFunction.ConvertToDataTable <View_S_Stock>(result);
                }
                else
                {
                    dataTable = GlobalObject.GeneralFunction.ConvertToDataTable <View_S_Stock>(queryResult);
                }
            }
            else
            {
                dataTable = GlobalObject.GeneralFunction.ConvertToDataTable <View_S_Stock>(queryResult);
            }

            form = new FormQueryInfo(dataTable);

            if (!showZeroStoreGoods)
            {
                form.Text = form.Text + ",库存数量为0的物品不会显示在列表中。";
            }

            if (!BasicInfo.ListRoles.Exists(r => r.Contains("库管理员")))
            {
                if (billType == CE_BillTypeEnum.报废单 || billType == CE_BillTypeEnum.领料退库单)
                {
                    form.HideColumns = new string[] { "序号", "物品ID", "单位", "单位ID", "库存数量", "仓库", "货架", "层", "列", "实际单价", "实际金额" }
                }
                ;
                else if (billType == CE_BillTypeEnum.领料单)
                {
                    form.HideColumns = new string[] { "序号", "物品ID", "单位", "实际单价", "实际金额" }
                }
                ;
            }
            else
            {
                form.HideColumns = new string[] { "序号", "物品ID", "单位ID", "单位", "实际单价", "实际金额" };
            }

            return(form);
        }