public override int DealEndApprove(string approvePkValue, UserInfo sysUser, string viewTitle) { Dictionary<string, object> paras = new Dictionary<string, object>(); paras.Add("assetsSplitId", approvePkValue); string sql = @"select * from AssetsSplitDetail where assetsSplitId=@assetsSplitId"; DataTable dt = AppMember.DbHelper.GetDataSet(sql, paras, DbUpdate.cmd).Tables[0]; int rowIndex = 0; foreach (DataRow dr in dt.Rows) { AssetsSplit assetsSplit = new AssetsSplit(); assetsSplit.AssetsId = DataConvert.ToString(dr["newAssetsId"]); assetsSplit.AssetsNo = DataConvert.ToString(dr["assetsNo"]); assetsSplit.AssetsName = DataConvert.ToString(dr["assetsName"]); assetsSplit.AssetsValue = DataConvert.ToString(dr["assetsValue"]); assetsSplit.OriginalAssetsId = DataConvert.ToString(dr["originalAssetsId"]); paras.Clear(); paras.Add("assetsId", assetsSplit.OriginalAssetsId); sql = @"select * from Assets where assetsId=@assetsId"; DataTable dtAssets = AppMember.DbHelper.GetDataSet(sql, paras, DbUpdate.cmd).Tables[0]; if (rowIndex == 0) UpdateAssetsState(assetsSplit.OriginalAssetsId, "S", sysUser.UserId, viewTitle); AddNewAssets(assetsSplit, dtAssets, sysUser, viewTitle); rowIndex++; } return 1; }
protected int AddDetail(AssetsSplit AssetsSplit, string AssetsSplitId, UserInfo sysUser, string viewTitle, string updateType) { string sql = @"select * from AssetsSplitDetail where 1<>1 "; DataTable dt = AppMember.DbHelper.GetDataSet(sql).Tables[0]; dt.TableName = "AssetsSplitDetail"; DataRow dr = dt.NewRow(); dr["AssetsSplitId"] = AssetsSplitId; dr["newAssetsId"] = AssetsSplit.AssetsId; dr["assetsNo"] = AssetsSplit.AssetsNo; dr["assetsName"] = AssetsSplit.AssetsName; dr["assetsValue"] = AssetsSplit.AssetsValue; dr["remark"] = AssetsSplit.Remark; dr["originalAssetsId"] = AssetsSplit.OriginalAssetsId; dr["setBooksId"] = sysUser.MySetBooks.SetBooksId; dt.Rows.Add(dr); if (DataConvert.ToString(AssetsSplit.CreateId) != "") { if (updateType == "Reapply") dr["approveState"] = "O"; else dr["approveState"] = AssetsSplit.ApproveState; dr["createId"] = AssetsSplit.CreateId; dr["createTime"] = AssetsSplit.CreateTime; Update5Field(dt, sysUser.UserId, viewTitle); } else { if (updateType == "ApproveAdd") dr["approveState"] = "O"; Create5Field(dt, sysUser.UserId, viewTitle); } return DbUpdate.Update(dt); }
//protected int UpdateOriginalAssets(AssetsSplit AssetsSplit, DataTable dtAssets, string sysUser, string viewTitle) //{ // DataTable dtNew = dtAssets.Clone(); // foreach (DataRow drNew in dtAssets.Rows) // { // dtNew.ImportRow(drNew); // } // dtNew.TableName = "Assets"; // dtNew.Rows[0]["assetsState"] = "S"; // Update5Field(dtNew, sysUser, viewTitle); // return dbUpdate.Update(dtNew); //} protected int AddNewAssets(AssetsSplit AssetsSplit, DataTable dtAssets, UserInfo sysUser, string viewTitle) { DataTable dtNew = dtAssets.Clone(); DataRow drNew = dtNew.NewRow(); for (int i = 0; i < dtAssets.Columns.Count; i++) { drNew[i] = dtAssets.Rows[0][i]; } double assetsValueOri=DataConvert.ToDouble( dtAssets.Rows[0]["assetsValue"]); double assetsNetValueOri=DataConvert.ToDouble( dtAssets.Rows[0]["assetsNetValue"]); drNew["assetsId"] = AssetsSplit.AssetsId; drNew["assetsNo"] = AssetsSplit.AssetsNo; drNew["assetsName"] = AssetsSplit.AssetsName; drNew["assetsValue"] = AssetsSplit.AssetsValue; drNew["assetsNetValue"] = assetsValueOri == 0 ? 0 : DataConvert.ToDouble(AssetsSplit.AssetsValue) * assetsNetValueOri / assetsValueOri; drNew["remark"] = AssetsSplit.Remark; drNew["assetsState"] = "A"; drNew["setBooksId"] = sysUser.MySetBooks.SetBooksId; drNew["addDate"] = IdGenerator.GetServerDate(); dtNew.TableName = "Assets"; dtNew.Rows.Add(drNew); Create5Field(dtNew, sysUser.UserId, viewTitle); return DbUpdate.Update(dtNew); }