public async Task <ActionResult> SaveFormJson(OrderTerIssueEntity entity) { OperatorInfo user = await Operator.Instance.Current(); TData <string> obj = await orderTerIssueBLL.SaveForm(entity, user); return(Json(obj)); }
public async Task SaveForm(OrderTerIssueEntity entity) { if (entity.Id.IsNullOrZero()) { await entity.Create(); await this.BaseRepository().Insert(entity); } else { await entity.Modify(); await this.BaseRepository().Update(entity); } }
public async Task <TData <OrderTerIssueEntity> > GetEntity(long id) { TData <OrderTerIssueEntity> obj = new TData <OrderTerIssueEntity>(); OrderTerIssueEntity entity = await orderTerIssueService.GetEntity(id); if (entity != null) { int index = CoomHelper.GetCharIndex(entity.ReciveAddress, "-", 3); if (index > 0) { entity.ReciveAddre = entity.ReciveAddress.Substring(0, index); entity.ReciveZone = entity.ReciveAddress.Substring(index); } obj.Data = entity; obj.Tag = 1; } return(obj); }
public async Task <TData <string> > SaveForm(OrderTerIssueEntity entity, OperatorInfo opuser) { TData <string> obj = new TData <string>(); var result = CheckWorkFLow(entity, opuser); if (result.IsSucess) { await orderTerIssueService.SaveForm(entity); await FinishWorkFLow(entity); obj.Data = entity.Id.ParseToString(); obj.Tag = 1; } else { obj.Message = result.Msg; obj.Tag = 0; } return(obj); }
/// <summary> /// 流程结束logic /// </summary> /// <param name="entity"></param> /// <returns></returns> private async Task <ResultMsg> FinishWorkFLow(OrderTerIssueEntity entity) { ResultMsg result = new ResultMsg(); //通过审批且流程结束 if (entity.Step == OutPutStepEnum.Finish.ParseToInt() && entity.ShenHeStatus == ShenHeStatusEnum.Past.ParseToInt()) { //修改物料库存和明细了 long?id = entity.MaterielId; TData <string> td_result = await orderMaterielBLL.ModifyMaterielTotal(long.Parse(id + ""), true, 0 - entity.SaleNum, "物料销售出库", entity.Id, "order_ter_issue"); if (td_result.Tag == 1) { result.IsSucess = true; } } return(result); }
/// <summary> /// 检测流程 /// </summary> /// <param name="entity">数据实体</param> /// <returns></returns> private ResultMsg CheckWorkFLow(OrderTerIssueEntity entity, OperatorInfo user) { ResultMsg result = new ResultMsg(); //新增 if (entity.Id.IsNullOrZero()) { entity.ShenHeStatus = 0; entity.Step = OutPutStepEnum.Validate.ParseToInt(); result.IsSucess = true; } else { if (entity.Step == OutPutStepEnum.Create.ParseToInt()) { if (entity.BaseCreatorId == user.UserId) { if (entity.ShenHeStatus == ShenHeStatusEnum.Create.ParseToInt()) { entity.Step = OutPutStepEnum.Validate.ParseToInt(); //表示创建者修改 result.IsSucess = true; } else { result.Msg = "已经审批不可修改"; } } } //01 到了财务审批步骤 else if (entity.Step == OutPutStepEnum.Validate.ParseToInt()) { if (user.UserId == entity.ShenHeManId) { if (entity.ShenHeStatus == ShenHeStatusEnum.Refuse.ParseToInt()) { entity.Step = OutPutStepEnum.Finish.ParseToInt(); } else if (entity.ShenHeStatus == ShenHeStatusEnum.Past.ParseToInt()) { entity.Step = OutPutStepEnum.Sent.ParseToInt(); } result.IsSucess = true; } else { result.Msg = "请先财务审核才能下一步操作"; } } //发货阶段 else if (entity.Step == OutPutStepEnum.Sent.ParseToInt()) { if (user.UserId == entity.SentManId) { entity.Step = OutPutStepEnum.Finish.ParseToInt(); entity.IsSent = SentStatusEnum.Yes.ParseToInt(); result.IsSucess = true; } else { result.Msg = "请售后进行操作"; } } //发货阶段 else if (entity.Step == OutPutStepEnum.Finish.ParseToInt()) { result.Msg = "流程已经结束,禁止操作"; } } return(result); }
public async Task <TData <string> > SaveForm(OrderTerIssueParam modelParam, OperatorInfo opuser) { TData <string> obj = new TData <string>(); obj.SetDefault(); try { OrderTerIssueEntity entity = new OrderTerIssueEntity(); long num = 0; long.TryParse(modelParam.Id, out num); entity.Id = num; if (!entity.Id.IsNullOrZero()) { TData <OrderTerIssueEntity> tdata = await GetEntity(num); entity = tdata.Data; } ClassValueCopierHelper.Copy(entity, modelParam); #region 补充数据 num = 0; long.TryParse(modelParam.Id, out num); entity.Id = num; num = 0; long.TryParse(modelParam.MaterielId, out num); entity.MaterielId = num; num = 0; long.TryParse(modelParam.SaleId, out num); entity.SaleId = num; int saleNum = 0; int.TryParse(modelParam.SaleNum, out saleNum); entity.SaleNum = saleNum; decimal money = 0; decimal.TryParse(modelParam.SalePrice, out money); entity.SalePrice = money; money = 0; decimal.TryParse(modelParam.FactMoney, out money); entity.FactMoney = money; money = 0; decimal.TryParse(modelParam.SrcPrice, out money); entity.SrcPrice = money; saleNum = 0; int.TryParse(modelParam.TakeType, out saleNum); entity.TakeType = saleNum; saleNum = 0; int.TryParse(modelParam.ShenHeStatus, out saleNum); entity.ShenHeStatus = saleNum; num = 0; long.TryParse(modelParam.ShenHeManId, out num); entity.ShenHeManId = num; num = 0; long.TryParse(modelParam.SentManId, out num); entity.SentManId = num; if (entity.Id.IsNullOrZero()) { entity.BaseCreatorId = long.Parse(opuser.UserIdStr); entity.BaseCreateTime = DateTime.Now; } entity.ReciveAddress = modelParam.ReciveZone + modelParam.ReciveAddre; entity.BaseModifyTime = DateTime.Now; entity.BaseModifierId = long.Parse(opuser.UserIdStr); #endregion LogHelper.Info("【SaveForm】entity:" + JsonHelper.SerializeObject(entity)); obj = await SaveForm(entity, opuser); } catch (Exception ex) { LogHelper.Info("【SaveForm】ex:" + ex.ToString()); } return(obj); }