Parcourir la source

Merge remote-tracking branch 'origin/master'

xian il y a 6 ans
Parent
commit
1ab6804156

+ 38 - 1
watero-rst-interface/src/main/java/com/iamberry/rst/faces/approval/ApplyPickItemService.java

@@ -1,5 +1,7 @@
 package com.iamberry.rst.faces.approval;
 
+import com.iamberry.rst.core.approval.ApprovalApplyPickItem;
+
 import java.util.List;
 
 /**
@@ -8,5 +10,40 @@ import java.util.List;
  * @Date 2018-09-19
  */
 public interface ApplyPickItemService {
-
+    /**
+     * 获取集合
+     * @param  approvalApplyPickItem
+     * @return List
+     */
+    List<ApprovalApplyPickItem>  getApprovalApplyPickItemList(ApprovalApplyPickItem  approvalApplyPickItem);
+    /**
+     * 查询单条数据
+     * @param  id
+     * @return  approvalApplyPickItem
+     */
+    ApprovalApplyPickItem  getApprovalApplyPickItemById(Integer  id);
+    /**
+     * 增加数据
+     * @param  approvalApplyPickItem
+     * @return Integer
+     */
+    Integer  save(ApprovalApplyPickItem  approvalApplyPickItem);
+    /**
+     * 修改数据
+     * @param  approvalApplyPickItem
+     * @return Integer
+     */
+    Integer  update(ApprovalApplyPickItem approvalApplyPickItem);
+    /**
+     * 删除数据
+     * @param  id
+     * @return Integer
+     */
+    Integer  delete(Integer  id);
+    /**
+     * 增加数据 <集合>
+     * @param  approvalApplyPickItemList
+     * @return Integer
+     */
+    Integer  saveList(List<ApprovalApplyPickItem>  approvalApplyPickItemList);
 }

+ 2 - 1
watero-rst-interface/src/main/java/com/iamberry/rst/faces/approval/ApplyPickService.java

@@ -6,6 +6,7 @@ import com.iamberry.rst.core.page.PageRequest;
 import com.iamberry.rst.core.page.PagedResult;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  *  提货申请信息接口
@@ -41,7 +42,7 @@ public interface ApplyPickService {
      * @param  approvalApplyPick
      * @return Integer
      */
-    Integer  save(ApprovalApplyPick  approvalApplyPick);
+    Integer  save(ApprovalApplyPick  approvalApplyPick,String openid, Map<String, Object> tasknfo);
     /**
      * 修改数据
      * @param  approvalApplyPick

+ 57 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/approval/ApplyPickItemServiceImpl.java

@@ -1,5 +1,6 @@
 package com.iamberry.rst.service.approval;
 
+import com.iamberry.rst.core.approval.ApprovalApplyPickItem;
 import com.iamberry.rst.faces.approval.ApplyPickItemService;
 import com.iamberry.rst.service.approval.mapper.ApplyPickItemMapper;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -14,5 +15,61 @@ import java.util.List;
  */
 @Service
 public class ApplyPickItemServiceImpl  implements ApplyPickItemService {
+    @Autowired
+    private  ApplyPickItemMapper  applyPickItemMapper;
+    /**
+     * 获取集合
+     * @param  approvalApplyPickItem
+     * @return List
+     */
+    @Override
+    public  List<ApprovalApplyPickItem>  getApprovalApplyPickItemList(ApprovalApplyPickItem  approvalApplyPickItem){
+        return  applyPickItemMapper.getApprovalApplyPickItemList(approvalApplyPickItem);
+    }
+    /**
+     * 查询单条数据
+     * @param  id
+     * @return  approvalApplyPickItem
+     */
+    @Override
+    public  ApprovalApplyPickItem  getApprovalApplyPickItemById(Integer  id){
+        return  applyPickItemMapper.getApprovalApplyPickItemById(id);
+    }
+    /**
+     * 增加数据
+     * @param  approvalApplyPickItem
+     * @return Integer
+     */
+    @Override
+    public  Integer  save(ApprovalApplyPickItem  approvalApplyPickItem){
+        return  applyPickItemMapper.save(approvalApplyPickItem);
+    }
+    /**
+     * 修改数据
+     * @param  approvalApplyPickItem
+     * @return Integer
+     */
+    @Override
+    public  Integer  update(ApprovalApplyPickItem  approvalApplyPickItem){
+        return  applyPickItemMapper.update(approvalApplyPickItem);
+    }
+    /**
+     * 删除数据
+     * @param  id
+     * @return Integer
+     */
+    @Override
+    public  Integer  delete(Integer  id){
+        return  applyPickItemMapper.delete(id);
+    }
+    /**
+     * 增加数据 <集合>
+     * @param  approvalApplyPickItemList
+     * @return Integer
+     */
+    @Override
+    public  Integer  saveList(List<ApprovalApplyPickItem>  approvalApplyPickItemList){
+        return  applyPickItemMapper.saveList(approvalApplyPickItemList);
+    }
 
 }

+ 76 - 2
watero-rst-service/src/main/java/com/iamberry/rst/service/approval/ApplyPickServiceImpl.java

@@ -2,16 +2,26 @@ package com.iamberry.rst.service.approval;
 
 import com.github.pagehelper.PageHelper;
 import com.iamberry.rst.core.approval.ApprovalApplyPick;
+import com.iamberry.rst.core.approval.ApprovalInfo;
+import com.iamberry.rst.core.approval.HistoricalRecord;
+import com.iamberry.rst.core.approval.ProcessInfo;
 import com.iamberry.rst.core.order.OrderBatch;
 import com.iamberry.rst.core.page.PageRequest;
 import com.iamberry.rst.core.page.PagedResult;
+import com.iamberry.rst.core.sys.Admin;
 import com.iamberry.rst.faces.approval.ApplyPickService;
+import com.iamberry.rst.service.approval.mapper.ApplyPickItemMapper;
 import com.iamberry.rst.service.approval.mapper.ApplyPickMapper;
+import com.iamberry.rst.service.approval.mapper.ApprovalOrderMapper;
+import com.iamberry.rst.service.sys.mapper.SysMapper;
 import com.iamberry.rst.util.PageUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
+import java.util.Date;
 import java.util.List;
+import java.util.Map;
 
 /**
  *  提货申请信息接口
@@ -22,6 +32,14 @@ import java.util.List;
 public class ApplyPickServiceImpl  implements ApplyPickService {
     @Autowired
     private  ApplyPickMapper  applyPickMapper;
+    @Autowired
+    private ApplyPickItemMapper applyPickItemMapper;
+    @Autowired
+    private SysMapper sysMapper;
+    @Autowired
+    private ApprovalOrderMapper approvalOrderMapper;
+
+
     /**
      * 获取集合
      * @param  approvalApplyPick
@@ -54,8 +72,64 @@ public class ApplyPickServiceImpl  implements ApplyPickService {
      * @return Integer
      */
     @Override
-    public  Integer  save(ApprovalApplyPick  approvalApplyPick){
-        return  applyPickMapper.save(approvalApplyPick);
+    @Transactional
+    public  Integer  save(ApprovalApplyPick  approvalApplyPick, String openid, Map<String, Object> tasknfo){
+        Integer flag = applyPickMapper.save(approvalApplyPick);
+        if(flag < 1){
+            throw new RuntimeException("添加提货失败");
+        }
+        flag = applyPickItemMapper.saveList(approvalApplyPick.getListApplyPickItem());
+        if(flag < 1){
+            throw new RuntimeException("添加提货项失败");
+        }
+
+        Admin admin = sysMapper.getByOpenid(openid);
+
+        //添加审批信息
+        ApprovalInfo approvalInfo = new ApprovalInfo();
+        approvalInfo.setApprovalName(admin.getAdminName()+"的审批订单");
+        approvalInfo.setApprovalType(1);
+        approvalInfo.setApprovalStatus(1);
+        approvalInfo.setAdminId(admin.getAdminId());
+        approvalInfo.setApprovalApplicant(approvalApplyPick.getApplyPickName());
+        approvalInfo.setActivitiId(tasknfo.get("key").toString());
+        approvalInfo.setApprovalDetails("html内容");
+        approvalInfo.setApprovalRemark(approvalApplyPick.getApplyPickRemk());
+        int returnValue = approvalOrderMapper.insertApprovalInfo(approvalInfo);
+        if(returnValue < 1){
+            throw new RuntimeException("添加审批信息失败");
+        }
+
+        //添加审批历史记录
+        ApprovalInfo info = new ApprovalInfo();
+        info.setApprovalId(approvalInfo.getApprovalId());
+        if(tasknfo.get("users") == null){
+            throw new RuntimeException("获取下一个审批人信息失败"+tasknfo);
+        }
+        String[] split = (String[])tasknfo.get("users");
+        for (String name : split){
+            //通过name查询管理员id
+            Admin approvalAdmin = sysMapper.getByName(name);
+            if(approvalAdmin == null){
+                throw new RuntimeException("获取下一个审批管理员信息失败"+tasknfo);
+            }
+
+            HistoricalRecord recordInfo = new HistoricalRecord();
+            recordInfo.setApprovalId(approvalInfo.getApprovalId());
+            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);
+            }
+            //修改审核信息表
+            info.setApprovalStatusDetails("待"+name+"审批");
+            if(approvalOrderMapper.updateApprovalInfo(info) < 1){
+                throw new RuntimeException("修改审批信息失败"+tasknfo);
+            }
+        }
+        return  flag;
     }
     /**
      * 修改数据

+ 38 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/approval/mapper/ApplyPickItemMapper.java

@@ -1,5 +1,7 @@
 package com.iamberry.rst.service.approval.mapper;
 
+import com.iamberry.rst.core.approval.ApprovalApplyPickItem;
+
 import java.util.List;
 
 /**
@@ -8,5 +10,41 @@ import java.util.List;
  * @Date 2018-09-19
  */
 public interface ApplyPickItemMapper {
+    /**
+     * 获取集合
+     * @param  approvalApplyPickItem
+     * @return List
+     */
+    List<ApprovalApplyPickItem>  getApprovalApplyPickItemList(ApprovalApplyPickItem  approvalApplyPickItem);
+    /**
+     * 查询单条数据
+     * @param  id
+     * @return  approvalApplyPickItem
+     */
+    ApprovalApplyPickItem  getApprovalApplyPickItemById(Integer  id);
+    /**
+     * 增加数据
+     * @param  approvalApplyPickItem
+     * @return Integer
+     */
+    Integer  save(ApprovalApplyPickItem  approvalApplyPickItem);
+    /**
+     * 修改数据
+     * @param  approvalApplyPickItem
+     * @return Integer
+     */
+    Integer  update(ApprovalApplyPickItem  approvalApplyPickItem);
+    /**
+     * 删除数据
+     * @param  id
+     * @return Integer
+     */
+    Integer  delete(Integer  id);
+    /**
+     * 增加数据 <集合>
+     * @param  approvalApplyPickItemList
+     * @return Integer
+     */
+    Integer  saveList(List<ApprovalApplyPickItem>  approvalApplyPickItemList);
 
 }

+ 50 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/approval/mapper/applyPickItemMapper.xml

@@ -52,6 +52,15 @@
             <if test="itemProductNum != null ">
                 AND t.item_product_num = #{itemProductNum}
             </if >
+            <if test="itemBrandName != null and itemBrandName != ''">
+                AND t.item_brand_name  like  CONCAT ('%',#{itemBrandName},'%')
+            </if >
+            <if test="itemProductModel != null and itemProductModel != ''">
+                AND t.item_product_model  like  CONCAT ('%',#{itemProductModel},'%')
+            </if >
+            <if test="itemProductUnit != null and itemProductUnit != ''">
+                AND t.item_product_unit  like  CONCAT ('%',#{itemProductUnit},'%')
+            </if >
             <if test="itemProductBoxNumber != null ">
                 AND t.item_product_box_number = #{itemProductBoxNumber}
             </if >
@@ -67,6 +76,7 @@
         insert into
         tb_rst_approval_apply_pick_item
         (
+        apply_item_id,
         apply_pick_id,
         product_id,
         item_product_name,
@@ -79,6 +89,7 @@
         )
         values
         (
+        #{applyItemId},
         #{applyPickId},
         #{productId},
         #{itemProductName},
@@ -94,6 +105,9 @@
         update
         tb_rst_approval_apply_pick_item
         <set >
+            <if test="applyItemId != null ">
+                apply_item_id = #{applyItemId},
+            </if >
             <if test="applyPickId != null ">
                 apply_pick_id = #{applyPickId},
             </if >
@@ -124,4 +138,40 @@
         </set >
         where apply_item_id= #{applyItemId}
     </update>
+    <delete id="delete" parameterType="Integer" >
+        delete
+        tb_rst_approval_apply_pick_item
+        where apply_item_id=#{applyItemId}
+    </delete>
+    <insert id="saveList" parameterType="java.util.List" >
+        insert into
+        tb_rst_approval_apply_pick_item
+        (
+        apply_item_id,
+        apply_pick_id,
+        product_id,
+        item_product_name,
+        item_color_name,
+        item_product_num,
+        item_brand_name,
+        item_product_model,
+        item_product_unit,
+        item_product_box_number
+        )
+        values
+        <foreach collection="list" item="node" index="index" separator="," open="" close="">
+            (
+            #{node.applyItemId},
+            #{node.applyPickId},
+            #{node.productId},
+            #{node.itemProductName},
+            #{node.itemColorName},
+            #{node.itemProductNum},
+            #{node.itemBrandName},
+            #{node.itemProductModel},
+            #{node.itemProductUnit},
+            #{node.itemProductBoxNumber}
+            )
+        </foreach >
+    </insert>
 </mapper>

+ 35 - 0
watero-rst-web/src/main/java/com/iamberry/rst/controllers/approval/ApplyPickController.java

@@ -1,16 +1,20 @@
 package com.iamberry.rst.controllers.approval;
 
 import com.iamberry.rst.core.approval.ApprovalApplyPick;
+import com.iamberry.rst.core.approval.ApprovalApplyPickItem;
+import com.iamberry.rst.core.cm.SendProdcue;
 import com.iamberry.rst.core.order.OrderBatch;
 import com.iamberry.rst.core.page.PageRequest;
 import com.iamberry.rst.core.page.PagedResult;
 import com.iamberry.rst.core.sys.Admin;
 import com.iamberry.rst.faces.approval.ApplyPickItemService;
 import com.iamberry.rst.faces.approval.ApplyPickService;
+import com.iamberry.rst.faces.approval.ApprovalTaskService;
 import com.iamberry.rst.faces.sys.SysService;
 import com.iamberry.rst.utils.StitchAttrUtil;
 import com.iamberry.wechat.core.entity.WechatUtils;
 import com.iamberry.wechat.tools.ResponseJson;
+import net.sf.json.JSONArray;
 import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
@@ -19,6 +23,8 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 
 import javax.servlet.http.HttpServletRequest;
+import java.util.List;
+import java.util.Map;
 
 @Controller
 //@RequestMapping("/wechat/applyPick")
@@ -29,6 +35,8 @@ public class ApplyPickController {
     private ApplyPickService applyPickService;
     @Autowired
     private ApplyPickItemService applyPickItemService;
+    @Autowired
+    private ApprovalTaskService approvalTaskService;
 
     @Autowired
     private SysService sysService;
@@ -78,4 +86,31 @@ public class ApplyPickController {
         return rj;
     }
 
+    /**
+     * 添加提货
+     * @return
+     */
+    @ResponseBody
+    @RequestMapping("/addApplyPick")
+    public ResponseJson addApplyPick(HttpServletRequest request,ApprovalApplyPick approvalApplyPick,String listApplyPickItemJson) {
+        ResponseJson rj = ResponseJson.getFAILURE();
+        String openId = WechatUtils.getUserBySession(request).getUserOpenid();
+
+        JSONArray jsonArray = JSONArray.fromObject(listApplyPickItemJson);
+        List<ApprovalApplyPickItem> listApplyPickItem = (List) JSONArray.toCollection(jsonArray, ApprovalApplyPickItem.class);
+        approvalApplyPick.setListApplyPickItem(listApplyPickItem);
+
+        //获取审批任务id
+        Map<String, Object> taskinfo = approvalTaskService.salesmanSubmitApply(1);
+        try{
+          applyPickService.save(approvalApplyPick,openId,taskinfo);
+        }catch (Exception e){
+            e.printStackTrace();
+            rj.setResultMsg("添加提货失败");
+            return rj;
+        }
+        rj = ResponseJson.getSUCCESS();
+        return rj;
+    }
+
 }