pxx上货功能 temu备货管理可以查询商品售后率并根据售后率处理备货
This commit is contained in:
1 parent
f4fedf1e2f
commit
0e6a034d5f
34 files changed
+3568
-893
No files matched your search
@@ -194,11 +194,13 @@
|
||||
<Compile Include="Model\Param\ShopManage\DouShopSettingParam.cs" />
|
||||
<Compile Include="Model\Param\TemuProductManage\TemuProductWords.cs" />
|
||||
<Compile Include="Model\Param\TemuProductManage\TemuSizeSpecParam.cs" />
|
||||
<Compile Include="Model\Result\PDDResult\PDDChanceProductInfo.cs" />
|
||||
<Compile Include="Model\Result\PDDResult\PDDProductDecorationInfo.cs" />
|
||||
<Compile Include="Model\Result\PDDResult\PDDProductDetailInfo.cs" />
|
||||
<Compile Include="Model\Result\PDDResult\PDDProductInfo.cs" />
|
||||
<Compile Include="Model\Result\PDDResult\PDDProductPropertyInfo.cs" />
|
||||
<Compile Include="Model\Result\PDDResult\PDDProductTemplateInfo.cs" />
|
||||
<Compile Include="Model\Result\PDDResult\PDDSizeSpecInfo.cs" />
|
||||
<Compile Include="Model\Result\TemuActivityInfo.cs" />
|
||||
<Compile Include="Model\Result\TemuActivityMatchProductInfo.cs" />
|
||||
<Compile Include="Model\Result\TemuCategoryTemplateInfo.cs" />
|
||||
|
||||
@@ -27,8 +27,8 @@ namespace AllBase
|
||||
/// <summary>
|
||||
/// 版本ID
|
||||
/// </summary>
|
||||
public static int VersionCount = 589;
|
||||
//public static int VersionCount = 589;
|
||||
public static int VersionCount = 593;
|
||||
//public static int VersionCount = 593;
|
||||
|
||||
/// <summary>
|
||||
/// 版本号
|
||||
|
||||
@@ -185,6 +185,17 @@ namespace AllBase.Model.Param.PDDProdParam
|
||||
public string value { get; set; }
|
||||
public string value_unit { get; set; }
|
||||
public string content { get; set; }
|
||||
|
||||
}
|
||||
|
||||
public class goods_spec_property_param : goods_property_param
|
||||
{
|
||||
// 以下为sku属性
|
||||
public long? parent_spec_id { get; set; }
|
||||
public long? spec_id { get; set; }
|
||||
public string note { get; set; }
|
||||
public string img_url { get; set; }
|
||||
public int? group_id { get; set; }
|
||||
}
|
||||
|
||||
public class gallery_param
|
||||
@@ -223,9 +234,11 @@ namespace AllBase.Model.Param.PDDProdParam
|
||||
public class sku_param
|
||||
{
|
||||
public long? id { get; set; }
|
||||
public long? sku_id { get; set; }
|
||||
public int? limit_quantity { get; set; }
|
||||
public string out_sku_sn { get; set; }
|
||||
public int? is_onsale { get; set; }
|
||||
public int? pre_sale_time { get; set; }
|
||||
public string multi_price_in_yuan
|
||||
{
|
||||
get { return (multi_price.ParseToInt() * 0.01).ParseToString(); }
|
||||
@@ -240,8 +253,10 @@ namespace AllBase.Model.Param.PDDProdParam
|
||||
public int? price { get; set; }
|
||||
public int? quantity_delta { get; set; }
|
||||
public string thumb_url { get; set; }
|
||||
public long? thumb_url_file_id { get; set; }
|
||||
public int? weight { get; set; }
|
||||
public List<spec_param> spec { get; set; }
|
||||
public object length { get; set; }
|
||||
public object oversea_sku { get; set; }
|
||||
public string sku_srv_templates { get; set; }
|
||||
public List<object> shipment_limit_second_list { get; set; }
|
||||
|
||||
@@ -15,8 +15,11 @@ namespace AllBase.Model.Result
|
||||
public string from_shop_id { get; set; }
|
||||
public string spu_id { get; set; }
|
||||
public string skc_id { get; set; }
|
||||
public string main_cat_id { get; set; }
|
||||
public string cat_id { get; set; }
|
||||
public string main_cat_name { get; set; }
|
||||
public string cat_name { get; set; }
|
||||
public string price_text { get; set; }
|
||||
public string ext_code { get; set; }
|
||||
public string product_name { get; set; }
|
||||
public string product_json { get; set; }
|
||||
@@ -33,5 +36,8 @@ namespace AllBase.Model.Result
|
||||
public string head_words { get; set; }
|
||||
public string end_words { get; set; }
|
||||
public string fission_words { get; set; }
|
||||
|
||||
// 是否拼多多上传成功
|
||||
public bool isPddUpLoad { get; set; } = false;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace AllBase.Model.Result.PDDResult
|
||||
{
|
||||
/// <summary>
|
||||
/// 机会商品列表
|
||||
/// </summary>
|
||||
public class PDDChanceProductInfo
|
||||
{
|
||||
public string chance_id { get; set; } //4e456b7ed5c30be0cfdb979c42e55715
|
||||
public string keywords { get; set; } //背心吊带女珍珠性感
|
||||
public int? refer_price { get; set; } //9310
|
||||
public object mall_id { get; set; } //null
|
||||
public int? price_label { get; set; } //0
|
||||
public string pic_url { get; set; } //https://img.pddpic.com/mms-material-img/2025-04-21/8bde3c11-aeef-424d-88df-0ec7a73db26e.jpeg.a.jpeg
|
||||
public object is_collection { get; set; } //null
|
||||
public int? hot_index { get; set; } //88
|
||||
public int? mms_hot_index { get; set; } //88
|
||||
public object mms_oprty_index { get; set; } //null
|
||||
public int? mms_index_target { get; set; } //0
|
||||
public List<object> labels { get; set; } //[]
|
||||
public List<string> gallery_img_url_list { get; set; } //["https://img.pddpic.com/mms-material-img/2025-04-21/8bde3c11-aeef-424d-88df-0ec7a73db26e.jpeg.a.jpeg","https://img.pddpic.com/mms-material-img/2025-04-21/964e12a2-c6b1-43fa-ac99-c01241db3c85.jpeg.a.jpeg","https://img.pddpic.com/mms-material-img/2025-04-21/01d5363a-0121-4e7f-a0dd-3adf58d81ca6.jpeg.a.jpeg","https://img.pddpic.com/mms-material-img/2025-04-21/f9173580-d8ae-437f-a45c-2e40cbec2cba.jpeg.a.jpeg","https://img.pddpic.com/mms-material-img/2025-04-21/51654697-27ad-490f-9108-f40f08dc5535.jpeg.a.jpeg"]
|
||||
public int? potential_index { get; set; } //7480
|
||||
public int? cat_id_1 { get; set; } //17412
|
||||
public int? cat_id_2 { get; set; } //17421
|
||||
public int? cat_id_3 { get; set; } //17445
|
||||
}
|
||||
}
|
||||
@@ -244,7 +244,7 @@ namespace AllBase.Model.Result.PDDResult
|
||||
public int? reserve_quantity { get; set; }
|
||||
public int? weight { get; set; }
|
||||
public string thumb_url { get; set; }
|
||||
public object thumb_url_file_id { get; set; }
|
||||
public long? thumb_url_file_id { get; set; }
|
||||
public object thumb_url_status { get; set; }
|
||||
public object thumb_url_is_deleted { get; set; }
|
||||
public int? quantity_delta { get; set; }
|
||||
|
||||
@@ -9,6 +9,7 @@ namespace AllBase.Model.Result.PDDResult
|
||||
public class PDDProductInfo
|
||||
{
|
||||
public PDDProductDetailInfo detail { get; set; }
|
||||
public PDDSizeSpecInfo size { get; set; }
|
||||
public PDDProductDecorationInfo decoration { get; set; }
|
||||
public PDDProductPropertyInfo property { get; set; }
|
||||
}
|
||||
|
||||
@@ -28,12 +28,97 @@ namespace AllBase.Model.Result.PDDResult
|
||||
public int? channel { get; set; }
|
||||
public int? type { get; set; }
|
||||
public List<pdd_module_item> modules { get; set; }
|
||||
public object spec_module { get; set; }
|
||||
public spec_module_item spec_module { get; set; }
|
||||
public bool? is_spec { get; set; }
|
||||
public bool? can_edit { get; set; }
|
||||
public bool? has_change { get; set; }
|
||||
public int? max_sku_num { get; set; }
|
||||
public bool? custom_upload_pic { get; set; }
|
||||
}
|
||||
|
||||
public class spec_module_item
|
||||
{
|
||||
public long? id { get; set; }
|
||||
public List<spec_module_property_item> properties { get; set; }
|
||||
public List<object> custom_properties { get; set; }
|
||||
public List<object> removed_properties { get; set; }
|
||||
}
|
||||
|
||||
public class spec_module_property_item
|
||||
{
|
||||
public long? id { get; set; } // 471233
|
||||
public string name_alias { get; set; } // "颜色分类"
|
||||
public int? pid { get; set; } // 232
|
||||
public string bottom_tip { get; set; } // "选择标准颜色可增加搜索/导购机会,标准颜色还可填写颜色备注信息(偏深、偏亮等)!"
|
||||
public List<spec_module_property_value_item> values { get; set; }
|
||||
public List<int?> value_ids { get; set; }
|
||||
public List<spec_module_goods_property_item> goods_properties { get; set; }
|
||||
public int? ref_pid { get; set; } // 843
|
||||
|
||||
public int? input_max_num { get; set; } // 100
|
||||
public bool? can_note { get; set; } // true
|
||||
public long? spec_id { get; set; } // 8640
|
||||
public bool? upload_pic { get; set; } // true
|
||||
public int? feature { get; set; } // 1
|
||||
public List<spec_module_goods_property_item> custom_goods_properties { get; set; }
|
||||
|
||||
|
||||
public bool? is_all_value { get; set; } // true,
|
||||
public int? value_type { get; set; } // 0,
|
||||
public int? control_type { get; set; } // 3,
|
||||
public string value_unit { get; set; } // "",
|
||||
public int? value_precision { get; set; } // 0,
|
||||
public string max_value { get; set; } // "64",
|
||||
public string min_value { get; set; } // "",
|
||||
public int? sort_order { get; set; } // 0,
|
||||
public bool? value_can_sort { get; set; } // true,
|
||||
public bool? required { get; set; } // false,
|
||||
public long? choose_max_num { get; set; } // 2147483647,
|
||||
public string spec_tip { get; set; } // "",
|
||||
public bool? is_key { get; set; } // false,
|
||||
public int? mask_rule_type { get; set; } // 0,
|
||||
public int? show_type { get; set; } // 0,
|
||||
public List<object> template_property_value_parent_vos { get; set; } // [],
|
||||
public int? parent_template_pid { get; set; } // 0,
|
||||
public bool? unit_same { get; set; } // false
|
||||
|
||||
|
||||
}
|
||||
|
||||
public class spec_module_goods_property_item
|
||||
{
|
||||
public string p_unit { get; set; } // ""
|
||||
public int? vid { get; set; } // 60465
|
||||
public string v_value { get; set; } // "黑色"
|
||||
public int? parent_spec_id { get; set; } // 8640
|
||||
public long? spec_id { get; set; } // 49751
|
||||
public string note { get; set; } // ""
|
||||
public string img_url { get; set; } // ""
|
||||
public group_vo_item group_vo { get; set; }
|
||||
}
|
||||
|
||||
public class group_vo_item
|
||||
{
|
||||
public int? id { get; set; } // 2
|
||||
public string name { get; set; } // "灰色系"
|
||||
}
|
||||
|
||||
public class spec_module_property_value_item
|
||||
{
|
||||
public int? id { get; set; } // 0
|
||||
public int? vid { get; set; } // 59500
|
||||
public string value { get; set; } // "白色"
|
||||
public value_group_item group { get; set; }
|
||||
public string extend_info { get; set; } // "(255,255,255,1)"
|
||||
public long? spec_id { get; set; } // 54780
|
||||
}
|
||||
|
||||
public class value_group_item
|
||||
{
|
||||
public int? id { get; set; } // 1
|
||||
public string name { get; set; } // "白色系"
|
||||
}
|
||||
|
||||
public class pdd_module_item
|
||||
{
|
||||
public int? id { get; set; }
|
||||
|
||||
@@ -0,0 +1,119 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace AllBase.Model.Result.PDDResult
|
||||
{
|
||||
//public class PDDSizeSpecInfo
|
||||
//{
|
||||
// public long? id { get; set; }
|
||||
// public int? extendType { get; set; }
|
||||
//}
|
||||
//public class SizeContentItem
|
||||
//{
|
||||
// public string picUrl { get; set; }
|
||||
//}
|
||||
|
||||
public class GroupsItem
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int? id { get; set; }
|
||||
/// <summary>
|
||||
/// 中国码
|
||||
/// </summary>
|
||||
public string name { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public bool? required { get; set; }
|
||||
}
|
||||
|
||||
public class ElementItem
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int? id { get; set; }
|
||||
/// <summary>
|
||||
/// 肩宽(cm)
|
||||
/// </summary>
|
||||
public string name { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public bool? required { get; set; }
|
||||
}
|
||||
|
||||
public class MetaItem
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public List<GroupsItem> groups { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public List<ElementItem> elements { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public List<string> batchableElementIds { get; set; }
|
||||
}
|
||||
|
||||
|
||||
public class RecordItem
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public Dictionary<string, string> values { get; set; }
|
||||
}
|
||||
|
||||
public class ContentItem
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public MetaItem meta { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public List<RecordItem> records { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public string picUrl { get; set; }
|
||||
}
|
||||
|
||||
public class PDDSizeSpecInfo
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public long? id { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int? extendType { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public ContentItem content { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int? classId { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public bool? reusable { get; set; }
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
public int? status { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -18,15 +18,33 @@ namespace AllBase.Model.Result
|
||||
public string carouselImageUrl { get; set; }
|
||||
public long? cateId { get; set; }
|
||||
public string categoryName { get; set; }
|
||||
/// <summary>
|
||||
/// 品质分
|
||||
/// </summary>
|
||||
public decimal? goodsAfsScore { get; set; }
|
||||
/// <summary>
|
||||
/// 品质售后率
|
||||
/// </summary>
|
||||
public decimal? qltyAfsOrdrRate { get; set; }
|
||||
/// <summary>
|
||||
/// 品质售后次数
|
||||
/// </summary>
|
||||
public int? qltyAfsOrdCnt { get; set; }
|
||||
public decimal? sizeAfsOrdrRate { get; set; }
|
||||
public decimal? largeSizeAfsOrdrRate { get; set; }
|
||||
public decimal? smallSizeAfsOrdrRate { get; set; }
|
||||
/// <summary>
|
||||
/// 尺码售后次数
|
||||
/// </summary>
|
||||
public decimal? sizeAfsOrdrCnt { get; set; }
|
||||
public List<problAfsItem> problAfsItemList { get; set; }
|
||||
/// <summary>
|
||||
/// 评价数
|
||||
/// </summary>
|
||||
public decimal? revCnt { get; set; }
|
||||
/// <summary>
|
||||
/// 评价分
|
||||
/// </summary>
|
||||
public decimal? avgRevScr { get; set; }
|
||||
public decimal? trueRevRate { get; set; }
|
||||
public decimal? largeRevRate { get; set; }
|
||||
|
||||
@@ -119,6 +119,14 @@ namespace AllBase.Model.Result
|
||||
/// </summary>
|
||||
public decimal? goodsAfsScore { get; set; } = null;
|
||||
/// <summary>
|
||||
/// 品质售后率
|
||||
/// </summary>
|
||||
public decimal? qltyAfsOrdrRate { get; set; } = null;
|
||||
/// <summary>
|
||||
/// 品质售后次数
|
||||
/// </summary>
|
||||
public int? qltyAfsOrdCnt { get; set; } = null;
|
||||
/// <summary>
|
||||
/// 获取评价分错误
|
||||
/// </summary>
|
||||
public string getAfsScoreError { get; set; } = "";
|
||||
|
||||
@@ -27,6 +27,9 @@ namespace KJD_Web.BLL.BXX
|
||||
string from_shop_id = RegexUtils.GetStringQuery(ref inputData, "from_shop_id");
|
||||
string spu_id = RegexUtils.GetStringQuery(ref inputData, "spu_id");
|
||||
string skc_id = RegexUtils.GetStringQuery(ref inputData, "skc_id");
|
||||
string price_text = RegexUtils.GetStringQuery(ref inputData, "price_text");
|
||||
string main_cat_id = RegexUtils.GetStringQuery(ref inputData, "main_cat_id");
|
||||
string main_cat_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "main_cat_name"))?.Replace("'", "\\'");
|
||||
string cat_id = RegexUtils.GetStringQuery(ref inputData, "cat_id");
|
||||
string cat_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "cat_name"))?.Replace("'", "\\'");
|
||||
string ext_code = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "ext_code"))?.Replace("'", "\\'");
|
||||
@@ -45,9 +48,11 @@ namespace KJD_Web.BLL.BXX
|
||||
MysqlUtils mySql = new MysqlUtils(conn);
|
||||
string sql = "";
|
||||
|
||||
sql = "insert into bxx.product (from_shop_id,spu_id,skc_id,cat_id,cat_name,product_name,ext_code,main_img,product_json,size_json,notes,add_time,mdy_time) " +
|
||||
"values ('" + from_shop_id + "','" + spu_id + "','" + skc_id + "','" + cat_id + "','" + cat_name + "','" + product_name + "','" +
|
||||
ext_code + "','" + main_img + "','" + product_json + "','" + size_json + "','" + notes + "','" +
|
||||
sql = "insert into bxx.product (from_shop_id,spu_id,skc_id,main_cat_id,main_cat_name,cat_id,cat_name,price_text," +
|
||||
"product_name,ext_code,main_img,product_json,size_json,notes,add_time,mdy_time) " +
|
||||
"values ('" + from_shop_id + "','" + spu_id + "','" + skc_id + "','" + main_cat_id + "','" + main_cat_name + "','" +
|
||||
cat_id + "','" + cat_name + "','" + price_text + "','" + product_name + "','" + ext_code + "','" + main_img + "','" +
|
||||
product_json + "','" + size_json + "','" + notes + "','" +
|
||||
DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "','" +
|
||||
DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "');";
|
||||
var rst = mySql.ExecuteNonQuery(sql);
|
||||
@@ -78,6 +83,9 @@ namespace KJD_Web.BLL.BXX
|
||||
string from_shop_id = RegexUtils.GetStringQuery(ref inputData, "from_shop_id");
|
||||
string spu_id = RegexUtils.GetStringQuery(ref inputData, "spu_id");
|
||||
string skc_id = RegexUtils.GetStringQuery(ref inputData, "skc_id");
|
||||
string price_text = RegexUtils.GetStringQuery(ref inputData, "price_text");
|
||||
string main_cat_id = RegexUtils.GetStringQuery(ref inputData, "main_cat_id");
|
||||
string main_cat_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "main_cat_name"))?.Replace("'", "\\'");
|
||||
string cat_id = RegexUtils.GetStringQuery(ref inputData, "cat_id");
|
||||
string cat_name = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "cat_name"))?.Replace("'", "\\'");
|
||||
string ext_code = HtmlUtils.UrlDecodeUtf8(RegexUtils.GetStringQuery(ref inputData, "ext_code"))?.Replace("'", "\\'");
|
||||
@@ -99,10 +107,16 @@ namespace KJD_Web.BLL.BXX
|
||||
sql = "update bxx.product set";
|
||||
if (from_shop_id != null)
|
||||
sql += " from_shop_id='" + from_shop_id + "',";
|
||||
if (main_cat_id != null)
|
||||
sql += " main_cat_id='" + main_cat_id + "',";
|
||||
if (main_cat_name != null)
|
||||
sql += " main_cat_name='" + main_cat_name + "',";
|
||||
if (cat_id != null)
|
||||
sql += " cat_id='" + cat_id + "',";
|
||||
if (cat_name != null)
|
||||
sql += " cat_name='" + cat_name + "',";
|
||||
if (price_text != null)
|
||||
sql += " price_text='" + price_text + "',";
|
||||
if (product_name != null)
|
||||
sql += " product_name='" + product_name + "',";
|
||||
if (ext_code != null)
|
||||
@@ -191,10 +205,10 @@ namespace KJD_Web.BLL.BXX
|
||||
if (isDetail)
|
||||
sql = "select * from bxx.product p where 1=1";
|
||||
else if (string.IsNullOrEmpty(get_select_count))
|
||||
sql = "select p.id,p.from_shop_id,p.spu_id,p.skc_id,p.cat_id,p.cat_name,p.ext_code,p.product_name,p.main_img,p.notes," +
|
||||
sql = "select p.id,p.from_shop_id,p.spu_id,p.skc_id,p.main_cat_id,p.main_cat_name,p.cat_id,p.cat_name,p.price_text,p.ext_code,p.product_name,p.main_img,p.notes," +
|
||||
"p.add_time,p.mdy_time,p.select_total_count,p.fission_words,p.head_words,p.end_words from bxx.product p where 1=1";
|
||||
else
|
||||
sql = "SELECT p.id,p.from_shop_id,p.spu_id,p.skc_id,p.cat_id,p.cat_name,p.ext_code,p.product_name,p.main_img,p.notes," +
|
||||
sql = "SELECT p.id,p.from_shop_id,p.spu_id,p.skc_id,p.main_cat_id,p.main_cat_name,p.cat_id,p.cat_name,p.price_text,p.ext_code,p.product_name,p.main_img,p.notes," +
|
||||
"p.add_time,p.mdy_time,p.select_total_count,p.fission_words,p.head_words,p.end_words,COUNT(s.id) AS select_count " +
|
||||
"FROM bxx.product p LEFT JOIN bxx.product_select s ON p.id=s.out_product_id AND s.shop_id='" + select_shop_id + "' " +
|
||||
"WHERE 1=1";
|
||||
@@ -267,6 +281,108 @@ namespace KJD_Web.BLL.BXX
|
||||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||||
}
|
||||
|
||||
public string GetProductListRandom(string inputData)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(inputData))
|
||||
{
|
||||
var time = RegexUtils.GetStringQuery(ref inputData, "time").ParseToInt();
|
||||
string time1 = RegexUtils.GetStringQuery(ref inputData, "code");
|
||||
if (time1 != EncrypUtil.Encryption(time))
|
||||
return "{\"code\":50000,\"msg\":\"校验失败\"}";
|
||||
|
||||
var user_name = RegexUtils.GetStringQuery(ref inputData, "user_name")?.Replace("'", "\\'");
|
||||
var password = RegexUtils.GetStringQuery(ref inputData, "password")?.Replace("'", "\\'");
|
||||
var is_detail = RegexUtils.GetStringQuery(ref inputData, "is_detail")?.Replace("'", "\\'");
|
||||
|
||||
int page = RegexUtils.GetStringQuery(ref inputData, "page").ParseToInt();
|
||||
int page_size = RegexUtils.GetStringQuery(ref inputData, "page_size").ParseToInt(50);
|
||||
|
||||
string conn = System.Configuration.ConfigurationManager.ConnectionStrings["ConnKJD"].ConnectionString;
|
||||
MysqlUtils mySql = new MysqlUtils(conn);
|
||||
|
||||
string sql = "select count(id) from bxx.product p where 1=1";
|
||||
|
||||
string where = "";
|
||||
sql += where;
|
||||
|
||||
var count = mySql.ExecuteRowCount(sql);
|
||||
|
||||
DataTable dt;
|
||||
if (count == 0)
|
||||
{
|
||||
dt = new DataTable();
|
||||
}
|
||||
else
|
||||
{
|
||||
if (is_detail == "true")
|
||||
sql = "select * from bxx.product p where 1=1";
|
||||
else
|
||||
sql = "select p.id,p.from_shop_id,p.spu_id,p.skc_id,p.main_cat_id,p.main_cat_name,p.cat_id,p.cat_name,p.price_text,p.ext_code,p.product_name,p.main_img,p.notes," +
|
||||
"p.add_time,p.mdy_time,p.select_total_count,p.fission_words,p.head_words,p.end_words from bxx.product p where 1=1";
|
||||
|
||||
//where子句
|
||||
sql += where;
|
||||
|
||||
sql += " ORDER BY RAND()";
|
||||
sql += " limit " + Math.Max(page - 1, 0) * page_size + "," + page_size;
|
||||
dt = mySql.ExecuteDataTable(sql);
|
||||
}
|
||||
|
||||
mySql.Close();
|
||||
if (dt != null)
|
||||
{
|
||||
try
|
||||
{
|
||||
List<DBProductResultParam> productLst = new List<DBProductResultParam>();
|
||||
foreach (DataRow row in dt.Rows)
|
||||
{
|
||||
DBProductResultParam prod = new DBProductResultParam
|
||||
{
|
||||
id = Convert.ToInt32(row["id"]),
|
||||
from_shop_id = row["from_shop_id"].ToString(),
|
||||
skc_id = row["skc_id"].ToString(),
|
||||
spu_id = row["spu_id"].ToString(),
|
||||
cat_id = row["cat_id"].ToString(),
|
||||
cat_name = row["cat_name"].ToString(),
|
||||
main_cat_id = row["main_cat_id"].ToString(),
|
||||
main_cat_name = row["main_cat_name"].ToString(),
|
||||
price_text = row["price_text"].ToString(),
|
||||
product_name = row["product_name"].ToString(),
|
||||
main_img = row["main_img"].ToString(),
|
||||
ext_code = row["ext_code"].ToString(),
|
||||
//product_json = row["product_json"].ToString(),
|
||||
//size_json = row["size_json"].ToString(),
|
||||
add_time = Convert.ToDateTime(row["add_time"]),
|
||||
mdy_time = Convert.ToDateTime(row["mdy_time"]),
|
||||
notes = row["notes"].ToString(),
|
||||
select_total_count = row["select_total_count"].ParseToInt(),
|
||||
end_words = row["end_words"].ParseToString(),
|
||||
fission_words = row["fission_words"].ParseToString(),
|
||||
head_words = row["head_words"].ParseToString(),
|
||||
};
|
||||
if (is_detail == "true")
|
||||
{
|
||||
prod.product_json = row["product_json"].ToString();
|
||||
prod.size_json = row["size_json"].ToString();
|
||||
}
|
||||
productLst.Add(prod);
|
||||
}
|
||||
var data = JsonUtils.SerializerObjectToString(productLst);
|
||||
return "{\"code\":200,\"msg\":\"success\",\"data\":" + data + ",\"count\":" + count + "}";
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return "{\"code\":500,\"msg\":\"" + ex.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
return "{\"code\":500,\"msg\":\"" + mySql.Message + "\",\"data\":[],\"count\":" + 0 + "}";
|
||||
}
|
||||
}
|
||||
return "{\"code\":19999,\"msg\":\"输入为空\"}";
|
||||
}
|
||||
|
||||
public string DelDbProd(string inputData)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(inputData))
|
||||
|
||||
@@ -72,6 +72,18 @@ namespace KJD_Web
|
||||
Context.Response.End();
|
||||
}
|
||||
|
||||
[WebMethod]
|
||||
public void get_product_list_random()
|
||||
{
|
||||
string jsontext = GetRequestJsonString();
|
||||
|
||||
var result = jsontext;
|
||||
result = new BXXProductManage().GetProductListRandom(jsontext);
|
||||
|
||||
Context.Response.Write(result);
|
||||
Context.Response.End();
|
||||
}
|
||||
|
||||
[WebMethod]
|
||||
public void add_product()
|
||||
{
|
||||
|
||||
@@ -14,8 +14,11 @@ namespace KJD_Web.Model
|
||||
public string from_shop_id { get; set; } = "";
|
||||
public string spu_id { get; set; }
|
||||
public string skc_id { get; set; }
|
||||
public string main_cat_id { get; set; }
|
||||
public string cat_id { get; set; }
|
||||
public string main_cat_name { get; set; }
|
||||
public string cat_name { get; set; }
|
||||
public string price_text { get; set; }
|
||||
public string change_cat_id { get; set; }
|
||||
public string change_cat_name { get; set; }
|
||||
public string ext_code { get; set; }
|
||||
|
||||
@@ -13,6 +13,16 @@ namespace TemuKJD.BaseForms
|
||||
{
|
||||
public partial class BaseForm : Form
|
||||
{
|
||||
public bool IsSetFontScaleNone { get; set; } = true;
|
||||
public float FormDpi
|
||||
{
|
||||
get
|
||||
{
|
||||
return dpi;
|
||||
}
|
||||
}
|
||||
private float dpi = 96;
|
||||
|
||||
public BaseForm()
|
||||
{
|
||||
InitializeComponent();
|
||||
@@ -22,12 +32,13 @@ namespace TemuKJD.BaseForms
|
||||
{
|
||||
using (Graphics graphics = Graphics.FromHwnd(IntPtr.Zero))
|
||||
{
|
||||
float dpi = graphics.DpiX;
|
||||
dpi = graphics.DpiX;
|
||||
// 或者使用 graphics.DpiY 获取垂直方向的DPI
|
||||
// float dpi = graphics.DpiY;
|
||||
// Console.WriteLine("Screen DPI: " + dpi); // winform程序会闪退
|
||||
|
||||
SetFont(this, dpi);
|
||||
if (IsSetFontScaleNone)
|
||||
SetFont(this, dpi);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -455,6 +455,12 @@
|
||||
<Compile Include="PDDForms\ProductSelectForms\PDDThirdProdSelectAddShopForm.Designer.cs">
|
||||
<DependentUpon>PDDThirdProdSelectAddShopForm.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="PDDForms\ProductSelectForms\UcAddPrice.cs">
|
||||
<SubType>UserControl</SubType>
|
||||
</Compile>
|
||||
<Compile Include="PDDForms\ProductSelectForms\UcAddPrice.Designer.cs">
|
||||
<DependentUpon>UcAddPrice.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ToolForms\CefForm.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
@@ -890,6 +896,9 @@
|
||||
<EmbeddedResource Include="PDDForms\ProductSelectForms\PDDThirdProdSelectAddShopForm.resx">
|
||||
<DependentUpon>PDDThirdProdSelectAddShopForm.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="PDDForms\ProductSelectForms\UcAddPrice.resx">
|
||||
<DependentUpon>UcAddPrice.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="ToolForms\CefForm.resx">
|
||||
<DependentUpon>CefForm.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
|
||||
+216
-146
@@ -30,10 +30,11 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.components = new System.ComponentModel.Container();
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle3 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle4 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle6 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle7 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle8 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle9 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle10 = new System.Windows.Forms.DataGridViewCellStyle();
|
||||
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
|
||||
this.ucGroupBoxEx4 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components);
|
||||
this.panel4 = new System.Windows.Forms.Panel();
|
||||
@@ -42,7 +43,6 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.label20 = new System.Windows.Forms.Label();
|
||||
this.txtMinQualityScore = new System.Windows.Forms.TextBox();
|
||||
this.chkMinQualityScore = new System.Windows.Forms.CheckBox();
|
||||
this.ucCheckBox1 = new TemuKJD.UserComponent.UcCheckBox(this.components);
|
||||
this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
|
||||
this.lblMinBound = new System.Windows.Forms.Label();
|
||||
this.txtMinBound = new System.Windows.Forms.TextBox();
|
||||
@@ -59,6 +59,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.label17 = new System.Windows.Forms.Label();
|
||||
this.label18 = new System.Windows.Forms.Label();
|
||||
this.label19 = new System.Windows.Forms.Label();
|
||||
this.ucCheckBox1 = new TemuKJD.UserComponent.UcCheckBox(this.components);
|
||||
this.ucGroupBoxEx3 = new TemuKJD.UserComponent.UcGroupBoxEx(this.components);
|
||||
this.btnCancelSubPurchaseOrder = new DevComponents.DotNetBar.PanelEx();
|
||||
this.panelEx2 = new DevComponents.DotNetBar.PanelEx();
|
||||
@@ -124,6 +125,10 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.btnStopAdd = new DevComponents.DotNetBar.PanelEx();
|
||||
this.chkLimited = new System.Windows.Forms.CheckBox();
|
||||
this.dgvStock = new TemuKJD.UserComponent.DataGridViewEx();
|
||||
this.splitContainer4 = new System.Windows.Forms.SplitContainer();
|
||||
this.statusBar = new TemuKJD.UserControls.StatusBarUserControl();
|
||||
this.panelEx1 = new DevComponents.DotNetBar.PanelEx();
|
||||
this.btnClear = new DevComponents.DotNetBar.PanelEx();
|
||||
this.colUpId = new System.Windows.Forms.DataGridViewLinkColumn();
|
||||
this.colCheck = new System.Windows.Forms.DataGridViewCheckBoxColumn();
|
||||
this.colSupplierId = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
@@ -144,12 +149,13 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.colSalesInventoryNum = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.colWaitReceiveNum = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.colQualityScore = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.colQualityRate = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.colQualityCount = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.colNeedStockUp = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.colMsg = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
this.splitContainer4 = new System.Windows.Forms.SplitContainer();
|
||||
this.statusBar = new TemuKJD.UserControls.StatusBarUserControl();
|
||||
this.panelEx1 = new DevComponents.DotNetBar.PanelEx();
|
||||
this.btnClear = new DevComponents.DotNetBar.PanelEx();
|
||||
this.txtMaxQualityRate = new System.Windows.Forms.TextBox();
|
||||
this.chkMaxQualityRate = new System.Windows.Forms.CheckBox();
|
||||
this.label10 = new System.Windows.Forms.Label();
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
|
||||
this.splitContainer1.Panel1.SuspendLayout();
|
||||
this.splitContainer1.Panel2.SuspendLayout();
|
||||
@@ -201,7 +207,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
// splitContainer1.Panel2
|
||||
//
|
||||
this.splitContainer1.Panel2.Controls.Add(this.splitContainer3);
|
||||
this.splitContainer1.Size = new System.Drawing.Size(1368, 589);
|
||||
this.splitContainer1.Size = new System.Drawing.Size(1350, 589);
|
||||
this.splitContainer1.SplitterDistance = 120;
|
||||
this.splitContainer1.TabIndex = 9;
|
||||
//
|
||||
@@ -212,6 +218,9 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
| System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.ucGroupBoxEx4.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
|
||||
this.ucGroupBoxEx4.BorderStyle = TemuKJD.UserComponent.UcGroupBoxEx.GroupBoxBorderStyle.ROUND;
|
||||
this.ucGroupBoxEx4.Controls.Add(this.txtMaxQualityRate);
|
||||
this.ucGroupBoxEx4.Controls.Add(this.chkMaxQualityRate);
|
||||
this.ucGroupBoxEx4.Controls.Add(this.label10);
|
||||
this.ucGroupBoxEx4.Controls.Add(this.panel4);
|
||||
this.ucGroupBoxEx4.Controls.Add(this.txtMinQualityScore);
|
||||
this.ucGroupBoxEx4.Controls.Add(this.chkMinQualityScore);
|
||||
@@ -230,7 +239,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.ucGroupBoxEx4.Controls.Add(this.ucCheckBox1);
|
||||
this.ucGroupBoxEx4.Location = new System.Drawing.Point(417, 2);
|
||||
this.ucGroupBoxEx4.Name = "ucGroupBoxEx4";
|
||||
this.ucGroupBoxEx4.Size = new System.Drawing.Size(949, 120);
|
||||
this.ucGroupBoxEx4.Size = new System.Drawing.Size(931, 120);
|
||||
this.ucGroupBoxEx4.TabIndex = 666;
|
||||
this.ucGroupBoxEx4.TabStop = false;
|
||||
this.ucGroupBoxEx4.Text = "创建备货单";
|
||||
@@ -240,7 +249,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.panel4.Controls.Add(this.rbTodaySaleCount);
|
||||
this.panel4.Controls.Add(this.rbSevenDaysAvgSaleCount);
|
||||
this.panel4.Controls.Add(this.label20);
|
||||
this.panel4.Location = new System.Drawing.Point(521, 27);
|
||||
this.panel4.Location = new System.Drawing.Point(495, 27);
|
||||
this.panel4.Name = "panel4";
|
||||
this.panel4.Size = new System.Drawing.Size(237, 23);
|
||||
this.panel4.TabIndex = 734;
|
||||
@@ -279,7 +288,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
//
|
||||
// txtMinQualityScore
|
||||
//
|
||||
this.txtMinQualityScore.Location = new System.Drawing.Point(785, 85);
|
||||
this.txtMinQualityScore.Location = new System.Drawing.Point(737, 61);
|
||||
this.txtMinQualityScore.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.txtMinQualityScore.Name = "txtMinQualityScore";
|
||||
this.txtMinQualityScore.Size = new System.Drawing.Size(32, 23);
|
||||
@@ -297,7 +306,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.chkMinQualityScore.FlatAppearance.CheckedBackColor = System.Drawing.Color.Blue;
|
||||
this.chkMinQualityScore.FlatAppearance.MouseDownBackColor = System.Drawing.Color.Blue;
|
||||
this.chkMinQualityScore.FlatAppearance.MouseOverBackColor = System.Drawing.Color.Blue;
|
||||
this.chkMinQualityScore.Location = new System.Drawing.Point(703, 86);
|
||||
this.chkMinQualityScore.Location = new System.Drawing.Point(655, 62);
|
||||
this.chkMinQualityScore.Margin = new System.Windows.Forms.Padding(15, 3, 3, 3);
|
||||
this.chkMinQualityScore.Name = "chkMinQualityScore";
|
||||
this.chkMinQualityScore.Size = new System.Drawing.Size(87, 21);
|
||||
@@ -305,28 +314,15 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.chkMinQualityScore.Text = "品质分低于";
|
||||
this.chkMinQualityScore.UseVisualStyleBackColor = false;
|
||||
//
|
||||
// ucCheckBox1
|
||||
//
|
||||
this.ucCheckBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.ucCheckBox1.AutoSize = true;
|
||||
this.ucCheckBox1.Location = new System.Drawing.Point(849, 58);
|
||||
this.ucCheckBox1.Name = "ucCheckBox1";
|
||||
this.ucCheckBox1.Size = new System.Drawing.Size(87, 21);
|
||||
this.ucCheckBox1.TabIndex = 713;
|
||||
this.ucCheckBox1.Text = "使用新接口";
|
||||
this.ucCheckBox1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.ucCheckBox1.UseVisualStyleBackColor = true;
|
||||
this.ucCheckBox1.CheckedChanged += new System.EventHandler(this.chkNewService_CheckedChanged);
|
||||
//
|
||||
// flowLayoutPanel1
|
||||
//
|
||||
this.flowLayoutPanel1.Controls.Add(this.lblMinBound);
|
||||
this.flowLayoutPanel1.Controls.Add(this.txtMinBound);
|
||||
this.flowLayoutPanel1.Controls.Add(this.label15);
|
||||
this.flowLayoutPanel1.Controls.Add(this.chkIfLessMakeZero);
|
||||
this.flowLayoutPanel1.Location = new System.Drawing.Point(240, 83);
|
||||
this.flowLayoutPanel1.Location = new System.Drawing.Point(217, 83);
|
||||
this.flowLayoutPanel1.Name = "flowLayoutPanel1";
|
||||
this.flowLayoutPanel1.Size = new System.Drawing.Size(453, 31);
|
||||
this.flowLayoutPanel1.Size = new System.Drawing.Size(417, 31);
|
||||
this.flowLayoutPanel1.TabIndex = 702;
|
||||
//
|
||||
// lblMinBound
|
||||
@@ -384,7 +380,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
//
|
||||
// txtScale2
|
||||
//
|
||||
this.txtScale2.Location = new System.Drawing.Point(452, 55);
|
||||
this.txtScale2.Location = new System.Drawing.Point(426, 55);
|
||||
this.txtScale2.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.txtScale2.Name = "txtScale2";
|
||||
this.txtScale2.Size = new System.Drawing.Size(25, 23);
|
||||
@@ -394,7 +390,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
//
|
||||
// label102
|
||||
//
|
||||
this.label102.Location = new System.Drawing.Point(171, 58);
|
||||
this.label102.Location = new System.Drawing.Point(145, 58);
|
||||
this.label102.Name = "label102";
|
||||
this.label102.Size = new System.Drawing.Size(283, 17);
|
||||
this.label102.TabIndex = 679;
|
||||
@@ -403,7 +399,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
//
|
||||
// txtScale1
|
||||
//
|
||||
this.txtScale1.Location = new System.Drawing.Point(452, 27);
|
||||
this.txtScale1.Location = new System.Drawing.Point(426, 27);
|
||||
this.txtScale1.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.txtScale1.Name = "txtScale1";
|
||||
this.txtScale1.Size = new System.Drawing.Size(25, 23);
|
||||
@@ -416,7 +412,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.panelEx3.CanvasColor = System.Drawing.SystemColors.Control;
|
||||
this.panelEx3.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||
this.panelEx3.DisabledBackColor = System.Drawing.Color.Empty;
|
||||
this.panelEx3.Location = new System.Drawing.Point(27, 71);
|
||||
this.panelEx3.Location = new System.Drawing.Point(21, 71);
|
||||
this.panelEx3.Name = "panelEx3";
|
||||
this.panelEx3.Size = new System.Drawing.Size(115, 23);
|
||||
this.panelEx3.Style.Alignment = System.Drawing.StringAlignment.Center;
|
||||
@@ -442,7 +438,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.btnListWarehouse.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnListWarehouse.DisabledBackColor = System.Drawing.Color.Empty;
|
||||
this.btnListWarehouse.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnListWarehouse.Location = new System.Drawing.Point(27, 32);
|
||||
this.btnListWarehouse.Location = new System.Drawing.Point(21, 32);
|
||||
this.btnListWarehouse.Name = "btnListWarehouse";
|
||||
this.btnListWarehouse.Size = new System.Drawing.Size(115, 23);
|
||||
this.btnListWarehouse.Style.Alignment = System.Drawing.StringAlignment.Center;
|
||||
@@ -467,7 +463,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.btnStartStockUp.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnStartStockUp.DisabledBackColor = System.Drawing.Color.Empty;
|
||||
this.btnStartStockUp.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnStartStockUp.Location = new System.Drawing.Point(847, 32);
|
||||
this.btnStartStockUp.Location = new System.Drawing.Point(829, 32);
|
||||
this.btnStartStockUp.Name = "btnStartStockUp";
|
||||
this.btnStartStockUp.Size = new System.Drawing.Size(80, 23);
|
||||
this.btnStartStockUp.Style.Alignment = System.Drawing.StringAlignment.Center;
|
||||
@@ -487,7 +483,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
//
|
||||
// label101
|
||||
//
|
||||
this.label101.Location = new System.Drawing.Point(171, 30);
|
||||
this.label101.Location = new System.Drawing.Point(145, 30);
|
||||
this.label101.Name = "label101";
|
||||
this.label101.Size = new System.Drawing.Size(283, 17);
|
||||
this.label101.TabIndex = 678;
|
||||
@@ -497,7 +493,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
// label16
|
||||
//
|
||||
this.label16.AutoSize = true;
|
||||
this.label16.Location = new System.Drawing.Point(475, 30);
|
||||
this.label16.Location = new System.Drawing.Point(449, 30);
|
||||
this.label16.Name = "label16";
|
||||
this.label16.Size = new System.Drawing.Size(44, 17);
|
||||
this.label16.TabIndex = 693;
|
||||
@@ -506,7 +502,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
// label17
|
||||
//
|
||||
this.label17.AutoSize = true;
|
||||
this.label17.Location = new System.Drawing.Point(475, 58);
|
||||
this.label17.Location = new System.Drawing.Point(449, 58);
|
||||
this.label17.Name = "label17";
|
||||
this.label17.Size = new System.Drawing.Size(44, 17);
|
||||
this.label17.TabIndex = 694;
|
||||
@@ -515,7 +511,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
// label18
|
||||
//
|
||||
this.label18.AutoSize = true;
|
||||
this.label18.Location = new System.Drawing.Point(170, 88);
|
||||
this.label18.Location = new System.Drawing.Point(149, 88);
|
||||
this.label18.Name = "label18";
|
||||
this.label18.Size = new System.Drawing.Size(80, 17);
|
||||
this.label18.TabIndex = 712;
|
||||
@@ -524,12 +520,25 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
// label19
|
||||
//
|
||||
this.label19.AutoSize = true;
|
||||
this.label19.Location = new System.Drawing.Point(817, 88);
|
||||
this.label19.Location = new System.Drawing.Point(769, 64);
|
||||
this.label19.Name = "label19";
|
||||
this.label19.Size = new System.Drawing.Size(44, 17);
|
||||
this.label19.TabIndex = 725;
|
||||
this.label19.Text = "不备货";
|
||||
//
|
||||
// ucCheckBox1
|
||||
//
|
||||
this.ucCheckBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
this.ucCheckBox1.AutoSize = true;
|
||||
this.ucCheckBox1.Location = new System.Drawing.Point(831, 58);
|
||||
this.ucCheckBox1.Name = "ucCheckBox1";
|
||||
this.ucCheckBox1.Size = new System.Drawing.Size(87, 21);
|
||||
this.ucCheckBox1.TabIndex = 713;
|
||||
this.ucCheckBox1.Text = "使用新接口";
|
||||
this.ucCheckBox1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.ucCheckBox1.UseVisualStyleBackColor = true;
|
||||
this.ucCheckBox1.CheckedChanged += new System.EventHandler(this.chkNewService_CheckedChanged);
|
||||
//
|
||||
// ucGroupBoxEx3
|
||||
//
|
||||
this.ucGroupBoxEx3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
|
||||
@@ -698,7 +707,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
// splitContainer3.Panel2
|
||||
//
|
||||
this.splitContainer3.Panel2.Controls.Add(this.splitContainer4);
|
||||
this.splitContainer3.Size = new System.Drawing.Size(1368, 465);
|
||||
this.splitContainer3.Size = new System.Drawing.Size(1350, 465);
|
||||
this.splitContainer3.SplitterDistance = 435;
|
||||
this.splitContainer3.TabIndex = 1;
|
||||
//
|
||||
@@ -726,7 +735,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.splitContainer2.Panel2.Controls.Add(this.ucGroupBoxEx99);
|
||||
this.splitContainer2.Panel2.Controls.Add(this.dgvStock);
|
||||
this.splitContainer2.Panel2.Padding = new System.Windows.Forms.Padding(0, 0, 4, 0);
|
||||
this.splitContainer2.Size = new System.Drawing.Size(1368, 435);
|
||||
this.splitContainer2.Size = new System.Drawing.Size(1350, 435);
|
||||
this.splitContainer2.SplitterDistance = 280;
|
||||
this.splitContainer2.TabIndex = 0;
|
||||
//
|
||||
@@ -813,18 +822,18 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
//
|
||||
this.dgvShop.AllowUserToAddRows = false;
|
||||
this.dgvShop.AllowUserToDeleteRows = false;
|
||||
dataGridViewCellStyle1.BackColor = System.Drawing.Color.WhiteSmoke;
|
||||
this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle1;
|
||||
dataGridViewCellStyle6.BackColor = System.Drawing.Color.WhiteSmoke;
|
||||
this.dgvShop.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle6;
|
||||
this.dgvShop.BackgroundColor = System.Drawing.Color.White;
|
||||
this.dgvShop.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
|
||||
dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
|
||||
dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control;
|
||||
dataGridViewCellStyle2.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText;
|
||||
dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
|
||||
dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
|
||||
dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
|
||||
this.dgvShop.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle2;
|
||||
dataGridViewCellStyle7.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
|
||||
dataGridViewCellStyle7.BackColor = System.Drawing.SystemColors.Control;
|
||||
dataGridViewCellStyle7.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
dataGridViewCellStyle7.ForeColor = System.Drawing.SystemColors.WindowText;
|
||||
dataGridViewCellStyle7.SelectionBackColor = System.Drawing.SystemColors.Highlight;
|
||||
dataGridViewCellStyle7.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
|
||||
dataGridViewCellStyle7.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
|
||||
this.dgvShop.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle7;
|
||||
this.dgvShop.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
||||
this.dgvShop.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
|
||||
this.colSelect,
|
||||
@@ -931,7 +940,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.ucGroupBoxEx99.Controls.Add(this.chkLimited);
|
||||
this.ucGroupBoxEx99.Location = new System.Drawing.Point(296, 46);
|
||||
this.ucGroupBoxEx99.Name = "ucGroupBoxEx99";
|
||||
this.ucGroupBoxEx99.Size = new System.Drawing.Size(760, 180);
|
||||
this.ucGroupBoxEx99.Size = new System.Drawing.Size(742, 180);
|
||||
this.ucGroupBoxEx99.TabIndex = 470;
|
||||
this.ucGroupBoxEx99.TabStop = false;
|
||||
this.ucGroupBoxEx99.Text = "创建备货单";
|
||||
@@ -1212,7 +1221,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.panel2.Controls.Add(this.btnSetNotArea);
|
||||
this.panel2.Location = new System.Drawing.Point(151, 59);
|
||||
this.panel2.Name = "panel2";
|
||||
this.panel2.Size = new System.Drawing.Size(505, 23);
|
||||
this.panel2.Size = new System.Drawing.Size(487, 23);
|
||||
this.panel2.TabIndex = 638;
|
||||
//
|
||||
// textBox2
|
||||
@@ -1222,7 +1231,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.textBox2.Location = new System.Drawing.Point(0, 0);
|
||||
this.textBox2.Name = "textBox2";
|
||||
this.textBox2.ReadOnly = true;
|
||||
this.textBox2.Size = new System.Drawing.Size(439, 23);
|
||||
this.textBox2.Size = new System.Drawing.Size(421, 23);
|
||||
this.textBox2.TabIndex = 638;
|
||||
//
|
||||
// btnSetNotArea
|
||||
@@ -1232,7 +1241,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.btnSetNotArea.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnSetNotArea.DisabledBackColor = System.Drawing.Color.Empty;
|
||||
this.btnSetNotArea.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnSetNotArea.Location = new System.Drawing.Point(445, 2);
|
||||
this.btnSetNotArea.Location = new System.Drawing.Point(427, 2);
|
||||
this.btnSetNotArea.Name = "btnSetNotArea";
|
||||
this.btnSetNotArea.Size = new System.Drawing.Size(56, 19);
|
||||
this.btnSetNotArea.Style.Alignment = System.Drawing.StringAlignment.Center;
|
||||
@@ -1354,7 +1363,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.btnAdd.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnAdd.DisabledBackColor = System.Drawing.Color.Empty;
|
||||
this.btnAdd.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnAdd.Location = new System.Drawing.Point(664, 29);
|
||||
this.btnAdd.Location = new System.Drawing.Point(646, 29);
|
||||
this.btnAdd.Name = "btnAdd";
|
||||
this.btnAdd.Size = new System.Drawing.Size(80, 23);
|
||||
this.btnAdd.Style.Alignment = System.Drawing.StringAlignment.Center;
|
||||
@@ -1377,7 +1386,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.btnStopAdd.CanvasColor = System.Drawing.SystemColors.Control;
|
||||
this.btnStopAdd.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||
this.btnStopAdd.DisabledBackColor = System.Drawing.Color.Empty;
|
||||
this.btnStopAdd.Location = new System.Drawing.Point(664, 59);
|
||||
this.btnStopAdd.Location = new System.Drawing.Point(646, 59);
|
||||
this.btnStopAdd.Name = "btnStopAdd";
|
||||
this.btnStopAdd.Size = new System.Drawing.Size(80, 23);
|
||||
this.btnStopAdd.Style.Alignment = System.Drawing.StringAlignment.Center;
|
||||
@@ -1409,18 +1418,18 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
//
|
||||
this.dgvStock.AllowUserToAddRows = false;
|
||||
this.dgvStock.AllowUserToDeleteRows = false;
|
||||
dataGridViewCellStyle3.BackColor = System.Drawing.Color.WhiteSmoke;
|
||||
this.dgvStock.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle3;
|
||||
dataGridViewCellStyle8.BackColor = System.Drawing.Color.WhiteSmoke;
|
||||
this.dgvStock.AlternatingRowsDefaultCellStyle = dataGridViewCellStyle8;
|
||||
this.dgvStock.BackgroundColor = System.Drawing.Color.White;
|
||||
this.dgvStock.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
|
||||
dataGridViewCellStyle4.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
|
||||
dataGridViewCellStyle4.BackColor = System.Drawing.SystemColors.Control;
|
||||
dataGridViewCellStyle4.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
dataGridViewCellStyle4.ForeColor = System.Drawing.SystemColors.WindowText;
|
||||
dataGridViewCellStyle4.SelectionBackColor = System.Drawing.SystemColors.Highlight;
|
||||
dataGridViewCellStyle4.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
|
||||
dataGridViewCellStyle4.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
|
||||
this.dgvStock.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle4;
|
||||
dataGridViewCellStyle9.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
|
||||
dataGridViewCellStyle9.BackColor = System.Drawing.SystemColors.Control;
|
||||
dataGridViewCellStyle9.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
dataGridViewCellStyle9.ForeColor = System.Drawing.SystemColors.WindowText;
|
||||
dataGridViewCellStyle9.SelectionBackColor = System.Drawing.SystemColors.Highlight;
|
||||
dataGridViewCellStyle9.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
|
||||
dataGridViewCellStyle9.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
|
||||
this.dgvStock.ColumnHeadersDefaultCellStyle = dataGridViewCellStyle9;
|
||||
this.dgvStock.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
|
||||
this.dgvStock.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
|
||||
this.colUpId,
|
||||
@@ -1443,6 +1452,8 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.colSalesInventoryNum,
|
||||
this.colWaitReceiveNum,
|
||||
this.colQualityScore,
|
||||
this.colQualityRate,
|
||||
this.colQualityCount,
|
||||
this.colNeedStockUp,
|
||||
this.colMsg});
|
||||
this.dgvStock.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
@@ -1450,11 +1461,91 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.dgvStock.Name = "dgvStock";
|
||||
this.dgvStock.ReadOnly = true;
|
||||
this.dgvStock.RowTemplate.Height = 23;
|
||||
this.dgvStock.Size = new System.Drawing.Size(1080, 435);
|
||||
this.dgvStock.Size = new System.Drawing.Size(1062, 435);
|
||||
this.dgvStock.TabIndex = 187;
|
||||
this.dgvStock.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgvStock_CellContentClick);
|
||||
this.dgvStock.Scroll += new System.Windows.Forms.ScrollEventHandler(this.dgvStock_Scroll);
|
||||
//
|
||||
// splitContainer4
|
||||
//
|
||||
this.splitContainer4.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.splitContainer4.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
|
||||
this.splitContainer4.Location = new System.Drawing.Point(0, 0);
|
||||
this.splitContainer4.Name = "splitContainer4";
|
||||
//
|
||||
// splitContainer4.Panel1
|
||||
//
|
||||
this.splitContainer4.Panel1.Controls.Add(this.statusBar);
|
||||
//
|
||||
// splitContainer4.Panel2
|
||||
//
|
||||
this.splitContainer4.Panel2.Controls.Add(this.panelEx1);
|
||||
this.splitContainer4.Panel2.Controls.Add(this.btnClear);
|
||||
this.splitContainer4.Size = new System.Drawing.Size(1350, 26);
|
||||
this.splitContainer4.SplitterDistance = 1072;
|
||||
this.splitContainer4.TabIndex = 3;
|
||||
//
|
||||
// statusBar
|
||||
//
|
||||
this.statusBar.BackColor = System.Drawing.Color.White;
|
||||
this.statusBar.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.statusBar.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.statusBar.Location = new System.Drawing.Point(0, 0);
|
||||
this.statusBar.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.statusBar.Name = "statusBar";
|
||||
this.statusBar.Size = new System.Drawing.Size(1072, 26);
|
||||
this.statusBar.TabIndex = 2;
|
||||
//
|
||||
// panelEx1
|
||||
//
|
||||
this.panelEx1.CanvasColor = System.Drawing.SystemColors.Control;
|
||||
this.panelEx1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||
this.panelEx1.DisabledBackColor = System.Drawing.Color.Empty;
|
||||
this.panelEx1.Location = new System.Drawing.Point(155, 0);
|
||||
this.panelEx1.Name = "panelEx1";
|
||||
this.panelEx1.Size = new System.Drawing.Size(115, 21);
|
||||
this.panelEx1.Style.Alignment = System.Drawing.StringAlignment.Center;
|
||||
this.panelEx1.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
|
||||
this.panelEx1.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
|
||||
this.panelEx1.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine;
|
||||
this.panelEx1.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
|
||||
this.panelEx1.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText;
|
||||
this.panelEx1.Style.GradientAngle = 90;
|
||||
this.panelEx1.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center;
|
||||
this.panelEx1.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
|
||||
this.panelEx1.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
|
||||
this.panelEx1.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
|
||||
this.panelEx1.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White;
|
||||
this.panelEx1.TabIndex = 668;
|
||||
this.panelEx1.Text = "停止当前操作";
|
||||
this.panelEx1.Click += new System.EventHandler(this.btnStop_Click);
|
||||
//
|
||||
// btnClear
|
||||
//
|
||||
this.btnClear.Anchor = System.Windows.Forms.AnchorStyles.Right;
|
||||
this.btnClear.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||
this.btnClear.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnClear.DisabledBackColor = System.Drawing.Color.Empty;
|
||||
this.btnClear.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnClear.Location = new System.Drawing.Point(47, 0);
|
||||
this.btnClear.Name = "btnClear";
|
||||
this.btnClear.Size = new System.Drawing.Size(90, 21);
|
||||
this.btnClear.Style.Alignment = System.Drawing.StringAlignment.Center;
|
||||
this.btnClear.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
|
||||
this.btnClear.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
|
||||
this.btnClear.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
|
||||
this.btnClear.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
|
||||
this.btnClear.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
|
||||
this.btnClear.Style.ForeColor.Color = System.Drawing.Color.White;
|
||||
this.btnClear.Style.GradientAngle = 90;
|
||||
this.btnClear.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
|
||||
this.btnClear.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
|
||||
this.btnClear.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
|
||||
this.btnClear.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White;
|
||||
this.btnClear.TabIndex = 440;
|
||||
this.btnClear.Text = "清空结果";
|
||||
this.btnClear.Visible = false;
|
||||
//
|
||||
// colUpId
|
||||
//
|
||||
this.colUpId.HeaderText = "上家Id";
|
||||
@@ -1526,6 +1617,7 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.colProductId.Name = "colProductId";
|
||||
this.colProductId.ReadOnly = true;
|
||||
this.colProductId.SortMode = System.Windows.Forms.DataGridViewColumnSortMode.Automatic;
|
||||
this.colProductId.Width = 90;
|
||||
//
|
||||
// colProdSkc
|
||||
//
|
||||
@@ -1539,10 +1631,12 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
//
|
||||
// colProdName
|
||||
//
|
||||
dataGridViewCellStyle10.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
|
||||
this.colProdName.DefaultCellStyle = dataGridViewCellStyle10;
|
||||
this.colProdName.HeaderText = "标题";
|
||||
this.colProdName.Name = "colProdName";
|
||||
this.colProdName.ReadOnly = true;
|
||||
this.colProdName.Width = 200;
|
||||
this.colProdName.Width = 180;
|
||||
//
|
||||
// colPrcie
|
||||
//
|
||||
@@ -1610,7 +1704,21 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.colQualityScore.HeaderText = "品质分";
|
||||
this.colQualityScore.Name = "colQualityScore";
|
||||
this.colQualityScore.ReadOnly = true;
|
||||
this.colQualityScore.Width = 60;
|
||||
this.colQualityScore.Width = 50;
|
||||
//
|
||||
// colQualityRate
|
||||
//
|
||||
this.colQualityRate.HeaderText = "售后率";
|
||||
this.colQualityRate.Name = "colQualityRate";
|
||||
this.colQualityRate.ReadOnly = true;
|
||||
this.colQualityRate.Width = 50;
|
||||
//
|
||||
// colQualityCount
|
||||
//
|
||||
this.colQualityCount.HeaderText = "售后数";
|
||||
this.colQualityCount.Name = "colQualityCount";
|
||||
this.colQualityCount.ReadOnly = true;
|
||||
this.colQualityCount.Width = 50;
|
||||
//
|
||||
// colNeedStockUp
|
||||
//
|
||||
@@ -1627,91 +1735,48 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
this.colMsg.ReadOnly = true;
|
||||
this.colMsg.Width = 400;
|
||||
//
|
||||
// splitContainer4
|
||||
// txtMaxQualityRate
|
||||
//
|
||||
this.splitContainer4.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.splitContainer4.FixedPanel = System.Windows.Forms.FixedPanel.Panel2;
|
||||
this.splitContainer4.Location = new System.Drawing.Point(0, 0);
|
||||
this.splitContainer4.Name = "splitContainer4";
|
||||
this.txtMaxQualityRate.Location = new System.Drawing.Point(737, 85);
|
||||
this.txtMaxQualityRate.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.txtMaxQualityRate.Name = "txtMaxQualityRate";
|
||||
this.txtMaxQualityRate.Size = new System.Drawing.Size(32, 23);
|
||||
this.txtMaxQualityRate.TabIndex = 745;
|
||||
this.txtMaxQualityRate.Text = "2";
|
||||
this.txtMaxQualityRate.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
|
||||
//
|
||||
// splitContainer4.Panel1
|
||||
// chkMaxQualityRate
|
||||
//
|
||||
this.splitContainer4.Panel1.Controls.Add(this.statusBar);
|
||||
this.chkMaxQualityRate.AutoSize = true;
|
||||
this.chkMaxQualityRate.Checked = true;
|
||||
this.chkMaxQualityRate.CheckState = System.Windows.Forms.CheckState.Checked;
|
||||
this.chkMaxQualityRate.FlatAppearance.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
|
||||
this.chkMaxQualityRate.FlatAppearance.BorderSize = 2;
|
||||
this.chkMaxQualityRate.FlatAppearance.CheckedBackColor = System.Drawing.Color.Blue;
|
||||
this.chkMaxQualityRate.FlatAppearance.MouseDownBackColor = System.Drawing.Color.Blue;
|
||||
this.chkMaxQualityRate.FlatAppearance.MouseOverBackColor = System.Drawing.Color.Blue;
|
||||
this.chkMaxQualityRate.Location = new System.Drawing.Point(655, 86);
|
||||
this.chkMaxQualityRate.Margin = new System.Windows.Forms.Padding(15, 3, 3, 3);
|
||||
this.chkMaxQualityRate.Name = "chkMaxQualityRate";
|
||||
this.chkMaxQualityRate.Size = new System.Drawing.Size(87, 21);
|
||||
this.chkMaxQualityRate.TabIndex = 744;
|
||||
this.chkMaxQualityRate.Text = "售后率高于";
|
||||
this.chkMaxQualityRate.UseVisualStyleBackColor = false;
|
||||
//
|
||||
// splitContainer4.Panel2
|
||||
// label10
|
||||
//
|
||||
this.splitContainer4.Panel2.Controls.Add(this.panelEx1);
|
||||
this.splitContainer4.Panel2.Controls.Add(this.btnClear);
|
||||
this.splitContainer4.Size = new System.Drawing.Size(1368, 26);
|
||||
this.splitContainer4.SplitterDistance = 1090;
|
||||
this.splitContainer4.TabIndex = 3;
|
||||
//
|
||||
// statusBar
|
||||
//
|
||||
this.statusBar.BackColor = System.Drawing.Color.White;
|
||||
this.statusBar.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.statusBar.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.statusBar.Location = new System.Drawing.Point(0, 0);
|
||||
this.statusBar.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.statusBar.Name = "statusBar";
|
||||
this.statusBar.Size = new System.Drawing.Size(1090, 26);
|
||||
this.statusBar.TabIndex = 2;
|
||||
//
|
||||
// panelEx1
|
||||
//
|
||||
this.panelEx1.CanvasColor = System.Drawing.SystemColors.Control;
|
||||
this.panelEx1.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||
this.panelEx1.DisabledBackColor = System.Drawing.Color.Empty;
|
||||
this.panelEx1.Location = new System.Drawing.Point(155, 0);
|
||||
this.panelEx1.Name = "panelEx1";
|
||||
this.panelEx1.Size = new System.Drawing.Size(115, 21);
|
||||
this.panelEx1.Style.Alignment = System.Drawing.StringAlignment.Center;
|
||||
this.panelEx1.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
|
||||
this.panelEx1.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(185)))), ((int)(((byte)(215)))), ((int)(((byte)(255)))));
|
||||
this.panelEx1.Style.Border = DevComponents.DotNetBar.eBorderType.SingleLine;
|
||||
this.panelEx1.Style.BorderColor.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
|
||||
this.panelEx1.Style.ForeColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelText;
|
||||
this.panelEx1.Style.GradientAngle = 90;
|
||||
this.panelEx1.StyleMouseDown.Alignment = System.Drawing.StringAlignment.Center;
|
||||
this.panelEx1.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
|
||||
this.panelEx1.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
|
||||
this.panelEx1.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
|
||||
this.panelEx1.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White;
|
||||
this.panelEx1.TabIndex = 668;
|
||||
this.panelEx1.Text = "停止当前操作";
|
||||
this.panelEx1.Click += new System.EventHandler(this.btnStop_Click);
|
||||
//
|
||||
// btnClear
|
||||
//
|
||||
this.btnClear.Anchor = System.Windows.Forms.AnchorStyles.Right;
|
||||
this.btnClear.ColorSchemeStyle = DevComponents.DotNetBar.eDotNetBarStyle.StyleManagerControlled;
|
||||
this.btnClear.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnClear.DisabledBackColor = System.Drawing.Color.Empty;
|
||||
this.btnClear.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnClear.Location = new System.Drawing.Point(47, 0);
|
||||
this.btnClear.Name = "btnClear";
|
||||
this.btnClear.Size = new System.Drawing.Size(90, 21);
|
||||
this.btnClear.Style.Alignment = System.Drawing.StringAlignment.Center;
|
||||
this.btnClear.Style.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
|
||||
this.btnClear.Style.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
|
||||
this.btnClear.Style.BorderColor.ColorSchemePart = DevComponents.DotNetBar.eColorSchemePart.PanelBorder;
|
||||
this.btnClear.Style.BorderDashStyle = System.Drawing.Drawing2D.DashStyle.Dash;
|
||||
this.btnClear.Style.BorderSide = DevComponents.DotNetBar.eBorderSide.None;
|
||||
this.btnClear.Style.ForeColor.Color = System.Drawing.Color.White;
|
||||
this.btnClear.Style.GradientAngle = 90;
|
||||
this.btnClear.StyleMouseOver.Alignment = System.Drawing.StringAlignment.Center;
|
||||
this.btnClear.StyleMouseOver.BackColor1.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
|
||||
this.btnClear.StyleMouseOver.BackColor2.Color = System.Drawing.Color.FromArgb(((int)(((byte)(25)))), ((int)(((byte)(102)))), ((int)(((byte)(255)))));
|
||||
this.btnClear.StyleMouseOver.ForeColor.Color = System.Drawing.Color.White;
|
||||
this.btnClear.TabIndex = 440;
|
||||
this.btnClear.Text = "清空结果";
|
||||
this.btnClear.Visible = false;
|
||||
this.label10.AutoSize = true;
|
||||
this.label10.Location = new System.Drawing.Point(769, 88);
|
||||
this.label10.Name = "label10";
|
||||
this.label10.Size = new System.Drawing.Size(44, 17);
|
||||
this.label10.TabIndex = 746;
|
||||
this.label10.Text = "不备货";
|
||||
//
|
||||
// SaleStockUpForm
|
||||
//
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
|
||||
this.BackColor = System.Drawing.Color.White;
|
||||
this.ClientSize = new System.Drawing.Size(1368, 589);
|
||||
this.ClientSize = new System.Drawing.Size(1350, 589);
|
||||
this.Controls.Add(this.splitContainer1);
|
||||
this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.Name = "SaleStockUpForm";
|
||||
@@ -1880,7 +1945,12 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
private System.Windows.Forms.DataGridViewTextBoxColumn colSalesInventoryNum;
|
||||
private System.Windows.Forms.DataGridViewTextBoxColumn colWaitReceiveNum;
|
||||
private System.Windows.Forms.DataGridViewTextBoxColumn colQualityScore;
|
||||
private System.Windows.Forms.DataGridViewTextBoxColumn colQualityRate;
|
||||
private System.Windows.Forms.DataGridViewTextBoxColumn colQualityCount;
|
||||
private System.Windows.Forms.DataGridViewTextBoxColumn colNeedStockUp;
|
||||
private System.Windows.Forms.DataGridViewTextBoxColumn colMsg;
|
||||
private System.Windows.Forms.TextBox txtMaxQualityRate;
|
||||
private System.Windows.Forms.CheckBox chkMaxQualityRate;
|
||||
private System.Windows.Forms.Label label10;
|
||||
}
|
||||
}
|
||||
@@ -938,13 +938,19 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
foreach(var order in subOrderInfoLstTmp)
|
||||
{
|
||||
order.goodsAfsScore = -1;
|
||||
order.qltyAfsOrdCnt = -1;
|
||||
order.qltyAfsOrdrRate = -1;
|
||||
}
|
||||
}
|
||||
foreach (var qualityInfo in qualityInfoLst)
|
||||
{
|
||||
var order = subOrderInfoLstTmp.FirstOrDefault(o => o.productId == qualityInfo.productId);
|
||||
if (order != null)
|
||||
{
|
||||
order.goodsAfsScore = qualityInfo.goodsAfsScore;
|
||||
order.qltyAfsOrdCnt = qualityInfo.qltyAfsOrdCnt;
|
||||
order.qltyAfsOrdrRate = qualityInfo.qltyAfsOrdrRate;
|
||||
}
|
||||
}
|
||||
//---------------------------------------------------------------------------------------
|
||||
lstSubOrderInfo.AddRange(subOrderInfoLstTmp);
|
||||
@@ -973,6 +979,8 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
sInfo.skuQuantityTotalInfo.inventoryNumInfo.warehouseInventoryNum,
|
||||
sInfo.skuQuantityTotalInfo.inventoryNumInfo.waitReceiveNum,
|
||||
sInfo.goodsAfsScore == null ? "-" : (Math.Round(sInfo.goodsAfsScore.Value * 10) / 10).ToString(),
|
||||
sInfo.qltyAfsOrdrRate == null ? "-" : (Math.Round(sInfo.qltyAfsOrdrRate.Value * 10000) / 100).ToString("0.00"),
|
||||
sInfo.qltyAfsOrdCnt == null ? "-" : sInfo.qltyAfsOrdCnt.Value.ToString(),
|
||||
sInfo.needStockUp == false ? "无需备货" : "可备货",
|
||||
sInfo.goodsAfsScore == -1 ? "获取商品品质信息失败" : ""
|
||||
);
|
||||
@@ -1047,9 +1055,12 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
ucGroupBoxEx4.Enabled = false;
|
||||
|
||||
cancellationTokenSource = new CancellationTokenSource();
|
||||
var minQualityScore = this.txtMinQualityScore.Text.ParseToInt();
|
||||
var minQualityScore = this.txtMinQualityScore.Text.ParseToDecimal();
|
||||
if (!chkMinQualityScore.Checked) // 没选最低品质分,即不考虑品质分上货。
|
||||
minQualityScore = -100;
|
||||
var maxQualityRate = this.txtMaxQualityRate.Text.ParseToDecimal();
|
||||
if (!chkMaxQualityRate.Checked) // 没选最高品质售后率,即不考虑品质售后率上货。
|
||||
maxQualityRate = 100;
|
||||
Task.Run(() =>
|
||||
{
|
||||
int i = 0;
|
||||
@@ -1091,6 +1102,17 @@ namespace TemuKJD.KJDForms.ProductForms
|
||||
}));
|
||||
continue;
|
||||
}
|
||||
if (stockUp.qltyAfsOrdrRate != null && stockUp.qltyAfsOrdrRate * 100 > maxQualityRate)
|
||||
{
|
||||
Invoke(new Action(() =>
|
||||
{
|
||||
foreach (var row in rows)
|
||||
{
|
||||
row.Cells["colMsg"].Value = "商品品质售后率过高,请去网页手动备货";
|
||||
}
|
||||
}));
|
||||
continue;
|
||||
}
|
||||
|
||||
var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == stockUp.supplierId.ToString());
|
||||
if (shop == null || shop.LoginStatus != "登录成功")
|
||||
|
||||
@@ -195,6 +195,12 @@
|
||||
<metadata name="colQualityScore.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="colQualityRate.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="colQualityCount.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="colNeedStockUp.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
|
||||
@@ -86,6 +86,7 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
if (dgvSelectProduct.Rows.Count == 0)
|
||||
SearchDbProdSelect(1);
|
||||
}
|
||||
isInit = true;
|
||||
}
|
||||
|
||||
private void RefreshShop()
|
||||
@@ -145,7 +146,6 @@ namespace TemuKJD.KJDForms.ProductSelectForms
|
||||
row.Cells["colCanUse"].Value = canUse;
|
||||
row.Cells["colRemaining"].Value = shopEntity.AddProductRemaining;
|
||||
}
|
||||
isInit = false;
|
||||
}
|
||||
|
||||
private void dgvShop_CellContentClick(object sender, DataGridViewCellEventArgs e)
|
||||
|
||||
@@ -89,6 +89,7 @@ namespace TemuKJD.KJDForms.ProductThirdSelectForms
|
||||
if (dgvSelectProduct.Rows.Count == 0)
|
||||
SearchDbProdSelect(1);
|
||||
}
|
||||
isInit = true;
|
||||
}
|
||||
|
||||
private void RefreshShop()
|
||||
@@ -148,7 +149,6 @@ namespace TemuKJD.KJDForms.ProductThirdSelectForms
|
||||
row.Cells["colCanUse"].Value = canUse;
|
||||
row.Cells["colRemaining"].Value = shopEntity.AddProductRemaining;
|
||||
}
|
||||
isInit = false;
|
||||
}
|
||||
|
||||
private void dgvShop_CellContentClick(object sender, DataGridViewCellEventArgs e)
|
||||
|
||||
@@ -82,7 +82,7 @@ namespace TemuKJD.KJDForms.ShopForms
|
||||
if (isBack)
|
||||
{
|
||||
endTime = this.dtpEndDate.Value.Date.AddDays(1);
|
||||
startTime = endTime.AddMonths(-6);
|
||||
startTime = endTime.AddMonths(-1);
|
||||
}
|
||||
cancellationTokenSource = new CancellationTokenSource();
|
||||
var t = Task.Run(() =>
|
||||
|
||||
@@ -82,8 +82,8 @@
|
||||
this.splitContainer1.Panel2.Controls.Add(this.btnStop);
|
||||
this.splitContainer1.Panel2.Controls.Add(this.btnReload);
|
||||
this.splitContainer1.Panel2.Controls.Add(this.chkCloseAfterLogin);
|
||||
this.splitContainer1.Size = new System.Drawing.Size(1438, 736);
|
||||
this.splitContainer1.SplitterDistance = 676;
|
||||
this.splitContainer1.Size = new System.Drawing.Size(1438, 755);
|
||||
this.splitContainer1.SplitterDistance = 694;
|
||||
this.splitContainer1.SplitterWidth = 3;
|
||||
this.splitContainer1.TabIndex = 4;
|
||||
//
|
||||
@@ -322,7 +322,7 @@
|
||||
this.splitContainer2.BackColor = System.Drawing.Color.White;
|
||||
this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
|
||||
this.splitContainer2.Location = new System.Drawing.Point(1, 33);
|
||||
this.splitContainer2.Location = new System.Drawing.Point(1, 14);
|
||||
this.splitContainer2.Name = "splitContainer2";
|
||||
this.splitContainer2.Orientation = System.Windows.Forms.Orientation.Horizontal;
|
||||
//
|
||||
@@ -333,7 +333,7 @@
|
||||
// splitContainer2.Panel2
|
||||
//
|
||||
this.splitContainer2.Panel2.Controls.Add(this.splitContainer1);
|
||||
this.splitContainer2.Size = new System.Drawing.Size(1438, 766);
|
||||
this.splitContainer2.Size = new System.Drawing.Size(1438, 785);
|
||||
this.splitContainer2.SplitterDistance = 26;
|
||||
this.splitContainer2.TabIndex = 5;
|
||||
//
|
||||
|
||||
@@ -32,6 +32,7 @@ namespace TemuKJD.PDDForms.AdminForms
|
||||
{
|
||||
public partial class PDDAdminShopLoginForm : LRBaseForm
|
||||
{
|
||||
public static PDDAdminShopLoginForm adminShopLoginInstance { get; set; } = null;
|
||||
public int CloseAfterSecond { get; set; }
|
||||
public EnumOpenType openType = EnumOpenType.manage;
|
||||
public bool isMultiLogin = false;
|
||||
@@ -49,6 +50,12 @@ namespace TemuKJD.PDDForms.AdminForms
|
||||
|
||||
public PDDAdminShopLoginForm(ShopLoginInfo shopInfo)
|
||||
{
|
||||
if (adminShopLoginInstance != null && !adminShopLoginInstance.IsDisposed)
|
||||
{
|
||||
adminShopLoginInstance.Dispose();
|
||||
}
|
||||
adminShopLoginInstance = this;
|
||||
|
||||
InitializeComponent();
|
||||
|
||||
this.shop = shopInfo;
|
||||
@@ -59,6 +66,8 @@ namespace TemuKJD.PDDForms.AdminForms
|
||||
private void ShopLoginForm_Load(object sender, EventArgs e)
|
||||
{
|
||||
//this.splitContainer1.SplitterDistance = 674;
|
||||
this.splitContainer1.SplitterDistance = this.splitContainer1.Height - 62;
|
||||
|
||||
if (BaseClass.SaLevel == 1)
|
||||
this.btnReturnPackage.Visible = true;
|
||||
else
|
||||
@@ -767,6 +776,13 @@ namespace TemuKJD.PDDForms.AdminForms
|
||||
private void ShopLoginForm_FormClosed(object sender, FormClosedEventArgs e)
|
||||
{
|
||||
//OnSaveComplete(shop);
|
||||
Task.Run(() => {
|
||||
Thread.Sleep(500);
|
||||
if (!this.IsDisposed)
|
||||
{
|
||||
MainForm.instance.Invoke(new Action(() => { this.Dispose(); }));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void txtAddress_KeyDown(object sender, KeyEventArgs e)
|
||||
|
||||
+829
-419
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
@@ -195,6 +195,9 @@
|
||||
<metadata name="ColDelete.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="colAddTime.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="colOpResult.UserAddedColumn" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
|
||||
@@ -0,0 +1,223 @@
|
||||
|
||||
namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
{
|
||||
partial class UcAddPrice
|
||||
{
|
||||
/// <summary>
|
||||
/// 必需的设计器变量。
|
||||
/// </summary>
|
||||
private System.ComponentModel.IContainer components = null;
|
||||
|
||||
/// <summary>
|
||||
/// 清理所有正在使用的资源。
|
||||
/// </summary>
|
||||
/// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>
|
||||
protected override void Dispose(bool disposing)
|
||||
{
|
||||
if (disposing && (components != null))
|
||||
{
|
||||
components.Dispose();
|
||||
}
|
||||
base.Dispose(disposing);
|
||||
}
|
||||
|
||||
#region 组件设计器生成的代码
|
||||
|
||||
/// <summary>
|
||||
/// 设计器支持所需的方法 - 不要修改
|
||||
/// 使用代码编辑器修改此方法的内容。
|
||||
/// </summary>
|
||||
private void InitializeComponent()
|
||||
{
|
||||
this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
|
||||
this.txtPriceStart = new System.Windows.Forms.TextBox();
|
||||
this.lblPrice = new System.Windows.Forms.Label();
|
||||
this.txtPriceEnd = new System.Windows.Forms.TextBox();
|
||||
this.label9 = new System.Windows.Forms.Label();
|
||||
this.txtAddTimes = new System.Windows.Forms.TextBox();
|
||||
this.label10 = new System.Windows.Forms.Label();
|
||||
this.txtAddMorePrice = new System.Windows.Forms.TextBox();
|
||||
this.label11 = new System.Windows.Forms.Label();
|
||||
this.txtSinglePriceAdd = new System.Windows.Forms.TextBox();
|
||||
this.label1 = new System.Windows.Forms.Label();
|
||||
this.lblClose = new System.Windows.Forms.Label();
|
||||
this.flowLayoutPanel1.SuspendLayout();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// flowLayoutPanel1
|
||||
//
|
||||
this.flowLayoutPanel1.AutoSize = true;
|
||||
this.flowLayoutPanel1.Controls.Add(this.txtPriceStart);
|
||||
this.flowLayoutPanel1.Controls.Add(this.lblPrice);
|
||||
this.flowLayoutPanel1.Controls.Add(this.txtPriceEnd);
|
||||
this.flowLayoutPanel1.Controls.Add(this.label9);
|
||||
this.flowLayoutPanel1.Controls.Add(this.txtAddTimes);
|
||||
this.flowLayoutPanel1.Controls.Add(this.label10);
|
||||
this.flowLayoutPanel1.Controls.Add(this.txtAddMorePrice);
|
||||
this.flowLayoutPanel1.Controls.Add(this.label11);
|
||||
this.flowLayoutPanel1.Controls.Add(this.txtSinglePriceAdd);
|
||||
this.flowLayoutPanel1.Controls.Add(this.label1);
|
||||
this.flowLayoutPanel1.Controls.Add(this.lblClose);
|
||||
this.flowLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.flowLayoutPanel1.Location = new System.Drawing.Point(0, 0);
|
||||
this.flowLayoutPanel1.Name = "flowLayoutPanel1";
|
||||
this.flowLayoutPanel1.Size = new System.Drawing.Size(336, 18);
|
||||
this.flowLayoutPanel1.TabIndex = 0;
|
||||
//
|
||||
// txtPriceStart
|
||||
//
|
||||
this.txtPriceStart.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
||||
this.txtPriceStart.Location = new System.Drawing.Point(0, 0);
|
||||
this.txtPriceStart.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.txtPriceStart.Name = "txtPriceStart";
|
||||
this.txtPriceStart.Size = new System.Drawing.Size(38, 23);
|
||||
this.txtPriceStart.TabIndex = 551;
|
||||
this.txtPriceStart.Text = "0.0";
|
||||
this.txtPriceStart.TextChanged += new System.EventHandler(this.Price_TextChanged);
|
||||
//
|
||||
// lblPrice
|
||||
//
|
||||
this.lblPrice.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
||||
this.lblPrice.AutoSize = true;
|
||||
this.lblPrice.Location = new System.Drawing.Point(38, 3);
|
||||
this.lblPrice.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.lblPrice.Name = "lblPrice";
|
||||
this.lblPrice.Size = new System.Drawing.Size(58, 17);
|
||||
this.lblPrice.TabIndex = 550;
|
||||
this.lblPrice.Text = "< 价格 ≤";
|
||||
//
|
||||
// txtPriceEnd
|
||||
//
|
||||
this.txtPriceEnd.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
||||
this.txtPriceEnd.Location = new System.Drawing.Point(96, 0);
|
||||
this.txtPriceEnd.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.txtPriceEnd.Name = "txtPriceEnd";
|
||||
this.txtPriceEnd.Size = new System.Drawing.Size(38, 23);
|
||||
this.txtPriceEnd.TabIndex = 549;
|
||||
this.txtPriceEnd.Text = "999.0";
|
||||
this.txtPriceEnd.TextChanged += new System.EventHandler(this.Price_TextChanged);
|
||||
//
|
||||
// label9
|
||||
//
|
||||
this.label9.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
||||
this.label9.AutoSize = true;
|
||||
this.label9.Location = new System.Drawing.Point(134, 3);
|
||||
this.label9.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.label9.Name = "label9";
|
||||
this.label9.Size = new System.Drawing.Size(44, 17);
|
||||
this.label9.TabIndex = 545;
|
||||
this.label9.Text = ",加价";
|
||||
//
|
||||
// txtAddTimes
|
||||
//
|
||||
this.txtAddTimes.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
||||
this.txtAddTimes.Location = new System.Drawing.Point(178, 0);
|
||||
this.txtAddTimes.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.txtAddTimes.Name = "txtAddTimes";
|
||||
this.txtAddTimes.Size = new System.Drawing.Size(31, 23);
|
||||
this.txtAddTimes.TabIndex = 544;
|
||||
this.txtAddTimes.Text = "2.0";
|
||||
this.txtAddTimes.TextChanged += new System.EventHandler(this.Price_TextChanged);
|
||||
//
|
||||
// label10
|
||||
//
|
||||
this.label10.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
||||
this.label10.AutoSize = true;
|
||||
this.label10.Location = new System.Drawing.Point(209, 3);
|
||||
this.label10.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.label10.Name = "label10";
|
||||
this.label10.Size = new System.Drawing.Size(44, 17);
|
||||
this.label10.TabIndex = 546;
|
||||
this.label10.Text = "倍再加";
|
||||
//
|
||||
// txtAddMorePrice
|
||||
//
|
||||
this.txtAddMorePrice.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
||||
this.txtAddMorePrice.Location = new System.Drawing.Point(253, 0);
|
||||
this.txtAddMorePrice.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.txtAddMorePrice.Name = "txtAddMorePrice";
|
||||
this.txtAddMorePrice.Size = new System.Drawing.Size(31, 23);
|
||||
this.txtAddMorePrice.TabIndex = 547;
|
||||
this.txtAddMorePrice.Text = "5.0";
|
||||
this.txtAddMorePrice.TextChanged += new System.EventHandler(this.Price_TextChanged);
|
||||
//
|
||||
// label11
|
||||
//
|
||||
this.label11.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
||||
this.label11.AutoSize = true;
|
||||
this.label11.Location = new System.Drawing.Point(0, 26);
|
||||
this.label11.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.label11.Name = "label11";
|
||||
this.label11.Size = new System.Drawing.Size(68, 17);
|
||||
this.label11.TabIndex = 548;
|
||||
this.label11.Text = "元,单买加";
|
||||
//
|
||||
// txtSinglePriceAdd
|
||||
//
|
||||
this.txtSinglePriceAdd.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
||||
this.txtSinglePriceAdd.Location = new System.Drawing.Point(68, 23);
|
||||
this.txtSinglePriceAdd.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.txtSinglePriceAdd.Name = "txtSinglePriceAdd";
|
||||
this.txtSinglePriceAdd.Size = new System.Drawing.Size(31, 23);
|
||||
this.txtSinglePriceAdd.TabIndex = 553;
|
||||
this.txtSinglePriceAdd.Text = "1.0";
|
||||
this.txtSinglePriceAdd.TextChanged += new System.EventHandler(this.Price_TextChanged);
|
||||
//
|
||||
// label1
|
||||
//
|
||||
this.label1.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
||||
this.label1.AutoSize = true;
|
||||
this.label1.Location = new System.Drawing.Point(99, 26);
|
||||
this.label1.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.label1.Name = "label1";
|
||||
this.label1.Size = new System.Drawing.Size(20, 17);
|
||||
this.label1.TabIndex = 554;
|
||||
this.label1.Text = "元";
|
||||
//
|
||||
// lblClose
|
||||
//
|
||||
this.lblClose.Anchor = System.Windows.Forms.AnchorStyles.Left;
|
||||
this.lblClose.AutoSize = true;
|
||||
this.lblClose.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.lblClose.ForeColor = System.Drawing.SystemColors.HotTrack;
|
||||
this.lblClose.Location = new System.Drawing.Point(119, 26);
|
||||
this.lblClose.Margin = new System.Windows.Forms.Padding(0);
|
||||
this.lblClose.Name = "lblClose";
|
||||
this.lblClose.Size = new System.Drawing.Size(17, 17);
|
||||
this.lblClose.TabIndex = 552;
|
||||
this.lblClose.Text = "×";
|
||||
this.lblClose.Click += new System.EventHandler(this.lblClose_Click);
|
||||
//
|
||||
// UcAddPrice
|
||||
//
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
|
||||
this.AutoSize = true;
|
||||
this.Controls.Add(this.flowLayoutPanel1);
|
||||
this.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.MinimumSize = new System.Drawing.Size(0, 20);
|
||||
this.Name = "UcAddPrice";
|
||||
this.Size = new System.Drawing.Size(336, 18);
|
||||
this.Load += new System.EventHandler(this.UcAddPrice_Load);
|
||||
this.flowLayoutPanel1.ResumeLayout(false);
|
||||
this.flowLayoutPanel1.PerformLayout();
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel1;
|
||||
private System.Windows.Forms.TextBox txtPriceEnd;
|
||||
private System.Windows.Forms.Label label11;
|
||||
private System.Windows.Forms.TextBox txtAddMorePrice;
|
||||
private System.Windows.Forms.Label label10;
|
||||
private System.Windows.Forms.TextBox txtAddTimes;
|
||||
private System.Windows.Forms.Label label9;
|
||||
private System.Windows.Forms.Label lblPrice;
|
||||
private System.Windows.Forms.TextBox txtPriceStart;
|
||||
public System.Windows.Forms.Label lblClose;
|
||||
private System.Windows.Forms.TextBox txtSinglePriceAdd;
|
||||
private System.Windows.Forms.Label label1;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,202 @@
|
||||
using NaiBa.Util.Extension;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace TemuKJD.PDDForms.ProductSelectForms
|
||||
{
|
||||
public partial class UcAddPrice : UserControl
|
||||
{
|
||||
/// <summary>
|
||||
/// 额外加价
|
||||
/// </summary>
|
||||
[Description("显示最小值"), Category("UserProperty")]
|
||||
public bool isShowMin
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.txtPriceStart.Visible;
|
||||
}
|
||||
set
|
||||
{
|
||||
if (this.txtPriceStart.Visible != value)
|
||||
{
|
||||
this.txtPriceStart.Visible = value;
|
||||
if (value == false)
|
||||
{
|
||||
this.lblPrice.Text = "价格 ≤";
|
||||
isShowMax = true;
|
||||
}
|
||||
else
|
||||
this.lblPrice.Text = "< 价格 ≤";
|
||||
this.Invalidate();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 额外加价
|
||||
/// </summary>
|
||||
[Description("显示最大值"), Category("UserProperty")]
|
||||
public bool isShowMax
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.txtPriceEnd.Visible;
|
||||
}
|
||||
set
|
||||
{
|
||||
if (this.txtPriceEnd.Visible != value)
|
||||
{
|
||||
this.txtPriceEnd.Visible = value;
|
||||
if (value == false)
|
||||
{
|
||||
isShowMin = true;
|
||||
this.lblPrice.Text = "< 价格";
|
||||
}
|
||||
else
|
||||
this.lblPrice.Text = "< 价格 ≤";
|
||||
this.Invalidate();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 开始价格
|
||||
/// </summary>
|
||||
[Description("开始价格"), Category("UserProperty")]
|
||||
public decimal PriceStart
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.txtPriceStart.Text.Trim().ParseToDecimal();
|
||||
}
|
||||
set
|
||||
{
|
||||
if (this.txtPriceStart.Text.Trim().ParseToDecimal() != value)
|
||||
{
|
||||
this.txtPriceStart.Text = value.ToString();
|
||||
this.Invalidate();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 结束价格
|
||||
/// </summary>
|
||||
[Description("结束价格"), Category("UserProperty")]
|
||||
public decimal PriceEnd
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.txtPriceEnd.Text.Trim().ParseToDecimal();
|
||||
}
|
||||
set
|
||||
{
|
||||
if (this.txtPriceEnd.Text.Trim().ParseToDecimal() != value)
|
||||
{
|
||||
this.txtPriceEnd.Text = value.ToString();
|
||||
this.Invalidate();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 加价倍数
|
||||
/// </summary>
|
||||
[Description("加价倍数"), Category("UserProperty")]
|
||||
public decimal PriceAddTimes
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.txtAddTimes.Text.Trim().ParseToDecimal();
|
||||
}
|
||||
set
|
||||
{
|
||||
if (this.txtAddTimes.Text.Trim().ParseToDecimal() != value)
|
||||
{
|
||||
this.txtAddTimes.Text = value.ToString();
|
||||
this.Invalidate();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 额外加价
|
||||
/// </summary>
|
||||
[Description("额外加价"), Category("UserProperty")]
|
||||
public decimal PriceAddMore
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.txtAddMorePrice.Text.Trim().ParseToDecimal();
|
||||
}
|
||||
set
|
||||
{
|
||||
if (this.txtAddMorePrice.Text.Trim().ParseToDecimal() != value)
|
||||
{
|
||||
this.txtAddMorePrice.Text = value.ToString();
|
||||
this.Invalidate();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 额外加价
|
||||
/// </summary>
|
||||
[Description("单买加价"), Category("UserProperty")]
|
||||
public decimal SinglePriceAdd
|
||||
{
|
||||
get
|
||||
{
|
||||
return Math.Max(1, this.txtSinglePriceAdd.Text.Trim().ParseToDecimal());
|
||||
}
|
||||
set
|
||||
{
|
||||
if (this.txtSinglePriceAdd.Text.Trim().ParseToDecimal() != value)
|
||||
{
|
||||
if (value < 1)
|
||||
value = 1;
|
||||
this.txtSinglePriceAdd.Text = value.ToString();
|
||||
this.Invalidate();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public UcAddPrice()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void UcAddPrice_Load(object sender, EventArgs e)
|
||||
{
|
||||
OnPriceChange(this);
|
||||
}
|
||||
|
||||
private void lblClose_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.Dispose();
|
||||
OnPriceChange(this);
|
||||
}
|
||||
|
||||
private void Price_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
OnPriceChange(this);
|
||||
}
|
||||
|
||||
#region 价格发生改变事件
|
||||
public event Action<object> PriceChange;
|
||||
protected virtual void OnPriceChange(object param)
|
||||
{
|
||||
this.PriceChange?.Invoke(param);
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,120 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<root>
|
||||
<!--
|
||||
Microsoft ResX Schema
|
||||
|
||||
Version 2.0
|
||||
|
||||
The primary goals of this format is to allow a simple XML format
|
||||
that is mostly human readable. The generation and parsing of the
|
||||
various data types are done through the TypeConverter classes
|
||||
associated with the data types.
|
||||
|
||||
Example:
|
||||
|
||||
... ado.net/XML headers & schema ...
|
||||
<resheader name="resmimetype">text/microsoft-resx</resheader>
|
||||
<resheader name="version">2.0</resheader>
|
||||
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
|
||||
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
|
||||
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
|
||||
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
|
||||
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
|
||||
<value>[base64 mime encoded serialized .NET Framework object]</value>
|
||||
</data>
|
||||
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
|
||||
<comment>This is a comment</comment>
|
||||
</data>
|
||||
|
||||
There are any number of "resheader" rows that contain simple
|
||||
name/value pairs.
|
||||
|
||||
Each data row contains a name, and value. The row also contains a
|
||||
type or mimetype. Type corresponds to a .NET class that support
|
||||
text/value conversion through the TypeConverter architecture.
|
||||
Classes that don't support this are serialized and stored with the
|
||||
mimetype set.
|
||||
|
||||
The mimetype is used for serialized objects, and tells the
|
||||
ResXResourceReader how to depersist the object. This is currently not
|
||||
extensible. For a given mimetype the value must be set accordingly:
|
||||
|
||||
Note - application/x-microsoft.net.object.binary.base64 is the format
|
||||
that the ResXResourceWriter will generate, however the reader can
|
||||
read any of the formats listed below.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.binary.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.soap.base64
|
||||
value : The object must be serialized with
|
||||
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
|
||||
: and then encoded with base64 encoding.
|
||||
|
||||
mimetype: application/x-microsoft.net.object.bytearray.base64
|
||||
value : The object must be serialized into a byte array
|
||||
: using a System.ComponentModel.TypeConverter
|
||||
: and then encoded with base64 encoding.
|
||||
-->
|
||||
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
|
||||
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
|
||||
<xsd:element name="root" msdata:IsDataSet="true">
|
||||
<xsd:complexType>
|
||||
<xsd:choice maxOccurs="unbounded">
|
||||
<xsd:element name="metadata">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" use="required" type="xsd:string" />
|
||||
<xsd:attribute name="type" type="xsd:string" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="assembly">
|
||||
<xsd:complexType>
|
||||
<xsd:attribute name="alias" type="xsd:string" />
|
||||
<xsd:attribute name="name" type="xsd:string" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="data">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
|
||||
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
|
||||
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
|
||||
<xsd:attribute ref="xml:space" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
<xsd:element name="resheader">
|
||||
<xsd:complexType>
|
||||
<xsd:sequence>
|
||||
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
|
||||
</xsd:sequence>
|
||||
<xsd:attribute name="name" type="xsd:string" use="required" />
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:choice>
|
||||
</xsd:complexType>
|
||||
</xsd:element>
|
||||
</xsd:schema>
|
||||
<resheader name="resmimetype">
|
||||
<value>text/microsoft-resx</value>
|
||||
</resheader>
|
||||
<resheader name="version">
|
||||
<value>2.0</value>
|
||||
</resheader>
|
||||
<resheader name="reader">
|
||||
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
</root>
|
||||
@@ -32,7 +32,8 @@ namespace TemuKJD.PDDForms.ShopForms
|
||||
BaseMsgForm.ShowError("商品Id不存在!");
|
||||
return "failed";
|
||||
}
|
||||
var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == supplierId.ParseToString());
|
||||
//var shop = GlobalConfig.ShopLoginList.FirstOrDefault(s => s.ShopId == supplierId.ParseToString());
|
||||
var shop = PDDAdminShopListForm.lstAdminShopInfo.FirstOrDefault(s => s.ShopId == supplierId.ParseToString());
|
||||
if (string.IsNullOrEmpty(supplierId) || shop == null)
|
||||
{
|
||||
BaseMsgForm.ShowError("店铺不存在!");
|
||||
@@ -77,7 +78,48 @@ namespace TemuKJD.PDDForms.ShopForms
|
||||
return;
|
||||
}
|
||||
}
|
||||
catch (Exception ex) { }
|
||||
catch (Exception ex)
|
||||
{
|
||||
OnInfoReceived("商品获取失败!商品数据格式获取失败!" + ex.Message);
|
||||
return;
|
||||
}
|
||||
|
||||
var size_json = "{}";
|
||||
if (product.size_spec_id.ParseToLong() != 0)
|
||||
{
|
||||
try
|
||||
{
|
||||
var prod_size_rst = GetPddProdSizeSpec(sourceShop, sourceProdId.ToString(), commitId, product.size_spec_id.ParseToString());
|
||||
prod_size_rst = GetHtml.Unicode2String(prod_size_rst);
|
||||
JObject prod_size_obj = JObject.Parse(prod_size_rst);
|
||||
size_json = JsonHelper.SerializeObject(prod_size_obj["result"]);
|
||||
var size = JsonHelper.DeserializeJsonToObject<PDDSizeSpecInfo>(size_json);
|
||||
if (size == null)
|
||||
{
|
||||
OnInfoReceived("尺码表获取失败!尺码数据格式获取失败!");
|
||||
return;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
OnInfoReceived("尺码表获取失败!尺码数据格式获取失败!" + ex.Message);
|
||||
return;
|
||||
}
|
||||
}
|
||||
//temu尺码表暂时注释
|
||||
//if (product.sizeTemplateId > 0)
|
||||
//{
|
||||
// html = SizeSpecQuery(shop1, prodId1.ToString(), product.sizeTemplateId.ToString());
|
||||
// if(!html.Contains("\"success\":true"))
|
||||
// {
|
||||
// success_err_msg += " 尺码表获取失败!" + BaseRegex.GetStringJson(ref html, "errorMsg");
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// obj = JObject.Parse(html);
|
||||
// sizeRst = JsonHelper.SerializeObject(obj["result"]);
|
||||
// }
|
||||
//}
|
||||
|
||||
var property_json = "{}";
|
||||
PDDProductPropertyInfo property = null;
|
||||
@@ -142,22 +184,6 @@ namespace TemuKJD.PDDForms.ShopForms
|
||||
// return;
|
||||
//}
|
||||
|
||||
var sizeRst = "";
|
||||
//尺码表暂时注释
|
||||
//if (product.sizeTemplateId > 0)
|
||||
//{
|
||||
// html = SizeSpecQuery(shop1, prodId1.ToString(), product.sizeTemplateId.ToString());
|
||||
// if(!html.Contains("\"success\":true"))
|
||||
// {
|
||||
// success_err_msg += " 尺码表获取失败!" + BaseRegex.GetStringJson(ref html, "errorMsg");
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// obj = JObject.Parse(html);
|
||||
// sizeRst = JsonHelper.SerializeObject(obj["result"]);
|
||||
// }
|
||||
//}
|
||||
|
||||
bool isExist = false;
|
||||
var existUrl = BaseClass.BuildObjString("product/get_product_list");
|
||||
string existData = UserLogin.GetSignaturex() + "&search_spu=" + product.goods_id;
|
||||
@@ -172,7 +198,8 @@ namespace TemuKJD.PDDForms.ShopForms
|
||||
isExist = true;
|
||||
}
|
||||
|
||||
string product_json = "{\"detail\":" + detail_json + ",\"decoration\":" + decoration_json + ",\"property\":" + property_json + "}";
|
||||
|
||||
string product_json = "{\"detail\":" + detail_json + ",\"size\":" + size_json + ",\"decoration\":" + decoration_json + ",\"property\":" + property_json + "}";
|
||||
string main_img = product.image_url;
|
||||
if (string.IsNullOrEmpty(main_img))
|
||||
main_img = product.hd_thumb_url;
|
||||
@@ -200,12 +227,15 @@ namespace TemuKJD.PDDForms.ShopForms
|
||||
"&from_shop_id=" + shop.ShopId +
|
||||
"&spu_id=" + product.goods_id.ParseToString() +
|
||||
"&skc_id=" + product.goods_id.ParseToString() +
|
||||
"&price_text=" + product.sku.Min(s => s.multi_price).ParseToInt() * 0.01m + "-" + product.sku.Max(s => s.multi_price).ParseToInt() * 0.01m +
|
||||
"&main_cat_id=" + (product.cat_ids?.FirstOrDefault(c => c != null)).ParseToString() +
|
||||
"&main_cat_name=" + HttpUtility.UrlEncode((product.cats?.FirstOrDefault(c => !string.IsNullOrEmpty(c))).ParseToString(), Encoding.UTF8) +
|
||||
"&cat_id=" + (product.cat_id).ParseToString() +
|
||||
"&cat_name=" + HttpUtility.UrlEncode((product.cats?.LastOrDefault(c => !string.IsNullOrEmpty(c))).ParseToString(), Encoding.UTF8) +
|
||||
"&ext_code=" + HttpUtility.UrlEncode(product.out_goods_sn, Encoding.UTF8) +
|
||||
"&product_name=" + HttpUtility.UrlEncode(product.goods_name, Encoding.UTF8) +
|
||||
"&product_json=" + HttpUtility.UrlEncode(product_json, Encoding.UTF8) +
|
||||
"&size_json=" + HttpUtility.UrlEncode(sizeRst, Encoding.UTF8) +
|
||||
"&size_json=" + HttpUtility.UrlEncode(size_json, Encoding.UTF8) +
|
||||
"&main_img=" + HttpUtility.UrlEncode(main_img, Encoding.UTF8);
|
||||
|
||||
html = GetHtml.PostUtf8(url, data);
|
||||
@@ -496,6 +526,29 @@ namespace TemuKJD.PDDForms.ShopForms
|
||||
}
|
||||
return result;
|
||||
}
|
||||
private string GetPddProdSizeSpec(ShopLoginInfo shop, string prodId, string commitId, string sizeSpecId)
|
||||
{
|
||||
var anti = shop.AntiContents.LastOrDefault().ParseToString();
|
||||
if (shop.AntiContents.Count > 0)
|
||||
anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)];
|
||||
string url = "https://mms.pinduoduo.com/cabernet/mms/sizespec/query/draft";
|
||||
//string body = @"{""goods_id"":" + prodId + "}";
|
||||
string body = @"{""id"":" + sizeSpecId + @"}";
|
||||
string refere = "https://mms.pinduoduo.com/goods/goods_add/index?id=" + commitId + "&goods_id=" + prodId + "&type=edit";
|
||||
var result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti);
|
||||
for (int i = 0; i < 5 && result.Contains("网络繁忙,请不要频繁操作"); i++)
|
||||
{
|
||||
shop.AntiContents.Remove(anti);
|
||||
anti = shop.AntiContents.FirstOrDefault().ParseToString();
|
||||
if (shop.AntiContents.Count > 0)
|
||||
{
|
||||
Thread.Sleep(Randomx.GetId(300, 500));
|
||||
anti = shop.AntiContents[Randomx.GetId(shop.AntiContents.Count)];
|
||||
result = HttpResponseBLL.PDDPostResponse(shop, url, body, refere, anti);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
private string GetPddProdProperty(ShopLoginInfo shop, string prodId, string commitId)
|
||||
{
|
||||
var anti = shop.AntiContents.LastOrDefault().ParseToString();
|
||||
|
||||
+23
-22
@@ -30,6 +30,7 @@
|
||||
{
|
||||
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PDDShopLoginForm));
|
||||
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
|
||||
this.btnReturnPackage = new TemuKJD.UserControls.ButtonEx();
|
||||
this.btnLoginAgain = new TemuKJD.UserControls.ButtonEx();
|
||||
this.pnlMultiLogin = new System.Windows.Forms.Panel();
|
||||
this.cmbMultiCookieName = new DevComponents.DotNetBar.Controls.ComboBoxEx();
|
||||
@@ -46,7 +47,6 @@
|
||||
this.chkCloseAfterLogin = new DevComponents.DotNetBar.Controls.CheckBoxX();
|
||||
this.splitContainer2 = new System.Windows.Forms.SplitContainer();
|
||||
this.txtAddress = new System.Windows.Forms.TextBox();
|
||||
this.btnReturnPackage = new TemuKJD.UserControls.ButtonEx();
|
||||
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit();
|
||||
this.splitContainer1.Panel2.SuspendLayout();
|
||||
this.splitContainer1.SuspendLayout();
|
||||
@@ -82,11 +82,29 @@
|
||||
this.splitContainer1.Panel2.Controls.Add(this.btnStop);
|
||||
this.splitContainer1.Panel2.Controls.Add(this.btnReload);
|
||||
this.splitContainer1.Panel2.Controls.Add(this.chkCloseAfterLogin);
|
||||
this.splitContainer1.Size = new System.Drawing.Size(1438, 736);
|
||||
this.splitContainer1.SplitterDistance = 675;
|
||||
this.splitContainer1.Size = new System.Drawing.Size(1438, 755);
|
||||
this.splitContainer1.SplitterDistance = 690;
|
||||
this.splitContainer1.SplitterWidth = 3;
|
||||
this.splitContainer1.TabIndex = 4;
|
||||
//
|
||||
// btnReturnPackage
|
||||
//
|
||||
this.btnReturnPackage.Anchor = System.Windows.Forms.AnchorStyles.Top;
|
||||
this.btnReturnPackage.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
|
||||
this.btnReturnPackage.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnReturnPackage.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.btnReturnPackage.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnReturnPackage.ForeColor = System.Drawing.Color.White;
|
||||
this.btnReturnPackage.Location = new System.Drawing.Point(674, 30);
|
||||
this.btnReturnPackage.Margin = new System.Windows.Forms.Padding(2);
|
||||
this.btnReturnPackage.Name = "btnReturnPackage";
|
||||
this.btnReturnPackage.Size = new System.Drawing.Size(136, 25);
|
||||
this.btnReturnPackage.TabIndex = 464;
|
||||
this.btnReturnPackage.Text = "提交退货到库存管理";
|
||||
this.btnReturnPackage.UseVisualStyleBackColor = false;
|
||||
this.btnReturnPackage.Visible = false;
|
||||
this.btnReturnPackage.Click += new System.EventHandler(this.btnReturnPackage_Click);
|
||||
//
|
||||
// btnLoginAgain
|
||||
//
|
||||
this.btnLoginAgain.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
|
||||
@@ -304,7 +322,7 @@
|
||||
this.splitContainer2.BackColor = System.Drawing.Color.White;
|
||||
this.splitContainer2.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||
this.splitContainer2.FixedPanel = System.Windows.Forms.FixedPanel.Panel1;
|
||||
this.splitContainer2.Location = new System.Drawing.Point(1, 33);
|
||||
this.splitContainer2.Location = new System.Drawing.Point(1, 14);
|
||||
this.splitContainer2.Name = "splitContainer2";
|
||||
this.splitContainer2.Orientation = System.Windows.Forms.Orientation.Horizontal;
|
||||
//
|
||||
@@ -315,7 +333,7 @@
|
||||
// splitContainer2.Panel2
|
||||
//
|
||||
this.splitContainer2.Panel2.Controls.Add(this.splitContainer1);
|
||||
this.splitContainer2.Size = new System.Drawing.Size(1438, 766);
|
||||
this.splitContainer2.Size = new System.Drawing.Size(1438, 785);
|
||||
this.splitContainer2.SplitterDistance = 26;
|
||||
this.splitContainer2.TabIndex = 5;
|
||||
//
|
||||
@@ -330,23 +348,6 @@
|
||||
this.txtAddress.TabIndex = 7;
|
||||
this.txtAddress.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtAddress_KeyDown);
|
||||
//
|
||||
// btnReturnPackage
|
||||
//
|
||||
this.btnReturnPackage.Anchor = System.Windows.Forms.AnchorStyles.Top;
|
||||
this.btnReturnPackage.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(63)))), ((int)(((byte)(126)))), ((int)(((byte)(255)))));
|
||||
this.btnReturnPackage.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||
this.btnReturnPackage.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
|
||||
this.btnReturnPackage.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||
this.btnReturnPackage.ForeColor = System.Drawing.Color.White;
|
||||
this.btnReturnPackage.Location = new System.Drawing.Point(674, 30);
|
||||
this.btnReturnPackage.Margin = new System.Windows.Forms.Padding(2);
|
||||
this.btnReturnPackage.Name = "btnReturnPackage";
|
||||
this.btnReturnPackage.Size = new System.Drawing.Size(136, 25);
|
||||
this.btnReturnPackage.TabIndex = 464;
|
||||
this.btnReturnPackage.Text = "提交退货到库存管理";
|
||||
this.btnReturnPackage.UseVisualStyleBackColor = false;
|
||||
this.btnReturnPackage.Visible = false;
|
||||
//
|
||||
// PDDShopLoginForm
|
||||
//
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
|
||||
|
||||
@@ -68,7 +68,7 @@ namespace TemuKJD.PDDForms.ShopForms
|
||||
|
||||
private void ShopLoginForm_Load(object sender, EventArgs e)
|
||||
{
|
||||
//this.splitContainer1.SplitterDistance = 674;
|
||||
this.splitContainer1.SplitterDistance = this.splitContainer1.Height - 62;
|
||||
|
||||
if (isMultiLogin && shop != null)
|
||||
{
|
||||
@@ -906,6 +906,13 @@ function fireKeyEvent(el, evtType, keyCode) {
|
||||
private void ShopLoginForm_FormClosed(object sender, FormClosedEventArgs e)
|
||||
{
|
||||
//OnSaveComplete(shop);
|
||||
Task.Run(() => {
|
||||
Thread.Sleep(500);
|
||||
if (!this.IsDisposed)
|
||||
{
|
||||
MainForm.instance.Invoke(new Action(() => { this.Dispose(); }));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void txtAddress_KeyDown(object sender, KeyEventArgs e)
|
||||
@@ -1007,5 +1014,11 @@ function getElementWithText(sText)
|
||||
InputUserNameAndPassword(cefWebBrowser, shop.LoginName, DataOpenSSL.DecryptString(shop.Password));
|
||||
});
|
||||
}
|
||||
|
||||
private void btnReturnPackage_Click(object sender, EventArgs e)
|
||||
{
|
||||
//ReturnPackageDetailForm form = new ReturnPackageDetailForm(this.shop);
|
||||
//form.ShowDialog();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -221,6 +221,9 @@ namespace TemuKJD
|
||||
#region 读取库存信息
|
||||
Task.Run(() =>
|
||||
{
|
||||
if (BaseClass.MainPath != "kuajingda")
|
||||
return;
|
||||
|
||||
while (!IsShopInit)
|
||||
{
|
||||
Thread.Sleep(100);
|
||||
|
||||
Reference in new issue
Block a user