Jelajahi Sumber

线下收款账号配置

huangzhiguo 2 tahun lalu
induk
melakukan
7e729c1f65
20 mengubah file dengan 772 tambahan dan 46 penghapusan
  1. 5 0
      src/main/java/com/caimei/modules/bulkpurchase/web/CmRefundsProductController.java
  2. 39 0
      src/main/java/com/caimei/modules/order/dao/CmOfflineCollectionDao.java
  3. 105 0
      src/main/java/com/caimei/modules/order/entity/CmOfflineCollection.java
  4. 9 0
      src/main/java/com/caimei/modules/order/entity/CmPayShop.java
  5. 9 0
      src/main/java/com/caimei/modules/order/entity/CmPayShopRecord.java
  6. 85 0
      src/main/java/com/caimei/modules/order/service/CmOfflineCollectionService.java
  7. 1 0
      src/main/java/com/caimei/modules/order/service/CmPayShopService.java
  8. 6 1
      src/main/java/com/caimei/modules/order/web/CmDiscernReceiptController.java
  9. 217 0
      src/main/java/com/caimei/modules/order/web/CmOfflineCollectionController.java
  10. 8 0
      src/main/java/com/caimei/modules/order/web/CmPayShopController.java
  11. 65 0
      src/main/resources/mappings/modules/order/CmOfflineCollectionMapper.xml
  12. 2 0
      src/main/resources/mappings/modules/order/CmPayShopRecordMapper.xml
  13. 2 8
      src/main/webapp/WEB-INF/views/modules/bulkpurchase/orderReviewReturnRecord.jsp
  14. 5 3
      src/main/webapp/WEB-INF/views/modules/order/cmDiscernReceiptList.jsp
  15. 46 0
      src/main/webapp/WEB-INF/views/modules/order/cmOfflineCollectionDisplayFrom.jsp
  16. 52 0
      src/main/webapp/WEB-INF/views/modules/order/cmOfflineCollectionFrom.jsp
  17. 84 0
      src/main/webapp/WEB-INF/views/modules/order/cmOfflineCollectionList.jsp
  18. 11 8
      src/main/webapp/WEB-INF/views/modules/order/cmPayShopCheck.jsp
  19. 19 19
      src/main/webapp/WEB-INF/views/modules/order/cmPayShopDetail.jsp
  20. 2 7
      src/main/webapp/WEB-INF/views/modules/order/cmPayShopEdit.jsp

+ 5 - 0
src/main/java/com/caimei/modules/bulkpurchase/web/CmRefundsProductController.java

@@ -77,6 +77,8 @@ public class CmRefundsProductController extends BaseController {
     private CmUserDao cmUserDao;
     @Resource
     private NewOrderProductDao newOrderProductDao;
+    @Resource
+    private CmOfflineCollectionService cmOfflineCollectionService;
 
     @ModelAttribute
     public CmRefundsProduct get(@RequestParam(required = false) String id) {
@@ -720,6 +722,8 @@ public class CmRefundsProductController extends BaseController {
             }
             CmDiscernReceipt cmDiscernReceipt = cmDiscernReceiptDao.findPayType(newOrder.getOrderID().toString());
             Integer lastReceiptDetailId = cmDiscernReceiptDao.findOrderLastReceiptDetailId(newOrder.getOrderID().toString());
+            // 获取线下收款账号下拉列表
+            List<CmOfflineCollection> offlineCollections = cmOfflineCollectionService.downListData();
             model.addAttribute("lastReceiptDetailId", lastReceiptDetailId);
             model.addAttribute("cmDiscernReceipt", cmDiscernReceipt);
             model.addAttribute("bpClauses", bpClauses);
@@ -727,6 +731,7 @@ public class CmRefundsProductController extends BaseController {
             model.addAttribute("order", newOrder);
             model.addAttribute("returnedPurchaseFee", returnedPurchaseFee);
             model.addAttribute("refundFee", refundFee);
+            model.addAttribute("offlineCollections", offlineCollections);
         } catch (Exception e) {
             e.printStackTrace();
         }

+ 39 - 0
src/main/java/com/caimei/modules/order/dao/CmOfflineCollectionDao.java

@@ -0,0 +1,39 @@
+package com.caimei.modules.order.dao;
+
+import com.caimei.modules.order.entity.CmOfflineCollection;
+import com.thinkgem.jeesite.common.persistence.CrudDao;
+import com.thinkgem.jeesite.common.persistence.annotation.MyBatisDao;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * Description
+ *
+ * @author : Charles
+ * @date : 2022/9/22
+ */
+@MyBatisDao
+public interface CmOfflineCollectionDao extends CrudDao<CmOfflineCollection> {
+
+    // 添加银行账号
+    int insBank(CmOfflineCollection cmOfflineCollection);
+
+    // 设置商城显示完善信息
+    int upBankDisplay(CmOfflineCollection cmOfflineCollection);
+
+    // 设为商城不显示
+    int upNoBankDisplay(CmOfflineCollection cmOfflineCollection);
+
+    // 编辑页面
+    CmOfflineCollection editBank(CmOfflineCollection cmOfflineCollection);
+
+    // 编辑保存
+    void edit(CmOfflineCollection cmOfflineCollection);
+
+    // 银行账号逻辑删除
+    void updateBank(@Param("id") String id);
+
+    // 获取下拉列表
+    List<CmOfflineCollection> downList();
+}

+ 105 - 0
src/main/java/com/caimei/modules/order/entity/CmOfflineCollection.java

@@ -0,0 +1,105 @@
+package com.caimei.modules.order.entity;
+
+import com.thinkgem.jeesite.common.persistence.DataEntity;
+
+import java.util.Date;
+
+/**
+ * Description
+ *
+ * @author : Charles
+ * @date : 2022/9/22
+ */
+public class CmOfflineCollection extends DataEntity<CmOfflineCollection> {
+    private Integer type;           // 银行类型
+    private String bankAccount;    // 银行账号
+    private String bankUserName;   // 银行开户名
+    private String bankOfDeposit;  // 开户行
+    private Integer bankCardNo;    // 银行卡号
+    private String creationTime;     // 创建时间
+    private Integer isDisplay;     // 是否为商城显示:0不显示, 1显示
+    private Integer isDisable;     // 是否禁用:0禁用,1启用
+
+    private int isDis;    // 显示
+
+
+    public CmOfflineCollection() {
+        super();
+    }
+
+    public CmOfflineCollection(String id) {
+        super(id);
+    }
+
+    public Integer getType() {
+        return type;
+    }
+
+    public void setType(Integer type) {
+        this.type = type;
+    }
+
+    public String getBankAccount() {
+        return bankAccount;
+    }
+
+    public void setBankAccount(String bankAccount) {
+        this.bankAccount = bankAccount;
+    }
+
+    public String getBankUserName() {
+        return bankUserName;
+    }
+
+    public void setBankUserName(String bankUserName) {
+        this.bankUserName = bankUserName;
+    }
+
+    public String getBankOfDeposit() {
+        return bankOfDeposit;
+    }
+
+    public void setBankOfDeposit(String bankOfDeposit) {
+        this.bankOfDeposit = bankOfDeposit;
+    }
+
+    public Integer getBankCardNo() {
+        return bankCardNo;
+    }
+
+    public void setBankCardNo(Integer bankCardNo) {
+        this.bankCardNo = bankCardNo;
+    }
+
+    public String getCreationTime() {
+        return creationTime;
+    }
+
+    public void setCreationTime(String creationTime) {
+        this.creationTime = creationTime;
+    }
+
+    public Integer getIsDisplay() {
+        return isDisplay;
+    }
+
+    public void setIsDisplay(Integer isDisplay) {
+        this.isDisplay = isDisplay;
+    }
+
+    public Integer getIsDisable() {
+        return isDisable;
+    }
+
+    public void setIsDisable(Integer isDisable) {
+        this.isDisable = isDisable;
+    }
+
+    public int getIsDis() {
+        return isDis;
+    }
+
+    public void setIsDis(int isDis) {
+        this.isDis = isDis;
+    }
+}

+ 9 - 0
src/main/java/com/caimei/modules/order/entity/CmPayShop.java

@@ -28,6 +28,7 @@ public class CmPayShop extends DataEntity<CmPayShop> {
     private Double balancePayFee;        // 余额支付
     private Double transferPayFee;        // 转账支付
     private String payType;        // 付款银行
+    private String bankNameType;        // 付款银行名称
     private Double wipePayment;        // '付款抹平金额'
     private String wipeRemarks;        // '付款抹平备注'
     private String wipeRemarkImages;
@@ -92,6 +93,14 @@ public class CmPayShop extends DataEntity<CmPayShop> {
         this.payTypeStr = payTypeStr;
     }
 
+    public String getBankNameType() {
+        return bankNameType;
+    }
+
+    public void setBankNameType(String bankNameType) {
+        this.bankNameType = bankNameType;
+    }
+
     public String getTypeStr() {
         return typeStr;
     }

+ 9 - 0
src/main/java/com/caimei/modules/order/entity/CmPayShopRecord.java

@@ -23,6 +23,7 @@ public class CmPayShopRecord extends DataEntity<CmPayShopRecord> {
     private String wipeTime;        // 抹平申请时间
     private String payShopID;        // 付款单表id
     private String status;        // 0待审核, 1已审核
+    private String bankNameType;     // 银行账户
 
     public CmPayShopRecord() {
         super();
@@ -127,4 +128,12 @@ public class CmPayShopRecord extends DataEntity<CmPayShopRecord> {
     public void setPaymentType(Integer paymentType) {
         this.paymentType = paymentType;
     }
+
+    public String getBankNameType() {
+        return bankNameType;
+    }
+
+    public void setBankNameType(String bankName) {
+        this.bankNameType = bankName;
+    }
 }

+ 85 - 0
src/main/java/com/caimei/modules/order/service/CmOfflineCollectionService.java

@@ -0,0 +1,85 @@
+package com.caimei.modules.order.service;
+
+import com.caimei.modules.order.dao.CmOfflineCollectionDao;
+import com.caimei.modules.order.entity.CmDiscernReceipt;
+import com.caimei.modules.order.entity.CmOfflineCollection;
+import com.thinkgem.jeesite.common.service.CrudService;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import com.thinkgem.jeesite.common.persistence.Page;
+
+import javax.annotation.Resource;
+import java.util.List;
+
+/**
+ * Description
+ *
+ * @author : Charles
+ * @date : 2022/9/22
+ */
+@Service
+public class CmOfflineCollectionService extends CrudService<CmOfflineCollectionDao, CmOfflineCollection> {
+
+    @Resource private CmOfflineCollectionDao cmOfflineCollectionDao;
+
+    public CmOfflineCollection get(String id) {
+        return super.get(id);
+    }
+
+    public Page<CmOfflineCollection> findPage(Page<CmOfflineCollection> page, CmOfflineCollection cmDiscernReceipt) {
+        Page<CmOfflineCollection> pageList = super.findPage(page, cmDiscernReceipt);
+
+        return pageList;
+
+    }
+
+    @Transactional(readOnly = false)
+    public Boolean insertBank(CmOfflineCollection cmOfflineCollection) {
+        int i = cmOfflineCollectionDao.insBank(cmOfflineCollection);
+        if (i > 0) {
+            return true;
+        }
+        return false;
+    }
+
+    @Transactional(readOnly = false)
+    public Boolean upBankDisplay (CmOfflineCollection cmOfflineCollection) {
+        int i = cmOfflineCollectionDao.upBankDisplay(cmOfflineCollection);
+        if (i > 0) {
+            return true;
+        }
+        return false;
+    }
+
+    @Transactional(readOnly = false)
+    public Boolean NoBankDisplay (CmOfflineCollection cmOfflineCollection) {
+        int i = cmOfflineCollectionDao.upNoBankDisplay(cmOfflineCollection);
+        if (i > 0) {
+            return true;
+        }
+        return false;
+    }
+
+    public CmOfflineCollection editBankData(CmOfflineCollection cmOfflineCollection) {
+
+        CmOfflineCollection bankData = cmOfflineCollectionDao.editBank(cmOfflineCollection);
+        return bankData;
+    }
+
+    // 编辑页面修改保存
+    @Transactional(readOnly = false)
+    public void editData(CmOfflineCollection cmOfflineCollection) {
+        cmOfflineCollectionDao.edit(cmOfflineCollection);
+    }
+
+    @Transactional(readOnly = false)
+    public void updateBank(CmOfflineCollection cmOfflineCollection) {
+        cmOfflineCollectionDao.updateBank(cmOfflineCollection.getId());
+    }
+
+    // 线下收款账号下拉列表
+    public List<CmOfflineCollection> downListData() {
+        return cmOfflineCollectionDao.downList();
+    }
+}

+ 1 - 0
src/main/java/com/caimei/modules/order/service/CmPayShopService.java

@@ -317,6 +317,7 @@ public class CmPayShopService extends CrudService<CmPayShopDao, CmPayShop> {
     public void applyDetail(CmPayShop cmPayShop) {
         if (StringUtil.isNoneEmpty(cmPayShop.getId())) {  //详情
             List<CmPayShopRecord> payRecords = cmPayShopRecordDao.findByPayShopID(cmPayShop.getId());
+            cmPayShop.setBankNameType(payRecords.get(0).getBankNameType());
             List<String> ids = payRecords.stream().map(CmPayShopRecord::getShopOrderID).collect(Collectors.toList());
             List<NewShopOrder> csos = new ArrayList<>();
             if (null != ids && ids.size() > 0) {

+ 6 - 1
src/main/java/com/caimei/modules/order/web/CmDiscernReceiptController.java

@@ -76,6 +76,9 @@ public class CmDiscernReceiptController extends BaseController {
     @Autowired
     private CmUserOrganizeService cmUserOrganizeService;
 
+    @Resource
+    private CmOfflineCollectionService cmOfflineCollectionService;
+
     @ModelAttribute
     public CmDiscernReceipt get(@RequestParam(required = false) String id) {
         CmDiscernReceipt entity = null;
@@ -113,8 +116,10 @@ public class CmDiscernReceiptController extends BaseController {
         });
         //获取组织列表
         List<CmUserOrganize> cmUserOrganizeList = cmUserOrganizeService.findOrganize();
-
+        // 获取线下收款账号下拉列表
+        List<CmOfflineCollection> offlineCollections = cmOfflineCollectionService.downListData();
         model.addAttribute("cmUserOrganizeList", cmUserOrganizeList);
+        model.addAttribute("offlineCollections", offlineCollections);
 //        model.addAttribute("list", list);
         model.addAttribute("page", page);
         return "modules/order/cmDiscernReceiptList";

+ 217 - 0
src/main/java/com/caimei/modules/order/web/CmOfflineCollectionController.java

@@ -0,0 +1,217 @@
+package com.caimei.modules.order.web;
+
+import com.caimei.modules.order.entity.CmDiscernReceipt;
+import com.caimei.modules.order.entity.CmOfflineCollection;
+import com.caimei.modules.order.service.CmOfflineCollectionService;
+import com.thinkgem.jeesite.common.config.Global;
+import com.thinkgem.jeesite.common.persistence.Page;
+import com.thinkgem.jeesite.common.utils.StringUtils;
+import com.thinkgem.jeesite.common.web.BaseController;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.Model;
+import org.springframework.web.bind.annotation.ModelAttribute;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.servlet.mvc.support.RedirectAttributes;
+
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * Description
+ *
+ * @author : Charles
+ * @date : 2022/9/22
+ */
+@Controller
+@RequestMapping(value = "${adminPath}/order/CmOfflineCollection")
+public class CmOfflineCollectionController extends BaseController {
+
+    @Resource
+    private CmOfflineCollectionService cmOfflineCollectionService;
+
+    @ModelAttribute
+    public CmOfflineCollection get(@RequestParam(required = false) String id) {
+        CmOfflineCollection entity = null;
+        if (StringUtils.isNotBlank(id)) {
+            entity = cmOfflineCollectionService.get(id);
+        }
+        if (entity == null) {
+            entity = new CmOfflineCollection();
+        }
+        return entity;
+    }
+
+    /**
+     * 线下收款银行列表
+     * @param cmOfflineCollection
+     * @param request
+     * @param response
+     * @param model
+     * @return
+     */
+    @RequestMapping(value = {"List", ""})
+    public String list(CmOfflineCollection cmOfflineCollection, HttpServletRequest request, HttpServletResponse response, Model model) {
+        // 获取线下收款账号列表
+        Page<CmOfflineCollection> page = cmOfflineCollectionService.findPage(new Page<CmOfflineCollection>(request, response), cmOfflineCollection);
+        // 判断是否有被设置为商城显示
+        int isDis = 0;
+        for(int i = 0; i < page.getList().size(); i++){
+            if(page.getList().get(i).getIsDisplay() == 1) {
+                isDis++;
+            }
+        }
+
+        if (isDis > 0) {
+            cmOfflineCollection.setIsDis(1);
+        } else {
+            cmOfflineCollection.setIsDis(0);
+        }
+        model.addAttribute("page", page);
+        model.addAttribute("cmOfflineCollection", cmOfflineCollection);
+        return "modules/order/cmOfflineCollectionList";
+    }
+
+    /**
+     * 页面回显
+     * @param cmOfflineCollection
+     * @param model
+     * @return
+     */
+    @RequestMapping(value = "from")
+    public String addBank(CmOfflineCollection cmOfflineCollection,Model model) {
+        model.addAttribute("cmOfflineCollection", cmOfflineCollection);
+        return "modules/order/cmOfflineCollectionFrom";
+    }
+
+    /**
+     * 添加银行账户 | 修改银行账户信息
+     * @param cmOfflineCollection
+     * @param model
+     * @return
+     */
+    @RequestMapping(value = "insBank")
+    public String insBank(CmOfflineCollection cmOfflineCollection,Model model, RedirectAttributes redirectAttributes){
+        if (cmOfflineCollection.getId() == null || cmOfflineCollection.getId() == "") {
+            if (null == cmOfflineCollection.getBankAccount() || cmOfflineCollection.getBankAccount().equals("")) {
+                addMessage(redirectAttributes, "银行账户为空,添加失败!");
+                return "redirect:" + Global.getAdminPath() + "/order/CmOfflineCollection/from";
+            }
+            Boolean insertBank = cmOfflineCollectionService.insertBank(cmOfflineCollection);
+            model.addAttribute("cmOfflineCollection", cmOfflineCollection);
+            if (insertBank) {
+                addMessage(redirectAttributes, "银行账户添加成功");
+                return "redirect:" + Global.getAdminPath() + "/order/CmOfflineCollection/List";
+            }
+            addMessage(redirectAttributes, "银行账户添加失败!");
+            return "redirect:" + Global.getAdminPath() + "/order/CmOfflineCollection/from";
+        } else {
+            cmOfflineCollectionService.editData(cmOfflineCollection);
+            addMessage(redirectAttributes, "银行账户修改成功");
+            return "redirect:" + Global.getAdminPath() +"/order/CmOfflineCollection/List";
+        }
+    }
+
+    /**
+     * 设置商城显示页面回显
+     * @param cmOfflineCollection
+     * @param model
+     * @return
+     */
+    @RequestMapping(value = "upBankFrom")
+    public String upBankRedirect(CmOfflineCollection cmOfflineCollection,Model model) {
+        CmOfflineCollection editBankData = cmOfflineCollectionService.editBankData(cmOfflineCollection);
+        model.addAttribute("editBankData",editBankData);
+        model.addAttribute("cmOfflineCollection",cmOfflineCollection);
+        return "modules/order/cmOfflineCollectionDisplayFrom";
+    }
+
+    /**
+     * 设置商城显示完善信息
+     * @param cmOfflineCollection
+     * @return
+     */
+    @RequestMapping(value = "upBankDisplay")
+    public String upBankDisplay(CmOfflineCollection cmOfflineCollection){
+        Boolean BankDisplay = cmOfflineCollectionService.upBankDisplay(cmOfflineCollection);
+        if (BankDisplay) {
+            return "redirect:" + Global.getAdminPath() +"/order/CmOfflineCollection/List";
+        }
+        return "redirect:" + Global.getAdminPath() +"/order/CmOfflineCollection/upBankFrom";
+    }
+
+    /**
+     * 设为商城不显示
+     * @param cmOfflineCollection
+     * @param model
+     * @return
+     */
+    @RequestMapping(value = "upNoBankDisplay")
+    public String upNoBankDisplay(CmOfflineCollection cmOfflineCollection,Model model, RedirectAttributes redirectAttributes) {
+        Boolean noBankDisplay = cmOfflineCollectionService.NoBankDisplay(cmOfflineCollection);
+        model.addAttribute("cmOfflineCollection",cmOfflineCollection);
+        if (noBankDisplay) {
+            return "redirect:" + Global.getAdminPath() +"/order/CmOfflineCollection/List";
+        }
+
+        return "redirect:" + Global.getAdminPath() +"/order/CmOfflineCollection/from";
+    }
+
+    /**
+     * 编辑页面回显
+     * @param cmOfflineCollection
+     * @param model
+     * @return
+     */
+    @RequestMapping(value = "editBank")
+    public String editBank(CmOfflineCollection cmOfflineCollection,Model model) {
+        cmOfflineCollection = cmOfflineCollectionService.editBankData(cmOfflineCollection);
+        model.addAttribute("cmOfflineCollection",cmOfflineCollection);
+        return "modules/order/cmOfflineCollectionFrom";
+    }
+
+    /**
+     * 页面编辑修改保存
+     * @param cmOfflineCollection
+     * @param redirectAttributes
+     * @return
+     */
+    @RequestMapping(value = "edit")
+    public String edit(CmOfflineCollection cmOfflineCollection,RedirectAttributes redirectAttributes) {
+        cmOfflineCollectionService.editData(cmOfflineCollection);
+        addMessage(redirectAttributes, "银行账户修改成功");
+        return "redirect:" + Global.getAdminPath() +"/order/CmOfflineCollection/List";
+    }
+
+    /**
+     * 银行账号禁用
+     * @param cmOfflineCollection
+     * @return
+     */
+    @RequestMapping(value = "deleteBank")
+    public String deleteBank(CmOfflineCollection cmOfflineCollection, RedirectAttributes redirectAttributes) {
+        cmOfflineCollectionService.updateBank(cmOfflineCollection);
+        addMessage(redirectAttributes, "银行账户删除成功");
+        return "redirect:" + Global.getAdminPath() +"/order/CmOfflineCollection/List";
+    }
+
+    /**
+     * 下拉列表
+     * @param cmOfflineCollection
+     * @param model
+     * @return
+     */
+    public String downList(CmOfflineCollection cmOfflineCollection,Model model) {
+        List<CmOfflineCollection> cmOfflineCollections = cmOfflineCollectionService.downListData();
+
+        model.addAttribute("cmOfflineCollections",cmOfflineCollections);
+        return null;
+    }
+
+}

+ 8 - 0
src/main/java/com/caimei/modules/order/web/CmPayShopController.java

@@ -74,6 +74,8 @@ public class CmPayShopController extends BaseController {
     private NewOrderProductDao newOrderProductDao;
     @Resource
     private NewOrderDao newOrderDao;
+    @Resource
+    private CmOfflineCollectionService cmOfflineCollectionService;
 
     @ModelAttribute
     public CmPayShop get(@RequestParam(required = false) String id) {
@@ -653,6 +655,9 @@ public class CmPayShopController extends BaseController {
     public String applyCompile(CmPayShop cmPayShop, Model model) {
         try {
             cmPayShopService.applyDetail(cmPayShop);
+            // 获取线下收款账号下拉列表
+            List<CmOfflineCollection> offlineCollections = cmOfflineCollectionService.downListData();
+            model.addAttribute("offlineCollections", offlineCollections);
             model.addAttribute("cmPayShop", cmPayShop);
         } catch (Exception e) {
             logger.info(e.getMessage());
@@ -735,6 +740,9 @@ public class CmPayShopController extends BaseController {
     public String toCheck(CmPayShop cmPayShop, Model model) {
         try {
             cmPayShopService.applyDetail(cmPayShop);
+            // 获取线下收款账号下拉列表
+            List<CmOfflineCollection> offlineCollections = cmOfflineCollectionService.downListData();
+            model.addAttribute("offlineCollections", offlineCollections);
             model.addAttribute("cmPayShop", cmPayShop);
         } catch (Exception e) {
             logger.info(e.getMessage());

+ 65 - 0
src/main/resources/mappings/modules/order/CmOfflineCollectionMapper.xml

@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.caimei.modules.order.dao.CmOfflineCollectionDao">
+
+    <select id="get" resultType="CmOfflineCollection">
+        SELECT *
+        FROM cm_offline_collection a
+        WHERE a.id = #{id}
+    </select>
+
+    <select id="findList" resultType="CmOfflineCollection">
+        SELECT id, bankAccount, creationTime, isDisplay, isDisable
+        FROM cm_offline_collection
+        <where>
+            isDisable != 0
+            <if test="id != null and id != ''">
+                AND id = #{id}
+            </if>
+            <if test="bankAccount != null and bankAccount != ''">
+                AND bankAccount = #{bankAccount}
+            </if>
+        </where>
+    </select>
+
+    <insert id="insBank">
+        INSERT INTO cm_offline_collection(bankAccount,creationTime,isDisplay,isDisable)
+        VALUES(#{bankAccount},NOW(),0,1)
+    </insert>
+
+    <update id="upBankDisplay">
+        UPDATE cm_offline_collection
+        SET bankUserName = #{bankUserName},
+            bankOfDeposit = #{bankOfDeposit},
+            bankCardNo = #{bankCardNo},
+            isDisplay = 1
+        WHERE id = #{id}
+    </update>
+
+    <update id="upNoBankDisplay">
+        UPDATE cm_offline_collection
+        SET isDisplay = 0
+        WHERE id = #{id}
+    </update>
+
+    <select id="editBank" resultType="com.caimei.modules.order.entity.CmOfflineCollection">
+        SELECT id, bankAccount, bankUserName, bankOfDeposit, bankCardNo, creationTime, isDisplay, isDisable
+        FROM cm_offline_collection WHERE id = #{id}
+    </select>
+    <update id="edit">
+        UPDATE cm_offline_collection
+        SET bankAccount = #{bankAccount}
+        WHERE id = #{id}
+    </update>
+
+    <update id="updateBank">
+        UPDATE cm_offline_collection
+        SET isDisable = 0 WHERE id =#{id}
+    </update>
+
+    <select id="downList" resultType="com.caimei.modules.order.entity.CmOfflineCollection">
+        SELECT id,bankAccount,type FROM cm_offline_collection WHERE isDisable != 0
+    </select>
+
+
+</mapper>

+ 2 - 0
src/main/resources/mappings/modules/order/CmPayShopRecordMapper.xml

@@ -143,8 +143,10 @@
 
 	<select id="findByPayShopID" resultType="CmPayShopRecord">
 		SELECT
+		f.bankAccount AS "bankNameType",
 		<include refid="cmPayShopRecordColumns"/>
 		FROM cm_pay_shop_record a
+		LEFT JOIN cm_offline_collection f ON a.payType = f.type
 		WHERE a.payShopID = #{payShopID}
 	</select>
 

+ 2 - 8
src/main/webapp/WEB-INF/views/modules/bulkpurchase/orderReviewReturnRecord.jsp

@@ -265,14 +265,8 @@
                         采美退款银行:
                         <form:select path="payType"  class="input-medium">
                             <form:option value="0" label="请选择"/>
-                            <form:option value="1" label="建设银行7297"/>
-                            <form:option value="2" label="中信银行0897"/>
-                            <form:option value="3" label="中信银行7172"/>
-                            <form:option value="4" label="广发银行0115"/>
-                            <form:option value="5" label="广发银行5461"/>
-                            <form:option value="6" label="虚拟银行0000"/>
-                            <form:option value="7" label="华夏银行2400"/>
-                            <form:option value="8" label="中国银行9452"/>
+                            <form:options items="${offlineCollections}" itemLabel="bankAccount" itemValue="id"
+                                          htmlEscape="false"/>
                         </form:select>
                     </c:if>
                     <c:if test="${empty cmReturnedPurchase.refundFee or cmReturnedPurchase.refundFee eq 0}">

+ 5 - 3
src/main/webapp/WEB-INF/views/modules/order/cmDiscernReceiptList.jsp

@@ -106,7 +106,7 @@
 <body>
 <ul class="nav nav-tabs">
     <li class="active"><a href="${ctx}/order/cmDiscernReceipt/">收款列表</a></li>
-<%--    <li class="active tab-li"><a href="${ctx}/order/cmCollectionConfigureList">线下收款账号配置</a></li>--%>
+    <li><a href="${ctx}/order/CmOfflineCollection/List">线下收款账号配置</a></li>
 </ul>
 <form:form id="searchForm" modelAttribute="cmDiscernReceipt" action="${ctx}/order/cmDiscernReceipt/" method="post"
            class="breadcrumb form-search">
@@ -157,8 +157,10 @@
             <label>收款账号:</label>
             <form:select path="payType" class="select-ele input-medium">
                 <form:option value="" label="全部"/>
-                <form:options items="${fns:getDictList('payType')}" itemLabel="label" itemValue="value"
-                              htmlEscape="false"/>
+<%--                <c:forEach items="${offlineCollections}" var="offlineCollections" varStatus="index">--%>
+                    <form:options items="${offlineCollections}" itemLabel="bankAccount" itemValue="type"
+                                  htmlEscape="false"/>
+<%--                </c:forEach>--%>
             </form:select>
         </div>
         <div>

+ 46 - 0
src/main/webapp/WEB-INF/views/modules/order/cmOfflineCollectionDisplayFrom.jsp

@@ -0,0 +1,46 @@
+<%@ page contentType="text/html;charset=UTF-8"%>
+<%@ include file="/WEB-INF/views/include/taglib.jsp" %>
+<html>
+<head>
+    <title>设为商城显示</title>
+    <meta name="decorator" content="default"/>
+</head>
+<body>
+<ul class="nav nav-tabs">
+    <li><a href="${ctx}/order/cmDiscernReceipt/">收款列表</a></li>
+    <li><a href="${ctx}/order/CmOfflineCollection/List">线下收款账号配置</a></li>
+    <li class="active tab-li"><a href="${ctx}/order/CmOfflineCollection/upBankFrom?id=${editBankData.id}">设为商城显示</a></li>
+</ul>
+
+
+<form:form id="inputForm" modelAttribute="cmOfflineCollection" action="${ctx}/order/CmOfflineCollection/upBankDisplay" method="post"
+           class="form-horizontal">
+    <sys:message content="${message}"/>
+    <div>
+        <div class="control-group">
+            <br/>
+            <label class="control-label">银行账号:</label>
+                ${editBankData.bankAccount}
+            <form:hidden path="id"/><br/><br/>
+    <%--            <input type="hidden" value="${editBankData.id}" /><br/><br/>--%>
+            <label class="control-label"><font color="red">*</font>户名:</label>
+            <form:input path="bankUserName" htmlEscape="false" maxlength="10" class="input-xlarge required" required="true"
+                        id="bankAccount"/><br/><br/>
+            <label class="control-label"><font color="red">*</font>开户行:</label>
+            <form:input path="bankOfDeposit" htmlEscape="false" maxlength="10" class="input-xlarge required" required="true"
+                        id="bankAccount"/><br/><br/>
+            <label class="control-label"><font color="red">*</font>银行卡号:</label>
+            <form:input path="bankCardNo" htmlEscape="false" maxlength="10" class="input-xlarge required" required="true"
+                        id="bankAccount"/>
+        </div>
+
+        <div class="form-actions">
+            <input id="btnCancel" class="btn" type="button" value="返 回" onclick="history.go(-1)"/>&nbsp;&nbsp;
+            <input id="btnSubmit" class="btn btn-primary" type="submit" value="确 定"/>
+        </div>
+    </div>
+</form:form>
+
+</body>
+
+</html>

+ 52 - 0
src/main/webapp/WEB-INF/views/modules/order/cmOfflineCollectionFrom.jsp

@@ -0,0 +1,52 @@
+<%@ page contentType="text/html;charset=UTF-8"%>
+<%@ include file="/WEB-INF/views/include/taglib.jsp" %>
+<html>
+<head>
+    <title>添加</title>
+    <meta name="decorator" content="default"/>
+    <script type="text/javascript">
+        function required() {
+            var bankAccount = document.getElementById('bankAccount').val();
+            if (bankAccount == null || bankAccount == '') {
+                alert('请输入银行账号')
+                return ;
+            }
+        }
+    </script>
+</head>
+<body>
+<ul class="nav nav-tabs">
+    <li><a href="${ctx}/order/cmDiscernReceipt/">收款列表</a></li>
+    <li><a href="${ctx}/order/CmOfflineCollection/List">线下收款账号配置</a></li>
+    <li class="active tab-li"><a href="${ctx}/order/CmOfflineCollection/from">添加</a></li>
+</ul>
+<form:form id="searchForm" class="breadcrumb form-search">
+    <div class="ul-form">
+        <label><font color="red">银行账号请以银行名称加卡号后四位命名</font></label>
+    </div>
+</form:form>
+
+<div>
+    <form:form id="inputForm" modelAttribute="cmOfflineCollection" action="${ctx}/order/CmOfflineCollection/insBank" method="post"
+               class="form-horizontal">
+        <sys:message content="${message}"/>
+        <div class="control-group">
+            <form:hidden path="id" />
+            <label class="control-label"><font color="red">*</font>银行账号:</label>
+            <form:input path="bankAccount" htmlEscape="false" maxlength="10" class="input-xlarge required" required="true" id="bankAccount"/>
+        </div>
+
+        <div class="form-actions">
+<%--            <c:if test="${cmOfflineCollection.id eq '0'}">--%>
+                <input id="btnSubmit" class="btn btn-primary" type="submit" value="保 存"/>&nbsp;
+<%--            </c:if>--%>
+<%--            <c:if test="${cmOfflineCollection.id ne '0'}">--%>
+<%--                <input id="btnSubmit" class="btn btn-primary" style="width: 30px" onclick="window.location='${ctx}/order/CmOfflineCollection/edit'" value="保存"/>&nbsp;--%>
+<%--            </c:if>--%>
+            <input id="btnCancel" class="btn" type="button" value="返 回" onclick="history.go(-1)"/>
+        </div>
+    </form:form>
+</div>
+</body>
+
+</html>

+ 84 - 0
src/main/webapp/WEB-INF/views/modules/order/cmOfflineCollectionList.jsp

@@ -0,0 +1,84 @@
+<%@ page contentType="text/html;charset=UTF-8"%>
+<%@ include file="/WEB-INF/views/include/taglib.jsp" %>
+<html>
+<head>
+    <title>线下收款账号配置</title>
+    <meta name="decorator" content="default"/>
+
+</head>
+<body>
+<ul class="nav nav-tabs">
+    <li><a href="${ctx}/order/cmDiscernReceipt/">收款列表</a></li>
+    <li class="active tab-li"><a href="${ctx}/order/CmOfflineCollection/List">线下收款账号配置</a></li>
+</ul>
+<form:form id="searchForm" modelAttribute="cmOfflineCollection" action="${ctx}/order/CmOfflineCollection/List" method="post"
+           class="breadcrumb form-search">
+    <input id="pageNo" name="pageNo" type="hidden" value="${page.pageNo}"/>
+    <input id="pageSize" name="pageSize" type="hidden" value="${page.pageSize}"/>
+    <div class="ul-form">
+        <label>ID:</label>
+        <form:input path="id" htmlEscape="false" maxlength="20" class="input-medium"/>
+        <label>银行账号:</label>
+        <form:input path="bankAccount" htmlEscape="false" maxlength="20" class="input-medium"/>&nbsp;&nbsp;
+        <input id="btnSubmit" class="btn btn-primary" type="submit" value="查询"/>&nbsp;&nbsp;
+        <input id="btnSubmit" class="btn btn-primary" style="width: 30px" onclick="window.location='${ctx}/order/CmOfflineCollection/from'" value="添加"/>
+        <div class="clearfix"></div>
+    </div>
+</form:form>
+<%--<sys:message content="${message}"/>--%>
+    <table id="contentTable" class="table table-striped table-bordered table-condensed">
+        <thead>
+        <tr>
+            <th>ID</th>
+            <th>银行账号</th>
+            <th>商城显示</th>
+            <th>创建时间</th>
+            <th>操作</th>
+        </tr>
+        </thead>
+        <tbody>
+        <c:forEach items="${page.list}" var="cmOfflineCollections">
+            <tr>
+                <td>${cmOfflineCollections.id}</td>
+                <td>${cmOfflineCollections.bankAccount}</td>
+                <td>
+                    <c:if test="${cmOfflineCollections.isDisplay == '1'}">
+                        <div style="width:20px;height:20px; background: #f1f1f1;">
+                            <font style="size: 100px; color: #00aa00">√</font>
+                        </div>
+                    </c:if>
+                </td>
+                <td>${cmOfflineCollections.creationTime}</td>
+                <td>
+                    <c:if test="${cmOfflineCollection.isDis == 1}">
+                        <c:if test="${cmOfflineCollections.isDisplay == '1'}">
+                            <a  href="${ctx}/order/CmOfflineCollection/upNoBankDisplay?id=${cmOfflineCollections.id}"
+                               onclick="return confirmx('确定取消该银行账号作为线下收款方式在商城进行展示吗?', this.href)">取消商城显示</a>
+                        </c:if>
+                        <c:if test="${cmOfflineCollections.isDisplay == '0'}">
+                            <a style="color: #666666">设为商城显示</a>
+                        </c:if>
+                    </c:if>&nbsp;&nbsp;
+                    <c:if test="${cmOfflineCollection.isDis == 0}">
+                        <c:if test="${cmOfflineCollections.isDisplay == '1'}">
+                            <a  href="${ctx}/order/CmOfflineCollection/upNoBankDisplay?id=${cmOfflineCollections.id}"
+                                onclick="return confirmx('确定取消该银行账号作为线下收款方式在商城进行展示吗?', this.href)">取消商城显示</a>
+                        </c:if>
+                        <c:if test="${cmOfflineCollections.isDisplay == '0'}">
+                            <a  href="${ctx}/order/CmOfflineCollection/upBankFrom?id=${cmOfflineCollections.id}"
+                               onclick="return confirmx('确定将该银行账号作为线下收款方式在商城进行展示吗?', this.href)">设为商城显示</a>
+                        </c:if>
+                    </c:if>&nbsp;&nbsp;
+                        <%--                ${ctx}/order/cmRefundShop/toRefund?id=${cmRefundShop.id}--%>
+                    <a href="${ctx}/order/CmOfflineCollection/editBank?id=${cmOfflineCollections.id}">编辑</a>&nbsp;&nbsp;
+                    <a href="${ctx}/order/CmOfflineCollection/deleteBank?id=${cmOfflineCollections.id}"
+                    onclick="return confirmx('确定删除该银行账号吗?', this.href)">删除</a>
+                </td>
+            </tr>
+        </c:forEach>
+        </tbody>
+    </table>
+    <div class="pagination">${page}</div>
+</div>
+</body>
+</html>

+ 11 - 8
src/main/webapp/WEB-INF/views/modules/order/cmPayShopCheck.jsp

@@ -603,14 +603,17 @@
             <span id="transferPayFee" style="font-weight: bold; font-size:18px"><fmt:formatNumber
                     value="${cmPayShop.transferPayFee}" pattern="#,##0.00"/> </span>
             <label>付款银行:</label><span>
-					<select name="payType">
-						<option value="1">建设银行7297</option>
-						<option value="2">中信银行0897</option>
-						<option value="3">中信银行7172</option>
-						<option value="4">广发银行0115</option>
-						<option value="5">广发银行5461</option>
-						<option value="7">华夏银行2400</option>
-						<option value="8">中国银行9452</option>
+					<select name="payType" style="width: 200px">
+                        <c:forEach  items="${offlineCollections}" var="offlineCollections" varStatus="index">
+                            <option value="${offlineCollections.type}">${offlineCollections.bankAccount}</option>
+                        </c:forEach>
+<%--						<option value="1">建设银行7297</option>--%>
+<%--						<option value="2">中信银行0897</option>--%>
+<%--						<option value="3">中信银行7172</option>--%>
+<%--						<option value="4">广发银行0115</option>--%>
+<%--						<option value="5">广发银行5461</option>--%>
+<%--						<option value="7">华夏银行2400</option>--%>
+<%--						<option value="8">中国银行9452</option>--%>
 					</select>
 				</span>
             <label>付款时间:</label>

+ 19 - 19
src/main/webapp/WEB-INF/views/modules/order/cmPayShopDetail.jsp

@@ -620,25 +620,25 @@
                 <c:if test="${cmPayShop.status != '2'}">
                     <c:if test="${not empty cmPayShop.payType }">
                         <label>付款银行:</label>
-                        <span id="payType">
-							<c:if test="${cmPayShop.payType eq 1}">
-                                建设银行7297
-                            </c:if>
-							<c:if test="${cmPayShop.payType eq 2}">
-                                中信银行0897
-                            </c:if>
-							<c:if test="${cmPayShop.payType eq 3}">
-                                中信银行7172
-                            </c:if>
-							<c:if test="${cmPayShop.payType eq 4}">
-                                广发银行0115
-                            </c:if>
-							<c:if test="${cmPayShop.payType eq 5}">
-                                广发银行5461
-                            </c:if>
-                            <c:if test="${cmPayShop.payType eq 7}">
-                                华夏银行2400
-                            </c:if>
+                        <span id="payType">${cmPayShop.bankNameType}
+<%--							<c:if test="${cmPayShop.payType eq 1}">--%>
+<%--                                建设银行7297--%>
+<%--                            </c:if>--%>
+<%--							<c:if test="${cmPayShop.payType eq 2}">--%>
+<%--                                中信银行0897--%>
+<%--                            </c:if>--%>
+<%--							<c:if test="${cmPayShop.payType eq 3}">--%>
+<%--                                中信银行7172--%>
+<%--                            </c:if>--%>
+<%--							<c:if test="${cmPayShop.payType eq 4}">--%>
+<%--                                广发银行0115--%>
+<%--                            </c:if>--%>
+<%--							<c:if test="${cmPayShop.payType eq 5}">--%>
+<%--                                广发银行5461--%>
+<%--                            </c:if>--%>
+<%--                            <c:if test="${cmPayShop.payType eq 7}">--%>
+<%--                                华夏银行2400--%>
+<%--                            </c:if>--%>
 						</span>
                     </c:if>
                     <c:if test="${cmPayShop.status != '0'}">

+ 2 - 7
src/main/webapp/WEB-INF/views/modules/order/cmPayShopEdit.jsp

@@ -364,13 +364,8 @@
                     <label>付款银行:</label>
                     <form:select path="payType" class="input-medium required">
                         <form:option value="" label="请选择"/>
-                        <form:option value="1" label="建设银行7297"/>
-                        <form:option value="2" label="中信银行0897"/>
-                        <form:option value="3" label="中信银行7172"/>
-                        <form:option value="4" label="广发银行0115"/>
-                        <form:option value="5" label="广发银行5461"/>
-                        <form:option value="7" label="华夏银行2400"/>
-                        <form:option value="8" label="中国银行9452"/>
+                        <form:options items="${offlineCollections}" itemLabel="bankAccount" itemValue="type"
+                                      htmlEscape="false"/>
                     </form:select>
                 </c:if>
                 <label>付款时间:</label>