Example #1
0
        public async Task <IActionResult> Add(SellerDeliveryRequest request)
        {
            request.WxappId    = GetSellerSession().WxappId;
            request.CreateTime = DateTime.Now;
            request.UpdateTime = DateTime.Now;
            try
            {
                var deliveryId = await _fsql.Insert <Delivery>().AppendData(request.Mapper <Delivery>()).ExecuteIdentityAsync();

                var deliveryRules = request.BuildDeliveryRules((uint)deliveryId);
                await _fsql.Insert <DeliveryRule>().AppendData(deliveryRules).ExecuteAffrowsAsync();
            }
            catch (Exception e)
            {
                LogManager.Error(GetType(), e);
                return(No(e.Message));
            }
            return(YesRedirect("保存成功!", "/setting.delivery/index"));
        }
Example #2
0
        public async Task <IActionResult> Edit(SellerDeliveryRequest request, uint id)
        {
            try
            {
                var delivery = await _fsql.Select <Delivery>().Where(l => l.DeliveryId == id).ToOneAsync();

                if (delivery == null)
                {
                    return(No("该记录不存在或已被删除!"));
                }

                request.DeliveryId = delivery.DeliveryId;
                request.WxappId    = delivery.WxappId;
                request.CreateTime = DateTime.Now;
                request.UpdateTime = DateTime.Now;

                delivery.Name       = request.Name;
                delivery.Method     = request.Method.ToByte();
                delivery.Sort       = request.Sort;
                delivery.CreateTime = DateTime.Now.ConvertToTimeStamp();

                var count = await _fsql.Update <Delivery>().SetSource(delivery).ExecuteAffrowsAsync();

                if (count > 0)
                {
                    var deliveryRules = request.BuildDeliveryRules(delivery.DeliveryId);
                    count = await _fsql.Delete <DeliveryRule>().Where(l => l.DeliveryId == delivery.DeliveryId).ExecuteAffrowsAsync();

                    if (count > 0)
                    {
                        await _fsql.Insert <DeliveryRule>().AppendData(deliveryRules).ExecuteAffrowsAsync();
                    }
                }
            }
            catch (Exception e)
            {
                LogManager.Error(GetType(), e);
                return(No(e.Message));
            }
            return(YesRedirect("更新成功!", "/setting.delivery/index"));
        }