Browse Source

二手预估逻辑修改

zhijiezhao 2 years ago
parent
commit
32e7004dbf

+ 5 - 1
src/main/java/com/caimei/modules/product/dao/CmSecondHandDetailDao.java

@@ -33,9 +33,13 @@ public interface CmSecondHandDetailDao extends CrudDao<CmSecondHandDetail> {
 
     List<Integer> findFlieTypes(Integer productID);
 
-    Integer findShopId(String cardNumber);
+    Integer findShopId(Integer productId);
 
     Integer insertShop(Shop shopVo);
 
     CmSecondHandDetail selectContactDockingPeople(String shopOrderNo);
+
+    void updateShop(Shop shopVo);
+
+    void updateShopType(Integer productID);
 }

+ 1 - 1
src/main/java/com/caimei/modules/product/entity/Product.java

@@ -88,7 +88,7 @@ public class Product extends DataEntity<Product> {
     private String productDetail; //普通机构商品详情1同资质机构商品详情,2用普通机构商品详情
     private String splitCode; //  该商品分账商户号
     //-----------------  虚拟字段 ----
-    private Integer shopType; //供应商类别,普通1,新品供应商2,二手供应商3
+    private Integer shopType; //供应商类别,0未审核的二手供应商,普通1,新品供应商2,二手供应商3
     private boolean customClass = false;  //是否有自定义分类
     private String brandName;//品牌名称
     private String otherBrandName;//其他手填品牌名称

+ 12 - 3
src/main/java/com/caimei/modules/product/service/CmSecondHandDetailService.java

@@ -121,12 +121,21 @@ public class CmSecondHandDetailService extends CrudService<CmSecondHandDetailDao
         }
     }
 
-    public Integer findSecondShop(String cardNumber) {
-        return cmSecondHandDetailDao.findShopId(cardNumber);
+    public Integer findSecondShop(Integer productId) {
+        return cmSecondHandDetailDao.findShopId(productId);
     }
 
     @Transactional(readOnly = false)
     public void insertShop(Shop shopVo) {
-        cmSecondHandDetailDao.insertShop(shopVo);
+        if (null != shopVo.getShopID() && shopVo.getShopID() > 0) {
+            cmSecondHandDetailDao.updateShop(shopVo);
+        } else {
+            cmSecondHandDetailDao.insertShop(shopVo);
+        }
+    }
+
+    @Transactional(readOnly = false)
+    public void updateShopType(Integer productID) {
+        cmSecondHandDetailDao.updateShopType(productID);
     }
 }

+ 33 - 36
src/main/java/com/caimei/modules/product/web/CmSecondHandDetailController.java

@@ -190,12 +190,13 @@ public class CmSecondHandDetailController extends BaseController {
 
         cmSecondHandDetailService.setValue(cmSecondHandDetail);
         List<SplitCode> splitCodeList = productNewDao.findSecondSplitCode(cmSecondHandDetail.getId());
-        model.addAttribute("splitCodeList",splitCodeList);
+        model.addAttribute("splitCodeList", splitCodeList);
         model.addAttribute("cmSecondHandDetail", cmSecondHandDetail);
         return "modules/product/cmSecondHandDetailForm";
     }
+
     @RequestMapping(value = "cmSecondDetailForm")
-    public String cmSecondDetailForm(CmSecondHandDetail cmSecondHandDetail,HttpServletRequest request, Model model, RedirectAttributes redirectAttributes) {
+    public String cmSecondDetailForm(CmSecondHandDetail cmSecondHandDetail, HttpServletRequest request, Model model, RedirectAttributes redirectAttributes) {
         // 解析二手商品小分类
         List<BigType> bigTypeList = new ArrayList<>();
         String instrumentType = cmSecondHandDetail.getInstrumentType();
@@ -284,7 +285,7 @@ public class CmSecondHandDetailController extends BaseController {
 
         cmSecondHandDetailService.setValue(cmSecondHandDetail);
         List<SplitCode> splitCodeList = productNewDao.findSecondSplitCode(cmSecondHandDetail.getId());
-        model.addAttribute("splitCodeList",splitCodeList);
+        model.addAttribute("splitCodeList", splitCodeList);
         model.addAttribute("cmSecondHandDetail", cmSecondHandDetail);
         return "modules/product/cmSecondDetailForm";
     }
@@ -296,40 +297,39 @@ public class CmSecondHandDetailController extends BaseController {
             return form(cmSecondHandDetail, model);
         }
         String cardNumber = cmSecondHandDetail.getCardNumber();
-        if(StringUtils.isBlank(cardNumber) && cmSecondHandDetail.getAnnounType()!=null && cmSecondHandDetail.getAnnounType()!=2){
-            addMessage(redirectAttributes,"请填写收款卡号");
-            model.addAttribute("cmSecondHandDetail",cmSecondHandDetail);
+        if (StringUtils.isBlank(cardNumber) && cmSecondHandDetail.getAnnounType() != null && cmSecondHandDetail.getAnnounType() != 2) {
+            addMessage(redirectAttributes, "请填写收款卡号");
+            model.addAttribute("cmSecondHandDetail", cmSecondHandDetail);
             return "redirect:" + Global.getAdminPath() + "/product/new/list?searchProductCategory=2";
         }
-        //根据银行卡判断是否注册过特殊二手供应商,有则挂在之前的供应商名下,否则注册新供应商
-        Integer shopId = cmSecondHandDetailService.findSecondShop(cmSecondHandDetail.getCardNumber());
+        Integer shopId = cmSecondHandDetailService.findSecondShop(cmSecondHandDetail.getProductID());
+        //保存为特殊二手供应商
+        Shop shopVo = new Shop();
+        shopVo.setShopID(shopId);
+        //1个人,2公司
+        String name = "1".equals(cmSecondHandDetail.getPublishIdentity()) ? cmSecondHandDetail.getContactName() : cmSecondHandDetail.getCompanyName();
+        shopVo.setName(name);
+        shopVo.setLinkMan(cmSecondHandDetail.getContactName());
+        shopVo.setContractMobile(cmSecondHandDetail.getContactMobile());
+        shopVo.setCardNumber(cmSecondHandDetail.getCardNumber());
+        if (cmSecondHandDetail.getBanOfDeposit() != null) {
+            shopVo.setBanOfDeposit(cmSecondHandDetail.getBanOfDeposit());
+        }
+        if (cmSecondHandDetail.getAccountName() != null) {
+            shopVo.setAccountName(cmSecondHandDetail.getAccountName());
+        }
+        if (cmSecondHandDetail.getAccountType() != null) {
+            shopVo.setAccountType(cmSecondHandDetail.getAccountType());
+        }
+        cmSecondHandDetailService.insertShop(shopVo);
         if (null == shopId) {
-            //保存为特殊二手供应商
-            Shop shopVo = new Shop();
-            //1个人,2公司
-            String name = "1".equals(cmSecondHandDetail.getPublishIdentity()) ? cmSecondHandDetail.getContactName() : cmSecondHandDetail.getCompanyName();
-            shopVo.setName(name);
-            shopVo.setLinkMan(cmSecondHandDetail.getContactName());
-            shopVo.setContractMobile(cmSecondHandDetail.getContactMobile());
-            shopVo.setCardNumber(cmSecondHandDetail.getCardNumber());
-            if (cmSecondHandDetail.getBanOfDeposit() != null) {
-                shopVo.setBanOfDeposit(cmSecondHandDetail.getBanOfDeposit());
-            }
-            if (cmSecondHandDetail.getAccountName() != null){
-                shopVo.setAccountName(cmSecondHandDetail.getAccountName());
-            }
-
-            if (cmSecondHandDetail.getAccountType()!= null) {
-                shopVo.setAccountType(cmSecondHandDetail.getAccountType());
-            }
-            cmSecondHandDetailService.insertShop(shopVo);
             shopId = shopVo.getShopID();
         }
-        String[] ids=null;
-        List<String> fileTypes =null;
-        if(cmSecondHandDetail.getAnnounType()!=null && cmSecondHandDetail.getAnnounType()!=2){
-         ids = request.getParameterValues("ids");
-         fileTypes = Arrays.asList(ids);
+        String[] ids = null;
+        List<String> fileTypes = null;
+        if (cmSecondHandDetail.getAnnounType() != null && cmSecondHandDetail.getAnnounType() != 2) {
+            ids = request.getParameterValues("ids");
+            fileTypes = Arrays.asList(ids);
         }
 
         String validFlag = cmSecondHandDetail.getValidFlag();
@@ -337,9 +337,7 @@ public class CmSecondHandDetailController extends BaseController {
         String dateStr = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date);
         // 保存二手商品关键信息
         Product product = new Product();
-        System.out.println(cmSecondHandDetail.getAnnounType());
         product.setAnnounType(cmSecondHandDetail.getAnnounType());
-
         product.setProductID(cmSecondHandDetail.getProductID());
         product.setBrandID(cmSecondHandDetail.getBrandID());
         // 二手商品类型
@@ -468,10 +466,9 @@ public class CmSecondHandDetailController extends BaseController {
             String imageUrl = getImageUrl(licenseImage);
             cmSecondHandDetail.setLicenseImage(imageUrl);
         }
-//        cmSecondHandDetail.setAnnounType(2);
         // 保存二手详细信息
         cmSecondHandDetailService.save(cmSecondHandDetail);
-        if(cmSecondHandDetail.getAnnounType()!=null && cmSecondHandDetail.getAnnounType()!=2) {
+        if (cmSecondHandDetail.getAnnounType() != null && cmSecondHandDetail.getAnnounType() != 2) {
             cmSecondHandDetailService.saveFileType(product.getProductID(), cmSecondHandDetail.getId(), fileTypes);
         }
         if (null != product.getProductID()) {

+ 3 - 0
src/main/java/com/caimei/modules/product/web/ProductNewController.java

@@ -995,8 +995,11 @@ public class ProductNewController extends BaseController {
             // 更新二手商品上架信息
             Date date = new Date();
             if ("8".equals(validFlag)) {
+                //审核未通过
                 cmSecondHandDetailService.updateRevieweInfo(date, null, productID);
             } else {
+                //把shoptype置为3
+                cmSecondHandDetailService.updateShopType(productID);
                 cmSecondHandDetailService.updateRevieweInfo(date, date, productID);
             }
             cleanRedisCache();

+ 1 - 1
src/main/java/com/caimei/modules/user/entity/NewCmShop.java

@@ -80,7 +80,7 @@ public class NewCmShop extends DataEntity<NewCmShop> {
     private List<SplitCode> splitCodes; //分账方,子商户商编
     private String splitCode;  //列表页回显
     private String socialCreditCode; //统一社会信用代码
-    private Integer shopType;//供应商类别,普通1,新品供应商2,二手供应商3
+    private Integer shopType;//供应商类别 0未审核的二手供应商,普通1,新品供应商2,二手供应商3
     private String cardNumber; //收款卡号
     private Integer chargeSupport;//线上支付手续费:默认1采美承担,2供应商承担
     /**

+ 19 - 5
src/main/resources/mappings/modules/product/CmSecondHandDetailMapper.xml

@@ -121,9 +121,9 @@
 		where productId = #{productID}
 	</select>
     <select id="findShopId" resultType="java.lang.Integer">
-		select shopId from shop
-		where shopType = 3
-		  AND cardNumber = #{cardNumber}
+		select shopId
+		from product
+		where productID = #{productId}
 	</select>
     <insert id="insert" parameterType="CmSecondHandDetail"  keyProperty="id" useGeneratedKeys="true">
 		INSERT INTO cm_second_hand_detail(
@@ -213,7 +213,7 @@
 	</insert>
 	<insert id="insertShop" keyColumn="shopID" keyProperty="shopID" useGeneratedKeys="true">
 		insert into shop (name,linkMan,contractMobile,cardNumber,accountType,banOfDeposit,accountName,addTime,status,shopType)
-		values (#{name},#{linkMan},#{contractMobile},#{cardNumber},#{accountType},#{banOfDeposit},#{accountName},now(),90,3)
+		values (#{name},#{linkMan},#{contractMobile},#{cardNumber},#{accountType},#{banOfDeposit},#{accountName},now(),90,0)
 	</insert>
 	<select id="selectContactDockingPeople" resultType="CmSecondHandDetail">
 		select contactName,dockingPeopleName from cm_second_hand_detail
@@ -298,5 +298,19 @@
 	<update id="updatSecondHnadBySold">
 		UPDATE cm_second_hand_detail SET sold =  0 WHERE productID = #{productID}
 	</update>
-
+	<update id="updateShop">
+		update shop set name=#{name},
+		                linkMan=#{linkMan},
+		                contractMobile=#{contractMobile},
+		                cardNumber=#{cardNumber},
+		                accountType=#{accountType},
+		                banOfDeposit=#{banOfDeposit},
+		                accountName=#{accountName}
+		where shopID = #{shopID}
+	</update>
+	<update id="updateShopType">
+		update shop
+		set shopType=3
+		where shopID=(select shopID from product where productID=#{productID})
+	</update>
 </mapper>