public ActionResult Edit(Epm_TzGcGoodsOrdersApply model)
        {
            Result <int> result = new Result <int>();
            string       tzGcGoodsOrdersItem = Request.Form["tzGcGoodsOrdersItem"];//获取人员变更情况json字符串

            if (!string.IsNullOrEmpty(tzGcGoodsOrdersItem))
            {
                model.TzGcGoodsOrdersItem = JsonConvert.DeserializeObject <List <Epm_TzGcGoodsOrdersItem> >(tzGcGoodsOrdersItem);
            }

            using (ClientSiteClientProxy proxy = new ClientSiteClientProxy(ProxyEx(Request)))
            {
                result = proxy.UpdateTzGcGoodsOrdersApply(model);
            }
            return(Json(result.ToResultView()));
        }
Пример #2
0
        ///<summary>
        ///添加:
        ///</summary>
        /// <param name="model">要添加的model</param>
        /// <returns>受影响的行数</returns>
        public Result <int> AddTzGcGoodsOrdersApply(Epm_TzGcGoodsOrdersApply model)
        {
            Result <int> result = new Result <int>();

            try
            {
                model = SetCurrentUser(model);
                model = SetCreateUser(model);

                #region 工程甲供物资订单
                var XtWorkFlow = System.Configuration.ConfigurationManager.AppSettings.Get("XtWorkFlow");
                if (model.State == (int)XtBusinessDataState.Auditing && XtWorkFlow == "1")
                {
                    GcGoodsOrdersApplyView view = new GcGoodsOrdersApplyView();

                    view.txt_xmtm = model.ContractName;

                    view.txt_erp      = model.ErpOrderNumber;
                    view.txt_xmmc     = model.ProjectName;
                    view.txt_xmmcx    = model.ProjectName;
                    view.txt_sjr      = model.Recipient;
                    view.txt_dh       = model.Phone;
                    view.txt_lxr      = model.Contact;
                    view.txt_lxrdh    = model.ContactNumber;
                    view.select_wzzl  = model.MaterialName;
                    view.select_wzzlx = model.MaterialName;
                    view.select_wzzln = model.MaterialName;

                    if (model.ApplicantId != null)
                    {
                        var baseUser = DataOperateBasic <Base_User> .Get().GetModel(model.ApplicantId.Value);

                        if (baseUser == null)
                        {
                            throw new Exception("未找到申请人相关信息!");
                        }
                        view.hr_sqr = baseUser.ObjeId;
                    }

                    if (model.CompanyId != null)
                    {
                        var company = DataOperateBasic <Base_Company> .Get().GetModel(model.CompanyId.Value);

                        if (company == null)
                        {
                            throw new Exception("未获取到申请单位信息!");
                        }
                        view.sub_sqdw = company.ObjeId;
                    }
                    else
                    {
                        throw new Exception("请选择申请单位!");
                    }

                    if (model.DepartmentId != null)
                    {
                        var company = DataOperateBasic <Base_Company> .Get().GetModel(model.DepartmentId.Value);

                        if (company == null)
                        {
                            throw new Exception("未获取到申请部门信息!");
                        }
                        view.dep_sqbm = company.ObjeId;
                    }
                    else
                    {
                        throw new Exception("请选择申请部门!");
                    }

                    view.date_sqsj = string.Format("{0:yyyy-MM-dd}", DateTime.Now);

                    if (model.LeaderId != null)
                    {
                        var baseUserHeaderID = DataOperateBasic <Base_User> .Get().GetModel(model.LeaderId.Value);

                        if (baseUserHeaderID == null)
                        {
                            throw new Exception("未找到分管领导相关信息!");
                        }
                        view.hr_fgld = baseUserHeaderID.ObjeId;
                    }
                    if (model.DepLeaderId != null)
                    {
                        var baseUserLeaderID = DataOperateBasic <Base_User> .Get().GetModel(model.DepLeaderId.Value);

                        if (baseUserLeaderID == null)
                        {
                            throw new Exception("未找到部门负责人相关信息!");
                        }
                        view.hr_bmfzr = baseUserLeaderID.ObjeId;
                    }

                    view.txt          = model.ApprovalNo;
                    view.date_dqn     = DateTime.Now.Year.ToString();
                    view.txt_gysmc    = model.SupplierName;
                    view.txt_gysmcx   = model.SupplierName;
                    view.txt_gysmc_dy = model.SupplierName;
                    view.txt_gysdz    = model.SupplierAdress;
                    view.txt_gysyb    = model.SupplierCode;
                    view.txt_htbsxh   = model.ContractNumber;

                    //明细表信息
                    if (model.TzGcGoodsOrdersItem != null && model.TzGcGoodsOrdersItem.Any())
                    {
                        view.list = new List <GcGoodsOrdersApplyView.GcGoodsOrdersItem>();
                        foreach (var temp in model.TzGcGoodsOrdersItem)
                        {
                            GcGoodsOrdersApplyView.GcGoodsOrdersItem itemview = new GcGoodsOrdersApplyView.GcGoodsOrdersItem();
                            itemview.dep_zm    = temp.StationName;
                            itemview.float_dj  = temp.UnitPrice.ToString();
                            itemview.float_je  = temp.Amount.ToString();
                            itemview.int_mount = temp.Number.ToString();
                            itemview.txts_bz   = temp.Note;
                            itemview.txt_dhdz  = temp.Address;
                            itemview.txt_gg    = temp.Specifications;
                            itemview.txt_pm    = temp.ProductName;
                            itemview.txt_zm    = temp.StationName;

                            view.list.Add(itemview);
                        }
                    }

                    model.WorkFlowId = XtWorkFlowService.CreateTzOrdersWorkFlow(view);
                }
                #endregion

                var rows = DataOperateBusiness <Epm_TzGcGoodsOrdersApply> .Get().Add(model);

                if (model.TzGcGoodsOrdersItem != null && model.TzGcGoodsOrdersItem.Any())
                {
                    model.TzGcGoodsOrdersItem.ForEach(item =>
                    {
                        item.ChangeApplyId = model.Id;
                        item = SetCurrentUser(item);
                        item = SetCreateUser(item);
                    });
                    DataOperateBusiness <Epm_TzGcGoodsOrdersItem> .Get().AddRange(model.TzGcGoodsOrdersItem);
                }

                result.Data = rows;
                result.Flag = EResultFlag.Success;
                //WriteLog(AdminModule.GcGoodsOrdersApply.GetText(), SystemRight.Add.GetText(), "新增: " + model.Id);
            }
            catch (Exception ex)
            {
                result.Data      = -1;
                result.Flag      = EResultFlag.Failure;
                result.Exception = new ExceptionEx(ex, "AddTzGcGoodsOrdersApply");
            }
            return(result);
        }