private void dgvContractList_CellContentClick(object sender, DataGridViewCellEventArgs e)
 {
     int columnIndex = e.ColumnIndex;
     int rowIndex = e.RowIndex;
     //AddCode
     if (rowIndex == -1) {
         return;
     }
     //AddCode
     if (this.dgvContractList.Columns[columnIndex] == this.dgvContractList.Columns[_delColumnName]) {
         var dialogResult = MessageBox.Show("确定要删除吗?", SystemInfo.ReminderStr, MessageBoxButtons.OKCancel);
         if (dialogResult == DialogResult.OK) {
             var contractID = (int)dgvContractList.Rows[rowIndex].Cells["ContractID"].Value;
             var result = new ContractBLL().DeleteContractByID(contractID);
             if (result.Code > 0) {
                 MessageBox.Show(result.Message, SystemInfo.ErrorReminderStr, MessageBoxButtons.OK);
             }
             BindDataList();
         }
     } else if (this.dgvContractList.Columns[columnIndex] == this.dgvContractList.Columns[_editColumName]) {
         var contractID = (int)dgvContractList.Rows[rowIndex].Cells["ContractID"].Value;
         var contractForm = new ContractInfoForm(true, contractID, null);
         contractForm.callbackEvent += delegate {
             BindDataList();
         };
         contractForm.ShowDialog();
     }
 }
        private void btnSave_Click(object sender, EventArgs e)
        {
            var contract = new Contract();
            contract.ContractNum = this.txtContractNum.Text;
            contract.ContractrType = this.cbxContractrType.SelectedIndex + 1;
            contract.EndDate = this.dtpEndDate.Value;
            contract.IsFirstContract = this.rbtnIsFirstContract.Checked;
            if (this.dtpProbationEndDate.Parent.Visible == true) {
                contract.ProbationEndDate = this.dtpProbationEndDate.Value;
            }

            contract.StartDate = this.dtpStartDate.Value;

            var bll = new ContractBLL();
            CResult<bool> result = new CResult<bool>(false);
            if (this._isEdit) {
                contract.ContractID = this._currentContractID.Value;
                result = bll.UpdateContract(contract);
            } else {
                contract.PeopleID = this._peopleID.Value;
                result = bll.InsertContract(contract);
            }

            MessageHelper.ShowSaveDbResultMessage(result);
            if (result.Code == 0) {
                this.Dispose();
                if (callbackEvent != null) {
                    callbackEvent.Invoke();
                }
            }
        }
 private void BindDataList()
 {
     this.dgvContractList.AutoGenerateColumns = false;
     var contracts = new ContractBLL().GetContractList(_currentPeopleID).Data;
     foreach (var item in contracts) {
         if (!item.IsFirstContract) {
             item.ProbationEndDate = null;
         }
     }
     this.dgvContractList.DataSource = contracts;
 }
        private void InitControlValue()
        {
            if (this._currentContractID.HasValue) {
                var contract = new ContractBLL().GetContractByID(this._currentContractID.Value).Data;
                if (contract.IsFirstContract) {
                    this.rbtnIsFirstContract.Checked = true;
                } else {
                    this.rbtnNotFirstContract.Checked = true;
                }

                this.cbxContractrType.SelectedItem = ((ContractrTypeEnum)contract.ContractrType).ToString();

                if (contract.StartDate.HasValue) {
                    this.dtpStartDate.Value = contract.StartDate.Value;
                }
                if (contract.ProbationEndDate.HasValue) {
                    this.dtpProbationEndDate.Value = contract.ProbationEndDate.Value;
                }
                if (contract.EndDate.HasValue) {
                    this.dtpEndDate.Value = contract.EndDate.Value;
                }
                this.txtContractNum.Text = contract.ContractNum;
            }
        }