erp商品管理业务逻辑封装(三十一)

     2022-09-13     115

关键词:

产品购进管理业务逻辑:

 public   class ProductBLL
    {

      /// <summary>
      /// 产品对象添加 并且返回产品编号
      /// </summary>
      /// <param name="viewpro">产品视图对象</param>
      public int BiotbProductAdd(ViewProInfo model)
      {
          int rowsAffected;
          SqlParameter[] parameters = {
					new SqlParameter("@ProID", SqlDbType.Int,4),
					new SqlParameter("@ProName", SqlDbType.NVarChar,100),
					new SqlParameter("@TypeID", SqlDbType.Int,4),
					new SqlParameter("@CustomerID", SqlDbType.Int,4),
					new SqlParameter("@ProLogo", SqlDbType.NVarChar,200),
					new SqlParameter("@Spec", SqlDbType.NVarChar,100),
					new SqlParameter("@ProFullName", SqlDbType.NVarChar,100),
					new SqlParameter("@ConfirmNo", SqlDbType.NVarChar,100),
					new SqlParameter("@Unit", SqlDbType.NVarChar,50),
					new SqlParameter("@ProSize", SqlDbType.NVarChar,50),
					new SqlParameter("@Grossweight", SqlDbType.NVarChar,50),
					new SqlParameter("@MadeEnterprise", SqlDbType.NVarChar,100),
					new SqlParameter("@Retailprice", SqlDbType.Money,8),
					new SqlParameter("@BidPrice", SqlDbType.Money,8),
					new SqlParameter("@TradePrice", SqlDbType.Money,8),
					new SqlParameter("@AdvicePrice", SqlDbType.Money,8),
					new SqlParameter("@CountyPrice", SqlDbType.Money,8),
					new SqlParameter("@CityPrice", SqlDbType.Money,8),
					new SqlParameter("@ProvincePrice", SqlDbType.Money,8),
					new SqlParameter("@NetPrice", SqlDbType.Money,8),
					new SqlParameter("@NetVipPrice", SqlDbType.Money,8),
					new SqlParameter("@NetMemberprice", SqlDbType.Money,8),
					new SqlParameter("@OurCompany", SqlDbType.NVarChar,100),
					new SqlParameter("@ChannelID", SqlDbType.Int,4),
					new SqlParameter("@Usefullife", SqlDbType.NVarChar,50),
					new SqlParameter("@SubmitTime", SqlDbType.DateTime),
					new SqlParameter("@StockMost", SqlDbType.NVarChar,100),
					new SqlParameter("@StockLess", SqlDbType.NVarChar,100),
					new SqlParameter("@Remark", SqlDbType.NVarChar,1000)};
          parameters[0].Direction = ParameterDirection.Output;
          parameters[1].Value = model.ProName;
          parameters[2].Value = model.TypeID;
          parameters[3].Value = model.CustomerID;
          parameters[4].Value = model.ProLogo;
          parameters[5].Value = model.Spec;
          parameters[6].Value = model.ProFullName;
          parameters[7].Value = model.ConfirmNo;
          parameters[8].Value = model.Unit;
          parameters[9].Value = model.ProSize;
          parameters[10].Value = model.Grossweight;
          parameters[11].Value = model.MadeEnterprise;
          parameters[12].Value = model.Retailprice;
          parameters[13].Value = model.BidPrice;
          parameters[14].Value = model.TradePrice;
          parameters[15].Value = model.AdvicePrice;
          parameters[16].Value = model.CountyPrice;
          parameters[17].Value = model.CityPrice;
          parameters[18].Value = model.ProvincePrice;
          parameters[19].Value = model.NetPrice;
          parameters[20].Value = model.NetVipPrice;
          parameters[21].Value = model.NetMemberprice;
          parameters[22].Value = model.OurCompany;
          parameters[23].Value = model.ChannelID;
          parameters[24].Value = model.Usefullife;
          parameters[25].Value = model.SubmitTime;
          parameters[26].Value = model.StockMost;
          parameters[27].Value = model.StockLess;
          parameters[28].Value = model.Remark;


          rowsAffected= DataBaseHelper.ExcuteSqlReturnInt("BiotbProduct_ADD", CommandType.StoredProcedure, parameters);
          if (rowsAffected != 0)
          {
              return int.Parse(parameters[0].ToString());
          }
          else
          {
              return 0;
          }

      
      }

      /// <summary>
      /// 修改产品对象
      /// </summary>
      /// <param name="model">产品对象</param>
      /// <returns>int</returns>
      public int BiotbProductUpdate(ViewProInfo model)
      {
          SqlParameter[] parameters = {
					new SqlParameter("@ProID", SqlDbType.Int,4),
					new SqlParameter("@ProName", SqlDbType.NVarChar,100),
					new SqlParameter("@TypeID", SqlDbType.Int,4),
					new SqlParameter("@CustomerID", SqlDbType.Int,4),
					new SqlParameter("@ProLogo", SqlDbType.NVarChar,200),
					new SqlParameter("@Spec", SqlDbType.NVarChar,100),
					new SqlParameter("@ProFullName", SqlDbType.NVarChar,100),
					new SqlParameter("@ConfirmNo", SqlDbType.NVarChar,100),
					new SqlParameter("@Unit", SqlDbType.NVarChar,50),
					new SqlParameter("@ProSize", SqlDbType.NVarChar,50),
					new SqlParameter("@Grossweight", SqlDbType.NVarChar,50),
					new SqlParameter("@MadeEnterprise", SqlDbType.NVarChar,100),
					new SqlParameter("@Retailprice", SqlDbType.Money,8),
					new SqlParameter("@BidPrice", SqlDbType.Money,8),
					new SqlParameter("@TradePrice", SqlDbType.Money,8),
					new SqlParameter("@AdvicePrice", SqlDbType.Money,8),
					new SqlParameter("@CountyPrice", SqlDbType.Money,8),
					new SqlParameter("@CityPrice", SqlDbType.Money,8),
					new SqlParameter("@ProvincePrice", SqlDbType.Money,8),
					new SqlParameter("@NetPrice", SqlDbType.Money,8),
					new SqlParameter("@NetVipPrice", SqlDbType.Money,8),
					new SqlParameter("@NetMemberprice", SqlDbType.Money,8),
					new SqlParameter("@OurCompany", SqlDbType.NVarChar,100),
					new SqlParameter("@ChannelID", SqlDbType.Int,4),
					new SqlParameter("@Usefullife", SqlDbType.NVarChar,50),
					new SqlParameter("@SubmitTime", SqlDbType.DateTime),
					new SqlParameter("@StockMost", SqlDbType.NVarChar,100),
					new SqlParameter("@StockLess", SqlDbType.NVarChar,100),
					new SqlParameter("@Remark", SqlDbType.NVarChar,1000)};
          parameters[0].Value = model.ProID;
          parameters[1].Value = model.ProName;
          parameters[2].Value = model.TypeID;
          parameters[3].Value = model.CustomerID;
          parameters[4].Value = model.ProLogo;
          parameters[5].Value = model.Spec;
          parameters[6].Value = model.ProFullName;
          parameters[7].Value = model.ConfirmNo;
          parameters[8].Value = model.Unit;
          parameters[9].Value = model.ProSize;
          parameters[10].Value = model.Grossweight;
          parameters[11].Value = model.MadeEnterprise;
          parameters[12].Value = model.Retailprice;
          parameters[13].Value = model.BidPrice;
          parameters[14].Value = model.TradePrice;
          parameters[15].Value = model.AdvicePrice;
          parameters[16].Value = model.CountyPrice;
          parameters[17].Value = model.CityPrice;
          parameters[18].Value = model.ProvincePrice;
          parameters[19].Value = model.NetPrice;
          parameters[20].Value = model.NetVipPrice;
          parameters[21].Value = model.NetMemberprice;
          parameters[22].Value = model.OurCompany;
          parameters[23].Value = model.ChannelID;
          parameters[24].Value = model.Usefullife;
          parameters[25].Value = model.SubmitTime;
          parameters[26].Value = model.StockMost;
          parameters[27].Value = model.StockLess;
          parameters[28].Value = model.Remark;

          return DataBaseHelper.ExcuteSqlReturnInt("BioProType_Update", CommandType.StoredProcedure, parameters);
      }


      /// <summary>
      /// 根据产品编号返回产品视图实体对象
      /// </summary>
      /// <param name="proid"></param>
      /// <returns></returns>
      public ViewProInfo getProViewByProId(string ProID)
      {
          SqlParameter[] parameters = {
					new SqlParameter("@ProID", SqlDbType.Int,4)
};
          parameters[0].Value = ProID;

          ViewProInfo model = new ViewProInfo();
          DataSet ds = DataBaseHelper.SelectSQLReturnDataSet("View_ProInfo_GetModel",CommandType.StoredProcedure,parameters);
          if (ds.Tables[0].Rows.Count > 0)
          {
              if (ds.Tables[0].Rows[0]["ProID"].ToString() != "")
              {
                  model.ProID = int.Parse(ds.Tables[0].Rows[0]["ProID"].ToString());
              }


              model.ProName = ds.Tables[0].Rows[0]["ProName"].ToString();
              if (ds.Tables[0].Rows[0]["TypeID"].ToString() != "")
              {
                  model.TypeID = int.Parse(ds.Tables[0].Rows[0]["TypeID"].ToString());
              }
              model.TypeName = ds.Tables[0].Rows[0]["TypeName"].ToString();
              if (ds.Tables[0].Rows[0]["CustomerID"].ToString() != "")
              {
                  model.CustomerID = int.Parse(ds.Tables[0].Rows[0]["CustomerID"].ToString());
              }
              model.CustomerName = ds.Tables[0].Rows[0]["CustomerName"].ToString();
              model.ProLogo = ds.Tables[0].Rows[0]["ProLogo"].ToString();
              model.Spec = ds.Tables[0].Rows[0]["Spec"].ToString();
              model.ProFullName = ds.Tables[0].Rows[0]["ProFullName"].ToString();
              model.ConfirmNo = ds.Tables[0].Rows[0]["ConfirmNo"].ToString();
              model.Unit = ds.Tables[0].Rows[0]["Unit"].ToString();
              model.ProSize = ds.Tables[0].Rows[0]["ProSize"].ToString();
              model.Grossweight = ds.Tables[0].Rows[0]["Grossweight"].ToString();
              model.MadeEnterprise = ds.Tables[0].Rows[0]["MadeEnterprise"].ToString();
              if (ds.Tables[0].Rows[0]["Retailprice"].ToString() != "")
              {
                  model.Retailprice = decimal.Parse(ds.Tables[0].Rows[0]["Retailprice"].ToString());
              }
              if (ds.Tables[0].Rows[0]["BidPrice"].ToString() != "")
              {
                  model.BidPrice = decimal.Parse(ds.Tables[0].Rows[0]["BidPrice"].ToString());
              }
              if (ds.Tables[0].Rows[0]["TradePrice"].ToString() != "")
              {
                  model.TradePrice = decimal.Parse(ds.Tables[0].Rows[0]["TradePrice"].ToString());
              }
              if (ds.Tables[0].Rows[0]["AdvicePrice"].ToString() != "")
              {
                  model.AdvicePrice = decimal.Parse(ds.Tables[0].Rows[0]["AdvicePrice"].ToString());
              }
              if (ds.Tables[0].Rows[0]["CountyPrice"].ToString() != "")
              {
                  model.CountyPrice = decimal.Parse(ds.Tables[0].Rows[0]["CountyPrice"].ToString());
              }
              if (ds.Tables[0].Rows[0]["CityPrice"].ToString() != "")
              {
                  model.CityPrice = decimal.Parse(ds.Tables[0].Rows[0]["CityPrice"].ToString());
              }
              if (ds.Tables[0].Rows[0]["ProvincePrice"].ToString() != "")
              {
                  model.ProvincePrice = decimal.Parse(ds.Tables[0].Rows[0]["ProvincePrice"].ToString());
              }
              if (ds.Tables[0].Rows[0]["NetPrice"].ToString() != "")
              {
                  model.NetPrice = decimal.Parse(ds.Tables[0].Rows[0]["NetPrice"].ToString());
              }
              if (ds.Tables[0].Rows[0]["NetVipPrice"].ToString() != "")
              {
                  model.NetVipPrice = decimal.Parse(ds.Tables[0].Rows[0]["NetVipPrice"].ToString());
              }
              if (ds.Tables[0].Rows[0]["NetMemberprice"].ToString() != "")
              {
                  model.NetMemberprice = decimal.Parse(ds.Tables[0].Rows[0]["NetMemberprice"].ToString());
              }
              model.OurCompany = ds.Tables[0].Rows[0]["OurCompany"].ToString();
              if (ds.Tables[0].Rows[0]["ChannelID"].ToString() != "")
              {
                  model.ChannelID = int.Parse(ds.Tables[0].Rows[0]["ChannelID"].ToString());
              }
              model.ChannelName = ds.Tables[0].Rows[0]["ChannelName"].ToString();
              model.Usefullife = ds.Tables[0].Rows[0]["Usefullife"].ToString();
              if (ds.Tables[0].Rows[0]["SubmitTime"].ToString() != "")
              {
                  model.SubmitTime = DateTime.Parse(ds.Tables[0].Rows[0]["SubmitTime"].ToString());
              }
              model.StockMost = ds.Tables[0].Rows[0]["StockMost"].ToString();
              model.StockLess = ds.Tables[0].Rows[0]["StockLess"].ToString();
              model.Remark = ds.Tables[0].Rows[0]["Remark"].ToString();
              return model;
          }
          else
          {
              return null;
          }
      }

    }

 商品类型的业务:

public  class BioProTypeBLL
    {
      /// <summary>
      /// 添加一个产品类型对象
      /// </summary>
      /// <param name="model"></param>
      /// <returns></returns>
      public int ProTypeAdd(BioProType model)
      {
          SqlParameter[] parameters = {				
					new SqlParameter("@ParentTypeID", SqlDbType.Int,4),
					new SqlParameter("@TypeName", SqlDbType.NVarChar,100)};
       
          parameters[0].Value = model.ParentTypeID;
          parameters[1].Value = model.TypeName;

          return DataBaseHelper.ExcuteSqlReturnInt("BioProType_Add", CommandType.StoredProcedure, parameters);
          
      }
      /// <summary>
      /// 产品类型修改
      /// </summary>
      /// <param name="model"></param>
      /// <returns></returns>
      public int ProTypeUpdate(BioProType model)
      {
          SqlParameter[] parameters = {
					new SqlParameter("@TypeID", SqlDbType.Int,4),
					new SqlParameter("@ParentTypeID", SqlDbType.Int,4),
					new SqlParameter("@TypeName", SqlDbType.NVarChar,100)};
          parameters[0].Value = model.TypeID;
          parameters[1].Value = model.ParentTypeID;
          parameters[2].Value = model.TypeName;

          return DataBaseHelper.ExcuteSqlReturnInt("BioProType_Update", CommandType.StoredProcedure, parameters);

      }

      /// <summary>
      /// 根据产品类型编号返回产品类型对象
      /// </summary>
      /// <param name="id"></param>
      /// <returns></returns>
      public BioProType getProTypeByTypeID(string id)
      {
         SqlDataReader reader= SqlComm.GetDataReaderByCondition("dbo.BioProType", "*", " TypeID=" + id);
         BioProType type = new BioProType();
         if (reader.Read())
         {
             if (reader["TypeID"] != null)
             {
                 type.TypeID = int.Parse(reader["TypeID"].ToString());
             }

             if (reader["ParentTypeID"] != null)
             {
                 type.ParentTypeID = int.Parse(reader["ParentTypeID"].ToString());
             }
             if (reader["TypeName"] != null)
             {
                 type.TypeName = reader["TypeName"].ToString();
             }
         }
         return type;
      }
    }

 商品图片的BLL:

/// <summary>
       /// 添加一条图片对象
       /// </summary>
       /// <param name="images"></param>
       /// <returns></returns>
       public int BiotbProImgsAdd(BiotbProImgs images)
       {
           SqlParameter[] parameters = {
					new SqlParameter("@ProID", SqlDbType.Int,4),
					new SqlParameter("@ProImg", SqlDbType.NVarChar,200)};

           parameters[0].Value = images.ProID;
           parameters[1].Value = images.ProImg;

           return DataBaseHelper.ExcuteSqlReturnInt("BiotbProImgs_ADD", CommandType.StoredProcedure, parameters);
       
       }

添加产品类型的页面:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ProTypeList.aspx.cs" Inherits="BioErpWeb.PersonList.ProTypeList" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script type="text/javascript">
        function ReturnValue(noteid) {
            if (noteid != NaN || noteid != 0) {
                window.returnValue = noteid;
                window.close();
            } else {
                window.returnValue = 0;
                window.close();
            }
            
       }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:TreeView ID="TreeView1" runat="server">
        </asp:TreeView>
    </div>
    </form>
</body>
</html>

 选择的js:

function showProType() {
    var re = showModalDialog("../../PersonList/ProTypeList.aspx", "", "dialogWidth=350px;dialogHeight=400px");
    var obj = window.event.srcElement;
    var td = obj.parentNode;
    var txts = td.getElementsByTagName(‘input‘);
    if (re == null || re == "") {

        if (txts[0].value == "" || txts[0].value == null) {
            txts[0].value = "请选择";
        }
    }
    else {
        txts[0].value = re;
    }
}

 后台代码:

  protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
              CreateTreeVeiw();
            }

        }

        DataSet ds;
        DataTable dt;

        private void CreateTreeVeiw()
        {

            ds = SqlComm.GetDataByCondition("dbo.BioProType", "TypeID,ParentTypeID,TypeName", "1=1");

            dt = new DataTable();
            dt = ds.Tables[0];
            if (dt.Rows.Count == 0)
            {
                Response.Write("<span style=‘color:red;‘>数据库中没有产品类型数据,请直接输入0即可…</span>");
                return;
            }

            DataView dv = new DataView(dt, "ParentTypeID=0 or ParentTypeID=null", "TypeID", DataViewRowState.CurrentRows);
            //遍历父节点
            foreach (DataRowView d in dv)
            {
                TreeNode n = new TreeNode(d["TypeName"].ToString(), d["TypeID"].ToString());
                n.ImageToolTip = dt.TableName;
                n.NavigateUrl = "javascript:ReturnValue(" + d["TypeID"].ToString() + ");";
                TreeView1.Nodes.Add(n);
                n.Expanded = false;
                //根据父节点筛选出对应的子节点
                dv = new DataView(dt, " ParentTypeID=‘" + d["TypeID"] + "‘", "TypeID", DataViewRowState.CurrentRows);
                if (dv.Count > 0)
                {
                    CreateSubTreeView(n, dv);

                }
            }

        }

        /// <summary>
        /// 添加子项
        /// </summary>
        /// <param name="n"></param>
        /// <param name="dv"></param>
        private void CreateSubTreeView(TreeNode n, DataView dv)
        {
            foreach (DataRowView d in dv)
            {
                TreeNode cn = new TreeNode(d["TypeName"].ToString(), d["TypeID"].ToString());
                cn.NavigateUrl = "javascript:ReturnValue(" + d["TypeID"].ToString() + ");";
                n.ChildNodes.Add(cn);
                DataView sdv = new DataView(dt, "ParentTypeID=‘" + d["TypeID"] + "‘", "TypeID", DataViewRowState.CurrentRows);
                if (sdv.Count > 0)
                {
                    CreateSubTreeView(cn, sdv);
                }

            }
        }

 类型的添加:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ProTypeInsert.aspx.cs"
    Inherits="BioErpWeb.WholeSaleSystem.Product.ProTypeInsert" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <link href="../../Styles/ERPBaseStyle.css" rel="stylesheet" type="text/css" />
    <script src="../../Scripts/jquery-1.4.1.js" type="text/javascript"></script>
    <script src="../../Scripts/jquery.validate.js" type="text/javascript"></script>
    <script src="../../Scripts/ValidateMessage_ZW.js" type="text/javascript"></script>
    <script src="../../Scripts/validateExtender.js" type="text/javascript"></script>
    <script src="../../Scripts/jquery.metadata.js" type="text/javascript"></script>
    <script src="../../JS/ProTypeChoose.js" type="text/javascript"></script>
    <style type="text/css">
        .style1
        {
            height: 22px;
        }
    </style>

    <script type="text/javascript">
        $().ready(function () {
            $("#form1").validate();
          });
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <table class="maintable">
            <tr>
                <td colspan="2" class="titlebar">
                    产品类型添加
                </td>
            </tr>
            <tr>
                <td class="style1">
                    类型名称
                </td>
                <td class="style1">
                    <asp:TextBox ID="txtTypeName" CssClass="{required:true}" runat="server" ></asp:TextBox>
                </td>
            </tr>
            <tr>
                <td class="style1">
                    所属大类</td>
                <td class="style1">
                    <asp:TextBox ID="txtSupertTypeID" 
                        CssClass="{required:true, number:true, min:0}" runat="server" 
                        ></asp:TextBox><input type="button" value="选择" onclick="showProType()"/>
                  
                    <asp:Label ID="Label1" runat="server" ForeColor="Red" Text="(注:如果为0代表顶级父类)"></asp:Label>
                </td>
            </tr>

            <tr>
                <td colspan="2" class="bottomtd">
                    <asp:Button ID="btnSubmit" runat="server" Text="产品类型保存" OnClick="btnSubmit_Click" />
                    <asp:Button ID="btnReturn" runat="server" CausesValidation="false" UseSubmitBehavior="false" Text="返回列表" OnClick="btnReturn_Click" />
                </td>
            </tr>
        </table>
        <br />
    </div>
    </form>
</body>
</html>

 添加的代码:

BioProTypeBLL typebll=new BioProTypeBLL();

            BioProType type = new BioProType();
            type.ParentTypeID = int.Parse(this.txtSupertTypeID.Text.Trim()) ;
            type.TypeName = this.txtTypeName.Text;
            if (typebll.ProTypeAdd(type) != 0)
            {
                ClientScript.RegisterStartupScript(this.GetType(), "test", "alert(‘添加类型成功‘)", true);
                return;
            }

 

第一百三十一节,javascript,封装库--css

JavaScript,封装库--CSS将封装库里的方法,改成了原型添加方法增加4个方法tian_jia_class()方法,给获取到的元素添加class属性,参数是class属性值,可以连缀1yi_chu_class()方法,给获取到的元素移除class属性,参数是要移除的class属性... 查看详情

erp商品管理系统哪个比较好

不同性质的商品在生产过程中所需要的工艺流程不尽相同,有些生产公司内部资源有待优化,车间物料生产成本居高不下,各个部门之间的协作有待提升。打破生产过程中的信息孤岛、整合企业资源,集成化管控多渠道销售、采... 查看详情

工作那些事(三十一)如何带好一个项目团队

很多人写了几年代码都想去做管理,其实做管理要处理的事情更多,要协调内部和外部资源,要会踢皮球,把问题抛给别的部门,与其他主管扯来扯去。那如何才能带好一个项目团队呢。要带好一个团队,首先是领导的支持和信... 查看详情

erp合同管理(二十六)

需要实现的基本业务:相关的用例图:相关业务的封装:相关的约定:合同信息添加业务流程:添加的存储过程SETQUOTED_IDENTIFIERONSETANSI_NULLSONGO--------------------------------------用途:增加一条记录--项目名称:--说明:--时间:2011/11/11... 查看详情

(三十)商品管理-添加商品(上传图片)

添加商品(上传图片)1.修改页面上添加连接/store/adminProduct?method=addUI2.在addUI请求转发到添加页面3.在表单页面上修改action:/store/addProductServlet提交方式:method="post"添加enctype属性:enctype="multipart/form-data"给每个字段添加name属性4.addProductS... 查看详情

erp产品销售发货--发货管理(四十一)

视图:CREATEVIEW[dbo].[View_BioSendAppInfo]ASSELECT SendId, BillNo, Subject, DepartMentID, Departname=dbo.FN_GetDepartMentByID(DepartMentID), AppUserId, AppUserName=dbo.getUserNameByUserID(AppUserId), Re 查看详情

2018-07-26第三十一次课(代码片段)

...三、date命令用法四、shell脚本中的变量五、hell脚本中的逻辑判断六、文件目录属性判断七、if特殊用法八、case判断九、for循环十、while循环十一、break跳出循环十二、continue结束本次循环十三、exit退出整个脚本十四、扩展一、shel... 查看详情

javaweb_(mvc)管理员后台商品查询demo(代码片段)

  MVC分层实现管理员后台商品查询   MVC层即modelviewcontroller  Model(模型):模型代表着核心的业务逻辑和数据(不要理解成Model只是实体类)  View(视图):视图应该关注与如何展示数据,而不应该包含任何业务... 查看详情

文献综述十一:基于商品的商业超市管理系统的改进

一、基本信息  标题:基于商品的商业超市管理系统的改进  时间:2017  出版源:潍坊学院学报  文件分类:对商品系统的研究二、研究背景  根据超市实际需求进行扩展,由重结果向行为转为重过程控制,实现超... 查看详情

erp中的地区管理

地区管理地区管理主要实现地区数据的添加、编辑、查看、启用、禁用等功能,另外还包含地区选择控件封装。业务功能点:地区数据查看:地区列表树状展现,列表增加省、市、区、县、乡图标。地区选择控件:选择控件为多... 查看详情

高性能高可用高扩展erp系统架构设计

...。作为一个ERP系统,系统主要功能模块无非是订单管理、商品管理、生产采购、仓库管理、物流管理、财务管理等等。作为一个管理系统,大家的一般开发习惯就是使用.Net或Java技术,建立一个单块(单进程)架构的应用,只有... 查看详情

分布式服务化的erp系统架构设计

...。作为一个ERP系统,系统主要功能模块无非是订单管理、商品管理、生产采购、仓库管理、物流管理、财务管理等等。作为 查看详情

清晰架构(cleanarchitecture)的go微服务:事物管理(代码片段)

...务层中的事务,我试图在Go中查找类似Spring的声明式事务管理,但是没找到,所以我决定自己写一个。事务很容易在Go中实现,但很难做到正确地实现。需求:将业务逻辑与事务代码分开。在编写业务用例时,开发者应该只需考虑... 查看详情

初级算法探索——动态规划篇(三十一)

未完待续 查看详情

初级算法探索——动态规划篇(三十一)

未完待续 查看详情

开始写游戏---第三十一篇

开始写游戏---第三十一篇  今天:    1、增加物品使用组件    2、增加物品使用功能、增加蓝条    上图:    1、增加物品使用组件          效果图:              代码: ... 查看详情

出差(三十一)

      今天是一个好日子,又赶上周末,双喜临门。好日子的原因是今天是上家公司的payday,这次到账最后一笔工资,算是跟公司划清界线了。       换了新的环境,payday改到了每月... 查看详情

mysql第三十一篇文章~jvm的知识与优化

...bsp;1对于大多数应用来说,Java堆(JavaHeap)是Java虚拟机所管理的内存中最大的一块。Java堆是被所有线程共享的一块内存区域,在虚拟机启动时创建。此内存区域的唯一目的就是存放对象实例,几乎所有的对象实例都在这里分配... 查看详情