public bool UpdateInfo(string fields, long id) { PackageOutboundInfo info = dal.GetInfo(id); if (info.Status != (int)WmmOrderStatusConstants.Created) { throw new Exception("MC:0x00000441");/// 状态为10.已创建时可以进行修改或删除 } return(dal.UpdateInfo(fields, id) > 0 ? true : false); }
public bool LogicDeleteInfo(long id, string loginUser) { PackageOutboundInfo info = dal.GetInfo(id); if (info.Status != (int)WmmOrderStatusConstants.Created) { throw new Exception("MC:0x00000415");///状态为10.已创建时可以进行修改或删除 } return(dal.LogicDelete(id, loginUser) > 0 ? true : false); }
/// <summary> /// 完成 /// </summary> /// <param name="rowsKeyValues"></param> /// <param name="loginUser"></param> /// <returns></returns> public bool CompleteInfos(List <string> rowsKeyValues, string loginUser) { if (dal.GetList("[ID] in (" + string.Join(",", rowsKeyValues.ToArray()) + ") and [STATUS] = " + (int)WmmOrderStatusConstants.Published, "[ID]").Count() != rowsKeyValues.Count()) { throw new Exception("MC:0x00000446");/// 状态为20.已发布时可以进行完成操作,更新状态为30.已完成 } List <PackageOutboundInfo> packageBarcodes = dal.GetList("[ID] in (" + string.Join(",", rowsKeyValues.ToArray()) + ")", "[ID]"); if (packageBarcodes == null || packageBarcodes.Count() == 0) { throw new Exception("MC:0x00000084");///数据错误 } List <PackageOutboundDetailInfo> packageBarcodeDetails = new PackageOutboundDetailDAL().GetList("[ORDER_FID] in ('" + string.Join("','", packageBarcodes.Select(d => d.Fid.GetValueOrDefault()).ToArray()) + "')", string.Empty); StringBuilder stringBuilder = new StringBuilder(); foreach (var item in packageBarcodeDetails) { PackageOutboundInfo info = packageBarcodes.Where(d => d.Fid == item.OrderFid).FirstOrDefault(); stringBuilder.Append("insert into [LES].[TT_PCM_PACKAGE_TRAN_DETAIL]([FID],[TRAN_NO],[TRAN_TYPE],[BARCODE_DATA],[PART_NO],[PLANT],[ASSEMBLY_LINE],[SUPPLIER_NUM],[WM_NO],[ZONE_NO],[DLOC],[TARGET_WM],[TARGET_ZONE],[TARGET_DLOC],[PACKAGE_NO],[PACKAGE_CNAME],[PACKAGE_ENAME],[PACKAGE],[PACKAGE_QTY],[STATUS],[VALID_FLAG],[CREATE_USER],[CREATE_DATE])values("); int TranType = new int(); if (string.IsNullOrEmpty(item.TWmNo) && string.IsNullOrEmpty(item.TZoneNo)) { TranType = (int)PackageTranTypeConstants.EmptyOutbound; } else { TranType = (int)PackageTranTypeConstants.EmptyMovement; } stringBuilder.Append("newid(),N'" + info.OrderNo + "',N'" + TranType + "',NULL,NULL,N'" + info.Plant + "',NULL,N'" + item.SupplierNum + "',N'" + item.SWmNo + "',N'" + item.SZoneNo + "',N'" + item.SDloc + "',N'" + item.TWmNo + "',N'" + item.TZoneNo + "',N'" + item.TDloc + "',N'" + item.PackageModel + "',N'" + item.PackageCname + "',NULL,NULL,N'" + item.PackageQty + "'," + (int)PackageTranStateConstants.UNTREATED + ",1,N'" + loginUser + "',GETDATE()"); stringBuilder.Append(")"); } stringBuilder.Append("update [LES].[TT_PCM_PACKAGE_OUTBOUND] set [STATUS] = N'" + (int)WmmOrderStatusConstants.Completed + "', [MODIFY_DATE] = GETDATE(),[MODIFY_USER] = N'" + loginUser + "' where [ID] in (" + string.Join(",", rowsKeyValues.ToArray()) + ")"); using (TransactionScope trans = new TransactionScope()) { if (!string.IsNullOrEmpty(stringBuilder.ToString())) { CommonDAL.ExecuteNonQueryBySql(stringBuilder.ToString()); } trans.Complete(); } return(true); }
public long InsertInfo(PackageOutboundInfo info) { info.OrderNo = new SeqDefineDAL().GetCurrentCode("POUT_ORDER_NO"); return(dal.Add(info)); }