/// <summary> /// 处置资产 /// </summary> /// <param name="request"></param> /// <returns></returns> public ResponseFixedAssetsDeal FixedAssetsDeal(RequestFixedAssetsDeal request) { ResponseFixedAssetsDeal response = new ResponseFixedAssetsDeal(); using (cnn = GetConnection()) { var ts = cnn.BeginTransaction(); try { var user = UserInfoGet(request.Token, ts); AccountSetBLL bll = new AccountSetBLL(cnn); var period = bll.GetActivePeriod(user.AccountId, ts); string sql = "select * from TKS_FAS_FixedAssets where isGenPz=1 and id=@Id"; var data = cnn.Query <TKS_FAS_FixedAssets>(sql, new { Id = request.Data.Id }, ts).FirstOrDefault(); if (data == null) { throw new NormalException("未生成凭证,无法报废"); } TKS_FAS_FixedAssetsChange change = new TKS_FAS_FixedAssetsChange(); change.Id = Guid.NewGuid().ToString("N"); change.ParentId = data.Id; change.DocNo = data.DocNo; change.PeriodId = period.Id; change.AccountId = data.AccountId; change.AssetsName = data.Name; change.PreContent = (data.InitialAssetValue - data.AccumulativeDpre).ToString(); change.CurContent = (data.InitialAssetValue - data.AccumulativeDpre).ToString(); change.ChangeType = 8; change.CreateUser = data.CreateUser; change.CreateDate = data.CreateDate; cnn.Insert <TKS_FAS_FixedAssetsChange>(change, ts); sql = "update TKS_FAS_FixedAssets set status=1 where Id=@Id"; cnn.Execute(sql, new { Id = data.Id }, ts); ts.Commit(); response.IsSuccess = true; response.Message = "处置成功"; return(response); } catch (Exception ex) { ts.Rollback(); return(this.DealException(response, ex) as ResponseFixedAssetsDeal); } } }
private void AddChange(TKS_FAS_FixedAssets data, IDbTransaction ts) { TKS_FAS_FixedAssetsChange change = new TKS_FAS_FixedAssetsChange(); change.Id = Guid.NewGuid().ToString("N"); change.ParentId = data.Id; change.DocNo = data.DocNo; change.PeriodId = data.StartPeriod; change.AccountId = data.AccountId; change.AssetsName = data.Name; change.PreContent = data.InitialAssetValue.ToString(); change.CurContent = data.InitialAssetValue.ToString(); change.ChangeType = 1; change.CreateUser = data.CreateUser; change.CreateDate = data.CreateDate; cnn.Insert <TKS_FAS_FixedAssetsChange>(change, ts); }