Browse Source

修改离职转交

Signed-off-by: anderx <312518615@qq.com>
anderx 6 years ago
parent
commit
1fc532a3fa

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

@@ -96,4 +96,5 @@ public interface TOrderNewMapper {
 	int checkContractNo(String sno);
 	Map<String, Object> countTotalAndActually(OrderListBo o);
 	TOrderBillNew getLastPayment(String orderNo);
+	int updateSalesmanId(@Param("aid")String aid, @Param("transferId")String transferId);
 }

+ 5 - 0
src/main/java/com/goafanti/common/dao/UserLockReleaseMapper.java

@@ -100,4 +100,9 @@ public interface UserLockReleaseMapper {
 	void updateProject(@Param("uid")String uid, @Param("aid")String aid, @Param("businessProjectId")String businessProjectId);
 
 	List<LockingReleaseBo> checkTask(@Param("buyerId")String buyerId, @Param("commodityId")String commodityId);
+
+
+	void updateBatchReleaseProject(@Param("uids")List<String> uids, @Param("receiveId")String receiveId, @Param("aid")String aid);
+
+	void updateBatchlockProject(@Param("uids")List<String> uids, @Param("receiveId")String receiveId, @Param("aid")String aid);
 }

+ 6 - 4
src/main/java/com/goafanti/common/mapper/TOrderInvoiceMapper.xml

@@ -640,17 +640,18 @@
 	</if>
   </select>
   <select id="financeOrderInvoiceList" resultType="com.goafanti.order.bo.TOrderInvoiceBo">
-      select a.id,a.unit_name as unitName,a.order_no as orderNo,c.name,b.project_status as projectStatus,a.amount,
+      	  select a.id,a.unit_name as unitName,a.order_no as orderNo,c.name,b.project_status as projectStatus,a.amount,
      ifnull(d.sumAmount,0) as sumAmount, date_format(a.create_time,'%Y-%m-%d %H:%i:%S')as createTime ,a.status,b.process_status processStatus,
      b.settlement_amount as settlementAmount, (b.total_amount-b.settlement_amount) as notAmount from t_order_invoice a 
 	left join t_order_new b on a.order_no=b.order_no left join admin c on b.salesman_id=c.id
 	left join (select order_no,sum(amount)as  sumAmount from t_order_invoice where status =2 group by order_no) d
-	on a.order_no=d.order_no where a.status in (1,2) and a.approval in (0,2) 
+	on a.order_no=d.order_no left join department e on b.order_dep=e.id 
+	where a.status in (1,2) and a.approval in (0,2) 
 	<if test="type !=null">
 	and a.`type`= #{type,jdbcType=INTEGER} 
 	</if>
 	<if test="financeId !=null">
-	and b.finance_id= #{financeId,jdbcType=VARCHAR}
+	and e.finance_id= #{financeId,jdbcType=VARCHAR}
 	</if>
 	<if test="orderNo !=null">
 	and a.order_no = #{orderNo,jdbcType=VARCHAR}
@@ -674,12 +675,13 @@
   	select count(*) from t_order_invoice a 
 	left join t_order_new b on a.order_no=b.order_no 
 	left join admin c on b.salesman_id=c.id
+	 left join department e on b.order_dep=e.id
 	where a.status in (1,2) and a.approval in (0,2) 
 	<if test="type !=null">
 	and a.`type`= #{type,jdbcType=INTEGER} 
 	</if>
 	<if test="financeId !=null">
-	and b.finance_id= #{financeId,jdbcType=VARCHAR}
+	and e.finance_id= #{financeId,jdbcType=VARCHAR}
 	</if>
 	<if test="orderNo !=null">
 	and a.order_no = #{orderNo,jdbcType=VARCHAR}

+ 15 - 13
src/main/java/com/goafanti/common/mapper/TOrderNewMapper.xml

@@ -1101,7 +1101,7 @@ where delete_sign != 1  and outsource=  #{o.outsource,jdbcType=INTEGER}
 	  	and o.process_status &gt;= #{o.processStatus,jdbcType=INTEGER}
 	  	</if>
   		and (approval = 0 or approval = 2)
-	  	and o.finance_id = #{o.financeId,jdbcType=VARCHAR}
+	  	and d.finance_id = #{o.financeId,jdbcType=VARCHAR}
   		<if test="o.orderStatus != null and o.orderStatus != &quot;&quot;">
 	  	and o.order_status = #{o.orderStatus,jdbcType=INTEGER}
 	  	</if>
@@ -1138,13 +1138,9 @@ where delete_sign != 1  and outsource=  #{o.outsource,jdbcType=INTEGER}
 		</if>
   </select>
   <select id="financeCount" parameterType="Map" resultType="java.lang.Integer">
-  select count(*)
-  	 from t_order_new o 
-  	 left join `user` u on o.buyer_id = u.id 
-  	 left join admin a on o.salesman_id = a.id
-  	 left join (select sum(transaction_amount) as amount ,order_no from t_order_bill_new
-  				group by order_no ) b on b.order_no = o.order_no
-  	left join (select x1.order_no,max(create_time) create_time,max(transaction_amount)transaction_amount from 
+  select count(*) from t_order_new o left join `user` u on o.buyer_id = u.id left join admin a on o.salesman_id = a.id
+  	 left join (select sum(transaction_amount) as amount ,order_no from t_order_bill_new group by order_no ) b on b.order_no = o.order_no
+  	left join department d on o.order_dep = d.id left join (select x1.order_no,max(create_time) create_time,max(transaction_amount)transaction_amount from 
 (select x.order_no,x.create_time,x.transaction_amount from t_order_bill_new x right join (select order_no, max(create_time) maxTime from t_order_bill_new group by order_no)y
 	on  x.order_no=y.order_no and x.create_time=y.maxTime)x1 group by x1.order_no ) f on o.order_no = f.order_no
   	 where delete_sign != 1 and outsource=  #{o.outsource,jdbcType=INTEGER}
@@ -1155,7 +1151,7 @@ where delete_sign != 1  and outsource=  #{o.outsource,jdbcType=INTEGER}
 	  	and o.process_status &gt;= #{o.processStatus,jdbcType=INTEGER}
 	  	</if>
   		and (approval = 0 or approval = 2)
-	  	and o.finance_id = #{o.financeId,jdbcType=VARCHAR}
+	  	and d.finance_id = #{o.financeId,jdbcType=VARCHAR}
   		<if test="o.orderStatus != null and o.orderStatus != &quot;&quot;">
 	  	and o.order_status = #{o.orderStatus,jdbcType=INTEGER}
 	  	</if>
@@ -1199,7 +1195,7 @@ where delete_sign != 1  and outsource=  #{o.outsource,jdbcType=INTEGER}
   	select 
   		a.order_no as orderNo,a.create_time as createTime, date_format(a.sign_time,'%Y-%m-%d' ) as signDate,a.contract_no as contractNo,
   		b.nickname as userName ,a.process_status as processStatus,a.total_amount as totalAmount,a.order_status as orderStatus,
-  		a.liquidation_status as liquidationStatus,a.approval,c.name as salesmanName,dep.name as depName,d.name as financeName
+  		a.liquidation_status as liquidationStatus,a.approval,c.name as salesmanName,dep.name as depName,f.name as financeName
   	<if test="specially == 2">
   	,f.name as initiateName ,e.reason ,date_format(e.create_time,'%Y-%m-%d' ) as backDate,e.id as backId
   	</if>
@@ -1209,6 +1205,7 @@ where delete_sign != 1  and outsource=  #{o.outsource,jdbcType=INTEGER}
   	from t_order_new a  left join `user` b on a.buyer_id=b.id 
   	left join admin c on a.salesman_id=c.id
   	left join department dep on a.order_dep=dep.id
+  	left join admin f on dep.finance_id=f.id
   	left join admin d on a.finance_id=d.id
   	<if test="specially == 2">
 	left join (select * from t_order_back a where back_status=0) e on a.order_no=e.order_no
@@ -1426,7 +1423,7 @@ where super_id is null ) e on e.order_no=a.order_no
   </select>
   
   <select id="getOrderNewDetail" parameterType="java.lang.String" resultType="com.goafanti.order.bo.TOrderNewBo">
-   select 
+  select 
     a.order_no as orderNo, a.order_type as orderType, a.creater, a.create_time as createTime,a.update_time as updateTime, a.buyer_id as buyerId,
     a.first_amount as firstAmount,a.total_amount as totalAmount, a.settlement_amount as settlementAmount, order_status as orderStatus,
     a.liquidation_status as liquidationStatus, a.process_status as processStatus, a.project_status as projectStatus, a.approval,
@@ -1437,7 +1434,8 @@ where super_id is null ) e on e.order_no=a.order_no
     c.contact_mobile as salesmanMobile,d.contact_mobile as financeMobile,b.nickname as userName ,e.back_status as backStatus,f.name as initiateName,
     e.reason,date_format(e.create_time,'%Y-%m-%d') as backDate,a.buyer_id as uid,a.order_dep as orderDep, g.location_province as locationProvince,
     g.location_city as locationCity,g.location_area locationArea,g.postal_address postalAddress,outsource,a.primary_order primaryOrder,
-    h.name NowFinance,a.additional_order additionalOrder from t_order_new a left join `user` b on a.buyer_id=b.id 
+    h.name NowFinance,h.contact_mobile NowFinanceMobile,a.additional_order additionalOrder,i.name as oldSalesmanName, i.contact_mobile oldSalesmanMobile
+    from t_order_new a left join `user` b on a.buyer_id=b.id left join admin i on a.old_salesman_id=i.id
     left join admin c on a.salesman_id=c.id left join department dep on a.order_dep=dep.id left join admin d on a.finance_id=d.id
     left join admin h on dep.finance_id=h.id left join (select * from t_order_back a where back_status=0) e on a.order_no=e.order_no
   	left join admin f on e.initiate=f.id left join organization_identity g on a.buyer_id=g.uid
@@ -1533,7 +1531,7 @@ where super_id is null ) e on e.order_no=a.order_no
 	  	and o.process_status &gt;= #{processStatus,jdbcType=INTEGER}
 	  	</if>
   		and (approval = 0 or approval = 2)
-	  	and o.finance_id = #{financeId,jdbcType=VARCHAR}
+	  	and d.finance_id = #{financeId,jdbcType=VARCHAR}
   		<if test="orderStatus != null and orderStatus != &quot;&quot;">
 	  	and o.order_status = #{orderStatus,jdbcType=INTEGER}
 	  	</if>
@@ -1566,4 +1564,8 @@ where super_id is null ) e on e.order_no=a.order_no
 	where order_no= #{orderNo}
 	order by create_time desc limit 1;
   </select>
+  <update id="updateSalesmanId">
+  	update t_order_new set salesman_id= #{transferId},old_salesman_id= #{aid}
+	where delete_sign !=1 and salesman_id= #{aid}
+  </update>
 </mapper>

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

@@ -1609,6 +1609,7 @@
   <update id="updateDimissionTransfer">
    update user
 		set aid=#{transferId,jdbcType=VARCHAR},
+		information_maintainer=#{transferId,jdbcType=VARCHAR},
 			source=3,
 			transfer_time=now()
 		where aid=#{aid,jdbcType=VARCHAR}

+ 7 - 0
src/main/java/com/goafanti/customer/controller/AdminCustomerApiController.java

@@ -190,6 +190,13 @@ public class AdminCustomerApiController extends BaseApiController{
 		res.setData(customerService.listSignPersonalCustomer(cli, pageNo, pageSize));
 		return res;
 	}
+	/** 签单客户转交 **/
+	@RequestMapping(value = "/customerHandOver", method = RequestMethod.POST)
+	public Result listSignPersonalCustomer(String userIds ,String receiveId){
+		Result res = new Result();
+		res.setData(customerService.customerHandOver( userIds , receiveId));
+		return res;
+	}
 	
 	/** 客户即时检索 **/
 	@RequestMapping(value = "/findCustomerByName",method = RequestMethod.GET)

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

@@ -507,6 +507,7 @@ public interface CustomerService {
 	int updateUserLevel(User u);
 	public  Float countIntegrity(CustomerOrganizationDetailBo bo);
 	XSSFWorkbook privateUnitCustomerOutXls(CustomerListIn cli ,Integer sort,Integer sortType,Integer pageNo, Integer pageSize);
+	int customerHandOver(String userIds, String receiveId);
 	
 	
 }

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

@@ -3,6 +3,8 @@ package com.goafanti.customer.service.impl;
 import java.lang.reflect.InvocationTargetException;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Date;
 import java.util.HashMap;
 import java.util.HashSet;
@@ -1487,5 +1489,15 @@ public class CustomerServiceImpl extends BaseMybatisDao<UserMapper> implements C
 		return wb;
 	}
 
+	@Override
+	public int customerHandOver(String userIds, String receiveId) {
+/*		String [] str=userIds.split(",");
+		String aid=TokenManager.getAdminId();
+		List<String> uids=Arrays.asList(str);
+		userLockReleaseMapper.updateBatchReleaseProject(uids,receiveId,aid);
+		userLockReleaseMapper.updateBatchlockProject(uids,receiveId,aid);*/
+		return 0;
+	}
+
 
 }

+ 27 - 1
src/main/java/com/goafanti/order/bo/TOrderNewBo.java

@@ -32,7 +32,9 @@ public class TOrderNewBo extends TOrderNew{
 	private Integer locationArea;
 	private String postalAddress;
 	private String NowFinance;
-	
+	private String  NowFinanceMobile;
+	private String oldSalesmanName;
+	private String oldSalesmanMobile;
 	public Integer getLocationProvince() {
 		return locationProvince;
 	}
@@ -250,5 +252,29 @@ public class TOrderNewBo extends TOrderNew{
 	public void setNowFinance(String nowFinance) {
 		NowFinance = nowFinance;
 	}
+
+	public String getNowFinanceMobile() {
+		return NowFinanceMobile;
+	}
+
+	public void setNowFinanceMobile(String nowFinanceMobile) {
+		NowFinanceMobile = nowFinanceMobile;
+	}
+
+	public String getOldSalesmanName() {
+		return oldSalesmanName;
+	}
+
+	public void setOldSalesmanName(String oldSalesmanName) {
+		this.oldSalesmanName = oldSalesmanName;
+	}
+
+	public String getOldSalesmanMobile() {
+		return oldSalesmanMobile;
+	}
+
+	public void setOldSalesmanMobile(String oldSalesmanMobile) {
+		this.oldSalesmanMobile = oldSalesmanMobile;
+	}
 	
 }

+ 6 - 0
src/main/java/com/goafanti/order/service/impl/FundManagerOrderServiceImpl.java

@@ -22,6 +22,7 @@ import com.goafanti.common.bo.Error;
 import com.goafanti.common.constant.ErrorConstants;
 import com.goafanti.common.dao.AdminMapper;
 import com.goafanti.common.dao.NoticeMapper;
+import com.goafanti.common.dao.OrganizationManagementMapper;
 import com.goafanti.common.dao.TOrderBackMapper;
 import com.goafanti.common.dao.TOrderBillNewMapper;
 import com.goafanti.common.dao.TOrderBonusMapper;
@@ -57,6 +58,7 @@ import com.goafanti.order.enums.OrderNewState;
 import com.goafanti.order.enums.ProcessStatus;
 import com.goafanti.order.enums.refundState;
 import com.goafanti.order.service.FundManageOrderService;
+import com.goafanti.organization.bo.OrganizationListOut;
 
 @Service
 public class FundManagerOrderServiceImpl extends BaseMybatisDao<TOrderNewMapper> implements FundManageOrderService {
@@ -83,6 +85,8 @@ public class FundManagerOrderServiceImpl extends BaseMybatisDao<TOrderNewMapper>
 	JDBCIdGenerator	idGenerator;
 	@Autowired
 	NoticeMapper	noticeMapper;
+	@Autowired
+	private OrganizationManagementMapper	organizationManagementMapper;
 	Logger	logger	= LoggerFactory.getLogger(FundManagerOrderServiceImpl.class);
 	@SuppressWarnings("unchecked")
 	@Override
@@ -502,6 +506,8 @@ public class FundManagerOrderServiceImpl extends BaseMybatisDao<TOrderNewMapper>
 		checkDeleteSign(orderNo);
 		t.setOrderNo(orderNo);
 		t.setProcessStatus(ProcessStatus.YPZXSGLY.getCode());
+		OrganizationListOut oo=organizationManagementMapper.selectAllById(t.getOrderDep());
+		t.setFinanceId(oo.getFinanceId());
 		return tOrderNewMapper.updateByPrimaryKeySelective(t);
 	}
 

+ 0 - 5
src/main/java/com/goafanti/order/service/impl/OrderNewServiceImpl.java

@@ -446,8 +446,6 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 		if (orderStatus==OrderNewState.QDSHTG.getCode()) {
 			if (t2.getApproval()==ApprovalNewState.FTP.getCode()||t2.getApproval()==ApprovalNewState.TG.getCode()) {//如果通过分配给财务管理员
 				t.setProcessStatus(ProcessStatus.YPCWZY.getCode());
-				OrganizationListOut oo=organizationManagementMapper.selectAllById(t2.getOrderDep());
-				t.setFinanceId(oo.getFinanceId());
 			}else {
 				t.setProcessStatus(ProcessStatus.YPTPSH.getCode());
 			}
@@ -576,8 +574,6 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 		if (confirm==2) {
 			t.setApproval(2);
 			if(t2.getOutsource()==0) {
-				OrganizationListOut oo=organizationManagementMapper.selectAllById(t2.getOrderDep());
-				t.setFinanceId(oo.getFinanceId());
 				t.setProcessStatus(ProcessStatus.YPCWZY.getCode());
 			}
 			addOrderLog(orderNo, OrderLogProcess.TP.getCode());
@@ -595,7 +591,6 @@ public class OrderNewServiceImpl extends BaseMybatisDao<TOrderNewMapper> impleme
 
 	@Override
 	public List<TOrderDun> selectOrderDun(String orderNo) {
-		
 		return tOrderDunMapper.selectByOrderNoDunSubject(orderNo);
 	}
 

+ 0 - 3
src/main/java/com/goafanti/order/service/impl/OutsourceOrgServiceImpl.java

@@ -98,9 +98,6 @@ public class OutsourceOrgServiceImpl  extends BaseMybatisDao<TOrderOutsourceMapp
 		if (o.getRefundStatus()==1) {
 			t.setOrderNo(o.getOrderNo());
 			t.setOrderStatus(2);//订单审核标记通过
-			TOrderNew t2=tOrderNewMapper.selectByPrimaryKey(o.getOrderNo());
-			OrganizationListOut oo=organizationManagementMapper.selectAllById(t2.getOrderDep());
-			t.setFinanceId(oo.getFinanceId());
 			t.setProcessStatus(ProcessStatus.YPCWZY.getCode());
 			addOrderLog(o.getOrderNo(),OrderLogProcess.WBSH.getCode());
 			tOrderNewMapper.updateByPrimaryKeySelective(t);

+ 4 - 0
src/main/java/com/goafanti/permission/service/impl/NewRoleServiceImpl.java

@@ -19,6 +19,7 @@ import com.goafanti.common.dao.OrganizationContactBookMapper;
 import com.goafanti.common.dao.RoleMapper;
 import com.goafanti.common.dao.RolePermissionMapper;
 import com.goafanti.common.dao.RoleResourcesMapper;
+import com.goafanti.common.dao.TOrderNewMapper;
 import com.goafanti.common.dao.TOrderTaskMapper;
 import com.goafanti.common.dao.TTaskLogMapper;
 import com.goafanti.common.dao.UserBusinessMapper;
@@ -58,6 +59,8 @@ public class NewRoleServiceImpl extends BaseMybatisDao<RoleMapper> implements Ne
 	@Autowired
 	TOrderTaskMapper	tOrderTaskMapper;
 	@Autowired
+	TOrderNewMapper	tOrderNewMapper;
+	@Autowired
 	TTaskLogMapper	tTaskLogMapper;
 	@Override
 	public Pagination<RoleBo> findRoles(RoleBo role, Integer pageNo, Integer pageSize) {
@@ -195,6 +198,7 @@ public class NewRoleServiceImpl extends BaseMybatisDao<RoleMapper> implements Ne
 				userMapper.updateDimissionTransfer(aid,transferId);
 			}
 			if (s==roleResources.QDYW.getCode()) {
+				tOrderNewMapper.updateSalesmanId(aid,transferId);
 				roleResourcesMapper.updateLockRelease("1",aid,transferId);//将业务锁转给指定人
 			}
 			if (s==roleResources.XMRW.getCode()) {