99 lines
3.8 KiB
C#
99 lines
3.8 KiB
C#
using AllBase;
|
|
using AllBase.Model.Result;
|
|
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;
|
|
using TemuKJD.BaseForms;
|
|
using TemuKJD.Extension;
|
|
using TemuKJD.ToolForms;
|
|
|
|
namespace TemuKJD.WXForms.ProductForms
|
|
{
|
|
public partial class WXDBProdUploadCacheForm : BaseGeneralForm
|
|
{
|
|
NaiBa.Util.ConcurrentList<TemuDBProductSelect> lstTemuDBProductSelect;
|
|
public WXDBProdUploadCacheForm(NaiBa.Util.ConcurrentList<TemuDBProductSelect> _lstTemuDBProductSelect)
|
|
{
|
|
InitializeComponent();
|
|
|
|
lstTemuDBProductSelect = _lstTemuDBProductSelect;
|
|
}
|
|
|
|
private void WXDBProdUploadCacheForm_Load(object sender, EventArgs e)
|
|
{
|
|
dgvSelectProduct.AddSelectorColumn("colCheck");
|
|
dgvSelectProduct.AddImgColumn("colProductSkcPic", "colImgUrl");
|
|
|
|
if (lstTemuDBProductSelect != null && lstTemuDBProductSelect.Count > 0)
|
|
{
|
|
foreach (var prodSelect in lstTemuDBProductSelect)
|
|
{
|
|
int rowIndex = this.dgvSelectProduct.Rows.Add(
|
|
false,
|
|
prodSelect.id,
|
|
prodSelect.spu_id,
|
|
prodSelect.main_img,
|
|
null,
|
|
prodSelect.product_name, // 商品名称
|
|
prodSelect.cat_name,
|
|
prodSelect.ext_code,
|
|
prodSelect.notes,
|
|
"删除"
|
|
);
|
|
|
|
dgvSelectProduct.Rows[rowIndex].Height = 60;
|
|
}
|
|
}
|
|
}
|
|
|
|
private void dgvSelectProduct_CellContentClick(object sender, DataGridViewCellEventArgs e)
|
|
{
|
|
if (e.ColumnIndex < 0 || e.RowIndex < 0)
|
|
return;
|
|
string headerText = dgvSelectProduct.Columns[e.ColumnIndex].HeaderText;
|
|
var id = dgvSelectProduct.Rows[e.RowIndex].Cells["colId"].Value.ParseToString();
|
|
var dbProduct = lstTemuDBProductSelect.FirstOrDefault(p => p.id.ToString() == id);
|
|
var row = dgvSelectProduct.Rows[e.RowIndex];
|
|
|
|
switch (headerText)
|
|
{
|
|
case "删除":
|
|
if (BaseMsgForm.ShowConfirm("确定删除商品吗?删除后不可恢复!").DialogResult == DialogResult.Cancel)
|
|
return;
|
|
lstTemuDBProductSelect.RemoveAll(s => s.id == row.Cells["colId"].Value.ParseToInt());
|
|
this.dgvSelectProduct.Rows.Remove(row);
|
|
break;
|
|
case "图片":
|
|
ShowImgForm imgFrom = new ShowImgForm(dgvSelectProduct.Rows[e.RowIndex].Cells["colImgUrl"].Value.ParseToString());
|
|
imgFrom.ShowDialog();
|
|
break;
|
|
case "":
|
|
dgvSelectProduct.Rows[e.RowIndex].Cells["colCheck"].Value = !(bool)dgvSelectProduct.Rows[e.RowIndex].Cells["colCheck"].Value;
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
private void btnClearDgv_Click(object sender, EventArgs e)
|
|
{
|
|
var rows = this.dgvSelectProduct.Rows.Cast<DataGridViewRow>().ToList(); //Cast后Rows做foreach循环时仍会夹花跳过,所以要ToList转一个新的数组。
|
|
foreach (var row in rows)
|
|
{
|
|
if (row.Cells["colCheck"].Value.ParseToBool() == true)
|
|
{
|
|
lstTemuDBProductSelect.RemoveAll(s => s.id == row.Cells["colId"].Value.ParseToInt());
|
|
this.dgvSelectProduct.Rows.Remove(row);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|