コード例 #1
0
        /// <summary>
        /// 查询留抵记录
        /// </summary>
        private void LoadData()
        {
            /* Modified by cyq 20160331 */
            /* ***********  Begin  *********/
            int currYear = SysUtil.GetCurrentYear();

            db.Log = Console.Out;
            if (cbxAgentCs.SelectedItem == null)
            {
                //dgvCredit.DataSource = db.v_TAXCREDITs
                //                            .Where(a => a.AI_NAME == ((AGENT_INFO)cbxAgents.SelectedItem).AI_NAME)
                //                            .Select(a => a).ToList();
                dgvCredit.DataSource = db.v_TAXCREDITs
                                       .Where(a => a.AI_NAME == ((AGENT_INFO)cbxAgents.SelectedItem).AI_NAME &&
                                              (currYear - a.TC_YEAR) <= 5)
                                       .Select(a => a).ToList();
            }
            else
            {
                //dgvCredit.DataSource = db.v_TAXCREDITs
                //                         .Where(a => a.AI_NAME == ((AGENT_INFO)cbxAgents.SelectedItem).AI_NAME &&
                //                            (a.AC_NAME == ((AGENT_COUNTRY)cbxAgentCs.SelectedItem).AC_NAME))
                //                         .Select(a => a).ToList();

                dgvCredit.DataSource = db.v_TAXCREDITs
                                       .Where(a => a.AI_NAME == ((AGENT_INFO)cbxAgents.SelectedItem).AI_NAME &&
                                              (a.AC_NAME == ((AGENT_COUNTRY)cbxAgentCs.SelectedItem).AC_NAME) &&
                                              (currYear - a.TC_YEAR) <= 5)
                                       .Select(a => a).ToList();
            }



            /* ***********  End  *********/

            setRowNumber(dgvCredit);
        }
コード例 #2
0
ファイル: frmMain.cs プロジェクト: Clark-Chen-Dev/TempRepo
 private void loadYear()
 {
     toolStripStatusLabel2.Text = "当前年度:" + SysUtil.GetCurrentYear();
 }
コード例 #3
0
        private void btnDel_Click(object sender, EventArgs e)
        {
            int count = dgvReportList.SelectedRows.Count;

            if (count == 0)
            {
                MessageBox.Show("请选择记录后进行操作");
                return;
            }

            DialogResult dialogResult = MessageBox.Show("确定将此" + count + "记录删除吗", this.funName, MessageBoxButtons.YesNo);

            if (dialogResult == DialogResult.Yes)
            {
                for (int i = 0; i < count; i++)
                {
                    /* Modified by cyq 20160331 */
                    /* ***********  Begin  *********/
                    //int riid = (int)dgvReportList.SelectedRows[i].Cells[0].Value;
                    //db.REPORT1_DETAILs.DeleteAllOnSubmit(db.REPORT1_DETAILs.Where(a => a.R1_RIID == riid));
                    //db.REPORT2_DETAILs.DeleteAllOnSubmit(db.REPORT2_DETAILs.Where(a => a.R2_RIID == riid));
                    //db.REPORT_INFOs.DeleteAllOnSubmit(db.REPORT_INFOs.Where(a => a.RI_ID == riid));
                    //db.TAX_CREDITs.DeleteAllOnSubmit(db.TAX_CREDITs.Where(a => a.TC_RIID == riid));
                    //db.SubmitChanges();

                    int riid = (int)dgvReportList.SelectedRows[i].Cells[0].Value;

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

                        var reportInfo     = db.REPORT_INFOs.Where(a => a.RI_ID == riid);
                        var tpid           = reportInfo.Select(report => report.RI_TPID).Single();
                        var relatedCredits = db.TAX_CREDITs
                                             .Where(a => a.TP_ID == tpid && (SysUtil.GetCurrentYear() - a.TC_YEAR) <= 5 &&
                                                    a.TC_CREDITUSED > 0).ToList();

                        if (relatedCredits.Any())
                        {
                            decimal avail = reportInfo.Single().RI_USEALL.GetValueOrDefault() - reportInfo.Single().RI_USE2.GetValueOrDefault();
                            decimal diff  = 0;

                            foreach (var credit in relatedCredits)
                            {
                                diff = credit.TC_CREDITUSED.GetValueOrDefault() - avail;

                                if (diff >= 0)
                                {
                                    credit.TC_CREDITUSED    -= avail;
                                    credit.TC_CREDITBALANCE += avail;
                                    break;
                                }
                                else
                                {
                                    avail -= credit.TC_CREDITUSED.GetValueOrDefault();
                                    credit.TC_CREDITBALANCE = credit.TC_CREDITALL;
                                    credit.TC_CREDITUSED    = 0;
                                }
                            }
                        }

                        db.REPORT1_DETAILs.DeleteAllOnSubmit(db.REPORT1_DETAILs.Where(a => a.R1_RIID == riid));
                        db.REPORT2_DETAILs.DeleteAllOnSubmit(db.REPORT2_DETAILs.Where(a => a.R2_RIID == riid));
                        db.REPORT_INFOs.DeleteAllOnSubmit(reportInfo);
                        db.TAX_CREDITs.DeleteAllOnSubmit(db.TAX_CREDITs.Where(a => a.TC_RIID == riid));
                        db.SubmitChanges(ConflictMode.FailOnFirstConflict);
                        db.Transaction.Commit();
                    }
                    catch (ChangeConflictException)
                    {
                        db.Transaction.Rollback();
                        MessageBox.Show("报表记录及报表对应的留抵因未知原因无法级联删除。", "错误",
                                        MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }

                    /* ***********  End  *********/
                }
            }

            LoadData();
        }
コード例 #4
0
ファイル: frmMain.cs プロジェクト: Clark-Chen-Dev/TempRepo
        private void frmMain_Shown(object sender, EventArgs e)
        {
            frmLogin     loginScreen = new frmLogin();
            DialogResult result      = loginScreen.ShowDialog();


            if (result == DialogResult.OK)
            {
                UserName = loginScreen.UserName;
                toolStripStatusLabel1.Text = "当前用户:" + loginScreen.UserName + "   当前年度:" + SysUtil.GetCurrentYear();

                loadMenu();
            }
            else
            {
                Application.Exit();
            }
        }