Пример #1
0
        /// <summary>
        /// 保存签证号
        /// </summary>
        void saveQZID()
        {
            try
            {
                this.MainBar.Focus();

                if (sendCollection.Count() == 0)
                {
                    MessageBox.Show("没有签证");
                    return;
                }

                foreach (var SendModel in sendCollection)
                {
                    if (string.IsNullOrEmpty(SendModel.FQZID))
                    {
                        if (QZIDnum == "" || QZIDstring == "")
                        {
                            MessageBox.Show("请先设置起始签证号码");
                            return;
                        }
                    }
                }

                string QZID = "";

                SendInfo sObj = new SendInfo();
                Customer cObj = new Customer();
                QZKC QZNOObj = new QZKC();

                int i = 0;
                if (!string.IsNullOrEmpty(QZIDnum))
                    i = Convert.ToInt32(QZIDnum);

                foreach (var SendModel in sendCollection)
                {
                    cObj = visaORM.Customer.FirstOrDefault(c => c.FID == SendModel.QID);
                    if (cObj != null)
                    {
                        if (string.IsNullOrEmpty(cObj.FQZID)) //如果没有签证号,就保存签证号
                        {

                            if (!string.IsNullOrEmpty(SendModel.FQZID))
                                QZID = SendModel.FQZID;
                            else
                                QZID = GetVisaNumberString(QZIDstring, i.ToString().Length, ref i);

                            QZNOObj = visaORM.QZKC.FirstOrDefault(q => q.FIsUse == false && q.FQZID == QZID);
                            if (QZNOObj == null)
                            {
                                MessageBox.Show(string.Format("签证号码{0}已经被使用或不存在,请添加或使用其他起始号码", QZID));
                                return;
                            }
                            cObj.FQZID = QZNOObj.FQZID;
                            QZNOObj.FIsUse = true;

                            sObj = visaORM.SendInfo.FirstOrDefault(s => s.FCustomerID == cObj.FID);

                            if (sObj != null) sObj.FQZID = QZNOObj.FQZID;

                            visaORM.ObjectStateManager.ChangeObjectState(sObj, System.Data.EntityState.Modified);
                            visaORM.ObjectStateManager.ChangeObjectState(cObj, System.Data.EntityState.Modified);
                            visaORM.ObjectStateManager.ChangeObjectState(QZNOObj, System.Data.EntityState.Modified);
                            visaORM.SaveChanges();
                            i++;
                        }
                        else //如果已有签证号,提示是否覆盖
                        {
                            if (
                                System.Windows.MessageBox.Show(
                                    string.Format("护照号为{0}已存在签证号(可能是上一次录入或者本次手动录入),是否覆盖当前号码?", SendModel.PID), "已存在签证号",
                                    MessageBoxButton.YesNo) == MessageBoxResult.Yes)
                            {
                                //更新表一的签证号码
                                cObj.FQZID = SendModel.FQZID;

                                //更新签证号码表中的使用情况
                                QZNOObj = visaORM.QZKC.FirstOrDefault(q => q.FIsUse == false && q.FQZID == SendModel.FQZID);
                                if (QZNOObj == null)
                                {
                                    MessageBox.Show(string.Format("签证号码{0}已经被使用或不存在,请添加或使用其他起始号码", SendModel.FQZID));
                                    return;
                                }
                                cObj.FQZID = QZNOObj.FQZID;
                                QZNOObj.FIsUse = true;

                                //更新表三的签证号码
                                sObj = visaORM.SendInfo.FirstOrDefault(s => s.FCustomerID == cObj.FID);
                                if (sObj != null)
                                {
                                    sObj.FQZID = QZNOObj.FQZID;
                                    visaORM.ObjectStateManager.ChangeObjectState(sObj, System.Data.EntityState.Modified);
                                }
                                visaORM.ObjectStateManager.ChangeObjectState(cObj, System.Data.EntityState.Modified);
                                visaORM.ObjectStateManager.ChangeObjectState(QZNOObj, System.Data.EntityState.Modified);
                                visaORM.SaveChanges();
                            }
                        }

                    }

                }

                MessageBox.Show("保存成功");
                if (System.Windows.MessageBox.Show("保存签证成功,是否继续打印表四", "保存成功", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
                {
                    printTable4();
                }
                //保存时设置为保存为已打印
                SaveSysPrint();
                //初始化未打印的名单列表
                InitNotPrintSource(false);
                sendCollection.Clear();
                cbNotPrint.EditValue = "";

            }
            catch (System.Exception ex)
            {
                MessageBox.Show(ex.Message);
                Log.WriteLog.WriteErorrLog(ex);

            }
        }
Пример #2
0
        //
        private void btnAdd_Click(object sender, RoutedEventArgs e)
        {
            if (MessageBox.Show("将添加"+txtNumber.Text+"个号码,是否确定?", "添加确认", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
            {
                if (!ValidateControl())
                    return;

                string stringStart = txtStartNum.Text;
                string stringEnd = txtEndNum.Text;

                numStart = Convert.ToInt32(txtStartNum.Text);
                numEnd = Convert.ToInt32(txtEndNum.Text);
                string FirstLetter = txtLetter.Text.ToUpper();

                int StringLenght = stringStart.Length;

                for (int i = numStart; i <= numEnd; i++)
                {
                    int NumberLenght = i.ToString().Length;
                    string QZID = GetVisaNumberString(FirstLetter, NumberLenght, i);
                    QZKC qzObj = visaORM.QZKC.FirstOrDefault(q => q.FQZID == QZID);
                    if (qzObj == null)
                    {
                        QZKC tempObj = new QZKC();
                        visaORM.QZKC.AddObject(tempObj);
                        tempObj.FQZID = QZID;
                        tempObj.FIsUse = false;
                        visaORM.SaveChanges();
                    }

                }
                visaORM.SaveChanges();
                MessageBox.Show("添加完成");
                InitSumInfo();
                stateAll_Checked(sender,null);
                btnPrev_Click(null, null);
            }
        }
Пример #3
0
 /// <summary>
 /// 用于向 QZKC EntitySet 添加新对象的方法,已弃用。请考虑改用关联的 ObjectSet&lt;T&gt; 属性的 .Add 方法。
 /// </summary>
 public void AddToQZKC(QZKC qZKC)
 {
     base.AddObject("QZKC", qZKC);
 }
Пример #4
0
        void SetIDCs(int numStart, int numEnd, string FirstLetter,int state)
        {
            QZKC tempModel;
            IDCs.Clear();

            switch (state)
            {
                case 2:
                for (int i = numStart; i <= numEnd; i++)
                {
                    tempModel = new QZKC();
                    int NumberLenght = i.ToString().Length;
                    tempModel.FQZID = GetVisaNumberString(FirstLetter, NumberLenght, i);
                    IDCs.Add(tempModel);
                    //if (visaORM.QZKC.FirstOrDefault(q => q.FQZID == tempModel.FQZID && q.FIsUse==true) != null) MainListBox.SelectedItems.Add(tempModel);
                }
                    break;
                case 1:
                    for (int i = numStart; i <= numEnd; i++)
                    {
                        tempModel = new QZKC();
                        int NumberLenght = i.ToString().Length;
                        tempModel.FQZID = GetVisaNumberString(FirstLetter, NumberLenght, i);

                        if (visaORM.QZKC.FirstOrDefault(q => q.FQZID == tempModel.FQZID && q.FIsUse == true) != null)
                        {
                            tempModel.FIsUse = true;
                            IDCs.Add(tempModel);
                        }
                    }
                    break;
                case 0:
                    for (int i = numStart; i <= numEnd; i++)
                    {
                        tempModel = new QZKC();
                        int NumberLenght = i.ToString().Length;
                        tempModel.FQZID = GetVisaNumberString(FirstLetter, NumberLenght, i);

                        if (visaORM.QZKC.FirstOrDefault(q => q.FQZID == tempModel.FQZID && q.FIsUse == false) != null) IDCs.Add(tempModel);
                    }
                    break;
                default:
                    break;

            }
        }
Пример #5
0
 /// <summary>
 /// 创建新的 QZKC 对象。
 /// </summary>
 /// <param name="fQZID">FQZID 属性的初始值。</param>
 /// <param name="fIsUse">FIsUse 属性的初始值。</param>
 public static QZKC CreateQZKC(global::System.String fQZID, global::System.Boolean fIsUse)
 {
     QZKC qZKC = new QZKC();
     qZKC.FQZID = fQZID;
     qZKC.FIsUse = fIsUse;
     return qZKC;
 }