Pārlūkot izejas kodu

Merge branch 'feature/pyh_配置师傅图片各异多个'

pengyh 1 gadu atpakaļ
vecāks
revīzija
839999a42b

+ 2 - 2
src/api/customerManagement.js

@@ -18,11 +18,11 @@ export function memberPageExport(data, name) {
 }
 
 // 设置取消分销员
-export function memberInner(params) {
+export function memberInner(data) {
   return request({
     url: '/member/batch/type',
     method: 'post',
-    params
+    data
   })
 }
 

+ 2 - 2
src/api/distributorManagement.js

@@ -36,11 +36,11 @@ export function getMemberDetail(params) {
 }
 
 // 设置取消分销员
-export function memberInner(params) {
+export function memberInner(data) {
   return request({
     url: '/member/batch/type',
     method: 'post',
-    params
+    data
   })
 }
 

+ 2 - 2
src/api/masterManagement.js

@@ -37,11 +37,11 @@ export function getMemberDetail(params) {
 }
 
 // 设置取消分销员
-export function memberInner(params) {
+export function memberInner(data) {
   return request({
     url: '/member/batch/type',
     method: 'post',
-    params
+    data
   })
 }
 

+ 48 - 5
src/views/userManagement/customerManagement/index.vue

@@ -33,6 +33,11 @@
 						</el-form-item>
 					</el-col>
 					<el-col :span="24">
+						<el-form-item label="姓名" :required="true">
+							<el-input v-model="workerForm.name" placeholder="请输入"></el-input>
+						</el-form-item>
+					</el-col>
+					<el-col :span="24">
 						<el-form-item label="身份证号码" :required="true">
 							<el-input v-model="workerForm.idCard" placeholder="请输入"></el-input>
 						</el-form-item>
@@ -42,6 +47,11 @@
 							<ImageUpload :fileList="fileList" :limit="1" :isEdit="true" />
 						</el-form-item>
 					</el-col>
+					<el-col :span="24" v-for="(item,index) in imgList" :key="index">
+						<el-form-item :label="item.dictValue" :required="true">
+							<ImageUpload :fileList="item.imgs" :limit="1" :isEdit="true" />
+						</el-form-item>
+					</el-col>
 				</el-row>
 			</el-form>
 			<div slot="footer" class="dialog-footer">
@@ -63,6 +73,7 @@ import ImageUpload from '@/components/file-upload'
 import { required, mobileRequired, mobile } from '@/components/template/rules_verify.js'
 import { memberListPageV2,memberPageExport, memberAudit, memberInner, getWebsit } from "@/api/customerManagement";
 import MemberDetail from "@/components/Mall/Member/member-detail";
+import request from '@/utils/request'
 import operation_mixin from '@/components/template/operation_mixin.js'
 export default {
   components: { TemplatePage, MemberDetail, ImageUpload },
@@ -96,10 +107,12 @@ export default {
 	  workerForm: {
 	  		websitId: '',
 	  		userId: '',
-			idCard: ''
+			idCard: '',
+			name: ''
 	  },
 	  queryUser: {}, // 查询
-	  fileList: []
+	  fileList: [],
+	  imgList: []
     }
   },
   computed: {
@@ -114,6 +127,9 @@ export default {
 	  return this.queryUser.hasOwnProperty('userId')
 	}
   },
+  created(){
+	  this.getImgList()
+  },
   methods: {
     // 列表请求函数
     getList: memberListPageV2,
@@ -131,6 +147,17 @@ export default {
 	backListFromMemberDetail() {
 	  this.queryUser = {}
 	},
+	getImgList(){
+		request({
+		  url: `/dictCompany/page`,
+		  method: 'post',
+		  data: { pageNum: 1, pageSize: -1, params: [{param: "a.dict_type", compare: "=", value: "WORKER_IMG"}] }
+		}).then(res=>{
+			this.imgList = res.data.records.filter(item=>{
+				return item.imgs = []
+			})
+		})
+	},
 	// 表格操作列
 	operation() {
 		return this.operationBtn({
@@ -157,7 +184,7 @@ export default {
 				click: ({ row, index, column }) => {
 					memberInner({
 						type: 'SERVICE',
-						userIds: row.userId
+						userId: row.userId
 					}).then(res => {
 						if (res.code == 200) {
 							this.$message({ type: 'success', message: '设为分销员成功!' })
@@ -183,8 +210,22 @@ export default {
       this.formDialog = false
     },
 	memberInner(){
+		let workerImgs = []
+		for(var i = 0;i < this.imgList.length;i++){
+			if(this.imgList[i].imgs.length == 0){
+				return this.$message({ type: 'error', message: '请上传' + this.imgList[i].dictValue +'!' })
+				break;
+			}else{
+				workerImgs.push({
+					imgName: this.imgList[i].dictValue,
+					imgUrl: this.imgList[i].imgs.length>0?this.imgList[i].imgs[0].url:''
+				})
+			}
+		}
 		if(!this.workerForm.websitId){
 			return this.$message({ type: 'error', message: '请选择入驻网点!'})
+		}else if(!this.workerForm.name){
+			return this.$message({ type: 'error', message: '请输入姓名!' })
 		}else if(!this.workerForm.idCard){
 			return this.$message({ type: 'error', message: '请输入身份证号码!' })
 		}else if(!/^\d{6}(18|19|20)\d{2}(0\d|10|11|12)([0-2]\d|30|31)\d{3}[\dXx]$/g.test(this.workerForm.idCard)){
@@ -194,10 +235,12 @@ export default {
 		}
 		memberInner({
 			type: 'WORKER',
-			userIds: this.workerForm.userId,
+			userId: this.workerForm.userId,
 			websitId: this.workerForm.websitId,
+			name: this.workerForm.name,
 			idCard: this.workerForm.idCard,
-			idCardImg: this.fileList.map(item => item.url).join(",")
+			idCardImg: this.fileList.map(item => item.url).join(","),
+			workerImgs
 		}).then(res => {
 			this.dialogVisible = false
 			this.$message({ type: 'success', message: '设置工程师成功!' })

+ 77 - 13
src/views/userManagement/distributorManagement/index.vue

@@ -41,6 +41,26 @@
 						  </el-select>
 					</el-form-item>
 				</el-col>
+				<el-col :span="24">
+					<el-form-item label="姓名" :required="true">
+						<el-input v-model="workerForm.name" placeholder="请输入"></el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24">
+					<el-form-item label="身份证号码" :required="true">
+						<el-input v-model="workerForm.idCard" placeholder="请输入"></el-input>
+					</el-form-item>
+				</el-col>
+				<el-col :span="24">
+					<el-form-item label="身份证正面照" :required="true">
+						<ImageUpload :fileList="fileList" :limit="1" :isEdit="true" />
+					</el-form-item>
+				</el-col>
+				<el-col :span="24" v-for="(item,index) in imgList" :key="index">
+					<el-form-item :label="item.dictValue" :required="true">
+						<ImageUpload :fileList="item.imgs" :limit="1" :isEdit="true" />
+					</el-form-item>
+				</el-col>
 			</el-row>
 		</el-form>
 		<div slot="footer" class="dialog-footer">
@@ -54,11 +74,13 @@
 <script>
 import TemplatePage from '@/components/template/template-page-1.vue'
 import import_mixin from '@/components/template/import_mixin.js'
+import ImageUpload from '@/components/file-upload'
 import { required, mobileRequired, mobile } from '@/components/template/rules_verify.js'
 import { memberListService2,memberPageExport, getMemberDetail, memberAudit, memberInner, memberInsideInner, getWebsit } from "@/api/distributorManagement";
 import operation_mixin from '@/components/template/operation_mixin.js'
+import request from '@/utils/request'
 export default {
-  components: { TemplatePage },
+  components: { TemplatePage, ImageUpload },
   mixins: [import_mixin,operation_mixin],
   data() {
     return {
@@ -79,17 +101,21 @@ export default {
       formDialogType: 0,
       formDialogTitles: ["审核", "详情"],
       formDialog: false,
-	  dialogVisible: false,
+			dialogVisible: false,
       formData: {
-		type: '工程师',
-		examineRemark: ''
+				type: '工程师',
+				examineRemark: ''
       },
-	  examineStatus: '',
-	  websitList: [],
-	  workerForm: {
-		  websitId: '',
-		  userId: '',
-	  }
+			examineStatus: '',
+			websitList: [],
+			workerForm: {
+				websitId: '',
+				userId: '',
+				idCard: '',
+				name: ''
+			},
+			fileList: [],
+			imgList: []
     }
   },
   computed: {
@@ -183,6 +209,9 @@ export default {
       }]
     }
   },
+	created(){
+		  this.getImgList()
+	},
   methods: {
 	// 切换状态
 	changeType(val) {
@@ -200,6 +229,17 @@ export default {
 	    console.log(error)
 	  }
 	},
+	getImgList(){
+		request({
+		  url: `/dictCompany/page`,
+		  method: 'post',
+		  data: { pageNum: 1, pageSize: -1, params: [{param: "a.dict_type", compare: "=", value: "WORKER_IMG"}] }
+		}).then(res=>{
+			this.imgList = res.data.records.filter(item=>{
+				return item.imgs = []
+			})
+		})
+	},
     // 列表导出函数
     exportList: memberPageExport,
     // 表格列解析渲染数据更改
@@ -265,7 +305,7 @@ export default {
 				click: ({ row, index, column }) => {
 					memberInner({
 						type: 'GENERAL',
-						userIds: row.userId
+						userId: row.userId
 					}).then(res => {
 						if (res.code == 200) {
 							this.$message({ type: 'success', message: '设为客户成功!' })
@@ -325,13 +365,37 @@ export default {
 		})
 	},
 	memberInner(){
+		let workerImgs = []
+		for(var i = 0;i < this.imgList.length;i++){
+			if(this.imgList[i].imgs.length == 0){
+				return this.$message({ type: 'error', message: '请上传' + this.imgList[i].dictValue +'!' })
+				break;
+			}else{
+				workerImgs.push({
+					imgName: this.imgList[i].dictValue,
+					imgUrl: this.imgList[i].imgs.length>0?this.imgList[i].imgs[0].url:''
+				})
+			}
+		}
 		if(!this.workerForm.websitId){
 			return this.$message({ type: 'error', message: '请选择入驻网点!' })
+		}else if(!this.workerForm.name){
+			return this.$message({ type: 'error', message: '请输入姓名!' })
+		}else if(!this.workerForm.idCard){
+			return this.$message({ type: 'error', message: '请输入身份证号码!' })
+		}else if(!/^\d{6}(18|19|20)\d{2}(0\d|10|11|12)([0-2]\d|30|31)\d{3}[\dXx]$/g.test(this.workerForm.idCard)){
+			return this.$message({ type: 'error', message: '请输入正确的身份证号码!' })
+		}else if(this.fileList.length == 0){
+			return this.$message({ type: 'error', message: '请上传身份证正面照!' })
 		}
 		memberInner({
 			type: 'WORKER',
-			userIds: this.workerForm.userId,
-			websitId: this.workerForm.websitId
+			userId: this.workerForm.userId,
+			websitId: this.workerForm.websitId,
+			name: this.workerForm.name,
+			idCard: this.workerForm.idCard,
+			idCardImg: this.fileList.map(item => item.url).join(","),
+			workerImgs
 		}).then(res => {
 			this.dialogVisible = false
 			this.$message({ type: 'success', message: '设置工程师成功!' })

+ 26 - 5
src/views/userManagement/masterManagement/index.vue

@@ -37,7 +37,7 @@
       <div v-if="~['examine', 'detail'].indexOf(activeKey)" style="box-sizing: border-box;padding: 16px;">
         <zj-form-container ref="formRef" :form-data="formData" :styleSwitch="false">
           <zj-form-module :title="data.label" label-width="100px" :showPackUp="false" :form-data="formData"
-            :form-items="formItems">
+            :form-items="[...formItems,...imageList]">
           </zj-form-module>
         </zj-form-container>
         <div slot="footer" class="dialog-footer">
@@ -89,7 +89,8 @@ export default {
         userId: "",
         websitId: ""
       },
-      suoyoushifu: []
+      suoyoushifu: [],
+			imageList: []
     }
   },
   computed: {
@@ -163,7 +164,7 @@ export default {
           var { value } = props
           console.log(this.formData.idCardImg)
           return (
-            this.formData.idCardImg ? <el-image src={this.formData.idCardImg} style='width: 120px;height:120px' preview-src-list={[this.formData.idCardImg]} fit="fit"></el-image> : ''
+            this.formData.idCardImg ? <el-image src={this.formData.idCardImg} style='width: 120px;height:120px' preview-src-list={[this.formData.idCardImg]} fit="cover"></el-image> : ''
           )
         }
       }, {
@@ -289,9 +290,29 @@ export default {
               label: "详情",
               triggerEvent: () => {
                 this.guanbi()
+				this.imageList = []
                 this.$nextTick(() => {
                   getMemberDetail({ id: row.id }).then(res => {
                     Object.assign(this.formData, res.data)
+					res.data.workerImgList.forEach(item=>{
+						this.imageList.push({
+							md: 12,
+							isShow: true,
+							name: 'slot-component',
+							attributes: {},
+							formItemAttributes: {
+							  label: item.imgName,
+							  prop: 'imgName',
+							  rules: []
+							},
+							render: (h, { props, onInput }) => {
+							  var { value } = props
+							  return (
+							    item.imgUrl ? <el-image src={item.imgUrl} style='width: 120px;height:120px' preview-src-list={[item.imgUrl]} fit="cover"></el-image> : ''
+							  )
+							}
+						})
+					})
                   })
                 })
               },
@@ -329,7 +350,7 @@ export default {
           click: ({ row, index, column }) => {
             memberInner({
               type: 'SERVICE',
-              userIds: row.userId
+              userId: row.userId
             }).then(res => {
               if (res.code == 200) {
                 this.$message({ type: 'success', message: '设为分销员成功!' })
@@ -346,7 +367,7 @@ export default {
           click: ({ row, index, column }) => {
             memberInner({
               type: 'GENERAL',
-              userIds: row.userId
+              userId: row.userId
             }).then(res => {
               if (res.code == 200) {
                 this.$message({ type: 'success', message: '设为客户成功!' })