Forráskód Böngészése

Merge branch 'master' of http://git.iamberry.com/hexiugang/iamberry-common-parent

wangxiaoming 6 éve
szülő
commit
c32cc77289

+ 9 - 0
watero-rst-core/src/main/java/com.iamberry.rst.core/cm/StoreInfo.java

@@ -17,6 +17,15 @@ public class StoreInfo implements Serializable {
     private Integer storeStatus;    //状态
     private String storeRemark;     //备注
     private Date storeCreateTime;   //创建时间
+    private CompanyInfo companyInfo;
+
+    public CompanyInfo getCompanyInfo() {
+        return companyInfo;
+    }
+
+    public void setCompanyInfo(CompanyInfo companyInfo) {
+        this.companyInfo = companyInfo;
+    }
 
     public Integer getStoreId() {
         return storeId;

+ 7 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/CompanyInfoService.java

@@ -14,4 +14,11 @@ public interface CompanyInfoService {
      */
     List<CompanyInfo> listCompanyInfo(CompanyInfo companyInfo);
 
+    /**
+     * 根据id查询销售公司信息
+     * @param companyId
+     * @return
+     */
+    CompanyInfo getCompanyInfoById(Integer companyId);
+
 }

+ 14 - 0
watero-rst-interface/src/main/java/com/iamberry/rst/faces/cm/StoreInfoService.java

@@ -29,4 +29,18 @@ public interface StoreInfoService {
      * @return
      */
     StoreInfo getStoreInfoByEfastId(String storeEfast);
+
+    /**
+     * 修改店铺信息
+     * @param storeInfo
+     * @return
+     */
+    Integer updateStoreInfo(StoreInfo storeInfo);
+
+    /**
+     * 添加店铺信息
+     * @param storeInfo
+     * @return
+     */
+    Integer addStoreInfo(StoreInfo storeInfo);
 }

+ 6 - 12
watero-rst-service/src/main/java/com/iamberry/rst/service/approval/ApprovalOrderServiceImpl.java

@@ -57,7 +57,7 @@ public class ApprovalOrderServiceImpl implements ApprovalOrderService {
         approvalInfo.setApprovalStatus(1);
         approvalInfo.setAdminId(admin.getAdminId());
         approvalInfo.setApprovalApplicant(approvalProduction.getApplicantName());
-        approvalInfo.setActivitiId(tasknfo.get("pid").toString());
+        approvalInfo.setActivitiId(tasknfo.get("key").toString());
         approvalInfo.setApprovalDetails("html内容");
         approvalInfo.setApprovalRemark(approvalProduction.getProductionRemark());
         int returnValue = approvalOrderMapper.insertApprovalInfo(approvalInfo);
@@ -83,6 +83,9 @@ public class ApprovalOrderServiceImpl implements ApprovalOrderService {
             approvalOrderMapper.insertProductionContract(approvalProductionContract);
         }
         //封装生产审批产品项
+        for(ApprovalProductionItem approvalProductionItem : listApprovalProductionItem){
+            approvalProductionItem.setProductionId(approvalProduction.getProductionId());
+        }
         int returnValue3 = approvalOrderMapper.insertItem(listApprovalProductionItem);
         if(returnValue3 < 1){
             throw new RuntimeException("添加生产审批产品项信息失败");
@@ -103,7 +106,7 @@ public class ApprovalOrderServiceImpl implements ApprovalOrderService {
         if(tasknfo.get("users") == null){
             throw new RuntimeException("获取下一个审批人信息失败"+tasknfo);
         }
-        String[] split = tasknfo.get("users").toString().split(",");
+        String[] split = (String[])tasknfo.get("users");
         for (String name : split){
             //通过name查询管理员id
             Admin approvalAdmin = sysMapper.getByName(name);
@@ -116,6 +119,7 @@ public class ApprovalOrderServiceImpl implements ApprovalOrderService {
             recordInfo.setAdminId(approvalAdmin.getAdminId());
             recordInfo.setRecordState(1);
             recordInfo.setTaskId(tasknfo.get("taskId").toString());
+            recordInfo.setApprovalTime(new Date());
             if(approvalOrderMapper.insertHistoricalRecord(recordInfo) < 1){
                 throw new RuntimeException("添加历史审批信息失败"+tasknfo);
             }
@@ -125,16 +129,6 @@ public class ApprovalOrderServiceImpl implements ApprovalOrderService {
                 throw new RuntimeException("修改审批信息失败"+tasknfo);
             }
         }
-        HistoricalRecord historicalRecord = new HistoricalRecord();
-        historicalRecord.setApprovalId(approvalInfo.getApprovalId());
-        historicalRecord.setAdminId(admin.getAdminId());
-        historicalRecord.setRecordState(1);
-        historicalRecord.setTaskId(tasknfo.get("taskId").toString());
-        historicalRecord.setApprovalTime(new Date());
-        int returnValue5 = approvalOrderMapper.insertHistoricalRecord(historicalRecord);
-        if(returnValue5 < 1){
-            throw new RuntimeException("添加生产审批历史记录失败");
-        }
         return true;
     }
 

+ 3 - 4
watero-rst-service/src/main/java/com/iamberry/rst/service/approval/mapper/approvalOrderMapper.xml

@@ -173,13 +173,12 @@
   <insert id="insertProductionContract" parameterType="ApprovalProductionContract">
     INSERT INTO tb_rst_approval_production_contract(
     contract_id,
-    production_id,
+    approval_id,
     contract_url,
-    contract_type,
     contract_create_time
     )
     VALUES
-    (#{contractId},#{productionId},#{contractUrl},#{contractType},NOW())
+    (#{contractId},#{approvalId},#{contractUrl},NOW())
   </insert>
 
   <insert id="insertProcessInfo" parameterType="ProcessInfo">
@@ -204,7 +203,7 @@
     record_create_time
     )
     VALUES
-    (#{approvalId},#{adminId},#{processDesc},#{processState},NOW())
+    (#{approvalId},#{adminId},#{recordState},#{taskId},#{approvalTime},NOW())
   </insert>
 
 

+ 5 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/CompanyInfoServiceImpl.java

@@ -21,4 +21,9 @@ public class CompanyInfoServiceImpl implements CompanyInfoService{
     public List<CompanyInfo> listCompanyInfo(CompanyInfo companyInfo) {
         return companyInfoMapper.listCompanyInfo(companyInfo);
     }
+
+    @Override
+    public CompanyInfo getCompanyInfoById(Integer companyId) {
+        return companyInfoMapper.getCompanyInfoById(companyId);
+    }
 }

+ 10 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/cm/StoreInfoServiceImpl.java

@@ -31,4 +31,14 @@ public class StoreInfoServiceImpl implements StoreInfoService {
     public StoreInfo getStoreInfoByEfastId(String storeEfast) {
         return storeInfoMapper.getStoreInfoByEfastId(storeEfast);
     }
+
+    @Override
+    public Integer updateStoreInfo(StoreInfo storeInfo) {
+        return storeInfoMapper.updateStoreInfo(storeInfo);
+    }
+
+    @Override
+    public Integer addStoreInfo(StoreInfo storeInfo) {
+        return storeInfoMapper.addStoreInfo(storeInfo);
+    }
 }

+ 1 - 1
watero-rst-web/src/main/java/com/iamberry/rst/controllers/approval/ApprovalController.java

@@ -249,7 +249,7 @@ public class ApprovalController {
                     if(taskMap.get("users") == null){
                         return  ResponseJson.getFAILURE();
                     }
-                    String[] split = taskMap.get("users").toString().split(",");
+                    String[] split = (String[])taskMap.get("users");
                     for (String name : split){
                         //通过name查询管理员id
                        Admin approvalAdmin = sysService.getByName(name);

+ 38 - 1
watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AdminSalesOrderController.java

@@ -595,6 +595,7 @@ public class AdminSalesOrderController {
                salesOrder.setSalesOrderId(oderIds.get(i));
                salesOrder.setSalesPostFirm(code);
                salesOrder.setSalesPostNum(danhao.get(i));
+               salesOrder.setSalesSendTime(new Date());
                salesOrder.setSalesShippingStatus(1);//状态改为已发货
                Integer msg = salesOrderService.updateSalesOrderByDealCode(salesOrder);
                if(msg > 0){
@@ -982,7 +983,7 @@ public class AdminSalesOrderController {
         SalesOrder so = new SalesOrder();
         so.setSalesId(salesId);
         so.setSalesStatus(3);
-        Integer res = salesOrderService.updateOrderInfo(so);
+        Integer res = salesOrderService.updateSalesOrder(so);
         return res <= 0 ? ResponseJson.getFAILURE() : ResponseJson.getSUCCESS();
     }
 
@@ -1049,5 +1050,41 @@ public class AdminSalesOrderController {
         return mv;
     }
 
+    /**
+     * 查询系统已有的店铺信息
+     * @return
+     */
+    @RequestMapping("/listStoreInfo")
+    @RequiresPermissions("salesOrder:listStoreInfo")
+    public ModelAndView listStoreInfo() {
+        List<StoreInfo> listStoreInfo = storeInfoService.listStore(new StoreInfo());
+        if (listStoreInfo != null && listStoreInfo.size() >= 1) {
+            for (StoreInfo temp : listStoreInfo) {
+                temp.setCompanyInfo(companyInfoService.getCompanyInfoById(temp.getCompanyId()));
+            }
+        }
+        return new ModelAndView("order/store/list").addObject("list", listStoreInfo);
+    }
+
+    @ResponseBody
+    @RequestMapping("/editStoreStatus")
+    @RequiresPermissions("salesOrder:listStoreInfo")
+    public ResponseJson editStoreStatus(StoreInfo storeInfo) {
+        Integer res = storeInfoService.updateStoreInfo(storeInfo);
+        return res <= 0 ? ResponseJson.getFAILURE() : ResponseJson.getSUCCESS();
+    }
+
+    @RequestMapping("/addStoreInfoUI")
+    @RequiresPermissions("salesOrder:listStoreInfo")
+    public ModelAndView addStoreInfoUI() {
+        return new ModelAndView("order/store/add").addObject("list", companyInfoService.listCompanyInfo(new CompanyInfo()));
+    }
 
+    @ResponseBody
+    @RequestMapping("/addStoreStatus")
+    @RequiresPermissions("salesOrder:listStoreInfo")
+    public ResponseJson addStoreStatus(StoreInfo storeInfo) {
+        Integer res = storeInfoService.addStoreInfo(storeInfo);
+        return res <= 0 ? ResponseJson.getFAILURE() : ResponseJson.getSUCCESS();
+    }
 }

+ 1 - 1
watero-rst-web/src/main/webapp/WEB-INF/views/cm/customer/add_customer.ftl

@@ -134,7 +134,7 @@
             <div class="row cl">
                 <label class="form-label col-1 col-sm-1">来源描述:</label>
                 <div class="formControls col-4 col-sm-4 skin-minimal customerSourceType_text_all">
-                    <input type="text" class="input-text trim_input" value="" placeholder="来源入口描述" id="customerSource" name="customerSource">
+                    <input type="text" class="input-text trim_input" value="" placeholder="如公众号名称、QQ群名称" id="customerSource" name="customerSource">
                 </div>
             </div>
             <div class="row cl">

+ 196 - 0
watero-rst-web/src/main/webapp/WEB-INF/views/order/store/add.ftl

@@ -0,0 +1,196 @@
+<!DOCTYPE HTML>
+<html>
+<head>
+    <meta charset="utf-8">
+    <meta name="renderer" content="webkit|ie-comp|ie-stand">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+    <meta http-equiv="Cache-Control" content="no-siteapp" />
+    <#include "/base/add_base.ftl">
+    <title>添加店铺信息</title>
+</head>
+<body>
+<div class="pd-20">
+    <form action="/admin/salesOrder/addStoreStatus" method="post" class="form form-horizontal" id="form-admin-add">
+        <input type="hidden" name="storeStatus" value="1">
+        <div class="row cl">
+            <label class="form-label col-xs-4 col-sm-3" style="padding-left: 0;margin-left: 0px;width: 17%;"><span class="c-red">*</span>所属公司:</label>
+            <div class="formControls col-xs-8 col-sm-9">
+
+                <select class="select" style="height: 30px" name="companyId" id="companyId">
+                    <#list list as d>
+                        <option value="${d.companyId}">${d.companyName}</option>
+                    </#list>
+                </select>
+
+            </div>
+            <div class="col-4"> </div>
+        </div>
+
+        <div class="row cl">
+            <label class="form-label col-xs-4 col-sm-3" style="padding-left: 0;margin-left: 0px;width: 17%;"><span class="c-red">*</span>店铺名称:</label>
+            <div class="formControls col-xs-8 col-sm-9">
+                <input type="text" class="input-text" id="storeName" name="storeName" datatype="s1-30" nullmsg="不能为空">
+            </div>
+            <div class="col-4"> </div>
+        </div>
+
+        <div class="row cl">
+            <label class="form-label col-xs-4 col-sm-3" style="padding-left: 0;margin-left: 0px;width: 17%;"><span class="c-red">*</span>Efast:</label>
+            <div class="formControls col-xs-8 col-sm-9">
+                <input type="text" class="input-text" id="storeEfast" name="storeEfast" datatype="s1-30" nullmsg="不能为空">
+            </div>
+            <div class="col-4"> </div>
+        </div>
+
+        <div class="row cl">
+            <label class="form-label col-xs-4 col-sm-3" style="padding-left: 0;margin-left: 0px;width: 17%;"><span class="c-red">*</span>备注信息:</label>
+            <div class="formControls col-xs-8 col-sm-9">
+                <input type="text" class="input-text" id="storeRemark" name="storeRemark" datatype="s1-30" nullmsg="不能为空">
+            </div>
+            <div class="col-4"> </div>
+        </div>
+
+        <div class="row cl">
+            <div class="col-xs-8 col-sm-9 col-xs-offset-4 col-sm-offset-3">
+                <input class="btn btn-primary radius" type="submit" value="&nbsp;&nbsp;提交&nbsp;&nbsp;">
+            </div>
+        </div>
+    </form>
+</div>
+</body>
+<script type="text/javascript">
+    /* 开启校验 */
+    $(function(){
+        $('.skin-minimal input').iCheck({
+            checkboxClass: 'icheckbox-blue',
+            radioClass: 'iradio-blue',
+            increaseArea: '20%'
+        });
+
+        $("#form-admin-add").Validform({
+            tiptype:function(msg,o,cssctl){
+                if (o.type == 3) {
+                    layer.msg(msg,{icon:2,time:1500});
+                }
+            },
+            ignoreHidden: false,
+            callback:function(form){
+                var send = true;
+                if (typeof user_callback != "undefined") {
+                    send = user_callback();
+                }
+                if (typeof send == "undefined") {
+                    add();
+                }
+                if (send) {
+                    add();
+                }
+                return false;
+            }
+        });
+    });
+
+    /* 当前方法 */
+    function add() {
+        //此处请求后台程序,下方是成功后的前台处理……
+        ajax("POST", $("#form-admin-add").attr("action"), formatJSON(), function(res) {
+            if (res.resultCode == 200 && res.returnCode == 200) {
+                layer.msg('操作成功!',{icon: 6,time:1000}, function (){
+                    var index = parent.layer.getFrameIndex(window.name);
+                    if (typeof index != "undefined") {
+                        parent.layer.close(index);
+                    } else {
+                        var href = window.redirect_url;
+                        if (typeof href != "undefined") {
+                            location.href = root_path + href;
+                        }
+                    }
+                });
+            } else {
+                var error = null;
+                try {
+                    error = res.returnMsg.error;
+                } catch (error) {
+
+                }
+                if (error != null && typeof error != "undefined") {
+                    layer.msg("【操作失败】" + error,{icon: 1,time:3000});
+                } else {
+                    layer.msg('请求失败,请重试!',{icon: 1,time:1000});
+                }
+            }
+        });
+    }
+
+    /*将表单format 为  JSON*/
+    function formatJSON() {
+        var o={};
+        $($("#form-admin-add").serializeArray()).each(function(){
+            if (this.value != "" && this.value != null) {
+                // 如果value为空,则不要填充啦
+                if (o[this.name] !== undefined) {
+                    if (!o[this.name].push) {
+                        o[this.name] = [o[this.name]];
+                    }
+                    o[this.name].push(this.value || '');
+                } else {
+                    o[this.name] = this.value || '';
+                }
+            }
+        });
+        return o;
+    }
+
+    /**
+     * Ajax请求封装
+     * @param type              请求方式:GET、POST
+     * @param uri               请求URI
+     * @param data              请求数据
+     * @param success_Callback  请求成功时的回调地址
+     */
+    function ajax(type, uri, data, success_Callback) {
+        type = type || "POST";
+        var index = null;
+        $.ajax({
+            type: type,
+            url: root_path + uri,
+            data: data,
+            dataType: "json",
+            traditional: true,
+            beforeSend: function () {
+                /* AJAX请求前,展示加载层 */
+                index = layer.load(0, {zIndex:1989101500, isOutAnim:true, shade: [0.8,'#fff']});
+            },
+            success: function(data){
+                /* 请求成功 判断是否触发服务器逻辑的错误 */
+                if (data.error) {
+                    /* 如果触发错误,则不会回调成功方法 */
+                    var info = (data.error == "auth_error") ? "[权限有误] 请联系管理员分配对应权限!" : "[服务器错误]" + data.error_msg;
+                    layer.msg(info,{icon: 1,time:1700});
+                    return;
+                }
+                /* 回调成功的方法 */
+                success_Callback(data);
+            },
+            complete: function (xhr) {
+                /* 请求结束后 关闭加载层 */
+                layer.close(index);
+            },
+            error: function (xhr) {
+                /* 此处需要将错误,传递会服务器,以便以后分析处理 */
+                /*new Image().src = root_path + "/html_error/" + encodeURI(xhr.statusText);
+                layer.msg('请求失败,请重试!',{icon: 1,time:1000});*/
+                try {
+                    var data = JSON.parse(xhr.responseText);
+                    var info = (data.error == "auth_error") ? "[权限有误] 请联系管理员分配对应权限!" : "[服务器错误]" + data.error_msg;
+                    layer.msg(info,{icon: 1,time:1700});
+                } catch (e) {
+                    new Image().src = root_path + "/html_error/" + encodeURI(xhr.statusText);
+                    layer.msg('请求失败,请重试!',{icon: 1,time:1000});
+                }
+            }
+        });
+    }
+</script>
+</html>

+ 75 - 0
watero-rst-web/src/main/webapp/WEB-INF/views/order/store/list.ftl

@@ -0,0 +1,75 @@
+<!DOCTYPE HTML>
+<html>
+<head>
+    <meta charset="utf-8">
+    <meta name="renderer" content="webkit|ie-comp|ie-stand">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+    <meta http-equiv="Cache-Control" content="no-siteapp" />
+    <link rel="Bookmark" href="/favicon.ico" >
+    <link rel="Shortcut Icon" href="/favicon.ico" />
+    <#include "/base/list_base.ftl">
+    <link href="${path}/common/lib/lightbox2/2.8.1/css/lightbox.css" rel="stylesheet" type="text/css" >
+    <title>店铺列表</title>
+</head>
+<body>
+<nav class="breadcrumb"><i class="Hui-iconfont">&#xe67f;</i> 首页 <span class="c-gray en">&gt;</span> 订单管理 <span class="c-gray en">&gt;</span> 店铺列表 <a class="btn btn-success radius" id="btn-refresh" style="float: right;line-height:1.6em;margin-top:3px" href="javascript:location.replace(location.href);" title="刷新" ><i class="Hui-iconfont">&#xe68f;</i></a></nav>
+<div class="page-container">
+    <div class="text-c">
+        <span class="l"><a href="javascript:;" onclick="layer_show('添加店铺信息', '${path}/admin/salesOrder/addStoreInfoUI','800','600')" class="btn btn-primary radius"><i class="Hui-iconfont">&#xe600;</i> 添加店铺信息</a></span>
+    </div>
+     <table class="table table-border table-bordered table-hover" style="margin-top: 50px">
+        <thead>
+        <tr class="text-c">
+            <th width="40">店铺id</th>
+            <th width="50">店铺名称</th>
+            <th width="50">所属公司</th>
+            <th width="50">Efast店铺编号</th>
+            <th width="80">店铺备注</th>
+            <th width="40">状态</th>
+            <th width="40">创建时间</th>
+            <th width="50">操作</th>
+        </tr>
+        </thead>
+        <tbody>
+        <#if (list?size <= 0)>
+            <tr class="text-c"><td colspan="8">暂无数据</td></tr>
+        <#else>
+            <#list list as o>
+            <tr class="text-c">
+                <td>${(o.storeId)!}</td>
+                <td>${(o.storeName)!}</td>
+                <td>${(o.companyInfo.companyName)!}</td>
+                <td>${(o.storeEfast)!}</td>
+                <td>${(o.storeRemark)!}</td>
+                <td>
+                    <#if o.storeStatus == 1>启用<#else>禁用</#if>
+                </td>
+                <td>${o.storeCreateTime?string("yyyy-MM-dd")}</td>
+                <td class="td-manage">
+                    <#if o.storeStatus == 1>
+                        <a title="禁用" href="javascript:edit_status(${o.storeId}, 2)" class="ml-5" style="text-decoration:none">禁用</a>
+                    <#else>
+                        <a title="启用" href="javascript:edit_status(${o.storeId}, 1)" class="ml-5" style="text-decoration:none">启用</a>
+                    </#if>
+                </td>
+            </tr>
+            </#list>
+        </#if>
+        </tbody>
+    </table>
+</div>
+</body>
+<script type="text/javascript" src="${path}/common/lib/lightbox2/2.8.1/js/lightbox.min.js"></script>
+<script type="text/javascript">
+
+    /**
+     * 删除
+     */
+    function edit_status(id, status) {
+        $.post("/admin/salesOrder/editStoreStatus", {"storeId":id, "storeStatus":status}, function (res) {
+            window.location.reload();
+        }) ;
+    }
+</script>
+</html>