diff --git a/src/api/productService/commonService.js b/src/api/productService/commonService.js
new file mode 100644
index 0000000..5bbfac1
--- /dev/null
+++ b/src/api/productService/commonService.js
@@ -0,0 +1,59 @@
+import request from '@/utils/request'
+
+export function index(params,isLoading=true){
+ return request({
+ isLoading,
+ method:'get',
+ url:'/api/admin/common-service/index',
+ params
+ })
+}
+
+export function show(params){
+ return request({
+ method:'get',
+ url:'/api/admin/common-service/show',
+ params
+ })
+}
+
+export function store(data){
+ return request({
+ method:'post',
+ url:'/api/admin/common-service/store',
+ data
+ })
+}
+
+export function save(data){
+ return request({
+ method:'post',
+ url:'/api/admin/common-service/save',
+ data
+ })
+}
+
+export function destroy(data){
+ return request({
+ method:'post',
+ url:'/api/admin/common-service/destroy',
+ data
+ })
+}
+
+
+export function getMerchantItems(params){
+ return request({
+ method:'get',
+ url:'/api/admin/common-service/get-merchant-items',
+ params
+ })
+}
+
+export function getPicture(params){
+ return request({
+ method:'get',
+ url:'/api/admin/common-service/get-picture',
+ params
+ })
+}
diff --git a/src/api/productService/commonServiceProduct.js b/src/api/productService/commonServiceProduct.js
new file mode 100644
index 0000000..8cdd860
--- /dev/null
+++ b/src/api/productService/commonServiceProduct.js
@@ -0,0 +1,58 @@
+import request from '@/utils/request'
+
+export function index(params){
+ return request({
+ method:'get',
+ url:'/api/admin/common-product/index',
+ params
+ })
+}
+
+export function show(params){
+ return request({
+ method:'get',
+ url:'/api/admin/common-product/show',
+ params
+ })
+}
+
+export function store(data){
+ return request({
+ method:'post',
+ url:'/api/admin/common-product/store',
+ data
+ })
+}
+
+export function save(data){
+ return request({
+ method:'post',
+ url:'/api/admin/common-product/save',
+ data
+ })
+}
+
+export function destroy(data){
+ return request({
+ method:'post',
+ url:'/api/admin/common-product/destroy',
+ data
+ })
+}
+
+export function getPicture(params){
+ return request({
+ method:'get',
+ url:'/api/admin/common-product/get-picture',
+ params
+ })
+}
+
+export function getCombo(params){
+ return request({
+ method:'get',
+ url:'/api/admin/common-product/get-combo',
+ params
+ })
+}
+
diff --git a/src/components/XyTable/index.vue b/src/components/XyTable/index.vue
index 42a165d..08ace0f 100644
--- a/src/components/XyTable/index.vue
+++ b/src/components/XyTable/index.vue
@@ -1,90 +1,106 @@
-
diff --git a/src/views/productService/commonServiceProduct.vue b/src/views/productService/commonServiceProduct.vue
new file mode 100644
index 0000000..02409e3
--- /dev/null
+++ b/src/views/productService/commonServiceProduct.vue
@@ -0,0 +1,8 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/productService/components/common/addCommonService.vue b/src/views/productService/components/common/addCommonService.vue
new file mode 100644
index 0000000..3d7bbfa
--- /dev/null
+++ b/src/views/productService/components/common/addCommonService.vue
@@ -0,0 +1,676 @@
+
+
+
+