public JsonResult StoreInputCheckRecord(EquipmentCheckRecordModel model)
        {
            model.CheckDate = model.CheckDate.ToDate();
            var result = AstService.EquipmentManager.CheckManager.Store(model);

            return(Json(result));
        }
        public void EquipmentCheckStoreTest()
        {
            EquipmentCheckRecordModel model = new EquipmentCheckRecordModel();

            model.AssetNumber = "Z169002";
            model.CheckDate   = DateTime.Now.ToDate();
            model.CheckResult = "";
            model.OpSign      = "add";
            var result = AstService.EquipmentManager.CheckManager.Store(model);

            if (!result.Result)
            {
                Assert.Fail();
            }
        }
        /// <summary>
        /// 修改数据仓库 model.OpSign = add/edit/delete
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public OpResult Store(EquipmentCheckRecordModel model)
        {
            //先查找查找设备 找到后判断校验日期要不要写入 然后写入校验记录 再修改设备信息 如果失败 删除校验记录
            model.OpDate = DateTime.Now.ToDate();
            model.OpTime = DateTime.Now;
            string   opContext = "设备校验";
            OpResult opResult  = OpResult.SetErrorResult("未执行任何操作!");

            if (model == null)
            {
                return(OpResult.SetErrorResult("校验记录不能为空!"));
            }

            //设备是否存在
            var equipment = EquipmentCrudFactory.EquipmentCrud.FindBy(new QueryEquipmentDto()
            {
                AssetNumber = model.AssetNumber, SearchMode = 1
            }).FirstOrDefault();

            if (equipment == null)
            {
                return(OpResult.SetErrorResult("未找到保养单上的设备\r\n请确定财产编号是否正确!"));
            }

            //设置保养记录 设备名称
            model.EquipmentName = equipment.EquipmentName;

            try
            {
                //判断设备校验日期是否等于校验单上的日期
                if (equipment.CheckDate != model.CheckDate)
                {
                    switch (model.OpSign)
                    {
                    case OpMode.Add:     //新增
                        opResult        = irep.Insert(model).ToOpResult_Add(opContext, model.Id_Key);
                        opResult.Attach = model;
                        break;

                    case OpMode.Edit:     //修改
                        opResult = irep.Update(u => u.Id_Key == model.Id_Key, model).ToOpResult_Eidt(opContext);
                        break;

                    case OpMode.Delete:     //删除
                        opResult = irep.Delete(model.Id_Key).ToOpResult_Delete(opContext);
                        break;

                    default:
                        opResult = OpResult.SetErrorResult("操作模式溢出");
                        break;
                    }

                    //如果保存记录成功
                    if (opResult.Result)
                    {
                        opResult = SetEquipmentCheckDateRule(model, equipment);
                        if (!opResult.Result) //如果设备未更新成功
                        {
                            irep.Delete(model.Id_Key).ToOpResult_Delete(opContext);
                            return(opResult);
                        }
                    }
                    opResult.Attach = model;
                    return(opResult);
                }
                else
                {
                    return(OpResult.SetErrorResult("设备校验日期与录入日期相等"));
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.InnerException.Message);
            }
        }
 /// <summary>
 /// 设置设备校验日期规则
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 private OpResult SetEquipmentCheckDateRule(EquipmentCheckRecordModel model, EquipmentModel equipment)
 {
     equipment.CheckDate = model.CheckDate;
     equipment.OpSign    = OpMode.Edit;
     return(OpResult.SetResult("更新设备校验日期成功!", "更新设备校验日期失败!", EquipmentCrudFactory.EquipmentCrud.Store(equipment).Result));
 }
Exemple #5
0
 /// <summary>
 /// 修改数据仓库 PS:model.OpSign = add/edit/delete
 /// </summary>
 /// <param name="model"></param>
 /// <returns></returns>
 public OpResult Store(EquipmentCheckRecordModel model)
 {
     return(CrudFactory.EquipmentCheckCrud.Store(model));
 }