/// <summary> /// 查询订单运单号信息 /// </summary> /// <param name="orderId">订单号(多个用逗号隔开,每次最大50个订单)</param> /// <returns></returns> /// <remarks>2016-3-22 杨浩 创建</remarks> public override Result GetOrderExpressno(string orderId) { var param = "{\"orderId\":\"" + orderId + "\"}"; string method = "wtdex.trade.orderexpressno.get"; param = InitParams(method, param); var _result = Hyt.Util.WebUtil.PostForm(apiUrl, param); var result = GetResponseResult(_result); if (result.Status == true) { if (BLL.CrossBorderLogistics.CrossBorderLogisticsOrderBo.Instance.GetEntityByOrderSysNo(TConvert.ToInt32(orderId)) == null) { try { Model.CrossBorderLogisticsOrder logisticsOrder = new Model.CrossBorderLogisticsOrder(); logisticsOrder.SoOrderSysNo = TConvert.ToInt32(orderId); logisticsOrder.LogisticsOrderId = JObject.Parse(_result)["response"]["orderList"]["orders"][0]["expressNo"].ToString(); logisticsOrder.LogisticsCode = (int)this.Code; BLL.CrossBorderLogistics.CrossBorderLogisticsOrderBo.Instance.InsertEntity(logisticsOrder); } catch (Exception ex) { result.Message = "向" + this.Code + "物流查询订单运单号报错:" + ex.StackTrace; return(result); } } } return(result); }
/// <summary> /// 获取运单号 /// </summary> /// <param name="orderId"></param> /// <returns></returns> /// <remarks>2016-07-19 陈海裕 创建</remarks> public override Result GetOrderExpressno(string orderId) { Result <string> result = new Result <string>(); result.Status = false; result.StatusCode = 0; result.Message = "接口调用失败"; string url = RequestUrl + "express/create"; try { SoOrder order = BLL.Order.SoOrderBo.Instance.GetEntity(TConvert.ToInt32(orderId)); if (order == null) { result.Message = "该订单不存在"; return(result); } LgDeliveryType deliveryType = BLL.Logistics.DeliveryTypeBo.Instance.GetDeliveryType(order.DeliveryTypeSysNo); ParaOnlinePaymentFilter filter = new ParaOnlinePaymentFilter(); filter.OrderSysNo = TConvert.ToInt32(orderId); var onlinePayment = BLL.Finance.FinanceBo.Instance.GetOnlinePayments(filter).Rows.Where(o => o.Status == 1).FirstOrDefault(); CBWhWarehouse warehouse = BLL.Warehouse.WhWarehouseBo.Instance.GetWarehouse(order.DefaultWarehouseSysNo); string _deliveryType = ""; if (deliveryType.DeliveryTypeName.Contains("顺丰")) { _deliveryType = "SF"; //CustomerCode = SFCustomerCode; //Key = SFKey; Token = SFToken; } else if (deliveryType.DeliveryTypeName.Contains("中通")) { _deliveryType = "ZTO"; } if (_deliveryType == "") { result.Message = "友信达物流目前只有支持顺丰和中通两种快递方式"; return(result); } Dictionary <string, string> paramsData = new Dictionary <string, string>(); paramsData.Add("reference_no", onlinePayment.BusinessOrderSysNo); paramsData.Add("warehouse_id", warehouse.LogisWarehouseCode); paramsData.Add("sm_code", _deliveryType); string responseStr = GetResponse(url, InitParams(paramsData)); result = GetResult(JObject.Parse(responseStr), result); if (result.Status == true) { // 生成出库单 } return(result); } catch (Exception ex) { result.Message = "查询订单运单号报错:" + ex.StackTrace; return(result); } }
/// <summary> /// 查询订单物流信息 /// </summary> /// <param name="orderSysNo">订单号</param> /// <returns></returns> /// <remarks>2016-04-09 陈海裕 创建</remarks> public override Result <string> GetLogisticsTracking(int orderSysNo) { Result <string> result = new Result <string>(); //var tempResult = GetOrderExpressno(orderSysNo.ToString()); //result.Status = tempResult.Status; //result.Message = tempResult.Message; //if (result.Status == false) //{ // return result; //} CrossBorderLogisticsOrder cbLogiOrder = BLL.CrossBorderLogistics.CrossBorderLogisticsOrderBo.Instance.GetEntityByOrderSysNo(Convert.ToInt32(orderSysNo)); if (cbLogiOrder == null) { return(result); } string apiurl = "http://183.11.227.9:90/bdtsys/services/htapi/track/" + cbLogiOrder.LogisticsOrderId; System.Net.WebRequest request = System.Net.WebRequest.Create(apiurl); request.ContentType = "application/x-www-form-urlencoded;charset=UTF-8"; System.Net.WebResponse response = request.GetResponse(); System.IO.Stream stream = response.GetResponseStream(); System.Text.Encoding encode = System.Text.Encoding.UTF8; System.IO.StreamReader reader = new System.IO.StreamReader(stream, encode); result.Message = reader.ReadToEnd(); JObject jObj = JObject.Parse(result.Message); List <TrackingData> logisticsTrackList = new List <TrackingData>(); if (jObj != null) { if (jObj.Property("trackSize") != null) { TrackingData trackingData = null; int trackSize = TConvert.ToInt32(jObj["trackSize"].ToString()); for (int i = trackSize - 1; i >= 0; i--) { trackingData = new TrackingData(); trackingData.time = TConvert.ToString(jObj["track" + i]["statustime"].ToString()); trackingData.content = TConvert.ToString(jObj["track" + i]["place"].ToString()) + TConvert.ToString(jObj["track" + i]["reason"].ToString()); logisticsTrackList.Add(trackingData); } StringBuilder htmlStr = new StringBuilder(); foreach (var item in logisticsTrackList) { htmlStr.Append("<tr><td width=\"25%\">" + item.time + "</td><td width=\"75%\">" + item.content + "</td></tr>"); } result.Data = htmlStr.ToString(); result.Status = true; } } return(result); }
//--------------------------------------------------------------------- public virtual void Pull(CEntity ety, DataRow row, TMetaColumn mc) { string columnName = mc.ColumnName; //if(columnName=="A1623") { // Debug.WriteLine("XXX"); //} object v0 = row[columnName]; //TODO: how to know nullable property /// System.Nullable int? No; if (mc.IsGenericType) { if (v0 == DBNull.Value) { ety.SetEpoPorpertyValue(mc, null); } else { ety.SetEpoPorpertyValue(mc, v0); } return; } object customNullValue = mc.MappingAttribute.NullValue; if (customNullValue == null) { object v1 = TConvert.DbValue2DataValue(mc.DataType, v0); /// most hit here! ety.SetEpoPorpertyValue(mc, v1); return; } /// CustomNullValue //TODO: customNullValue!=null issues, not finished.... Type underlyingType = mc.UnderlyingType; if (customNullValue.GetType() != underlyingType) { if (underlyingType == typeof(Decimal)) { // float to decimal string to decimal Decimal d = Convert.ToDecimal(customNullValue); object v2 = TConvert.DbValue2DataValue(underlyingType, row[columnName], d); ety.SetEpoPorpertyValue(mc, v2); } else { throw new TException("nullValue.GetType() differ value.GetType"); } } else { object v3 = TConvert.DbValue2DataValue(underlyingType, row[columnName], customNullValue); ety.SetEpoPorpertyValue(mc, v3); } }
//--------------------------------------------------------------------- public virtual object GetDbValue(TMetaColumn mc) { object dataValue = this.GetEpoPropertyValue(mc); if (mc.IsGenericType) { if (dataValue == null) { return(DBNull.Value); } else { return(dataValue); } } Type dotNetType = mc.UnderlyingType; object customNullValue = mc.MappingAttribute.NullValue; if (customNullValue == null) { return(TConvert.DataValue2DbValue(mc.DataType, dataValue)); } /// CustomNullValue if (customNullValue.GetType() != dotNetType) { if (dotNetType == typeof(Decimal)) { /// float to decimal Decimal decima = Convert.ToDecimal(customNullValue); return(TConvert.DataValue2DbValue(dataValue, decima)); } else { throw new TException("nullValue.GetType() differ value.GetType"); } } else { return(TConvert.DataValue2DbValue(dataValue, customNullValue)); } }
//---------------------------------------------------------- public virtual void InitMembers() { TMetaEntity me = GetMetaEntity(this.GetType()); if (me == null) { return; } TMetaTable mt = me.MetaTable; foreach (TMetaColumn mc in mt.FullValueColumns) { TDataType dataType = mc.DataType; if (dataType == TDataType.DateTime || dataType == TDataType.Date) { object nullValue = TConvert.GetNullValue(dataType); this.SetEpoPorpertyValue(mc, nullValue); } } }
/// <summary> /// 添加交易订单 /// </summary> /// <param name="orderId">销售订单系统编号</param> /// <returns></returns> /// <remarks> /// 2016-3-21 杨浩 创建 /// 2016-4-19 陈海裕 重构 /// </remarks> public override Result AddOrderTrade(int orderId) { var result = new Result() { Status = false, StatusCode = 0, Message = "向" + this.Code + "物流推送订单失败" }; try { var order = Hyt.BLL.Order.SoOrderBo.Instance.GetEntity(orderId); if (order == null) { result.Status = false; result.Message = string.Format("订单号{0}不存在!", orderId); result.StatusCode = -100; } #region 旧参数 //var receiveAddress = BLL.Order.SoOrderBo.Instance.GetOrderReceiveAddress(order.ReceiveAddressSysNo); //if (receiveAddress == null) //{ // result.Status = false; // result.Message = string.Format("订单中的收货地址编号{0}不存在!", order.ReceiveAddressSysNo); // result.StatusCode = -101; //} //var area = BLL.Basic.BasicAreaBo.Instance.GetArea(receiveAddress.AreaSysNo); //if (area == null) //{ // result.Status = false; // result.Message = string.Format("地区({0})不存在!", receiveAddress.AreaSysNo); // result.StatusCode = -103; //} //var city = BLL.Basic.BasicAreaBo.Instance.GetArea(area.ParentSysNo); //if (city == null) //{ // result.Status = false; // result.Message = string.Format("城市({0})不存在!", area.ParentSysNo); // result.StatusCode = -104; //} //var province = BLL.Basic.BasicAreaBo.Instance.GetArea(city.ParentSysNo); //if (province == null) //{ // result.Status = false; // result.Message = string.Format("省份({0})不存在!", city.ParentSysNo); // result.StatusCode = -105; //} //if (!result.Status) // return result; //var param = "{\"orderId\":\"" + order.OrderNo + "\","; //param += "\"addr\":\"" + receiveAddress.StreetAddress + "\","; //param += "\"phone\":\"" + receiveAddress.MobilePhoneNumber + "\","; //param += "\"freight\":" + order.FreightAmount + ",";//运费 //param += "\"orderDate\":\"" + order.CreateDate.ToString("yyyy-MM-dd") + "\","; //param += "\"province\":\"" + JsonStrEscape(province.AreaName) + "\","; //param += "\"city\":\"" + JsonStrEscape(city.AreaName) + "\","; //param += "\"area\":\"" + JsonStrEscape(area.AreaName) + "\","; //param += "\"total\":" + order.ProductAmount + ",";//订单总金额 //param += "\"insuredFee\":0,"; //保价费用 //param += "\"cardType\":\"0\","; //证件类型 (默认身份证则填0) //param += "\"expressCode\":\"SF\","; //物流公司编码 //param += "\"busiMode\":\"BBC\","; //所属业务模式 (BBC/备货BC/直邮BC/个人物品) //param += "\"whCode\":\"FLC\","; //发货仓库代号 //param += "\"portCode\":\"5141\","; //口岸编码 //param += "\"platformCode\":\"IE150604146855\",";//海关企业备案号 //param += "\"cardNo\":\"" + receiveAddress.IDCardNo + "\",";//顾客身份证 //param += "\"name\":\"" + JsonStrEscape(receiveAddress.Name) + "\","; ////param += "\"senderContact\":\"测试公司\","; ////param += "\"senderPhone\":\"13500000000\","; ////param += "\"tax\":\"" + orderInfo.TaxFee + "\","; //param += "\"orderItemList\":{"; //param += "\"orderItems\":["; //var orderItemList = Hyt.BLL.Web.SoOrderBo.Instance.GetOrderItemListByOrderSysNo(orderId); //string orderItem = ""; //foreach (var item in orderItemList) //{ // if (orderItem != "") // orderItem += ","; // orderItem += "{"; // //8712400110037 // //orderItem += "\"qty\":" + item.Quantity + ",\"price\":" + item.SalesUnitPrice + ",\"total\":" + item.SalesAmount + ",\"productId\":\""+item.ErpCode+"\",\"productName\":\"" + JsonStrEscape(item.ProductName) + "\""; // orderItem += "\"qty\":" + item.Quantity + ",\"price\":" + item.SalesUnitPrice + ",\"total\":" + item.SalesAmount + ",\"productId\":\"8712400110136\",\"productName\":\"" + JsonStrEscape(item.ProductName) + "\""; // orderItem += "}"; //} //param += orderItem; //param += "]}}"; #endregion string method = "wtdex.trade.order.add"; order.ReceiveAddress = BLL.Order.SoOrderBo.Instance.GetOrderReceiveAddress(order.ReceiveAddressSysNo); order.OrderItemList = DataAccess.Order.ISoOrderItemDao.Instance.GetOrderItemsByOrderSysNo(order.SysNo); //ParaVoucherFilter voucherFilter = new ParaVoucherFilter(); //voucherFilter.SourceSysNo = order.SysNo; //CBFnReceiptVoucher recVoucher = BLL.Finance.FinanceBo.Instance.GetReceiptVouchers(voucherFilter).Rows.FirstOrDefault(); //recVoucher.VoucherItems = BLL.Finance.FnReceiptVoucherBo.Instance.GetReceiptVoucherItem(recVoucher.SysNo); var filter = new ParaOnlinePaymentFilter(); filter.OrderSysNo = orderId; var onlinePayment = BLL.Finance.FinanceBo.Instance.GetOnlinePayments(filter).Rows.Where(o => o.Status == 1).FirstOrDefault(); if (onlinePayment == null) { result.Message = "订单不存在在线支付记录"; return(result); } // 收货人 区 市 省 BsArea receiverDistrict = BLL.Basic.BasicAreaBo.Instance.GetArea(order.ReceiveAddress.AreaSysNo); BsArea receiverCity = BLL.Basic.BasicAreaBo.Instance.GetArea(receiverDistrict.ParentSysNo); BsArea receiverProvince = BLL.Basic.BasicAreaBo.Instance.GetArea(receiverCity.ParentSysNo); // 发货人 市 CBWhWarehouse warehouse = BLL.Warehouse.WhWarehouseBo.Instance.GetWarehouse(order.DefaultWarehouseSysNo); BsArea shipperCity = BLL.Basic.BasicAreaBo.Instance.GetArea(warehouse.CitySysNo); DsDealer dealer = BLL.Distribution.DsDealerBo.Instance.GetDsDealer(order.DealerSysNo); LgDeliveryType deliveryType = BLL.Logistics.DeliveryTypeBo.Instance.GetDeliveryType(order.DeliveryTypeSysNo); var newOrder = new WTDOrder(); newOrder.addr = TConvert.ToString(order.ReceiveAddress.StreetAddress).Trim(); newOrder.area = TConvert.ToString(receiverDistrict.AreaName).Trim(); newOrder.busiMode = "BC"; newOrder.cardNo = TConvert.ToString(order.ReceiveAddress.IDCardNo); newOrder.cardType = "0"; newOrder.city = TConvert.ToString(receiverCity.AreaName).Trim(); newOrder.consumerAddr = TConvert.ToString(order.ReceiveAddress.StreetAddress).Trim(); newOrder.consumerArea = TConvert.ToString(receiverDistrict.AreaName).Trim(); newOrder.consumerCity = TConvert.ToString(receiverCity.AreaName).Trim(); newOrder.consumerName = TConvert.ToString(order.ReceiveAddress.Name); newOrder.consumerPhone = !string.IsNullOrWhiteSpace(order.ReceiveAddress.MobilePhoneNumber) ? order.ReceiveAddress.MobilePhoneNumber : order.ReceiveAddress.PhoneNumber; newOrder.consumerProvince = TConvert.ToString(receiverProvince.AreaName).Trim(); newOrder.destCity = null; newOrder.expressCode = "YT";// "SF"; newOrder.expressNo = null; newOrder.freight = (double)order.FreightAmount; newOrder.ieFlag = null; newOrder.insuredFee = 0d; newOrder.invoice = null; newOrder.invoiceHead = null; newOrder.invoiceType = null; newOrder.isgac = 1; newOrder.isactpay = "0"; newOrder.isactlogistics = "1"; newOrder.mobile = null; newOrder.name = TConvert.ToString(order.ReceiveAddress.Name); newOrder.notes = TConvert.ToString(order.Remarks).Trim(); newOrder.orderDate = order.CreateDate.ToString("yyyy-MM-dd"); newOrder.orderId = onlinePayment.BusinessOrderSysNo; newOrder.paymentCode = null; newOrder.phone = !string.IsNullOrWhiteSpace(order.ReceiveAddress.MobilePhoneNumber) ? order.ReceiveAddress.MobilePhoneNumber : order.ReceiveAddress.PhoneNumber; newOrder.pickMode = "0";//BC、PS情况下必填0:散货/包裹1:大货/备货,有货物在我们仓库 newOrder.platformCode = config.PlatformCode; newOrder.portCode = config.PortCode; newOrder.prodFlag = null; newOrder.province = TConvert.ToString(receiverProvince.AreaName).Trim(); newOrder.seller = null; newOrder.senderContact = TConvert.ToString(dealer.ErpName); newOrder.senderPhone = !string.IsNullOrWhiteSpace(dealer.MobilePhoneNumber) ? dealer.MobilePhoneNumber : dealer.PhoneNumber; newOrder.tax = (double)order.TaxFee; newOrder.total = (double)order.ProductAmount; //newOrder.total = 100d; newOrder.whCode = TConvert.ToString(warehouse.LogisWarehouseCode); newOrder.zipCode = null; newOrder.orderItemList = new WTDOrderItemList(); newOrder.orderItemList.orderItems = new List <WTDOrderItem>(); WTDOrderItem orderItem = new WTDOrderItem(); foreach (var item in order.OrderItemList) { var product = BLL.Product.PdProductBo.Instance.GetProductNoCache(item.ProductSysNo); orderItem.groupBarcode = null; orderItem.isGroup = null; orderItem.postTax = null; orderItem.price = (double)item.SalesUnitPrice; orderItem.productId = product.ErpCode; orderItem.productName = TConvert.ToString(item.ProductName); orderItem.qty = item.Quantity; orderItem.total = (double)item.SalesAmount; newOrder.orderItemList.orderItems.Add(orderItem); //orderItem.groupBarcode = null; //orderItem.isGroup = null; //orderItem.postTax = null; //orderItem.price = 50d; //orderItem.productId = "8712400110136"; //orderItem.productName = TConvert.ToString(item.ProductName); //orderItem.qty = 2; //orderItem.total = 100d; //newOrder.orderItemList.orderItems.Add(orderItem); //break; } string postData = Util.Serialization.JsonUtil.ToJson2(newOrder); postData = InitParams(method, postData); var _result = Hyt.Util.WebUtil.PostForm(apiUrl, postData); result = GetResponseResult(_result); if (result.Status == true) { var soOrderSyncLogisticsLog = new SoOrderSyncLogisticsLog(); soOrderSyncLogisticsLog.OrderSysNo = orderId; soOrderSyncLogisticsLog.Code = (int)this.Code; soOrderSyncLogisticsLog.LastUpdateDate = (DateTime)System.Data.SqlTypes.SqlDateTime.MinValue; soOrderSyncLogisticsLog.StatusCode = ""; soOrderSyncLogisticsLog.StatusMsg = ""; soOrderSyncLogisticsLog.Packets = postData; soOrderSyncLogisticsLog.ReceiptContent = _result; soOrderSyncLogisticsLog.LastUpdateBy = 0; soOrderSyncLogisticsLog.LogisticsOrderId = ""; soOrderSyncLogisticsLog.CreateDate = DateTime.Now; soOrderSyncLogisticsLog.CreatedBy = BLL.Authentication.AdminAuthenticationBo.Instance.Current.Base.SysNo; SoOrderSyncLogisticsLogBo.Instance.Insert(soOrderSyncLogisticsLog); BLL.Order.SoOrderBo.Instance.UpdateOrderApiStatus(1, 3, orderId); } } catch (Exception ex) { result.Message = "向" + this.Code + "物流推送订单报错:" + ex.StackTrace; return(result); } return(result); }
/// <summary> /// 推送供应链订单 /// </summary> /// <param name="orderSysNo"></param> /// <returns></returns> /// <remarks> /// 2016-4-15 陈海裕 创建 /// 2016-5-20 刘伟豪 修改 /// </remarks> public override Result <string> SendOrder(int orderSysNo) { //防止并发操作 lock (lockHelper) { // type: pushOrderDataInfo var result = new Result <string>() { Status = false, StatusCode = 0, Message = "向" + this.Code + "供应链推送订单失败" }; if (orderSysNo <= 0) { return(result); } // json格式的post数据 string jsonData = ""; try { SoOrder order = BLL.Order.SoOrderBo.Instance.GetEntity(orderSysNo); if (order == null) { result.Message = "该订单不存在"; return(result); } order.ReceiveAddress = BLL.Order.SoOrderBo.Instance.GetOrderReceiveAddress(order.ReceiveAddressSysNo); order.OrderItemList = DataAccess.Order.ISoOrderItemDao.Instance.GetOrderItemsByOrderSysNo(order.SysNo); ParaVoucherFilter voucherFilter = new ParaVoucherFilter(); voucherFilter.SourceSysNo = order.SysNo; CBFnReceiptVoucher recVoucher = BLL.Finance.FinanceBo.Instance.GetReceiptVouchers(voucherFilter).Rows.FirstOrDefault(); recVoucher.VoucherItems = BLL.Finance.FnReceiptVoucherBo.Instance.GetReceiptVoucherItem(recVoucher.SysNo); // 收货人 区 市 省 BsArea receiverDistrict = BLL.Basic.BasicAreaBo.Instance.GetArea(order.ReceiveAddress.AreaSysNo); BsArea receiverCity = BLL.Basic.BasicAreaBo.Instance.GetArea(receiverDistrict.ParentSysNo); BsArea receiverProvince = BLL.Basic.BasicAreaBo.Instance.GetArea(receiverCity.ParentSysNo); DsDealer dealer = BLL.Distribution.DsDealerBo.Instance.GetDsDealer(order.DealerSysNo); HaiTunOrder newOrder = new HaiTunOrder(); newOrder.address = TConvert.ToString(order.ReceiveAddress.StreetAddress); newOrder.city = TConvert.ToString(receiverCity.AreaName.Trim()); newOrder.consignee = TConvert.ToString(order.ReceiveAddress.Name); newOrder.consumerNote = TConvert.ToString(order.Remarks); newOrder.country = "中国"; newOrder.district = TConvert.ToString(receiverDistrict.AreaName.Trim()); newOrder.idCardNumber = TConvert.ToString(order.ReceiveAddress.IDCardNo); newOrder.isCheck = "no"; newOrder.mobile = TConvert.ToString(order.ReceiveAddress.MobilePhoneNumber); newOrder.moneyPaid = TConvert.ToString(order.OrderAmount); newOrder.orderAmount = TConvert.ToString(order.OrderAmount); newOrder.orderSn = TConvert.ToString(order.SysNo); newOrder.paymentAccount = "*****@*****.**"; // 固定值 newOrder.paymentInfoIdCardNumber = TConvert.ToString(order.ReceiveAddress.IDCardNo); newOrder.paymentInfoMethod = "支付宝"; newOrder.paymentInfoName = TConvert.ToString(order.ReceiveAddress.Name); newOrder.paymentInfoNumber = TConvert.ToString(recVoucher.VoucherItems[0].VoucherNo); newOrder.province = TConvert.ToString(receiverProvince.AreaName); newOrder.shippingFee = TConvert.ToString(order.FreightAmount); newOrder.siteName = TConvert.ToString(dealer.ErpName); newOrder.siteType = "商城"; newOrder.tel = TConvert.ToString(order.ReceiveAddress.PhoneNumber); newOrder.zipcode = TConvert.ToString(order.ReceiveAddress.ZipCode); newOrder.items = new List <HaiTunOrderItem>(); HaiTunOrderItem haitunItem = new HaiTunOrderItem(); foreach (var item in order.OrderItemList) { #if DEBUG haitunItem.goodsName = "【广州保税 全国包邮】澳大利亚Swisse 奶蓟草护肝片肝脏排毒120粒 【2件起发】"; haitunItem.goodsPrice = "100"; haitunItem.goodsSn = "AUSW003"; haitunItem.quantity = "1"; newOrder.items.Add(haitunItem); break; #else PdProductStock productStock = BLL.Warehouse.PdProductStockBo.Instance.GetEntityByWP(order.DefaultWarehouseSysNo, item.ProductSysNo); var supplyProduct = BLL.Supply.ScProductBo.Instance.GetScProductInfo(productStock.ProductSku, (int)this.Code); if (supplyProduct != null) { haitunItem.goodsName = TConvert.ToString(supplyProduct.ProductName); haitunItem.goodsPrice = TConvert.ToString(item.SalesUnitPrice); haitunItem.goodsSn = TConvert.ToString(supplyProduct.SKU); haitunItem.quantity = TConvert.ToString(item.Quantity); newOrder.items.Add(haitunItem); } else { result.Message = "商品" + item.ProductSysNo + "对应的供应链商品不存在"; return(result); } #endif } jsonData = Util.Serialization.JsonUtil.ToJson2(new List <HaiTunOrder>() { newOrder }); var back = Post("pushOrderDataInfo", jsonData); result = GetResult(JObject.Parse(back)); if (result.Status) { } } catch (Exception ex) { result.Message = ex.Message; BLL.Log.SysLog.Instance.Error(LogStatus.系统日志来源.后台, this.Code + "供应链订单推送:" + ex.Message, ex); } return(result); } }
/// <summary> /// 添加交易订单 /// </summary> /// <param name="orderSysno"></param> /// <returns>2016-04-09 陈海裕 创建</returns> public override Result AddOrderTrade(int orderSysno) { // 订单id,用于日志记录 _orderSysNo = orderSysno; Result result = new Result(); result.Status = false; result.StatusCode = 0; result.Message = "接口调用失败"; if (orderSysno <= 0) { return(result); } lock (lockHelper) { try { SoOrder order = BLL.Order.SoOrderBo.Instance.GetEntity(orderSysno); if (order == null) { result.Message = "该订单不存在"; return(result); } if (order.CBLogisticsSendStatus == 1) { result.Message = "该订单已推送,不能重复操作"; return(result); } order.ReceiveAddress = BLL.Order.SoOrderBo.Instance.GetOrderReceiveAddress(order.ReceiveAddressSysNo); order.OrderItemList = DataAccess.Order.ISoOrderItemDao.Instance.GetOrderItemsByOrderSysNo(order.SysNo); ParaVoucherFilter voucherFilter = new ParaVoucherFilter(); voucherFilter.SourceSysNo = order.SysNo; CBFnReceiptVoucher recVoucher = BLL.Finance.FinanceBo.Instance.GetReceiptVouchers(voucherFilter).Rows.FirstOrDefault(); recVoucher.VoucherItems = BLL.Finance.FnReceiptVoucherBo.Instance.GetReceiptVoucherItem(recVoucher.SysNo); // 收货人 区 市 省 BsArea receiverDistrict = BLL.Basic.BasicAreaBo.Instance.GetArea(order.ReceiveAddress.AreaSysNo); BsArea receiverCity = BLL.Basic.BasicAreaBo.Instance.GetArea(receiverDistrict.ParentSysNo); BsArea receiverProvince = BLL.Basic.BasicAreaBo.Instance.GetArea(receiverCity.ParentSysNo); // 发货人 市 CBWhWarehouse warehouse = BLL.Warehouse.WhWarehouseBo.Instance.GetWarehouse(order.DefaultWarehouseSysNo); BsArea shipperCity = BLL.Basic.BasicAreaBo.Instance.GetArea(warehouse.CitySysNo); DsDealer dealer = BLL.Distribution.DsDealerBo.Instance.GetDsDealer(order.DealerSysNo); LgDeliveryType deliveryType = BLL.Logistics.DeliveryTypeBo.Instance.GetDeliveryType(order.DeliveryTypeSysNo); EDTOrder newOrder = new EDTOrder(); newOrder.Address1 = order.ReceiveAddress.StreetAddress; //newOrder.Base_ChannelInfoID = "1"; newOrder.Base_ChannelInfoID = "HKKJ"; newOrder.City = receiverCity.AreaName; newOrder.ConsigneeName = order.ReceiveAddress.Name; newOrder.Contact = !string.IsNullOrWhiteSpace(order.ReceiveAddress.MobilePhoneNumber) ? order.ReceiveAddress.MobilePhoneNumber : order.ReceiveAddress.PhoneNumber; newOrder.Country = "CN"; newOrder.CusRemark = order.Remarks; newOrder.GFF_CustomerID = CoustomerID; newOrder.OrderStatus = "3"; newOrder.State = receiverProvince.AreaName; newOrder.Style = "1"; //newOrder.ShippingService = "GZBC"; List <EDTOrderProduct> productList = new List <EDTOrderProduct>(); EDTOrderProduct product = null; foreach (var item in order.OrderItemList) { PdProductStock productStock = BLL.Warehouse.PdProductStockBo.Instance.GetEntityByWP(order.DefaultWarehouseSysNo, item.ProductSysNo); product = new EDTOrderProduct(); product.CnName = item.ProductName; product.EnName = ""; product.MaterialRefNo = TConvert.ToString(productStock.ProductSku); product.Price = item.SalesUnitPrice.ToString(); product.Quantity = item.Quantity.ToString(); product.Weight = ""; product.WarehouseID = warehouse.LogisWarehouseCode; productList.Add(product); } if (product == null) { result.Message = "订单明细不存在"; return(result); } StringBuilder strorderinfo = new StringBuilder(); strorderinfo.Append("Style:" + newOrder.Style + ";"); strorderinfo.Append("GFF_CustomerID:" + newOrder.GFF_CustomerID + ";"); strorderinfo.Append("GFF_ReceiveSendAddressID:;"); strorderinfo.Append("ConsigneeName:" + newOrder.ConsigneeName + ";"); strorderinfo.Append("Country:" + newOrder.Country + ";"); strorderinfo.Append("Base_ChannelInfoID:" + newOrder.Base_ChannelInfoID + ";"); strorderinfo.Append("State:" + newOrder.State + ";"); strorderinfo.Append("City:" + newOrder.City + ";"); strorderinfo.Append("OrderStatus:" + newOrder.OrderStatus + ";"); strorderinfo.Append("Address1:" + newOrder.Address1 + ";"); strorderinfo.Append("Address2:;"); strorderinfo.Append("CsRefNo:;"); strorderinfo.Append("Zipcode:;"); strorderinfo.Append("Contact:" + newOrder.Contact + ";"); strorderinfo.Append("CusRemark:" + newOrder.CusRemark + ";"); strorderinfo.Append("TrackingNo:;"); //strorderinfo.Append("ShippingService:" + newOrder.ShippingService + ";"); StringBuilder strorderproduct = new StringBuilder(); for (int i = 0; i < productList.Count; i++) { strorderproduct.Append("MaterialRefNo:" + productList[i].MaterialRefNo + ","); //strorderproduct.Append("MaterialRefNo:123456,"); strorderproduct.Append("Quantity:" + productList[i].Quantity + ","); strorderproduct.Append("Price:" + productList[i].Price + ","); strorderproduct.Append("Weight:" + productList[i].Weight + ","); strorderproduct.Append("EnName:" + productList[i].EnName + ","); strorderproduct.Append("WarehouseID:" + productList[i].WarehouseID + ","); strorderproduct.Append("ProducingArea:,"); productList[i].CnName = Regex.Replace(productList[i].CnName, @"[/\(\)(),]", ""); strorderproduct.Append("CnName:" + productList[i].CnName + ",;"); } ServiceRefEightDT.APIWebServiceSoapClient newService = new ServiceRefEightDT.APIWebServiceSoapClient(); string strResult = newService.InsertUpdateOrder(strorderinfo.ToString(), strorderproduct.ToString(), "", Secretkey); if (strResult.Contains("成功")) { try { CrossBorderLogisticsOrder cbOrder = BLL.CrossBorderLogistics.CrossBorderLogisticsOrderBo.Instance.GetEntityByOrderSysNo(orderSysno); if (cbOrder == null) { Model.CrossBorderLogisticsOrder logisticsOrder = new Model.CrossBorderLogisticsOrder(); logisticsOrder.SoOrderSysNo = orderSysno; logisticsOrder.LogisticsOrderId = Regex.Match(strResult, "[a-zA-Z0-9]+").ToString(); logisticsOrder.LogisticsCode = (int)this.Code; BLL.CrossBorderLogistics.CrossBorderLogisticsOrderBo.Instance.InsertEntity(logisticsOrder); } // 更新订单状态 BLL.Order.SoOrderBo.Instance.UpdateOrderApiStatus(1, 3, orderSysno); } catch (Exception ex) { BLL.Log.SysLog.Instance.Error(LogStatus.系统日志来源.后台, "订单" + orderSysno + "保存跨境物流返回的单号失败。", ex); } result.Status = true; } result.Message = strResult; } catch (Exception ex) { result.Message = "向" + this.Code + "物流推送订单报错:" + ex.StackTrace; return(result); } } return(result); }
public void Test1() { byte[] byteArr = TStream.GetFileByteArr("F:\\华为手机备忘录.txt"); string text = TConvert.BytesToString(byteArr); }
public void ObjectToJsonTest() { string[] arr = new string[] { "1", "2" }; var result = TConvert.ObjectToJson(arr); var result2 = TConvert.JsonToObject <List <string> >(result); }
private void progFull_TimeChange(double value) { label2.Text = TConvert.ToTimeStr(value) + "/" + maxtime; }
private void progFull_MaxTimeChange(double value) { maxtime = TConvert.ToTimeStr(value); }
public static TConvert ClassConvert(this IConvert obj) { TC = (TC == null) ? new TConvert() : TC; return(TC); }
/// <summary> /// 添加交易订单 /// </summary> /// <param name="orderId">销售订单系统编号</param> /// <returns></returns> /// <remarks></remarks> /// <remarks>2016-3-8 杨浩 创建</remarks> /// <remarks>2016-09-22 周 重构</remarks> public override Result AddOrderTrade(int orderId) { var result = new Result() { Status = false, StatusCode = 0, Message = "向" + this.Code + "物流推送订单失败" }; #region try { var order = Hyt.BLL.Order.SoOrderBo.Instance.GetEntity(orderId); if (order == null) { result.Status = false; result.Message = string.Format("订单号{0}不存在!", orderId); result.StatusCode = -100; } order.ReceiveAddress = BLL.Order.SoOrderBo.Instance.GetOrderReceiveAddress(order.ReceiveAddressSysNo); order.OrderItemList = DataAccess.Order.ISoOrderItemDao.Instance.GetOrderItemsByOrderSysNo(order.SysNo); var filter = new ParaOnlinePaymentFilter(); filter.OrderSysNo = orderId; var onlinePayment = BLL.Finance.FinanceBo.Instance.GetOnlinePayments(filter).Rows.Where(o => o.Status == 1).FirstOrDefault(); if (onlinePayment == null) { result.Message = "订单不存在在线支付记录"; return(result); } // 收货人 区 市 省 BsArea receiverDistrict = BLL.Basic.BasicAreaBo.Instance.GetArea(order.ReceiveAddress.AreaSysNo); BsArea receiverCity = BLL.Basic.BasicAreaBo.Instance.GetArea(receiverDistrict.ParentSysNo); BsArea receiverProvince = BLL.Basic.BasicAreaBo.Instance.GetArea(receiverCity.ParentSysNo); // 发货人 市 CBWhWarehouse warehouse = BLL.Warehouse.WhWarehouseBo.Instance.GetWarehouse(order.DefaultWarehouseSysNo); BsArea shipperCity = BLL.Basic.BasicAreaBo.Instance.GetArea(warehouse.CitySysNo); DsDealer dealer = BLL.Distribution.DsDealerBo.Instance.GetDsDealer(order.DealerSysNo); LgDeliveryType deliveryType = BLL.Logistics.DeliveryTypeBo.Instance.GetDeliveryType(order.DeliveryTypeSysNo); var newOrder = new CreatedOrderApiRequest(); newOrder.OutOrderNo = order.SysNo.ToString(); newOrder.DeliveryCode = "3";//暂时默认1(后期此参数作废) newOrder.ReceiverName = TConvert.ToString(order.ReceiveAddress.Name); newOrder.ReceiverMobile = !string.IsNullOrWhiteSpace(order.ReceiveAddress.MobilePhoneNumber) ? order.ReceiveAddress.MobilePhoneNumber : order.ReceiveAddress.PhoneNumber; newOrder.ReceiverProvince = TConvert.ToString(receiverProvince.AreaName).Trim(); newOrder.ReceiverCity = TConvert.ToString(receiverCity.AreaName).Trim(); newOrder.ReceiverDistrict = TConvert.ToString(receiverDistrict.AreaName).Trim(); newOrder.ReceiverAddress = TConvert.ToString(order.ReceiveAddress.StreetAddress).Trim(); newOrder.ReceiverIdCard = TConvert.ToString(order.ReceiveAddress.IDCardNo); newOrder.ReceiverFrontIdCardImageUrl = HttpContext.Current.Request.Url.Host + TConvert.ToString(order.ReceiveAddress.IDCardImgs); newOrder.ReceiverOppositeIdCardImageUrl = HttpContext.Current.Request.Url.Host + TConvert.ToString(order.ReceiveAddress.IDCardImgs); newOrder.UserRemark = order.Remarks; newOrder.ThirdPlatformPaymentName = Enum.GetName(typeof(Hyt.Model.CommonEnum.PayCode), order.PayTypeSysNo); var payment = Hyt.BLL.Finance.FinanceBo.Instance.GetOnlinePaymentBySourceSysNo(orderId); string PaymentNumber = ""; if (payment != null) { PaymentNumber = payment.VoucherNo; } newOrder.ThirdPlatformPaymentNumber = PaymentNumber; newOrder.Items = new List <CreatedOrderItemRequest>(); CreatedOrderItemRequest orderItem = new CreatedOrderItemRequest(); foreach (var item in order.OrderItemList) { var product = BLL.Product.PdProductBo.Instance.GetProductNoCache(item.ProductSysNo); orderItem.SkuId = product.ErpCode; orderItem.Quantity = item.Quantity; newOrder.Items.Add(orderItem); } var json = Newtonsoft.Json.JsonConvert.SerializeObject(newOrder); //推送订单 var _result = CreatedOrder(newOrder); if (_result.ResultCode == 200) { var soOrderSyncLogisticsLog = new SoOrderSyncLogisticsLog(); soOrderSyncLogisticsLog.OrderSysNo = orderId; soOrderSyncLogisticsLog.Code = (int)this.Code; soOrderSyncLogisticsLog.LastUpdateDate = (DateTime)System.Data.SqlTypes.SqlDateTime.MinValue; soOrderSyncLogisticsLog.StatusCode = ""; soOrderSyncLogisticsLog.StatusMsg = ""; soOrderSyncLogisticsLog.Packets = json; soOrderSyncLogisticsLog.ReceiptContent = _result.Tag.ToString(); soOrderSyncLogisticsLog.LastUpdateBy = 0; soOrderSyncLogisticsLog.LogisticsOrderId = ""; soOrderSyncLogisticsLog.CreateDate = DateTime.Now; soOrderSyncLogisticsLog.CreatedBy = BLL.Authentication.AdminAuthenticationBo.Instance.Current.Base.SysNo; SoOrderSyncLogisticsLogBo.Instance.Insert(soOrderSyncLogisticsLog); BLL.Order.SoOrderBo.Instance.UpdateOrderApiStatus(1, 3, orderId); result.Message = "向" + this.Code + "物流推送订单成功:回执单号:" + _result.Tag.ToString(); } else { result.Message = _result.Message; } } catch (Exception ex) { result.Message = "向" + this.Code + "物流推送订单报错:" + ex.StackTrace; return(result); } #endregion return(result); }
Bitmap PrintBit(Rectangle original_rect) { Bitmap original_bmp = new Bitmap(original_rect.Width, original_rect.Height); using (Graphics g = Graphics.FromImage(original_bmp)) { g.SmoothingMode = SmoothingMode.HighQuality; g.InterpolationMode = InterpolationMode.HighQualityBicubic; g.CompositingQuality = CompositingQuality.HighQuality; g.PixelOffsetMode = PixelOffsetMode.HighQuality; //高像素偏移质量 using (LinearGradientBrush myBrush = new LinearGradientBrush(original_rect, Color.Transparent, Color.FromArgb(100, Color.Black), LinearGradientMode.Vertical)) { g.FillRectangle(myBrush, original_rect); } try { #region 绘制进度条 if (_maxvalue > 0) { //double p = _value; g.FillRectangle(solidBrush_WhiteSmoke, prog_rect); if (_buffvalue != null && _buffvalue.Count > 0) { if (_buffvalue.Count == 1 && _buffvalue[0].Index == -10) { g.FillRectangle(solidBrush_WhiteSmokes, prog_rect); } else { float _with = (float)prog_rect.Width / Leng; foreach (_Buffe item in _buffvalue) { RectangleF rectangleF = new RectangleF(prog_rect.X + (item.Index * _with), prog_rect.Y, item.Leng * _with, prog_rect.Height); g.FillRectangle(solidBrush_WhiteSmokes, rectangleF); } } } string time_txt; bool _isRenderEllipse = false; float uk; if (IsMouseDown) { _isRenderEllipse = true; //10 double jing = _value / 100.0; uk = (float)(original_rect.Width * jing); time_txt = TConvert.ToTimeStr(jing * _maxvalue, _maxvalue); } else { //6 uk = (float)(original_rect.Width * (_value / _maxvalue)); if (IsMouseHove) { _isRenderEllipse = true; } time_txt = TConvert.ToTimeStr(_value, _maxvalue); } g.FillRectangle(_ValueColor, new RectangleF(prog_rect.X, prog_rect.Y, uk, prog_rect.Height)); if (_isRenderEllipse) { RectangleF y_rect = new RectangleF(prog_rect.X + uk - prog_rect.Height, prog_rect.Y - (prog_rect.Height / 2), prog_rect.Height * 2, prog_rect.Height * 2); RectangleF y_rects = new RectangleF(y_rect.X - 2, y_rect.Y - 2, y_rect.Width + 4, y_rect.Height + 4); using (GraphicsPath path = new GraphicsPath()) { path.AddEllipse(y_rects); //渐变填充GraphicsPath对象 using (PathGradientBrush brush = new PathGradientBrush(path)) { brush.CenterColor = Color.Black; //渐变中心点位置 //brush.CenterPoint = new PointF(100f, 100f); brush.SurroundColors = new Color[] { Color.Transparent }; g.FillPath(brush, path); } } g.FillEllipse(solidBrush_White, y_rect); } if (prog_time_rect.Width > 40) { g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias; g.DrawString(time_txt, prog_time_rect.Width > 140 ? TimeFont : TimeFont_Mini, solidBrush_White, prog_time_rect, stringFormat); } //if (jing >= 0) //{ // if (_buffvalue != null) // { // if (_buffvalue.Count == 1 && _buffvalue[0].Index == -10) // { g.FillRectangle(solidBrush_White, new RectangleF(prog_rect.X, prog_rect.Height - 1, prog_rect.Width, 1)); } // else // { // float _with = (float)prog_rect.Width / Leng; // foreach (_Buffe item in _buffvalue) // { // RectangleF rectangleF = new RectangleF(prog_rect.X + (item.Index * _with), prog_rect.Height - 3, item.Leng * _with, 3); // g.FillRectangle(solidBrush_White, rectangleF); // } // } // } // float uk = (float)(prog_rect.Width * (jing / 100.0)); // g.FillRectangle(_BlockColor, new RectangleF(prog_rect.X, prog_rect.Y, uk, prog_rect.Height)); // g.FillRectangle(new SolidBrush(Color.FromArgb(10, 255, 255, 255)), prog_rect); //} } //else if (player.IsPlaying && prog_time_rect.Width > 20) //{ // g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias; // g.DrawString("直播", TimeFont_Mini, solidBrush_White, prog_time_rect, stringFormat); //} #endregion //g.DrawArc(pen, lonsrect, 0, 360f); if (rippleAnimationManager.IsAnimating()) { for (int i = 0; i < rippleAnimationManager.GetAnimationCount(); i++) { double animationValue = rippleAnimationManager.GetProgress(i); if (animationValue > 0) { float wi = ((float)animationValue * (btn_play_rect_render.Width)) + btn_play_rect_default_render.Height; float gogo = (original_rect.Height - wi) / 2; RectangleF recc = new RectangleF(gogo - 6, gogo + 6, wi, wi); g.DrawEllipse(pentwo, recc); } } } else if (!_IsPlay) { g.DrawEllipse(pen, btn_play_rect_default_render); } if (visible_setting) { g.DrawImage(Properties.Resources.ios_settings, btn_setting_rect); } if (visible_download) { g.DrawImage(Properties.Resources.ios_download, btn_download_rect); g.FillEllipse(solidBrush_Red, btn_download_rects); g.DrawString(player.DownTotalCount.ToString(), TimeFont_Mini, solidBrush_White, btn_download_rects, stringFormatC); } if (visible_volume) { g.DrawImage(GetV(), btn_volume_rect); } if (visible_photo) { g.DrawImage(Properties.Resources.ios_photo_b, btn_photo_rect); } if (visible_record) { g.DrawEllipse(pen2, btn_record_rects1); g.FillEllipse(solidBrush_Red, player.isRecord ? btn_record_rects2 : btn_record_rects3); } if (visible_tv) { g.DrawImage(Properties.Resources.ios_tv, btn_tv_rect); } g.DrawImage(player.IsFullScreen ? Properties.Resources.btn_fullscreen_ok : Properties.Resources.btn_fullscreen, btn_fullscreen_rects); g.DrawImage(Properties.Resources.btn_stop, btn_stop_rect); if (_IsNext) { g.DrawImage(Properties.Resources.btn_next, btn_next_rect); } g.DrawImage(_IsPlay ? Properties.Resources.btn_pause : Properties.Resources.btn_play, btn_play_rect); } catch { } } return(original_bmp); }
private static T ToTDefault <T>(this RedisValue redisValue, TConvert <T> converter, T def = default(T)) { return(converter(redisValue, out T res) ? res : def); }
public void Test() { var buffer = TStream.GetFileByteArr(@"d:\¹ÅÊ«´ÊÃû¾ä¡¾¹Ù·½ÍƼö¡¿.scel"); string txt = TConvert.BytesToString(buffer, Encoding.Default); }
Bitmap PrintBit(Rectangle original_rect) { Bitmap original_bmp = new Bitmap(original_rect.Width, original_rect.Height); using (Graphics g = Graphics.FromImage(original_bmp)) { g.SmoothingMode = SmoothingMode.HighQuality; g.InterpolationMode = InterpolationMode.HighQualityBicubic; g.CompositingQuality = CompositingQuality.HighQuality; g.PixelOffsetMode = PixelOffsetMode.HighQuality; //高像素偏移质量 g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias; using (LinearGradientBrush myBrush = new LinearGradientBrush(original_rect, Color.FromArgb(100, Color.Black), Color.Transparent, LinearGradientMode.Vertical)) { g.FillRectangle(myBrush, original_rect); } if (isHove_close) { g.FillRectangle(solidBrush_Hove2, btn_close_rect); } g.DrawImage(Properties.Resources.icon_play, btn_logo_rect); g.DrawImage(Properties.Resources.btn_close, btn_close_rect); g.DrawImage(player.isMax || player.IsFullScreen ? (isHove_max ? TSkin.Api.GetImgHDispose(Properties.Resources.btn_max, 0.3f) : Properties.Resources.btn_max) : (isHove_max ? TSkin.Api.GetImgHDispose(Properties.Resources.btn_restore, 0.3f) : Properties.Resources.btn_restore), btn_max_rect); g.DrawImage(isHove_min ? TSkin.Api.GetImgHDispose(Properties.Resources.btn_min, 0.3f) : Properties.Resources.btn_min, btn_min_rect); if (!player.IsFullScreen) { g.DrawImage(player.isTop ? (isHove_top ? TSkin.Api.GetImgHDispose(Properties.Resources.btn_top_ok) : Properties.Resources.btn_top_ok) : (isHove_top ? TSkin.Api.GetImgHDispose(Properties.Resources.btn_top) : Properties.Resources.btn_top), btn_top_rects); if (!player.isDLNA) { g.DrawImage(player.isMini ? (isHove_mini ? TSkin.Api.GetImgHDispose(Properties.Resources.btn_mini_ok) : Properties.Resources.btn_mini_ok) : (isHove_mini ? TSkin.Api.GetImgHDispose(Properties.Resources.btn_mini) : Properties.Resources.btn_mini), btn_mini_rects); } //if (isHove_top) //{ // g.FillRectangle(solidBrush_Hove, btn_top_rect); //} //if (isHove_mini) //{ // g.FillRectangle(solidBrush_Hove, btn_mini_rect); //} } //if (isHove_max) //{ // g.FillRectangle(solidBrush_Hove, btn_max_rect); //} //if (isHove_min) //{ // g.FillRectangle(solidBrush_Hove, btn_min_rect); //} if (player.IsFullScreen) { g.DrawString(DateTime.Now.ToString("HH:mm"), fontws, solidBrush_White, original_rect, stringFormats); } if (!string.IsNullOrEmpty(_explain)) { g.DrawString(_explain, fontw, solidBrush_WhiteSmoke, explain_rect, stringFormat); } if (name_rect.Width > 0 && !string.IsNullOrEmpty(player.Text)) { g.DrawString(player.Text, font, solidBrush_White, name_rect, stringFormat); } if (player.isRecord) { g.DrawString("● REC " + TConvert.ToTimeStr(DateTime.Now - player.RecordTime), fontws, solidBrush_Red, rec_rect, stringFormat2); } } return(original_bmp); }