Browse Source

新增指派共创记录

zhuyiyi 13 hours ago
parent
commit
a97cd9a085

+ 74 - 0
BizCom/Dao/CeErpAssignLog.cs

@@ -0,0 +1,74 @@
+using Castle.ActiveRecord;
+using NHibernate.Criterion;
+using System;
+using System.Text;
+
+namespace BizCom
+{
+    [ActiveRecord("CE_ErpAssignLog")]
+    public class CeErpAssignLog : ComBase<CeErpAssignLog>
+    {
+
+        /// <summary>
+        /// 
+        /// </summary>
+        [PrimaryKey(PrimaryKeyType.Native)]
+        public int ID { get; set; }
+
+        private string _ctid = "";
+        /// <summary>
+        /// 订单
+        /// </summary>
+        [Property]
+        public string ctid
+        {
+            get { return _ctid; }
+            set { _ctid = value; }
+        }
+
+        private int _userid = 0;
+
+        /// <summary>
+        /// 用户ID
+        /// </summary>
+        [Property]
+        public int userid
+        {
+            get { return _userid; }
+            set { _userid = value; }
+        }
+
+        private string _seller_memo = "";
+        /// <summary>
+        /// 文件名
+        /// </summary>
+        [Property]
+        public string seller_memo
+        {
+            get { return _seller_memo; }
+            set { _seller_memo = value; }
+        }
+
+        private string _reason = "";
+        /// <summary>
+        /// 理由
+        /// </summary>
+        [Property]
+        public string reason
+        {
+            get { return _reason; }
+            set { _reason = value; }
+        }
+
+        private DateTime _createtime = DateTime.Now;
+        /// <summary>
+        /// 时间
+        /// </summary>
+        [Property]
+        public DateTime createtime
+        {
+            get { return _createtime; }
+            set { _createtime = value; }
+        }
+    }
+}

+ 1 - 1
SiteCore/Handler/sync.getbase.cs

@@ -122,7 +122,7 @@ namespace SiteCore.Handler
                 sqlbd.AppendFormat(") as bname,pemShop from view_ErpUser");
                 sqlbd.AppendFormat(" where (PostCode like '%Designer%' or PostCode like '%Place%'or PostCode like '%Director%' or ID={1} or PostCode='SysAdmin' or PostCode='Summarize' or PostCode='CustomerMr')  and charindex((select ','+convert(varchar(10),ID)+',' from CE_ErpShop where ShopName='{0}'),','+pemShop+',')>0 and isOpen=1", penShopName, CurrentUser.UserID);
             }
-            if (cusCode != "SysAdmin" && cusCode != "Summarize" && CurrentUser.UserID != 73 && CurrentUser.UserID != 4516)
+            if (cusCode != "SysAdmin" && cusCode != "Summarize" && CurrentUser.UserID != 159 && CurrentUser.UserID != 4516 && CurrentUser.UserID != 157)
             {
                 sqlbd.AppendFormat(" and ID <> 3542");
             }

File diff suppressed because it is too large
+ 0 - 0
SiteCore/Handler/sync.order.cs


+ 1 - 1
SiteCore/Handler/sync.orderReport.cs

@@ -1920,7 +1920,7 @@ namespace SiteCore.Handler
             }
 
             StringBuilder sql = new StringBuilder();
-            sql.AppendFormat("SELECT o.AfterSaleUserId AS UserId, u.name AS UserName, COUNT(*) AS Total, SUM(CASE WHEN o.AfterSaleState IN ( 1,2 ) THEN 1 ELSE 0 END) AS InProgress, SUM(CASE WHEN TextResult in ('联系不上客户', '待处理','退款','退款+退快递费' ) THEN 0 ELSE 1 END) AS Completed,COUNT ( CASE WHEN o.AfterSaleBackReason != '' THEN 1 END ) AS back, SUM ( a.ChangeNum ) AS ChangeNum ,SUM ( a.ReprintOut ) AS ReprintOut,SUM ( a.PreTimeOut ) AS PreTimeOut,SUM ( a.DisagreeTimeOut ) AS DisagreeTime  ,COUNT ( CASE WHEN a.IsBad > 0 THEN 1 END ) AS isBad,COUNT ( CASE WHEN a.IsComplain > 0 THEN 1 END ) AS isComplain  FROM CE_ErpTradeCell o LEFT JOIN Ce_ErpTradeAfterSaleExtend a ON a.tid = o.ctid INNER JOIN CE_ErpUser u ON o.AfterSaleUserId = u.ID WHERE   o.AfterSaleState >= 1 ");
+            sql.AppendFormat("SELECT o.AfterSaleUserId AS UserId, u.name AS UserName, COUNT(*) AS Total, SUM(CASE WHEN o.AfterSaleState IN ( 1,2 ) THEN 1 ELSE 0 END) AS InProgress, SUM(CASE WHEN TextResult in ('联系不上客户', '待处理','退款','退款+退快递费' ) or  o.AfterSaleState IN ( 1, 2 ) THEN 0 ELSE 1 END) AS Completed,COUNT ( CASE WHEN o.AfterSaleBackReason != '' THEN 1 END ) AS back, SUM ( a.ChangeNum ) AS ChangeNum ,SUM ( a.ReprintOut ) AS ReprintOut,SUM ( a.PreTimeOut ) AS PreTimeOut,SUM ( a.DisagreeTimeOut ) AS DisagreeTime  ,COUNT ( CASE WHEN a.IsBad > 0 THEN 1 END ) AS isBad,COUNT ( CASE WHEN a.IsComplain > 0 THEN 1 END ) AS isComplain  FROM CE_ErpTradeCell o LEFT JOIN Ce_ErpTradeAfterSaleExtend a ON a.tid = o.ctid INNER JOIN CE_ErpUser u ON o.AfterSaleUserId = u.ID WHERE   o.AfterSaleState >= 1 ");
             if (date1.Length > 0)
             {
                 sql.AppendFormat(" AND o.HandleTime >= '{0}'  AND o.HandleTime < '{1}'", date1, date2);

+ 1 - 1
SiteCore/taobao/commonHelper.cs

@@ -3983,7 +3983,7 @@ namespace SiteCore
         {
             Thread thread = new Thread(new ThreadStart(() =>
             {
-                string url = "http://47.122.57.102:8400/admin-api/erp/open/diansan/notice/order";
+                string url = "http://api.industry.lingtao8.com/admin-api/erp/open/diansan/notice/order";
                 HttpClient client = new HttpClient();
                 var request = new HttpRequestMessage
                 {

+ 111 - 0
Web/ECharts/AssignLog.aspx

@@ -0,0 +1,111 @@
+<%@ Page Title="" Language="C#" MasterPageFile="~/MasterPage/ErpView.master" AutoEventWireup="true" CodeFile="AssignLog.aspx.cs" Inherits="ECharts_AssignLog" %>
+
+<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="Server">
+    <script type="text/javascript">
+        //查询按钮
+        function searchFn() {
+            var form = new mini.Form("#ctl00_f_all");
+            var data = form.getData(true, false);
+            var s = data;
+
+            grid.load({
+                apdate1: s.assigndate1, apdate2: s.assigndate2, ctid: s.tid
+            });
+        }
+
+
+        function onSearchCheckedChanged(e) {
+            var btn = e.sender;
+            var checked = btn.getChecked();
+            var text = btn.getText();
+            var form = new mini.Form("#ctl00_f_all");
+            var data = form.getData(true, false);
+            var s = data;
+
+            if (checked) {
+                var stime = "";
+                var etime = "";
+                var timearr = [];
+                if (text == "本日") {
+                    var day = getCurDate();
+                    timearr.push(day);
+                    timearr.push(day);
+                }
+                else if (text == "本周") {
+                    timearr = getWeekStartAndEnd();
+                }
+                else if (text == "本月") {
+                    timearr = getMonthStartAndEnd();
+                }
+                stime = timearr[0];
+                etime = timearr[1];
+                grid.load({
+                    apdate1: stime, apdate2: etime, ctid: s.tid
+                });
+            }
+
+            mini.get("aSearchMonth").setChecked(false);
+            mini.get("aSearchDay").setChecked(false);
+            mini.get("aSearchWeek").setChecked(false);
+        }
+
+
+        //清除查询内容
+        function clearFn() {
+            //$("#ctl00_f_all").find("input").val("");
+            var form = new mini.Form("#ctl00_f_all");
+            form.clear();
+
+            mini.get("aSearchMonth").setChecked(false);
+            mini.get("aSearchDay").setChecked(false);
+            mini.get("aSearchWeek").setChecked(false);
+        }
+
+        function onDrawSummaryCell(e) {
+            var result = e.result;
+            var rdata = result.data;
+            //console.log("result:", result);
+            var totalPayment = 0;
+            for (var item of rdata) {
+                totalPayment += parseFloat(item.payment);
+            }
+            var grid = e.sender;
+            totalPayment = Math.floor(totalPayment * 100) / 100;
+            //客户端汇总计算
+            if (e.field == "payment") {
+                var s = "<span style='color:Brown;'>"
+                s += "合计:" + totalPayment
+                    + "</span>";
+                e.cellHtml = s;
+            }
+        }
+
+        function createtimeRenderer(e) {
+            var grid = e.sender;
+            var record = e.record;
+
+            var html = "<div style=\"display:flex;flex-direction:column;\">";
+            html += ("<div>" + formatCommonDate(record.createtime) + "</div>");
+            html += "</div>";
+            return html;
+        }
+
+    </script>
+</asp:Content>
+<asp:Content ID="Content2" ContentPlaceHolderID="btn" runat="Server">
+    <a id="btnExport" runat="server" class="mini-button mini-button-success new_use_btn_green" iconcls="icon-folder" onclick="exportFn()">导出</a>
+</asp:Content>
+<asp:Content ID="Content4" ContentPlaceHolderID="content" runat="Server">
+    <div class="mini-fit">
+        <div id="m_grid" class="mini-datagrid" style="width: 100%; height: 100%;" showsummaryrow="true" ondrawsummarycell="onDrawSummaryCell" contextmenu="#gridMenu" showemptytext="true" emptytext="暂无记录" url="../handler/sync.ashx?t=get_erp_assignLog">
+            <div property="columns">
+                <div field="ctid" width="100" align="left" headeralign="center">订单编号</div>
+                <div field="seller_memo" width="200" align="left" headeralign="center">文件名</div>
+                <div field="reason" width="100" align="left" headeralign="center">理由</div>
+                <div field="userName" width="100" align="left" headeralign="center">操作人</div>
+                <div field="createtime" width="100" align="left" headeralign="center" renderer="createtimeRenderer">时间</div>
+            </div>
+        </div>
+    </div>
+</asp:Content>
+

+ 46 - 0
Web/ECharts/AssignLog.aspx.cs

@@ -0,0 +1,46 @@
+using SiteCore;
+using SQLData;
+using System;
+using System.Collections.Generic;
+using System.Data;
+using System.Linq;
+using System.Text;
+using System.Web;
+using System.Web.UI;
+using System.Web.UI.WebControls;
+using Utils.Serialization;
+
+public partial class ECharts_AssignLog : BasePage
+{
+    protected override void OnPreInit(EventArgs e)
+    {
+        _repTitle = "指派记录";
+        PmTag = "assignLog";
+        //_selfCheckPermission = true;
+        _filterItem = "order,assign_time";
+        _keyFilterVisible = false;
+        _addVisible = false;
+        _filterDateBtn = false;
+        _filterDateBtn = true;
+    }
+
+    protected void Page_Load(object sender, EventArgs e)
+    {
+        if (!IsPostBack)
+        {
+            //StringBuilder sql = new StringBuilder();
+            //sql.AppendFormat("select * from s_runinfotype");
+            //DataSet ds = DbHelper.DbConn.ExecuteDataset(sql.ToString());
+            //DataTable dt = ds.Tables[0];
+            //AppendScript("tData=" + JsonString.DataTable2Json(dt) + ";");
+
+            //selType.DataSource = dt;
+            //selType.DataValueField = "ID";
+            //selType.DataTextField = "Name";
+            //selType.DataBind();
+        }
+        //foreach (DataRow dr in dt.Rows)
+        //{
+        //}
+    }
+}

+ 26 - 2
Web/EOrder/OrderList.aspx

@@ -713,12 +713,18 @@
     </div>
 
 
-    <div id="distribute_win" class="mini-window" title="指派设计师" style="width: 360px; height: 180px; position: relative; display: none">
+    <div id="distribute_win" class="mini-window" title="指派设计师" style="width: 360px; height: 200px; position: relative; display: none">
         <table class="win_tb" border="0" cellpadding="0" cellspacing="1">
             <tr>
                 <td class="td1">设计师</td>
                 <td class="td2">
-                    <input id="txtDesign" class="mini-combobox" style="width: 90%;" textfield="bname" valuefield="id" allowinput="true" valuefromselect="true" url="../handler/sync.ashx?t=get_sel_pen_designer" />
+                    <input id="txtDesign" class="mini-combobox" style="width: 90%;" textfield="bname" valuefield="id" allowinput="true" valuefromselect="true" url="../handler/sync.ashx?t=get_sel_pen_designer" onvaluechanged="designUserChanged" />
+                </td>
+            </tr>
+            <tr style="display: none">
+                <td class="td1">理由</td>
+                <td class="td2">
+                    <input id="selectReason" class="mini-combobox" style="width: 80%;" textfield="title" valuefield="title" allowinput="true" valuefromselect="true" onvaluechanged="returnreasonChanged" />
                 </td>
             </tr>
             <tr>
@@ -1441,6 +1447,24 @@
             tagIds.push(trId);
         }
 
+        let returnreason_list = [{
+            title: "菜品卡"
+        }, {
+            title: "多款少数量卡片,3款以上"
+        }, {
+            title: "客户要求要之前的设计"
+        }, {
+            title: "手绘/原创"
+        },]
+        $(() => {
+            mini.get("selectReason").setData(returnreason_list);
+        });
+
+        function designUserChanged(e) {
+            if (e.value == 3542 && (userId == 159 || userId == 157)) {
+                $("#selectReason").parents("tr").show();
+            }
+        }
     </script>
 
     <div class="image_large" onclick="hideImage(this)"></div>

+ 10 - 0
Web/EOrder/js/p_order.js

@@ -479,6 +479,9 @@ function distributeFn() {
             }
         }
     }
+    mini.get("selectReason").setValue("");
+    mini.get("txtDesign").setValue("");
+    $("#selectReason").parents("tr").hide();
     var Url = "../handler/sync.ashx?t=get_sel_pen_designer&shop=" + shopName;
     mini.get("txtDesign").setUrl(Url);
     if (ids.length > 0) {
@@ -497,6 +500,13 @@ function saveDistributeFn() {
     var parms = new Object();
     parms.ctid = edit_id;
     parms.DesignUserId = mini.get("txtDesign").getValue();
+    parms.reason = mini.get("selectReason").getValue();
+    if (userId == 159 || userId == 157) {
+        if (parms.DesignUserId == 3542 && parms.reason == "") {
+            alert("指派共创需要填写理由");
+            return;
+        }
+    }
     if (parms.DesignUserId.length <= 0) {
         alert("设计师不能为空");
         return;

+ 1 - 0
Web/Global.asax

@@ -116,6 +116,7 @@
                                  typeof(CeErpPackData),
                                  typeof(CeErpInvoice),
                                  typeof(CeErpPackDataItem),
+                                 typeof(CeErpAssignLog),
                                  typeof(CeErpSupplierProductTime),
                                  typeof(CeErpTradeCellFile),
                                  typeof(CeErpDataSendOrderInfo)

Some files were not shown because too many files changed in this diff