/// <summary> /// 保存借用单 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSave_Press(object sender, EventArgs e) { try { AssBorrowOrderInputDto assBorrowOrderInput = new AssBorrowOrderInputDto { AssIds = AssIdList, BORROWDATE = DateTime.Now, BORROWER = BoManId, BRHANDLEMAN = HManId, CREATEUSER = UserId, EPTRETURNDATE = DateTime.Now.AddYears(1), LOCATIONID = LocationId, MODIFYUSER = UserId, NOTE = txtNote.Text }; ReturnInfo returnInfo = _autofacConfig.AssetsService.AddAssBorrowOrder(assBorrowOrderInput); if (returnInfo.IsSuccess) { ShowResult = ShowResult.Yes; Toast("添加成功"); Close(); } else { Toast(returnInfo.ErrorInfo); } } catch (Exception ex) { Toast(ex.Message); } }
/// <summary> /// 添加借用单 /// </summary> /// <param name="borrowOrderInput">借用单信息</param> /// <returns></returns> public ReturnInfo AddAssBorrowOrder(AssBorrowOrderInputDto borrowOrderInput) { //验证 ReturnInfo rInfo = new ReturnInfo(); StringBuilder sb = new StringBuilder(); //string maxId = _assBorrowOrderRepository.GetMaxId(); //string boId = Helper.GenerateIDEx("BO", maxId); //borrowOrderInput.id = int.Parse(boId); sb.Append(Helper.BasicValidate(borrowOrderInput).ToString()); if (sb.Length == 0) { var assbo = Mapper.Map <AssBorrowOrderInputDto, cmdb_uselog>(borrowOrderInput); //Console.WriteLine(assbo.phone); //Console.WriteLine(assbo.principal); //Console.WriteLine(assbo.give_time); //Console.WriteLine(assbo.return_time); //Console.WriteLine(assbo.expired); //Console.WriteLine(assbo.position); //Console.WriteLine(assbo.project_id); //Console.WriteLine(assbo.team_id); //Console.WriteLine(assbo.use_man_id); //Console.WriteLine(assbo.remark); //assbo.CREATEDATE = DateTime.Now; //assbo.MODIFYDATE = DateTime.Now; try { _unitOfWork.RegisterNew(assbo); //foreach (var id in borrowOrderInput.Assids) //{ // //修改Asset的状态 // //fixme // cmdb_asset assets = _assetsRepository.GetByID(id.ToString()).FirstOrDefault(); // if (assets != null) // { // assets.status = (int)STATUS.外借; // assets.use_man_id = borrowOrderInput.use_man_id; // ////得到借用人的区域,并修改资产的区域为借用人的区域 // //var User = _SMOSECDbContext.coreUsers.Where(a => a.USER_ID == assbo.BORROWER) // // .AsNoTracking().FirstOrDefault(); // //if (User != null) // //{ // // assets.LOCATIONID = User.USER_LOCATIONID; // // assets.DEPARTMENTID = User.USER_DEPARTMENTID; // //} // //else // //{ // // throw new Exception("该用户不存在。"); // //} // _unitOfWork.RegisterDirty(assets); // } // //添加行项 // var corow = new cmdb_assettouselog // { // asset_id = id, // use_log_id = borrowOrderInput.project_id//fixme 此处应该先提交表单,获取use_log_id后再添加资产 // }; // _unitOfWork.RegisterNew(corow); // ////添加处理记录 // //var pr = new AssProcessRecord // //{ // // ASSID = assId, // // CREATEDATE = DateTime.Now, // // CREATEUSER = borrowOrderInput.CREATEUSER, // // HANDLEDATE = DateTime.Now, // // HANDLEMAN = borrowOrderInput.BRHANDLEMAN, // // MODIFYDATE = DateTime.Now, // // MODIFYUSER = borrowOrderInput.MODIFYUSER, // // PROCESSCONTENT = borrowOrderInput.BORROWER + "借用了" + assId, // // PROCESSMODE = (int)PROCESSMODE.借用, // // QUANTITY = 1 // //}; // //_unitOfWork.RegisterNew(pr); //} bool result = _unitOfWork.Commit(); rInfo.IsSuccess = result; rInfo.ErrorInfo = sb.ToString(); return(rInfo); } catch (Exception ex) { _unitOfWork.Rollback(); sb.Append(ex.Message); rInfo.IsSuccess = false; rInfo.ErrorInfo = sb.ToString(); return(rInfo); } } else { rInfo.IsSuccess = false; rInfo.ErrorInfo = sb.ToString(); return(rInfo); } }
/// <summary> /// 添加借用单 /// </summary> /// <param name="borrowOrderInput">借用单信息</param> /// <returns></returns> public ReturnInfo AddAssBorrowOrder(AssBorrowOrderInputDto borrowOrderInput) { //验证 ReturnInfo rInfo = new ReturnInfo(); StringBuilder sb = new StringBuilder(); string maxId = _assBorrowOrderRepository.GetMaxId(); string boId = Helper.GenerateIDEx("BO", maxId); borrowOrderInput.BOID = boId; sb.Append(Helper.BasicValidate(borrowOrderInput).ToString()); if (sb.Length == 0) { var assbo = Mapper.Map<AssBorrowOrderInputDto, AssBorrowOrder>(borrowOrderInput); assbo.CREATEDATE = DateTime.Now; assbo.MODIFYDATE = DateTime.Now; try { _unitOfWork.RegisterNew(assbo); foreach (var assId in borrowOrderInput.AssIds) { //修改Asset的状态 Assets assets = _assetsRepository.GetByID(assId).FirstOrDefault(); if (assets != null) { assets.STATUS = (int)STATUS.借用中; assets.CURRENTUSER = borrowOrderInput.BORROWER; //得到借用人的区域,并修改资产的区域为借用人的区域 var User = _SMOSECDbContext.coreUsers.Where(a => a.USER_ID == assbo.BORROWER) .AsNoTracking().FirstOrDefault(); if (User != null) { assets.LOCATIONID = User.USER_LOCATIONID; assets.DEPARTMENTID = User.USER_DEPARTMENTID; } else { throw new Exception("该用户不存在。"); } _unitOfWork.RegisterDirty(assets); } //添加行项 var corow = new AssBorrowOrderRow { ASSID = assId, BOID = boId, CREATEDATE = DateTime.Now, CREATEUSER = borrowOrderInput.CREATEUSER, MODIFYDATE = DateTime.Now, MODIFYUSER = borrowOrderInput.MODIFYUSER }; _unitOfWork.RegisterNew(corow); //添加处理记录 var pr = new AssProcessRecord { ASSID = assId, CREATEDATE = DateTime.Now, CREATEUSER = borrowOrderInput.CREATEUSER, HANDLEDATE = DateTime.Now, HANDLEMAN = borrowOrderInput.BRHANDLEMAN, MODIFYDATE = DateTime.Now, MODIFYUSER = borrowOrderInput.MODIFYUSER, PROCESSCONTENT = borrowOrderInput.BORROWER + "借用了" + assId, PROCESSMODE = (int)PROCESSMODE.借用, QUANTITY = 1 }; _unitOfWork.RegisterNew(pr); } bool result = _unitOfWork.Commit(); rInfo.IsSuccess = result; rInfo.ErrorInfo = sb.ToString(); return rInfo; } catch (Exception ex) { _unitOfWork.Rollback(); sb.Append(ex.Message); rInfo.IsSuccess = false; rInfo.ErrorInfo = sb.ToString(); return rInfo; } } else { rInfo.IsSuccess = false; rInfo.ErrorInfo = sb.ToString(); return rInfo; } }
/// <summary> /// 保存借用单 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSave_Press(object sender, EventArgs e) { try { //if (AssIdList.Count == 0) //{ // throw new Exception("请添加借用的资产!"); //} if (String.IsNullOrEmpty(txtManager.Text)) { throw new Exception("借出处理人不能为空"); } if (String.IsNullOrEmpty(btnLocation.Text)) { throw new Exception("来源区域不能为空"); } if (string.IsNullOrEmpty(btnPro.Text)) { throw new Exception("请选择项目."); } if (string.IsNullOrEmpty(btnTeam.Text)) { throw new Exception("请选择团队."); } if (txtphone.Text.Trim().Length <= 0) //是否是手机号码 { throw new Exception("请输入电话号码!"); } Regex regex = new Regex(@"^1(3[0-9]|4[57]|5[0-35-9]|7[0135678]|8[0-9])\d{8}$"); if (regex.IsMatch(txtphone.Text) == false) { throw new Exception("手机号码格式不正确!"); } if (DPickerRs.Value == DateTime.Now) { throw new Exception("请选择预计归还日期!"); } AssBorrowOrderInputDto assBorrowOrderInput = new AssBorrowOrderInputDto { //Assids = AssIdList, phone = txtphone.Text,//fixme principal = txtManager.Text, give_time = DPickerCO.Value, return_time = DPickerRs.Value,//DateTime.Now.AddMonths(1),fixme 时间不选也不报错 expired = 1, position = btnLocation.Text, project_id = Project_id, team_id = Team_id, use_man_id = BoManId, remark = txtNote.Text }; ReturnInfo returnInfo = _autofacConfig.AssetsService.AddAssBorrowOrder(assBorrowOrderInput); if (returnInfo.IsSuccess) { ShowResult = ShowResult.Yes; Toast("添加成功"); Close(); } else { Toast(returnInfo.ErrorInfo); } } catch (Exception ex) { Toast(ex.Message); } }