Quellcode durchsuchen

Merge remote-tracking branch 'origin/test'

anderx vor 8 Jahren
Ursprung
Commit
67b1d98062

+ 2 - 0
src/main/java/com/goafanti/common/constant/ErrorConstants.java

@@ -127,4 +127,6 @@ public class ErrorConstants {
 	public static final String ORDER_ALREADY_REVOKE					= "ORDER_ALREADY_REVOKE";
 	
 	public static final String ORDER_NOT_EXIST						= "ORDER_NOT_EXIST";
+	
+	public static final String PAY_BEYOND_SIGN						= "PAY_BEYOND_SIGN";
 }

+ 1 - 0
src/main/java/com/goafanti/common/dao/TOrderBillMapper.java

@@ -2,6 +2,7 @@ package com.goafanti.common.dao;
 
 import com.goafanti.common.model.TOrderBill;
 import com.goafanti.common.model.TOrderBillExample;
+
 import java.util.List;
 import org.apache.ibatis.annotations.Param;
 

+ 8 - 0
src/main/java/com/goafanti/common/dao/TOrderMapper.java

@@ -4,6 +4,7 @@ import com.goafanti.common.model.TOrder;
 import com.goafanti.common.model.TOrderDetail;
 import com.goafanti.common.model.TOrderExample;
 import com.goafanti.order.bo.BillDetailBo;
+import com.goafanti.order.bo.BillListBo;
 import com.goafanti.order.bo.CommodityDetailBo;
 import com.goafanti.order.bo.ServiceOrderDetailBo;
 
@@ -125,4 +126,11 @@ public interface TOrderMapper {
 	 */
 	BillDetailBo selectBillDetail(String billNo);
 
+	/**
+	 * 查询单笔订单流水
+	 * @param orderNo
+	 * @return
+	 */
+	List<BillListBo> selectBillByOrderNo(String orderNo);
+
 }

+ 34 - 4
src/main/java/com/goafanti/common/mapper/TOrderMapper.xml

@@ -903,10 +903,10 @@
     from t_order where delete_sign = 0
     <choose>
     	<when test="intentionStatus == 0"><!-- 意向订单 -->
-    		and intention_status = 0 and (buyer_id = #{uid,jdbcType=VARCHAR} or seller_id =  #{uid,jdbcType=VARCHAR})
+    		and order_status = 0 and (buyer_id = #{uid,jdbcType=VARCHAR} or seller_id =  #{uid,jdbcType=VARCHAR})
     	</when>
     	<otherwise>
-    		and intention_status != 0 and (buyer_id = #{uid,jdbcType=VARCHAR} or seller_id =  #{uid,jdbcType=VARCHAR})
+    		and order_status != 0 and (buyer_id = #{uid,jdbcType=VARCHAR} or seller_id =  #{uid,jdbcType=VARCHAR})
     	</otherwise>
     </choose>
     order by create_time desc
@@ -921,10 +921,10 @@
   	from t_order where delete_sign = 0
     <choose>
     	<when test="intentionStatus == 0"><!-- 意向订单 -->
-    		and intention_status = 0 and (buyer_id = #{uid,jdbcType=VARCHAR} or seller_id =  #{uid,jdbcType=VARCHAR})
+    		and order_status = 0 and (buyer_id = #{uid,jdbcType=VARCHAR} or seller_id =  #{uid,jdbcType=VARCHAR})
     	</when>
     	<otherwise>
-    		and intention_status != 0  and buyer_id = #{uid,jdbcType=VARCHAR}
+    		and order_status != 0  and buyer_id = #{uid,jdbcType=VARCHAR}
     	</otherwise>
     </choose>
   </select>
@@ -1583,4 +1583,34 @@
 			${page_sql}
 		</if>
   </select>
+  
+  <select id="selectBillByOrderNo" parameterType="java.lang.String" resultType="com.goafanti.order.bo.BillListBo">
+  	select
+		a.bill_no as billNo,
+		date_format(a.create_time,'%Y-%m-%d %H:%i:%S') as createTime,
+		a.transaction_amount as transactionAmount,
+		a.transaction_channel as transactionChannel,
+		a.transaction_subject as transactionSubject,
+		a.transaction_mode as transactionMode,
+		a.financial_pay_no as financialPayNo,
+		date_format(a.financial_pay_time,'%Y-%m-%d %H:%i:%S') as financialPayTime,
+		a.confirm_sign as confirmSign,
+		a.delete_sign as deleteSign,
+		date_format(a.confirm_time,'%Y-%m-%d %H:%i:%S') as confirmTime,
+		b.order_no as orderNo,
+		c.nickname as payeeName,
+		d.nickname as payerName,
+		e.name as financeName,
+		f.name as salesmanName,
+		g.name as departmentName
+	from
+		t_order_bill a left join t_order b on
+		a.order_no = b.order_no left join user c on 
+		a.payee_id = c.id left join user d on
+		a.payer_id = d.id left join admin e on 
+		b.finance_id = e.id left join admin f on 
+		b.salesman_id = f.id left join department_management g on
+		f.department_id = g.id
+	where a.order_no = #{orderNo,jdbcType=VARCHAR}
+  </select>
 </mapper>

+ 0 - 1
src/main/java/com/goafanti/common/mapper/UserMapperExt.xml

@@ -95,7 +95,6 @@
 	</select>
 	<select id="selectPersonalCustomerCount" resultType="java.lang.Integer">
 		select count(0)
-					select count(0)
 			from user a inner join user_identity b on a.id = b.uid
 		left join district_glossory dg1 on b.province = dg1.id
 		left join district_glossory dg2 on b.city = dg2.id

+ 1 - 0
src/main/java/com/goafanti/customer/service/impl/CustomerServiceImpl.java

@@ -702,6 +702,7 @@ public class CustomerServiceImpl  extends BaseMybatisDao<UserMapper> implements
 		user.setId(uid);
 		if(operatorType.equals(AFTConstants.USER_TRANSFER_TO_PUBLIC)){
 			user.setShareType(AFTConstants.USER_SHARE_PUBLIC);
+			user.setAid("");
 		}else if(operatorType.equals(AFTConstants.USER_RECEIVE)){
 			user.setAid(TokenManager.getAdminId());
 			user.setShareType(AFTConstants.USER_SHARE_PRIVATE);

+ 21 - 0
src/main/java/com/goafanti/order/controller/AdminOrderApiController.java

@@ -15,6 +15,7 @@ import com.goafanti.common.controller.CertifyApiController;
 import com.goafanti.core.shiro.token.TokenManager;
 import com.goafanti.order.bo.OrderListBo;
 import com.goafanti.order.enums.AuditState;
+import com.goafanti.order.enums.CommodityType;
 import com.goafanti.order.service.OrderService;
 
 @RestController
@@ -342,6 +343,10 @@ public class AdminOrderApiController extends CertifyApiController {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"","订单类型"));
 			return res;
 		}
+		if(orderType != CommodityType.SERVICE.getTypeCode()){
+			res.getError().add(buildError(ErrorConstants.PARAM_ERROR,"","暂不支持创建该类型订单"));
+			return res;
+		}
 		orderServiceImpl.createServiceOrder(uid,orderType);
 		return res;
 	}
@@ -549,4 +554,20 @@ public class AdminOrderApiController extends CertifyApiController {
 		orderServiceImpl.updateLockOrRevokeOrder(orderNo,operatorType);
 		return res;
 	}
+
+	/**
+	 * 查询单笔订单流水
+	 * @param orderNo
+	 * @return
+	 */
+	@RequestMapping(value= "/getBillByOrderNo", method = RequestMethod.GET)
+	public Result getBillByOrderNo(String orderNo){
+		Result res = new Result();
+		if(StringUtils.isBlank(orderNo)){
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"","订单编号"));
+			return res;
+		}
+		res.setData(orderServiceImpl.selectBillByOrderNo(orderNo));
+		return res;
+	}
 }

+ 7 - 0
src/main/java/com/goafanti/order/service/OrderService.java

@@ -399,4 +399,11 @@ public interface OrderService {
 	 * @return
 	 */
 	int updateLockOrRevokeOrder(String orderNo, Integer operatorType);
+
+	/**
+	 * 查询单笔订单流水
+	 * @param orderNo
+	 * @return
+	 */
+	List<BillListBo> selectBillByOrderNo(String orderNo);
 }

+ 28 - 11
src/main/java/com/goafanti/order/service/impl/OrderServiceImpl.java

@@ -82,9 +82,9 @@ public class OrderServiceImpl extends BaseMybatisDao<TOrderMapper> implements Or
 	@Autowired
 	private ContractMapper contractMapper;
 	
-	private final BigDecimal DEFAULT_FIRST_PAYMENT = new BigDecimal(0);// 默认首付价格
-	private final BigDecimal DEFAULT_COMMODITY_PRICE = new BigDecimal(0);// 默认单价
-	private final String DEFAULT_PLATFORM_ID = "0"; // 平台默认id
+	private final BigDecimal DEFAULT_FIRST_PAYMENT = new BigDecimal(0);//默认首付价格
+	private final BigDecimal DEFAULT_COMMODITY_PRICE = new BigDecimal(0);//默认单价
+	private final String DEFAULT_PLATFORM_ID = "0"; //平台默认id
 	private final String DEFAULT_ADMIN_ID = "1"; //默认管理员
 	private final double DEFAULT_BROKERAGE_PROPORTION = 0; //佣金比例
 	private final double DEFAULT_COMMODITY_DISCOUNT = 1; //折扣比例
@@ -142,6 +142,7 @@ public class OrderServiceImpl extends BaseMybatisDao<TOrderMapper> implements Or
 			tOrder.setBuyerId(TokenManager.getUserId());
 			tOrder.setSellerId(StringUtils.isBlank(bo.getSellerId()) ? DEFAULT_PLATFORM_ID : bo.getSellerId());
 		}
+		tOrder.setOrderType(commodityType);
 		tOrder.setBrokerageAmount(discountPrice.multiply(new BigDecimal(DEFAULT_BROKERAGE_PROPORTION)));
 		tOrder.setFirstPayment(DEFAULT_FIRST_PAYMENT);
 		tOrder.setOrderAmount(orderAmount);
@@ -164,6 +165,7 @@ public class OrderServiceImpl extends BaseMybatisDao<TOrderMapper> implements Or
 		tOrderDetail.setCommodityFirstPayment(commodityFirstPayment);
 		tOrderDetail.setDiscountPrice(discountPrice);
 		tOrderDetail.setDiscountFirstPayment(discountFirstPayment);
+		tOrderDetail.setCreateTime(DateUtils.parseDate(createTime, AFTConstants.YYYYMMDDHHMMSS));
 		tOrderDetailMapper.insert(tOrderDetail);
 		tOrderMapper.insert(tOrder);
 		return 1;
@@ -211,8 +213,19 @@ public class OrderServiceImpl extends BaseMybatisDao<TOrderMapper> implements Or
 				throw new BusinessException(new Error(ErrorConstants.NOT_ACCORD_WITH_NEXT,""));
 			}
 			int boundary = tOrder.getActuallyFirstPayment().add(changeAmount).compareTo(tOrder.getSignFirstPayment());
-			if(boundary == 1){
-				throw new BusinessException(new Error(ErrorConstants.NOT_ACCORD_WITH_NEXT,"支付首付款"));
+			int boundary2 = tOrder.getActuallyTotalAmount().add(changeAmount).compareTo(tOrder.getSignTotalAmount());
+			if(boundary2 == 1){
+				throw new BusinessException(new Error(ErrorConstants.PAY_BEYOND_SIGN,"支付首付款"));
+			}else if(boundary2 == 0){ //全付清
+				tOrder.setActuallyTotalAmount(tOrder.getSignTotalAmount());
+				tOrder.setActuallyFirstPayment(tOrder.getSignFirstPayment());
+				tOrder.setLiquidationStatus(LiquidationState.ALREADY_PAY.getCode());
+				tOrder.setProjectStage(ProjectStage.WAIT_SET_UP.getCode());
+			}else if(boundary == 1){ //超过首付未达尾款
+				tOrder.setActuallyTotalAmount(tOrder.getActuallyTotalAmount().add(changeAmount));
+				tOrder.setActuallyFirstPayment(tOrder.getSignFirstPayment());
+				tOrder.setLiquidationStatus(LiquidationState.WAIT_PAY_LAST_BALANCE.getCode());
+				tOrder.setProjectStage(ProjectStage.WAIT_SET_UP.getCode());
 			}else if(boundary == -1){ //首付待付清
 				tOrder.setActuallyTotalAmount(tOrder.getActuallyTotalAmount().add(changeAmount));
 				tOrder.setActuallyFirstPayment(tOrder.getActuallyFirstPayment().add(changeAmount));
@@ -233,7 +246,7 @@ public class OrderServiceImpl extends BaseMybatisDao<TOrderMapper> implements Or
 				tOrder.setActuallyTotalAmount(tOrder.getActuallyTotalAmount().add(changeAmount));
 			}else if(boundary == 0){
 				tOrder.setOrderStatus(OrderState.ALREADY_SIGN.getCode());
-				tOrder.setActuallyTotalAmount(tOrder.getActuallyTotalAmount().add(changeAmount));
+				tOrder.setActuallyTotalAmount(tOrder.getSignTotalAmount());
 				tOrder.setLiquidationStatus(LiquidationState.ALREADY_PAY.getCode());
 			}
 		}else if(orderAction == OrderAction.APPLY_FOR_WITHDRAW){ //提现申请 
@@ -376,14 +389,12 @@ public class OrderServiceImpl extends BaseMybatisDao<TOrderMapper> implements Or
 					active.setConfirmIntention(false);
 					active.setRefuseIntention(false);
 				}
-				if (tOrder.getOrderStatus() == OrderState.WAIT_FOR_SIGN.getCode()
-						&& tOrder.getLiquidationStatus() == LiquidationState.WAIT_PAY_FIRST_BALANCE.getCode()) {
+				if (tOrder.getLiquidationStatus() == LiquidationState.WAIT_PAY_FIRST_BALANCE.getCode()) {
 					active.setPayForFirst(true); //支付首付
 				} else {
 					active.setPayForFirst(false); //支付首付
 				}
-				if (tOrder.getOrderStatus() == OrderState.WAIT_FOR_SIGN.getCode()
-						&& tOrder.getLiquidationStatus() == LiquidationState.WAIT_PAY_LAST_BALANCE.getCode()) {
+				if (tOrder.getLiquidationStatus() == LiquidationState.WAIT_PAY_LAST_BALANCE.getCode()) {
 					active.setPayForLast(true); //支付尾款
 				} else {
 					active.setPayForLast(false); //支付尾款
@@ -1015,7 +1026,7 @@ public class OrderServiceImpl extends BaseMybatisDao<TOrderMapper> implements Or
 					.multiply(new BigDecimal(detail.getCommodityQuantity()));
 			BigDecimal signTotalAmountChange = detail.getDiscountPrice()
 					.multiply(new BigDecimal(detail.getCommodityQuantity()));
-			BigDecimal signFirstPaymentChange = detail.getCommodityFirstPayment()
+			BigDecimal signFirstPaymentChange = detail.getDiscountFirstPayment()
 					.multiply(new BigDecimal(detail.getCommodityQuantity()));
 			tOrder.setOrderAmount(tOrder.getOrderAmount().subtract(totalAmountChange));
 			tOrder.setFirstPayment(tOrder.getFirstPayment().subtract(firstPaymentChange));
@@ -1489,4 +1500,10 @@ public class OrderServiceImpl extends BaseMybatisDao<TOrderMapper> implements Or
 			return DEFAULT_ADMIN_ID;
 		}
 	}
+
+	@Override
+	public List<BillListBo> selectBillByOrderNo(String orderNo) {
+		
+		return tOrderMapper.selectBillByOrderNo(orderNo);
+	}
 }

+ 2 - 2
src/main/java/com/goafanti/techproject/controller/AdminTechProjectApiController.java

@@ -830,9 +830,9 @@ public class AdminTechProjectApiController extends CertifyApiController {
 		if(task != null){
 			if(task.getTaskStatus() != TaskState.DISTRIBUTION.getCode());
 			res.getError().add(buildError(ErrorConstants.NOT_ACCORD_WITH_NEXT, ""));
+			task.setTaskStatus(TaskState.STARTED.getCode());
+			techProjectService.updateProjectTask(task);
 		}
-		task.setTaskStatus(TaskState.STARTED.getCode());
-		techProjectService.updateProjectTask(task);
 		return res;
 	}
 	

+ 2 - 2
src/main/java/com/goafanti/user/controller/UserRegisterController.java

@@ -111,7 +111,7 @@ public class UserRegisterController extends BaseController {
 			us.setShareType(AFTConstants.USER_SHARE_PUBLIC);
 			us.setIdentifyName(StringUtils.isBlank(user.getUnitName())?"":user.getUnitName());
 			us.setLvl(UserLevel.GENERAL.getCode());
-			us.setAid("0");
+			//us.setAid("0");
 			userService.insertRegister(us,user.getUnitName(),user.getUsername());
 		}
 		return res;
@@ -180,7 +180,7 @@ public class UserRegisterController extends BaseController {
 			us.setShareType(AFTConstants.USER_SHARE_PUBLIC);
 			us.setIdentifyName(StringUtils.isBlank(user.getUnitName())?"":user.getUnitName());
 			us.setLvl(UserLevel.GENERAL.getCode());
-			us.setAid("0");
+			//us.setAid("0");
 			userService.insertRegister(us,user.getUnitName(),user.getUsername());
 			User currentUser = userService.selectByPrimaryKey(us.getId()); 			
 			registerEasemobAfterRegister(uuid,currentUser);//开通环信账号

+ 3 - 1
src/main/resources/props/error.properties

@@ -113,4 +113,6 @@ ORDER_ALREADY_FREEZE = \u8BE5\u8BA2\u5355\u5DF2\u7ECF\u51BB\u7ED3{0}
 
 ORDER_ALREADY_REVOKE = \u8BE5\u8BA2\u5355\u5DF2\u7ECF\u5E9F\u9664{0}
 
-ORDER_NOT_EXIST = \u8BA2\u5355\u4E0D\u5B58\u5728{0}
+ORDER_NOT_EXIST = \u8BA2\u5355\u4E0D\u5B58\u5728{0}
+
+PAY_BEYOND_SIGN = \u652F\u4ED8\u91D1\u989D\u8D85\u8FC7\u5408\u540C\u4EF7\u683C

+ 1 - 1
src/main/webapp/WEB-INF/views/common.html

@@ -372,7 +372,7 @@
 				email : /*[[${adminData.email}]]*/'',
 				createTime : /*[[${adminData.createTime}]]*/'',
 				uid : /*[[${adminData.id}]]*/'',
-				isSuperAdmin : /*[[${shiro.hasRole('999999')}]]*/false
+				isSuperAdmin : /*[[${shiro.hasRole('999999')}]]*/false,
 				isApprovalDecision : /*[[${shiro.hasRole('99999')}]]*/false
 			}
 			window.showUserManage = /*[[${shiro.hasRole('999999') || shiro.isPermitted('admin/userManage')}]]*/false;