public void AddWayBillTemplate(WayBillTemplate wayBillTemplate)
        {
            //状态 1-代表启用,2-代表禁用
            var list =
                _wayBillTemplateRepository.GetList(
                    p =>
                    p.TemplateName == wayBillTemplate.TemplateName.Trim() &&
                    p.ShippingMethodId == wayBillTemplate.ShippingMethodId &&
                    p.TemplateTypeId == wayBillTemplate.TemplateTypeId &&
                    p.Status != 2);

            if (null != list)
            {
                string countryNames = (from itemValue in list
                                       from str in
                                       wayBillTemplate.Countries.Split(new char[] { ',' },
                                                                       StringSplitOptions.RemoveEmptyEntries)
                                       where itemValue.Countries.Contains(str)
                                       select str).Aggregate(string.Empty, (current, str) => current.Contains(str) ? current : current + (str + ","));
                bool isExistCountryName = !string.IsNullOrWhiteSpace(countryNames);
                //判断国家是否重复
                if (isExistCountryName)
                {
                    throw new ArgumentException("该类型的模板存在重复国家有:" + countryNames);
                }
            }
            Check.Argument.IsNotNull(wayBillTemplate, "运单模板");
            wayBillTemplate.TemplateName  = wayBillTemplate.TemplateName.Trim();
            wayBillTemplate.CreatedBy     = _workContext.User == null?"" :_workContext.User.UserUame;
            wayBillTemplate.CreatedOn     = DateTime.Now;
            wayBillTemplate.LastUpdatedBy = _workContext.User == null ? "" : _workContext.User.UserUame;
            wayBillTemplate.LastUpdatedOn = DateTime.Now;
            _wayBillTemplateRepository.Add(wayBillTemplate);
            _wayBillTemplateRepository.UnitOfWork.Commit();
        }
        public void UpdateWayBillTemplate(WayBillTemplate wayBillTemplate)
        {
            Check.Argument.IsNotNull(wayBillTemplate, "运单模板");
            Check.Argument.IsNullOrWhiteSpace(wayBillTemplate.WayBillTemplateId.ToString(), "运单模板信息ID");
            WayBillTemplate wayBill = _wayBillTemplateRepository.Get(wayBillTemplate.WayBillTemplateId);

            if (wayBill == null)
            {
                throw new ArgumentException("该运单模板ID:{0}不存在".FormatWith(wayBillTemplate.WayBillTemplateId));
            }
            //var isExist= _wayBillTemplateRepository.Exists(
            //    p =>p.WayBillTemplateId!=wayBillTemplate.WayBillTemplateId&&
            //    p.TemplateName == wayBillTemplate.TemplateName && p.ShippingMethodId == wayBillTemplate.ShippingMethodId);
            //if (isExist)
            //{
            //    throw new ArgumentException("运单打印模版,相同名称,相同运输方式,只能有一个模版");
            //}
            var list =
                _wayBillTemplateRepository.GetList(
                    p =>
                    p.WayBillTemplateId != wayBillTemplate.WayBillTemplateId &&
                    p.TemplateName == wayBillTemplate.TemplateName.Trim() &&
                    p.ShippingMethodId == wayBillTemplate.ShippingMethodId &&
                    p.TemplateTypeId == wayBillTemplate.TemplateTypeId);

            if (null != list)
            {
                string countryNames = (from itemValue in list
                                       from str in
                                       wayBillTemplate.Countries.Split(new char[] { ',' },
                                                                       StringSplitOptions.RemoveEmptyEntries)
                                       where itemValue.Countries.Contains(str)
                                       select str).Aggregate(string.Empty, (current, str) => current.Contains(str) ? current : current + (str + ","));
                bool isExistCountryName = !string.IsNullOrWhiteSpace(countryNames);
                //判断国家是否重复
                if (isExistCountryName)
                {
                    throw new ArgumentException("该类型的模板存在重复国家有:" + countryNames);
                }
            }
            wayBill.TemplateName      = wayBillTemplate.TemplateName.Trim();
            wayBill.TemplateTypeId    = wayBillTemplate.TemplateTypeId;
            wayBill.ShippingMethodId  = wayBillTemplate.ShippingMethodId;
            wayBill.RowNumber         = wayBillTemplate.RowNumber;
            wayBill.ColumnNumber      = wayBillTemplate.ColumnNumber;
            wayBill.Status            = wayBillTemplate.Status;
            wayBill.TemplateContent   = wayBillTemplate.TemplateContent;
            wayBill.Remark            = wayBillTemplate.Remark;
            wayBill.TemplateHeadId    = wayBillTemplate.TemplateHeadId;
            wayBill.TemplateContentId = wayBillTemplate.TemplateContentId;
            wayBill.Countries         = wayBillTemplate.Countries;
            wayBill.LinkMode          = wayBillTemplate.LinkMode;
            wayBill.LastUpdatedBy     = _workContext.User.UserUame;
            wayBill.LastUpdatedOn     = DateTime.Now;
            _wayBillTemplateRepository.Modify(wayBill);
            _wayBillTemplateRepository.UnitOfWork.Commit();
        }