| | |
| | | #region Propertys & Variables |
| | | public string OrderNo { get; set; } |
| | | public BIZ_MES_WO WO { get; set; } |
| | | public BAS_ITEM Product { get; set; } |
| | | public BIZ_MES_WO_BATCH Batch { get; set; } |
| | | public BAS_CUSTOMER Customer { get; set; } |
| | | public List<BIZ_MES_WO_SN> WoSNs { get; set; } |
| | |
| | | public WorkBatch Init(string lineCode) |
| | | { |
| | | WO = Biz.Db.Queryable<BIZ_MES_WO>().Where(q => q.ORDER_NO == OrderNo).First(); |
| | | Product = Biz.Db.Queryable<BAS_ITEM>().Where(q => q.ITEM_CODE == WO.ITEM_CODE && q.AUTH_ORG == WO.AUTH_ORG).First(); |
| | | Batch = Biz.Db.Queryable<BIZ_MES_WO_BATCH>().Where(q => q.ORDER_NO == OrderNo && q.ACT_LINE == lineCode |
| | | && (q.STATUS == BIZ_MES_WO_BATCH.STATUSs.Release.GetValue() || q.STATUS == BIZ_MES_WO_BATCH.STATUSs.Working.GetValue())).First(); |
| | | Customer = Biz.Db.Queryable<BAS_CUSTOMER>().Where(q => q.CUST_CODE == WO.CUST_CODE).First(); |
| | |
| | | /// <returns></returns> |
| | | public bool StartWorking(string user) |
| | | { |
| | | if (Batch.STATUS == BIZ_MES_WO_BATCH.STATUSs.Working.GetValue() || Batch.STATUS == BIZ_MES_WO_BATCH.STATUSs.Paused.GetValue()) |
| | | if (Batch.STATUS == BIZ_MES_WO_BATCH.STATUSs.Release.GetValue() || Batch.STATUS == BIZ_MES_WO_BATCH.STATUSs.Paused.GetValue()) |
| | | { |
| | | WO.STATUS = BIZ_MES_WO.STATUSs.Working.GetValue(); |
| | | WO.ACT_START_TIME = WO.ACT_START_TIME < new DateTime(2000, 1, 1) ? DateTime.Now : WO.ACT_START_TIME; |
| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 工单暂停 |
| | | /// </summary> |
| | | /// <param name="user"></param> |
| | | /// <returns></returns> |
| | | public bool PausedWorking(string user) |
| | | { |
| | | if (Batch.STATUS == BIZ_MES_WO_BATCH.STATUSs.Working.GetValue()) |
| | | { |
| | | WO.STATUS = BIZ_MES_WO.STATUSs.Paused.GetValue(); |
| | | Batch.STATUS = BIZ_MES_WO_BATCH.STATUSs.Paused.GetValue(); |
| | | //保存数据库 |
| | | var db = Biz.Db; |
| | | var dbTran = db.UseTran(() => |
| | | { |
| | | db.Updateable(WO, user).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.STATUS }).ExecuteCommand(); |
| | | db.Updateable(Batch, user).UpdateColumns(q => new { q.UPDATE_TIME, q.UPDATE_USER, q.STATUS }).ExecuteCommand(); |
| | | }); |
| | | if (!dbTran.IsSuccess) |
| | | { |
| | | //throw dbTran.ErrorException; |
| | | return false; |
| | | } |
| | | } |
| | | return true; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 根据岗位编码判断是不是首站 |
| | | /// </summary> |
| | | /// <param name="postCode"></param> |