PageRenderTime 54ms CodeModel.GetById 15ms RepoModel.GetById 0ms app.codeStats 1ms

/KSLL_WEB/website/QuanTri/AdminSP/DauKy_KhaiBaoTonKho.ascx.cs

http://ki-va-le.googlecode.com/
C# | 350 lines | 298 code | 26 blank | 26 comment | 20 complexity | a1080702adb4a8be27fb71b3f2e70b21 MD5 | raw file
Possible License(s): LGPL-2.1
  1. using System;
  2. using System.Data;
  3. using System.Data.SqlClient;
  4. using System.Text;
  5. using System.Web.UI;
  6. using System.Web.UI.WebControls;
  7. using TTQT;
  8. using TTQT.TTQT_Code;
  9. using MyWebUtils;
  10. using TTQT.TTQT_Code.Info;
  11. public partial class DauKy_KhaiBaoTonKho : MasterControl//System.Web.UI.UserControl
  12. {
  13. //private void bindAnChi()
  14. //{
  15. // dsMaAnChi.SelectCommandType = SqlDataSourceCommandType.Text;
  16. // dsMaAnChi.SelectCommand =
  17. // "select distinct Ma,tenanchi+ case(AnChiMau) when 1 then N' (m?u)' when 0 then '' end [TenAnChi] from maanchi where MaDotPhatHanh=" +
  18. // cboDotPhatHanh.SelectedValue;
  19. // cboMaAnChi.DataSource = ((DataView)dsMaAnChi.Select(new DataSourceSelectArguments())).ToTable();
  20. // cboMaAnChi.DataBind();
  21. //}
  22. private void bindDetail()
  23. {
  24. dsDetail.SelectCommandType = SqlDataSourceCommandType.Text;
  25. dsDetail.SelectCommand = @"select k.id,k.Seri,k.NgayNhap,k.NhomHangId,k.MaCN,k.TenHang,k.PicUrl,k.GhiChu,k.MaVach,k.GiaNhap,k.GiaBanThamKhao,
  26. k.ChietKhau,k.GiaBanThucTe,k.SoLuong,k.UserName,k.Del,case when N.GioiTinh=0 then N'Hŕng c?a n?' else N'Hŕng c?a nam' end as GioiTinh
  27. from KhoHang k inner join NhomHang N on k.NhomHangID=N.ID where k.MaCN='" + UserInfo.Brn_Code + "' and del=0 and k.HangMoi=0 and daban=0";
  28. if (!cboGioiTinhLoc.SelectedValue.Equals("-1"))
  29. {
  30. dsDetail.SelectCommand += " and N.GioiTinh=" + cboGioiTinhLoc.SelectedValue;
  31. }
  32. if (!cboNhomHangLoc.SelectedValue.Equals("-1"))
  33. {
  34. dsDetail.SelectCommand += " and N.ID=" + cboNhomHangLoc.SelectedValue;
  35. }
  36. detailGrid.DataSourceID = "dsDetail";
  37. detailGrid.DataBind();
  38. }
  39. protected void Page_Load(object sender, EventArgs e)
  40. {
  41. if (!Page.IsPostBack)
  42. {
  43. txtGiaNhap.Attributes.Add("onkeyup", "formatTien(" + txtGiaNhap.ClientID + ");");
  44. txtGiaNhap.Attributes.Add("ondblclick", "selectText(this)");
  45. txtGiaBan.Attributes.Add("onkeyup", "formatTien(" + txtGiaBan.ClientID + ");");
  46. txtGiaBan.Attributes.Add("ondblclick", "selectText(this)");
  47. txtNgayNhap.Attributes.Add("onkeyup", "formatDateInput(this)");
  48. txtNgayNhap.Attributes.Add("ondblclick", "selectText(this)");
  49. bindDetail();
  50. hienPanel(false, false, true, false);
  51. }
  52. }
  53. private void hienPanel(bool gridMaster, bool editMaster, bool gridDetail, bool editDetail)
  54. {
  55. pnGridMaster.Visible = gridMaster;
  56. pnEditMaster.Visible = editMaster;
  57. pnGridDetail.Visible = gridDetail;
  58. pnEditDetail.Visible = editDetail;
  59. }
  60. protected void detailGrid_ItemCommand(object source, DataGridCommandEventArgs e)
  61. {
  62. MyWebUtil.goToElement(Page, "chiTietHoaDon");
  63. try
  64. {
  65. if (e.CommandName == "cmdDelete")
  66. {
  67. ds.DeleteCommandType = SqlDataSourceCommandType.Text;
  68. ds.DeleteCommand = "Delete KhoHang where id=" + e.Item.Cells[0].Text;
  69. int kq = ds.Delete();
  70. bindDetail();
  71. hienPanel(false, false, true, false);
  72. #region GhiLog
  73. LogInfo logInfo = new LogInfo();
  74. logInfo.Brn_Code = UserInfo.Brn_Code;
  75. logInfo.Content = "Xóa hŕng mă " + e.Item.Cells[1].Text + "," + e.Item.Cells[4].Text + ", giá " + e.Item.Cells[5].Text;
  76. logInfo.Ip = Request.UserHostAddress;
  77. logInfo.UserName = UserInfo.userName;
  78. logInfo.Type = TTQTCommon.logXoaKhaiBaoDauKy;
  79. DataAccessObject.instance().addLog(logInfo);
  80. #endregion
  81. }
  82. }
  83. catch (SqlException ex)
  84. {
  85. }
  86. }
  87. protected void detailGrid_ItemDataBound(object sender, DataGridItemEventArgs e)
  88. {
  89. if (e.Item.ItemIndex < 0) return;
  90. Button cmdDel = (Button)e.Item.FindControl("cmdDelete");
  91. if (cmdDel != null) cmdDel.Attributes.Add("onclick", TTQTCommon.delete_Confirm);
  92. try
  93. {
  94. if (e.Item.Cells[3].Text.Equals("1"))
  95. {
  96. e.Item.CssClass = "DarkRow";
  97. cmdDel.Enabled = false;
  98. }
  99. else
  100. {
  101. e.Item.CssClass = "LightRow";
  102. }
  103. }
  104. catch { }
  105. }
  106. protected void detailGrid_PageIndexChanged(object source, DataGridPageChangedEventArgs e)
  107. {
  108. detailGrid.CurrentPageIndex = e.NewPageIndex;
  109. bindDetail();
  110. }
  111. protected void cmdAddNewMaster_Click(object sender, EventArgs e)
  112. {
  113. hienPanel(false, true, false, false);
  114. }
  115. protected void cmdExitEditMaster_Click(object sender, EventArgs e)
  116. {
  117. hienPanel(true, false, false, false);
  118. }
  119. protected void cmdAddDetail_Click(object sender, EventArgs e)
  120. {
  121. hienPanel(false, true, true, true);
  122. MyWebUtils.MyWebUtil.goToElement(Page, "chiTietHoaDon");
  123. }
  124. protected void cboMaAnChi_SelectedIndexChanged(object sender, EventArgs e)
  125. {
  126. try
  127. {
  128. MyWebUtil.goToElement(Page, "chiTietHoaDon");
  129. ds.SelectCommandType = SqlDataSourceCommandType.Text;
  130. ds.SelectCommand = "select * from MaAnChi where ma=" + cboNhomHang.SelectedValue;
  131. DataTable t = ((DataView)ds.Select(new DataSourceSelectArguments())).ToTable();
  132. txtGiaNhap.Text = t.Rows[0]["DonGia"].ToString();
  133. //txtTinhChatAnChi.Text = t.Rows[0]["AnChiThuong"].ToString().Equals("True") ? "1" : "0";
  134. }
  135. catch (Exception exxx) { }
  136. }
  137. private bool kiemTraLoiNhapDetail()
  138. {
  139. // Ki?m tra l?i nh?p tręn ph?n Detail
  140. decimal giaNhap, giaBan;
  141. try
  142. {
  143. DateTime d = Convert.ToDateTime(txtNgayNhap.Value);
  144. }
  145. catch
  146. {
  147. MyWebUtils.MyWebUtil.alert(Page, "Ngŕy nh?p sai ??nh d?ng");
  148. return false;
  149. }
  150. if (txtTenHang.Text.Trim().Length < 1)
  151. {
  152. MyWebUtil.alert(Page, "Chua nhap ten hang");
  153. return false;
  154. }
  155. if (txtSeri.Text.Trim().Length < 1)
  156. {
  157. MyWebUtil.alert(Page, "Chua chon Seri");
  158. return false;
  159. }
  160. // giá nh?p
  161. if (txtGiaNhap.Text.Trim().Length < 1)
  162. {
  163. MyWebUtil.alert(Page, "Chua nhap gia nhap");
  164. return false;
  165. }
  166. try
  167. {
  168. giaNhap = Convert.ToDecimal(txtGiaNhap.Text.Replace(",", ""));
  169. if (giaNhap < 0)
  170. {
  171. MyWebUtil.alert(Page, "Gia nhap khong hop le");
  172. return false;
  173. }
  174. }
  175. catch
  176. {
  177. MyWebUtil.alert(Page, "Gia nhap khong hop le");
  178. return false;
  179. }
  180. // giá ban
  181. if (txtGiaBan.Text.Trim().Length < 1)
  182. {
  183. MyWebUtil.alert(Page, "Chua nhap gia ban");
  184. return false;
  185. }
  186. try
  187. {
  188. giaBan = Convert.ToDecimal(txtGiaBan.Text.Replace(",", ""));
  189. if (giaBan < 0)
  190. {
  191. MyWebUtil.alert(Page, "Gia ban khong hop le");
  192. return false;
  193. }
  194. }
  195. catch
  196. {
  197. MyWebUtil.alert(Page, "Gia ban khong hop le");
  198. return false;
  199. }
  200. //Xong ph?n ki?m tra l?i nh?p thông tin Detail
  201. #region Ki?m tra xem b? trůng seri không.
  202. //Ki?m tra tr?ng thái trong database. Ch? nŕy ph?c t?p nh?t
  203. //Mô t? quá trěnh těm ki?m:
  204. ///Ph?i kięm tra 2 tr??ng h?p: Mă ?y có t?n t?i không? Vŕ ?n ch? ?y có ?úng lŕ tr?ng thái = 1 không? N?u không th?a c? 2 ?i?u ki?n tręn thě báo l?i vŕ d?ng l?i.
  205. /* */
  206. SqlConnection conn = new SqlConnection(TTQTCommon.DBConnectionString);
  207. SqlCommand comm = new SqlCommand();
  208. comm.Connection = conn;
  209. comm.CommandType = CommandType.StoredProcedure;
  210. comm.CommandText = "KhoHang_KiemTraTonTaiSeri";
  211. bool isExist = false;
  212. try
  213. {
  214. conn.Open();
  215. comm.Parameters.Clear();
  216. //Ki?m tra trung b?ng khoanchi_khaibaodauky
  217. comm.Parameters.AddWithValue("@Seri", txtSeri.Text);
  218. string s = Convert.ToString(comm.ExecuteScalar());
  219. if (s != "0") isExist = true;
  220. if (isExist)
  221. {
  222. MyWebUtil.alert(Page, "Seri nŕy ?ă ???c gán cho m?t s?n ph?m trong kho. Hăy s? d?ng seri khác!");
  223. return false;
  224. }
  225. //MyWebUtils.MyWebUtil.alert(Page, "K?t qu? lŕ: " + ketQua);
  226. conn.Close();
  227. comm.Dispose();
  228. }
  229. catch (Exception ex)
  230. {
  231. MyWebUtils.MyWebUtil.alert(Page, "Co loi khi kiem tra trung seri!");
  232. return false;
  233. }
  234. #endregion
  235. return true;
  236. }
  237. private void insertDetail()
  238. {
  239. SqlConnection conn = new SqlConnection(TTQTCommon.DBConnectionString);
  240. SqlCommand comm = new SqlCommand();
  241. SqlTransaction tran = null;
  242. try
  243. {
  244. conn.Open();
  245. tran = conn.BeginTransaction();
  246. comm.Connection = conn;
  247. comm.Transaction = tran;
  248. comm.CommandText = "KhoHang_KhaiBaoDauKy_Insert";
  249. comm.CommandType = CommandType.StoredProcedure;
  250. comm.Parameters.Clear();
  251. comm.Parameters.AddWithValue("@Seri", txtSeri.Text.ToUpper());
  252. comm.Parameters.AddWithValue("@NgayNhap", TTQTCommon.convertDateString(txtNgayNhap.Value));
  253. comm.Parameters.AddWithValue("@NhomHangId", cboNhomHang.SelectedValue);
  254. comm.Parameters.AddWithValue("@MaCN", UserInfo.Brn_Code);
  255. comm.Parameters.AddWithValue("@TenHang", txtTenHang.Text);
  256. comm.Parameters.AddWithValue("@GhiChu", txtGhiChu.Text);
  257. comm.Parameters.AddWithValue("@MaVach", txtMaVach.Text);
  258. comm.Parameters.AddWithValue("@GiaNhap", txtGiaNhap.Text.Replace(",", ""));
  259. comm.Parameters.AddWithValue("@GiaBanThamKhao", txtGiaBan.Text.Replace(",", ""));
  260. comm.Parameters.AddWithValue("@UserName", this.UserInfo.userName);
  261. int maDetail = TTQTCommon.ToInt32(comm.ExecuteScalar(), 0);
  262. if (maDetail > 0)
  263. {
  264. //txtNgayNhap.Value = "";
  265. //txtTenHang.Text = "";
  266. //txtGhiChu.Text = "";
  267. hienPanel(false, true, true, false);
  268. }
  269. comm.Transaction.Commit();
  270. detailGrid.DataBind();
  271. tran.Dispose();
  272. conn.Dispose();
  273. }
  274. catch (Exception loi)
  275. {
  276. //close connection
  277. comm.Transaction.Rollback();
  278. }
  279. }
  280. protected void cmdCapNhatDetail_Click(object sender, EventArgs e)
  281. {
  282. MyWebUtil.goToElement(Page, "chiTietHoaDon");
  283. if (!kiemTraLoiNhapDetail()) return;
  284. // N?u ?ang ? ch? ?? thęm m?i detail S? d?ng transaction ?? insert Detail vŕ ??i tr?ng thái các ?n ch? trong b?ng KhoAnChi
  285. insertDetail();
  286. bindDetail();
  287. hienPanel(false, false, true, false);
  288. }
  289. protected void cmdHuyBoDetail_Click(object sender, EventArgs e)
  290. {
  291. //bindDetail();
  292. MyWebUtils.MyWebUtil.goToElement(Page, "chiTietHoaDon");
  293. hienPanel(false, false, true, false);
  294. }
  295. protected void cboGioiTinh_SelectedIndexChanged(object sender, EventArgs e)
  296. {
  297. cboNhomHang.DataSourceID = "dsNhomHang";
  298. cboNhomHang.DataBind();
  299. }
  300. protected void cboGioiTinhLoc_SelectedIndexChanged(object sender, EventArgs e)
  301. {
  302. cboNhomHangLoc.DataSourceID = "dsNhomHangLoc";
  303. cboNhomHangLoc.DataBind();
  304. bindDetail();
  305. try
  306. {
  307. cboGioiTinh.SelectedValue = cboGioiTinhLoc.SelectedValue;
  308. }
  309. catch (Exception)
  310. {
  311. }
  312. }
  313. protected void cboNhomHangLoc_SelectedIndexChanged(object sender, EventArgs e)
  314. {
  315. bindDetail();
  316. try
  317. {
  318. cboNhomHang.SelectedValue = cboNhomHangLoc.SelectedValue;
  319. }
  320. catch (Exception)
  321. {
  322. }
  323. }
  324. }